diff --git a/A2OSX.BOOT.DSK b/A2OSX.BOOT.DSK index c144998b..2b38af69 100644 Binary files a/A2OSX.BOOT.DSK and b/A2OSX.BOOT.DSK differ diff --git a/A2OSX.SRC.po b/A2OSX.SRC.po index 9d2fe704..97ee7a2f 100644 Binary files a/A2OSX.SRC.po and b/A2OSX.SRC.po differ diff --git a/BIN/ASM.S.txt b/BIN/ASM.S.txt index bae883ec..fa4120e9 100644 --- a/BIN/ASM.S.txt +++ b/BIN/ASM.S.txt @@ -101,12 +101,14 @@ CS.INIT.ARGS >SYSCALL SYS.GetMemPtrA sec .99 rts *-------------------------------------- -CS.RUN lda bCANCEL +CS.RUN ldy #bCANCEL + lda (pData),y beq .1 sec rts -.1 lda bSTOP +.1 ldy #bSTOP + lda (pData),y beq .2 clc rts @@ -136,14 +138,19 @@ CS.DOEVENT ldy #S.EVT.hDEV is Event from active IN device? lda (pEvent),y cmp #$03 Ctrl-C bne .1 + lda #$FF - sta bCANCEL + ldy #bCANCEL + sta (pData),y bra .8 + .1 cmp #$13 Ctrl-S bne .8 - lda bSTOP + + ldy #bSTOP + lda (pData),y eor #$FF - sta bSTOP + sta (pData),y .8 clc rts @@ -151,7 +158,7 @@ CS.DOEVENT ldy #S.EVT.hDEV is Event from active IN device? .9 sec rts *-------------------------------------- -CS.QUIT ldy SRC.COUNT +CS.QUIT ldy #SRC.COUNT lda (pData),y beq .8 @@ -169,7 +176,7 @@ CS.QUIT ldy SRC.COUNT lda (pData),y >SYSCALL SYS.FreeMemA - ldy SRC.COUNT + ldy #SRC.COUNT lda (pData),y dec sta (pData),y @@ -203,7 +210,7 @@ SRC.OPEN sta hFileName ldy #SRC.COUNT lda (pData),y clc - adc #SRC.hREFNUMS-1 + adc #SRC.hREFNUMS tay pla sta (pData),y @@ -211,7 +218,7 @@ SRC.OPEN sta hFileName ldy #SRC.COUNT lda (pData),y clc - adc #SRC.hBUFFERS-1 + adc #SRC.hBUFFERS tay txa sta (pData),y @@ -219,16 +226,19 @@ SRC.OPEN sta hFileName lda hFileName >SYSCALL SYS.MLIGetFileInfoA bcs .99 - + >STYA ZPQuickPtr1 + ldy #1 + lda (ZPQuickPtr1),y + tax + ldy #SRC.COUNT lda (pData),y clc - adc #SRC.hFILETYPES-1 + adc #SRC.hFILETYPES tay - ldy #1 - lda (ZPQuickPtr1),y + txa sta (pData),y cmp #$04 TXT? @@ -267,7 +277,7 @@ SRC.ReadLine ldy #SRC.COUNT *--------------------------------------- SRC.ReadLine.BIN >LDYAI 3 LEN + LINENUM jsr SRC.ReadLine.YA - bcs .9 + bcs .9 lda READ.BUFFER+1 sta SRC.LINENUM @@ -415,6 +425,7 @@ MSG.HELP2 >CSTRING "Usage : ASM [type TXT ($04) or S-C/BAS ($FA)]\n MSG.SRCLINE >CSTRING "%05D-%s\n" hLIBSTR .BS 1 hFileName .BS 1 +SRC.LINENUM .BS 2 READ.BUFFER .BS 256 *-------------------------------------- .DUMMY @@ -422,24 +433,22 @@ READ.BUFFER .BS 256 DS.START bSTOP .BS 1 bCANCEL .BS 1 + SRC.COUNT .BS 1 SRC.hREFNUMS .BS SRC.IN.DEPTH.MAX Store ref_num of opened files (Main, .INs & .INBs) SRC.hBUFFERS .BS SRC.IN.DEPTH.MAX Store hMem to allocated buffers SRC.hFILETYPES .BS SRC.IN.DEPTH.MAX Store file type of opened SRC files -SRC.LINENUM .BS 2 -ASM.T.hFILENAME .BS 1 -ASM.T.hFILE .BS 1 handle to loaded ASM.T.xxxxx DST.hFILENAME .BS 1 +DST.hFILETYPE .BS 1 DST.hREFNUM .BS 1 DST.hBUFFER .BS 1 -*--------------------------------------- -ASM.T.FILENAME .BS 65 PStr ProDOS Max Path Len +1 -TARGET.FILENAME .BS 65 PStr ProDOS Max Path Len +1 -TARGET.FILETYPE .BS 1 -*--------------------------------------- + +ASM.T.hFILENAME .BS 1 +ASM.T.hFILE .BS 1 handle to loaded ASM.T.xxxxx ASM.PASS .BS 1 ASM.ORG .BS 4 32Bits Origin + SYM.BLOCKS .BS SYM.BLOCK.MAX DS.END .ED *--------------------------------------- diff --git a/BIN/ASM.T.6502.S.txt b/BIN/ASM.T.6502.S.txt index 9ccdc049..d79cb3ac 100644 --- a/BIN/ASM.T.6502.S.txt +++ b/BIN/ASM.T.6502.S.txt @@ -1,9 +1,9 @@ PR#3 -PREFIX /DATA/A2OS +PREFIX /A2OSX.SRC NEW INC 1 AUTO 6 - .TF /DATA/A2OS/BIN/ASM.T.6502 + .TF /A2OSX.BOOT/BIN/ASM.T.6502 .OR $2000 *--------------------------------------- .MA AMS AMSID,"Syntax",0,"Operand",0,"Range",0 @@ -260,5 +260,5 @@ T.OPCODES .AS "ADC" *--------------------------------------- .HS 0 MAN -SAVE /DATA/A2OS/BIN/ASM.T.6502.S +SAVE BIN/ASM.T.6502.S ASM diff --git a/BIN/ASM.T.65C02.S.txt b/BIN/ASM.T.65C02.S.txt index 8896c26b..b55e366a 100644 --- a/BIN/ASM.T.65C02.S.txt +++ b/BIN/ASM.T.65C02.S.txt @@ -1,7 +1,9 @@ PR#3 +PREFIX /A2OSX.SRC NEW +INC 1 AUTO 6 - .TF /DATA/A2OS/BIN/ASM.T.65C02 + .TF /A2OSX.BOOT/BIN/ASM.T.65C02 .OR $2000 *--------------------------------------- .MA AMS AMSID,"Syntax",0,"Operand",0,"Rule",0 @@ -95,6 +97,6 @@ T.OPCODES .AS "ADC" *--------------------------------------- .HS 0 MAN -SAVE /DATA/A2OS/BIN/ASM.T.65C02.S +SAVE BIN/ASM.T.65C02.S ASM \ No newline at end of file diff --git a/BIN/ASM.T.Z80.S.txt b/BIN/ASM.T.Z80.S.txt index 8070833c..16ce52af 100644 --- a/BIN/ASM.T.Z80.S.txt +++ b/BIN/ASM.T.Z80.S.txt @@ -1,7 +1,9 @@ PR#3 +PREFIX /A2OSX.SRC NEW +INC 1 AUTO 6 - .TF /DATA/A2OS/BIN/ASM.T.Z80 + .TF /A2OSX.BOOT/BIN/ASM.T.Z80 .OR $2000 *--------------------------------------- .MA AMS AMSID,"Syntax",0,"Operand",0,"Rule",0 @@ -31,6 +33,6 @@ T.OPCODES .AS "ADC" *--------------------------------------- .HS 0 MAN -SAVE /DATA/A2OS/BIN/ASM.T.Z80.S +SAVE BIN/ASM.T.Z80.S ASM \ No newline at end of file diff --git a/LIB/LIBTCPIP.S.DNS.txt b/LIB/LIBTCPIP.S.DNS.txt index 8019d0cc..6cbf6ff3 100644 --- a/LIB/LIBTCPIP.S.DNS.txt +++ b/LIB/LIBTCPIP.S.DNS.txt @@ -89,6 +89,15 @@ DNS.REQUEST jsr NEW.UDP.FRAME lda #UDP.PORT.DNS sta (ZPFrameBase1),y + ldy #S.DNS.ID + lda A2osX.RANDOM16 + sta (ZPFrameBase1),y + sta MESSAGE.ID + iny + lda A2osX.RANDOM16+1 + sta (ZPFrameBase1),y + sta MESSAGE.ID+1 + ldy #S.DNS.F lda /S.DNS.F.RD sta (ZPFrameBase1),y diff --git a/LIB/LIBTCPIP.S.txt b/LIB/LIBTCPIP.S.txt index aba9ac69..ae6ab2b9 100644 --- a/LIB/LIBTCPIP.S.txt +++ b/LIB/LIBTCPIP.S.txt @@ -466,7 +466,8 @@ CS.END *-------------------------------------- bFirstLoad .DA #0 Status .BS 1 -HOST.TTL .BS 2 for DNS Cache functions +MESSAGE.ID .BS 2 for DNS functions +HOST.TTL .BS 4 for DNS functions IP.CHECKSUM .BS 4 IPCFG .BS S.IPCFG ARP.CACHE .BS K.ARPCACHE.SIZE*S.ARPCACHE diff --git a/SBIN/TCPIP.S.txt b/SBIN/TCPIP.S.txt index 5b7a9bd7..483f0b8e 100644 --- a/SBIN/TCPIP.S.txt +++ b/SBIN/TCPIP.S.txt @@ -429,10 +429,8 @@ DNSListener ldy #S.DNS.F+1 bne .4 .5 inx X=length of NAME - txa - f - sdf - sdf + + ply get back offset in frame >STYA ZPQuickPtr1 clc