Research / Megadrive Programming / ROM header

$000-$0FF - Vectors


$00 - Stack pointer
$04 - Code start
$08 - Bus error
$0C - Address error
$10 - Illegal instruction
$14 - Divistion by zero
$18 - CHK exception
$1C - TRAPV exception
$20 - Privilege violation
$24 - TRACE exeption
$28 - LINE 1010 EMULATOR
$2C - LINE 1111 EMULATOR
$30-$5F - Reserved by Motorola
$60 - Spurious exception
$64 - Interrupt request level 1
$68 - Interrupt request level 2
$6C - Interrupt request level 3
$70 - Interrupt request level 4 (VDP interrupt / Horizontal blank)
$74 - Interrupt request level 5
$78 - Interrupt request level 6 (Vertical blank)
$7C - Interrupt request level 7
$80 - TRAP #00 exception
$84 - TRAP #01 exception
$88 - TRAP #02 exception
$8C - TRAP #03 exception
$90 - TRAP #04 exception
$94 - TRAP #05 exception
$98 - TRAP #06 exception
$9C - TRAP #07 exception
$A0 - TRAP #08 exception
$A4 - TRAP #09 exception
$A8 - TRAP #10 exception
$AC - TRAP #11 exception
$B0 - TRAP #12 exception
$B4 - TRAP #13 exception
$B8 - TRAP #14 exception
$BC - TRAP #15 exception
$C0-$FF - Reserved by Motorola

$100-$10F - Console name (usually 'SEGA MEGA DRIVE ' or 'SEGA GENESIS ')
$110-$11F - Release date (usually '(C)XXXX YYYY.MMM'
where XXXX is the company code, YYYY is the year and MMM - month)
$120-$14F - Domestic name
$150-$17F - International name
$180-$18D - Version ('XX YYYYYYYYYYYY' where XX is the game type and YY the game code)
$18E-$18F - Checksum (for info how to calculate checksum go HERE)
$190-$19F - I/O support
$1A0-$1A3 - ROM start
$1A4-$1A7 - ROM end
$1A8-$1AB - RAM start (usually $00FF0000)
$1AC-$1AF - RAM end (usually $00FFFFFF)
$1B0-$1B2 - 'RA' and $F8 enables SRAM.
$1B3 - unused ($20)
$1B4-$1B7 - SRAM start (default $00200000)
$1B8-$1BB - SRAM end (default $0020FFFF)
$1BC-$1FF - Notes (unused)


Back | Printer friendly
<< 1. 68000 memory map | 3. Genesis security >>

© 2004, 2005 drx, www.hacking-cult.org. Don't copy without permission yadda yadda yadda.