mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-23 19:29:07 +00:00
Kernel 0.92
This commit is contained in:
parent
288bd3303e
commit
8495b88a54
Binary file not shown.
@ -541,14 +541,13 @@ Cmd.INT.IF ldx #1
|
||||
jsr CMD.IF.UNARY
|
||||
bcs .9
|
||||
|
||||
>LDA.G CMD.Test
|
||||
eor #$80
|
||||
>EOR.G CMD.Test
|
||||
sta (pData),y
|
||||
|
||||
ldx #4 go check ]
|
||||
bra .8
|
||||
|
||||
.9 lda #E.SYN
|
||||
.9 lda #E.SYNTAX
|
||||
sec
|
||||
.99 rts
|
||||
|
||||
@ -566,6 +565,9 @@ Cmd.INT.IF ldx #1
|
||||
jsr CMD.IF.BINARY
|
||||
bcs .9
|
||||
|
||||
>EOR.G CMD.Test
|
||||
sta (pData),y
|
||||
|
||||
ldx #5 go check ]
|
||||
|
||||
.8 jsr Cmd.GetArgX
|
||||
@ -602,7 +604,7 @@ CMD.IF.UNARY ldx #3
|
||||
tax
|
||||
jmp (J.CMD.IF.TOKEN2,x)
|
||||
|
||||
.9 lda #E.SYN
|
||||
.9 lda #E.SYNTAX
|
||||
sec
|
||||
rts
|
||||
|
||||
@ -631,11 +633,11 @@ CMD.IF.DEF.7 >PUSHEA.G CMD.Stat
|
||||
>SYSCALL STAT
|
||||
rts
|
||||
|
||||
CMD.IF.DEF.8 ldx #$80 true
|
||||
CMD.IF.DEF.8 lda #$80 true
|
||||
clc
|
||||
rts
|
||||
|
||||
CMD.IF.DEF.9 ldx #0 false
|
||||
CMD.IF.DEF.9 lda #0 false
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -662,16 +664,15 @@ CMD.IF.BINARY ldx #2
|
||||
jsr Cmd.GetArgX
|
||||
>SYSCALL strcmp
|
||||
lsr CS if !=
|
||||
and #$80
|
||||
>EOR.G CMD.Operator
|
||||
sta (pData),y
|
||||
tax
|
||||
clc
|
||||
rts
|
||||
|
||||
.9 lda #E.SYN
|
||||
sec
|
||||
rts
|
||||
|
||||
*--------------------------------------
|
||||
CMD.IF.BINARY.NUM
|
||||
ldx #2
|
||||
jsr Cmd.GetArgX
|
||||
@ -691,48 +692,8 @@ CMD.IF.BINARY.NUM
|
||||
|
||||
>PULLL.G M32.ARG
|
||||
|
||||
ldx #4
|
||||
ldy #M32.ARG+3
|
||||
|
||||
.1 lda (pData),y
|
||||
jsr M32.Cmp
|
||||
pha
|
||||
dey
|
||||
dex
|
||||
bne .1
|
||||
|
||||
ldx #4
|
||||
ldy #M32.ACC
|
||||
|
||||
sec
|
||||
|
||||
.2 pla
|
||||
sbc (pData),y
|
||||
sta (pData),y
|
||||
iny
|
||||
dex
|
||||
bne .2
|
||||
|
||||
bcc .5 CC if Arg1 < Arg2
|
||||
|
||||
ldy #M32.ACC
|
||||
|
||||
lda (pData),y
|
||||
iny
|
||||
ora (pData),y
|
||||
iny
|
||||
ora (pData),y
|
||||
iny
|
||||
ora (pData),y Z if Arg1 = Arg2
|
||||
|
||||
bne .4
|
||||
|
||||
.3 lda #%001 001 arg1 = arg2
|
||||
bra .6
|
||||
.4 lda #%010 010 arg1 > arg2
|
||||
bra .6
|
||||
.5 lda #%100 100 Arg1 < Arg2
|
||||
|
||||
.6 pha
|
||||
|
||||
>LDA.G CMD.Operator
|
||||
lsr
|
||||
@ -741,15 +702,15 @@ CMD.IF.BINARY.NUM
|
||||
eor CMD.IF.TOKEN3.BITS,x
|
||||
bne .80
|
||||
|
||||
ldx #$80 true
|
||||
lda #$80 true
|
||||
clc
|
||||
rts
|
||||
|
||||
.80 ldx #0 false
|
||||
.80 lda #0 false
|
||||
clc
|
||||
rts
|
||||
|
||||
.9 lda #E.SYN
|
||||
.9 lda #E.SYNTAX
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -769,7 +730,7 @@ Cmd.INT.ELSE jsr CMD.StkGet
|
||||
rts
|
||||
|
||||
.9 pla
|
||||
lda #E.SYN
|
||||
lda #E.SYNTAX
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -783,7 +744,7 @@ Cmd.INT.FI jsr CMD.StkPull
|
||||
clc
|
||||
rts
|
||||
|
||||
.9 lda #E.SYN
|
||||
.9 lda #E.SYNTAX
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -881,17 +842,6 @@ Cmd.GetEXP.GetNext
|
||||
jsr Cmd.GetArgX
|
||||
rts
|
||||
*--------------------------------------
|
||||
Cmd.GetValue tax
|
||||
jsr Cmd.GetArgX
|
||||
>STYA ZPPtr1
|
||||
|
||||
lda (ZPPtr1)
|
||||
cmp #'$'
|
||||
bne .2
|
||||
|
||||
|
||||
.2 >SYSCALL AToL
|
||||
*--------------------------------------
|
||||
Cmd.GetArgX >LDYA ZPArgVBuf
|
||||
|
||||
dex
|
||||
|
46
X.M32.S.txt
46
X.M32.S.txt
@ -34,7 +34,7 @@ M32.Add ldy #M32.ARG+4 ARG+ACC->ACC
|
||||
|
||||
rts if CS, Overflow
|
||||
*---------------------------------------
|
||||
M32.Sub ldy #M32.ARG+4 ARG+ACC->ACC
|
||||
M32.Sub ldy #M32.ARG+4 ARG-ACC->ACC
|
||||
|
||||
.1 dey
|
||||
lda (pData),y
|
||||
@ -93,5 +93,49 @@ M32.ACC2ARG ldy #M32.ACC+4 ACC->ARG
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
M32.Cmp ldx #4
|
||||
ldy #M32.ARG+3
|
||||
|
||||
.1 lda (pData),y
|
||||
pha
|
||||
dey
|
||||
dex
|
||||
bne .1
|
||||
|
||||
ldx #4
|
||||
ldy #M32.ACC
|
||||
|
||||
sec
|
||||
|
||||
.2 pla
|
||||
sbc (pData),y
|
||||
sta (pData),y
|
||||
iny
|
||||
dex
|
||||
bne .2
|
||||
|
||||
bcc .5 CC if ACC < ARG
|
||||
|
||||
ldy #M32.ACC
|
||||
|
||||
lda (pData),y
|
||||
iny
|
||||
ora (pData),y
|
||||
iny
|
||||
ora (pData),y
|
||||
iny
|
||||
ora (pData),y Z if ACC = ARG
|
||||
|
||||
bne .4
|
||||
|
||||
lda #%001 001 ACC = ARG
|
||||
rts
|
||||
|
||||
.4 lda #%010 010 ACC > ARG
|
||||
rts
|
||||
|
||||
.5 lda #%100 100 ACC < ARG
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/X.M32.S
|
||||
|
Loading…
x
Reference in New Issue
Block a user