mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-19 20:29:34 +00:00
Kernel 0.93
This commit is contained in:
parent
cda867763e
commit
29136ee0f8
Binary file not shown.
|
@ -1236,7 +1236,7 @@ CMD.NEXT.EXEC lda (pData),y Y = StkPtr
|
||||||
|
|
||||||
jsr CMD.NEXT.LINE
|
jsr CMD.NEXT.LINE
|
||||||
bcs .9
|
bcs .9
|
||||||
bpl .1
|
bpl .1 end of file/pipe
|
||||||
|
|
||||||
lda (pData)
|
lda (pData)
|
||||||
sec
|
sec
|
||||||
|
@ -1279,16 +1279,12 @@ CMD.NEXT.LINE lda (pData)
|
||||||
phy
|
phy
|
||||||
>SYSCALL GetMemPtr hVARNAME
|
>SYSCALL GetMemPtr hVARNAME
|
||||||
>STYA ZPVarNamePtr
|
>STYA ZPVarNamePtr
|
||||||
ply
|
|
||||||
|
|
||||||
|
|
||||||
dey
|
|
||||||
lda (pData),y hPIPE
|
|
||||||
pha
|
|
||||||
>PUSHWI 256
|
>PUSHWI 256
|
||||||
>PUSHW ZPCLBuf
|
>PUSHW ZPCLBuf
|
||||||
pla
|
ply
|
||||||
|
dey
|
||||||
|
lda (pData),y hFILE/hPIPE
|
||||||
>SYSCALL fgets
|
>SYSCALL fgets
|
||||||
bcs .8
|
bcs .8
|
||||||
|
|
||||||
|
|
|
@ -811,55 +811,81 @@ PrintF.COut phy
|
||||||
K.FGetS jsr PFT.CheckNodeA
|
K.FGetS jsr PFT.CheckNodeA
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
lda (pStack)
|
* lda (pFD)
|
||||||
sta ZPPtr2
|
* bne .10
|
||||||
ldy #1
|
* jmp IO.READ.REG wont block
|
||||||
|
|
||||||
|
.10 lda (pStack)
|
||||||
|
sta ZPPtr2 s
|
||||||
|
|
||||||
|
ldy #1
|
||||||
lda (pStack),y
|
lda (pStack),y
|
||||||
sta ZPPtr2+1 s
|
sta ZPPtr2+1 s
|
||||||
|
|
||||||
iny
|
iny
|
||||||
lda (pStack),y
|
|
||||||
sec
|
lda (pStack),y n
|
||||||
sbc #2
|
* clc
|
||||||
|
sbc #1
|
||||||
eor #$ff
|
eor #$ff
|
||||||
sta ZPPtr1 !n
|
sta ZPPtr1 !(n-2)
|
||||||
|
|
||||||
iny
|
iny
|
||||||
lda (pStack),y
|
|
||||||
|
lda (pStack),y n
|
||||||
sbc #0
|
sbc #0
|
||||||
eor #$ff
|
eor #$ff
|
||||||
sta ZPPtr1+1 !n
|
sta ZPPtr1+1 !(n-2)
|
||||||
|
|
||||||
|
jsr K.GetC.I
|
||||||
|
bcs .4
|
||||||
|
|
||||||
.10 jsr K.GetC.I
|
|
||||||
bcc .1
|
|
||||||
tay
|
|
||||||
bne .9 I/O ERROR
|
|
||||||
rts BLOCKING I/O
|
|
||||||
|
|
||||||
.1 cmp #C.LF Discard any leading LF
|
.1 cmp #C.LF Discard any leading LF
|
||||||
beq .10
|
beq .3
|
||||||
|
|
||||||
.2 cmp #C.CR
|
.2 cmp #C.CR
|
||||||
beq .8
|
beq .8
|
||||||
|
|
||||||
jsr MEM.PutCharPtr2
|
jsr MEM.PutCharPtr2
|
||||||
|
|
||||||
jsr MEM.NextCharPtr1
|
inc ZPPtr1
|
||||||
beq .8
|
bne .3
|
||||||
|
inc ZPPtr1+1
|
||||||
|
beq .8 Buffer full
|
||||||
|
|
||||||
jsr K.GetC.I
|
.3 jsr K.GetC.I
|
||||||
bcc .2 another char...
|
bcc .2 another char...
|
||||||
tay BLOCKING...
|
|
||||||
bne .8
|
.4 tay
|
||||||
|
bne .9 I/O error
|
||||||
|
|
||||||
|
lda ZPPtr2
|
||||||
|
sta (pStack) s
|
||||||
|
|
||||||
|
lda ZPPtr2+1
|
||||||
|
ldy #1
|
||||||
|
sta (pStack),y s
|
||||||
|
|
||||||
|
lda ZPPtr1
|
||||||
|
eor #$ff
|
||||||
|
* sec
|
||||||
|
adc #1
|
||||||
|
iny
|
||||||
|
sta (pStack),y !(n+2)
|
||||||
|
|
||||||
jsr .9 Cancel GetC blocking
|
lda ZPPtr1+1
|
||||||
|
eor #$ff
|
||||||
|
adc #0
|
||||||
|
iny
|
||||||
|
sta (pStack),y !(n+2)
|
||||||
|
|
||||||
.8 clc
|
lda #0 BLOCKING I/O
|
||||||
|
sec
|
||||||
|
rts
|
||||||
|
|
||||||
lda #0
|
.8 lda #0
|
||||||
sta (ZPPtr2) terminate string
|
sta (ZPPtr2) terminate string
|
||||||
|
clc
|
||||||
.9 >RET 4
|
.9 >RET 4
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # getchar (BLOCKING)
|
* # getchar (BLOCKING)
|
||||||
|
@ -897,7 +923,7 @@ K.GetC.I >PUSHWI 1
|
||||||
jsr IO.READ.I
|
jsr IO.READ.I
|
||||||
bcc .8
|
bcc .8
|
||||||
tay
|
tay
|
||||||
bne K.GetC.RTS
|
bne K.GetC.RTS I/O error
|
||||||
|
|
||||||
>RET 4 BLOCKING I/O
|
>RET 4 BLOCKING I/O
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user