What's new

Reverse engineering 161 in 1 cartridge to change Rom games

I think this is an area that is not very well documented or understood. Even the Dev Wiki doesn't explain it very well.

As far as I understand it, these signals are set by the cart and are fed as input into the NEO-C1:

PWAIT0 - PRG B26 --> NEO-C1 pin 38
PWAIT1 - PRG B27 --> NEO-C1 pin 39
PDTACK - PRG B28 --> NEO-C1 pin 41

Yet, PWAIT0 is left floating on the cart, and PWAIT1 is connected to PDTACK. This means nothing for the NEO-C1 unless there's a "default" state (e.g. pull to ground when power is applied to C1?)

E.g. On modern carts (e.g. Krautbuster) PWAIT1 is tied to PDSTACK as well as PWAIT0 and all connect to Vcc/5VDC on the cart. This means full speed with no wait cycles.
 
I just check a real MVS cart (Bubble Bobble):

B25 (ROMWAIT) is connected to B26 (PWAIT0) -> 220ohm resistor -> 5VDC
B27 (PWAIT1) is connected to B28 (PDTACK) -> 220ohm resistor -> 5VDC

This means ROM zone wait is full speed and PORT zone wait is Full speed. This is all set on the cart. Next time I have an AES with glitching graphics in the shop, I'll play around with these signals to see if I can fix it. :)
 
If anyone wants a fun exercise, take a look at https://www.mvs-scans.com/

Here's a couple of games I looked at:

Real KOF2003
B25 (ROMWAIT) -> 220ohm resistor -> 5VDC
B26 (PWAIT0) -> NEO-PVC pin 32 ??
B27 (PWAIT1) is connected to B28 (PDTACK) -> 220ohm resistor -> 5VDC

ROM zone wait - full speed
PORT zone wait - full speed or 1 cycle configurable by NEO-PVC?

Pulsar
B25 (ROMWAIT) -> 220ohm resistor -> 5VDC
B26 (PWAIT0) -> 220ohm resistor -> 5VDC
B27 (PWAIT1) is connected to B28 (PDTACK) -> 220ohm resistor -> 5VDC

ROM zone wait - full speed
PORT zone wait - full speed

KOF98
B27 (PWAIT1) is connected to B28 (PDTACK) -> 220ohm resistor -> 5VDC
B26 (PWAIT0) -> 220ohm resistor -> GND
B25 (ROMWAIT) -> 220ohm resistor -> 5VDC

ROM zone wait - full speed
PORT zone wait - 1 cycle

Point of all this?
- leaving ROMWAIT, PWAIT0, PWAIT1, PDTACK floating caused issues in the past with 161-in-1
- V3 PCBs still leave ROMWAIT and PWAIT0 floating, but connect PWAIT1 to PDTACK together (??)
- this all effects PROM access speed by the CPU (which might not be a big deal because the FPGA/Flash used is much faster than the 68K CPU)
- This statement in the pubs is what sticks out to me:

Some games rely on wait cycles to perform sufficiently spaced VRAM accesses. Disabling the wait on those cartridges causes the accesses to become too close to each other and results in graphics corruption.
 
Last edited:
Is the timing on an AES with an Hitachi CPU off just enough to show graphical glitches? I wouldn't be surprised if the code for the 161-in-1 was initially designed to run on an MVS with real Motorola CPU, and the Toshiba timing is closer to the Motorola and hence why it doesn't have the same graphical glitches.

I also wonder if some people with NeoSD (or Darksoft?) might run into similar problems on AES. Only way to know for sure is to find an AES with an Hitachi CPU and swap in a Toshiba CPU and see if the problem goes away.

This is an interesting avenue of investigation - my AES 3-5 with the Hitachi CPU is showing the glitches, so keen to understand what I can do to resolve it. I have managed to find a source for the Toshiba CPU for ~$15, but would it really be as simple as doing a straight swap, nothing else on the PCB would require changing?
 
This is an interesting avenue of investigation - my AES 3-5 with the Hitachi CPU is showing the glitches, so keen to understand what I can do to resolve it. I have managed to find a source for the Toshiba CPU for ~$15, but would it really be as simple as doing a straight swap, nothing else on the PCB would require changing?
If you are comfortable with desoldering/soldering ICs, then yes - it's a straight swap. No other components need to change. It's important to get a -12 CPU as the entire console is designed for the 12.5Mhz speed. I'm guessing a -10 will also work, but not 100% sure.

Of course the best solution is to fix the cart. But that's something that will require more investigation. I don't have any 5V AES nor Hitachi based AES consoles here. And MVS is no help because they use real Motorola CPUs.
 
If you are going to change CPUs I would put in a socket while you are at it rather than soldering the new one in directly.
 
  • Like
Reactions: ack
If you are comfortable with desoldering/soldering ICs, then yes - it's a straight swap. No other components need to change. It's important to get a -12 CPU as the entire console is designed for the 12.5Mhz speed. I'm guessing a -10 will also work, but not 100% sure.

Of course the best solution is to fix the cart. But that's something that will require more investigation. I don't have any 5V AES nor Hitachi based AES consoles here. And MVS is no help because they use real Motorola CPUs.
I might also give this a try, I've got a Hitachi AES that shows visual glitches in Samurai Showdown 2 with a Vortex cart.
 
I might also give this a try, I've got a Hitachi AES that shows visual glitches in Samurai Showdown 2 with a Vortex cart.
The type of glitches I'm trying to solve are not game specific. They should effect all games. The "Neo Geo" intro logo text should look corrupt. Graphics should look fine, but text almost unreadable.

Tiny little glitches here and there (like a flicker line in a specific spot) also happens on the Toshiba CPU; but you really have to look out for it and know what it looks like on the arcade machine to even notice it. For example, at the start of "Pulsar", the bouncing Neo Geo logo ball looks clean on MVS but has a line flicker on AES. That's just AES being AES. :)
 
@leonk just curious as I'm completely new in this: Are you aware of any differences between your vortex cart and rewrite cart? On my same 3-5 aes, your cart works perfectly fine, while rewrite's cart shows these graphical issues (posted some screenshots on rewrite thread here ). If these would be due the CPU, wouldn't both carts show the same problem on the same AES? Wouldnt it be an issue on how the carts were built/programmed?
 
@leonk just curious as I'm completely new in this: Are you aware of any differences between your vortex cart and rewrite cart? On my same 3-5 aes, your cart works perfectly fine, while rewrite's cart shows these graphical issues (posted some screenshots on rewrite thread here ). If these would be due the CPU, wouldn't both carts show the same problem on the same AES? Wouldnt it be an issue on how the carts were built/programmed?
I don't know how rewrite created his cart, never seen one in person so I can't comment on it.

There's a few things I do to my cart that are beyond the original Vortex instructions from 2 years ago:
- the new menu
- replace all the capacitors with Japanese Nichicon ones
- add extra soothing capacitors that are missing
- not use the 2 Chinese voltage regulators but instead install my own custom power circuit built around an ST Microelectronics regulator

The graphical issues you see are the same graphical issues some of my customers have seen on AES and I personally saw on Hitachi CPU I'm trying to solve above. I know we're only talking about a handful of customers here (as vast majority use MVS and don't see this problem) But I expect these problems to show up if you use a Vortex MVS cart on AES with adapter on a Hitachi CPU system.
 
The type of glitches I'm trying to solve are not game specific. They should effect all games. The "Neo Geo" intro logo text should look corrupt. Graphics should look fine, but text almost unreadable.

Tiny little glitches here and there (like a flicker line in a specific spot) also happens on the Toshiba CPU; but you really have to look out for it and know what it looks like on the arcade machine to even notice it. For example, at the start of "Pulsar", the bouncing Neo Geo logo ball looks clean on MVS but has a line flicker on AES. That's just AES being AES. :)
Thanks, will note this. It seems like 50% or more of games on my Vortex cart display issues similar to what you describe. For example all the Metal slugs and Final Fights work fine, but Pulstar, Samurai Showdown, Windjammers show the initial Neo geo logo as glitchy, text garbled and some ingame graphics have jailbar like lines.

I've got a decent Hakko desoldering gun here so shouldn't be too hard to swap out the CPU and watch the results. Is it possible to replace the AES CPU with a genuine Motorola version from the MVS?
 
I've got a decent Hakko desoldering gun here so shouldn't be too hard to swap out the CPU and watch the results. Is it possible to replace the AES CPU with a genuine Motorola version from the MVS?
I don't think so. MVS CPUs are QFP (legs on all 4 sides) and surface mounted. AES are through hole 64 pin components that look like the BIOS.
 
I don't think so. MVS CPUs are QFP (legs on all 4 sides) and surface mounted. AES are through hole 64 pin components that look like the BIOS.
There are Motorola branded 68K CPUs in 64DIP configuration though.
 
There are Motorola branded 68K CPUs in 64DIP configuration though.
but are they pin compatible and same speed? Not sure. Is the CPU also the root cause of all the issues - still need to do some more testing. These are all assumptions at this point.
 
but are they pin compatible and same speed? Not sure. Is the CPU also the root cause of all the issues - still need to do some more testing. These are all assumptions at this point.
One should check the datasheets to confirm, but as far as I know they are pin compatible yes.

Here's an example - the P12 means it is rated for 12MHZ
https://www.ebay.com/itm/325543020112
 
One should check the datasheets to confirm, but as far as I know they are pin compatible yes.

Here's an example - the P12 means it is rated for 12MHZ
https://www.ebay.com/itm/325543020112
I've just ordered one of these as well as the Toshiba version. I'll install a socket on the PCB to swap between them and note any changes. Worst case scenario my AES gets fried.
 
I don't think so. MVS CPUs are QFP (legs on all 4 sides) and surface mounted. AES are through hole 64 pin components that look like the BIOS.
MVS CPUs are either SDIP64 (Shrink DIP with a 0.07" pitch) or PLCC68 (j legs).
I've just ordered one of these as well as the Toshiba version. I'll install a socket on the PCB to swap between them and note any changes. Worst case scenario my AES gets fried.
It won't fit, AES uses the SDIP64 version.
 
I picked up a Neo Geo AES 3-6 from a friend that has the Hitachi CPU. This system is a mess with Vortex All-in-1. Graphical corruptions, illegal instructions tossed by some games, etc.

Here's what I did to the cart:

- B25 (ROMWAIT) -> 220ohm resistor -> B31
- B26 (PWAIT0) -> 220ohm resistor -> B30
- B27 (PWAIT1) is connected to B28 (PDTACK) -> 220ohm resistor -> B29

Every game I now toss at it just works. Flawlessly! I did a similar test on an MVS cart and running it on a MV-F1Z board in my arcade machine, and I don't see any ill effects from doing this mod.

Anyone got any suggestions on games I can try that are known to have issues?
 
I picked up a Neo Geo AES 3-6 from a friend that has the Hitachi CPU. This system is a mess with Vortex All-in-1. Graphical corruptions, illegal instructions tossed by some games, etc.

Here's what I did to the cart:

- B25 (ROMWAIT) -> 220ohm resistor -> B31
- B26 (PWAIT0) -> 220ohm resistor -> B30
- B27 (PWAIT1) is connected to B28 (PDTACK) -> 220ohm resistor -> B29

Every game I now toss at it just works. Flawlessly! I did a similar test on an MVS cart and running it on a MV-F1Z board in my arcade machine, and I don't see any ill effects from doing this mod.

Anyone got any suggestions on games I can try that are known to have issues?
I sent you a PM to remind you of the issues with that first AES cart you sent me. Neo Turf Masters.
 
Back
Top