Two questions about this mapper.
1) Considering there's a "VROM+VRAM" mode, I'm assuming games have 8k CHR-RAM in addition to CHR-ROM? Any games use this?
but more importantly...
2) IRQs were giving me problems in Sangokushi 2 -- as the game checks the IRQ counter by reading $5800 and loops until it gets $7F even -- however it checks a fixed number of cycles after setting the IRQ counter and running -- and it checks TOO LATE, and an IRQ has already fired by the time it reads.
Now from what I've been reading/researching, the IRQ counter counts up and ones it wraps from $7FFF->$0000, an IRQ is fired. This seemed to work for e, Sangokushi 2 issue aside. I've found that locking the IRQ counter at $7FFF... in addition to to firing an IRQ at that time fixes Sangokushi 2, which still providing the same function (seems hackish... but I can't imagine what else Sangokushi 2 is trying to do).
After skimming Nintendulator source to see how it does it (wraps $7FFF->0000) -- I tried out Sangokushi 2 in Nintendulator, and I wasn't surpised to find out it wasn't even getting to the title screen -- same problem I was having. Since the IRQ has already fired by the time the game reads $5800, it's getting $00 (or some other really low number) instead of $7F -- and since it loops until it gets $7F, the game never runs.
In addition to that problem.. I've tried Erika to Satoru no Yume Bouken. And if you go to the ?password? screen (second option from the title screen), input an invalid password, and press start, the book at the bottom shoots left for a frame or two. I haven't researched this, but I'd assume it's an IRQ problem (though it may not be... since I think CHR swapping is done in the IRQ routine, and the CHR looks fine when the book is pushed left). My emu does this... as does Nintendulator... and FCEUXD (haven't tried others though). Anyone know what's up with that?
Any clarification welcome and appreciated. ^^
1) Considering there's a "VROM+VRAM" mode, I'm assuming games have 8k CHR-RAM in addition to CHR-ROM? Any games use this?
but more importantly...
2) IRQs were giving me problems in Sangokushi 2 -- as the game checks the IRQ counter by reading $5800 and loops until it gets $7F even -- however it checks a fixed number of cycles after setting the IRQ counter and running -- and it checks TOO LATE, and an IRQ has already fired by the time it reads.
Now from what I've been reading/researching, the IRQ counter counts up and ones it wraps from $7FFF->$0000, an IRQ is fired. This seemed to work for e, Sangokushi 2 issue aside. I've found that locking the IRQ counter at $7FFF... in addition to to firing an IRQ at that time fixes Sangokushi 2, which still providing the same function (seems hackish... but I can't imagine what else Sangokushi 2 is trying to do).
After skimming Nintendulator source to see how it does it (wraps $7FFF->0000) -- I tried out Sangokushi 2 in Nintendulator, and I wasn't surpised to find out it wasn't even getting to the title screen -- same problem I was having. Since the IRQ has already fired by the time the game reads $5800, it's getting $00 (or some other really low number) instead of $7F -- and since it loops until it gets $7F, the game never runs.
In addition to that problem.. I've tried Erika to Satoru no Yume Bouken. And if you go to the ?password? screen (second option from the title screen), input an invalid password, and press start, the book at the bottom shoots left for a frame or two. I haven't researched this, but I'd assume it's an IRQ problem (though it may not be... since I think CHR swapping is done in the IRQ routine, and the CHR looks fine when the book is pushed left). My emu does this... as does Nintendulator... and FCEUXD (haven't tried others though). Anyone know what's up with that?
Any clarification welcome and appreciated. ^^