1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-12-27 18:18:05 +11:00
collapseos/tools/emul/zasm/user.asm

68 lines
921 B
NASM
Raw Normal View History

2019-04-17 07:00:19 +10:00
; *** JUMP TABLE ***
strncmp .equ 0x03
addDE .equ 0x06
addHL .equ 0x09
upcase .equ 0x0c
unsetZ .equ 0x0f
intoDE .equ 0x12
intoHL .equ 0x15
findchar .equ 0x18
2019-05-18 13:00:57 +10:00
parseHex .equ 0x1b
parseHexPair .equ 0x1e
blkSel .equ 0x21
fsFindFN .equ 0x24
fsOpen .equ 0x27
fsGetC .equ 0x2a
fsSeek .equ 0x2d
fsTell .equ 0x30
2019-05-10 04:09:40 +10:00
2019-05-17 11:15:00 +10:00
.equ FS_HANDLE_SIZE 8
.equ STDERR_PORT 0x04
.equ USER_CODE 0x4800
.equ RAMSTART 0x5800
2019-05-10 11:21:08 +10:00
.org USER_CODE
call zasmMain
;call dumpSymTable
ret
#include "zasm/main.asm"
; *** Debug ***
debugPrint:
push af
push hl
.loop:
ld a, (hl)
or a
jr z, .end
out (STDERR_PORT), a
inc hl
jr .loop
.end:
ld a, 0x0a
out (STDERR_PORT), a
pop hl
pop af
ret
dumpSymTable:
ld hl, SYM_NAMES
ld de, SYM_VALUES
.loop:
call debugPrint
ld a, (de)
out (12), a
inc de
ld a, (de)
out (12), a
inc de
xor a
call findchar
inc hl
ld a, (hl)
or a
ret z
jr .loop