mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-19 20:29:34 +00:00
Kernel 0.92+
This commit is contained in:
parent
43b9624a99
commit
096471837a
Binary file not shown.
|
@ -483,17 +483,12 @@ CMD.EXIT lda (ZPArgVBufPtr)
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
>PULLL.G M32.ACC
|
>PULLL.G M32.ACC
|
||||||
|
>LDA.G M32.ACC
|
||||||
|
|
||||||
|
.8 pha
|
||||||
lda #$FF
|
lda #$FF
|
||||||
>STA.G bExit
|
>STA.G bExit
|
||||||
|
pla
|
||||||
>LDA.G M32.ACC
|
|
||||||
clc
|
|
||||||
rts
|
|
||||||
|
|
||||||
.8 lda #$FF
|
|
||||||
>STA.G bExit
|
|
||||||
inc
|
|
||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -548,9 +543,6 @@ CMD.CONTINUE
|
||||||
CMD.FOR
|
CMD.FOR
|
||||||
.9 jmp CMD.Exec.CSYN
|
.9 jmp CMD.Exec.CSYN
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CMD.NEXT
|
|
||||||
.9 jmp CMD.Exec.CSYN
|
|
||||||
*--------------------------------------
|
|
||||||
CMD.WHILE
|
CMD.WHILE
|
||||||
CMD.IF jsr CORE.StkGet
|
CMD.IF jsr CORE.StkGet
|
||||||
bcs .1 no context...
|
bcs .1 no context...
|
||||||
|
@ -583,6 +575,29 @@ CMD.IF jsr CORE.StkGet
|
||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
CMD.NEXT
|
||||||
|
.9 jmp CMD.Exec.CSYN
|
||||||
|
*--------------------------------------
|
||||||
|
CMD.LOOP jsr CORE.StkPull
|
||||||
|
bcs .9
|
||||||
|
tax
|
||||||
|
and #$3F
|
||||||
|
cmp #C.WHILE
|
||||||
|
bne .9
|
||||||
|
|
||||||
|
txa
|
||||||
|
bpl .1
|
||||||
|
|
||||||
|
jmp CORE.StkPullPtr
|
||||||
|
|
||||||
|
.1 jsr CORE.StkPull
|
||||||
|
bcs .99
|
||||||
|
jmp CORE.StkPull
|
||||||
|
|
||||||
|
.9 lda #E.NOWHILE
|
||||||
|
sec
|
||||||
|
.99 rts
|
||||||
|
*--------------------------------------
|
||||||
CMD.ELSE jsr CORE.StkGet
|
CMD.ELSE jsr CORE.StkGet
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
|
@ -618,26 +633,6 @@ CMD.FI jsr CORE.StkPull
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CMD.LOOP jsr CORE.StkPull
|
|
||||||
bcs .9
|
|
||||||
tax
|
|
||||||
and #$3F
|
|
||||||
cmp #C.WHILE
|
|
||||||
bne .9
|
|
||||||
|
|
||||||
txa
|
|
||||||
bpl .1
|
|
||||||
|
|
||||||
jmp CORE.StkPullPtr
|
|
||||||
|
|
||||||
.1 jsr CORE.StkPull
|
|
||||||
bcs .99
|
|
||||||
jmp CORE.StkPull
|
|
||||||
|
|
||||||
.9 lda #E.NOWHILE
|
|
||||||
sec
|
|
||||||
.99 rts
|
|
||||||
*--------------------------------------
|
|
||||||
CMD.IsSwitch lda (ZPArgVBufPtr)
|
CMD.IsSwitch lda (ZPArgVBufPtr)
|
||||||
cmp #'-'
|
cmp #'-'
|
||||||
bne .9
|
bne .9
|
||||||
|
|
|
@ -130,17 +130,22 @@ CORE.Run >LDYA ZPInputBufPtr Save Actual cmd for looping
|
||||||
txa
|
txa
|
||||||
>STA.G CORE.IntCmd
|
>STA.G CORE.IntCmd
|
||||||
|
|
||||||
cpx #C.FOR
|
.42 jsr CORE.StkGet
|
||||||
bcs .7 FOR...FI : always execute
|
|
||||||
|
|
||||||
.42 jsr CORE.StkGet IF,WHILE,FOR ?
|
|
||||||
bcs .7 no particular context, exec...
|
bcs .7 no particular context, exec...
|
||||||
|
tax
|
||||||
|
|
||||||
|
>LDA.G CORE.IntCmd
|
||||||
|
bmi .45
|
||||||
|
|
||||||
|
cmp #C.FOR FOR....FI ?
|
||||||
|
bcs .7
|
||||||
|
|
||||||
asl
|
.45 txa
|
||||||
bcc .43 context is FALSE, skip line
|
bpl .43 context is FALSE, skip line
|
||||||
asl
|
|
||||||
bcs .7 if CC, parent context is FALSE, skip line
|
asl
|
||||||
|
bmi .7 parent context is true, exec
|
||||||
|
|
||||||
.43 jsr CORE.GetNextCharNB
|
.43 jsr CORE.GetNextCharNB
|
||||||
bcs .44 EOF
|
bcs .44 EOF
|
||||||
|
|
||||||
|
|
16
BIN/SH.S.txt
16
BIN/SH.S.txt
|
@ -32,10 +32,10 @@ C.BREAK .EQ 36
|
||||||
C.CONTINUE .EQ 38
|
C.CONTINUE .EQ 38
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
C.FOR .EQ 40
|
C.FOR .EQ 40
|
||||||
C.NEXT .EQ 42
|
C.WHILE .EQ 42
|
||||||
C.WHILE .EQ 44
|
C.IF .EQ 44
|
||||||
C.LOOP .EQ 46
|
C.NEXT .EQ 46
|
||||||
C.IF .EQ 48
|
C.LOOP .EQ 48
|
||||||
C.ELSE .EQ 50
|
C.ELSE .EQ 50
|
||||||
C.FI .EQ 52
|
C.FI .EQ 52
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -134,10 +134,10 @@ J.CMD .DA CMD.NOHUP
|
||||||
.DA CMD.BREAK
|
.DA CMD.BREAK
|
||||||
.DA CMD.CONTINUE
|
.DA CMD.CONTINUE
|
||||||
.DA CMD.FOR
|
.DA CMD.FOR
|
||||||
.DA CMD.NEXT
|
|
||||||
.DA CMD.WHILE
|
.DA CMD.WHILE
|
||||||
.DA CMD.LOOP
|
|
||||||
.DA CMD.IF
|
.DA CMD.IF
|
||||||
|
.DA CMD.NEXT
|
||||||
|
.DA CMD.LOOP
|
||||||
.DA CMD.ELSE
|
.DA CMD.ELSE
|
||||||
.DA CMD.FI
|
.DA CMD.FI
|
||||||
L.CORE.IO .DA CORE.IO
|
L.CORE.IO .DA CORE.IO
|
||||||
|
@ -578,10 +578,10 @@ CMD .AZ "NOHUP"
|
||||||
.AZ "BREAK"
|
.AZ "BREAK"
|
||||||
.AZ "CONTINUE"
|
.AZ "CONTINUE"
|
||||||
.AZ "FOR"
|
.AZ "FOR"
|
||||||
.AZ "NEXT"
|
|
||||||
.AZ "WHILE"
|
.AZ "WHILE"
|
||||||
.AZ "LOOP"
|
|
||||||
.AZ "IF"
|
.AZ "IF"
|
||||||
|
.AZ "NEXT"
|
||||||
|
.AZ "LOOP"
|
||||||
.AZ "ELSE"
|
.AZ "ELSE"
|
||||||
.AZ "FI"
|
.AZ "FI"
|
||||||
.HS 00
|
.HS 00
|
||||||
|
|
Loading…
Reference in New Issue
Block a user