Skip to content

Instantly share code, notes, and snippets.

@gocha
Last active August 29, 2015 14:19
Show Gist options
  • Save gocha/da43f9ec9f5d68d1c492 to your computer and use it in GitHub Desktop.
Save gocha/da43f9ec9f5d68d1c492 to your computer and use it in GitHub Desktop.
IDA HiROM address test
.HIROM
; snes_header is actually broken
.SNESHEADER
ID "IDAX"
NAME "IDA HIROM TEST "
HIROM
FASTROM
CARTRIDGETYPE $02
ROMSIZE $0C
SRAMSIZE $01
COUNTRY $01
LICENSEECODE $33
VERSION $01
.ENDSNES
.MEMORYMAP
SLOTSIZE $10000
DEFAULTSLOT 0
SLOT 0 $0000
.ENDME
.ROMBANKSIZE $10000
.ROMBANKS 64
.SNESNATIVEVECTOR ; Define Native Mode interrupt vector table
COP $FFFF
BRK $FFFF
ABORT $FFFF
NMI $FFFF
IRQ $FFFF
.ENDNATIVEVECTOR
.SNESEMUVECTOR ; Define Emulation Mode interrupt vector table
COP $FFFF
ABORT $FFFF
NMI $FFFF
RESET Start
IRQBRK $FFFF
.ENDEMUVECTOR
.BANK 0 SLOT 0
.ORG $8000
.SECTION "SETUP" SEMIFREE
.EMPTYFILL $FF
Start:
clc
xce
sei
cld
rep #$30
ldx #$01af
txs
pea $8100
plb
plb
; ABS_LONG (RAM)
lda $000248.l ; word_7E0248
lda $0F0248.l ; word_7E0248
lda $100248.l ; word_7E0248
lda $1F0248.l ; word_7E0248
lda $200248.l ; word_7E0248
lda $2F0248.l ; word_7E0248
lda $300248.l ; word_7E0248
lda $3F0248.l ; word_7E0248
lda $800248.l ; word_7E0248
lda $8F0248.l ; word_7E0248
lda $900248.l ; word_7E0248
lda $9F0248.l ; word_7E0248
lda $A00248.l ; word_7E0248
lda $AF0248.l ; word_7E0248
lda $B00248.l ; word_7E0248
lda $BF0248.l ; word_7E0248
lda $7E0248.l ; word_7E0248
; ABS_LONG (not RAM)
; ROM
lda $400248.l ; word_C00248
lda $4F0248.l ; word_CF0248
lda $500248.l ; word_D00248
lda $5F0248.l ; word_DF0248
lda $600248.l ; word_E00248
lda $6F0248.l ; word_EF0248
lda $700248.l ; word_F00248
lda $7D0248.l ; word_FD0248
lda $7F0248.l ; word_7F0248
lda $C00248.l ; word_C00248
lda $CF0248.l ; word_CF0248
lda $D00248.l ; word_D00248
lda $DF0248.l ; word_DF0248
lda $E00248.l ; word_E00248
lda $EF0248.l ; word_EF0248
lda $F00248.l ; word_F00248
lda $FF0248.l ; word_FF0248
; ABS_LONG (I/O)
lda $004210.l ; NMI_ENABLE
lda $0F4210.l ; NMI_ENABLE
lda $104210.l ; NMI_ENABLE
lda $1F4210.l ; NMI_ENABLE
lda $204210.l ; NMI_ENABLE
lda $2F4210.l ; NMI_ENABLE
lda $304210.l ; NMI_ENABLE
lda $3F4210.l ; NMI_ENABLE
lda $804210.l ; NMI_ENABLE
lda $8F4210.l ; NMI_ENABLE
lda $904210.l ; NMI_ENABLE
lda $9F4210.l ; NMI_ENABLE
lda $A04210.l ; NMI_ENABLE
lda $AF4210.l ; NMI_ENABLE
lda $B04210.l ; NMI_ENABLE
lda $BF4210.l ; NMI_ENABLE
; ABS_LONG (not I/O)
; ROM
lda $404210.l ; word_C04210
lda $4F4210.l ; word_CF4210
lda $504210.l ; word_D04210
lda $5F4210.l ; word_DF4210
lda $604210.l ; word_E04210
lda $6F4210.l ; word_EF4210
lda $704210.l ; word_F04210
lda $7D4210.l ; word_FD4210
lda $7F4210.l ; word_7F4210
lda $C04210.l ; word_C04210
lda $CF4210.l ; word_CF4210
lda $D04210.l ; word_D04210
lda $DF4210.l ; word_DF4210
lda $E04210.l ; word_E04210
lda $EF4210.l ; word_EF4210
lda $F04210.l ; word_F04210
lda $FF4210.l ; word_FF4210
; ABS_LONG (ROM)
lda $C08248.l ; word_C08248
lda $C18248.l ; word_C18248
; ABS (RAM, I/O)
pea $0000
plb
plb
lda $0248 ; word_7E0248
lda $4210 ; NMI_ENABLE
pea $3F3F
plb
plb
lda $0248 ; word_7E0248
lda $4210 ; NMI_ENABLE
pea $8080
plb
plb
lda $0248 ; word_7E0248
lda $4210 ; NMI_ENABLE
pea $BFBF
plb
plb
lda $0248 ; word_7E0248
lda $4210 ; NMI_ENABLE
; not RAM or I/O (ROM)
pea $4040
plb
plb
lda $0248 ; word_C00248
lda $4210 ; word_C04210
pea $7D7D
plb
plb
lda $0248 ; word_FD0248
lda $4210 ; word_FD4210
pea $7F7F ; RAM
plb
plb
lda $0248 ; word_7F0248
lda $4210 ; word_7F4210
pea $C0C0
plb
plb
lda $0248 ; word_C00248
lda $4210 ; word_C04210
pea $FFFF
plb
plb
lda $0248 ; word_FF0248
lda $4210 ; word_FF4210
; ABS (ROM)
pea $4040
plb
plb
lda $8248 ; word_C08248
pea $8080
plb
plb
lda $8248 ; word_C08248
pea $C0C0
plb
plb
lda $8248 ; word_C08248
pea $C0C0
plb
plb
sep #$20
lda $8234 ; byte_C08234
lda $C09234.l ; byte_C09234
rep #$20
loc_MainLoop:
wai
bra loc_MainLoop
.ENDS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment