improved keyboard detection (JamLoopy demo)

This commit is contained in:
thrust26 2020-06-02 21:42:25 +02:00
parent 9d1c3df1d4
commit e273ed4272
1 changed files with 4 additions and 2 deletions

View File

@ -314,13 +314,14 @@ bool ControllerDetector::usesKeyboard(const uInt8* image, size_t size,
else if(port == Controller::Jack::Right)
{
// check for INPT2 *AND* INPT3 access
const int NUM_SIGS_0_0 = 5;
const int NUM_SIGS_0_0 = 6;
const int SIG_SIZE_0_0 = 3;
uInt8 signature_0_0[NUM_SIGS_0_0][SIG_SIZE_0_0] = {
{ 0x24, 0x3a, 0x30 }, // bit INPT2|$30; bmi
{ 0xa5, 0x3a, 0x10 }, // lda INPT2|$30; bpl
{ 0xa4, 0x3a, 0x30 }, // ldy INPT2|$30; bmi
{ 0x24, 0x0a, 0x30 }, // bit INPT2; bmi
{ 0x24, 0x0a, 0x10 }, // bit INPT2; bpl
{ 0xa6, 0x0a, 0x30 } // ldx INPT2; bmi
};
const int NUM_SIGS_0_2 = 1;
@ -329,13 +330,14 @@ bool ControllerDetector::usesKeyboard(const uInt8* image, size_t size,
{ 0xb5, 0x38, 0x29, 0x80, 0xd0 } // lda INPT2,x; and #80; bne
};
const int NUM_SIGS_1_0 = 5;
const int NUM_SIGS_1_0 = 6;
const int SIG_SIZE_1_0 = 3;
uInt8 signature_1_0[NUM_SIGS_1_0][SIG_SIZE_1_0] = {
{ 0x24, 0x3b, 0x30 }, // bit INPT3|$30; bmi
{ 0xa5, 0x3b, 0x10 }, // lda INPT3|$30; bpl
{ 0xa4, 0x3b, 0x30 }, // ldy INPT3|$30; bmi
{ 0x24, 0x0b, 0x30 }, // bit INPT3; bmi
{ 0x24, 0x0b, 0x10 }, // bit INPT3; bpl
{ 0xa6, 0x0b, 0x30 } // ldx INPT3; bmi
};
const int NUM_SIGS_1_2 = 1;