68k program header: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
m (Created page with "ROM header templates. == For cartridge systems == <pre> org $0100 dc.b "NEO-GEO",$00 dc.w $0052 ; NGH Number in BCD (0052 is ssideki) dc.l $00080000 …")
 
mNo edit summary
Line 112: Line 112:
     dc.b    $14,$13,$24,$01
     dc.b    $14,$13,$24,$01
</pre>
</pre>
[[Category:CPUs]]
[[Category:Code]]

Revision as of 07:45, 8 March 2011

ROM header templates.

For cartridge systems

    org $0100
    dc.b "NEO-GEO",$00

    dc.w $0052        ; NGH Number in BCD (0052 is ssideki)
    dc.l $00080000    ; ?
    dc.l $00100000    ; ?
    dc.w $0000

    org $0114
    dc.b $01          ; Bootscreen flag ($00 skips it)
    dc.b $1B          ; First tile number of the NeoGeo logo in the C ROM
    dc.l JPConfig     ; Japanese config menu pointer
    dc.l ENConfig     ; English config menu pointer
    dc.l EUConfig     ; European config menu pointer

    jmp        Start
    jmp        Start
    jmp        Start
    jmp        Start  ; Not used ?

    dc.l $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
    dc.l $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
    dc.l $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
    dc.l $FFFFFFFF,$FFFFFFFF,$FFFFFFFF,$FFFFFFFF
    dc.l $FFFFFFFF,$FFFFFFFF

    dc.l $00000186    ; Security code pointer ?

    org $186          ; ???
    dc.l $76004A6D,$0A146600,$003C206D,$0A043E2D
    dc.l $0A0813C0,$00300001,$32100C01,$00FF671A
    dc.l $30280002,$B02D0ACE,$66103028,$0004B02D
    dc.l $0ACF6606,$B22D0AD0,$67085088,$51CFFFD4
    dc.l $36074E75,$206D0A04,$3E2D0A08,$3210E049
    dc.l $0C0100FF,$671A3010,$B02D0ACE,$66123028
    dc.l $0002E048,$B02D0ACF,$6606B22D,$0AD06708
    dc.l $588851CF,$FFD83607
    dc.w $4e75

    ; Configuration menu layouts (soft DIPs), format unknown...
 JPConfig:
    dc.b    "0123456789ABCDEF"      ; Game name
    dc.l    $FFFFFFFF               ; Pointer ?
    dc.w    $0364                   ; ?
    dc.b    $14,$13,$24,$01

 ENConfig:
    dc.b    "0123456789ABCDEF"      ; Game name
    dc.l    $FFFFFFFF               ; Pointer ?
    dc.w    $0364                   ; ?
    dc.b    $14,$13,$24,$01

 EUConfig:
    dc.b    "0123456789ABCDEF"      ; Game name
    dc.l    $FFFFFFFF               ; Pointer ?
    dc.w    $0364                   ; ?
    dc.b    $14,$13,$24,$01

For CD systems

    org     $100
    dc.b    "NEO-GEO", $02          ; Magic bytes, CDDA Flag
    dc.w    $1234                   ; NGH number
    dc.l    $00500000               ; ? Value in Metal Slug 2
    dc.l    $0010F000               ; Pointer to debugging switch (?)
    dc.w    $007A                   ; Starting sprite number (?)
    dc.w    $00A1                   ; ?

    dc.l    JPConfig
    dc.l    ENConfig
    dc.l    SPConfig

    org     $122
    jmp     Start
    jmp     Generic
    jmp     Generic                 ; Never used ?
    jmp     Generic                 ; Never used ?

    org     $13A

    dc.w    $0000                   ; Z80 RAM address for CDDA commands

Generic:
    rte
    rts

    org     $184

    ; Configuration menu layouts (soft DIPs), format unknown...
 JPConfig:
    dc.b    "0123456789ABCDEF"      ; Game name
    dc.l    $FFFFFFFF               ; Pointer ?
    dc.w    $0364                   ; ?
    dc.b    $14,$13,$24,$01

 ENConfig:
    dc.b    "0123456789ABCDEF"      ; Game name
    dc.l    $FFFFFFFF               ; Pointer ?
    dc.w    $0364                   ; ?
    dc.b    $14,$13,$24,$01

 EUConfig:
    dc.b    "0123456789ABCDEF"      ; Game name
    dc.l    $FFFFFFFF               ; Pointer ?
    dc.w    $0364                   ; ?
    dc.b    $14,$13,$24,$01