Objective is to create a simple toolchain that can compile a bunch of code or data assets into a single file.
- compression
- load time
- more than 31 files per disk, and no need to load bloaty 512 byte disk catalogs
- can control disk layout order for optimum seeks
- toolchain can take a pak-config file as input, and output a TOC file. This can be directly INCBIN'd in the runtime code.
- No need for executable addresses - geared for data/overlays only
- No need for 32-bit load addresses - not for tube compatible systems
- 31 files in DFS requires a 512 byte catalog
- Support 64Kb PAK file maximum size means sector offsets can be 1 byte rather than 2, but will require support for multiple PAK files to be mounted
- Add option to flag a pak'd file as pucrunch compressed? (for auto unpack)
- 8 bytes - Filename
- 2 bytes - File Load address
- 2 bytes - File length in bytes (top byte is length in sectors minus 1)
- 2 bytes - File offset into PAK file in sectors (will be 2 bytes if PAK files larger than 64Kb are supported)
Total 14 bytes per file = 31 files = 434 bytes
pakfile_mount() - will need to use FS to find the file initially and determine it's sector offset on the disk at runtime pakfile_load() - load a subfile from within the pak file to load address
- Build/assemble/compress all the "assets" (code and/or data)
- compile the assets into pak form
- runtime mounts the pakfile
- route all loading through pakfile system (yet to be written)