diff --git a/lfs3.h b/lfs3.h index 48a462bf..fa02e55f 100644 --- a/lfs3.h +++ b/lfs3.h @@ -756,58 +756,58 @@ enum lfs3_tag { LFS3_TAG_NULL = 0x0000, // config tags - LFS3_TAG_CONFIG = 0x0000, - LFS3_TAG_MAGIC = 0x0031, - LFS3_TAG_VERSION = 0x0034, - LFS3_TAG_RCOMPAT = 0x0035, - LFS3_TAG_WCOMPAT = 0x0036, - LFS3_TAG_OCOMPAT = 0x0037, - LFS3_TAG_GEOMETRY = 0x0038, - LFS3_TAG_NAMELIMIT = 0x0039, - LFS3_TAG_FILELIMIT = 0x003a, + LFS3_TAG_CONFIG = 0x0100, + LFS3_TAG_MAGIC = 0x0131, + LFS3_TAG_VERSION = 0x0134, + LFS3_TAG_RCOMPAT = 0x0135, + LFS3_TAG_WCOMPAT = 0x0136, + LFS3_TAG_OCOMPAT = 0x0137, + LFS3_TAG_GEOMETRY = 0x0138, + LFS3_TAG_NAMELIMIT = 0x0139, + LFS3_TAG_FILELIMIT = 0x013a, // in-device only, to help find unknown config tags - LFS3_tag_UNKNOWNCONFIG = 0x003b, + LFS3_tag_UNKNOWNCONFIG = 0x013b, // global-state tags - LFS3_TAG_GDELTA = 0x0100, - LFS3_TAG_GRMDELTA = 0x0100, - LFS3_TAG_GBMAPDELTA = 0x0104, + LFS3_TAG_GDELTA = 0x0200, + LFS3_TAG_GRMDELTA = 0x0230, + LFS3_TAG_GBMAPDELTA = 0x0234, // name tags - LFS3_TAG_NAME = 0x0200, - LFS3_TAG_BNAME = 0x0200, - LFS3_TAG_REG = 0x0201, - LFS3_TAG_DIR = 0x0202, - LFS3_TAG_STICKYNOTE = 0x0203, - LFS3_TAG_BOOKMARK = 0x0204, + LFS3_TAG_NAME = 0x0300, + LFS3_TAG_BNAME = 0x0300, + LFS3_TAG_REG = 0x0301, + LFS3_TAG_DIR = 0x0302, + LFS3_TAG_STICKYNOTE = 0x0303, + LFS3_TAG_BOOKMARK = 0x0304, // in-device only name tags, these should never get written to disk - LFS3_tag_ORPHAN = 0x0205, - LFS3_tag_TRV = 0x0206, - LFS3_tag_UNKNOWN = 0x0207, + LFS3_tag_ORPHAN = 0x0305, + LFS3_tag_TRV = 0x0306, + LFS3_tag_UNKNOWN = 0x0307, // non-file name tags - LFS3_TAG_MNAME = 0x0220, + LFS3_TAG_MNAME = 0x0330, // struct tags - LFS3_TAG_STRUCT = 0x0300, - LFS3_TAG_BRANCH = 0x0300, - LFS3_TAG_DATA = 0x0304, - LFS3_TAG_BLOCK = 0x0308, - LFS3_TAG_DID = 0x0314, - LFS3_TAG_BSHRUB = 0x0318, - LFS3_TAG_BTREE = 0x031c, - LFS3_TAG_MROOT = 0x0321, - LFS3_TAG_MDIR = 0x0325, - LFS3_TAG_MTREE = 0x032c, - LFS3_TAG_BMRANGE = 0x0330, - LFS3_TAG_BMFREE = 0x0330, - LFS3_TAG_BMINUSE = 0x0331, - LFS3_TAG_BMERASED = 0x0332, - LFS3_TAG_BMBAD = 0x0333, + LFS3_TAG_STRUCT = 0x0400, + LFS3_TAG_BRANCH = 0x0400, + LFS3_TAG_DATA = 0x0404, + LFS3_TAG_BLOCK = 0x0408, + LFS3_TAG_DID = 0x0420, + LFS3_TAG_BSHRUB = 0x0428, + LFS3_TAG_BTREE = 0x042c, + LFS3_TAG_MROOT = 0x0431, + LFS3_TAG_MDIR = 0x0435, + LFS3_TAG_MTREE = 0x043c, + LFS3_TAG_BMRANGE = 0x0440, + LFS3_TAG_BMFREE = 0x0440, + LFS3_TAG_BMINUSE = 0x0441, + LFS3_TAG_BMERASED = 0x0442, + LFS3_TAG_BMBAD = 0x0443, // user/sys attributes - LFS3_TAG_ATTR = 0x0400, - LFS3_TAG_UATTR = 0x0400, - LFS3_TAG_SATTR = 0x0500, + LFS3_TAG_ATTR = 0x0600, + LFS3_TAG_UATTR = 0x0600, + LFS3_TAG_SATTR = 0x0700, // shrub tags belong to secondary trees LFS3_TAG_SHRUB = 0x1000, @@ -828,12 +828,12 @@ enum lfs3_tag { LFS3_TAG_GCKSUMDELTA = 0x3300, // in-device only tags, these should never get written to disk - LFS3_tag_INTERNAL = 0x0800, - LFS3_tag_RATTRS = 0x0800, - LFS3_tag_SHRUBCOMMIT = 0x0801, - LFS3_tag_GRMPUSH = 0x0802, - LFS3_tag_MOVE = 0x0803, - LFS3_tag_ATTRS = 0x0804, + LFS3_tag_INTERNAL = 0x0000, + LFS3_tag_RATTRS = 0x0001, + LFS3_tag_SHRUBCOMMIT = 0x0002, + LFS3_tag_GRMPUSH = 0x0003, + LFS3_tag_MOVE = 0x0004, + LFS3_tag_ATTRS = 0x0005, // some in-device only tag modifiers LFS3_tag_RM = 0x8000, diff --git a/scripts/dbgbmap.py b/scripts/dbgbmap.py index ca82a0bf..711234f3 100755 --- a/scripts/dbgbmap.py +++ b/scripts/dbgbmap.py @@ -113,43 +113,44 @@ WCOMPAT_GBMAP = 0x00080000 # Global on-disk block-map in use WCOMPAT_DIR = 0x01000000 # Directory file types in use TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000 diff --git a/scripts/dbgbmapsvg.py b/scripts/dbgbmapsvg.py index 9d441280..32664007 100755 --- a/scripts/dbgbmapsvg.py +++ b/scripts/dbgbmapsvg.py @@ -133,43 +133,44 @@ WCOMPAT_GBMAP = 0x00080000 # Global on-disk block-map in use WCOMPAT_DIR = 0x01000000 # Directory file types in use TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000 diff --git a/scripts/dbgbtree.py b/scripts/dbgbtree.py index ee6a2673..b703ba7a 100755 --- a/scripts/dbgbtree.py +++ b/scripts/dbgbtree.py @@ -19,43 +19,44 @@ except ModuleNotFoundError: TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000 diff --git a/scripts/dbglfs3.py b/scripts/dbglfs3.py index 28b0c014..c3e04c86 100755 --- a/scripts/dbglfs3.py +++ b/scripts/dbglfs3.py @@ -38,43 +38,44 @@ WCOMPAT_GBMAP = 0x00080000 # Global on-disk block-map in use WCOMPAT_DIR = 0x01000000 # Directory file types in use TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000 diff --git a/scripts/dbgmtree.py b/scripts/dbgmtree.py index 25ba929d..cd42b80c 100755 --- a/scripts/dbgmtree.py +++ b/scripts/dbgmtree.py @@ -19,43 +19,44 @@ except ModuleNotFoundError: TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000 diff --git a/scripts/dbgrbyd.py b/scripts/dbgrbyd.py index 38d642e6..ff693912 100755 --- a/scripts/dbgrbyd.py +++ b/scripts/dbgrbyd.py @@ -29,43 +29,44 @@ COLORS = [ TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000 diff --git a/scripts/dbgtag.py b/scripts/dbgtag.py index 066408cf..647c4b4a 100755 --- a/scripts/dbgtag.py +++ b/scripts/dbgtag.py @@ -13,43 +13,44 @@ import sys TAG_NULL = 0x0000 ## v--- ---- +--- ---- -TAG_CONFIG = 0x0000 ## v--- ---- +ttt tttt -TAG_MAGIC = 0x0031 # v--- ---- +-11 --rr -TAG_VERSION = 0x0034 # v--- ---- +-11 -1-- -TAG_RCOMPAT = 0x0035 # v--- ---- +-11 -1-1 -TAG_WCOMPAT = 0x0036 # v--- ---- +-11 -11- -TAG_OCOMPAT = 0x0037 # v--- ---- +-11 -111 -TAG_GEOMETRY = 0x0038 # v--- ---- +-11 1--- -TAG_NAMELIMIT = 0x0039 # v--- ---- +-11 1--1 -TAG_FILELIMIT = 0x003a # v--- ---- +-11 1-1- -TAG_GDELTA = 0x0100 ## v--- ---1 +ttt ttrr -TAG_GRMDELTA = 0x0100 # v--- ---1 +--- ---- -TAG_GBMAPDELTA = 0x0104 # v--- ---1 +--- -1rr -TAG_NAME = 0x0200 ## v--- --1- +ttt tttt -TAG_BNAME = 0x0200 # v--- --1- +--- ---- -TAG_REG = 0x0201 # v--- --1- +--- ---1 -TAG_DIR = 0x0202 # v--- --1- +--- --1- -TAG_STICKYNOTE = 0x0203 # v--- --1- +--- --11 -TAG_BOOKMARK = 0x0204 # v--- --1- +--- -1-- -TAG_MNAME = 0x0220 # v--- --1- +-1- ---- -TAG_STRUCT = 0x0300 ## v--- --11 +ttt ttrr -TAG_BRANCH = 0x0300 # v--- --11 +--- --rr -TAG_DATA = 0x0304 # v--- --11 +--- -1-- -TAG_BLOCK = 0x0308 # v--- --11 +--- 1err -TAG_DID = 0x0314 # v--- --11 +--1 -1-- -TAG_BSHRUB = 0x0318 # v--- --11 +--1 1--- -TAG_BTREE = 0x031c # v--- --11 +--1 11rr -TAG_MROOT = 0x0321 # v--- --11 +-1- --rr -TAG_MDIR = 0x0325 # v--- --11 +-1- -1rr -TAG_MTREE = 0x032c # v--- --11 +-1- 11rr -TAG_BMRANGE = 0x0330 # v--- --11 +-11 ++uu -TAG_BMFREE = 0x0330 # v--- --11 +-11 ---- -TAG_BMINUSE = 0x0331 # v--- --11 +-11 ---1 -TAG_BMERASED = 0x0332 # v--- --11 +-11 --1- -TAG_BMBAD = 0x0333 # v--- --11 +-11 --11 -TAG_ATTR = 0x0400 ## v--- -1-a +aaa aaaa -TAG_UATTR = 0x0400 # v--- -1-- +aaa aaaa -TAG_SATTR = 0x0500 # v--- -1-1 +aaa aaaa +TAG_INTERNAL = 0x0000 ## v--- ---- +ttt tttt +TAG_CONFIG = 0x0100 ## v--- ---1 +ttt tttt +TAG_MAGIC = 0x0131 # v--- ---1 +-11 --rr +TAG_VERSION = 0x0134 # v--- ---1 +-11 -1-- +TAG_RCOMPAT = 0x0135 # v--- ---1 +-11 -1-1 +TAG_WCOMPAT = 0x0136 # v--- ---1 +-11 -11- +TAG_OCOMPAT = 0x0137 # v--- ---1 +-11 -111 +TAG_GEOMETRY = 0x0138 # v--- ---1 +-11 1--- +TAG_NAMELIMIT = 0x0139 # v--- ---1 +-11 1--1 +TAG_FILELIMIT = 0x013a # v--- ---1 +-11 1-1- +TAG_GDELTA = 0x0200 ## v--- --1- +ttt tttt +TAG_GRMDELTA = 0x0230 # v--- --1- +-11 ---- +TAG_GBMAPDELTA = 0x0234 # v--- --1- +-11 -1rr +TAG_NAME = 0x0300 ## v--- --11 +ttt tttt +TAG_BNAME = 0x0300 # v--- --11 +--- ---- +TAG_REG = 0x0301 # v--- --11 +--- ---1 +TAG_DIR = 0x0302 # v--- --11 +--- --1- +TAG_STICKYNOTE = 0x0303 # v--- --11 +--- --11 +TAG_BOOKMARK = 0x0304 # v--- --11 +--- -1-- +TAG_MNAME = 0x0330 # v--- --11 +-11 ---- +TAG_STRUCT = 0x0400 ## v--- -1-- +ttt tttt +TAG_BRANCH = 0x0400 # v--- -1-- +--- --rr +TAG_DATA = 0x0404 # v--- -1-- +--- -1-- +TAG_BLOCK = 0x0408 # v--- -1-- +--- 1err +TAG_DID = 0x0420 # v--- -1-- +-1- ---- +TAG_BSHRUB = 0x0428 # v--- -1-- +-1- 1--- +TAG_BTREE = 0x042c # v--- -1-- +-1- 11rr +TAG_MROOT = 0x0431 # v--- -1-- +-11 --rr +TAG_MDIR = 0x0435 # v--- -1-- +-11 -1rr +TAG_MTREE = 0x043c # v--- -1-- +-11 11rr +TAG_BMRANGE = 0x0440 # v--- -1-- +1-- ++uu +TAG_BMFREE = 0x0440 # v--- -1-- +1-- ---- +TAG_BMINUSE = 0x0441 # v--- -1-- +1-- ---1 +TAG_BMERASED = 0x0442 # v--- -1-- +1-- --1- +TAG_BMBAD = 0x0443 # v--- -1-- +1-- --11 +TAG_ATTR = 0x0600 ## v--- -11a +aaa aaaa +TAG_UATTR = 0x0600 # v--- -11- +aaa aaaa +TAG_SATTR = 0x0700 # v--- -111 +aaa aaaa TAG_SHRUB = 0x1000 ## v--1 kkkk +kkk kkkk TAG_ALT = 0x4000 ## v1cd kkkk +kkk kkkk TAG_B = 0x0000