Mario Paint
Talk0this wiki

Added by Kernigh
| ||||||||||||
Mario Paint has a few unusual features:
- Mario Paint takes input from the SNES mouse instead of the usual controller.
- Mario Paint allows users to draw pixels into a 16-color buffer.
- If you wait at the title screen, Mario Paint provides a very long demonstration.
Contents |
Subpages
Edit
- /address map, obtain or contribute your ROM and RAM addresses.
- /random number generator
- /transmusical string, a string that contains data for the SPC-700.
Miscellaneous
Edit
This is for stuff without a subpage.
Calling convention
Edit
Calling convention is that a subroutine might alter the values of volatile registers, but must preserve the values of nonvolatile registers.
Here is a guess after studying a few jsl subroutines.
Frequently volatile:
- Accumulator A.
Sometimes volatile:
- Index registers X and Y. Some routines preserve them, some do not.
Rarely volatile:
- Data bank.
- Direct page location.
- Processor flags.
Some jsl subroutines require no specific values data bank, direct page location, or processor flags (except that decimal mode must be off). Instead, they accept any values, temporarily switch to different values and restore the previous values before returning.
SNES header
Edit
Information from the SNES header of Mario Paint (JU):
mario-paint.sfc:
SMC header: no
SNES header: offset 0x7fc0, score: 7/9
name: "MARIOPAINT " (21 bytes)
status: 0x20 (slow LoROM)
cartridge type: 0x02 (ROM and save-RAM)
ROM size: 0x0a (1 megabyte)
RAM size: 0x05 (32 kilobytes)
country: 0x00 (NTSC)
licensee: 0x01 (Nintendo)
version: 0x00
complement/checksum: 0xb461/0x4b9e
interrupt handlers (native mode):
COP BRK ABORT NMI UNUSED IRQ
0x80ae 0x0000 0x0000 0x80d4 ------ 0x80af
interrupt handlers (emulation mode):
COP UNUSED ABORT NMI RESET IRQBRK
0x0000 ------ 0x0000 0x0000 0x8000 0x0000