Previous 199869 Revisions Next

r18915 Friday 9th November, 2012 at 00:00:38 UTC by Roberto Fresca
Improvements to Pool 10 in Dino 4 hardware [Roberto Fresca]
- Decrypted the program data & address. GFX need to be decrypted.
- Added some technical notes.
[src/mame/drivers]funworld.c
[src/mame/includes]funworld.h
[src/mame/video]funworld.c

trunk/src/mame/includes/funworld.h
r18914r18915
2525   DECLARE_DRIVER_INIT(multiwin);
2626   DECLARE_DRIVER_INIT(soccernw);
2727   DECLARE_DRIVER_INIT(tabblue);
28   DECLARE_DRIVER_INIT(dino4);
2829   TILE_GET_INFO_MEMBER(get_bg_tile_info);
2930   DECLARE_VIDEO_START(funworld);
3031   DECLARE_PALETTE_INIT(funworld);
trunk/src/mame/video/funworld.c
r18914r18915
3333  * Pool 10 (Italian, set 2),                         C.M.C.,             1996.
3434  * Pool 10 (Italian, set 3),                         C.M.C.,             1996.
3535  * Pool 10 (Italian, set 4),                         C.M.C.,             1997.
36  * Pool 10 (Italian, encrypted),                     C.M.C.,             1997.
36  * Pool 10 (Italian, Dino 4 hardware, encrypted),    C.M.C.,             1997.
3737  * Tortuga Family (Italian),                         C.M.C.,             1997.
3838  * Pot Game (Italian),                               C.M.C.,             1996.
3939  * Bottle 10 (Italian, set 1),                       C.M.C.,             1996.
trunk/src/mame/drivers/funworld.c
r18914r18915
3535  * Pool 10 (Italian, set 2),                         C.M.C.,             1996.
3636  * Pool 10 (Italian, set 3),                         C.M.C.,             1996.
3737  * 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.
3939  * Tortuga Family (Italian),                         C.M.C.,             1997.
4040  * Pot Game (Italian),                               C.M.C.,             1996.
4141  * Bottle 10 (Italian, set 1),                       C.M.C.,             1996.
r18914r18915
792792  - Added technical notes.
793793
794794  [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.
796796  - Added PCB layout and technical notes.
797  - Decrypted the program data & address. GFX need to be decrypted.
798  - Added some technical notes.
797799
798800
799801  *** TO DO ***
r18914r18915
34243426
34253427/*
34263428  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.
34293431
34303432  Encrypted program & graphics ROMs.
34313433   ______________________________________________________________________________________________
r18914r18915
34523454  |__                    |           MC6821P          |  |____________________|                  |
34533455  |__                    |         QL M9N8623         |                             _________    |
34543456  |__    _________       |                            |                            |74HC139E |   |
3455  |__J  |ULN2003A |      |                            |                            |_________|   |
3457  |__ J |ULN2003A |      |                            |                            |_________|   |
34563458  |__   |_________|      |____________________________|   _________________                      |
3457  |__A                                                   |                 |                     |
3459  |__ A                                                  |                 |                     |
34583460  |__                                                    |    JAPAN 2G3    |        _________    |
3459  |__M   _________         ___________    ___________    |    HM6116LP_4   |       |SN74LS02N|   |
3461  |__ M  _________         ___________    ___________    |    HM6116LP_4   |       |SN74LS02N|   |
34603462  |__   |74LS04B1 |       | 411GR-001 |  | 411GR-001 |   |                 |       |_________|   |
3461  |__M  |_________|       |___________|  |___________|   |_________________|                     |
3463  |__ M |_________|       |___________|  |___________|   |_________________|                     |
34623464  |__                                                                                            |
3463  |__A                                                                                           |
3465  |__ A                                                                                          |
34643466  |__                     ____________________________    ____________________________           |
34653467  |__                    |            FILE            |  |           MC6845P          |          |
34663468  |__                    |           KV89C72          |  |           R1A 8210         |          |
r18914r18915
50205022}
50215023
50225024
5025DRIVER_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
50235071/*************************
50245072*      Game Drivers      *
50255073*************************/
r18914r18915
50545102GAMEL( 1996, pool10b,   pool10,   cuoreuno, cuoreuno,  driver_device,  0,        ROT0, "C.M.C.",          "Pool 10 (Italian, set 2)",                        0,                       layout_jollycrd )
50555103GAMEL( 1996, pool10c,   pool10,   cuoreuno, cuoreuno,  driver_device,  0,        ROT0, "C.M.C.",          "Pool 10 (Italian, set 3)",                        0,                       layout_jollycrd )
50565104GAMEL( 1997, pool10d,   pool10,   cuoreuno, cuoreuno,  driver_device,  0,        ROT0, "C.M.C.",          "Pool 10 (Italian, set 4)",                        0,                       layout_jollycrd )
5057GAME(  1997, pool10e,   pool10,   cuoreuno, cuoreuno,  driver_device, 0,        ROT0, "C.M.C.",          "Pool 10 (Italian, encrypted)",                    GAME_NOT_WORKING )
5105GAME(  1997, pool10e,   pool10,   cuoreuno, cuoreuno,  funworld_state, dino4,    ROT0, "C.M.C.",          "Pool 10 (Italian, Dino 4 hardware, encrypted)",   GAME_NOT_WORKING )
50585106GAMEL( 1997, tortufam,  0,        cuoreuno, cuoreuno,  driver_device,  0,        ROT0, "C.M.C.",          "Tortuga Family (Italian)",                        0,                       layout_jollycrd )
50595107GAMEL( 1996, potgame,   0,        cuoreuno, cuoreuno,  driver_device,  0,        ROT0, "C.M.C.",          "Pot Game (Italian)",                              0,                       layout_jollycrd )
50605108GAMEL( 1996, bottle10,  0,        cuoreuno, cuoreuno,  driver_device,  0,        ROT0, "C.M.C.",          "Bottle 10 (Italian, set 1)",                      0,                       layout_jollycrd )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team