Hello everyone,
I joined up because I've been researching up on how the NES works. I never really appreciated the hardware before, but now that I've been reading up on the system, I'm really impressed by how it works.
Anyway, I know that with various mappers, you can extend the capabilities of the Nintendo. And I'm really stumped at how Capcom implemented the scrolling features found in Mega Man 4, specifically Dustman's stage.
http://www.youtube.com/watch?v=VRVSWJsKsck (Starts around 1:45)
Looking at the nametable viewers in FCEUX, I can see that the moving pillars is just the background being scrolled. However, the bottom of the screen is fixed.
From what I've read up, I'm assuming that an IRQ interrupt is being called and thus is causing the CPU/PPU to draw a different part of the nametable.
What I don't get is how the collision detection works. So, my best guess is that up until the IRQ interrupt, Mega Man's collision detection hitpoints look up X + OffsetX, Y + OffsetY, and after the IRQ interrupt, OffsetX and OffsetY change to different locations within the nametable. OffsetX and Y would also be used to determine what tiles to draw onto the screen.
In a dumbed down sense, is this how Mega Man 4 with the MMC3 mapper work?
I joined up because I've been researching up on how the NES works. I never really appreciated the hardware before, but now that I've been reading up on the system, I'm really impressed by how it works.
Anyway, I know that with various mappers, you can extend the capabilities of the Nintendo. And I'm really stumped at how Capcom implemented the scrolling features found in Mega Man 4, specifically Dustman's stage.
http://www.youtube.com/watch?v=VRVSWJsKsck (Starts around 1:45)
Looking at the nametable viewers in FCEUX, I can see that the moving pillars is just the background being scrolled. However, the bottom of the screen is fixed.
From what I've read up, I'm assuming that an IRQ interrupt is being called and thus is causing the CPU/PPU to draw a different part of the nametable.
What I don't get is how the collision detection works. So, my best guess is that up until the IRQ interrupt, Mega Man's collision detection hitpoints look up X + OffsetX, Y + OffsetY, and after the IRQ interrupt, OffsetX and OffsetY change to different locations within the nametable. OffsetX and Y would also be used to determine what tiles to draw onto the screen.
In a dumbed down sense, is this how Mega Man 4 with the MMC3 mapper work?