Skip to content
This repository has been archived by the owner on Aug 17, 2021. It is now read-only.

Dual Genesis/MegaDrive pad support #59

Open
thejpster opened this issue Mar 17, 2019 · 2 comments
Open

Dual Genesis/MegaDrive pad support #59

thejpster opened this issue Mar 17, 2019 · 2 comments

Comments

@thejpster
Copy link
Owner

I've concluded we need two joystick inputs, so we can have two player games. It would also be good to support MegaDrive pads (mainly as I have two of those anyway).

A MegaDrive pad has 6 active-low output pins, and a 5V input select signal, giving a total of 12 possible outputs from the pad. These are Up, Down, NC, NC, A, Start, Up, Down, Left, Right, B, C.

We currently have five inputs for the Joystick, plus two unused pins. We have no pins free on the Atmega (actually we have minus 1 free pins). Using an MCP23S17 we can handle the 12 inputs, and two select outputs using our existing I2C bus interface, freeing up 5 I/O pins (one of which is an active-low button on the Launchpad anyway).

Or we could upgrade the Atmega to a 40-pin device.

@thejpster
Copy link
Owner Author

@thejpster
Copy link
Owner Author

The SPI version of the chip might be faster than the i2c version.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant