2019-08-25 00:46:40 -04:00
|
|
|
/*
|
|
|
|
|
* Super Mario 64 ROM header
|
|
|
|
|
* Only the first 0x18 bytes matter to the console.
|
|
|
|
|
*/
|
2021-07-12 16:56:36 +01:00
|
|
|
#include "config.h"
|
2019-08-25 00:46:40 -04:00
|
|
|
.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 */
|
2020-12-08 19:28:12 -05:00
|
|
|
.word 0x0000144C
|
2019-08-25 00:46:40 -04:00
|
|
|
|
2020-12-08 19:28:12 -05:00
|
|
|
.word 0x00000000 /* Checksum 1 */
|
|
|
|
|
.word 0x00000000 /* Checksum 2 */
|
2019-08-25 00:46:40 -04:00
|
|
|
.word 0x00000000 /* Unknown */
|
|
|
|
|
.word 0x00000000 /* Unknown */
|
2021-07-12 16:56:36 +01:00
|
|
|
.ascii INTERNAL_ROM_NAME /* Internal ROM name */
|
2023-09-06 13:15:29 -07:00
|
|
|
#if defined(EMU_DEFAULT_TO_GCN)
|
2022-11-03 03:52:19 -04:00
|
|
|
/* Advanced homebrew ROM header bytes: https://n64brew.dev/wiki/ROM_Header#Advanced_Homebrew_ROM_Header */
|
|
|
|
|
.word 0x82000000
|
|
|
|
|
#else
|
2019-08-25 00:46:40 -04:00
|
|
|
.word 0x00000000 /* Unknown */
|
2022-11-03 03:52:19 -04:00
|
|
|
#endif
|
2019-08-25 00:46:40 -04:00
|
|
|
.word 0x0000004E /* Cartridge */
|
2023-09-06 13:15:29 -07:00
|
|
|
#if defined(EEP4K) && !defined(EMU_DEFAULT_TO_GCN)
|
2022-03-27 10:39:44 +08:00
|
|
|
.ascii "SM" /* Cartridge ID */
|
|
|
|
|
#else
|
2021-08-16 17:41:27 +01:00
|
|
|
.ascii "ED" /* Cartridge ID */
|
2022-03-27 10:39:44 +08:00
|
|
|
#endif
|
2019-08-25 00:46:40 -04:00
|
|
|
|
|
|
|
|
/* Region */
|
2021-08-19 15:52:32 +01:00
|
|
|
#if defined(VERSION_JP) || defined(VERSION_SH)
|
2019-08-25 00:46:40 -04:00
|
|
|
.ascii "J" /* NTSC-J (Japan) */
|
2021-08-16 17:41:27 +01:00
|
|
|
#else
|
|
|
|
|
.ascii "E" /* NTSC-U (North America) */
|
2021-07-12 23:17:54 -04:00
|
|
|
#endif
|
2021-12-30 10:57:51 -06:00
|
|
|
|
2021-09-03 10:05:17 +01:00
|
|
|
#if defined(SRAM)
|
2021-09-10 14:18:23 +01:00
|
|
|
.byte 0x32 /* Version */
|
2021-09-03 10:05:17 +01:00
|
|
|
#elif defined(EEP16K)
|
2021-09-10 14:18:23 +01:00
|
|
|
.byte 0x22 /* Version */
|
2021-09-03 10:05:17 +01:00
|
|
|
#elif defined(SRAM768K)
|
2021-09-10 14:18:23 +01:00
|
|
|
.byte 0x42 /* Version */
|
2021-09-03 10:05:17 +01:00
|
|
|
#elif defined(FLASHRAM)
|
2021-09-10 14:18:23 +01:00
|
|
|
.byte 0x52 /* Version */
|
2021-09-03 10:05:17 +01:00
|
|
|
#else
|
2021-09-10 14:18:23 +01:00
|
|
|
.byte 0x12 /* Version */
|
2021-09-03 10:05:17 +01:00
|
|
|
#endif
|