diff --git a/.Floppies/A2OSX.BOOT.po b/.Floppies/A2OSX.BOOT.po index 4fcdd0aa..fe87981f 100644 Binary files a/.Floppies/A2OSX.BOOT.po and b/.Floppies/A2OSX.BOOT.po differ diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index ed094b99..179d134d 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/.Floppies/A2OSX.TEST.po b/.Floppies/A2OSX.TEST.po index c9cc1e84..816b4288 100644 Binary files a/.Floppies/A2OSX.TEST.po and b/.Floppies/A2OSX.TEST.po differ diff --git a/BIN/SH.S.CMD.txt b/BIN/SH.S.CMD.txt index b172af03..e6075c38 100644 --- a/BIN/SH.S.CMD.txt +++ b/BIN/SH.S.CMD.txt @@ -157,10 +157,6 @@ CMD.SetCWDA pha * clc rts *-------------------------------------- -CMD.Exec.CSYN lda #E.CSYN - sec - rts -*-------------------------------------- CMD.SET lda (ZPArgVBufPtr) bne CMD.SET.1 @@ -209,6 +205,7 @@ CMD.SET lda (ZPArgVBufPtr) CMD.SET.1 .1 jsr CMD.IsSwitch bcs .6 + cmp #'C' bne .2 @@ -1217,23 +1214,20 @@ CMD.ELSE jsr CORE.StkGet sta (pData),y .8 clc rts -.9 lda #E.NOIF +.9 +CMD.ELSE.NOIF lda #E.NOIF sec rts *-------------------------------------- CMD.FI jsr CORE.StkPull - bcs .9 + bcs CMD.ELSE.NOIF and #$3F cmp #C.IF - bne .9 + bne CMD.ELSE.NOIF clc rts - -.9 lda #E.NOIF - sec - rts *-------------------------------------- CMD.IsSwitch lda (ZPArgVBufPtr) cmp #'-' @@ -1245,12 +1239,14 @@ CMD.IsSwitch lda (ZPArgVBufPtr) bcc .9 cmp #'9'+1 bcc .9 + .1 tax iny lda (ZPArgVBufPtr),y bne .9 txa jmp ToUpperCase + .9 sec CMD.IsSwitch.RTS rts diff --git a/BIN/SH.S.CORE.txt b/BIN/SH.S.CORE.txt index e394960e..bb89d7a5 100644 --- a/BIN/SH.S.CORE.txt +++ b/BIN/SH.S.CORE.txt @@ -104,10 +104,6 @@ CORE.Run.EOF jsr CORE.StkPull sec rts *-------------------------------------- -CORE.Run.SYN lda #E.SYN - sec - rts -*-------------------------------------- CORE.Run jsr IO.Reset clc diff --git a/BIN/SH.S.EXP.txt b/BIN/SH.S.EXP.txt index f6883da1..68d955a0 100644 --- a/BIN/SH.S.EXP.txt +++ b/BIN/SH.S.EXP.txt @@ -35,9 +35,7 @@ EXP.GET jsr CORE.ArgV.Next rts .94 >POP 4 -.9 lda #E.ESYN - sec - rts +.9 jmp EXP.E.ESYN EXP.FPU.EXEC ldy CORE.Operator ldx EXP.OP.MATH.FPU,y @@ -80,9 +78,8 @@ EXP.TEST lda (ZPArgVBufPtr) lda (ZPArgVBufPtr) bra .8 go check ] -.9 lda #E.ESYN - sec -.99 rts +.9 jmp EXP.E.ESYN + .1 jsr CORE.ArgV.Next beq .9 >LDYA L.EXP.OP.BINARY -eq -ne .... ? @@ -137,9 +134,7 @@ EXP.TEST.UNARY jsr CORE.ArgV.Next jmp (J.EXP.OP.UNARY,x) EXP.OP.UNARY.ESYN - lda #E.ESYN - sec - rts + jmp EXP.E.ESYN EXP.OP.UNARY.D jsr EXP.OP.UNARY.STAT bcs EXP.OP.UNARY.DEF.9 @@ -242,9 +237,7 @@ EXP.TEST.BINARY lda CORE.Operator EXP.TEST.BINARY.ESYN4 >POP 4 EXP.TEST.BINARY.ESYN - lda #E.ESYN - sec - rts + jmp EXP.E.ESYN *-------------------------------------- EXP.TEST.BINARY.NUM >LDYA ZPArgVBufPrev @@ -303,13 +296,14 @@ EXP.GetInt32YA pha >PUSHWI ZPPtr1 pla >SYSCALL strtol - bcs EXP.GetInt32YA.9 + bcs EXP.E.ESYN lda (ZPPtr1) beq EXP.GetInt32YA.RTS sec -EXP.GetInt32YA.9 - lda #E.ESYN + +EXP.E.ESYN lda #E.ESYN + sec EXP.GetInt32YA.RTS rts *-------------------------------------- diff --git a/DRV/X.U2.DRV.S.txt b/DRV/X.U2.DRV.S.txt index d485f6fc..74075c38 100644 --- a/DRV/X.U2.DRV.S.txt +++ b/DRV/X.U2.DRV.S.txt @@ -305,8 +305,13 @@ OPEN.I jsr CLOSE sta W5100.DR,x .DO U2AI=1 - >AR.SELECT S0.TOS + >AR.SELECT S0.PROTO + lda #S.IP.PROTOCOL.UDP For initial DHCP request + sta W5100.DR,x + +* >AR.SELECT S0.TOS stz W5100.DR,x + * >AR.SELECT S0.TTL lda #K.IP.TTL sta W5100.DR,x @@ -457,9 +462,11 @@ READ php >LDYA BUF.Size >SYSCALL2 getmem - bcs READWRITE.9 + bcc .14 - >STYA ZPBufPtr + jmp READWRITE.9 + +.14 >STYA ZPBufPtr phx phy @@ -522,6 +529,12 @@ READ php pla sta W5100.DR,x write LO + .DO U2AI=1 + >AR.SELECT S0.PROTO + lda W5100.DR,x + ldy #S.IP.PROTOCOL + sta (ZPBufPtr),y + .FIN >AR.SELECT S0.CR lda #W5100.AR.S0.CR.RCVD sta W5100.DR,x diff --git a/LIB/LIBTCPIP.S.txt b/LIB/LIBTCPIP.S.txt index 214ae568..98b9020a 100644 --- a/LIB/LIBTCPIP.S.txt +++ b/LIB/LIBTCPIP.S.txt @@ -3,10 +3,15 @@ NEW .LIST OFF .OP 65C02 .OR $2000 - .TF lib/libtcpip *-------------------------------------- AUXPIPE .EQ 1 -IPDEBUG .EQ 0 +IPDEBUG .EQ 1 +*-------------------------------------- + .DO IPDEBUG=1 + .TF lib/libtcpipd + .ELSE + .TF lib/libtcpip + .FIN *-------------------------------------- .MA ADC16 clc diff --git a/SBIN/NETWORKD.S.txt b/SBIN/NETWORKD.S.txt index 2488a5ec..42d7c627 100644 --- a/SBIN/NETWORKD.S.txt +++ b/SBIN/NETWORKD.S.txt @@ -152,9 +152,9 @@ CS.INIT.LIBS lda LibCnt >PUSHW pNETCFG - ldy LibCnt - lda hLIBs,y - tay + ldx LibCnt + ldy hLIBs,x + ldx #LIBNET.SETCFG jsr A2osX.LIBCALL bcs CS.INIT.LIBS.9 @@ -180,7 +180,9 @@ CS.INIT.CONF >LDYAI 64 >LDYA L.ETCNETWORK >SYSCALL fopen bcs .98 + sta hNetworkFile + .1 >PUSHWI 64 >PUSHW pBuf lda hNetworkFile @@ -196,16 +198,19 @@ CS.INIT.CONF >LDYAI 64 >LDYA pBuf >SYSCALL execL bra .1 + .98 pha jsr .81 pla sec rts + .80 lda hNetworkFile >SYSCALL fclose + .81 lda hLineBuf >SYSCALL FreeMem - clc +* clc rts *-------------------------------------- CS.RUN >PUSHW L.IOCTL @@ -214,10 +219,14 @@ CS.RUN >PUSHW L.IOCTL >SYSCALL IOCTL bcs .8 No Frame + sta hFrameIn + ldx #0 + .1 ldy hLIBs,x beq .2 + >PUSHW L.IOCTL lda hFrameIn phx @@ -225,45 +234,57 @@ CS.RUN >PUSHW L.IOCTL jsr A2osX.LIBCALL plx bcc CS.RUN + inx bra .1 .2 lda hFrameIn >SYSCALL freemem bra CS.RUN + .8 clc rts *-------------------------------------- CS.DOEVENT lda (pEvent) bpl .9 + ldx #0 + .1 ldy hLIBs,x beq .9 + phx ldx #LIBNET.PULSE lda (pEvent) jsr A2osX.LIBCALL plx + inx bra .1 + .9 sec never discard TIME event rts *-------------------------------------- CS.QUIT ldx #0 + .1 lda hLIBs,x beq .7 + phx >SYSCALL UnLoadLib plx inx bra .1 + .7 lda DevID beq .8 + pha >PUSHWZ >PUSHBI IOCTL.CLOSE pla >SYSCALL IOCTL + .8 clc rts *--------------------------------------