So, as you might have heard in my topic about the GIMP clone, I just "lost" my calculator.
Since I usually program TI-Basic oncalc... (And sorry Kerm, but I don't like coding on SourceCoder - it makes me cry how poor the compatibility gets if sending a single program back and forth from the calculator) ...this made it really hard for me to continue writing TI-Basic programs.
I have always wanted to learn assembly, and I think now the point came, when I should try it once again... I have already seen the "Asm in 28 days" tutorial but I got stuck as not even the hello world program, copy & pasted, did compile. From reading the beginning and from a little of Axe coding, I understand some of the basics, what pointers are and what binary is. But for learning to actually code in asm (not just compiling a hello world program) I will need more help... And even for compiling that program I will need help in finding a working compiler.
I hope some knowledgeable and experienced members will help me!

Also, I think this post is not in the right place here, but I didn't find a better one, so please move it if there is such one.
The asm in 28 days tutorial is definitely still the best resource available to learn z80 for the 83+/84+. You can download it here or view it online here. There's also a version in the process of being corrected/updated online here, which still has some formatting issues to be worked out but may be slightly more informationally accurate. Whichever version you choose, try making your way through it and posting any problems/questions you run into here. Which you've already done, so let's address the first problem.

For the tools with which to assemble your code, ignore just about everything the tutorial tells you. I would recommend using either spasm-ng or SourceCoder (which actually uses spasm-ng) as your assembler.

If using spasm-ng locally, you'll also want to grab the include file, but make sure to rename it to instead of ti83plus.txt. And for the code in the tutorial to work, you'll also want to find this line near the top of the file:
#define bcall(xxxx) rst 28h \ .dw xxxx
And duplicate it with the slightly different syntax used throuhgout the tutorial:
#define b_call(xxxx) rst 28h \ .dw xxxx
After this, you should be able to assemble programs, including the hello world example. With spasm.exe,, and hello.z80 all in the same directory, I successfully assembled it from the command line with the following command:
spasm hello.z80 HELLO.8xp

If using SourceCoder, create a new 83+/84+ program and change the dropdown currently displaying "TI-83+/TI-84+ TI-BASIC" to "z80 ASM." To be able to use the "b_call" syntax used throughout the tutorial, you also need to add the definition specified in the spasm-ng section. But you can't edit SourceCoder's copy of, so you have to add it to your source, somewhere near the top. Doing so, I successfuly assembled (and ran in jsTIfied) the hello world example.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum