fix an opcode in quizf1

fix dasm for bp+ix+offset8 and bp+it+offset8
This commit is contained in:
Roberto Zandona 2008-04-13 09:22:07 +00:00
parent 26474ff5de
commit dfe1952883
2 changed files with 49 additions and 37 deletions

View File

@ -916,8 +916,8 @@ static void handle_modrm(char* s)
{
case 0: s += sprintf( s, "bw+ix" ); break;
case 1: s += sprintf( s, "bw+iy" ); break;
case 2: s += sprintf( s, "bw+ix" ); break;
case 3: s += sprintf( s, "bw+iy" ); break;
case 2: s += sprintf( s, "bp+ix" ); break;
case 3: s += sprintf( s, "bp+iy" ); break;
case 4: s += sprintf( s, "ix" ); break;
case 5: s += sprintf( s, "iy" ); break;
case 6:

View File

@ -108,38 +108,38 @@ const UINT8 bomberman_decryption_table[256] = {
const UINT8 lethalth_decryption_table[256] = {
0x7f,0x26,0x5d,xxxx,0xba,xxxx,0x1e,0x5e, 0xb8,xxxx,0xbc,0xe8,0x01,xxxx,0x4a,0x25, /* 00 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
xxxx,0xbd,xxxx,0x22,0x10,xxxx,0x02,0x57, 0x70,xxxx,0x7c,xxxx,0xe7,0x52,xxxx,0xa9, /* 10 */
// !!!! !!!! !!!! !!!! !!!!
xxxx,xxxx,0xc6,0x06,0xa0,0xfe,0xcf,0x8e, 0x43,0x8f,0x2d,xxxx,0xd4,0x85,0x75,0xa2, /* 20 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x3d,xxxx,xxxx,0x38,0x7c,0x89,0xd1,0x80, 0x3b,0x72,0x07,xxxx,0x42,0x37,0x0a,0x18, /* 30 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x88,0xb4,0x98,0x8b,0xb9,0x9c,0xad,0x0e, 0x2b,xxxx,0xbf,xxxx,0x55,xxxx,0x56,0xb0, /* 40 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x93,0x91,xxxx,0xeb,xxxx,0x50,0x41,0x29, 0x47,xxxx,xxxx,0x60,xxxx,0xab,xxxx,xxxx, /* 50 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0xc3,0xe2,0xd0,0xb2,0x11,0x79,xxxx,0x08, xxxx,0xfb,xxxx,0x2c,0x23,xxxx,0x28,0x0d, /* 60 */
// !!!! !!!! !!!! !!!! !!!! !!!!
xxxx,xxxx,xxxx,0x83,0x3c,xxxx,0x1b,0x34, 0x5b,xxxx,0x40,xxxx,xxxx,0x04,0xfc,0x09, /* 70 */
// !!!! !!!! !!!! !!!! !!!!
0xb1,0xf3,0x8a,xxxx,xxxx,0x87,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,0xbe,0x84,0x1f,0xe6, /* 80 */
// !!!! !!!! !!!! !!!!
0xff,xxxx,0x12,xxxx,0xb5,0x36,xxxx,0xb3, xxxx,xxxx,xxxx,0xd2,0x4e,xxxx,xxxx,xxxx, /* 90 */
// !!!! !!!! !!!!
0xa5,xxxx,xxxx,0xc7,xxxx,0x27,0x0b,xxxx, 0x20,xxxx,xxxx,xxxx,xxxx,xxxx,0x61,0x7f, /* A0 */
// !!!! !!!! !!!! !!!!
xxxx,xxxx,0x86,0x0f,xxxx,0xb7,xxxx,0x4f, xxxx,xxxx,0xc0,0xfd,xxxx,0x39,xxxx,0x77, /* B0 */
// !!!! !!!! !!!! !!!! !!!!
0x05,0x3a,xxxx,0x48,0x92,0x7a,0x3e,0x03, xxxx,0xf8,xxxx,0x59,0xa8,0x5f,0xf9,0xbb, /* C0 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x81,0xfa,0x9d,0xe9,0x2e,0xa1,0xc1,0x33, xxxx,0x78,xxxx,0x0c,xxxx,0x24,0xaa,0xac, /* D0 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
xxxx,0xb6,xxxx,0xea,xxxx,0x73,0xe5,0x58, 0x00,0xf7,xxxx,0x74,xxxx,0x7e,xxxx,0xa3, /* E0 */
// !!!! !!!! !!!! !!!! !!!! !!!!
xxxx,0x5a,0xf6,0x32,0x46,0x2a,xxxx,xxxx, 0x53,0x4b,0x90,xxxx,0x51,0x68,0x99,0x13, /* F0 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x7d,0x26,0x5d,xxxx,0xba,xxxx,0x1e,0x5e, 0xb8,xxxx,0xbc,0xe8,0x01,xxxx,0x4a,0x25, /* 00 */
// ???? !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
xxxx,0xbd,xxxx,0x22,0x10,xxxx,0x02,0x57, 0x70,xxxx,0x7e,xxxx,0xe7,0x52,xxxx,0xa9, /* 10 */
// !!!! !!!! !!!! ???? !!!! !!!! gggg
xxxx,xxxx,0xc6,0x06,0xa0,0xfe,0xcf,0x8e, 0x43,0x8f,0x2d,xxxx,0xd4,0x85,0x75,0xa2, /* 20 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x3d,xxxx,xxxx,0x38,0x78,0x89,0xd1,0x80, 0x3b,0x72,0x07,xxxx,0x42,0x37,0x0a,0x18, /* 30 */
// gggg !!!! ???? !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x88,0xb4,0x98,0x8b,0xb9,0x9c,0xad,0x0e, 0x2b,xxxx,0xbf,xxxx,0x55,xxxx,0x56,0xb0, /* 40 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0x93,0x91,xxxx,0xeb,xxxx,0x50,0x41,0x29, 0x47,xxxx,xxxx,0x60,xxxx,0xab,xxxx,xxxx, /* 50 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!!
0xc3,0xe2,0xd0,0xb2,0x11,0x79,xxxx,0x08, xxxx,0xfb,xxxx,0x2c,0x23,xxxx,0x28,0x0d, /* 60 */
// !!!! !!!! !!!! !!!! ???? !!!! !!!!
xxxx,xxxx,xxxx,0x83,0x3c,xxxx,0x1b,0x34, 0x5b,xxxx,0x40,xxxx,xxxx,0x04,0xfc,0x30, /* 70 */
// !!!! !!!! !!!! !!!! !!!! ????
0xb1,0xf3,0x8a,xxxx,xxxx,0x87,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,0xbe,0x84,0x1f,0xe6, /* 80 */
// !!!! !!!! !!!! !!!! !!!!
0xff,xxxx,0x12,xxxx,0xb5,0x36,xxxx,0xb3, xxxx,xxxx,xxxx,0xd2,0x4e,xxxx,xxxx,xxxx, /* 90 */
// !!!! !!!! !!!!
0xa5,xxxx,xxxx,0xc7,xxxx,0x27,0x0b,xxxx, 0x20,xxxx,xxxx,xxxx,xxxx,xxxx,0x61,0x7f, /* A0 */
// !!!! !!!! !!!! !!!! ????
xxxx,xxxx,0x86,0x0f,xxxx,0xb7,xxxx,0x4f, xxxx,xxxx,0xc0,0xfd,xxxx,0x39,xxxx,0x77, /* B0 */
// !!!! !!!! !!!! !!!! !!!!
0x05,0x3a,xxxx,0x48,0x92,0x76,0x3e,0x03, xxxx,0xf8,xxxx,0x59,0xa8,0x5f,0xf9,0xbb, /* C0 */
// !!!! !!!! pppp !!!! !!!! !!!! !!!! !!!!
0x81,0xfa,0x9d,0xe9,0x2e,0xa1,0xc1,0x33, xxxx,0x78,xxxx,0x0c,xxxx,0x24,0xaa,0xac, /* D0 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! !!!! ???? !!!! !!!!
xxxx,0xb6,xxxx,0xea,xxxx,0x73,0xe5,0x58, 0x00,0xf7,xxxx,0x74,xxxx,0x76,xxxx,0xa3, /* E0 */
// !!!! gggg !!!! !!!! !!!! !!!! ???? !!!!
xxxx,0x5a,0xf6,0x32,0x46,0x2a,xxxx,xxxx, 0x53,0x4b,0x90,0x0d,0x51,0x68,0x99,0x13, /* F0 */
// !!!! !!!! !!!! !!!! !!!! !!!! !!!! ???? !!!! !!!!
};
/*
missing opcode:
@ -149,11 +149,23 @@ missing opcode:
"pppp" -> probably
"????" -> missing
RZ notes:
0xbf (0x77) risky challenge use same code
00 -> (79,7d,"7f") ->
1a -> (78,7c,7e) ->
34 -> (78,7c,7e) -> 78
65 -> (79,
7f -> (
af -> (79,7d,7f) (strange 71) ->
d9 -> (11e07 from 11de6) (70,78 -> to handle a01ce=000-7d0 -> 0x78
ed -> (p76,78,7c,7e) ->
fb ->
probably:
c5 -> (18d56 - from 1844f) (71,73,76,79,7a,7d,7e) -> to handle level number (a008d=00-0f) -> 0x76
guess:
e5 -> 0x73
*/
// 0x2c (0xd4) complete guess
// 0x2d (0x85) complete guess
// 0xc4 (0x92) guess