A2osX/BIN/ASM.S.MAC.txt

138 lines
2.2 KiB
Plaintext
Raw Normal View History

2018-01-29 07:41:05 +00:00
NEW
2018-11-17 17:17:13 +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
>STA.G MAC.hMacroList
>LDYAI 256
2018-07-20 11:51:08 +00:00
>SYSCALL getmem
bcs .9
>STYA ZPMacroBuf
txa
>STA.G MAC.hMacroBuf
>SYSCALL SListNew
bcs .9
>STA.G MAC.hCtxList
>LDYAI 256
2018-07-20 11:51:08 +00:00
>SYSCALL getmem
bcs .9
>STYA ZPCtxBuf
txa
>STA.G MAC.hCtxBuf
.9 rts
2018-01-29 07:41:05 +00:00
*---------------------------------------
MAC.Reset >STZ.G MAC.CtxID
iny
sta (pData),y
rts
*---------------------------------------
MAC.Quit >LDA.G MAC.hCtxBuf
beq .1
2018-01-29 16:48:07 +00:00
2018-07-18 15:30:42 +00:00
>SYSCALL FreeMem
.1 >LDA.G MAC.hCtxList
beq .2
2018-07-24 16:00:24 +00:00
>SYSCALL SListFree
.2 >LDA.G MAC.hMacroBuf
beq .3
2018-07-18 15:30:42 +00:00
>SYSCALL FreeMem
.3 >LDA.G MAC.hMacroList
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
*---------------------------------------
MAC.New lda #0
tay
.1 sta (ZPMacroBuf),y
iny
bne .1
rts
2018-01-29 16:48:07 +00:00
*---------------------------------------
MAC.AddChar >LDA.G ASM.PASS If Pass#2, ignore
bne .8
tax
lda (ZPMacroBuf)
cmp #254
beq .9 CS if EQ
inc
sta (ZPMacroBuf)
tay
txa
sta (ZPMacroBuf),y
tax
beq .1
2018-07-18 15:30:42 +00:00
* >SYSCALL PutChar
.8 clc
rts
.1
* lda #13
2018-07-18 15:30:42 +00:00
* >SYSCALL PutChar
* lda #10
2018-07-18 15:30:42 +00:00
* >SYSCALL PutChar
clc
.9 rts
2018-01-29 16:48:07 +00:00
*---------------------------------------
MAC.Store >LDA.G ASM.PASS If Pass#2, ignore
bne .8
lda (ZPMacroBuf)
beq .8
>PUSHB.G MAC.hMacroList
>PUSHW ZPNameBuf
>PUSHW ZPMacroBuf
>SYSCALL SListAdd
rts
.8 clc
rts
2018-01-29 16:48:07 +00:00
*---------------------------------------
MAC.Lookup >PUSHB.G MAC.hMacroList
>PUSHW ZPLinePtr
>PUSHW ZPMacroBuf
>SYSCALL SListLookup
bcs .9
adc ZPLinePtr
sta ZPLinePtr
bcc .8
inc ZPLinePtr+1
clc
.8
.9 rts
*---------------------------------------
MAC.NewOrGetCtx
*---------------------------------------
*---------------------------------------
2018-01-29 07:41:05 +00:00
MAN
SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.MAC
LOAD /A2OSX.BUILD/BIN/DEV/ASM.S
ASM