What's new
Okay thank you very much! I'll have a look at it:)

I also found some useful RAM location maps from @ack:
https://github.com/jwestfall69/neogeo-diag-bios/blob/master/docs/ram_locations/mv4f.md

And there is also an description of the "hello" error:
https://github.com/jwestfall69/neogeo-diag-bios/blob/master/docs/tests/comm_test.md

Since there is no answering M1 Rom on the cart, the BIOS waits for the HELLO (0xc3) message and times out. Maybe the communication between Z80 and 68k is fine?! If I understand that correctly.

Very nice code @ack, I was reading it before I found your documentation which is really detailed. I wish my code documentations would be that good^^
 
Very nice code @ack, I was reading it before I found your documentation which is really detailed. I wish my code documentations would be that good^^
90%+ of the code is smkdans. I disassembled the original diag bios/m1 as a way to learn 68k/z80 assembly and having a bunch of comments about what the code was doing helped a ton. I still need to get unlazy and finish up the docs on all the tests.

I assume you didn't get this prior to your comm test/HELLO screen shot?
Code:
Z80 SLOT SWITCH IGNORED (SM1)
SM1 OTHERWISE LOOKS UNRESPONSIVE
IF MV-1B/1C: SOFT RESET & HOLD B
PRESS START TO CONTINUE
If you didn't it would be indication the z80/sm1 are alive enough to handle the slot switch request from the diag bios. This also entails a little communication between the 68k/z80, but only a few bits of comm byte are used. The fact you get some sound with carts makes be believe there are no issues with the z80 talking to the carts m1 rom.

Do you hear any sound when the diag m1 is loaded? It should play something like this when its started and when it finishes its tests (with no errors)


however the sound is generated using the ym2610, which I think yours is bad.

I would try the diag m1 in your other slots and see if there is any change. Details on how to use the other slots can be found here https://github.com/jwestfall69/neogeo-diag-bios/blob/master/docs/boot_options.md You should also see [SS#] in the top right of the screen to let you know which slot# is active.

Perhaps someone else with the multi can test what you are trying to do and see if it works for them. The diag bios never lets the cart's program rom run, so maybe that could be causing weirdness with the multi?

The updated diag bios is also backward compatible with the original diag m1 (and vice versa) if you wanna try that. You would just lose the extra diag m1 tests that were added.
 
Then you did a really good job disassembling it :) I know how it is, sometimes I'm to lazy to finish a project. But believe me after some time you will come back.

You are totally right, I did not get the following:
Code:
Z80 SLOT SWITCH IGNORED (SM1)
SM1 OTHERWISE LOOKS UNRESPONSIVE
IF MV-1B/1C: SOFT RESET & HOLD B
PRESS START TO CONTINUE
And yes I hear these sounds when starting the M1 loaded to the Multi, there a also some other sounds a couple of seconds later some other test sounds. But only when I use an normal bios/unibios. I hear nothing when using the Diagnostics Bios. I testet this on different slots and also on an other working board, it's always the same: Diagnostic Bios = no sound, normal bios = test sound.

It looks like it's not possible to use the Multi from @Darksoft to run this test. This is because it loads the game ROM into the RAM of the multi. Can someone confirm this?

Btw I think it's much better to use RAM instead of Flash. Other multis use Flash. But it is slower and dies over time, but they could work here maybe better ;)

I ordered a new YM2610 and I'll try to replace it. But it will take some time until it arrives...

@ack would you suggest to get an M1 ROM to test further or is there anything else I can test?

Thank you all for your help, I highly appreciate it :)
 
It looks like it's not possible to use the Multi from @Darksoft to run this test. This is because it loads the game ROM into the RAM of the multi. Can someone confirm this?
That's not completely true. M1ROM and PROM are loaded in flashes and are inmediately available. The thing is that only the ones from the menu are available, the M1ROM and PROM from any other game, will be available when you swith to a game.

What you need the BIOS to do is to allow for the system to RESET, so then you can load any game with the M1ROM and PROM replaced and once it boots, it will behave as any original cart, just RESET and the tester will be there.
 
Have you check continuity between these pins? They are responsible for 68k/Z80 communication.

Code:
NEO-C1 #29 -> NEO-D0 #33 (SDW)
NEO-C1 #84 -> NEO-D0 #41 (SDZ80R)
NEO-C1 #85 -> NEO-D0 #43 (SDZ80W)
NEO-C1 #86 -> NEO-D0 #44 (SDZ80CLR)
 
Okay I understand, thank you for clarification @Darksoft! I did not know that!

I actually did what you said. I loaded only one game onto the multi, set it to „boot into games“ mode, switched the Bios to a Diagnostics Bios and started. Then I waited some time, around 30 seconds, used start + select to soft reset and pressed D while booting. This starts the Z80 Test, this fails with the „hello“ error. Did I missed something? Maybe my timing is wrong... I will try it maybe later again. As mentioned, I get the same result on different working boards.

I know the biggest problem is often the user (me)! So maybe I’m doing something wrong! The chances are high!

Thank you very much for your support, I appreciate it:)
 
Have you check continuity between these pins? They are responsible for 68k/Z80 communication.

Code:
NEO-C1 #29 -> NEO-D0 #33 (SDW)
NEO-C1 #84 -> NEO-D0 #41 (SDZ80R)
NEO-C1 #85 -> NEO-D0 #43 (SDZ80W)
NEO-C1 #86 -> NEO-D0 #44 (SDZ80CLR)
Hi @shadowkn55, thanks for jumping in for helping me, I appreciate it :)

No I did not, I’ll test that definitely and report what I found out :)
 
And yes I hear these sounds when starting the M1 loaded to the Multi, there a also some other sounds a couple of seconds later some other test sounds. But only when I use an normal bios/unibios. I hear nothing when using the Diagnostics Bios. I testet this on different slots and also on an other working board, it's always the same: Diagnostic Bios = no sound, normal bios = test sound.
That sounds like the diag m1 isn't getting used with the multi when the diag bios is installed. The jingle sound the diag m1 cart makes isn't dependent on the bios.

The sounds that happen a couple seconds later are likely beep codes its playing to try and let you know of an error.

https://github.com/jwestfall69/neogeo-diag-bios/blob/master/docs/error_codes.md

I would guess its likely beeping about a failed 68k/z80 comm test, but you will have to listen to be sure.

@ack would you suggest to get an M1 ROM to test further or is there anything else I can test?
Unless you plan on fixing more neo geo boards in the future I don't think it will be worth it. If you get one in this case I suspect it will say there are no issues detected. The diag m1 only tests a couple of the features of the ym2610, timer/irq and the sound generation. The missing/wrong sounds you describe go through the ym2610's ADPCM (cart's V roms), which the diag m1 doesn't test.

I've replaced numerous ym2610s with the same type of symptoms you are seeing and it fixed the issue. My go to carts for testing ADPCM are metal slug 2/X and samurai showdown 4. For the metal slugs when the logo's text banging into the background and saying metal slug 2/X, its pretty obvious if random sounds from the sequence are missing/wrong. Samurai shodown 4 I believe its one of the few games that use ADPCM B channel and will catch first revision mv4f's that don't have the proper bodge wire installed. If its missing it will result some screwed up / metallic sounds during the intro.

@shadowkn55 hi
 
Are you able to take close ups of the area that had battery leakage? I haven't fully mapped out the functions of each individual 74xx245 buffer but it is possible that the signals going through those buffers have been severed causing communication misfires.
 
Thank you @ack and @shadowkn55 for your help. I’ll listen to the beeping sounds tomorrow.

I’ll also games you are listet. Luckily I own them, so I can test with them. Metal Slug 1 behaves like you mention, it says always „metal slug“ and „mission 2“.

I’ll take some pictures and post them, just one moment.
 
Here we go:
https://www.dropbox.com/s/mbmx6vril5rd7ij/img_0511.jpg?dl=0
https://www.dropbox.com/s/iwyw6ah45c1rtj8/img_0514.jpg?dl=0
https://www.dropbox.com/s/p7gk8u9l2lztrxw/img_0515.jpg?dl=0
https://www.dropbox.com/s/yosgkldok2bl8mq/img_0516.jpg?dl=0
https://www.dropbox.com/s/9ul2qm0z4p30frj/img_0517.jpg?dl=0
https://www.dropbox.com/s/aw0330uurid2qrf/img_0518.jpg?dl=0
https://www.dropbox.com/s/5fbbp3k2gch9td2/img_0519.jpg?dl=0

Please don't blame me for the bad C1815 soldering... it had something todo with the spray painting :-/ I tried to make it better but it did not work.

I also tested all the corroded traces and it looks like they are all fine (I think).

Some of the solder points in the corroded area aren't that good any more, but I don't now how to refresh them! I tried it with flux and new solder. But that did not work. The RRCs have really bad once. If you have any tips how to do that, that would be really cool!

I also reflowed the YM2610...

Thank you very very much guys! I wish you a good night :)
 
I managed to get the c1815 soldering better using flux and desoldering wick. I never tried that before and couldn’t go to sleep like that :D Keep in mind I’m new to this stuff ;)
 
Good morning @ack :)

I tested Metal Slug 2:
  • The sound is fine when the logo's text banging into the background
  • When saving a prisoner the sound is: "mission 2 start" instead of "thank you"


I also tested Samurai Shodown 4:
  • The intro is fine
  • The sound until a battle starts is fine
  • As soon as the battle starts I get random sounds and after a while (first round not over) the sound goes away.

Coin sound is always missing!

I also used you beep code table! Thank you very much for it :) The result is the following: 001100 -> 68k->Z80 COMM ISSUE (HANDSHAKE)

Since I use an normal Bios, that should be expected right? When I use the Diagnostics Bios I get no sound at all...
https://www.dropbox.com/s/0j9ovyfalsuqhji/img_0522.trim.mp4?dl=0

Thank you very much for helping me :)
 
When saving a prisoner the sound is: "mission 2 start" instead of "thank you"
that clearly is IMO a problem with the commands send from the 68k to the Z80. Either one trace is broken as @shadowkn55 and @ack pointed, or it is a faulty chip (maybe RAM, maybe Neo-D0). If you have another Neogeo, try swapping those 2 chips one after the other and see how it works after each replacement.
 
Have you tried running a single cartridge in different slots? This could help narrow things down a bit.
 
that clearly is IMO a problem with the commands send from the 68k to the Z80. Either one trace is broken as @shadowkn55 and @ack pointed, or it is a faulty chip (maybe RAM, maybe Neo-D0). If you have another Neogeo, try swapping those 2 chips one after the other and see how it works after each replacement.
That sounds like a good idea on paper. But I'll destroy a working board if I do that. I think I'm not that skilled to do that! Last time I desoldered a chip it was a disaster :D I even tried a heating fan... since then I cut chip legs and remove them one by one. That works fine for me, but the chip is unusable after this. Maybe I can buy a Neo-D0 from someone here?!?!

Because of that I started looking for a broken trace... it will take a while and I'll report back when I have some results :)

Have you tried running a single cartridge in different slots? This could help narrow things down a bit.
Yes, I tested every slot with the same cart and every slot gave the same results. Really sad...


Thank you @Darksoft and @shadowkn55 again very much for your help :)
 
Try verifying continuity between the following pins
Code:
NEO-C1 PIN 74 <=> Z80 PIN 14
NEO-C1 PIN 75 <=> Z80 PIN 15
NEO-C1 PIN 76 <=> Z80 PIN 12
NEO-C1 PIN 77 <=> Z80 PIN 08
NEO-C1 PIN 80 <=> Z80 PIN 07
NEO-C1 PIN 81 <=> Z80 PIN 09
NEO-C1 PIN 82 <=> Z80 PIN 10
NEO-C1 PIN 83 <=> Z80 PIN 13

NEO-C1 PIN 49 <=> 68K PIN 61
NEO-C1 PIN 50 <=> 68K PIN 60
NEO-C1 PIN 51 <=> 68K PIN 59
NEO-C1 PIN 52 <=> 68K PIN 58
NEO-C1 PIN 55 <=> 68K PIN 57
NEO-C1 PIN 56 <=> 68K PIN 56
NEO-C1 PIN 57 <=> 68K PIN 55
NEO-C1 PIN 58 <=> 68K PIN 54
I believe this will be the path the byte of data travels between the z80/68k.
 
Thanks to you post @ack I understand now how I have to read the pinouts at wiki.neogeodev.org :) Thank you very much!!!!

I tested every thing you sad. The strange thing is: NEO-C1 PIN 52 is not connected to 68K PIN 58. It is connected to NEO-G0 Pin 34 like described here for AES:
https://wiki.neogeodev.org/index.php?title=NEO-G0
 
Back
Top