mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-25 05:32:20 +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
|