Any registers that could outputs a clock signal?

Discussion of hardware and software development for Super NES and Super Famicom. See the SNESdev wiki for more information.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Post Reply
mightydidz
Posts: 104
Joined: Wed Jan 24, 2018 12:04 pm

Any registers that could outputs a clock signal?

Post by mightydidz »

For SNES:
I'm searching a way to use a Rom address line to interact with a PIC MCU.
I'm wondering if writing to a particular register could make an address line pulse.

I'd like to establish a link between the rom and a pic so I may count

I want to write a homebrew menu to count how many time the d-pad is pressed.
Each time I press the d-pad i want to generate a clock to an address line wich would be connected to the pic (not the bus)
This way the pic would count the pulses from the rom.

Thanks
Last edited by mightydidz on Fri May 17, 2019 2:42 pm, edited 1 time in total.
supercat
Posts: 161
Joined: Thu Apr 18, 2019 9:13 am

Re: Any registers that could outputs a clock signal?

Post by supercat »

mightydidz wrote:I'm searching a way to use a Rom address line to interact with a PIC MCU.
I'm wondering if writing to a particular register could make an address line pulse.

I'd like to establish a link between the rom and a pic so I may count

I want to write a homebrew menu to count how many time the d-pad is pressed.
Each time I press the d-pad i want to generate a clock to an address line wich would be connected to the pic (not the bus)
This way the pic would count the pulses from the rom.

Thanks
I'm not quite sure why you would want to use an external microcontroller like a PIC in a menu cart, but you could use a 74HCT259 to add eight output pins that would be independently controlled by address ranges on the cart. Wire /LE (pin 14) to /ROMEN, A0-A2 to the Nintendo's A12-A14, and D to the Nintendo's A11. This will not affect the behavior of the cartridge or the code on it, but any access to any address in the range $8000-$87FF will set the first output low, $8800-8FFF will set it high, $9000-$97FF will set the second output low, $9800-$9FFF will set it high, etc. Depending upon what your program wants to do, and how much code is required to do that, it may or may not be practical to make good use of all eight outputs, but unlike some approaches using other parts this one makes it easy to switch any output without affecting any others.
Post Reply