Page 1 of 1

Doki Doki Panic - Pirate FDS port

Posted: Mon Jun 03, 2019 1:49 pm
by krzysiobal
Another pirate port from FDS to famicom (after SMB2J, Nazo no Murasamejou and maybe many others that you can give examples).
This mapper uses non-standard bank alignment (very similar to LH-53).
I would attach the ROM but can't see anything that I can make IPS patch from.

Image Image Image Image Image

Code: Select all

16kB PRG-RAM + 128kB PRG-ROM + 8kB CHR-ROM
PRG banking register $8000 (mask: $F000)
[....pppp] (pppp: PRG bank at $6000)
    
Mirroring register $E000 (mask: $F000)
[....m...] (m: 0=V, 1=H)

PRG mode register $F000 (mask: $F000)
[...v....] (v: 0=RAM, 1=ROM)

PRG configuration (for reads)
v 6000 6800 7000 7800  8000 8800 9000 9800  a000 a800 b000 b800  c000 c800 d000 d800  e000 e800 f000 f800
  ---- ---- ---- ----  ---- ---- ---- ----  ---- ---- ---- ----  ---- ---- ---- ----  ---- ---- ---- ----
0 RAM1 RAM1 RAM1 RAM1  ROMc ROMc ROMc ROMc  ROMd ROMd ROMd RAM0  RAM0 RAM0 RAM0 ROMe  ROMf ROMf ROMf ROMf
1 ROM# ROM# ROM# ROM#  ROMc ROMc ROMc ROMc  ROMd ROMd ROMd ROMd  ROMe ROMe ROMe ROMe  ROMf ROMf ROMf ROMf  

PRG configuration (for writes)
v 6000 6800 7000 7800  8000 8800 9000 9800  a000 a800 b000 b800  c000 c800 d000 d800  e000 e800 f000 f800
  ---- ---- ---- ----  ---- ---- ---- ----  ---- ---- ---- ----  ---- ---- ---- ----  ---- ---- ---- ----
0 RAM1 RAM1 RAM1 RAM1  -    -    -    -     -    -    -    RAM0  RAM0 RAM0 RAM0 -     -    -    -    -
1 RAM1 RAM1 RAM1 RAM1  -    -    -    -     -    -    -    RAM0  RAM0 RAM0 RAM0 -     -    -    -    -

CHR configuration:
8kB RAM

Notes:
*Those are 8kB banks (just they don't always end on 8kB boundary so 2kB granularity was needed)
*RAM0 means first 8k of RAM 
*RAM1 means second 8k of RAM
*ROM# means ROM with the bank selected by register $8000
*ROMc/ROMd/ROMe/ROMf means $c/$d/$e/$f 8kB bank of the ROM

Re: Doki Doki Panic - Pirate FDS port

Posted: Mon Jun 03, 2019 3:46 pm
by NewRisingSun
This is iNES mapper 103, not yet described on the wiki. The ROM is in GoodNES 3.23b as "Doki Doki Panic (FDS Conversion).nes".

Re: Doki Doki Panic - Pirate FDS port

Posted: Sat Oct 19, 2019 8:58 am
by Ice Man
I tested the PCB with the mapper 103 ROM as I made my own PCB for this but the game just crashes.
It boots, shows title screen but as soon as first ballon pops it jumps to character select screen.
After I choose character the game crashes.

I have checked every connection twice and they all match krzy's schematic.

Added screenshots just in case.

P.S. I know connector 57 and 58 (CIRAM /CE and PPU /A13) are tied together.
I did this afterwards but still same error.

So either something wrong in the schematic, my board or this is not mapper 103.

EDIT: Don't mind the missing CIC. It's disabled in my NES anyway and NES clones usually don't have them anyway.
EDIT2: Confirmed this is mapper 103. Krzy's dump is exactly the same as FDS Conversion ROM found in GoodNES.

Re: Doki Doki Panic - Pirate FDS port

Posted: Sat Oct 19, 2019 9:32 am
by krzysiobal
As you can see, the signal used to generate RAM /CE uses many gates, lot of paths with different length (up to 7 gates), which might result in hazards or quick pulses.
Your SRAM is 70ns which might be vulnerable to such hazards (original was 200ns). Try slower RAM or some circuit do delay falling edge of RAM /CE.
I'm also sceptic to HC chips, should be rather LS or HCT.

Re: Doki Doki Panic - Pirate FDS port

Posted: Sat Oct 19, 2019 10:04 am
by Ice Man
What's wrong with using HC? Haven't had issues with it so far.

Sadly I do not have any other 62256 at this moment but I can try another one in a bit.

Re: Doki Doki Panic - Pirate FDS port

Posted: Sat Oct 19, 2019 10:23 am
by krzysiobal
Cut trace and add:
Image

Re: Doki Doki Panic - Pirate FDS port

Posted: Sat Oct 19, 2019 11:33 am
by Ice Man
Just ordered 56pF capacitor as I didn't have. Will let you know how it went.

EDIT: Game is working fine without 56pF, too! Dziekuje!

Re: Doki Doki Panic - Pirate FDS port

Posted: Sat Oct 19, 2019 6:37 pm
by aquasnake
seems like making slewrate slower