trunk/src/mame/drivers/funworld.c
| r18914 | r18915 | |
| 35 | 35 | * Pool 10 (Italian, set 2), C.M.C., 1996. |
| 36 | 36 | * Pool 10 (Italian, set 3), C.M.C., 1996. |
| 37 | 37 | * Pool 10 (Italian, set 4), C.M.C., 1997. |
| 38 | | * Pool 10 (Italian, encrypted), C.M.C., 1997. |
| 38 | * Pool 10 (Italian, Dino 4 hardware, encrypted), C.M.C., 1997. |
| 39 | 39 | * Tortuga Family (Italian), C.M.C., 1997. |
| 40 | 40 | * Pot Game (Italian), C.M.C., 1996. |
| 41 | 41 | * Bottle 10 (Italian, set 1), C.M.C., 1996. |
| r18914 | r18915 | |
| 792 | 792 | - Added technical notes. |
| 793 | 793 | |
| 794 | 794 | [2012/11/08] |
| 795 | | - Added Pool 10 (Italian, encrypted), from a Dino 4 encrypted board. |
| 795 | - Added a new Pool 10 set, from a Dino 4 encrypted hardware. |
| 796 | 796 | - Added PCB layout and technical notes. |
| 797 | - Decrypted the program data & address. GFX need to be decrypted. |
| 798 | - Added some technical notes. |
| 797 | 799 | |
| 798 | 800 | |
| 799 | 801 | *** TO DO *** |
| r18914 | r18915 | |
| 3424 | 3426 | |
| 3425 | 3427 | /* |
| 3426 | 3428 | Pool 10... |
| 3427 | | Dino 4 (non working) board. |
| 3428 | | With the infamous mexican Rockwell R65C02. |
| 3429 | Dino 4 (non working) board, |
| 3430 | with the infamous mexican Rockwell R65C02. |
| 3429 | 3431 | |
| 3430 | 3432 | Encrypted program & graphics ROMs. |
| 3431 | 3433 | ______________________________________________________________________________________________ |
| r18914 | r18915 | |
| 3452 | 3454 | |__ | MC6821P | |____________________| | |
| 3453 | 3455 | |__ | QL M9N8623 | _________ | |
| 3454 | 3456 | |__ _________ | | |74HC139E | | |
| 3455 | | |__J |ULN2003A | | | |_________| | |
| 3457 | |__ J |ULN2003A | | | |_________| | |
| 3456 | 3458 | |__ |_________| |____________________________| _________________ | |
| 3457 | | |__A | | | |
| 3459 | |__ A | | | |
| 3458 | 3460 | |__ | JAPAN 2G3 | _________ | |
| 3459 | | |__M _________ ___________ ___________ | HM6116LP_4 | |SN74LS02N| | |
| 3461 | |__ M _________ ___________ ___________ | HM6116LP_4 | |SN74LS02N| | |
| 3460 | 3462 | |__ |74LS04B1 | | 411GR-001 | | 411GR-001 | | | |_________| | |
| 3461 | | |__M |_________| |___________| |___________| |_________________| | |
| 3463 | |__ M |_________| |___________| |___________| |_________________| | |
| 3462 | 3464 | |__ | |
| 3463 | | |__A | |
| 3465 | |__ A | |
| 3464 | 3466 | |__ ____________________________ ____________________________ | |
| 3465 | 3467 | |__ | FILE | | MC6845P | | |
| 3466 | 3468 | |__ | KV89C72 | | R1A 8210 | | |
| r18914 | r18915 | |
| 5020 | 5022 | } |
| 5021 | 5023 | |
| 5022 | 5024 | |
| 5025 | DRIVER_INIT_MEMBER(funworld_state, dino4) |
| 5026 | /***************************************************** |
| 5027 | |
| 5028 | DINO 4 hardware. |
| 5029 | |
| 5030 | Program data & address are bitswapped. |
| 5031 | GFX are encrypted... |
| 5032 | |
| 5033 | Color PROM is straight. |
| 5034 | |
| 5035 | ******************************************************/ |
| 5036 | { |
| 5037 | UINT8 *rom = machine().root_device().memregion("maincpu")->base(); |
| 5038 | int size = machine().root_device().memregion("maincpu")->bytes(); |
| 5039 | int start = 0x8000; |
| 5040 | |
| 5041 | UINT8 *buffer; |
| 5042 | int i, a; |
| 5043 | |
| 5044 | /***************************** |
| 5045 | * Program ROM decryption * |
| 5046 | *****************************/ |
| 5047 | |
| 5048 | /* data lines swap: 76543210 -> 76543120 */ |
| 5049 | |
| 5050 | for (i = start; i < size; i++) |
| 5051 | { |
| 5052 | rom[i] = BITSWAP8(rom[i], 7, 6, 5, 4, 3, 1, 2, 0); |
| 5053 | } |
| 5054 | |
| 5055 | buffer = auto_alloc_array(machine(), UINT8, size); |
| 5056 | memcpy(buffer, rom, size); |
| 5057 | |
| 5058 | |
| 5059 | /* address lines swap: fedcba9876543210 -> fedcba9867543210 */ |
| 5060 | |
| 5061 | for (i = start; i < size; i++) |
| 5062 | { |
| 5063 | a = BITSWAP16(i, 15, 13, 14, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0); |
| 5064 | rom[a] = buffer[i]; |
| 5065 | } |
| 5066 | |
| 5067 | auto_free(machine(), buffer); |
| 5068 | } |
| 5069 | |
| 5070 | |
| 5023 | 5071 | /************************* |
| 5024 | 5072 | * Game Drivers * |
| 5025 | 5073 | *************************/ |
| r18914 | r18915 | |
| 5054 | 5102 | GAMEL( 1996, pool10b, pool10, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pool 10 (Italian, set 2)", 0, layout_jollycrd ) |
| 5055 | 5103 | GAMEL( 1996, pool10c, pool10, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pool 10 (Italian, set 3)", 0, layout_jollycrd ) |
| 5056 | 5104 | GAMEL( 1997, pool10d, pool10, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pool 10 (Italian, set 4)", 0, layout_jollycrd ) |
| 5057 | | GAME( 1997, pool10e, pool10, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pool 10 (Italian, encrypted)", GAME_NOT_WORKING ) |
| 5105 | GAME( 1997, pool10e, pool10, cuoreuno, cuoreuno, funworld_state, dino4, ROT0, "C.M.C.", "Pool 10 (Italian, Dino 4 hardware, encrypted)", GAME_NOT_WORKING ) |
| 5058 | 5106 | GAMEL( 1997, tortufam, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Tortuga Family (Italian)", 0, layout_jollycrd ) |
| 5059 | 5107 | GAMEL( 1996, potgame, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pot Game (Italian)", 0, layout_jollycrd ) |
| 5060 | 5108 | GAMEL( 1996, bottle10, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Bottle 10 (Italian, set 1)", 0, layout_jollycrd ) |