ti 84 plus C se : hello world assembly !

Hey,

Today I will explain how to create and compile your first ti 84 plus CSE assembly program !
This is of course a noshell program, we will run it with Asm(
I have made this hello world without having the calculator (and never tested it before today!), it was a blinded development ^^, but as it’s only a small hello world, I can’t complain about it :p. But now I tested and it works, now it’s your turn !

Ok let’s start with the code :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
.nolist
;-------------------------------
#define equ .equ
#define EQU .equ
#define end .end
#define END .end
userMemC   .equ $A60B
 
rBR_CALL    equ 28h
BRT_JUMP0   equ 50h
#define bcall(xxxx) rst 28h \ .dw xxxx
#define b_call(xxxx) rst 28h \ .dw xxxx
#define bjump(xxxx) call 50h \ .dw xxxx
.list
 
    .org userMemC-2
    .db $EF,$69
 
    bcall(454Fh)      ;homeup
    ld hl,ti84pluscom
    bcall(4501h)      ;puts
    bcall(4525h)      ;newline
    ret
 
ti84pluscom:
    .db "ti-84-plus.com",0

So basically we have some defines (taken from kerm Martian pcse ball source (but the biggest part is really standard).

Then we could notice that the .org is not a known place userMemC-2
We define a label to contain our string to print. Then we use puts and newline then return.

Write this code into a file called a.z80, re-indent it correctly with tabs.You can compile it with :

spasm a.z80 A.8xp

spasm complains about the .org but don’t worry about it.

Send the A.8xp file to your calc then open catalog :

84pcse-hello-world0

Select Asm( then press enter and you will have :

84pcse-hello-world1

Then go to program menu :

84pcse-hello-world2

Select our program (A) and press enter :

84pcse-hello-world3

Then run it and you will have :

84pcse-hello-world4

 

Great ! This is your first ti 84 plus C se assembly program.

Good job !

 

Leave a Reply

© 2021 ti-84-plus.com. All Rights Reserved. Theme WP Castle by Saeed Salam.