Another interesting famiclone (BS-500) with WRAM access issues

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.
User avatar
krzysiobal
Posts: 1221
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland

Another interesting famiclone (BS-500) with WRAM access issues

Post by krzysiobal »

I recently made a multicart with Donkey Kong 4 game included on it (with two versions - normal one and pre-patched with invincibility).
Image
//dk4-title.jpg

To my surprprise, I found out that one of the consoles I was given, BS-500:
Image
//bs500-shell.jpg

crashes almost immediatelly after starting the regular DK4, but to my surprise, works fine with invicible DK4:
//dk4-crash.jpg
Image

The console also has problems with my KrzysioCart:
//kc-fail.jpg
Image

And SMB3 - colors are definitely wrong on the title screen and then the level becomes corrupted:
Image Image Image
//smb3-0.jpg smb3-1.jpg smb3-2.jpg

Console has internal built-in 10000000in1 multicart with interesting FUTBOL COLOMBIANO remake of soccer game that I never spotten anywhere in the internet
Image Image Image Image
//multi1.jpg multi2.jpg multi3.jpg multi4.jpg

The issue seems to apply to games using WRAM, so sounds similar to the one I described recently in different console (viewtopic.php?t=26270).
DK4 does not use WRAM though it has registers under $8000 so might be similar reason. But DK4 also uses CHR-ROM as nametables which requires CIRAM /CE to be controlled by cartridge and most modern consoles simply short this line to PPU /A13. Let's find out what is going on.

Internals of the console are interesting - main pcb has one NES-on-chip blob and second blob with built-in multicart:
Image Image Image Image
//cons-pcb-top1.jpg cons-pcb.bottom1.jpg top_corr1.jpg bottom_corr1.jpg

There are a lot of weird jumper-like test points and the blob pinout is unusual, suggesting it is not based on UM6561
Image
//sch.png

Presence of external cartridge is detected by checking PIN31 (GND=no external cartridge, VCC=external cartridge present). Blo

Pins 49 (PPU/A13) and 48 (CIRAM/CE) are shorted but for some reason the track from both pins goes into Nes-on-chip blob suggesting that after cutting this trace, CIRAM /CE can be controlled externally
Image
//ciram.jpg

Next interesting thing os that the blob with build-in multicart does not input CPU/ROMSEL, PPU /RD, PPU /WE, /IRQ. There are three signals (SIG55, SIG53, SIG75) that are going only between Nes-on-chip blob and multicart blob:
Image
//sch2.png

My quessing is that they are:
* SLAVE CPU /ROMSEL (driven with 1 by NOC when external cart is present)
* SLAVE CIRAM A10 (ignored by NOC when external cart is present)
* SLAVE PPU /RD (dirven with 1 by NOC when external cart is present)


Dumping built-in cartridge:
I used my dumping cartridge that can send any arbitrary asm code from PC to the console and then execute it, collect results and sent them back to PC.
//dumper.jpg
Image

Mapper seems to work that way:

Code: Select all

                                 --6001-- --6002--
        6001    6002 prg chr mir 76543210 76543210
mario     54      00  32   8   v 01010100   |
futbol    91/92   00  32   8   v 10010001   +-- when 1, all reads/writes to $4100-$7fff have
olympics  f0          32  32   v 11110000       data bits 0 and 1 cleared, that is:
duck hunt 23      00  16   8   v 00100011       reading 4100-7fff returns: HI(A)&0xfc instead of HI(A)
jewelry   00      00  16   8   v 00000000       and writing to $6000 have bits 0/1 set to 0
powerup   00      02             00000000
                                 |||||+++- chr bank
                                 ||||+---- mirr (0=V, 1=H)
                                 |||+----- prg mode (0=16k, 1=32k)
                                 +++------ prg bank
* Menu is super counter-intuitive: pressing "a"/"b" nagivates to next/previous page with pointer always reset to the first position, "start" starts game.
* Half of the "track & field" games have messed up graphics (long jump, javelin, hurdles), probably because menu does not properly initialize chr bank register (all chr data seems to be identical to the official track & field game)
//duck hunt glitch.png
//trackfield bug.png
Image Image
* Duck Hunt and trackfield have title screen chopped of and after game over, game returns to multicart menu
* Futbol Colombiano (Soccer) which is regular NROM game was patched to use 16kb of CHR just because they couldnt fit the title screen text in one bank.

Fix:
Indeed the culprit is the blob multicart driving CPU bus for accesses below $6000. Solution is to cut the M2 line coming from NOC to multicart blob and drive it with 0 when external cartridge is present.
I installed GAL chip for that purpose:

Code: Select all

CHIP TEST GAL16V8

M2NOC EXTCARTEN PIN3 PIN4 PIN5 PIN6 PIN7 PIN8 PIN9 GND
PIN11 M2OUT PIN13 PIN14 PIN15 PIN16 PIN17 PIN18 PIN19 VCC

EQUATIONS

M2OUT = M2NOC * /EXTCARTEN
//fix.jpg
Image
You do not have the required permissions to view the files attached to this post.
Image My website: http://krzysiobal.com | Image My NES/FC flashcart: http://krzysiocart.com
NewRisingSun
Posts: 1593
Joined: Thu May 19, 2005 11:30 am

Re: Another interesting famiclone (BS-500) with WRAM access issues

Post by NewRisingSun »

krzysiobal wrote: Sat Nov 01, 2025 4:47 pm Console has internal built-in 10000000in1 multicart with interesting FUTBOL COLOMBIANO remake of soccer game that I never spotten anywhere in the internet
It was released on Lost in Bygone Gaming in February 2021
User avatar
TmEE
Posts: 1074
Joined: Wed Feb 13, 2008 9:10 am
Location: Norway (50 and 60Hz compatible :P)

Re: Another interesting famiclone (BS-500) with WRAM access issues

Post by TmEE »

Famiclones in this type of shell tend to have an interesting blob chip that usually has 3 jumpers to select between :

* 21/26MHz
* PAL/NTSC
* 50/60Hz
User avatar
krzysiobal
Posts: 1221
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland

Re: Another interesting famiclone (BS-500) with WRAM access issues

Post by krzysiobal »

NewRisingSun wrote: Sun Nov 02, 2025 2:12 am It was released on Lost in Bygone Gaming in February 2021
Oh, looks like google doesn't like Bygone Gaming website plus there is mispell (Futbol Columbiano) which makes it even more hard to search.
TmEE wrote: Famiclones in this type of shell tend to have an interesting blob chip that usually has 3 jumpers to select between :
Each one similar-shell famiclone I had of this type have different internals, looks like they put inside what they have. Common facftor is that most of them have some kind of broken audio that has either loud noise, humm or missing channels when certain notes are played.
Image My website: http://krzysiobal.com | Image My NES/FC flashcart: http://krzysiocart.com
NewRisingSun
Posts: 1593
Joined: Thu May 19, 2005 11:30 am

Re: Another interesting famiclone (BS-500) with WRAM access issues

Post by NewRisingSun »

krzysiobal wrote: Sun Nov 02, 2025 10:43 am Oh, looks like google doesn't like Bygone Gaming website plus there is mispell (Futbol Columbiano) which makes it even more hard to search.
Yeah, we are using the opposite of Search Engine Optimization. :D Start at unlicensed.games and take it from there.
User avatar
TmEE
Posts: 1074
Joined: Wed Feb 13, 2008 9:10 am
Location: Norway (50 and 60Hz compatible :P)

Re: Another interesting famiclone (BS-500) with WRAM access issues

Post by TmEE »

krzysiobal wrote: Sun Nov 02, 2025 10:43 amEach one similar-shell famiclone I had of this type have different internals, looks like they put inside what they have. Common facftor is that most of them have some kind of broken audio that has either loud noise, humm or missing channels when certain notes are played.
Interesting, the ones I have had access to (in Estonia) were relatively consistent except perhaps the ones that came around in second half of 2000s. No broken audio, with exception of quite loud DPCM+Triangle (which I actually prefer subjectively). These clones also had characteristic reset behaviour, with a column of narrow dark grey lines in middle of screen while button is held (Vsync is gone, Hsync I'm not sure, I never tried to see what actually happens). The chip that behaves that way is definitely my favorite among the famiclone chipsets I have encountered.