Standard Interrupt Vector Table?

Discussion of hardware and software development for Super NES and Super Famicom.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Post Reply

Standard Interrupt Vector Table?

Post by Guest » Sat Jul 23, 2005 3:37 pm


I posted this on another forum, but I figured the more sources for different answers would be better for verification, opinions, and stuff like that. Anyway, here I go, hopefully someone on here may know the answers to my questions (thanks in advance).

So, I was reading about interrupts on Wikipedia. I Haven't messed around with snes / 65c816 coding in a while, but it got me thinking about interrupt vector tables.

When you're coding an SNES game, are there standard interrupt vector types that SNES or ZSNES emulator expects to be in the interrupt table?? Like are they actually required so that the ROM code will load up, or is it just good programming practice to have them? And more importantly, what would these standard vectors be (or is there too many to list?) Reset/Power On? I can't think of any other examples/types, help me out here. Maybe some that have to do with the SPC700? I dunno.

Another thing, can those interrupt vector addresses be any address location that you specify, or is there a standard or even required location? I guess reset woud be $0000 or something? Err, my homebrew coding knowledge is somewhere around basic and a little rusty right now, but don't be afraid to go into the last details, the more the better lol.

Posts: 1
Joined: Sat Jul 23, 2005 3:32 pm

Post by FistOfFury » Sat Jul 23, 2005 3:38 pm

Uggh, that was supposed to be me, for some reason it didn't log me in or something, or at least I thought I was logged in lol

Posts: 21936
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)

Post by tepples » Sat Jul 23, 2005 3:41 pm

Reset has to point somewhere in the first bank of ROM. IRQ and NMI only need to be defined once you've turned on IRQ/NMI generation in the console hardware (and in the case of IRQ, cleared the IRQ-disable flag using 'cli'), so they can be in the first bank of ROM or low RAM.

Post Reply