mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-27 00:29:29 +00:00
Kernel 0.93
This commit is contained in:
parent
e200a9539b
commit
20ebfb7954
Binary file not shown.
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -257,7 +256,7 @@ CS.RUN ldy #S.PS.hStdIn
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .13
|
bne .13
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
|
@ -1,10 +1,9 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
.TF BIN/ATK/ATBROWSE
|
.TF BIN/ATBROWSE
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.INB INC/MACROS.I
|
.INB INC/MACROS.I
|
||||||
.INB INC/A2OSX.I
|
.INB INC/A2OSX.I
|
||||||
|
|
|
@ -1,10 +1,9 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
.TF BIN/ATK/ATLOGON
|
.TF BIN/ATLOGON
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.INB INC/MACROS.I
|
.INB INC/MACROS.I
|
||||||
.INB INC/A2OSX.I
|
.INB INC/A2OSX.I
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -111,8 +110,9 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
|
||||||
lda (pPS),y
|
lda (pPS),y
|
||||||
>SYSCALL feof
|
>SYSCALL feof
|
||||||
bcs .90 IO error
|
bcs .90 IO error
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .10 no char
|
bne .10 no char
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .9 IO error
|
bcs .9 IO error
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -123,7 +122,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1
|
bne .1
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -120,7 +119,7 @@ CS.RUN ldy #S.PS.hStdIn
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .10
|
bne .10
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 4,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -110,7 +109,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
|
||||||
bcs .99 I/O error
|
bcs .99 I/O error
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .2 no char
|
bne .2 no char
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -119,7 +118,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1
|
bne .1
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -215,8 +214,9 @@ CS.RUN.WAIT.REPLY
|
||||||
lda (pPS),y
|
lda (pPS),y
|
||||||
>SYSCALL feof
|
>SYSCALL feof
|
||||||
bcs CS.RUN.ERR
|
bcs CS.RUN.ERR
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1
|
bne .1
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs CS.RUN.ERR
|
bcs CS.RUN.ERR
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
|
|
@ -404,8 +404,9 @@ CMD.GETKEY lda (ZPArgVBufPtr)
|
||||||
lda (pPS),y
|
lda (pPS),y
|
||||||
>SYSCALL feof
|
>SYSCALL feof
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1
|
bne .1
|
||||||
|
|
||||||
>SYSCALL getchar
|
>SYSCALL getchar
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
|
@ -291,7 +291,7 @@ CS.RUN.LOOP >SLEEP
|
||||||
beq .8
|
beq .8
|
||||||
bra .61
|
bra .61
|
||||||
|
|
||||||
.60 cmp #C.CR
|
.60 cmp #19 Ctrl-S
|
||||||
bne .4
|
bne .4
|
||||||
|
|
||||||
.61 >STZ.G bPause
|
.61 >STZ.G bPause
|
||||||
|
@ -404,7 +404,7 @@ CS.RUN.BATCH >LDA.G bSET.C
|
||||||
bcs .2 unsupported
|
bcs .2 unsupported
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .2
|
bne .2
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs CS.RUN.READ.9
|
bcs CS.RUN.READ.9
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -171,15 +170,18 @@ CS.RUN.OPENSKT >PUSHBI 0 no protocol
|
||||||
|
|
||||||
CS.RUN.LOOP >SLEEP
|
CS.RUN.LOOP >SLEEP
|
||||||
|
|
||||||
|
>LDA.G hSocket
|
||||||
|
>LIBCALL hLIBTCPIP,LIBTCPIP.EOF
|
||||||
|
bcs .99
|
||||||
|
|
||||||
|
tay
|
||||||
|
bne .2 EOF, no char
|
||||||
|
|
||||||
>PUSHWI BUFSIZE
|
>PUSHWI BUFSIZE
|
||||||
>PUSHW ZPBufPtr
|
>PUSHW ZPBufPtr
|
||||||
>LDA.G hSocket
|
>LDA.G hSocket
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.Read
|
>LIBCALL hLIBTCPIP,LIBTCPIP.Read
|
||||||
bcc .1
|
.99 bcs .9
|
||||||
|
|
||||||
tay
|
|
||||||
beq .2 no char
|
|
||||||
jmp CS.RUN.SKTERR
|
|
||||||
|
|
||||||
.1 >PUSHYA len
|
.1 >PUSHYA len
|
||||||
>PUSHW ZPBufPtr
|
>PUSHW ZPBufPtr
|
||||||
|
@ -193,8 +195,9 @@ CS.RUN.LOOP >SLEEP
|
||||||
|
|
||||||
>SYSCALL feof
|
>SYSCALL feof
|
||||||
bcs .11 CS.RUN.IOERR
|
bcs .11 CS.RUN.IOERR
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq CS.RUN.LOOP no char from STDIN
|
bne CS.RUN.LOOP EOF = true, no char from STDIN
|
||||||
|
|
||||||
>PUSHWI BUFSIZE
|
>PUSHWI BUFSIZE
|
||||||
>PUSHW ZPBufPtr
|
>PUSHW ZPBufPtr
|
||||||
|
@ -208,24 +211,14 @@ CS.RUN.LOOP >SLEEP
|
||||||
cmp #$14 Ctrl-T
|
cmp #$14 Ctrl-T
|
||||||
beq CS.RUN.USER
|
beq CS.RUN.USER
|
||||||
|
|
||||||
.4 >PUSHW ZPBufLen
|
>PUSHW ZPBufLen
|
||||||
>PUSHW ZPBufPtr
|
>PUSHW ZPBufPtr
|
||||||
>LDA.G hSocket
|
>LDA.G hSocket
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.Write
|
>LIBCALL hLIBTCPIP,LIBTCPIP.Write
|
||||||
|
|
||||||
bcc .8
|
.9 bcs CS.RUN.SKTERR
|
||||||
|
|
||||||
tay
|
jmp CS.RUN.LOOP
|
||||||
bne CS.RUN.SKTERR
|
|
||||||
|
|
||||||
>SLEEP
|
|
||||||
bra .4
|
|
||||||
|
|
||||||
.8 jmp CS.RUN.LOOP
|
|
||||||
|
|
||||||
.9 lda #0
|
|
||||||
sec
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.RUN.SKTERR pha
|
CS.RUN.SKTERR pha
|
||||||
>PUSHA
|
>PUSHA
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -109,7 +108,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .10
|
bne .10
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 4,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
X.COPY.BUF.SIZE .EQ 4096
|
X.COPY.BUF.SIZE .EQ 4096
|
||||||
|
@ -137,7 +136,7 @@ CS.RUN ldy #S.PS.hStdIn
|
||||||
bcs CS.INIT.RTS I/O error
|
bcs CS.INIT.RTS I/O error
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .15
|
bne .15
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs CS.INIT.RTS I/O error
|
bcs CS.INIT.RTS I/O error
|
||||||
|
@ -263,7 +262,7 @@ CS.RUN.LEAVE jsr LeaveSubDir exit this sub dir....
|
||||||
jsr BasePath..
|
jsr BasePath..
|
||||||
|
|
||||||
.DO X.DELETE.SOURCE=1
|
.DO X.DELETE.SOURCE=1
|
||||||
.DO X.COPY.TO.DEST=0
|
* .DO X.COPY.TO.DEST=0
|
||||||
|
|
||||||
jsr GetEntry
|
jsr GetEntry
|
||||||
bcs *
|
bcs *
|
||||||
|
@ -279,7 +278,7 @@ CS.RUN.LEAVE jsr LeaveSubDir exit this sub dir....
|
||||||
>SYSCALL remove
|
>SYSCALL remove
|
||||||
jsr CS.RUN.CheckErr
|
jsr CS.RUN.CheckErr
|
||||||
bcs .99
|
bcs .99
|
||||||
.FIN
|
* .FIN
|
||||||
.FIN
|
.FIN
|
||||||
|
|
||||||
jmp CS.RUN.NEXT
|
jmp CS.RUN.NEXT
|
||||||
|
@ -760,5 +759,5 @@ CS.QUIT.FREE lda (pData),y
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/BIN/X.CPMVRM.S
|
SAVE USR/SRC/BIN/X.CPMVRM.S
|
||||||
LOAD USR/SRC/BIN/CP.S
|
LOAD USR/SRC/BIN/MV.S
|
||||||
ASM
|
ASM
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -243,7 +242,11 @@ STATUS.9 lda #MLI.E.BADCTL
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
OPEN jsr CLOSE
|
OPEN lda #S.DIB.S.OPENED
|
||||||
|
bit DIB+S.DIB.S
|
||||||
|
bne .9
|
||||||
|
|
||||||
|
jsr CLOSE
|
||||||
|
|
||||||
* ldx DEVSLOTx0 Done by CLOSE
|
* ldx DEVSLOTx0 Done by CLOSE
|
||||||
|
|
||||||
|
@ -292,6 +295,10 @@ OPEN jsr CLOSE
|
||||||
|
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
.9 lda #MLI.E.OPEN
|
||||||
|
sec
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CLOSE ldx DEVSLOTx0
|
CLOSE ldx DEVSLOTx0
|
||||||
stz L91C96.BSR,x
|
stz L91C96.BSR,x
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
U2AI .EQ 1
|
U2AI .EQ 1
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
U2AI .EQ 0
|
U2AI .EQ 0
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -199,7 +198,6 @@ DRV.CS.START cld
|
||||||
.DA CLOSE
|
.DA CLOSE
|
||||||
.DA READ
|
.DA READ
|
||||||
.DA WRITE
|
.DA WRITE
|
||||||
.DA A2osX.BADCALL IRQ
|
|
||||||
.DA 0 end or relocation
|
.DA 0 end or relocation
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
STATUS >STYA ZPIOCTL
|
STATUS >STYA ZPIOCTL
|
||||||
|
@ -278,7 +276,15 @@ CONTROL >STYA ZPIOCTL
|
||||||
|
|
||||||
.FIN
|
.FIN
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
OPEN jsr CLOSE
|
OPEN lda #S.DIB.S.OPENED
|
||||||
|
bit DIB+S.DIB.S
|
||||||
|
beq .10
|
||||||
|
|
||||||
|
lda #MLI.E.OPEN
|
||||||
|
sec
|
||||||
|
rts
|
||||||
|
|
||||||
|
.10 jsr CLOSE
|
||||||
|
|
||||||
* ldx DEVSLOTx0 Done by CLOSE
|
* ldx DEVSLOTx0 Done by CLOSE
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
|
|
@ -626,7 +626,19 @@ SKT.setsockopt >SYSCALL GetMemPtr
|
||||||
sta (ZPPtrSKT),y
|
sta (ZPPtrSKT),y
|
||||||
* clc
|
* clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*/--------------------------------------
|
||||||
|
* # EOF
|
||||||
|
* End Of File
|
||||||
|
* ## C
|
||||||
|
* `int eof(hFD fd);`
|
||||||
|
* ## ASM
|
||||||
|
* **In:**
|
||||||
|
* `lda fd`
|
||||||
|
* `>LIBCALL hLIBTCPIP,LIBTCPIP.EOF`
|
||||||
|
* ## RETURN VALUE
|
||||||
|
* CC : A = 0 if some data, A = $ff if EOF
|
||||||
|
* CS : A = Socket Error
|
||||||
|
*\--------------------------------------
|
||||||
SKT.EOF >SYSCALL GetMemPtr
|
SKT.EOF >SYSCALL GetMemPtr
|
||||||
>STYA ZPPtrSKT
|
>STYA ZPPtrSKT
|
||||||
|
|
||||||
|
@ -634,16 +646,17 @@ SKT.EOF.I ldy #S.SOCKET.TCP.INUSED
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
iny
|
iny
|
||||||
ora (ZPPtrSKT),y
|
ora (ZPPtrSKT),y
|
||||||
bne .8 some DATA
|
bne .8 some DATA...
|
||||||
|
|
||||||
jsr SKT.CheckStream
|
jsr SKT.CheckStream
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
lda #0 no DATA
|
lda #$ff no DATA, EOF = true
|
||||||
sec
|
clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.8 clc
|
.8 lda #0 ...EOF = false
|
||||||
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SKT.CheckStream ldy #S.SOCKET.T
|
SKT.CheckStream ldy #S.SOCKET.T
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -130,7 +129,7 @@ CS.RUN.LOOP1 >SLEEP
|
||||||
bcs CS.RUN.9 I/O error
|
bcs CS.RUN.9 I/O error
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1 no char
|
bne .1 no char
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs CS.RUN.9
|
bcs CS.RUN.9
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
NEW
|
NEW
|
||||||
PREFIX
|
AUTO 3,1
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
.LIST OFF
|
||||||
.OP 65C02
|
.OP 65C02
|
||||||
.OR $2000
|
.OR $2000
|
||||||
|
@ -80,8 +79,9 @@ CS.RUN jsr Init.Timeout
|
||||||
lda (pPs),y
|
lda (pPs),y
|
||||||
>SYSCALL feof
|
>SYSCALL feof
|
||||||
bcs CS.RUN.RTS I/O err
|
bcs CS.RUN.RTS I/O err
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1
|
bne .1
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs CS.RUN.RTS
|
bcs CS.RUN.RTS
|
||||||
|
|
|
@ -78,8 +78,9 @@ CS.RUN jsr Init.Timeout
|
||||||
lda (pPs),y
|
lda (pPs),y
|
||||||
>SYSCALL feof
|
>SYSCALL feof
|
||||||
bcs .9 I/O err
|
bcs .9 I/O err
|
||||||
|
|
||||||
tay
|
tay
|
||||||
beq .1
|
bne .1
|
||||||
|
|
||||||
>SYSCALL GetChar
|
>SYSCALL GetChar
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
|
@ -690,10 +690,11 @@ IO.MLIOPEN >LDYAI 1024 get a ProDOS IOBUF
|
||||||
* clc
|
* clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
IO.EOF tax
|
IO.EOF lda (pFD)
|
||||||
|
tax
|
||||||
jmp (.1,x)
|
jmp (.1,x)
|
||||||
|
|
||||||
.1 .DA STDIO.IOERR REG
|
.1 .DA IO.EOF.REG
|
||||||
.DA STDIO.IOERR DIR
|
.DA STDIO.IOERR DIR
|
||||||
.DA IO.EOF.CDEV
|
.DA IO.EOF.CDEV
|
||||||
.DA STDIO.IOERR BDEV
|
.DA STDIO.IOERR BDEV
|
||||||
|
@ -701,6 +702,36 @@ IO.EOF tax
|
||||||
.DA STDIO.IOERR DSOCK
|
.DA STDIO.IOERR DSOCK
|
||||||
.DA IO.EOF.SSOCK
|
.DA IO.EOF.SSOCK
|
||||||
.DA IO.EOF.PIPE
|
.DA IO.EOF.PIPE
|
||||||
|
*--------------------------------------
|
||||||
|
.DUMMY
|
||||||
|
.OR ZPTMP
|
||||||
|
K.EOF.MARK .BS 3
|
||||||
|
.ED
|
||||||
|
*--------------------------------------
|
||||||
|
IO.EOF.REG >MLICALL MLIGETMARK
|
||||||
|
bcs IO.EOF.REG.RTS
|
||||||
|
|
||||||
|
ldy #2
|
||||||
|
|
||||||
|
.1 lda K.MLI.PARAMS+2,y
|
||||||
|
sta K.EOF.MARK,y
|
||||||
|
dey
|
||||||
|
bpl .1
|
||||||
|
|
||||||
|
>MLICALL MLIGETEOF
|
||||||
|
bcs IO.EOF.REG.RTS
|
||||||
|
|
||||||
|
ldy #2
|
||||||
|
|
||||||
|
.2 lda K.MLI.PARAMS+2,y
|
||||||
|
eor K.EOF.MARK,y
|
||||||
|
bne IO.EOF.CDEV.80 MARK != EOF -> false
|
||||||
|
dey
|
||||||
|
bpl .2
|
||||||
|
|
||||||
|
IO.EOF.REG.88 lda #$ff
|
||||||
|
* clc
|
||||||
|
IO.EOF.REG.RTS rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
IO.EOF.CDEV >LDYAI K.IOBuf
|
IO.EOF.CDEV >LDYAI K.IOBuf
|
||||||
>STYA K.S.IOCTL+S.IOCTL.BUFPTR
|
>STYA K.S.IOCTL+S.IOCTL.BUFPTR
|
||||||
|
@ -708,11 +739,15 @@ IO.EOF.CDEV >LDYAI K.IOBuf
|
||||||
lda #S.IOCTL.STATCODE.GETRC
|
lda #S.IOCTL.STATCODE.GETRC
|
||||||
|
|
||||||
jsr K.GetDevStatus.I
|
jsr K.GetDevStatus.I
|
||||||
bcs .9
|
bcs IO.EOF.REG.RTS
|
||||||
|
|
||||||
lda K.IOBuf
|
lda K.IOBuf
|
||||||
ora K.IOBuf+1
|
ora K.IOBuf+1
|
||||||
.9 rts
|
beq IO.EOF.REG.88
|
||||||
|
|
||||||
|
IO.EOF.CDEV.80 lda #0
|
||||||
|
* clc
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
IO.EOF.SSOCK ldy #S.FD.SSOCK.EOF
|
IO.EOF.SSOCK ldy #S.FD.SSOCK.EOF
|
||||||
|
|
||||||
|
|
|
@ -1271,46 +1271,15 @@ K.FSeek jsr PFT.CheckNodeA
|
||||||
* `>SYSCALL feof`
|
* `>SYSCALL feof`
|
||||||
* ## RETURN VALUE
|
* ## RETURN VALUE
|
||||||
* CC :
|
* CC :
|
||||||
* A=0 EOF
|
* A = $ff EOF
|
||||||
* A !=0 NOT EOF
|
* A = 0 NOT EOF
|
||||||
* CS :
|
* CS :
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
.DUMMY
|
|
||||||
.OR ZPTMP
|
|
||||||
K.FEOF.MARK .BS 3
|
|
||||||
.ED
|
|
||||||
*--------------------------------------
|
|
||||||
K.FEOF jsr PFT.CheckNodeA
|
K.FEOF jsr PFT.CheckNodeA
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
lda (pFD)
|
|
||||||
beq .10
|
|
||||||
|
|
||||||
jmp IO.EOF
|
jmp IO.EOF
|
||||||
|
|
||||||
.10 >MLICALL MLIGETMARK
|
|
||||||
bcs .9
|
|
||||||
|
|
||||||
ldy #2
|
|
||||||
|
|
||||||
.1 lda K.MLI.PARAMS+2,y
|
|
||||||
sta K.FEOF.MARK,y
|
|
||||||
dey
|
|
||||||
bpl .1
|
|
||||||
|
|
||||||
>MLICALL MLIGETEOF
|
|
||||||
bcs .9
|
|
||||||
|
|
||||||
ldy #2
|
|
||||||
|
|
||||||
.2 lda K.MLI.PARAMS+2,y
|
|
||||||
eor K.FEOF.MARK,y
|
|
||||||
bne .8
|
|
||||||
dey
|
|
||||||
bpl .2
|
|
||||||
|
|
||||||
.8
|
|
||||||
* clc
|
|
||||||
.9 rts
|
.9 rts
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* # FTell
|
* # FTell
|
||||||
|
|
Loading…
Reference in New Issue
Block a user