nesdev.com
http://forums.nesdev.com/

Fixing Chinese SMB2J
http://forums.nesdev.com/viewtopic.php?f=9&t=18375
Page 1 of 1

Author:  krzysiobal [ Tue Jan 29, 2019 12:01 pm ]
Post subject:  Fixing Chinese SMB2J

I remember Ben Boldt talking about his newly actquired SMB2 Lost Levels cartridge, which was not working. Now I got five of them and none of them worked as well, so I become a little bit suspicious. I suspected them game to be loopy's SMB2J port from FDS to MMC3.
Image

The PCB looks overally quite elegant - there are place to solder PRG/CHR RAM/ROM, battery, mapper blob and a lot of jumpers underneath.
Image Image Image

After analysing the pinout of blob, it turned out to be exactly AX5202P but with few more pins added in between.
* CPU-A12, CPU-A2, CPU-A1
* PRG-A19 (?),
* CHR-A19 (?), CHR-A18 (?),
* VBAT, WRAM-VCC (just like in MMC5),
* some unknown signal going to jumper with VCC (closed),
* three unknown signals, each of them going to jumper with PPU-A13 (each of them is open),

There are a few more jumpers (each is open),
* connecting PRG-A14/A13 to CPU-A14/13,
* connecting CHR-A12/11/10 to PPU-A12/11/10,
* connecting CIRA-A10 to PPU-A11/10
Sounds like a simply way for NROM game without even adding mapper-blob.

-

Firstly I desoldered the EEPROMs and checked whether they work in emulator as MMC3 and they ran flawlessly. However, many bytes of PRG are diferent in comparision to the loopy's (some are for example zeroed). But there are still copyrights, so no idea what authors of the cartridge changed. So either mapper-blob is broken or any other issue.

-

Then I pre-programmed them with other MMC3 game (I choose Doki Doki Yuuenchi, it's my faourite one for testing) and it worked. Even the scanline counter was perfectly accurate. So either SMB2J triggers any unkown register in MMC3 blob or...

Well, Doki does not use PRG-RAM while SMB2J does, so maybe that's the issue? I checked the PRG-RAM chip to be be OK. So I started analyzing what's going on with the PRG-RAM-/CS line and well.. it looked freakingly weird.

Image

It turns out that the line is like open collector. That is, mapper only drives it low, but it is pulled-up to VCC by external 4.7k resistor (lowering the resistor to 470R made edges more vertical but still game didn't worked). And the few ns spike, caused by M2-/ROMSEL delay when accessing mapper registers at $e000-$ffff, produces slowly-rising signal that probably corrupts this fast 70ns RAM.

-

Firstly I thought of just adding a small capacitor to GND (but my experience is that results depends of the internal resistance of output). So much better was to add well-trusted circuit:

Code:
        VCC
         |
         1k
         |
mapper --+-|>|-+---+-- WRAM-/CE
         |     |   |
         +-1k--+  56p
                   |
                  GND


Resulting signal looked very promissing and indeed game started to work:
Image Image

-

So this will probably be issue with ANY MMC3 game that uses WRAM on this particular PCB.

Why they released such cartridge? Well, maybe they tested it with slower RAM. Here is 70ns which is one of the fastests ones, vulnerable to such short skipes.

For anyone trying to dump any of those cartridges: it watches for M2 and when it detect it to stop toggling, it disables any further writes to mapper register (and access to RAM)

Attachments:
apply_over_smb2j_mmc3_loopy.ips [1007 Bytes]
Downloaded 176 times

Author:  Gilbert [ Tue Jan 29, 2019 6:44 pm ]
Post subject:  Re: Fixing Chinese SMB2J

I think they probably only tested the things with Famiclones. That's why they didn't work without fixing on the real consoles (maybe they're not supposed to work on original consoles anyway as they never expect someone to even play it with the real thing).

Author:  Ben Boldt [ Fri Feb 01, 2019 4:37 pm ]
Post subject:  Re: Fixing Chinese SMB2J

Ohhhhh cool! I will try this. Actually I found a modified cartridge I made while digging through some junk, I wondered what it was and I put it in my NES and it turns out that it was already a SMB2J that I made already and I forgot about it........ But I will try this anyway. thanks

Author:  krzysiobal [ Fri Feb 01, 2019 6:59 pm ]
Post subject:  Re: Fixing Chinese SMB2J

Just don't forget there is one track cut under the diode.

Author:  Ben Boldt [ Tue Feb 19, 2019 5:23 pm ]
Post subject:  Re: Fixing Chinese SMB2J

I finally got around to this, I modified the PCB, cutting the trace and adding the resistor, diode and cap. I used a BAT760 Schottky diode.

I had originally removed the ROMs from this board, directly dumped them, and reprogrammed with loopy's version of SMB2J, tried it, didn't work, removed the ROMs again, and that's where I left it before doing these mods today. Would you recommend using Loopy's or should I restore the original?

I noticed that the PCB fits in the case the same forwards and backwards! I will have to double-check as I put it back together.

Also, I believe that this game should support saving the number of times you beat the game -- have you tried the battery function of this board?

Author:  krzysiobal [ Thu Feb 21, 2019 10:06 am ]
Post subject:  Re: Fixing Chinese SMB2J

Loopy's version should work on those PCB without problem (tested).
You just need to repeat PRG/CHR content of the chips if the file is less than size of the chip.

I did not test battery backup (but the MMC3 mapper contained in glob respects PRG-RAM chip enable/disable and write protection bits).

Author:  Fisher [ Thu Feb 21, 2019 10:22 am ]
Post subject:  Re: Fixing Chinese SMB2J

That's interesting.
Are these cartridges from Aliexpress?
Did they come with 5v DIP ICs?

Author:  Ben Boldt [ Thu Feb 21, 2019 1:27 pm ]
Post subject:  Re: Fixing Chinese SMB2J

krzysiobal wrote:
Loopy's version should work on those PCB without problem (tested).
You just need to repeat PRG/CHR content of the chips if the file is less than size of the chip.

I did not test battery backup (but the MMC3 mapper contained in glob respects PRG-RAM chip enable/disable and write protection bits).

Okay, will do. I think I will use an old small UV EPROM for CHR and save one of the flash ROMs from this.

Fisher wrote:
That's interesting.
Are these cartridges from Aliexpress?
Did they come with 5v DIP ICs?

Yes and Yes. :)

I broke a couple of the plastic tabs opening it. :? Also I broke a trace leading to one of the holes. Not so great quality materials.

You can get it here:
https://www.aliexpress.com/item/-/32805392727.html

Author:  Fisher [ Thu Feb 21, 2019 5:14 pm ]
Post subject:  Re: Fixing Chinese SMB2J

Thank you. :D

Author:  Snacks [ Wed Aug 14, 2019 4:31 am ]
Post subject:  Re: Fixing Chinese SMB2J

Ben Boldt wrote:


board looks great to place another kind of softwares.
i am planning to make a bad apple cart with it. Thanks a lot ;D

Page 1 of 1 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/