What's new

MV1AX. Color ram. Vertical lines. Faulty input ply 1 and 2, no sound and corrupt sound.

kissedin

Student
Joined
Jan 28, 2023
Messages
58
Reaction score
49
Location
Sweden
It all started fairly innocent:
Color ram error 0002 vs 000A
Scraping sound from audio output.

Scoped pins on palette ram. And sure enough pin 15 "I/o4" on ram 7 had a dc offset of 2.2 V. Offset not present on pin when probing it lifted from circuit. So something was corrupting its signal. Lifted and checked pin 37(A3) on neo-buf at GA4. Offset was there. The corresponding pin (B3 pin 1) looked good.

Desoldered neo-buf at GA4 and put in a repro from tindie. Started up. Smoke from the hc245 chip closest to pin 1. Watch dog click. Tried two more chips and got the same smokey outcome.

A bad batch? Contacted seller and he could confirm this. He also sent new chips.

Instead of waiting I decided to scrap another MV1AX board with severe trace damage for parts. Now I put in an original neo-buf. Power on. Booted to cross hatch.

Put in a cart and new errors emerged. Player one inputs were always on. When playing a game: graphical corruption/lines. Text looked ok. Sound ok except a scraping sound that I thought was due to a dirty volume pot.

Started with the easy; checked ply1 inputs for shorts to ground. Found none. Followed the ply1 inputs to a neo-buf at GA8. Its A-side showed high. B -side showed low. Replaced with a neo-buf from the donor board. Fixed input issues.

Next problem: vertical lines and corruption in all sprites.

Changed zmc2 from a scrap board. This changed the error to the better but far away from perfect. Ordered repro zmc2 from furrtek. Got perfect gfx.

Ran the board for a while with KOF99. During this session: sound went from good to corrupt to dead silent. Ply2 directions went corrupt.

Replaced the neo-buf at GA8 once again now with a repro. This fixed the input issues for good.

Quite tired of this board by now. Decided to shotgun. Changed and put socket on ram, no cigar. Changed z80 to a new one, changed and put socket to ym2610. Nothing.

Discovered no sound in stock bios menu. This made me suspect sm1. Changed this. But no result.

Desoldered bios and put in a socket. Ran diagrom. Got error code: z80 comm issue (ack) 3c/c3.

Changed Neo buf at ga7 (a pure guess), no cigar. Changed neo-D0 to a known working one, no cigar.

So much for shotgun approach. Resorted to logic.

The data transfer between z80 and the 68k on mv1a is made by neo-buf @GA9 and two hc273 @ GA10 and GA11. And neo-D0 which make Reset and read/write commands and more.

Changed the hc273's. No result. So were to go next? The asylum?

Visual inspection. Found a tiny piece of solder on neo-buf-chip at GA7 that shorted two data-lines. A dab with the solder iron and some flux fixed this. (But in retroperspective I'm not sure that this solved anything regarding the sound).

New error code: Z80 68k -> z80 (clear). Read the manual on github. This clear signal is supposed to come from a dedicated pin 44 on neo-D0. On the mv1a boards it then goes to pin 11 "MR" on a hc273 @U11.

Probed this pin while in stock bios sound test menu. It went low each time i pressed A. Probed a working board and it behaved the same.

Maybe the D0-chip never got instructions to reset in the the first place? Checked once again for continuity between Z80 and NEO-BUF @ GA9. Checked for continuity between NEO-BUF @ GA9 and HC273 @ U11 and U10. Tested ok.

Put in kof '99. Dead silent. Except the neo-geo jingle. When playing the jingle music was triggered instead of samples.

Regarding the sdz80clr...

Smkdan's site says "Z80<->68K COMM. ERROR (CLEAR).

"Z80 requested the I/O port to clear its contents to zero and it failed. A specific control signal is used for this."

Sdz80clr is sent from neo-D0. I could se that it was triggered on startup. Made pin outs for the hc273 at U10 and U11. Used oscilloscope on the points I could reach with a cart mounted. I did not find anything suspicious.

Screenshot_2025-05-09-05-11-44-352_com.google.android.apps.docs.editors.sheets.jpgScreenshot_2025-05-05-20-23-19-336_com.google.android.apps.docs.editors.sheets.jpg

Put back and ran diagrom and now I got the c3 (ack) error again... Wow.

Googled and found a french site (used Google translate )(https://www.neo-arcadia.com/forum/viewtopic.php?style=9&t=80589&sid=18507891f13d4867bd380316bd87e98d) that suggested that except GA8 and 9, Neo buf at GA11 also might give sound problems. Changed it right away. Didn't bother to trace. Or make up my own mind whether this was plausible or not. And no improvement.

Started a thread on arcade-projects and got some valuable information on how to interpret the diagrom's different codes. I also made a small layout of neo-D0. Thread is here; https://www.arcade-projects.com/threads/mv1ax-z80-68k-comm-issue-ack.33772/


NEO D0.

Pin. Name. Dir. Chip. Loca. Pin. Name

29. NMI. -> Z80 - 17 -

33. SDW*. <- HC273 U10 11 CP

37. IORQ <- Z80. - 20 -

38. MREQ. <- Z80. - 19 -

41. SDZ80R -> N-BUF GA9 44 OEL

43. SDZ80W -> HC273. U11. 11 CP

44. SDZ80CLR -> HC273. U10. 1 MR


* PAL Snk1a 22 (output) to u10 pin 11 (clock) and neo-D0 pin 33 (SDW). SDW-info from neo-dev: "SDW signals that the 68k has written a byte to the Z80 port, will make NEO-D0 generate an interrupt if enabled."

The involvement of the pal chip was news to me. Socketed and changed SNK1A+pal. No difference.

Testing and testing. I got "comm issue clear" or "comm issue ack" went back and forth. Got a smart advice regarding this unpredictable behaviour to check for floating lines but none were found.

I did notice that the diagrom could give one diagnose in print and another diagnose in the "beep code". And afaik the sound is the one that matters.

Then finally some progress. Decided to change my neo-buf at GA9. Everything was pointing towards that chip, but I ruled it out because it was brand new.

And now... All tests passed with diagrom. Tried multiple times. Put in stock bios and ... SOUND! Put in 3 count bout - samples, eycathcer music working like a charm. Put in KOF'99 and ... Silence. Then a long eerie tone. When eyecatcher music is supposed to be playing it was silent.

Ran diagrom repeately for like 5 minutes but got "all tests pass" every single time. KOF'99 played good in my other neo-geos. Tried metal slug x (because that is a newer game like KOF'99) and this one was silent as well.

Cleaned the cart. Changed slot-pcb to a known working one. Checked continuity. No findings.

I compared how the prog cart pins and pcm chip behaved on Karnovs Revenge (which worked) and KOF'99. Noticed that alot of pins were dead on KOF'99 - but pulsing on KR. Almost like the sound driver wasn't running at all. Maybe the switch to m1 never was done?

So I googled (which I usually do and don't end up writing long monologues on forums like this) and found this beautiful little thread:

https://www.neo-geo.com/forums/index.php?threads/z80-error-mvs-mv-1fzs.259037/

It mentions chip enable on pin CHA 49B. I probed it with KOF'99 running. It was stuck but i can't remember if it was High or Low.

I traced this pin back to the mother board. It lead to a LS32 which is a chip with 4 OR-gates.

Pin out:
Pin 10 input from pin 6 (an output)
Pin 9 input from ... never traced
Pin 8 output to CHA 49B.

Pin 4 input from NEO-I0 pin 19 (ORI0)
Pin 5 input from AS04N @ U9 pin 8.
Pin 6 output to pin 10.

A lot of vias and traces across the board. After this exercise I wanted to study the signal.

I started at pin 49B but now it was pulsing. And I heard music.

So what was the final fix? With no fault present it's hard for me to to find a better conclusion than a bad vias somewhere on the chip enable. This caused the logic to malfunction.

Signal got through on smaller carts like PB and KR but didn't manage on bigger and more power consuming games.

If you have a better idea please let me know :)
 
Last edited:
Back
Top