SuperCIC 12F629 problem with Super Famicom console

Discussion of hardware and software development for Super NES and Super Famicom.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Post Reply
Ice Man
Posts: 530
Joined: Fri Jul 04, 2014 2:34 pm

SuperCIC 12F629 problem with Super Famicom console

Post by Ice Man » Sat Mar 21, 2020 1:54 am

I have made some custom SNES PCBs for LoROM and HiROM games myself and while they all work fine and save as well, the CIC is giving me problems and I have no idea why.
If I play the carts in my PAL SNES with 50Hz they operate like they should without issues.
However, when trying to play the same carts in my Super Famicom with 60Hz I will lose signal randomly. Sometimes it takes 2 seconds, sometimes a few minutes but it WILL happen.
After that I can still reset the SuperCIC 2x and it will go back to NTSC and get signal again, but eventually lose it again after a few seconds.

So I desoldered one of those SuperCICs from my board and tested them on a original Nintendo board (SHVC-1A0N) and they all work properly in both, NTSC and PAL.

At first I thought it was something with my boards, but when adding a original NTSC CIC named D411 to my boards, the carts started working properly in NTSC without losing signal.

The CIC and every other IC is fed with a 100nF capacitor directly placed at their VCC pins as well as having a 22uf decoupling capacitor on the board.
Attached pictures of the boards just in case someone knows what's wrong here. Don't mind the wires, I accidentally routed those 2 connections wrong. :P

The firmware tested was snescic_key.hex from borti4938 as well as supercic_key.hex from ikari. Both with the same results. :cry:
Attachments
IMG_20200319_203738.jpg
IMG_20200319_203732.jpg

User avatar
Memblers
Site Admin
Posts: 3833
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Memblers » Sat Mar 21, 2020 3:43 am

Sounds like the internal oscillator might be out of spec (assuming that is what it's running from). I looked in the datasheet and it has this note:

Note: Erasing the device will also erase the pre-programmed internal calibration value for the internal oscillator. The calibration value must be saved prior to erasing part as specified in the PIC12F629/675 Programming specification. Microchip Development Tools maintain all calibration bits to factory settings.

edit: I'm pretty sure the CIC clock is the same on NTSC/PAL, so I don't know why there would be a difference there. Unless it's coincidence.

Ice Man
Posts: 530
Joined: Fri Jul 04, 2014 2:34 pm

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Ice Man » Sat Mar 21, 2020 4:04 am

The TL866 II Plus programmer automatically does that.
Otherwise it would happen in the original SHVC-1A0N board as well and with any region, which it does not.

Found another 12F629 (this time in SO8) laying around + an adapter I made to suit the original CIC to replace 1-1.
Those have worked perfect on original boards but fails on mine, too.

Now even with 50Hz on my PAL SNES but it takes way longer to lose the signal.

I have no idea what's causing the issue but it's definetely not the 12F629..
Though I have no idea why original CICs are working.

Update: Soldered a 1.5k ohm resistor between cart 56 and CIC Clock (pin 6) and it works fine in my PAL SNES now. Running the game for 5 minutes without any signal loss. Still same problem in my Super Famicom.

I don't get it.

Markfrizb
Posts: 520
Joined: Sun Dec 02, 2012 8:17 am
Location: East Texas

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Markfrizb » Sat Mar 21, 2020 8:18 am

Ice Man wrote:
Sat Mar 21, 2020 4:04 am
The TL866 II Plus programmer automatically does that.
Otherwise it would happen in the original SHVC-1A0N board as well and with any region, which it does not.

Found another 12F629 (this time in SO8) laying around + an adapter I made to suit the original CIC to replace 1-1.
Those have worked perfect on original boards but fails on mine, too.

Now even with 50Hz on my PAL SNES but it takes way longer to lose the signal.

I have no idea what's causing the issue but it's definetely not the 12F629..
Though I have no idea why original CICs are working.

Update: Soldered a 1.5k ohm resistor between cart 56 and CIC Clock (pin 6) and it works fine in my PAL SNES now. Running the game for 5 minutes without any signal loss. Still same problem in my Super Famicom.

I don't get it.
I think you have a signal integrity issue here. Too much cross talk from your MUX's would be my guess.

Ice Man
Posts: 530
Joined: Fri Jul 04, 2014 2:34 pm

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Ice Man » Sat Mar 21, 2020 8:48 am

But why would it work better (or always) in 50Hz PAL SNES?

And Retrostage's SNES MegaROM PCB is similar.

CIC to the left and the MUXes right next to it and it works.

Markfrizb
Posts: 520
Joined: Sun Dec 02, 2012 8:17 am
Location: East Texas

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Markfrizb » Sat Mar 21, 2020 9:02 am

Ice Man wrote:
Sat Mar 21, 2020 8:48 am
But why would it work better (or always) in 50Hz PAL SNES?

And Retrostage's SNES MegaROM PCB is similar.

CIC to the left and the MUXes right next to it and it works.
Actually retrostage had reset issues too, in some of his earlier designs. Maybe he has better ground flooding. I am not familiar with his layouts so I don’t know. 50hz is a different timing. I’m not trying to convince you this is your issue, just offering possibilities

Ice Man
Posts: 530
Joined: Fri Jul 04, 2014 2:34 pm

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Ice Man » Sat Mar 21, 2020 9:06 am

I appreciate any help I can get since this is driving me nuts.
I have used ground planes so all of the board that is unrouted is actually GND area.

I didn't know that he had reset issues, too.

But how come original CIC (D411 or D413) are working without issue? I thought the SuperCIC immitates them?

User avatar
getafixx
Posts: 366
Joined: Tue Dec 04, 2012 3:28 pm
Location: Canada

Re: SuperCIC 12F629 problem with Super Famicom console

Post by getafixx » Sat Mar 21, 2020 9:26 am

Markfrizb wrote:
Sat Mar 21, 2020 9:02 am
Actually retrostage had reset issues too, in some of his earlier designs. Maybe he has better ground flooding. I am not familiar with his layouts so I don’t know.
The older designs had issues with cross-talk, but those were rectified back in 2015. The issue was mainly just lazy routing, TBH.
Ice Man wrote:
Sat Mar 21, 2020 9:06 am
But how come original CIC (D411 or D413) are working without issue? I thought the SuperCIC immitates them?
What are you doing with the /PAIR pin on the SuperCIC? I seem to remember reading somewhere that if you tied that pin to another pin as in some earlier documents that it would cause intermittent booting, and it should be pulled up to VCC if you aren't using the pair function. This is from memory though so take that with a grain of salt.

Ice Man
Posts: 530
Joined: Fri Jul 04, 2014 2:34 pm

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Ice Man » Sat Mar 21, 2020 9:29 am

Pin 3 (Status) is not connected anywhere.
Pin 4 (/PAIR) is not connected anywhere either.

Taken from supercic_key.asm file:
; The /PAIR pin can be used to enable or disable SuperCIC pair mode.
; It can be tied low or high to statically enable or disable pair mode
; detection, or connected to a switch or MCU to dynamically enable pair
; mode detection (it should then be connected to a pull-up resistor to
; Vcc). Pair mode detection can be enabled during operation,
; but pair mode cannot be left until the next power cycle.
; See SuperCIC lock documentation for a more detailed description of
; pair mode.
Should I connect it to anything?

EDIT: Connected /PAIR to VCC to disable it but same result. Game boots in 60Hz but crashes after a while.

lidnariq
Posts: 9383
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: SuperCIC 12F629 problem with Super Famicom console

Post by lidnariq » Sat Mar 21, 2020 10:32 am

Memblers wrote:
Sat Mar 21, 2020 3:43 am
Sounds like the internal oscillator might be out of spec (assuming that is what it's running from). I looked in the datasheet and it has this note:
The SuperCIC/SNESCIC always run off of external clock, so the internal calibration is irrelevant.

(Also, different SNESes use different clocks: the earliest ones use a 4MHz ceramic resonator. The later ones use a 3MHz signal from the APU.)

At some point they made a change to SuperCIC that subtly changed the timing, and only fixed it a year ago. This might be relevant, I don't know.

(My release of SuperCIC-for-10f322 is older than this)

Ice Man
Posts: 530
Joined: Fri Jul 04, 2014 2:34 pm

Re: SuperCIC 12F629 problem with Super Famicom console

Post by Ice Man » Sat Mar 21, 2020 11:15 am

I'm actually using that version. Just compared.

Post Reply