sm64/asm/rom_header.s

47 lines
1.2 KiB
ArmAsm
Raw Normal View History

2019-08-25 00:46:40 -04:00
/*
* Super Mario 64 ROM header
* Only the first 0x18 bytes matter to the console.
*/
.byte 0x80, 0x37, 0x12, 0x40 /* PI BSD Domain 1 register */
.word 0x0000000F /* Clockrate setting*/
2020-09-20 11:15:47 -04:00
.word entry_point /* Entrypoint */
2019-08-25 00:46:40 -04:00
/* Revision */
2021-07-12 23:17:54 -04:00
#ifdef VERSION_SH
2020-03-01 22:42:52 -05:00
.word 0x00001448
2021-07-12 23:17:54 -04:00
#elif defined(VERSION_EU)
2019-08-25 00:46:40 -04:00
.word 0x00001446
2021-07-12 23:17:54 -04:00
#else /* NTSC-U and NTSC-J 1.0 */
2019-08-25 00:46:40 -04:00
.word 0x00001444
2021-07-12 23:17:54 -04:00
#endif
2019-08-25 00:46:40 -04:00
.word 0x4EAA3D0E /* Checksum 1 */
.word 0x74757C24 /* Checksum 2 */
.word 0x00000000 /* Unknown */
.word 0x00000000 /* Unknown */
2021-07-12 23:17:54 -04:00
#ifdef VERSION_SH
2020-03-01 22:42:52 -05:00
.ascii "SUPERMARIO64 " /* Internal ROM name */
2021-07-12 23:17:54 -04:00
#else
2019-08-25 00:46:40 -04:00
.ascii "SUPER MARIO 64 " /* Internal ROM name */
2021-07-12 23:17:54 -04:00
#endif
2019-08-25 00:46:40 -04:00
.word 0x00000000 /* Unknown */
.word 0x0000004E /* Cartridge */
.ascii "SM" /* Cartridge ID */
/* Region */
2021-07-12 23:17:54 -04:00
#ifdef VERSION_EU
.ascii "P" /* PAL (Europe) */
#elif defined(VERSION_US)
2019-08-25 00:46:40 -04:00
.ascii "E" /* NTSC-U (North America) */
2021-07-12 23:17:54 -04:00
#else
2019-08-25 00:46:40 -04:00
.ascii "J" /* NTSC-J (Japan) */
2021-07-12 23:17:54 -04:00
#endif
2019-08-25 00:46:40 -04:00
2021-07-12 23:17:54 -04:00
#ifdef VERSION_SH
2020-09-20 11:15:47 -04:00
.byte 0x03 /* Version (Shindou) */
2021-07-12 23:17:54 -04:00
#else
2020-04-03 14:57:26 -04:00
.byte 0x00 /* Version */
2021-07-12 23:17:54 -04:00
#endif