diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index fa5e5ca7..ba7d1434 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/BIN/SH.S.txt b/BIN/SH.S.txt index e3c4fe57..3209c243 100644 --- a/BIN/SH.S.txt +++ b/BIN/SH.S.txt @@ -500,8 +500,8 @@ ToUpperCase cmp #'a' CS.END *-------------------------------------- MSG.GREETINGS .AZ "\r\nA2osX-SH %d.%d\r\n\r\n" -MSG.PROMPT .AZ "\e[?7h$ " Enable Line Wrap -MSG.PROMPTCRLF .AZ "\e[?7l\r\n" Disable Line Wrap +MSG.PROMPT .AZ "\e[7h$ " Enable Line Wrap +MSG.PROMPTCRLF .AZ "\e[7l\r\n" Disable Line Wrap MSG.TRACE .AS ">" MSG.BATCHLINE .AZ "%s\r\n" MSG.BATCHERR .AZ "%s^\r\nLine #%D:" diff --git a/INC/LIBPAK.I.txt b/INC/LIBPAK.I.txt index 44f65266..081fa8a2 100644 --- a/INC/LIBPAK.I.txt +++ b/INC/LIBPAK.I.txt @@ -2,7 +2,8 @@ NEW AUTO 3,1 .LIST OFF *-------------------------------------- -REP.MAX .EQ 1+1254 +TOP.MAX .EQ 32 +REP.MAX .EQ 1+254 BL.MIN .EQ 3 BL.MAX .EQ 3+63 @@ -11,17 +12,20 @@ STR.MAX .EQ 3+15 *-------------------------------------- PAK.B.BYTE8.W .EQ 1 PAK.B.BYTE8 .EQ %0 + PAK.B.TOP8.W .EQ 5 PAK.B.TOP8 .EQ %10.000 PAK.B.TOP16.W .EQ 6 PAK.B.TOP16 .EQ %110.000 PAK.B.TOP24.W .EQ 7 PAK.B.TOP24 .EQ %1110.000 +PAK.B.TOP32.W .EQ 8 +PAK.B.TOP32 .EQ %11110.000 -PAK.B.REP.W .EQ 5 -PAK.B.REP .EQ %11110 -PAK.B.BL.W .EQ 5 -PAK.B.BL .EQ %11111 +PAK.B.REP.W .EQ 6 +PAK.B.REP .EQ %111110 +PAK.B.BL.W .EQ 6 +PAK.B.BL .EQ %111111 PAK.B.STR.W .EQ 6 DISABLED PAK.B.STR .EQ %01.0000 @@ -36,19 +40,20 @@ S.PAKSHNK.TOPCNT .EQ 3 S.PAKSHNK.TOPBYTES .EQ 4 * TOP Bytes .... * DATA -S.PAKSHNK .EQ 2+1+1+24 Max +S.PAKSHNK .EQ 2+1+1+TOP.MAX *-------------------------------------- S.PAKSTAT.PASS1 .EQ 0 S.PAKSTAT.PASS2 .EQ 2 S.PAKSTAT.TOP8 .EQ 4 S.PAKSTAT.TOP16 .EQ 6 S.PAKSTAT.TOP24 .EQ 8 -S.PAKSTAT.BYTE8 .EQ 10 -S.PAKSTAT.STR .EQ 12 -S.PAKSTAT.REPN .EQ 14 -S.PAKSTAT.BL .EQ 16 +S.PAKSTAT.TOP32 .EQ 10 +S.PAKSTAT.BYTE8 .EQ 12 +S.PAKSTAT.STR .EQ 14 +S.PAKSTAT.REPN .EQ 16 +S.PAKSTAT.BL .EQ 18 * -S.PAKSTAT .EQ 18 +S.PAKSTAT .EQ 20 *-------------------------------------- LIBPAK.Pak .EQ 4 *-------------------------------------- diff --git a/LIB/LIBPAK.S.txt b/LIB/LIBPAK.S.txt index d59ffc3f..be8d1882 100644 --- a/LIB/LIBPAK.S.txt +++ b/LIB/LIBPAK.S.txt @@ -37,7 +37,7 @@ CS.START cld .DA LIB.UNLOAD .DA Pak L.MSG.Stats .DA MSG.Stats -L.MSG.Top24 .DA MSG.Top24 +L.MSG.TopBytes .DA MSG.TopBytes .DA 0 *-------------------------------------- LIB.LOAD @@ -98,9 +98,7 @@ Pak >PULLW Pak.SrcPtr sta (ZPStatPtr),y dey bpl .7 - -* >DEBUG - + >LDYA Pak.Stat+S.PAKSTAT.PASS2 clc @@ -407,7 +405,7 @@ Pak.BuildTOPTable stz Pak.CntL,x Discard this entry stz Pak.CntH,x iny - cpy #24 + cpy #TOP.MAX bne .1 .8 sty Pak.Shnk+S.PAKSHNK.TOPCNT @@ -756,18 +754,18 @@ Pak.PrintStats lda Pak.BL.OfsBitsL dex bpl .1 - >PUSHBI 26 + >PUSHBI 28 >LDYA L.MSG.Stats >SYSCALL printf - ldx #24 + ldx #TOP.MAX .2 >PUSHB Pak.Shnk+S.PAKSHNK.TOPCNT,x dex bpl .2 - >PUSHBI 25 - >LDYA L.MSG.Top24 + >PUSHBI TOP.MAX+1 + >LDYA L.MSG.TopBytes >SYSCALL printf rts *-------------------------------------- @@ -809,14 +807,15 @@ MSG.Stats .AS "\r\nPass 1 : %5D\r\n" .AS "Top 8 : %5D\r\n" .AS "Top 16 : %5D\r\n" .AS "Top 24 : %5D\r\n" + .AS "Top 32 : %5D\r\n" .AS "Byte 8 : %5D\r\n" .AS "String : %5D, Longest : %d\r\n" .AS "Rep : %5D, Longest : %d (%d bits)\r\n" .AZ "BL : %5D, Longest : %d (%d bits), Farest : %D (%d bits)\r\n" -MSG.Top24 .AZ "Top : %5d, %h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h\r\n" -TOP.Bits .DA #PAK.B.TOP8,PAK.B.TOP16,PAK.B.TOP24 -TOP.BitCnt .DA #PAK.B.TOP8.W,#PAK.B.TOP16.W,#PAK.B.TOP24.W -TOP.Stat .DA #S.PAKSTAT.TOP8,#S.PAKSTAT.TOP16,#S.PAKSTAT.TOP24 +MSG.TopBytes .AZ "Top : %5d, %h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h%h\r\n" +TOP.Bits .DA #PAK.B.TOP8,#PAK.B.TOP16,#PAK.B.TOP24,#PAK.B.TOP32 +TOP.BitCnt .DA #PAK.B.TOP8.W,#PAK.B.TOP16.W,#PAK.B.TOP24.W,#PAK.B.TOP32.W +TOP.Stat .DA #S.PAKSTAT.TOP8,#S.PAKSTAT.TOP16,#S.PAKSTAT.TOP24,#S.PAKSTAT.TOP32 *-------------------------------------- Pak.SrcPtr .BS 2