Skip to content

ROM Size 0x80000000? Or 0?

Technical discussion about the VGM format, and all the software you need to handle VGM files.

Moderator: Staff

  • Quantam Offline
  • Posts: 24
  • Joined: 2020-03-05, 9:25:23

ROM Size 0x80000000? Or 0?

Post by Quantam »

In the Soldam_(Jaleco_Mega_System_1) pack, the following data blocks sequence can be found: 67 66 8b 08 00 00 80 00 00 04 00 00 00 00 00. What am I to make of the data size of 0x80000008? 8 of that is the subheader for the ROM write, leaving 0x80000000. This game appears to use 2 Oki M6295s, so I might hypothesize that the high bit means it's the ROM for the second chip, but that leaves me with a ROM data size of 0, which is clearly incorrect as data follows the ROM write subheader.
  • User avatar
  • ValleyBell Offline
  • Posts: 4768
  • Joined: 2011-12-01, 20:20:07
  • Location: Germany

Post by ValleyBell »

Data size 0x80000008 indeed means "size 0x08, 2nd chip". (I guess that I also forget to document this.)
The size includes the ROM header, which is 8 bytes and followed by the actual data that is to be loaded into the ROM space.

In this case, the data block has: data size 0x08, ROM size 0x40000, start offset 0x00, [no actual payload].
This effectively means that it will just allocate the 256 KB of ROM space for the second OKI chip and not fill it with any data.
  • Quantam Offline
  • Posts: 24
  • Joined: 2020-03-05, 9:25:23

Post by Quantam »

Ah, I see. I thought there was ROM data following, as there was apparent 4-byte structures, but it looks like it's just repeats of 54 xx xx 7x which make sense for the chips the game uses..
Post Reply