PC-FX controller interface
Hi. I am working on a project to connect a microcontroller to a PC-FX pad, and then to USB. I am having trouble finding detailed info on the pad.
So far I have managed to glean some info from a few Japanese web sites. It appears to be a parallel in serial out shift register arrangement, similar to Famicom/NES/SNES pads. The problem is figuring out which lines do which.
There are four "data" lines. One must be latch, one serial data and one serial clock. I think the forth is a read/write toggle, but I'm not sure what you would want to actually write to the controller. Might be something to do with multi-taps.
Has anyone got any more information? I will figure it out by simply trying all possibly combinations of lines eventually, but it would be a lot easier if someone could provide even just a pin-out.
I've spent ages looking for developer docs but can't find any online :(
Have you tried opening up the controller? I would have guessed it was based on the PCE pad.
Last edited by Calpis; 06-09-2009 at 06:29 AM.
I have opened it, but it is different to the PC-E pads.
Inside there is one IC, a custom NEC one which I cannot find a data sheet for. I was at least able to get the pinout for the cable:
The documentation says it is a serial interface.
Last edited by mojo; 06-09-2009 at 10:41 PM.
Do you have a multimeter with frequency counter? Load will be 60ish Hz, CLK will be 60ish*12ish Hz, Data will be a very low frequency without pressing any buttons, slightly higher by pressing some of them. If you think one signal is a data input, it will be DC.
I have a logic analyzer, what I don't have is an actual PC-FX console to connect my controller to >_<
If I had one I could figure it out in minutes. Maybe I'll have to look at getting one, but outside of Japan they sell for silly money.
Do you have a PC with parallel port? You could connect all 4 signals to the data port through 4.7K resistors and feed them back to the status port.
Sorry, I don't follow you... I don't have an actual PC-FX console, only the controller. I have a logic analyser so reading the data isn't a problem.
Originally Posted by Calpis
Without the console you could RE the controller just using a parallel port. The resistors will protect the LPT and pad during conflicts yet still drive the pad's inputs and yield to the pad's output.
Reading the protocol with your logic analyzer *is* a problem if you don't have a console ;)
Last edited by Calpis; 06-11-2009 at 05:26 AM.
Ah, I see what you mean. I can just use the AVR to do that though, it's easy enough. You have given me an interesting idea though - a debug lead using USB and an AVR with a Windows program to control the I/O lines.