Perform bank-switching on target EPROMs with an ATTiny85/45/25/13.
- Control 8 / 16 banks: 0x000 to 0b111 / 0b1111
- Change bank with button press or hold
- Reset a target PCB
- Non-volatile storage tracks current bank between power-cycles
- Alternatively use as a 'hold for coin-up' mod by connecting RESET to Coin and ACTION to P1 Start
ATTINY85/45/25/13
_ _
(A3*) -| \/ |- VCC
ACTION -| |- A2
RESET -| |- A1
GND -|____|- A0
*Enabling A3 will increase control to 16 banks but limit reprogramming ATTiny to devices that can set fuse bits (TL866 or similar)
Connect RESET (pin 3) to target device reset line. This will enable the ATTiny to pulse the reset line when it has switched banks.
Connect ACTION (pin 2) to external button.
- Set HOLD_FOR_BANKSWITCH to false:
- momentarily pulling the line LOW, ATTiny will increment bank number. This line is already debounced.
- Set HOLD_FOR_BANKSWITCH to true:
- pulling line low for 4 seconds will increment bank.
Connect address lines (A0 to A3 - pins 5,6,7 & 1) to target EPROMs' upper address lines to perform bank-switching on those EPROMs.
Set 'ENABLE_A3' to true
- Set HOLD_FOR_BANKSWITCH to true
- reduce hold time to 2 seconds
- program ATTiny85
- hot glue ATTiny85 to P1 microswitch
- connect pin 4 to P1 microswitch GND
- connect pin 2 to P1 microswitch N/O
- connect pin 8 to JAMMA harness 5v
- connect pin 3 to JAMMA harness Coin
- hold P1 Start for 2 seconds to simulate insert coin