ROM Header Panel

Every Sega Genesis ROM consists of a two-part header. The first part is the vector table, which is $100 bytes long. The second part contains information about the cartridge, and is also $100 bytes long.

The vector table consists of 64 4-byte fields, each with an address. It could be handled as a text box with 64 fields.

The second part contains many data fields, so it would be ideal to put them all into a single panel, with text boxes for each field. Here are the sections, in order:
 * 1) A 16-byte string saying "SEGA GENESIS" or "SEGA MEGA DRIVE".  The rest is padded with spaces.  In the panel, this is controlled by radio buttons.
 * 2) A 16-bit field with the firm name and the build date.  Example:  "(C) SEGA 2014.SEP".  The firm name can be controlled by a 4-character text field;  the year is done the same way.  The month is controlled by a scrollable list.
 * 3) A 48-byte field telling the game's domestic name.  It's controlled by a 16*3 text box.
 * 4) A 48-byte field telling the game's international name.  It's also controlled by a 16*3 text box.
 * 5) Program type and serial number.  The first two characters are "GM" or "AL" (controlled by radio buttons).  After that is a space, and an 8-digit serial number.  Following that is a dash and the version number.  That's 14 characters.
 * 6) The checksum.  This is two bytes.  Put whatever you want, or let the compiler do it for you.
 * 7) The I/O device support list.  There is usually a "J" for joypad support.  It's 16 bytes long.
 * 8) ROM Start.  It's a 4-byte value.  Always make it $00000000.
 * 9) ROM End.  It's a 4-byte value.
 * 10) RAM Start.  A 4-byte value.  Usually, you would put $00FF0000 here.
 * 11) RAM End.  A 4-byte value.  Usually, you would put $00FFFFFF here.
 * 12) Information for Backup RAM.  This is a 4-byte field.  If there is none, put all spaces here.
 * 13) Backup RAM Start.  It's a 4-byte value.
 * 14) Backup RAM End.  It's a 4-byte value.
 * 15) Modem support information.  A 12-byte field.
 * 16) Memo.  It's a 48-byte long field. Just put whatever you want here.
 * 17) Country codes.  It's a 16-byte field.  Usually, you might put "JUE" here.  In that field, J = Japan, U = United States, and E = Europe.  The rest of the field is padded with spaces.