ry755 wrote: ↑Sun Jan 21, 2018 5:32 am
But while PrintHexByte prints out the correct number, using SetTile prints the wrong tile.
So my question is, how can I store Tile IDs in a .bin file that can then be printed to the screen using SetTile?
In Mode3 tiles are offset with RAM_TILES_COUNT. That is, when you request tile zero with SetTile, it will actually write 0 + RAM_TILES_COUNT in the VRAM. This may be a source of confusion when designing, particularly when accessing vram directly for speed.
My bootloader API library's limitations are performance (it is much slower than SdSimple) and that it loads full 512 byte sectors (I might remedy the latter later, it is possible to create a load function which only puts a range from a sector in RAM, discarding the rest, while still calculating and checking CRC). But currently only that can handle all SD cards and filesystems which the new bootloader is capable to do. You can roughly expect it to process one sector in one video frame's VBlank (taking the entire VBlank time when you have no sprites).
(It isn't smaller by the way than an old MMC + FAT16 SD library since it has one contained, but it is much smaller than an SDHC + FAT32 + Fragmentation supporting library as it takes those features from the bootloader)
Audio sure gives some life to the game! However right now as I see, the player may stop in mid-air over the door before falling down onto the platform, ending the level.