Due to the similarity from the similarity of the waveforms from MSX reading the digitizer using the PAD( ) function and the NES (SNES) controller protocol, the adapter circuit can solely
consists of a straight cable.
The connections for the NES and SNES
controllers are shown below. A wire connects the pin 1 to ground is also required since it tells the MSX BIOS routines that the digitizer is being touched.
A short patch cable was used to build the adapter.
A small code was used to test the interface
And here's a video showing the code at work
Here's a sample of code that shows how to use the controller in BASIC programs.
10 a = pad(0) ' dummy 20 p = not pad(1) ' read X coordinate 30 if (p & 1) then …. ' Right 40 if (p & 2) then …. ' Left 50 if (p & 4) then …. ' Down 60 if (p & 8) then …. ' Up 70 if (p & 16) then …. ' Start 80 if (p & 32) then …. ' Select 90 if (p & 64) then …. ' B on NES, Y on SNES 100 if (p & 128) then …. ' A on NES B on SNES
Limitations:
Since the MSX digitizer works with 8bit transfers, only the 8 first
buttons from SNES controller are read.