trunk/src/mame/drivers/dreamwld.c
| r31301 | r31302 | |
| 529 | 529 | INPUT_PORTS_END |
| 530 | 530 | |
| 531 | 531 | |
| 532 | static INPUT_PORTS_START( rolcrush ) |
| 533 | PORT_START("INPUTS") |
| 534 | PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 535 | PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 536 | PORT_BIT( 0x0000fffc, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 537 | PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_START2 ) |
| 538 | PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) |
| 539 | PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) |
| 540 | PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 541 | PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) |
| 542 | PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) |
| 543 | PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) |
| 544 | PORT_BIT( 0x00800000, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) |
| 545 | PORT_BIT( 0x01000000, IP_ACTIVE_LOW, IPT_START1 ) |
| 546 | PORT_BIT( 0x02000000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) |
| 547 | PORT_BIT( 0x04000000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) |
| 548 | PORT_BIT( 0x08000000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) |
| 549 | PORT_BIT( 0x10000000, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) |
| 550 | PORT_BIT( 0x20000000, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) |
| 551 | PORT_BIT( 0x40000000, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) |
| 552 | PORT_BIT( 0x80000000, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) |
| 553 | |
| 554 | PORT_START("c00004") |
| 555 | PORT_BIT( 0x0000ffff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, driver_device,custom_port_read, "DSW") |
| 556 | PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, driver_device,custom_port_read, "DSW") |
| 557 | |
| 558 | PORT_START("DSW") |
| 559 | PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) ) |
| 560 | PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) |
| 561 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 562 | PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) ) |
| 563 | PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) |
| 564 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 565 | PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) ) |
| 566 | PORT_DIPSETTING( 0x0004, DEF_STR( Off ) ) |
| 567 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 568 | PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) ) |
| 569 | PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) |
| 570 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 571 | PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) ) |
| 572 | PORT_DIPSETTING( 0x0010, DEF_STR( Off ) ) |
| 573 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 574 | PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) ) |
| 575 | PORT_DIPSETTING( 0x0020, DEF_STR( Off ) ) |
| 576 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 577 | PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) ) |
| 578 | PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) |
| 579 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 580 | PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) ) |
| 581 | PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) |
| 582 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 583 | PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) ) |
| 584 | PORT_DIPSETTING( 0x0100, DEF_STR( Off ) ) |
| 585 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 586 | PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) ) |
| 587 | PORT_DIPSETTING( 0x0200, DEF_STR( Off ) ) |
| 588 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 589 | PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) ) |
| 590 | PORT_DIPSETTING( 0x0400, DEF_STR( Off ) ) |
| 591 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 592 | PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) ) |
| 593 | PORT_DIPSETTING( 0x0800, DEF_STR( Off ) ) |
| 594 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 595 | PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) ) |
| 596 | PORT_DIPSETTING( 0x1000, DEF_STR( Off ) ) |
| 597 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 598 | PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) ) |
| 599 | PORT_DIPSETTING( 0x2000, DEF_STR( Off ) ) |
| 600 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 601 | PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) ) |
| 602 | PORT_DIPSETTING( 0x4000, DEF_STR( Off ) ) |
| 603 | PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) |
| 604 | PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_LOW, "SW1:8" ) |
| 605 | INPUT_PORTS_END |
| 606 | |
| 607 | |
| 532 | 608 | static const gfx_layout layout_16x16x4 = |
| 533 | 609 | { |
| 534 | 610 | 16,16, |
| r31301 | r31302 | |
| 576 | 652 | |
| 577 | 653 | /* video hardware */ |
| 578 | 654 | MCFG_SCREEN_ADD("screen", RASTER) |
| 579 | | MCFG_SCREEN_REFRESH_RATE(58) |
| 655 | MCFG_SCREEN_REFRESH_RATE(57.793) |
| 580 | 656 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) |
| 581 | 657 | MCFG_SCREEN_SIZE(512,256) |
| 582 | 658 | MCFG_SCREEN_VISIBLE_AREA(0, 304-1, 0, 224-1) |
| r31301 | r31302 | |
| 658 | 734 | All EPROMS four 27C2000 (program code), one 27C4000 (6295 samples), |
| 659 | 735 | one MASK 27C512(GFX), two 27C160(GFX) and two 27C010 (GFX) are not labeled. |
| 660 | 736 | Main CPU is a 68EC020FG16 in QFP package |
| 661 | | There are also a Atmel AT89C52 MCU (dumped as well since it seems not secured) and two Actel A40MX04 FPGAs as well as a lot of PLDs (three GAL22V10B and nine PALCE20V8H), don't know |
| 737 | There are also a Atmel AT89C52 MCU (secured) and two Actel A40MX04 FPGAs as well as a lot of PLDs (three GAL22V10B and nine PALCE20V8H), don't know |
| 662 | 738 | if secured. |
| 663 | 739 | |
| 664 | 740 | Main CPU 68EC020FG16 @ 16MHz |
| r31301 | r31302 | |
| 684 | 760 | ROM_LOAD( "87c52.mcu", 0x00000, 0x10000 , NO_DUMP ) /* can't be dumped. */ |
| 685 | 761 | |
| 686 | 762 | ROM_REGION( 0x10000, "user1", ROMREGION_ERASE00 ) /* Protection data */ |
| 687 | | // ROM_LOAD( "protdata.bin", 0x000, 0x6c9 , CRC(1) SHA1(1) ) /* extracted */ |
| 763 | ROM_LOAD( "protdata.bin", 0x000, 0x745, CRC(06b8a880) SHA1(b7d4bf26d34cb544825270c2c474bbd4c81a6c9e) ) /* extracted */ |
| 688 | 764 | |
| 689 | 765 | ROM_REGION( 0x100000, "oki1", 0 ) /* OKI Samples - 1st chip*/ |
| 690 | 766 | ROM_LOAD( "mx27c4000_5.bin", 0x000000, 0x80000, CRC(7afa6adb) SHA1(d4049e1068a5f7abf0e14d0b9fbbbc6dfb5d0170) ) |
| r31301 | r31302 | |
| 746 | 822 | |
| 747 | 823 | GAME( 1997, baryon, 0, baryon, dreamwld, driver_device, 0, ROT270, "SemiCom", "Baryon - Future Assault", GAME_SUPPORTS_SAVE ) |
| 748 | 824 | GAME( 2000, dreamwld, 0, dreamwld, dreamwld, driver_device, 0, ROT0, "SemiCom", "Dream World", GAME_SUPPORTS_SAVE ) |
| 749 | | GAME( 1999, rolcrush, 0, baryon, dreamwld, driver_device, 0, ROT0, "Trust / Semicom", "Rolling Crush (version 1.07.E - 1999/02/11)", GAME_SUPPORTS_SAVE | GAME_NOT_WORKING ) |
| 825 | GAME( 1999, rolcrush, 0, baryon, rolcrush, driver_device, 0, ROT0, "Trust / Semicom", "Rolling Crush (version 1.07.E - 1999/02/11)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS ) // wrong linescroll |