cjs
Experienced Member
Yup, that's a good reference, and I link to it in my documentation. It's aimed at a very different audience from my files, though. First, it's not in the form of a file that can be re-assembled. Second, it's extremely verbose, which is no doubt a good thing for people unfamiliar with Z80 assembly language, but makes it more work to read for more experienced Z80 programmers. For example my disassembly of a couple of simple routines is:For those looking for commented TRS-80 Level II v1.0, Model III, TRSDOS v1.3, TRSDOS v2.3, etc., please visit
Code:
; ♠BC ♣AF Delay loop, count in BC.
pause dec bc
ld a,b
or c
jr nz,pause
ret
; The RESET button generates an NMI, not an actual reset.
NMI ld sp,$0600 ; ???
ld a,(diskstat) ; $FF if no expansion interface present
inc a
cp $02 ; disk present?
jp nc,rst00 ; yes: restart as if power-up
jp ready ; no: go to BASIC prompt
On that web site, it's expanded to something much larger and more verbose; see the attached image.
I'm not saying that the web site is bad; it's a well done resource, and no doubt especially good for Z80 beginners. It's just aimed at an audience rather different than mine.
BTW, the web site doesn't explain why the stack pointer is set to $0600, which is pointing into ROM.