====== Mozaïc ====== [[https://www.youtube.com/watch?v=YygmFM3qP8w]] ===== Install on Wine ===== This game makes heavy use of the Indeo 5 codec so make sure to install it. Ideally, use a 32-bit prefix and pretend you're Windows XP or 98. export WINEARCH=win32 export WINEPREFIX=~/.wine32 winetricks -q icodecs wine /mnt/cdrom/Mozaic.exe ===== PAK file format ===== Data is in little-endian. Similar to Quake. ^Nom^Type^Offset^Size^Notes^ |magic|string|0|4 bytes|"PACK"| |size|u32|4|4 bytes|Number of entries| |???| |8|32 bytes|Unknown| |filelist|File|40|size * (12 + name)| | ==== File ==== ^Nom^Type^Offset^Size^Notes^ |filesize|u32|0|4 bytes| | |offset|u32|4|4 bytes|Byte offset from the beginning of the file| |???|u32|8|4 bytes|Unknown| |name|Null-terminated string|12| |File path and name| ==== ImHex pattern ==== import std.string; struct File { u32 filesize; u32 offset; u32 unknown; std::string::NullString name; char data[filesize] @ offset; }; char magic[4] @ 0; u32 size @ 4; char unknown[32] @ 8; File filelist[size] @ 40;