mirror of
https://github.com/holub/mame
synced 2025-06-06 04:43:45 +03:00
funworld/supercrd.cpp: last bunch of XOR tables tweaks for now
This commit is contained in:
parent
6d1bded45c
commit
09cf44d8dc
@ -363,7 +363,7 @@ uint8_t supercrd_state::decrypted_opcodes_r(offs_t offset)
|
||||
uint8_t const xor_v = data & 0x07;
|
||||
|
||||
if (((m_decode_table[offset & 0x03][row][xor_v]) == 0x00) && (data != 0xc5) && (data != 0xcd) && (data != 0xe5) && (data != 0xed))
|
||||
LOGUNKOPCODES("at %08x check opcode: %02x\n", offset, data);
|
||||
LOGUNKOPCODES("at %08x check opcode: %02x !\n", offset, data);
|
||||
return data ^ m_decode_table[offset & 0x03][row][xor_v];
|
||||
}
|
||||
|
||||
@ -1008,17 +1008,17 @@ void supercrd_state::init_supercrd() // TODO: check unknown opcodes
|
||||
{ unkn, unkn, unkn, 0x52, unkn, 0x00, 0x53, 0x01 }, // 0xcx and 0xex
|
||||
{ 0x51, 0x10, 0x12, 0x41, 0x50, 0x00, 0x50, 0x50 } // 0xdx and 0xfx
|
||||
},
|
||||
{ // quadrant 1 should be ok, missing decrypted 0x17, 0x44 0x80, 0x81, 0x82, 0x83, 0x85, 0xc4, 0xc7, 0xd0
|
||||
{ // quadrant 1 should be ok, missing decrypted 0x17, 0x44 0x80, 0x81, 0x82, 0x83, 0x85, 0xc7, 0xd0
|
||||
{ 0x43, 0x51, 0x01, 0x13, 0x51, 0x42, unkn, 0x01 }, // 0x0x and 0x2x
|
||||
{ 0x50, 0x43, 0x13, 0x11, unkn, 0x42, 0x12, 0x01 }, // 0x1x and 0x3x
|
||||
{ 0x53, 0x10, 0x11, 0x52, 0x51, 0x00, 0x10, 0x13 }, // 0x4x and 0x6x
|
||||
{ 0x42, 0x13, 0x13, 0x53, 0x40, 0x52, 0x10, 0x52 }, // 0x5x and 0x7x
|
||||
{ 0x40, 0x43, 0x51, 0x51, 0x51, 0x01, unkn, 0x00 }, // 0x8x and 0xax
|
||||
{ 0x40, 0x43, 0x51, 0x51, 0x51, 0x01, 0x42, 0x00 }, // 0x8x and 0xax
|
||||
{ unkn, 0x01, 0x43, 0x02, unkn, 0x53, 0x00, unkn }, // 0x9x and 0xbx
|
||||
{ 0x01, 0x02, unkn, 0x50, 0x51, 0x00, 0x51, 0x10 }, // 0xcx and 0xex
|
||||
{ 0x42, unkn, unkn, unkn, 0x00, 0x41, unkn, 0x01 } // 0xdx and 0xfx
|
||||
},
|
||||
{ // quadrants 1,2 should be ok, missing decrypted 0x84, 0x94, 0x96, 0xc7, 0xd7
|
||||
{ // quadrants 1,2 should be ok, missing decrypted 0x84, 0x94, 0x96, 0xc7, 0xd7
|
||||
{ 0x42, 0x00, 0x43, 0x53, 0x03, 0x53, 0x00, 0x11 }, // 0x0x and 0x2x
|
||||
{ 0x13, 0x02, 0x12, 0x11, 0x41, 0x02, 0x50, 0x53 }, // 0x1x and 0x3x
|
||||
{ 0x00, 0x12, 0x52, 0x12, 0x03, 0x00, 0x43, 0x43 }, // 0x4x and 0x6x
|
||||
@ -1050,33 +1050,33 @@ void supercrd_state::init_fruitstr() // TODO: check unknown opcodes
|
||||
|
||||
uint8_t xor_table[0x04][0x08][0x08] =
|
||||
{
|
||||
{ // quadrants 1, 2 should be ok, missing decrypted 0x82, 0x84, 0x85, 0xd0
|
||||
{ // quadrants 1, 2, 3 should be ok, missing decrypted 0x84, 0x85
|
||||
{ 0x40, 0x52, 0x53, 0x11, 0x40, 0x02, 0x10, 0x40 }, // 0x0x and 0x2x
|
||||
{ 0x11, 0x00, 0x02, 0x43, 0x40, 0x10, 0x02, 0x40 }, // 0x1x and 0x3x
|
||||
{ 0x40, 0x03, 0x10, 0x02, 0x02, 0x00, 0x40, 0x43 }, // 0x4x and 0x6x
|
||||
{ 0x52, 0x12, 0x41, 0x50, 0x02, 0x00, 0x43, 0x40 }, // 0x5x and 0x7x
|
||||
{ 0x03, unkn, 0x12, 0x42, 0x51, 0x53, 0x51, 0x01 }, // 0x8x and 0xax
|
||||
{ 0x03, 0x51, 0x12, 0x42, 0x51, 0x53, 0x51, 0x01 }, // 0x8x and 0xax
|
||||
{ 0x43, 0x52, 0x50, 0x01, 0x50, unkn, 0x00, unkn }, // 0x9x and 0xbx
|
||||
{ 0x11, 0x13, 0x53, 0x50, 0x02, 0x00, 0x41, unkn }, // 0xcx and 0xex
|
||||
{ 0x50, 0x50, 0x12, unkn, unkn, 0x41, 0x43, 0x40 } // 0xdx and 0xfx
|
||||
{ 0x50, 0x50, 0x12, 0x51, unkn, 0x41, 0x43, 0x40 } // 0xdx and 0xfx
|
||||
},
|
||||
{ // quadrants 1, 2 should be ok, missing decrypted 0x80, 0x82, 0x83, 0xc4, 0xc7, 0xd0
|
||||
{ 0x42, 0x11, 0x41, 0x51, 0x51, 0x12, 0x10, 0x03 }, // 0x0x and 0x2x
|
||||
{ 0x40, 0x12, 0x13, 0x01, 0x42, 0x10, 0x51, 0x03 }, // 0x1x and 0x3x
|
||||
{ 0x01, 0x41, 0x11, 0x41, 0x42, 0x00, 0x41, 0x01 }, // 0x4x and 0x6x
|
||||
{ 0x10, 0x40, 0x41, 0x02, 0x41, 0x11, 0x02, 0x00 }, // 0x5x and 0x7x
|
||||
{ 0x12, 0x41, 0x50, 0x42, 0x00, unkn, unkn, 0x03 }, // 0x8x and 0xax
|
||||
{ 0x12, 0x41, 0x50, 0x42, 0x01, unkn, unkn, 0x03 }, // 0x8x and 0xax
|
||||
{ 0x11, 0x40, 0x02, unkn, 0x52, 0x43, 0x00, 0x40 }, // 0x9x and 0xbx
|
||||
{ 0x51, 0x52, unkn, unkn, 0x51, 0x00, 0x40, 0x50 }, // 0xcx and 0xex
|
||||
{ 0x13, unkn, 0x10, 0x00, 0x40, 0x01, 0x51, 0x02 } // 0xdx and 0xfx
|
||||
},
|
||||
{ // quadrants 1, 2 should be ok, missing decrypted 0x80, 0x85, 0xc7, 0xd0
|
||||
{ // quadrants 1, 2, 3 should be ok, missing decrypted 0x85, 0xc7
|
||||
{ 0x43, 0x12, 0x50, 0x41, 0x53, 0x11, 0x03, 0x51 }, // 0x0x and 0x2x
|
||||
{ 0x11, 0x40, 0x10, 0x01, 0x01, 0x11, 0x42, 0x01 }, // 0x1x and 0x3x
|
||||
{ 0x00, 0x51, 0x03, 0x40, 0x03, 0x00, 0x02, 0x50 }, // 0x4x and 0x6x
|
||||
{ 0x03, 0x51, 0x43, 0x03, 0x01, 0x53, 0x10, 0x50 }, // 0x5x and 0x7x
|
||||
{ 0x51, 0x40, 0x51, 0x02, 0x02, 0x52, 0x40, 0x13 }, // 0x8x and 0xax
|
||||
{ unkn, unkn, 0x02, 0x41, 0x42, 0x51, unkn, 0x13 }, // 0x9x and 0xbx
|
||||
{ 0x40, 0x11, 0x02, 0x41, 0x42, 0x51, unkn, 0x13 }, // 0x9x and 0xbx
|
||||
{ 0x51, 0x52, 0x02, 0x00, unkn, 0x00, 0x53, 0x13 }, // 0xcx and 0xex
|
||||
{ 0x53, 0x13, 0x50, 0x41, 0x53, 0x42, 0x40, 0x02 } // 0xdx and 0xfx
|
||||
},
|
||||
@ -1132,14 +1132,14 @@ void supercrd_state::init_gampo() // TODO: check unknown opcodes
|
||||
{ unkn, 0x02, 0x02, 0x02, 0x42, 0x00, 0x50, 0x03 }, // 0xcx and 0xex
|
||||
{ 0x01, 0x03, 0x53, unkn, 0x00, 0x51, unkn, 0x02 } // 0xdx and 0xfx
|
||||
},
|
||||
{ // quadrant 1 should be ok, missing decrypted 0x17, 0x44, 0x80, 0x83, 0x96, 0xc4, 0xc7, 0xd0, 0xd7
|
||||
{ // quadrant 1 should be ok, missing decrypted 0x17, 0x44, 0x80, 0x83, 0x96, 0xc7, 0xd0, 0xd7
|
||||
{ 0x52, 0x02, 0x00, 0x13, 0x43, 0x01, 0x03, unkn }, // 0x0x and 0x2x
|
||||
{ 0x02, 0x00, 0x12, 0x51, 0x01, 0x40, 0x42, 0x03 }, // 0x1x and 0x3x
|
||||
{ 0x03, 0x10, 0x43, 0x13, 0x43, 0x00, 0x00, 0x41 }, // 0x4x and 0x6x
|
||||
{ 0x03, 0x10, 0x41, 0x13, 0x02, 0x43, 0x01, unkn }, // 0x5x and 0x7x
|
||||
{ 0x52, 0x50, unkn, 0x41, unkn, unkn, 0x02, 0x52 }, // 0x8x and 0xax
|
||||
{ 0x00, 0x00, unkn, unkn, 0x01, unkn, 0x01, 0x10 }, // 0x9x and 0xbx
|
||||
{ 0x41, 0x12, unkn, 0x50, 0x10, 0x00, unkn, 0x53 }, // 0xcx and 0xex
|
||||
{ 0x41, 0x12, unkn, 0x50, 0x10, 0x00, 0x02, 0x53 }, // 0xcx and 0xex
|
||||
{ 0x10, 0x10, 0x40, 0x10, 0x12, unkn, 0x50, 0x01 } // 0xdx and 0xfx
|
||||
},
|
||||
{ // quadrants 1, 2 should be ok, missing decrypted 0x94, 0xc7
|
||||
|
Loading…
Reference in New Issue
Block a user