Kernel 0.93

This commit is contained in:
Rémy GIBERT 2019-05-02 11:52:32 +02:00
parent e200a9539b
commit 20ebfb7954
29 changed files with 137 additions and 128 deletions

Binary file not shown.

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -257,7 +256,7 @@ CS.RUN ldy #S.PS.hStdIn
bcs .99
tay
beq .13
bne .13
>SYSCALL GetChar
bcs .99

View File

@ -1,10 +1,9 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
.TF BIN/ATK/ATBROWSE
.TF BIN/ATBROWSE
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I

View File

@ -1,10 +1,9 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
.TF BIN/ATK/ATLOGON
.TF BIN/ATLOGON
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -111,8 +110,9 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
lda (pPS),y
>SYSCALL feof
bcs .90 IO error
tay
beq .10 no char
bne .10 no char
>SYSCALL GetChar
bcs .9 IO error

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -123,7 +122,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
bcs .99
tay
beq .1
bne .1
>SYSCALL GetChar
bcs .99

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -120,7 +119,7 @@ CS.RUN ldy #S.PS.hStdIn
bcs .99
tay
beq .10
bne .10
>SYSCALL GetChar
bcs .99

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 4,1
.LIST OFF
.OP 65C02
.OR $2000
@ -110,7 +109,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
bcs .99 I/O error
tay
beq .2 no char
bne .2 no char
>SYSCALL GetChar

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -119,7 +118,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
bcs .99
tay
beq .1
bne .1
>SYSCALL GetChar
bcs .99

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -215,8 +214,9 @@ CS.RUN.WAIT.REPLY
lda (pPS),y
>SYSCALL feof
bcs CS.RUN.ERR
tay
beq .1
bne .1
>SYSCALL GetChar
bcs CS.RUN.ERR

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000

View File

@ -404,8 +404,9 @@ CMD.GETKEY lda (ZPArgVBufPtr)
lda (pPS),y
>SYSCALL feof
bcs .9
tay
beq .1
bne .1
>SYSCALL getchar
bcs .9

View File

@ -291,7 +291,7 @@ CS.RUN.LOOP >SLEEP
beq .8
bra .61
.60 cmp #C.CR
.60 cmp #19 Ctrl-S
bne .4
.61 >STZ.G bPause
@ -404,7 +404,7 @@ CS.RUN.BATCH >LDA.G bSET.C
bcs .2 unsupported
tay
beq .2
bne .2
>SYSCALL GetChar
bcs CS.RUN.READ.9

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -171,15 +170,18 @@ CS.RUN.OPENSKT >PUSHBI 0 no protocol
CS.RUN.LOOP >SLEEP
>LDA.G hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.EOF
bcs .99
tay
bne .2 EOF, no char
>PUSHWI BUFSIZE
>PUSHW ZPBufPtr
>LDA.G hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.Read
bcc .1
tay
beq .2 no char
jmp CS.RUN.SKTERR
.99 bcs .9
.1 >PUSHYA len
>PUSHW ZPBufPtr
@ -193,8 +195,9 @@ CS.RUN.LOOP >SLEEP
>SYSCALL feof
bcs .11 CS.RUN.IOERR
tay
beq CS.RUN.LOOP no char from STDIN
bne CS.RUN.LOOP EOF = true, no char from STDIN
>PUSHWI BUFSIZE
>PUSHW ZPBufPtr
@ -208,24 +211,14 @@ CS.RUN.LOOP >SLEEP
cmp #$14 Ctrl-T
beq CS.RUN.USER
.4 >PUSHW ZPBufLen
>PUSHW ZPBufLen
>PUSHW ZPBufPtr
>LDA.G hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.Write
bcc .8
.9 bcs CS.RUN.SKTERR
tay
bne CS.RUN.SKTERR
>SLEEP
bra .4
.8 jmp CS.RUN.LOOP
.9 lda #0
sec
rts
jmp CS.RUN.LOOP
*--------------------------------------
CS.RUN.SKTERR pha
>PUSHA

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -109,7 +108,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
bcs .99
tay
beq .10
bne .10
>SYSCALL GetChar
bcs .99

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 4,1
.LIST OFF
*--------------------------------------
X.COPY.BUF.SIZE .EQ 4096
@ -137,7 +136,7 @@ CS.RUN ldy #S.PS.hStdIn
bcs CS.INIT.RTS I/O error
tay
beq .15
bne .15
>SYSCALL GetChar
bcs CS.INIT.RTS I/O error
@ -263,7 +262,7 @@ CS.RUN.LEAVE jsr LeaveSubDir exit this sub dir....
jsr BasePath..
.DO X.DELETE.SOURCE=1
.DO X.COPY.TO.DEST=0
* .DO X.COPY.TO.DEST=0
jsr GetEntry
bcs *
@ -279,7 +278,7 @@ CS.RUN.LEAVE jsr LeaveSubDir exit this sub dir....
>SYSCALL remove
jsr CS.RUN.CheckErr
bcs .99
.FIN
* .FIN
.FIN
jmp CS.RUN.NEXT
@ -760,5 +759,5 @@ CS.QUIT.FREE lda (pData),y
*--------------------------------------
MAN
SAVE USR/SRC/BIN/X.CPMVRM.S
LOAD USR/SRC/BIN/CP.S
LOAD USR/SRC/BIN/MV.S
ASM

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -243,7 +242,11 @@ STATUS.9 lda #MLI.E.BADCTL
sec
rts
*--------------------------------------
OPEN jsr CLOSE
OPEN lda #S.DIB.S.OPENED
bit DIB+S.DIB.S
bne .9
jsr CLOSE
* ldx DEVSLOTx0 Done by CLOSE
@ -292,6 +295,10 @@ OPEN jsr CLOSE
clc
rts
.9 lda #MLI.E.OPEN
sec
rts
*--------------------------------------
CLOSE ldx DEVSLOTx0
stz L91C96.BSR,x

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
*--------------------------------------
U2AI .EQ 1

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
*--------------------------------------
U2AI .EQ 0

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.OP 65C02
.OR $2000
*--------------------------------------
@ -199,7 +198,6 @@ DRV.CS.START cld
.DA CLOSE
.DA READ
.DA WRITE
.DA A2osX.BADCALL IRQ
.DA 0 end or relocation
*--------------------------------------
STATUS >STYA ZPIOCTL
@ -278,7 +276,15 @@ CONTROL >STYA ZPIOCTL
.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

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
*--------------------------------------

View File

@ -626,7 +626,19 @@ SKT.setsockopt >SYSCALL GetMemPtr
sta (ZPPtrSKT),y
* clc
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
>STYA ZPPtrSKT
@ -634,16 +646,17 @@ SKT.EOF.I ldy #S.SOCKET.TCP.INUSED
lda (ZPPtrSKT),y
iny
ora (ZPPtrSKT),y
bne .8 some DATA
bne .8 some DATA...
jsr SKT.CheckStream
bcs .9
lda #0 no DATA
sec
lda #$ff no DATA, EOF = true
clc
rts
.8 clc
.8 lda #0 ...EOF = false
clc
.9 rts
*--------------------------------------
SKT.CheckStream ldy #S.SOCKET.T

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -130,7 +129,7 @@ CS.RUN.LOOP1 >SLEEP
bcs CS.RUN.9 I/O error
tay
beq .1 no char
bne .1 no char
>SYSCALL GetChar
bcs CS.RUN.9

View File

@ -1,6 +1,5 @@
NEW
PREFIX
AUTO 4,1
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
@ -80,8 +79,9 @@ CS.RUN jsr Init.Timeout
lda (pPs),y
>SYSCALL feof
bcs CS.RUN.RTS I/O err
tay
beq .1
bne .1
>SYSCALL GetChar
bcs CS.RUN.RTS

View File

@ -78,8 +78,9 @@ CS.RUN jsr Init.Timeout
lda (pPs),y
>SYSCALL feof
bcs .9 I/O err
tay
beq .1
bne .1
>SYSCALL GetChar
bcs .9

View File

@ -690,10 +690,11 @@ IO.MLIOPEN >LDYAI 1024 get a ProDOS IOBUF
* clc
.9 rts
*--------------------------------------
IO.EOF tax
IO.EOF lda (pFD)
tax
jmp (.1,x)
.1 .DA STDIO.IOERR REG
.1 .DA IO.EOF.REG
.DA STDIO.IOERR DIR
.DA IO.EOF.CDEV
.DA STDIO.IOERR BDEV
@ -701,6 +702,36 @@ IO.EOF tax
.DA STDIO.IOERR DSOCK
.DA IO.EOF.SSOCK
.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
>STYA K.S.IOCTL+S.IOCTL.BUFPTR
@ -708,11 +739,15 @@ IO.EOF.CDEV >LDYAI K.IOBuf
lda #S.IOCTL.STATCODE.GETRC
jsr K.GetDevStatus.I
bcs .9
bcs IO.EOF.REG.RTS
lda K.IOBuf
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

View File

@ -1271,46 +1271,15 @@ K.FSeek jsr PFT.CheckNodeA
* `>SYSCALL feof`
* ## RETURN VALUE
* CC :
* A=0 EOF
* A !=0 NOT EOF
* A = $ff EOF
* A = 0 NOT EOF
* CS :
*\--------------------------------------
.DUMMY
.OR ZPTMP
K.FEOF.MARK .BS 3
.ED
*--------------------------------------
K.FEOF jsr PFT.CheckNodeA
bcs .9
lda (pFD)
beq .10
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
*/--------------------------------------
* # FTell