A2osX/BIN/ASM.S.MAC.txt

131 lines
2.0 KiB
Plaintext
Raw Normal View History

2018-01-29 07:41:05 +00:00
NEW
2019-03-18 16:48:16 +00:00
PREFIX
2018-01-29 07:41:05 +00:00
AUTO 4,1
*---------------------------------------
MAC.Init >SYSCALL SListNew
bcs .9
2018-01-29 07:41:05 +00:00
2019-03-29 16:21:30 +00:00
>STA.G MAC.hList
>LDYAI 256
2018-07-20 11:51:08 +00:00
>SYSCALL getmem
bcs .9
>STYA ZPMacroBuf
txa
2019-03-29 16:21:30 +00:00
>STA.G MAC.hBuf
>LDYAI 256
2018-07-20 11:51:08 +00:00
>SYSCALL getmem
bcs .9
2019-03-29 16:21:30 +00:00
>STYA ZPMacroStk
txa
2019-03-29 16:21:30 +00:00
>STA.G MAC.hStk
.9 rts
2018-01-29 07:41:05 +00:00
*---------------------------------------
2019-03-29 16:21:30 +00:00
MAC.Reset >STZ.G MAC.StkPtr
rts
*---------------------------------------
2019-03-29 16:21:30 +00:00
MAC.Quit >LDA.G MAC.hStk
beq .1
2018-01-29 16:48:07 +00:00
2018-07-18 15:30:42 +00:00
>SYSCALL FreeMem
2019-03-29 16:21:30 +00:00
.1 >LDA.G MAC.hBuf
beq .3
2018-07-18 15:30:42 +00:00
>SYSCALL FreeMem
2019-03-29 16:21:30 +00:00
.3 >LDA.G MAC.hList
beq .8
2018-07-24 16:00:24 +00:00
>SYSCALL SListFree
2018-01-29 07:41:05 +00:00
.8 clc
rts
2018-01-29 07:41:05 +00:00
*---------------------------------------
2019-03-18 16:48:16 +00:00
MAC.AddChar tax
2019-03-22 16:47:33 +00:00
>LDA.G ASM.PASS If Pass#2, ignore
bne .8
2019-03-18 16:48:16 +00:00
>LDA.G MAC.BufPtr
tay
2019-03-18 16:48:16 +00:00
txa
sta (ZPMacroBuf),y
2019-03-18 16:48:16 +00:00
>INC.G MAC.BufPtr
2019-03-18 16:48:16 +00:00
txa
bne .8
2019-03-18 16:48:16 +00:00
>LDA.G MAC.BufPtr
tay
lda #0
>PUSHYA
>PUSHW ZPMacroBuf
2019-03-29 16:21:30 +00:00
>PUSHW.G MAC.ID
>LDA.G MAC.hList
2019-03-18 16:48:16 +00:00
>SYSCALL SListAddData
rts
.8 clc
rts
2018-01-29 16:48:07 +00:00
*---------------------------------------
2019-03-28 16:48:22 +00:00
MAC.Lookup >PUSHW ZPLinePtr
2019-03-29 16:21:30 +00:00
>LDA.G MAC.hList
>SYSCALL SListLookup
bcs .9
2019-03-29 16:21:30 +00:00
pha
2019-03-18 16:48:16 +00:00
txa
adc ZPLinePtr
sta ZPLinePtr
bcc .8
inc ZPLinePtr+1
2019-03-29 16:21:30 +00:00
clc
.8 pla Y,A = MAC.ID
.9 rts
*---------------------------------------
2019-03-29 16:21:30 +00:00
MAC.ReadLine >LDA.G MAC.StkPtr
tay
dey
dey
dey
lda (ZPMacroStk),y
>PUSHA offset
dey
lda (ZPMacroStk),y
>PUSHA
lda #0
>PUSHA len = 0 (string mode)
>PUSHA
>PUSHW ZPLineBuf
>LDA.G MAC.StkPtr
tay
dey
lda (ZPMacroStk),y
>PUSHA
dey
lda (ZPMacroStk),y
>PUSHA
>LDA.G MAC.hList
>SYSCALL SListGetData
2019-03-18 16:48:16 +00:00
rts
*---------------------------------------
2018-01-29 07:41:05 +00:00
MAN
2019-01-28 07:44:37 +00:00
SAVE USR/SRC/BIN/ASM.S.MAC
LOAD USR/SRC/BIN/ASM.S
2018-01-29 07:41:05 +00:00
ASM