diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 43cc9ab5..c7dd60c7 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 5e2a5e47..a7ee8d6b 100644 Binary files a/.Floppies/A2OSX.TEST.po and b/.Floppies/A2OSX.TEST.po differ diff --git a/BIN/HTTPGET.S.txt b/BIN/HTTPGET.S.txt index c3457292..978acd23 100644 --- a/BIN/HTTPGET.S.txt +++ b/BIN/HTTPGET.S.txt @@ -76,6 +76,7 @@ L.MSG.CONNECTED .DA MSG.CONNECTED L.MSG.SKTERR .DA MSG.SKTERR L.MSG.IOERR .DA MSG.IOERR L.MSG.FileLength .DA MSG.FileLength +L.MSG.CRLF .DA MSG.CRLF L.MSG.Progress .DA MSG.Progress L.HTTP.GET .DA HTTP.GET .DA 0 @@ -333,7 +334,7 @@ CS.RUN.IOERR pha *-------------------------------------- CS.RUN.ENCODE >LDYA ZPReqBufPtr >STYA ZPPtr - + inc ZPEncodedBufLen for ending \0 .1 lda (ZPPtr) @@ -344,10 +345,14 @@ CS.RUN.ENCODE >LDYA ZPReqBufPtr inc ZPPtr+1 -.2 jsr CS.RUN.TOENCODE if CS 2 bytes, if CC 1 byte +.2 jsr CS.RUN.TOENCODE if CS 3 bytes, if CC 1 byte - lda ZPEncodedBufLen - adc #1 + lda #1 + bcc .3 + + inc + +.3 adc ZPEncodedBufLen sta ZPEncodedBufLen bcc .1 @@ -359,10 +364,8 @@ CS.RUN.ENCODE >LDYA ZPReqBufPtr bcs .9 >STYA ZPEncodedBufPtr - stx hEncodedBuf - - >LDYA ZPReqBufPtr >STYA ZPPtr + stx hEncodedBuf .5 lda (ZPReqBufPtr) beq .8 @@ -535,9 +538,13 @@ CS.RUN.RESPONSE jsr Init.TimeOut .8 bit bHeader bpl .99 + + >PUSHW L.MSG.CRLF + >PUSHBI 0 + >SYSCALL PrintF - clc - rts + jsr CS.RUN.CHECKLEN + bcc .9 .99 lda #MLI.E.IO sec @@ -640,6 +647,36 @@ CS.RUN.GETHEADER .9 rts *-------------------------------------- +CS.RUN.CHECKLEN ldx #3 + ldy #Received + +.1 lda (pData),y + pha + iny + dex + bpl .1 + + ldx #3 + ldy #Length+3 + + sec + +.2 pla + eor (pData),y + bne .9 + + dey + dex + bpl .2 + + clc +.99 rts + +.9 dex + bmi .99 + pla + bra .9 +*-------------------------------------- CS.DOEVENT lda (pEvent) bpl .9 is it a TIMER event? @@ -701,7 +738,8 @@ MSG.SKTKO .AZ "Failed to Open Socket." MSG.CONNECTED .AZ "Connected." MSG.SKTERR .AZ "Socket Error : $%h\r\n" MSG.IOERR .AZ "I/O Error : $%h\r\n" -MSG.FileLength .AZ "File Length : %u Bytes\r\n" +MSG.FileLength .AS "File Length : %u Bytes" +MSG.CRLF .AZ "\r\n" MSG.Progress .AZ "\rReceived : %10u/%u" *-------------------------------------- SA.LOCAL .DA #AF.INET S.SOCKADDR.AF diff --git a/BIN/IPCONFIG.S.DHCP.txt b/BIN/IPCONFIG.S.DHCP.txt index 36531275..c64fd6e3 100644 --- a/BIN/IPCONFIG.S.DHCP.txt +++ b/BIN/IPCONFIG.S.DHCP.txt @@ -8,7 +8,9 @@ DHCP.INIT lda IPCFG+S.NETCFG.STATUS stz IPCFG+S.NETCFG.STATUS ldx #3 -.1 lda A2osX.TIMER16,x + +.1 lda $C064,x + eor A2osX.TIMER16,x sta DHCP.DISC.XID,x sta DHCP.REQ.XID,x dex @@ -35,13 +37,16 @@ DHCP.RUN >PUSHBI 0 no protocol lda #S.SOCKET.T.DGRAM >LIBCALL hLIBTCPIP,LIBTCPIP.Socket bcc .1 + .9 jmp DHCP.RUN.KO + .1 sta hSocket pha >PUSHW L.SA.LOCAL pla >LIBCALL hLIBTCPIP,LIBTCPIP.Bind bcs .9 + >PUSHWI S.SOCKET.O.BROADCAST lda hSocket >LIBCALL hLIBTCPIP,LIBTCPIP.setsockopt @@ -49,8 +54,11 @@ DHCP.RUN >PUSHBI 0 no protocol lda hSocket >LIBCALL hLIBTCPIP,LIBTCPIP.Connect bcs .9 + >LDYA L.MSG.DHCP.CFG1 >SYSCALL PutS + + >SLEEP DHCP.RUN.SDISC >PUSHW L.SA.DEST >PUSHWI DHCP.DISC.LEN @@ -129,9 +137,11 @@ DHCP.RUN.OK lda #S.IPCFG.STATUS.OK >PUSHBI 8 >SYSCALL PrintF + lda #0 Leave with NO ERROR sec rts + DHCP.RUN.KO pha >PUSHW L.MSG.DHCP.KO pla diff --git a/LIB/LIBGUI.S.MENU.txt b/LIB/LIBGUI.S.MENU.txt index 4b6d53aa..04cf2bc6 100644 --- a/LIB/LIBGUI.S.MENU.txt +++ b/LIB/LIBGUI.S.MENU.txt @@ -28,50 +28,6 @@ MENUITEM.Close clc rts *-------------------------------------- -MENU.MenuEditor .AZ "File" - .DA #02 ID - .DA #S.MITEM.KEYMOD.CTRL - .DA #'N' - .AZ "New" - .DA #04 ID - .DA #S.MITEM.KEYMOD.CTRL - .DA #'O' - .AZ "Open..." - .DA #06 ID - .DA #S.MITEM.KEYMOD.CTRL - .DA #'S' - .AZ "Save" - .DA #08 ID - .DA #S.MITEM.KEYMOD.OA+S.MITEM.KEYMOD.CTRL - .DA #'S' - .AZ "Save As..." - .DA #10 ID - .DA #S.MITEM.KEYMOD.CTRL - .DA #'Q' - .AZ "Quit" - .DA #0 - .AZ "Edit" - .DA #12 ID - .DA #S.MITEM.KEYMOD.OA - .DA #'X' - .AZ "Cut" - .DA #14 ID - .DA #S.MITEM.KEYMOD.OA - .DA #'C' - .AZ "Copy" - .DA #16 ID - .DA #S.MITEM.KEYMOD.OA - .DA #'V' - .AZ "Paste" - .DA #0 - .AZ "Options" - .DA #18 ID - .DA #0 - .DA #0 - .AZ "Check Me" - .DA #0 - .DA #0 -*-------------------------------------- MAN SAVE usr/src/lib/libgui.s.menu LOAD usr/src/lib/libgui.s diff --git a/LIB/LIBGUI.S.WND.txt b/LIB/LIBGUI.S.WND.txt index 1a3459a3..23aab873 100644 --- a/LIB/LIBGUI.S.WND.txt +++ b/LIB/LIBGUI.S.WND.txt @@ -326,7 +326,7 @@ WND.PaintTitle ldx #S.CB-1 lda #S.CB.CMD.DRAWTEXT+S.CB.CMD.OSD sta CB.Cache+S.CB.CMD - lda #S.CB.OP.SET+S.CB.OP.INVERSE + lda #S.CB.OP.SET +S.CB.OP.INVERSE sta CB.Cache+S.CB.OP lda #S.CB.M.MONO sta CB.Cache+S.CB.M diff --git a/LIB/LIBTCPIP.S.TCP.txt b/LIB/LIBTCPIP.S.TCP.txt index ff91ef65..a8ff34b2 100644 --- a/LIB/LIBTCPIP.S.TCP.txt +++ b/LIB/LIBTCPIP.S.TCP.txt @@ -17,8 +17,12 @@ TCP.IN jsr FRM.GetTargetSKT.TCPUDP tax jmp (J.TCP.IN,x) *-------------------------------------- -TCP.IN.RST lda SKT.TABLE,x - jsr SKT.shutdown +TCP.IN.RST lda #S.SOCKET.TCP.S.CLWAIT + ldy #S.SOCKET.TCP.S + sta (ZPPtrSKT),y + +* lda SKT.TABLE,x +* jsr SKT.shutdown *-------------------------------------- TCP.IN.JMP.OPENED TCP.IN.JMP.CLOSED diff --git a/LIB/LIBTCPIP.S.txt b/LIB/LIBTCPIP.S.txt index 9865ec47..8f441ee7 100644 --- a/LIB/LIBTCPIP.S.txt +++ b/LIB/LIBTCPIP.S.txt @@ -389,7 +389,7 @@ SKT.Cache .EQ *-S.SOCKET.TCP.INTAIL hFrameIn .BS 1 hFrameOut .BS 1 HST.SScanF .AZ "%d.%d.%d.%d" -IP.ID .BS 2 +IP.ID .DA $A205 *-------------------------------------- MAN SAVE usr/src/lib/libtcpip.s diff --git a/SBIN/GUI.S.txt b/SBIN/GUI.S.txt index ea646098..68e1d397 100644 --- a/SBIN/GUI.S.txt +++ b/SBIN/GUI.S.txt @@ -43,7 +43,8 @@ CS.START cld .DA CS.QUIT L.LIBGUI .DA LIBGUI L.MouseData .DA MouseData -L.WND.Title .DA L.WND.Title +L.WND.Title .DA WND.Title +L.WND.Menu .DA WND.Menu .DA 0 *-------------------------------------- CS.INIT >LDYA L.LIBGUI @@ -145,6 +146,50 @@ MouseData .BS S.MOUSE *-------------------------------------- hWND .BS 1 WND.Title .AZ "Window Title" +*-------------------------------------- +WND.Menu .AZ "File" + .DA #02 ID + .DA #S.MITEM.KEYMOD.CTRL + .DA #'N' + .AZ "New" + .DA #04 ID + .DA #S.MITEM.KEYMOD.CTRL + .DA #'O' + .AZ "Open..." + .DA #06 ID + .DA #S.MITEM.KEYMOD.CTRL + .DA #'S' + .AZ "Save" + .DA #08 ID + .DA #S.MITEM.KEYMOD.OA+S.MITEM.KEYMOD.CTRL + .DA #'S' + .AZ "Save As..." + .DA #10 ID + .DA #S.MITEM.KEYMOD.CTRL + .DA #'Q' + .AZ "Quit" + .DA #0 + .AZ "Edit" + .DA #12 ID + .DA #S.MITEM.KEYMOD.OA + .DA #'X' + .AZ "Cut" + .DA #14 ID + .DA #S.MITEM.KEYMOD.OA + .DA #'C' + .AZ "Copy" + .DA #16 ID + .DA #S.MITEM.KEYMOD.OA + .DA #'V' + .AZ "Paste" + .DA #0 + .AZ "Options" + .DA #18 ID + .DA #0 + .DA #0 + .AZ "Check Me" + .DA #0 + .DA #0 *-------------------------------------- .DUMMY .OR 0