diff options
author | Roberto Zandona <robertoz@mamedev.org> | 2008-12-13 09:23:59 +0000 |
---|---|---|
committer | Roberto Zandona <robertoz@mamedev.org> | 2008-12-13 09:23:59 +0000 |
commit | 6661a69e0a4627e125467b1447bb03b66df6807f (patch) | |
tree | bdd0ec15351ca34d04b5e0f35f50b4e28d85bbec /src | |
parent | 17653fef4d7d58d5a603941e9847552363188762 (diff) |
added opcodes to cb2001 driver
Diffstat (limited to 'src')
-rw-r--r-- | src/mame/drivers/cb2001.c | 70 |
1 files changed, 49 insertions, 21 deletions
diff --git a/src/mame/drivers/cb2001.c b/src/mame/drivers/cb2001.c index bbac07d2827..272d6a29f89 100644 --- a/src/mame/drivers/cb2001.c +++ b/src/mame/drivers/cb2001.c @@ -46,39 +46,66 @@ In test mode (c) is 2000 const UINT8 cb2001_decryption_table[256] = { 0xe8,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 00 */ -// gggg +// pppp xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 10 */ - +// xxxx,0x8e,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 20 */ // !!!! xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 30 */ - - xxxx,0xea,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 40 */ -// !!!! - xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 50 */ - - xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 60 */ - +// + xxxx,0xea,xxxx,xxxx,xxxx,0xb0,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 40 */ +// !!!! gggg + xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,0x49,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 50 */ +// ???? + xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,0xba,xxxx, /* 60 */ +// gggg 0xc3,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 70 */ -// gggg +// pppp xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 80 */ - - xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* 90 */ - - xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,0xb8, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* A0 */ -// !!!! +// + xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,0xb9,xxxx,xxxx,xxxx, /* 90 */ +// ???? + xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,0xb8, xxxx,xxxx,0xbc,xxxx,xxxx,xxxx,xxxx,xxxx, /* A0 */ +// !!!! ???? xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* B0 */ - - xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* C0 */ - - xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,0xc7,xxxx, /* D0 */ -// !!!! +// + xxxx,xxxx,0xee,xxxx,xxxx,0x75,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* C0 */ +// ???? pppp + xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,0xfa,0xc7,xxxx, /* D0 */ +// gggg !!!! xxxx,xxxx,xxxx,0xc6,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* E0 */ // !!!! xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx, /* F0 */ - +// }; +/* robiza notes: +9c -> it's a counter (like mov cw,#value) -> not sure the register (cw,bw,....) +56 -> decrement the counter (like dec cw) -> not sure the register (cw,bw,....) + +aa -> ???? + +guessed: +45 -> b0 (mov al,#value) +6e -> ba (mov dw,#value) +c2 -> ee (out dw,al) +dd -> fa (di) + +probably: +00 -> e8 (call) +41 -> ea (jmp_far) +70 -> c3 (ret) +c5 -> 75 (jne) + +checked against gussun and quizf1 (start up code): +21 -> 8e +a7 -> b8 +de -> c7 +e3 -> c6 + +*/ + + VIDEO_START(cb2001) { @@ -90,6 +117,7 @@ VIDEO_UPDATE(cb2001) } static ADDRESS_MAP_START( cb2001_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x00000, 0xdffff) AM_RAM AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END |