irem/irem_cpu.cpp: Change encrypted opcode 0x37 to map to 0x98 (cvtbw) in dynablaster table. (#12961)

Title screen sine wave effect loads a byte from a lookup table and scales it. Byte value needs to be sign extended using `cvtbw`, previous encryption table was mapping 0x37 to `xch aw, cw`.

Co-authored-by: Martin Donlon <git-martin@donlons.com>
This commit is contained in:
Martin Donlon 2024-11-10 16:03:50 -08:00 committed by GitHub
parent 8778ed6bfd
commit 61738876e3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -204,7 +204,7 @@ const uint8_t dynablaster_decryption_table[256] = {
0x1f,0x51,0x84,xxxx,0x3d,0x09,0x0d,xxxx, xxxx,0x57,xxxx,xxxx,xxxx,0x32,0x11,xxxx, /* 00 */
xxxx,0x9c,xxxx,xxxx,0x4b,xxxx,xxxx,0x03, xxxx,xxxx,xxxx,0x89,0xb0,xxxx,xxxx,xxxx, /* 10 */
xxxx,0xbb,0x18,0xbe,0x53,0x21,0x55,0x7c, xxxx,xxxx,0x47,0x58,0xf6,xxxx,xxxx,0xb2, /* 20 */
0x06,xxxx,0x2b,xxxx,0x2f,0x0b,0xfc, 0x91 , xxxx,xxxx,0xfa,0x81,0x83,0x40,0x38,xxxx, /* 30 */
0x06,xxxx,0x2b,xxxx,0x2f,0x0b,0xfc,0x98, xxxx,xxxx,0xfa,0x81,0x83,0x40,0x38,xxxx, /* 30 */
xxxx,xxxx,0x49,0x85,0xd1,0xf5,0x07,0xe2, 0x5e,0x1e,xxxx,0x04,xxxx,xxxx,xxxx,0xb1, /* 40 */
0xc7,xxxx,0x96, 0xf2 /*0xaf*/, 0xb6,0xd2,0xc3,xxxx, 0x87,0xba,0xcb,0x88,xxxx,0xb9,0xd0,0xb5, /* 50 */
0x9a,0x80,0xa2,0x72,xxxx,0xb4,xxxx,0xaa, 0x26,0x7d,0x52,0x33,0x2e,0xbc,0x08,0x79, /* 60 */
@ -224,7 +224,7 @@ const uint8_t dynablaster_decryption_table[256] = {
//double check 0xd1 (0x41 INC cw) used in uccops and dynablaster (LOOKS GOOD)
//AND fd (0x20)
//0x37 (91) guess from dynablaster title screen
//0x37 (98) from bbmanw title screen, sign extend al before mul
// BM - 0x61 NOT 82, but instead 0x80 verified in both Atomic Punk and UCCops
// 0x22 is 0x18 (SBB) verified from Gunforce