Joypad

From NeoGeo Development Wiki
Revision as of 02:33, 12 July 2011 by Furrtek (talk | contribs)
Jump to navigation Jump to search

Joypads have 4 directions and 4 buttons contacts.

Registers used to read the button's states directly (all bits are active low):

  • REG_P1CNT ($300000), Player 1:
  • REG_P2CNT ($340000), Player 2:
Bit 7 6 5 4 3 2 1 0
Def D CBARightLeftUpDown
  • REG_STATUS_B ($380000), SELECTs and STARTs:
Bit 7 6 5 4 3 2 1 0
Def - P2 SelectP2 StartP1 SelectP2 Start

The SYSTEM_IO ($C0044A) BIOS call can be used to read joypads more easily: it sets values in the BIOS's RAM space which gives currently pressed, state change, and "repeat" values for both joypads. Need details...