mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-28 10:52:33 +00:00
87 lines
2.2 KiB
Plaintext
87 lines
2.2 KiB
Plaintext
|
NEW
|
|||
|
AUTO 3,1
|
|||
|
.LIST OFF
|
|||
|
*--------------------------------------
|
|||
|
STR.MIN .EQ 3
|
|||
|
STR.MID .EQ STR.MIN+7+1
|
|||
|
STR.MAX .EQ STR.MID+63
|
|||
|
*--------------------------------------
|
|||
|
BLL.MIN .EQ 3
|
|||
|
BLL.MID .EQ BLL.MIN+3+1
|
|||
|
BLL.MAX .EQ BLL.MID+63
|
|||
|
*--------------------------------------
|
|||
|
BLO.WINDOW.W .EQ 12
|
|||
|
BLO.WINDOW .EQ 4095
|
|||
|
*--------------------------------------
|
|||
|
ARC.B.PREFIX.W .EQ 1
|
|||
|
ARC.B.SINGLE .EQ %0 +bbbb.bbbb
|
|||
|
ARC.B.STRBL .EQ %1
|
|||
|
*--------------------------------------
|
|||
|
ARC.B.RAWTOP.W .EQ 1
|
|||
|
ARC.B.RAW .EQ %0 +bbbb.bbbb
|
|||
|
ARC.B.TOP .EQ %1
|
|||
|
*--------------------------------------
|
|||
|
ARC.B.STRBL.W .EQ 1
|
|||
|
ARC.B.STR .EQ %0 +llll...
|
|||
|
ARC.B.BL .EQ %1 +llll... +oooooooooo...
|
|||
|
*--------------------------------------
|
|||
|
ARC.B.LEN.W .EQ 1
|
|||
|
ARC.B.SHORT.B .EQ %0
|
|||
|
ARC.B.LONG.B .EQ %1
|
|||
|
*--------------------------------------
|
|||
|
ARC.B.SHORTSTR.W .EQ 3
|
|||
|
ARC.B.SHORTBLL.W .EQ 2
|
|||
|
*--------------------------------------
|
|||
|
TOP.MIN.CNT .EQ 3
|
|||
|
TOP.MAX .EQ 32
|
|||
|
*--------------------------------------
|
|||
|
ARC.B.TOP0.W .EQ 4
|
|||
|
ARC.B.TOP0.B .EQ %0.000
|
|||
|
ARC.B.TOP0.M .EQ %0.111
|
|||
|
|
|||
|
ARC.B.TOP8.W .EQ 5
|
|||
|
ARC.B.TOP8.B .EQ %10.000
|
|||
|
ARC.B.TOP8.M .EQ %00.111
|
|||
|
|
|||
|
ARC.B.TOP16.W .EQ 6
|
|||
|
ARC.B.TOP16.B .EQ %11.0000
|
|||
|
ARC.B.TOP16.M .EQ %00.1111
|
|||
|
*--------------------------------------
|
|||
|
* Shunk Header
|
|||
|
* ULEN (16) : Target Uncompressed Length
|
|||
|
* !!! USED TO STOP UNPACK,NO EOF TOKEN !!!
|
|||
|
* TBLBITS (16) : sss.ccccc c.lll.oooo
|
|||
|
* sss : bitcnt for long STR len, max = 7 bits:127+STR.MID
|
|||
|
* cccccc : top count, 0-> 63
|
|||
|
* lll : bitcnt for long BL len, max = 7 bits:127+BL.MID
|
|||
|
* oooo : bitcnt for long BL ofs, max = 15 bits:32767
|
|||
|
*--------------------------------------
|
|||
|
S.ARCSHNK.ULEN .EQ 0 Uncompressed length
|
|||
|
S.ARCSHNK.TBLBITS .EQ 2
|
|||
|
S.ARCSHNK.TOPBYTES .EQ 4 if cccccc > 0
|
|||
|
*
|
|||
|
S.ARCSHNK.H .EQ 4
|
|||
|
* TOP Bytes ...
|
|||
|
S.ARCSHNK .EQ S.ARCSHNK.H+TOP.MAX
|
|||
|
* DATA ...
|
|||
|
*--------------------------------------
|
|||
|
CHNK.SIZE .EQ 4096
|
|||
|
*--------------------------------------
|
|||
|
CHNK.T .EQ 0
|
|||
|
CHNK.T.DIR .EQ 1
|
|||
|
CHNK.T.FILE .EQ 2
|
|||
|
CHNK.T.DATA .EQ 128
|
|||
|
*
|
|||
|
CHNK.FILE.TYPE .EQ 1
|
|||
|
CHNK.FILE.AUXT .EQ 2
|
|||
|
CHNK.FILE.FNLEN .EQ 4
|
|||
|
*
|
|||
|
CHNK.DIR.FNLEN .EQ 1
|
|||
|
*
|
|||
|
CHNK.DATA.LEN .EQ 1
|
|||
|
*--------------------------------------
|
|||
|
MAN
|
|||
|
SAVE inc/arc.i
|
|||
|
LOAD usr/src/bin/arcme.s
|
|||
|
ASM
|