Difference between revisions of "Namco Museum Megamix"

From The VG Resource Wiki
Jump to: navigation, search
(File Formats)
(File Formats)
Line 1: Line 1:
= File Formats =
 
 
=== Note: ===
 
=== Note: ===
 
All formats are in little endian, unlike the rest of the Wii Standard Formats (.brres, .brtex, .brsar, etc.)
 
All formats are in little endian, unlike the rest of the Wii Standard Formats (.brres, .brtex, .brsar, etc.)
 +
 +
= File Formats =
  
 
* .lzs: A compressed format using the lzss0 algorithm [https://github.com/gameCrackTools/quickBMS/blob/master/src/included/lzss.c A LZSS implementation in C]<br><br>
 
* .lzs: A compressed format using the lzss0 algorithm [https://github.com/gameCrackTools/quickBMS/blob/master/src/included/lzss.c A LZSS implementation in C]<br><br>

Revision as of 20:33, 27 July 2023

Note:

All formats are in little endian, unlike the rest of the Wii Standard Formats (.brres, .brtex, .brsar, etc.)

File Formats

  • .lzs: A compressed format using the lzss0 algorithm A LZSS implementation in C

  • .arc: An uncompressed container format utilizing a table of offsets to file entries (Different from the Wii U8 .arc archive)

.lzs (compressed)

a C-struct implementation

typedef struct lzs_header {
  char magic[4]; // = "SSZL"
  int zero;      // = 0
  int zsize;     // size of compressed data
  int size;      // size of uncompressed data
} lzs_header_t;
typedef struct lzs_file {
  lzs_header_t header;
  char zdata[header.zsize]; // compressed data stream
} lzs_file_t;

.arc (container)

A C-struct implementation

typedef struct arc_header {
  char magic[4];    // = "VCRA"
  int file_count;   // how many stored files in archive
  int size;         // size of the whole file
  int zero;         // = 0
  int unknown;      // = "\x05\x02\x07\x20", 0x20070205
  char padding[44]; // 44 zeroes
} arc_header_t;
typedef struct arc_table {
  int offset;    // offset to file data
  int size;      // size of file data
  char name[56]; // filename
} arc_table_t;
typedef struct arc_file {
  arc_header_t header;
  arc_table_t tables[header.file_count];
  char *data[header.file_count]; // raw file streams
} arc_file_t;

Disc Structure

.
├── museum
│   ├── en
│   │   ├── boot.lzs
│   │   ├── g00_dummy
│   │   │   └── g00resident.lzs
│   │   ├── g01_galaga
│   │   │   ├── g01menu.lzs
│   │   │   ├── g01resident.lzs
│   │   │   ├── g01stage01.lzs
│   │   │   ├── g01stage02.lzs
│   │   │   ├── g01stage03.lzs
│   │   │   ├── g01stage04.lzs
│   │   │   ├── g01stage05.lzs
│   │   │   ├── g01stage06.lzs
│   │   │   ├── g01stage07.lzs
│   │   │   ├── g01stage08.lzs
│   │   │   ├── g01stage09.lzs
│   │   │   ├── g01stage10.lzs
│   │   │   ├── g01stagexx.lzs
│   │   │   ├── g01world01.lzs
│   │   │   ├── g01world02.lzs
│   │   │   └── g01world03.lzs
│   │   ├── g02_rallyx
│   │   │   ├── g02game.lzs
│   │   │   ├── g02menu.lzs
│   │   │   ├── g02resident.lzs
│   │   │   ├── g02w01s01.lzs
│   │   │   ├── g02w01s02.lzs
│   │   │   ├── g02w01s03.lzs
│   │   │   ├── g02w01s04.lzs
│   │   │   ├── g02w01s05.lzs
│   │   │   ├── g02w01s06.lzs
│   │   │   ├── g02w02s01.lzs
│   │   │   ├── g02w02s02.lzs
│   │   │   ├── g02w02s03.lzs
│   │   │   ├── g02w02s04.lzs
│   │   │   ├── g02w02s05.lzs
│   │   │   ├── g02w02s06.lzs
│   │   │   ├── g02w03s01.lzs
│   │   │   ├── g02w03s02.lzs
│   │   │   ├── g02w03s03.lzs
│   │   │   ├── g02w03s04.lzs
│   │   │   ├── g02w03s05.lzs
│   │   │   ├── g02w03s06.lzs
│   │   │   ├── g02w04s01.lzs
│   │   │   ├── g02w04s02.lzs
│   │   │   ├── g02w04s03.lzs
│   │   │   ├── g02w04s04.lzs
│   │   │   ├── g02w04s05.lzs
│   │   │   ├── g02w04s06.lzs
│   │   │   ├── g02w11s01.lzs
│   │   │   ├── g02w11s02.lzs
│   │   │   ├── g02w11s03.lzs
│   │   │   ├── g02w11s04.lzs
│   │   │   ├── g02w11sxx.lzs
│   │   │   └── g02wxxsxx.lzs
│   │   ├── g03_pacnroll
│   │   │   ├── g03menu.lzs
│   │   │   ├── g03resident.lzs
│   │   │   ├── g03w01s01.lzs
│   │   │   ├── g03w01s02.lzs
│   │   │   ├── g03w01s03.lzs
│   │   │   ├── g03w01s04.lzs
│   │   │   ├── g03w01s05.lzs
│   │   │   ├── g03w02s01.lzs
│   │   │   ├── g03w02s02.lzs
│   │   │   ├── g03w02s03.lzs
│   │   │   ├── g03w02s04.lzs
│   │   │   ├── g03w03s01.lzs
│   │   │   ├── g03w03s02.lzs
│   │   │   ├── g03w03s03.lzs
│   │   │   ├── g03w03s04.lzs
│   │   │   ├── g03w03s05.lzs
│   │   │   ├── g03w04s01.lzs
│   │   │   ├── g03w04s02.lzs
│   │   │   ├── g03w04s03.lzs
│   │   │   ├── g03w04s04.lzs
│   │   │   ├── g03w04s05.lzs
│   │   │   ├── g03w04s06.lzs
│   │   │   ├── g03w05s01.lzs
│   │   │   ├── g03w05s02.lzs
│   │   │   ├── g03w05s03.lzs
│   │   │   ├── g03w05s04.lzs
│   │   │   ├── g03w05s05.lzs
│   │   │   ├── g03w05s06.lzs
│   │   │   ├── g03wXXs01.lzs
│   │   │   ├── g03wXXs02.lzs
│   │   │   ├── g03wXXs03.lzs
│   │   │   └── g03wXXs04.lzs
│   │   ├── g04_waniwani
│   │   │   ├── g04resident2.lzs
│   │   │   ├── g04resident3.lzs
│   │   │   └── g04resident.lzs
│   │   ├── g07_motos
│   │   │   ├── g07enemy.lzs
│   │   │   ├── g07menu.lzs
│   │   │   ├── g07resident.lzs
│   │   │   ├── g07vs01.lzs
│   │   │   ├── g07vs02.lzs
│   │   │   ├── g07vs03.lzs
│   │   │   ├── g07vs04.lzs
│   │   │   ├── g07vs05.lzs
│   │   │   ├── g07vs06.lzs
│   │   │   ├── g07vs07.lzs
│   │   │   ├── g07vs08.lzs
│   │   │   ├── g07vs09.lzs
│   │   │   ├── g07vs10.lzs
│   │   │   ├── g07w01s01.lzs
│   │   │   ├── g07w01s02.lzs
│   │   │   ├── g07w01s03.lzs
│   │   │   ├── g07w01s04.lzs
│   │   │   ├── g07w01s05.lzs
│   │   │   ├── g07w01s06.lzs
│   │   │   ├── g07w01s07.lzs
│   │   │   ├── g07w02s01.lzs
│   │   │   ├── g07w02s02.lzs
│   │   │   ├── g07w02s03.lzs
│   │   │   ├── g07w02s04.lzs
│   │   │   ├── g07w02s05.lzs
│   │   │   ├── g07w02s06.lzs
│   │   │   ├── g07w02s07.lzs
│   │   │   ├── g07w03s01.lzs
│   │   │   ├── g07w03s02.lzs
│   │   │   ├── g07w03s03.lzs
│   │   │   ├── g07w03s04.lzs
│   │   │   ├── g07w03s05.lzs
│   │   │   ├── g07w03s06.lzs
│   │   │   ├── g07w03s07.lzs
│   │   │   ├── g07w04s01.lzs
│   │   │   ├── g07w04s02.lzs
│   │   │   ├── g07w04s03.lzs
│   │   │   ├── g07w04s04.lzs
│   │   │   ├── g07w04s05.lzs
│   │   │   ├── g07w04s06.lzs
│   │   │   ├── g07w04s07.lzs
│   │   │   ├── g07w05s01.lzs
│   │   │   ├── g07w05s02.lzs
│   │   │   ├── g07w05s03.lzs
│   │   │   ├── g07w05s04.lzs
│   │   │   ├── g07w05s05.lzs
│   │   │   ├── g07w05s06.lzs
│   │   │   ├── g07w05s07.lzs
│   │   │   └── g07wxxsxx.lzs
│   │   ├── g10_menu
│   │   │   ├── attract.thp
│   │   │   ├── g10menu.lzs
│   │   │   ├── g10resident.lzs
│   │   │   └── g10title.lzs
│   │   ├── rso_original
│   │   │   ├── nmwii.rso
│   │   │   └── nmwii.sel
│   │   ├── sound
│   │   │   ├── stream
│   │   │   │   ├── DAMMY.brstm
│   │   │   │   ├── m00bgm_Menu.brstm
│   │   │   │   ├── m00bgm_Title.brstm
│   │   │   │   ├── m01bgm_Boss1.brstm
│   │   │   │   ├── m01bgm_Select.brstm
│   │   │   │   ├── m01bgm_World1.brstm
│   │   │   │   ├── m01bgm_World2.brstm
│   │   │   │   ├── m01bgm_World3.brstm
│   │   │   │   ├── m02bgm_redcar.brstm
│   │   │   │   ├── m02bgm_select.brstm
│   │   │   │   ├── m02bgm_World1.brstm
│   │   │   │   ├── m02bgm_world2.brstm
│   │   │   │   ├── m02bgm_world3.brstm
│   │   │   │   ├── m02bgm_world4.brstm
│   │   │   │   ├── m03bgm_Boss1.brstm
│   │   │   │   ├── m03bgm_Boss2.brstm
│   │   │   │   ├── m03bgm_Ending.brstm
│   │   │   │   ├── m03bgm_Goal.brstm
│   │   │   │   ├── m03bgm_select.brstm
│   │   │   │   ├── m03bgm_World1.brstm
│   │   │   │   ├── m03bgm_World2.brstm
│   │   │   │   ├── m03bgm_World3_2.brstm
│   │   │   │   ├── m03bgm_World3.brstm
│   │   │   │   ├── m03bgm_World4.brstm
│   │   │   │   ├── m03bgm_world5.brstm
│   │   │   │   ├── m04bgm_Game1.brstm
│   │   │   │   ├── m04bgm_Game2.brstm
│   │   │   │   ├── m04bgm_Select.brstm
│   │   │   │   ├── m07bgm_Boss1.brstm
│   │   │   │   ├── m07bgm_Boss2.brstm
│   │   │   │   ├── m07bgm_Select.brstm
│   │   │   │   ├── m07bgm_World1.brstm
│   │   │   │   ├── m07bgm_World2.brstm
│   │   │   │   └── m07bgm_World5.brstm
│   │   │   └── Wii_Wander.brsar
│   │   └── staffroll.lzs
│   ├── resident.arc
│   └── resource.lzs
└── opening.bnr