You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
* Implemented native Gamecube controller support and corresponding emulator hint in ROM header * Added X and Y buttons to VALID_BUTTONS in sm64.h * Added workaround in controller type detection for mupen bug * read GC controllers from port 2 * L to Z logic for GC controller uses a threshold * Changed threshold for L trig to around 33% Changed threshold based on feedback * Added gGamecubeControllerPort * fixed wrong check * Bugfix: Game crashes when less than 2 controllers are connected * Suppress compiler warnings * Bugfix: button swapping still takes place on non-GC controllers * Wrap port 2 stuff in console check aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa * GC console check * Funny emulator crash moment * block comment moment * Added centering for the gamecube controller, support reset command (#511) * Added centering for the gamecube controller, support reset command * Use struct 'ControllerCenters' for 'gGamecubeControllerCenters' * Store gamecube controller centers per controller * Clamp GC controller stick values to s8 * the formatting changes Co-authored-by: Mr-Wiseguy <mrwiseguyromhacking@gmail.com> Co-authored-by: Reonu <danileon95@gmail.com> Co-authored-by: Denis Kopyrin <aglab3@gmail.com>
49 lines
1.5 KiB
ArmAsm
49 lines
1.5 KiB
ArmAsm
/*
|
|
* Super Mario 64 ROM header
|
|
* Only the first 0x18 bytes matter to the console.
|
|
*/
|
|
#include "config.h"
|
|
.byte 0x80, 0x37, 0x12, 0x40 /* PI BSD Domain 1 register */
|
|
.word 0x0000000F /* Clockrate setting*/
|
|
.word entry_point /* Entrypoint */
|
|
|
|
/* Revision */
|
|
.word 0x0000144C
|
|
|
|
.word 0x00000000 /* Checksum 1 */
|
|
.word 0x00000000 /* Checksum 2 */
|
|
.word 0x00000000 /* Unknown */
|
|
.word 0x00000000 /* Unknown */
|
|
.ascii INTERNAL_ROM_NAME /* Internal ROM name */
|
|
#if defined(USE_GAMECUBE_CONTROLLER)
|
|
/* Advanced homebrew ROM header bytes: https://n64brew.dev/wiki/ROM_Header#Advanced_Homebrew_ROM_Header */
|
|
.word 0x82000000
|
|
#else
|
|
.word 0x00000000 /* Unknown */
|
|
#endif
|
|
.word 0x0000004E /* Cartridge */
|
|
#if defined(EEP4K) && !defined(USE_GAMECUBE_CONTROLLER)
|
|
.ascii "SM" /* Cartridge ID */
|
|
#else
|
|
.ascii "ED" /* Cartridge ID */
|
|
#endif
|
|
|
|
/* Region */
|
|
#if defined(VERSION_JP) || defined(VERSION_SH)
|
|
.ascii "J" /* NTSC-J (Japan) */
|
|
#else
|
|
.ascii "E" /* NTSC-U (North America) */
|
|
#endif
|
|
|
|
#if defined(SRAM)
|
|
.byte 0x32 /* Version */
|
|
#elif defined(EEP16K)
|
|
.byte 0x22 /* Version */
|
|
#elif defined(SRAM768K)
|
|
.byte 0x42 /* Version */
|
|
#elif defined(FLASHRAM)
|
|
.byte 0x52 /* Version */
|
|
#else
|
|
.byte 0x12 /* Version */
|
|
#endif
|