I'm pretty fluent in TI-BASIC and C/C++ and I figured the next step up is learning eZ80 assembly, especially since I wanted to try my hand at making some 3D applications which would be very sluggish/difficult in C without major optimization and nearly impossible in BASIC. Any links to resources would be really nice, thanks in advance!
Most regular z80 tutorials can get you started on the basics since the ez80 is a relative of it. But none of that code will actually work on an ez80 based calculator without modification unfortunately.

I would recommend reading some of the manuals, namely this one: http://www.zilog.com/docs/um0077.pdf

You can also study example code from the toolchain: https://github.com/CE-Programming/toolchain/tree/master/src

For an assembler there are 2 options really: https://github.com/jacobly0/fasmg-ez80 and https://github.com/alberthdev/spasm-ng

EDIT (thanks Adriweb) - Also can't forget the asm-docs repo: https://github.com/CE-Programming/asm-docs

fasmg is newer with lots of features while SPASM-NG is based on the z80 assembler and may be easier to use for beginners? (Don't flame me Very Happy). I should have asked what OS you use? Win/Mac/Linux/etc? There may be different options.

The best tip is to become familiar with the hardware platform, for that WikiTI is the best source: https://wikiti.brandonw.net/index.php?title=Calculator_Documentation#TI-84_Plus_CE.5B-T.5D.2C_TI-83_Premium_CE

An example Hello World may look like this (SPASM):

Code:
; TI-84+ CE - Hello World!
;-------------------------

.assume adl = 1                                ; code is in adl mode

#include "ti84pce.inc"

    .org userMem-2                             ; ti-84+ce user memory location
    .db tExtTok,tAsm84CeCmp

main:
    call _clrLCDFull                           ; clear screen
    ld a,1
    ld (curCol),a                              ; x
    ld a,2
    ld (curRow),a                              ; y
    ld hl,string                               ; pointer to string
    call _PutS                                 ; draw string
    call _GetKey                               ; wait for keypress
    ret                                        ; exit

string:
    .db "Hello World!",0
  
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

 

Advertisement