A2osX/BIN/ACOS.S.FN.txt

215 lines
2.9 KiB
Plaintext
Raw Normal View History

2021-04-08 20:30:18 +00:00
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
FN.BYTE
FN.CHRd
2021-04-08 20:30:18 +00:00
FN.CLOCK
lda #E.CSYN
sec
rts
*--------------------------------------
FN.DATEd ldx #RT.DATEd.ID
bra FN.TIMEd.1
FN.TIMEd ldx #RT.TIMEd.ID
FN.TIMEd.1 jsr CODE.JSRRT
lda #'$'
sta EXP.TYPE
clc
rts
lda #E.CSYN
sec
rts
*--------------------------------------
2021-04-08 20:30:18 +00:00
FN.FLAG
FN.INFO
2021-04-08 20:30:18 +00:00
FN.INSTR
FN.KEY
2021-04-29 11:56:34 +00:00
lda #E.CSYN
sec
rts
*--------------------------------------
FN.LEFTd ldx #RT.LEFTd.ID
bra FN.RIGHTd.1
FN.RIGHTd ldx #RT.RIGHTd.ID
FN.RIGHTd.1 phx
jsr CORE.CheckOP
2021-06-22 18:59:02 +00:00
bcs .99
2021-04-29 11:56:34 +00:00
jsr EXP.Eval
bcs .99
2021-06-22 18:59:02 +00:00
2021-04-29 11:56:34 +00:00
lda EXP.TYPE
2021-06-22 18:59:02 +00:00
beq .90
jsr CORE.CheckComma
2021-06-22 18:59:02 +00:00
bcs .99
2021-04-29 11:56:34 +00:00
jsr EXP.Eval
bcs .99
2021-04-29 11:56:34 +00:00
lda EXP.TYPE
bne .90
2021-04-29 11:56:34 +00:00
jsr CORE.CheckCP
bcs .99
plx
jsr CODE.JSRRT
lda #'$'
sta EXP.TYPE
2021-04-29 11:56:34 +00:00
clc
rts
2021-06-22 18:59:02 +00:00
.90 lda #E.TMISMATCH
2021-04-29 11:56:34 +00:00
sec
.99 plx
rts
2021-04-29 11:56:34 +00:00
*--------------------------------------
FN.LEN jsr CORE.CheckOP
2021-06-22 18:59:02 +00:00
bcs .99
2021-04-29 11:56:34 +00:00
jsr EXP.Eval
bcs .99
2021-06-22 18:59:02 +00:00
2021-04-29 11:56:34 +00:00
lda EXP.TYPE
2021-06-22 18:59:02 +00:00
beq .90
2021-04-29 11:56:34 +00:00
2021-06-22 18:59:02 +00:00
jsr CORE.CheckCP
bcs .99
2021-04-29 11:56:34 +00:00
stz EXP.TYPE
2021-04-29 11:56:34 +00:00
2021-07-09 20:40:57 +00:00
ldx #RT.LEN.ID
2021-04-29 11:56:34 +00:00
clc
2021-07-09 20:40:57 +00:00
jmp CODE.JSRRT
2021-04-29 11:56:34 +00:00
2021-06-22 18:59:02 +00:00
.90 lda #E.TMISMATCH
2021-04-29 11:56:34 +00:00
sec
2021-06-22 18:59:02 +00:00
.99 rts
2021-04-29 11:56:34 +00:00
*--------------------------------------
FN.MIDd jsr CORE.CheckOP
bcs .99
jsr EXP.Eval str
bcs .99
lda EXP.TYPE
beq .90
jsr CORE.CheckComma
bcs .99
jsr EXP.Eval start
bcs .99
lda EXP.TYPE
bne .90
jsr CORE.CheckComma
bcc .1
ldy #255
ldx #255
jsr CODE.PUSHYXI
bra .2
.1 jsr EXP.Eval len
bcs .99
lda EXP.TYPE
bne .90
.2 jsr CORE.CheckCP
bcs .99
ldx #RT.MIDd.ID
jsr CODE.JSRRT
lda #'$'
sta EXP.TYPE
clc
rts
.90 lda #E.TMISMATCH
sec
.99 rts
*--------------------------------------
2021-04-08 20:30:18 +00:00
FN.PDL
FN.PEEK
FN.RANDOM
FN.RNDd
2021-06-22 18:59:02 +00:00
lda #E.CSYN
sec
rts
*--------------------------------------
FN.STRd jsr CORE.CheckOP
bcs .99
jsr EXP.Eval
bcs .99
lda EXP.TYPE
bne .90
jsr CORE.CheckCP
bcs .99
lda #'$'
sta EXP.TYPE
2021-07-09 20:40:57 +00:00
ldx #RT.STRd.ID
2021-06-22 18:59:02 +00:00
clc
2021-07-09 20:40:57 +00:00
jmp CODE.JSRRT
2021-06-22 18:59:02 +00:00
.90 lda #E.TMISMATCH
sec
.99 rts
*--------------------------------------
FN.VAL jsr CORE.CheckOP
bcs .99
jsr EXP.Eval
bcs .99
lda EXP.TYPE
beq .90
jsr CORE.CheckCP
bcs .99
stz EXP.TYPE
2021-07-09 20:40:57 +00:00
ldx #RT.VAL.ID
* clc
jmp CODE.JSRRT
2021-06-22 18:59:02 +00:00
.90 lda #E.TMISMATCH
sec
.99 rts
*--------------------------------------
2021-04-08 20:30:18 +00:00
FN.WHENd
2021-06-22 18:59:02 +00:00
*--------------------------------------
2021-04-08 20:30:18 +00:00
FN.WIDTH
2021-04-29 11:56:34 +00:00
lda #E.CSYN
sec
2021-04-08 20:30:18 +00:00
rts
*--------------------------------------
MAN
SAVE usr/src/bin/acos.s.fn
LOAD usr/src/bin/acos.s
ASM