As for the original question!
SEGA GENESIS VERSION = 1,046,800 bytes (0.9983 MB)
There is a header that is 512 bytes. It contains the name of the game, etc.. but it's not actually code or data of the game.
The end of the ROM's data is at 0x0FFB10 (hex), which is 1,047,312.
I didn't find any particularly big/noticeable sections of unused ROM, so we can take those values as the start and end of the game and be pretty accurate.
So the game is 1,047,312 - 512 = 1,046,800 bytes (0.9983 MB)
As wboy said, the game is on a 1MB ROM (because going to 2MB would be more expensive), and they filled it almost 100%.
Had they been allowed to use a 2MB ROM, they probably would have had colour pictures for the players, like the SNES version. Although somehow they managed to do that in 1MB on the SNES.
SNES VERSION = 1,023,146 (0.9757 MB)
The SNES version is roughly
(end: 1,047,844) - (start: 512) - (other empty: 24186) = 1,023,146 (0.9757 MB)
The "other empty space" is chunks of unused space found throughout the ROM. The way SNES ROMs are organized lends them to spreading unused bytes throughout the ROM.