diff --git a/.Floppies/A2OSX.BOOT.po b/.Floppies/A2OSX.BOOT.po index 65a268cf..9f439b1d 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 eabb578d..50f1a8f1 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index 878a7924..e5f16e4a 100644 Binary files a/.Floppies/A2OSX.SRC.po and b/.Floppies/A2OSX.SRC.po differ diff --git a/BIN/FORMAT.S.txt b/BIN/FORMAT.S.txt index 17537cb2..ee968a3e 100644 --- a/BIN/FORMAT.S.txt +++ b/BIN/FORMAT.S.txt @@ -307,7 +307,6 @@ A2CharAX pha lsr lsr lsr - and #$0F ora #$30 cmp #'9'+1 bcc .1 diff --git a/BIN/MD5.S.txt b/BIN/MD5.S.txt index 7f001198..056dd874 100644 --- a/BIN/MD5.S.txt +++ b/BIN/MD5.S.txt @@ -221,7 +221,6 @@ A2CharAX pha lsr lsr and #$0F - ora #$30 cmp #'9'+1 bcc .1 adc #6 diff --git a/DRV/MOUSE.DRV.S.txt b/DRV/MOUSE.DRV.S.txt index b5e19f7c..08ecb6d7 100644 --- a/DRV/MOUSE.DRV.S.txt +++ b/DRV/MOUSE.DRV.S.txt @@ -12,8 +12,7 @@ AUTO 4,1 .INB /A2OSX.BUILD/INC/XY.MOUSE.I .INB /A2OSX.BUILD/INC/LIBGUI.I *-------------------------------------- -ZPGoMouse .EQ ZPDRV -ZPTmpPtr1 .EQ ZPDRV+2 +ZPTmpPtr1 .EQ ZPDRV *-------------------------------------- * File Header (16 Bytes) *-------------------------------------- @@ -40,9 +39,9 @@ Dev.Detect >LDYA L.MSG.DETECT stz ZPTmpPtr1 lda #$C1 - sta ZPTmpPtr1+1 +.1 sta ZPTmpPtr1+1 -.1 ldx #DEVSIG.Value-DEVSIG.Offset-1 + ldx #DEVSIG.Value-DEVSIG.Offset-1 .2 ldy DEVSIG.Offset,x lda (ZPTmpPtr1),y @@ -52,7 +51,9 @@ Dev.Detect >LDYA L.MSG.DETECT bpl .2 lda ZPTmpPtr1+1 - sta DEVSLOTCn + sta GOMOUSE+2 + sta GOMOUSE.Cn+1 + sta GOMOUSE.JMP+2 and #$0F sta DEVSLOT0n ora #$30 @@ -61,7 +62,7 @@ Dev.Detect >LDYA L.MSG.DETECT asl asl asl - sta DEVSLOTn0 + sta GOMOUSE.n0+1 >PUSHW L.DEV.HEADER.NAME >LDYA L.MSG.DETECT.OK @@ -69,8 +70,8 @@ Dev.Detect >LDYA L.MSG.DETECT clc rts -.3 inc ZPTmpPtr1+1 no match, try next slot.... - lda ZPTmpPtr1+1 +.3 lda ZPTmpPtr1+1 no match, try next slot.... + inc cmp #$C8 bne .1 @@ -79,8 +80,7 @@ Dev.Detect >LDYA L.MSG.DETECT lda #MLI.E.NODEV sec - rts - + rts *-------------------------------------- CS.END MSG.DETECT .AZ "Apple Mouse Driver.\r\n" @@ -118,9 +118,7 @@ STATUS >LDYA L.DEVSTAT *-------------------------------------- READBLOCK >STYA ZPTmpPtr1 - ldy #S.MOUSE.S - lda #0 - sta (ZPTmpPtr1),y Reset Flags + stz READBLOCK.S+1 Reset Flags php sei @@ -151,9 +149,8 @@ READBLOCK >STYA ZPTmpPtr1 lda MOUSEYHIx,x sta (ZPTmpPtr1),y - ldy #S.MOUSE.S lda #S.MOUSE.S.MOVE - sta (ZPTmpPtr1),y + tsb READBLOCK.S+1 stz bDblClick Reset DblClick flag @@ -167,10 +164,8 @@ READBLOCK >STYA ZPTmpPtr1 asl if CS, down & previously up bcc .2 - ldy #S.MOUSE.S lda #S.MOUSE.S.DOWN - ora (ZPTmpPtr1),y - sta (ZPTmpPtr1),y button has been pressed, start drag... + tsb READBLOCK.S+1 button has been pressed, start drag... lda MOUSEXLOx,x sta SrcDrag @@ -186,13 +181,12 @@ READBLOCK >STYA ZPTmpPtr1 bra .8 -.2 ldy #S.MOUSE.S - lda (ZPTmpPtr1),y +.2 lda READBLOCK.S+1 pha save move state ora #S.MOUSE.S.UP - sta (ZPTmpPtr1),y + sta READBLOCK.S+1 pla get back move state @@ -209,15 +203,11 @@ READBLOCK >STYA ZPTmpPtr1 .3 dec bDblClick - ldy #S.MOUSE.S - ora (ZPTmpPtr1),y - sta (ZPTmpPtr1),y + tsb READBLOCK.S+1 bra .8 .4 lda #S.MOUSE.S.DRAG - ldy #S.MOUSE.S - ora (ZPTmpPtr1),y - sta (ZPTmpPtr1),y + tsb READBLOCK.S+1 ldy #S.MOUSE.X2+3 @@ -228,9 +218,11 @@ READBLOCK >STYA ZPTmpPtr1 .8 plp - ldy #S.MOUSE.S - lda (ZPTmpPtr1),y +READBLOCK.S lda #$ff SELF MODIFIED beq .9 + + ldy #S.MOUSE.S + sta (ZPTmpPtr1),y clc rts @@ -245,11 +237,11 @@ CONTROL >STYA ZPTmpPtr1 ldy #0 ldx #0 set X - jsr CONTROL.SETCLAMP + jsr SETCLAMP ldy #4 ldx #1 set Y - jsr CONTROL.SETCLAMP + jsr SETCLAMP ldy #HOMEMOUSE jsr GOMOUSE @@ -258,28 +250,6 @@ CONTROL >STYA ZPTmpPtr1 clc rts *-------------------------------------- -CONTROL.SETCLAMP - lda (ZPTmpPtr1),y - sta LOCLAMPLO - - iny - lda (ZPTmpPtr1),y - sta LOCLAMPHI - - iny - lda (ZPTmpPtr1),y - sta HICLAMPLO - - iny - lda (ZPTmpPtr1),y - sta HICLAMPHI - - txa - ldy #CLAMPMOUSE - jsr GOMOUSE - - rts -*-------------------------------------- OPEN php sei @@ -311,25 +281,37 @@ CLOSE php *-------------------------------------- * PRIVATE *-------------------------------------- -GOMOUSE pha - stz ZPGoMouse - ldx DEVSLOTCn - stx ZPGoMouse+1 - lda (ZPGoMouse),y - sta ZPGoMouse - ldy DEVSLOTn0 - pla - jmp (ZPGoMouse) +SETCLAMP lda (ZPTmpPtr1),y + sta LOCLAMPLO + + iny + lda (ZPTmpPtr1),y + sta LOCLAMPHI + + iny + lda (ZPTmpPtr1),y + sta HICLAMPLO + + iny + lda (ZPTmpPtr1),y + sta HICLAMPHI + + txa + ldy #CLAMPMOUSE +*-------------------------------------- +GOMOUSE ldx $FF00,y SELF MODIFIED + stx GOMOUSE.JMP+1 +GOMOUSE.Cn ldx #$ff SELF MODIFIED +GOMOUSE.n0 ldy #$ff SELF MODIFIED +GOMOUSE.JMP jmp $FFFF SELF MODIFIED *-------------------------------------- DRV.CS.END DEVSLOT0n .BS 1 -DEVSLOTn0 .BS 1 -DEVSLOTCn .BS 1 bDblClick .BS 1 SrcDrag .BS 4 *-------------------------------------- DEVSTAT .DA #0 - .DA #0,#0,#0 size + .DA #0,#0,#0 >PSTR "Apple II Mouse" .BS 2 .DA #S.DSTAT.T.XY diff --git a/SBIN/TCPIPD.S.txt b/SBIN/TCPIPD.S.txt index 7bb8766a..5395a9c4 100644 --- a/SBIN/TCPIPD.S.txt +++ b/SBIN/TCPIPD.S.txt @@ -165,7 +165,6 @@ A2CharAX pha lsr lsr lsr - and #$0F ora #$30 cmp #'9'+1 bcc .1 diff --git a/SYS/KERNEL.S.ENV.txt b/SYS/KERNEL.S.ENV.txt index 72bab415..1a086fff 100644 --- a/SYS/KERNEL.S.ENV.txt +++ b/SYS/KERNEL.S.ENV.txt @@ -38,10 +38,7 @@ K.ExpandStr.YA stz ENV.hStr Reset Intermediate string... .21 bit ENV.bNoExp bpl .23 -.22 ldx ENV.BufLen - sta K.Buf256,x - inx - stx ENV.BufLen +.22 jsr ENV.AddAToBuf bra .11 .23 ldx ENV.bInVar already in a var? @@ -134,14 +131,6 @@ ENV.GetValue jsr ENV.ExpandSysVar jsr ENV.AddP3ToBuf .9 rts -*-------------------------------------- -ENV.BufLen .BS 1 -ENV.bNoExp .BS 1 -ENV.bInVar .BS 1 -ENV.bFound .BS 1 -ENV.hStr .BS 1 -ENV.VarLen .BS 1 -ENV.VarName .BS 16 */-------------------------------------- * # PutEnv.YA * ## In: @@ -354,8 +343,9 @@ ENV.ExpandSysVar asl tax jmp (ENV.SysVarsJmp,x) - +*-------------------------------------- ENV.SysVars .AS "*#?@$!" +*-------------------------------------- ENV.SysVarsJmp .DA ENV.SysVarsArgs .DA ENV.SysVarsArgC .DA ENV.SysVarsRC @@ -389,19 +379,6 @@ ENV.SysVarsArgs lda #1 .8 clc rts *-------------------------------------- -ENV.AddP3ToBuf ldx ENV.BufLen - ldy #$ff - dex - -.1 iny - inx - lda (ZPPtr3),y - sta K.Buf256,x - bne .1 - - stx ENV.BufLen - rts -*-------------------------------------- ENV.SysVarsArgC ldy #S.PS.ARGC .HS 2C ENV.SysVarsRC ldy #S.PS.RC @@ -438,10 +415,13 @@ ENV.SysVarsCPID ldy #S.PS.CPID ldx ENV.BufLen lda .3+1 beq .4 + + ora #$30 sta K.Buf256,x inx .4 lda .2+1 + pha lsr lsr lsr @@ -452,9 +432,11 @@ ENV.SysVarsCPID ldy #S.PS.CPID sta K.Buf256,x inx -.5 lda .2+1 +.5 pla + and #$0f - ora #$30 + +.8 ora #$30 sta K.Buf256,x inx @@ -554,6 +536,33 @@ ENV.NextEnvP3 ldy #0 inc ZPPtr3+1 .8 rts *-------------------------------------- +ENV.AddP3ToBuf ldx ENV.BufLen + ldy #$ff + dex + +.1 iny + inx + lda (ZPPtr3),y + sta K.Buf256,x + bne .1 + + stx ENV.BufLen + rts +*-------------------------------------- +ENV.AddAToBuf ldx ENV.BufLen + sta K.Buf256,x + inx + stx ENV.BufLen + rts +*-------------------------------------- +ENV.BufLen .BS 1 +ENV.bNoExp .BS 1 +ENV.bInVar .BS 1 +ENV.bFound .BS 1 +ENV.hStr .BS 1 +ENV.VarLen .BS 1 +ENV.VarName .BS 16 +*-------------------------------------- MAN SAVE /A2OSX.SRC/SYS/KERNEL.S.ENV LOAD /A2OSX.SRC/SYS/KERNEL.S diff --git a/SYS/KERNEL.S.STDIO.txt b/SYS/KERNEL.S.STDIO.txt index f42a0427..58630855 100644 --- a/SYS/KERNEL.S.STDIO.txt +++ b/SYS/KERNEL.S.STDIO.txt @@ -1155,11 +1155,10 @@ HEX2DEC ror .31+1 lsr .6 and #$0F + + beq .7 a zero? ora #$30 - cmp #'0' a zero? - beq .7 - inc PADLEN found a non zero, Print all digits, even if 0, next time ldy #'0' sty PADCHAR diff --git a/SYS/KERNEL.S.TIME.txt b/SYS/KERNEL.S.TIME.txt index 7bc5f055..b4f5d2be 100644 --- a/SYS/KERNEL.S.TIME.txt +++ b/SYS/KERNEL.S.TIME.txt @@ -556,24 +556,26 @@ K.StrFTime.Y ldy #S.Time.YEAR K.StrFTime.addDecPtr1Y lda (ZPPtr1),y K.StrFTime.addDecA - sta K.StrFTime.BIN - stz K.StrFTime.DEC - sed + stz .2+1 + ldx #8 + sed -.1 asl K.StrFTime.BIN +.1 asl + pha +.2 lda #$ff Self Modified - lda K.StrFTime.DEC - adc K.StrFTime.DEC - sta K.StrFTime.DEC + adc .2+1 + sta .2+1 + pla dex bne .1 cld -* lda K.StrFTime.DEC already in A + lda .2+1 pha lsr lsr @@ -613,9 +615,6 @@ K.StrFTime.MON >PSTR "January" >PSTR "November" >PSTR "December" *-------------------------------------- -K.StrFTime.BIN .BS 1 -K.StrFTime.DEC .BS 1 always < 100 -*-------------------------------------- MAN SAVE /A2OSX.SRC/SYS/KERNEL.S.TIME LOAD /A2OSX.SRC/SYS/KERNEL.S