trunk/src/mame/drivers/8080bw.c
| r19724 | r19725 | |
| 1042 | 1042 | /*******************************************************/ |
| 1043 | 1043 | /* */ |
| 1044 | 1044 | /* Universal "Cosmic Monsters" */ |
| 1045 | /* The dipswitches are as stated in the manual, but */ |
| 1046 | /* some of them are incorrect. */ |
| 1047 | /* - You need at the very least 3000 points to get */ |
| 1048 | /* a bonus life. */ |
| 1049 | /* - The cabinet switch does nothing in the cpu, it */ |
| 1050 | /* is all done by wires. */ |
| 1045 | 1051 | /* */ |
| 1046 | 1052 | /*******************************************************/ |
| 1047 | 1053 | |
| r19724 | r19725 | |
| 1063 | 1069 | PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:4") |
| 1064 | 1070 | PORT_DIPSETTING( 0x00, "1500" ) |
| 1065 | 1071 | PORT_DIPSETTING( 0x08, "2500" ) |
| 1072 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 1073 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(2) |
| 1074 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_PLAYER(2) |
| 1066 | 1075 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8") |
| 1067 | 1076 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) |
| 1068 | 1077 | PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) ) |
| 1069 | 1078 | |
| 1070 | | // PORT_MODIFY(CABINET_PORT_TAG) |
| 1071 | | // PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1079 | PORT_MODIFY(CABINET_PORT_TAG) |
| 1080 | PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1072 | 1081 | INPUT_PORTS_END |
| 1073 | 1082 | |
| 1083 | WRITE8_MEMBER(_8080bw_state::cosmicmo_05_w) |
| 1084 | { |
| 1085 | invaders_audio_2_w(space, offset, data); |
| 1086 | m_flip_screen = BIT(data, 5) & BIT(ioport("IN2")->read(), 2); |
| 1087 | } |
| 1074 | 1088 | |
| 1089 | static ADDRESS_MAP_START( cosmicmo_io_map, AS_IO, 8, _8080bw_state ) |
| 1090 | ADDRESS_MAP_GLOBAL_MASK(0x7) |
| 1091 | AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") |
| 1092 | AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") |
| 1093 | AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(invrvnge_02_r) |
| 1094 | AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_DEVREAD_LEGACY("mb14241", mb14241_shift_result_r) |
| 1075 | 1095 | |
| 1096 | AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("mb14241", mb14241_shift_count_w) |
| 1097 | AM_RANGE(0x03, 0x03) AM_WRITE(invaders_audio_1_w) |
| 1098 | AM_RANGE(0x04, 0x04) AM_DEVWRITE_LEGACY("mb14241", mb14241_shift_data_w) |
| 1099 | AM_RANGE(0x05, 0x05) AM_WRITE(cosmicmo_05_w) |
| 1100 | AM_RANGE(0x06, 0x06) AM_WRITE(watchdog_reset_w) |
| 1101 | ADDRESS_MAP_END |
| 1102 | |
| 1103 | static MACHINE_CONFIG_DERIVED_CLASS( cosmicmo, mw8080bw_root, _8080bw_state ) |
| 1104 | |
| 1105 | /* basic machine hardware */ |
| 1106 | MCFG_CPU_MODIFY("maincpu") |
| 1107 | MCFG_CPU_IO_MAP(cosmicmo_io_map) |
| 1108 | MCFG_CPU_VBLANK_INT_DRIVER("screen", _8080bw_state, irq0_line_hold) |
| 1109 | |
| 1110 | MCFG_MACHINE_START_OVERRIDE(_8080bw_state,extra_8080bw) |
| 1111 | |
| 1112 | MCFG_WATCHDOG_VBLANK_INIT(255) |
| 1113 | |
| 1114 | /* add shifter */ |
| 1115 | MCFG_MB14241_ADD("mb14241") |
| 1116 | |
| 1117 | /* sound hardware */ |
| 1118 | MCFG_FRAGMENT_ADD(invaders_audio) |
| 1119 | |
| 1120 | /* video hardware */ |
| 1121 | MCFG_SCREEN_MODIFY("screen") |
| 1122 | MCFG_SCREEN_UPDATE_DRIVER(_8080bw_state, screen_update_invaders) |
| 1123 | MACHINE_CONFIG_END |
| 1124 | |
| 1125 | |
| 1076 | 1126 | /*******************************************************/ |
| 1077 | 1127 | /* */ |
| 1078 | 1128 | /* Sidam "Invasion" */ |
| r19724 | r19725 | |
| 3747 | 3797 | ROM_LOAD( "cosmicmo.5", 0x4000, 0x0400, CRC(b13f228e) SHA1(a0de05aa36435e72c77f5333f3ad964ec448a8f0) ) |
| 3748 | 3798 | ROM_LOAD( "cosmicmo.6", 0x4400, 0x0400, CRC(4ae1b9c4) SHA1(8eed87eebe68caa775fa679363b0fe3728d98c34) ) |
| 3749 | 3799 | ROM_LOAD( "cosmicmo.7", 0x4800, 0x0400, CRC(6a13b15b) SHA1(dc03a6c3e938cfd08d16bd1660899f951ba72ea2) ) |
| 3800 | |
| 3801 | /* The manual says it uses color TV components, which means that proms need dumping */ |
| 3750 | 3802 | ROM_END |
| 3751 | 3803 | |
| 3752 | 3804 | ROM_START( cosmicm2 ) |
| r19724 | r19725 | |
| 4277 | 4329 | GAMEL(1978, invaderl, invaders, invaders, sicv, driver_device, 0, ROT270, "Taito / Logitec", "Space Invaders (Logitec)", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg? |
| 4278 | 4330 | GAMEL(1978, spcewars, invaders, spcewars, spcewars, driver_device, 0, ROT270, "Taito / Sanritsu", "Space War (Sanritsu)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg? |
| 4279 | 4331 | GAMEL(1978, spceking, invaders, invaders, sicv, driver_device, 0, ROT270, "Taito / Leijac Corporation", "Space King", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg? |
| 4280 | | GAMEL(1979, cosmicmo, invaders, invaders, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg? |
| 4281 | | GAMEL(1979, cosmicm2, invaders, invaders, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters 2", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg? |
| 4332 | GAMEL(1979, cosmicmo, invaders, cosmicmo, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg? |
| 4333 | GAMEL(1979, cosmicm2, invaders, cosmicmo, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters 2", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg? |
| 4282 | 4334 | GAMEL(1980?,sinvzen, invaders, invaders, sinvzen, driver_device, 0, ROT270, "Taito / Zenitone-Microsec Ltd.", "Super Invaders (Zenitone-Microsec)", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg? |
| 4283 | 4335 | GAMEL(1980, ultrainv, invaders, invaders, sicv, driver_device, 0, ROT270, "Taito / Konami", "Ultra Invaders", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg? |
| 4284 | 4336 | GAMEL(1978, spaceatt, invaders, invaders, sicv, driver_device, 0, ROT270, "bootleg (Video Games GmbH)", "Space Attack (bootleg of Space Invaders)", GAME_SUPPORTS_SAVE, layout_invaders ) |