Talk:RAMBO-1: Difference between revisions
From NESdev Wiki
Jump to navigationJump to search
m (→IRQ related - Hard Drivin': Added a few details to be clear.) |
(→lternate IRQ timing: new section) |
||
Line 17: | Line 17: | ||
Hard Drivin' works. --[[User:Zepper|Zepper]] ([[User talk:Zepper|talk]]) 17:57, 14 January 2014 (MST) | Hard Drivin' works. --[[User:Zepper|Zepper]] ([[User talk:Zepper|talk]]) 17:57, 14 January 2014 (MST) | ||
== lternate IRQ timing == | |||
This is an hack to get 3 games working: Klax, Skull&Crossbones and Hard Drvin'. | |||
'''When the IRQ is clocked by CPU or scanline modes''' | |||
*If the IRQ counter++ == IRQ latch: | |||
**If IRQs are enabled, trigger an IRQ 2 CPU cycles later. | |||
**Set IRQ reset flag. | |||
*If the IRQ flag is set (including previous $C001 write): | |||
**IRQ counter is set to zero. | |||
**IRQ reset flag is cleared. | |||
''Notice!'' | |||
*Skull&Crossbones has a glitched scanlined at the top of the scorebar, but NOT on the continue screen. Plus, the bottom line of the scorebar is NOT missing. | |||
*Hard Drivin' works, but the title screen has 2 glitched scanlines. Upon a cruve, it's glitched with line segments. | |||
*Klax is perfect, no problems. | |||
--[[User:Zepper|Zepper]] ([[User talk:Zepper|talk]]) 19:29, 2 July 2017 (MDT) |
Revision as of 01:29, 3 July 2017
As for the 2mb PRG, I'm not sure if the cart actually supports that much ROM, but the PRG registers apparently are 8 bits, and 8kb * $100 = 2048kb = 2mb. --Drag 03:05, 9 November 2011 (UTC)
Suggested changes for the Mapper64 IRQ. It makes Hard Drivin' to work fine. No other games are affected with this change. Every cycle on 6502 is either a read or a write cycle. So, you update the IRQ counter in the next CPU cycle:
- IF $C001 was written to after previous clock
- reload IRQ counter with IRQ Reload value PLUS ONE
- ELSE IF IRQ counter is 0
- reload IRQ counter with IRQ Reload value
When the IRQ is clocked by the mapper (in scanline or cycle mode):
- Decrement IRQ counter by 1
- IF IRQ counter is now 0 AND IRQs are enabled
- wait one M2 cycle, then trigger IRQ
Hard Drivin' works. --Zepper (talk) 17:57, 14 January 2014 (MST)
lternate IRQ timing
This is an hack to get 3 games working: Klax, Skull&Crossbones and Hard Drvin'.
When the IRQ is clocked by CPU or scanline modes
- If the IRQ counter++ == IRQ latch:
- If IRQs are enabled, trigger an IRQ 2 CPU cycles later.
- Set IRQ reset flag.
- If the IRQ flag is set (including previous $C001 write):
- IRQ counter is set to zero.
- IRQ reset flag is cleared.
Notice!
- Skull&Crossbones has a glitched scanlined at the top of the scorebar, but NOT on the continue screen. Plus, the bottom line of the scorebar is NOT missing.
- Hard Drivin' works, but the title screen has 2 glitched scanlines. Upon a cruve, it's glitched with line segments.
- Klax is perfect, no problems.