From 61738876e3405ede996213c3155bcfc2584915b3 Mon Sep 17 00:00:00 2001 From: Martin Donlon Date: Sun, 10 Nov 2024 16:03:50 -0800 Subject: [PATCH] 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 --- src/mame/irem/irem_cpu.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mame/irem/irem_cpu.cpp b/src/mame/irem/irem_cpu.cpp index 1f91e53c554..794996ebf7e 100644 --- a/src/mame/irem/irem_cpu.cpp +++ b/src/mame/irem/irem_cpu.cpp @@ -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