So I’ve been trying to program assembly on the ti-84 plus CE for a long time.
I searched up numerous ways I could downgrade to 5.3 which allowed you to program assembly but none of them worked.
I also tried a method to be able to program assembly straight on 5.4.0 but that didn’t work.
Do any of y’all know ways I can program or downgrade on 5.4.0?
You cannot.
Also it is a horrid way to learn assembly by programming directly on the calculator.
If you use a computer to send a program containing the "Asm84CEPrgm" token, then you can recall that program into other programs in order to be able to create ASM programs on the calculator. But then you need to use "AsmComp(prgmINPUT,prgmOUTPUT)" (where the names can be anything) to "squish" the prgmINPUT before running prgmOUTPUT, since 5.4.0 also removed the ability to run unsquished ASM programs. & then if you modify the code, you have to delete the output program before you can run AsmComp() again because of how the OS works. All of which amount to it being more annoying to work with ASM on your calculator than in 5.3.0, unfortunately. But it is not impossible (unless you have no access to a computer even once), & if you are wanting to do programming in class or something like that, it might be a viable option.
That crashes the calculator
Zeroko wrote:
If you use a computer to send a program containing the "Asm84CEPrgm" token, then you can recall that program into other programs in order to be able to create ASM programs on the calculator. But then you need to use "AsmComp(prgmINPUT,prgmOUTPUT)" (where the names can be anything) to "squish" the prgmINPUT before running prgmOUTPUT, since 5.4.0 also removed the ability to run unsquished ASM programs. & then if you modify the code, you have to delete the output program before you can run AsmComp() again because of how the OS works. All of which amount to it being more annoying to work with ASM on your calculator than in 5.3.0, unfortunately. But it is not impossible (unless you have no access to a computer even once), & if you are wanting to do programming in class or something like that, it might be a viable option.
Just "Asm84CEPrgm" will crash, yes...you should not run the program containing that but only use it to get that token into another program. Then you have to type eZ80 machine language code in hexadecimal after that—& it has to be a correct program—if you do not want it to crash. If you want to learn what code to use,
https://www.zilog.com/docs/um0077.pdf has opcode tables starting on page 384 & explanations of what the instructions do throughout. (If this does not make sense to you right now, you might want to start with an assembler on a computer first, but at least a few people
have gone this route successfully.)
EDIT: The simplest program that will not crash contains just "C9" (which is the opcode for "RET," which returns control to the OS) after the Asm84CEPrgm part. You can put code on separate lines, but you cannot put any spaces between the digits.
I just realized my mistake, I was using Z80 assembly and not eZ80 unaware of the differences, thanks
Zeroko wrote:
Just "Asm84CEPrgm" will crash, yes...you should not run the program containing that but only use it to get that token into another program. Then you have to type eZ80 machine language code in hexadecimal after that—& it has to be a correct program—if you do not want it to crash. If you want to learn what code to use,
https://www.zilog.com/docs/um0077.pdf has opcode tables starting on page 384 & explanations of what the instructions do throughout. (If this does not make sense to you right now, you might want to start with an assembler on a computer first, but at least a few people
have gone this route successfully.)
EDIT: The simplest program that will not crash contains just "C9" (which is the opcode for "RET," which returns control to the OS) after the Asm84CEPrgm part. You can put code on separate lines, but you cannot put any spaces between the digits.
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
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