A2osX/BIN/ACOS.S.RT.txt

167 lines
2.7 KiB
Plaintext
Raw Normal View History

2021-04-16 19:17:18 +00:00
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
RT.StrSet >PUSHB hStrings
* >PUSHW id
* >PUSHW str
>SYSCALL StrVSet
rts
2021-04-16 19:17:18 +00:00
*--------------------------------------
RT.StrGet >PUSHB hStrings
txa
>PUSHA
tya
>PUSHA
>PUSHW ZPStrBuf
>SYSCALL StrVGet
>PUSHW ZPStrBuf
rts
2021-04-16 19:17:18 +00:00
*--------------------------------------
RT.StrOut ldy #S.PS.hStdOut
lda (pPS),y
>PUSHA
ldy #2
lda (pStack),y
>PUSHA
lda (pStack),y
>PUSHA
>SYSCALL fputs
inc pStack
inc pStack
2021-04-16 19:17:18 +00:00
rts
*--------------------------------------
RT.IntSet
*--------------------------------------
RT.IntGet sty ZPADDR
stx ZPADDR+1
ldy #1
lda (ZPADDR),y
>PUSHA
lda (ZPADDR)
>PUSHA
2021-06-03 17:43:28 +00:00
rts
*--------------------------------------
RT.IntOut >PUSHW L.MSG.INT16
ldy #3
lda (pStack),y
>PUSHA
lda (pStack),y
>PUSHA
>PUSHBI 2
>SYSCALL PrintF
inc pStack
inc pStack
rts
*--------------------------------------
RT.DATEd ldx #0
bra RT.TIMEd.1
RT.TIMEd ldx #2
RT.TIMEd.1 >PUSHW ZPStrBuf
>PUSHW L.FMT.DATE,x
>PUSHEA.G TimeBuf
>PUSHEA.G TimeBuf
>SYSCALL Time
>SYSCALL StrFTime
>PUSHW ZPStrBuf
rts
2021-06-03 17:43:28 +00:00
*--------------------------------------
RT.INPUT lda #0
sta (ZPStrBuf)
stz ZPPtr1
.1 >SYSCALL GetChar
bcs .9
ldy ZPPtr1
cmp #C.SPACE
bcs .7
cmp #C.CR
beq .8
cmp #C.BS
bne .1
cpy #0
beq .1
>SYSCALL PutChar
lda #C.SPACE
>SYSCALL PutChar
lda #C.BS
>SYSCALL PutChar
dec ZPPtr1
bra .1
.7 sta (ZPStrBuf),y
>SYSCALL PutChar
inc ZPPtr1
bne .1
.8 lda #0
sta (ZPStrBuf),y
>PUSHW ZPStrBuf
clc
.9 rts
*--------------------------------------
RT.LEFTd >PULLW ZPPtr2 cnt
lda (pStack)
sta ZPPtr1
ldy #1
lda (pStack),y
sta ZPPtr1+1
ldy #0
.1 lda (ZPPtr1),y
beq .8
iny
cpy ZPPtr2
bne .1
lda #0
sta (ZPPtr1),y
.8 rts
*--------------------------------------
RT.LEN >PULLYA str
>SYSCALL strlen
>PUSHYA
rts
*--------------------------------------
RT.STRd >PULLYA int
pha
>PUSHW ZPStrBuf
>PUSHW L.MSG.INT16
pla
>PUSHYA
>PUSHBI 2
>SYSCALL sprintf
>PUSHW ZPStrBuf
rts
*--------------------------------------
RT.VAL >PULLYA str
>SYSCALL atoi
>PUSHYA
rts
*--------------------------------------
2021-04-16 19:17:18 +00:00
MAN
2021-05-22 21:05:12 +00:00
SAVE usr/src/bin/acos.s.rt
2021-04-16 19:17:18 +00:00
LOAD usr/src/bin/acos.s
ASM