Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
(4 edits)

No, I love great questions!  Yes exactly 1 Byte per block.  1 Byte for the key block and header.  I basically search through each Byte for the header flag. When I find one I loop that 122 more times, it then stops at header 123 and then loads the blocks after it until the next header/keyblock byte.  If you're curious I have a header byte for level 10001 so that it knows how to load level 10000 :). You might think that it's slow to do that, but it's about 1300ish levels in each rom bank and I have constants to determine which rom bank to search based on which level is being loaded.  So at most it takes maybe half a second to find the correct level to load.  I think my largest level is 16 blocks but I can't remember with 100% certainty.