71 lines
1.1 KiB
NASM
71 lines
1.1 KiB
NASM
fshcmdSET: .db "SET", 0
|
|
fshcmdSETo: .db $01
|
|
fshcmdSETu: .db "Sets a value in FSH memory", 0
|
|
fshcmdSETf:
|
|
fshcmdSETfArg0:
|
|
ld hl, FshCmdArg0
|
|
ld de, 0
|
|
ld e, (hl)
|
|
inc hl
|
|
ld d, (hl)
|
|
ex de, hl
|
|
ld de, 0
|
|
call cpHLDE
|
|
jr nz, fshcmdSETfArg1
|
|
fshcmdSETfArg0Get:
|
|
ld a, 'G'
|
|
call _PutC
|
|
xor a
|
|
ld (CurCol), a
|
|
ld hl, fshcmdSETfDIndex
|
|
call _PutS
|
|
ld hl, fshcmdSETfInputBuffer
|
|
ld de, 3
|
|
call inputnumstr
|
|
call strtob
|
|
ld hl, FshCmdArg0
|
|
ld (hl), a
|
|
call _NewLine
|
|
fshcmdSETfArg1:
|
|
ld hl, FshCmdArg1
|
|
ld de, 0
|
|
ld e, (hl)
|
|
inc hl
|
|
ld d, (hl)
|
|
ex de, hl
|
|
ld de, 0
|
|
call cpHLDE
|
|
jr nz, fshcmdSETfExe
|
|
fshcmdSETfArg1Get:
|
|
xor a
|
|
ld (CurCol), a
|
|
ld hl, fshcmdSETfDValue
|
|
call _PutS
|
|
ld hl, fshcmdSETfInputBuffer
|
|
ld de, 5
|
|
call inputnumstr
|
|
call strtow
|
|
ex de, hl
|
|
ld hl, FshCmdArg1
|
|
ld (hl), d
|
|
inc hl
|
|
ld (hl), e
|
|
fshcmdSETfExe:
|
|
ld hl, FshCmdArg0
|
|
ld de, 0
|
|
ld e, (hl)
|
|
push de
|
|
ld hl, FshCmdArg1
|
|
ld d, (hl)
|
|
inc hl
|
|
ld e, (hl)
|
|
ex de, hl
|
|
pop de
|
|
call fshvarset
|
|
call _NewLine
|
|
jp ErrCatch
|
|
|
|
fshcmdSETfInputBuffer: .db $00, $00, $00, $00, $00, $00
|
|
fshcmdSETfDIndex: .db "Index= ", 0
|
|
fshcmdSETfDValue: .db "Value= ", 0
|