Pirate Gradius 2 glitched. Possible fix??

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderator: Moderators

lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Pirate Gradius 2 glitched. Possible fix??

Post by lidnariq »

Fisher wrote:Would be easy to unsolder it from A10 and put it on D6 if needed. :)
As I was editing to say ( <_< ), it'd be nice to find out.
I also would like to know how to figure these things out, if possible.
Is there some kind of software or it's just a matter or putting the binary data on a truth table and try to simplify the equations?
There is PAL-parsing software that will do this, but I just did it by hand:

Code: Select all

$ hd -n 1024 PALGRAD2.BIN | perl -pe 's/ [fedc]/ /g; y/0123456789abcdef/ooooooooiiiiiiii/;'
oooooooo  i i i i i i i i  i i i i i i i o  |................|
oooooooo  i i i i i i i i  i i i i i i i i  |................|
and subsequent lines repeat.

From this, I knew that, for the output that was parsed as D3, only A0-A4 mattered, and since there was only one value that differed, I just had to figure out what address #15 corresponded to.
User avatar
Fisher
Posts: 1249
Joined: Sat Jul 04, 2015 9:58 am
Location: -29.794229 -55.795374

Re: Pirate Gradius 2 glitched. Possible fix??

Post by Fisher »

Here it is!!
The new dump.
Pin 16 is D6 now.
Hope it helps to clarify things!!
NEWPLGR2.BIN
New Pirate Gradius 2 PAL "dump"
(128 KiB) Downloaded 506 times
Another question: should the diode + resistor fix the issue??
What diode and resistor are used on the Gamegenie?
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Pirate Gradius 2 glitched. Possible fix??

Post by lidnariq »

And it turns out that pin 16 is just the inversion of 4020CLR.

Kinda anticlimactic, but oh well.


But hey, there's some funny race conditions there between /ROMSEL and M2 that could cause writes to $Fxxx (original VRC4 IRQ writes) to be accidentally parsed as writes to $7xxx (new IRQ acknowledgement/reset), and slightly delaying M2 might fix that. Maybe that's what the Game Genie is effectively doing?

Since you've already got everything up, you could try adding a tiny RC delay to the PAL's M2 input (i.e. pin 1). I think you only need 20-30ns, so you could try:

Code: Select all

card edge M2 --- 1k --- + --- PAL
                        |
                       33pF
                        |
                       gnd
User avatar
Fisher
Posts: 1249
Joined: Sat Jul 04, 2015 9:58 am
Location: -29.794229 -55.795374

Re: Pirate Gradius 2 glitched. Possible fix??

Post by Fisher »

Well, looks like it's time to reassemble this game and start playing it again. :lol:
I really would like to do some more ROM swapping tests.
I'm just curious to know if some other VRC4 game could run on this board, if would at all.
Maybe if I put sockets on the ROMs... but then I won't be able to close the game case. :(
Gotta try the delay mod. I'll post the results as soon as I have some.
I'll also take a good look on the equations, read the past posts and try to learn a little bit more.
Maybe I should try a computer science course, or software engineering should be better?
I ask because now there's a university in my town that have these courses, and I'm really willing to take the challenge!! :roll:
Many thanks!!
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Pirate Gradius 2 glitched. Possible fix??

Post by lidnariq »

I really doubt any other VRC4 game could possibly work. Even this one required a patch, and the patch is clearly specific to Gradius 2.

I'd be a little surprised if the average CS or SE course would help with this. I think we only really covered boolean algebra once, and that was in the "design of CPUs" course.
User avatar
Fisher
Posts: 1249
Joined: Sat Jul 04, 2015 9:58 am
Location: -29.794229 -55.795374

Re: Pirate Gradius 2 glitched. Possible fix??

Post by Fisher »

Great!!
Worked as a charm!!
No more jumping bar on the botton!! :D

Just one last question: What exactly the patch does?
Is it responsable for the game to work on the "alien" mapper or it is made to defeat some protection?
I ask this because Konami is notable for doing weird things to protect their games.

Edit: Everything is already explained on the topic, sorry for asking. :oops:

Anyway, many thanks for the infos!!
You guys are great!! :beer:

Edit2: Does the M2 circuit used on Gamgenie makes some kind of interference on Gradius 1 and Megaman 1?
Maybe these games use some kind of timed code that is disturbed by the circuit.
Or, what I think is a better answer is because they're pirates and have some kind of issues with the componnent's quality.
User avatar
krzysiobal
Posts: 1037
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland
Contact:

Re: Pirate Gradius 2 glitched. Possible fix??

Post by krzysiobal »

Rev-ed schematics:
Image
User avatar
Fisher
Posts: 1249
Joined: Sat Jul 04, 2015 9:58 am
Location: -29.794229 -55.795374

Re: Pirate Gradius 2 glitched. Possible fix??

Post by Fisher »

Thank you krzysiobal.
Great job!
:-)
Post Reply