mirror of https://github.com/stella-emu/stella.git
added Genesis autodetection for Zeviouz
This commit is contained in:
parent
c00fda482d
commit
42fc3f4f14
|
@ -121,7 +121,7 @@ bool ControllerDetector::usesJoystickButton(const ByteBuffer& image, size_t size
|
||||||
if(port == Controller::Jack::Left)
|
if(port == Controller::Jack::Left)
|
||||||
{
|
{
|
||||||
// check for INPT4 access
|
// check for INPT4 access
|
||||||
const int NUM_SIGS_0 = 23;
|
const int NUM_SIGS_0 = 24;
|
||||||
const int SIG_SIZE_0 = 3;
|
const int SIG_SIZE_0 = 3;
|
||||||
uInt8 signature_0[NUM_SIGS_0][SIG_SIZE_0] = {
|
uInt8 signature_0[NUM_SIGS_0][SIG_SIZE_0] = {
|
||||||
{ 0x24, 0x0c, 0x10 }, // bit INPT4; bpl (joystick games only)
|
{ 0x24, 0x0c, 0x10 }, // bit INPT4; bpl (joystick games only)
|
||||||
|
@ -139,6 +139,7 @@ bool ControllerDetector::usesJoystickButton(const ByteBuffer& image, size_t size
|
||||||
{ 0xb4, 0x0c, 0x30 }, // ldy INPT4|$30,x; bmi (joystick games only)
|
{ 0xb4, 0x0c, 0x30 }, // ldy INPT4|$30,x; bmi (joystick games only)
|
||||||
{ 0xa5, 0x3c, 0x2a }, // ldy INPT4|$30; rol (joystick games only)
|
{ 0xa5, 0x3c, 0x2a }, // ldy INPT4|$30; rol (joystick games only)
|
||||||
{ 0xa6, 0x3c, 0x8e }, // ldx INPT4|$30; stx (joystick games only)
|
{ 0xa6, 0x3c, 0x8e }, // ldx INPT4|$30; stx (joystick games only)
|
||||||
|
{ 0xa6, 0x0c, 0x8e }, // ldx INPT4; stx (joystick games only)
|
||||||
{ 0xa4, 0x3c, 0x8c }, // ldy INPT4; sty (joystick games only, Scramble)
|
{ 0xa4, 0x3c, 0x8c }, // ldy INPT4; sty (joystick games only, Scramble)
|
||||||
{ 0xa5, 0x0c, 0x8d }, // lda INPT4; sta (joystick games only, Super Cobra Arcade)
|
{ 0xa5, 0x0c, 0x8d }, // lda INPT4; sta (joystick games only, Super Cobra Arcade)
|
||||||
{ 0xa4, 0x0c, 0x30 }, // ldy INPT4|; bmi (only Game of Concentration)
|
{ 0xa4, 0x0c, 0x30 }, // ldy INPT4|; bmi (only Game of Concentration)
|
||||||
|
@ -392,7 +393,7 @@ bool ControllerDetector::usesGenesisButton(const ByteBuffer& image, size_t size,
|
||||||
if(port == Controller::Jack::Left)
|
if(port == Controller::Jack::Left)
|
||||||
{
|
{
|
||||||
// check for INPT1 access
|
// check for INPT1 access
|
||||||
const int NUM_SIGS_0 = 18;
|
const int NUM_SIGS_0 = 19;
|
||||||
const int SIG_SIZE_0 = 3;
|
const int SIG_SIZE_0 = 3;
|
||||||
uInt8 signature_0[NUM_SIGS_0][SIG_SIZE_0] = {
|
uInt8 signature_0[NUM_SIGS_0][SIG_SIZE_0] = {
|
||||||
{ 0x24, 0x09, 0x10 }, // bit INPT1; bpl (Genesis only)
|
{ 0x24, 0x09, 0x10 }, // bit INPT1; bpl (Genesis only)
|
||||||
|
@ -408,6 +409,7 @@ bool ControllerDetector::usesGenesisButton(const ByteBuffer& image, size_t size,
|
||||||
{ 0xa4, 0x39, 0x30 }, // ldy INPT1|$30; bmi (keyboard ROMS too)
|
{ 0xa4, 0x39, 0x30 }, // ldy INPT1|$30; bmi (keyboard ROMS too)
|
||||||
{ 0xa5, 0x39, 0x6a }, // lda INPT1|$30; ror (Genesis only)
|
{ 0xa5, 0x39, 0x6a }, // lda INPT1|$30; ror (Genesis only)
|
||||||
{ 0xa6, 0x39, 0x8e }, // ldx INPT1|$30; stx (Genesis only)
|
{ 0xa6, 0x39, 0x8e }, // ldx INPT1|$30; stx (Genesis only)
|
||||||
|
{ 0xa6, 0x09, 0x8e }, // ldx INPT1; stx (Genesis only)
|
||||||
{ 0xa4, 0x39, 0x8c }, // ldy INPT1|$30; sty (Genesis only, Scramble)
|
{ 0xa4, 0x39, 0x8c }, // ldy INPT1|$30; sty (Genesis only, Scramble)
|
||||||
{ 0xa5, 0x09, 0x8d }, // lda INPT1; sta (Genesis only, Super Cobra Arcade)
|
{ 0xa5, 0x09, 0x8d }, // lda INPT1; sta (Genesis only, Super Cobra Arcade)
|
||||||
{ 0xa5, 0x09, 0x29 }, // lda INPT1; and (Genesis only)
|
{ 0xa5, 0x09, 0x29 }, // lda INPT1; and (Genesis only)
|
||||||
|
|
Loading…
Reference in New Issue