From 5ee518ca8d44e4b10abc1d6ece6b5cdc6826d13a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 23 Oct 2019 11:34:25 +0200 Subject: [PATCH] Kernel 0.93+ --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes DRV/X.U2.DRV.S.txt | 160 +++++++++++++++++++++++++-------------- LIB/LIBTCPIP.S.CFG.txt | 16 +++- SBIN/NETWORKD.S.txt | 1 + SYS/KERNEL.S.DEV.txt | 27 ++++++- 5 files changed, 142 insertions(+), 62 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 6fbbfb6999317933e8e6b672f00d371aeaa7641e..0820a7bbd0768126e196dc907a9ee688d8fad580 100644 GIT binary patch delta 17611 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 BS52Q|Jf9OSC*VT_Z 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 A-v9sr delta 13138 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 yZ~^!WxCmSVE(2G9F5oI~4Y&^60B!=efZMSTYA ARGS >LDYA L.MSG.DETECT >SYSCALL puts + ldx #$70+$88 ldy #7 + .1 lda A2osX.S,y IO based detection, avoid scanning in Disk Controller IO!!!! bne .2 + lda #W5100.MR.RST sta W5100.MR,x lda #0 + .10 dec give some time.... bne .10 @@ -65,13 +69,16 @@ Dev.Detect >STYA ARGS lda W5100.MR,x cmp #W5100.MR.AI+W5100.MR.IND bne .2 + >AR.SELECT RTR lda W5100.DR,x Get RTR HI cmp /2000 bne .2 + lda W5100.DR,x Get RTR LO cmp #2000 beq .3 + .2 dec FD.DEV.NAME+3 txa sec @@ -79,33 +86,41 @@ Dev.Detect >STYA ARGS tax dey bne .1 + >LDYA L.MSG.DETECT.KO >SYSCALL puts lda #MLI.E.NODEV sec rts + .3 stx DEVSLOTx0 sty DEVSLOT0x + lda #A2osX.S.NIC sta A2osX.S,y + jsr Dev.ParseArgs bcs .9 -.8 >PUSHW L.FD.DEV.NAME + + >PUSHW L.FD.DEV.NAME >PUSHBI 2 >LDYA L.MSG.DETECT.OK >SYSCALL printf + >PUSHWI DRV.END >PUSHWI DRV.CS.END-DRV.CS.START >PUSHWI DRV.CS.START >LDYA L.DRV.CS.START >SYSCALL InsDrv bcs .9 + >STYA FD.DEV+S.FD.DEV.DRVPTR >PUSHW L.FD.DEV.NAME >LDYA L.FD.DEV >SYSCALL MKDEV bcs .9 + ldx DEVSLOT0x lda #A2osX.S.NIC sta A2osX.S,x @@ -116,6 +131,7 @@ Dev.ParseArgs >LDYA ARGS >STYA ZPArgPTR lda (ZPArgPTR) bne .1 + lda A2osX.RANDOM16 eor A2osX.TIMER16 sta DCB+S.DCB.NIC.MAC+3 @@ -125,6 +141,7 @@ Dev.ParseArgs >LDYA ARGS sta DCB+S.DCB.NIC.MAC+5 clc rts + .1 >PUSHW L.MAC5 >PUSHW L.MAC4 >PUSHW L.MAC3 @@ -136,8 +153,9 @@ Dev.ParseArgs >LDYA ARGS >LDYA ZPArgPtr >SYSCALL sscanf bcc .8 + lda #E.SYN - sec +* sec .8 rts *-------------------------------------- CS.END @@ -192,44 +210,41 @@ DRV.CS.START cld *-------------------------------------- STATUS >STYA ZPIOCTL + jsr GET.BUFPTR + ldy #S.IOCTL.STATCODE lda (ZPIOCTL),y beq .1 + cmp #S.IOCTL.STATCODE.GETDIB bne STATUS.DCB - ldx #S.DIB-1 - .HS 2C bit abs -.1 ldx #3 - ldy #S.IOCTL.BUFPTR - lda (ZPIOCTL),y - sta .3+1 - iny - lda (ZPIOCTL),y - sta .3+2 -.2 lda DIB,x -.3 sta $ffff,x SELF MODIFIED - dex + ldy #S.DIB-1 + .HS 2C bit abs + +.1 ldy #3 + +.2 lda DIB,y + sta (ZPBufPtr),y + dey bpl .2 + clc rts + STATUS.DCB cmp #S.IOCTL.STATCODE.GETDCB bne STATUS.9 -.1 ldy #S.IOCTL.BUFPTR - lda (ZPIOCTL),y - sta .3+1 - iny - lda (ZPIOCTL),y - sta .3+2 - ldx #S.DCB.NIC-1 -.2 lda DCB,x -.3 sta $ffff,x SELF MODIFIED - dex - bpl .2 + ldy #S.DCB.NIC-1 + +.1 lda DCB,y + sta (ZPBufPtr),y + dey + bpl .1 clc rts + STATUS.9 lda #MLI.E.BADCTL sec rts @@ -237,31 +252,32 @@ STATUS.9 lda #MLI.E.BADCTL .DO U2AI=1 CONTROL >STYA ZPIOCTL + jsr GET.BUFPTR + ldy #S.IOCTL.CTRLCODE lda (ZPIOCTL),y cmp #S.IOCTL.CTRLCODE.SETDCB bne STATUS.9 -.1 ldy #S.IOCTL.BUFPTR - lda (ZPIOCTL),y - sta .2+1 - iny - lda (ZPIOCTL),y - sta .2+2 - ldx #S.DCB.NIC-1 -.2 lda $ffff,x SELF MODIFIED - sta DCB,x - dex + + ldy #S.DCB.NIC-1 + +.2 lda (ZPBufPtr),y + sta DCB,y + dey bpl .2 + + bra OPEN.I .FIN *-------------------------------------- OPEN lda #S.DIB.S.OPENED bit DIB+S.DIB.S - beq .10 + beq OPEN.I lda #MLI.E.OPEN sec rts -.10 jsr CLOSE + +OPEN.I jsr CLOSE * ldx DEVSLOTx0 Done by CLOSE @@ -299,30 +315,40 @@ OPEN lda #S.DIB.S.OPENED >AR.SELECT GAR ldy #0 + .2 lda DCB+S.DCB.NIC.GW,y sta W5100.DR,x iny cpy #4 bne .2 + * >AR.SELECT SUBR Implicit, next to GAR ldy #0 + .3 lda DCB+S.DCB.NIC.MASK,y sta W5100.DR,x iny cpy #4 bne .3 + >AR.SELECT SIPR + ldy #0 + .4 lda DCB+S.DCB.NIC.IP,y sta W5100.DR,x iny cpy #4 bne .4 .FIN + >AR.SELECT S0.CR lda #W5100.AR.S0.CR.OPEN sta W5100.DR,x + lda #S.DIB.S.OPENED + tsb DIB+S.DIB.S + clc rts *-------------------------------------- @@ -337,9 +363,19 @@ CLOSE ldx DEVSLOTx0 lda $C019 .2 eor $C019 bpl .2 + + lda #S.DIB.S.OPENED + trb DIB+S.DIB.S + clc rts *-------------------------------------- +READWRITE.9 lda #E.NODATA + +READWRITE.99 plp + sec + rts +*-------------------------------------- READ php sei @@ -350,13 +386,7 @@ READ php >AR.SELECT S0.RX.RSR lda W5100.DR,x get the received size HI ora W5100.DR,x LO - bne .1 - - lda #E.NODATA - -.9 plp - sec - rts + beq READWRITE.9 .1 >AR.SELECT S0.RX.RD lda W5100.DR,x get the received ptr HI @@ -372,15 +402,18 @@ READ php .DO U2AI=1 ldy #0 + .10 lda W5100.DR,x sta RX.IP,y iny cpy #4 bne .10 + ldy W5100.DR,x get RX.Size HI sty RXTX.Size+1 lda W5100.DR,x get RX.Size LO sta RXTX.Size + clc adc #S.IP pha @@ -395,7 +428,7 @@ READ php .FIN >SYSCALL2 getmem - bcs .9 + bcs READWRITE.99 >STYA ZPBufPtr phx @@ -443,6 +476,7 @@ READ php .DO U2AI=1 ldx #3 ldy #S.IP.SRC+3 + .11 lda RX.IP,x sta (ZPBufPtr),y dey @@ -458,12 +492,15 @@ READ php .2 inc Counter bne .3 + inc Counter+1 beq .4 + .3 lda W5100.DR,x sta (ZPBufPtr),y iny bne .2 + inc ZPBufPtr+1 bne .2 @@ -518,18 +555,12 @@ WRITE php ldy W5100.DR,x LO cpy RXTX.Size sbc RXTX.Size+1 - bcs WRITE.1 + bcs .10 + + jmp READWRITE.9 + +.10 jsr GET.BUFPTR - lda #E.NODATA - plp - sec - rts -WRITE.1 ldy #S.IOCTL.BUFPTR - lda (ZPIOCTL),y - sta ZPBufPtr - iny - lda (ZPIOCTL),y - sta ZPBufPtr+1 .DO U2AI=1 >AR.SELECT S0.DIPR ldy #S.IP.DST @@ -539,6 +570,7 @@ WRITE.1 ldy #S.IOCTL.BUFPTR iny cpy #S.IP.DST+4 bne .1 + >AR.SELECT S0.PROTO ldy #S.IP.PROTOCOL lda (ZPBufPtr),y @@ -546,6 +578,7 @@ WRITE.1 ldy #S.IOCTL.BUFPTR .ELSE ldy #S.ETH.SRCMAC+5 ldx #5 + .1 lda DCB+S.DCB.NIC.MAC,x sta (ZPBufPtr),y dey @@ -569,17 +602,21 @@ WRITE.1 ldy #S.IOCTL.BUFPTR .ELSE ldy #0 .FIN + .2 inc Counter bne .3 inc Counter+1 beq .8 + .3 lda (ZPBufPtr),y sta W5100.DR,x iny bne .2 + inc ZPBufPtr+1 - bne .2 + bra .2 + .8 >AR.SELECT S0.TX.WR lda Offset clc @@ -590,6 +627,7 @@ WRITE.1 ldy #S.IOCTL.BUFPTR sta W5100.DR,x write HI pla sta W5100.DR,x write LO + >AR.SELECT S0.CR lda #W5100.AR.S0.CR.SEND sta W5100.DR,x @@ -598,6 +636,14 @@ WRITE.1 ldy #S.IOCTL.BUFPTR clc rts *-------------------------------------- +GET.BUFPTR ldy #S.IOCTL.BUFPTR + lda (ZPIOCTL),y + sta ZPBufPtr + iny + lda (ZPIOCTL),y + sta ZPBufPtr+1 + rts +*-------------------------------------- DRV.CS.END DEVSLOTx0 .BS 1 *-------------------------------------- diff --git a/LIB/LIBTCPIP.S.CFG.txt b/LIB/LIBTCPIP.S.CFG.txt index 7527dfac..971f850a 100644 --- a/LIB/LIBTCPIP.S.CFG.txt +++ b/LIB/LIBTCPIP.S.CFG.txt @@ -17,42 +17,53 @@ CFG.SET >PULLW ZPTmpPtr1 IPCFG sta ARP.REP.SHA,x dex bpl .2 + ldx #3 + .3 lda IPCFG+S.IPCFG.IP,x sta SA.LOCAL+S.SOCKADDR.ADDR,x sta ARP.REQ.SPA,x sta ARP.REP.SPA,x dex bpl .3 + lda IPCFG+S.NETCFG.DevFlags and #S.DCB.NIC.FLAGS.ARPOFFLOAD beq .5 + >LDYA L.DCB.NIC >STYA IOCTL+S.IOCTL.BUFPTR + lda #S.IOCTL.STATCODE.GETDCB sta IOCTL+S.IOCTL.STATCODE + >PUSHW L.IOCTL >PUSHBI IOCTL.STATUS lda IPCFG+S.NETCFG.DevID >SYSCALL2 IOCTL ldx #11 IP/MASK/GW + .4 lda IPCFG+S.IPCFG.IP,x sta DCB.NIC+S.DCB.NIC.IP,x dex bpl .4 - lda S.IOCTL.CTRLCODE.SETDCB - sta S.IOCTL.CTRLCODE + + lda #S.IOCTL.CTRLCODE.SETDCB + sta IOCTL+S.IOCTL.CTRLCODE >PUSHW L.IOCTL >PUSHBI IOCTL.CONTROL lda IPCFG+S.NETCFG.DevID >SYSCALL2 IOCTL bcs .9 + .5 lda hDNSSocket beq .6 + jsr SKT.Shutdown stz hDNSSocket + .6 lda IPCFG+S.IPCFG.DNS1 beq .8 @@ -68,6 +79,7 @@ CFG.SET >PULLW ZPTmpPtr1 IPCFG lda hDNSSocket jsr SKT.Bind bcs .9 + >LDYAI UDP.PORT.DNS >STYA SA.REMOTE+S.SOCKADDR.PORT >PUSHW L.SA.REMOTE diff --git a/SBIN/NETWORKD.S.txt b/SBIN/NETWORKD.S.txt index ba15aa65..97dd6669 100644 --- a/SBIN/NETWORKD.S.txt +++ b/SBIN/NETWORKD.S.txt @@ -90,6 +90,7 @@ CS.INIT.DEV >PUSHBI 0 lda #MLI.E.NODEV sec rts + .8 sta DevID >PUSHW L.DEVNAME diff --git a/SYS/KERNEL.S.DEV.txt b/SYS/KERNEL.S.DEV.txt index 97040e2c..2ec04e5a 100644 --- a/SYS/KERNEL.S.DEV.txt +++ b/SYS/KERNEL.S.DEV.txt @@ -17,9 +17,12 @@ K.GetDevByName >STYA ZPPtr1 requested dev name sta ZPPtr2 lda Dev.Table,x beq K.GetDev.NODEV + adc /S.FD.DEV sta ZPPtr2+1 + ldy #$ff + .2 iny lda (ZPPtr1),y cmp (ZPPtr2),y @@ -27,10 +30,12 @@ K.GetDevByName >STYA ZPPtr1 requested dev name ora (ZPPtr2),y Both char are 0 ? bne .2 no....loop -.3 ldy Dev.Table-1,x -.4 lda Dev.Table,x + + ldy Dev.Table-1,x + lda Dev.Table,x clc rts + .7 inx inx cpx #K.DEV.MAX*2+1 @@ -81,56 +86,72 @@ K.GetDevStatus.I * ## RETURN VALUE * A = hDEV *\-------------------------------------- -K.MKDev jsr SHARED.SPtr1PPtr2 ptr1=fd, ptr2=name +K.MKDev jsr SHARED.SPtr1PPtr2 ptr1=fd, ptr2=name ldx DevMgr.DevIdx cpx #K.DEV.MAX*2+1 beq .9 + ldy #$ff ldx #S.FD.DEV + .1 iny Get DEV name length inx compute FD+NAME+\0 in X lda (ZPPtr2),y bne .1 + txa tay lda #0 + jsr MEM.GetKrnlBuf bcs .99 + >STYA pFD >STYA .4+1 + ldx DevMgr.DevIdx sta Dev.Table,x tya sta Dev.Table-1,x + ldy #S.FD.DEV-1 + .2 lda (ZPPtr1),y sta (pFD),y dey bpl .2 + ldy #$ff ldx #S.FD.DEV-1 + .3 iny inx lda (ZPPtr2),y .4 sta $ffff,x bne .3 + >LDYAI K.IOBuf >STYA K.S.IOCTL+S.IOCTL.BUFPTR lda #S.IOCTL.STATCODE.STATUS jsr K.GetDevStatus.I bcs .99 + lda K.IOBuf Get Status byte bit #S.DIB.S.IRQ beq .8 + ldx #0 + .5 lda IRQ.Vectors+1,x beq .7 + inx inx cpx #K.IRQDEV.MAX*2+1 bne .5 + .9 lda #E.OOH * sec .99 rts