trunk/src/mame/drivers/dlair2.c
| r19684 | r19685 | |
| 3 | 3 | Skeleton driver for Dragon's Lair II: Time Warp |
| 4 | 4 | by Leland |
| 5 | 5 | |
| 6 | Notes: |
| 7 | - two irqs, timer (vector 0x20/4) and serial (vector 0x2c/4) |
| 8 | |
| 6 | 9 | Some information from |
| 7 | 10 | http://www.dragons-lair-project.com/tech/pages/dl2.asp |
| 8 | 11 | |
| r19684 | r19685 | |
| 41 | 44 | // screen updates |
| 42 | 45 | UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 43 | 46 | |
| 47 | INTERRUPT_GEN_MEMBER(dlair2_timer_irq); |
| 44 | 48 | protected: |
| 45 | 49 | // driver_device overrides |
| 46 | 50 | virtual void machine_start(); |
| r19684 | r19685 | |
| 65 | 69 | AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("ipl", 0) |
| 66 | 70 | ADDRESS_MAP_END |
| 67 | 71 | |
| 72 | static ADDRESS_MAP_START( dlair2_io, AS_IO, 8, dlair2_state ) |
| 73 | // AM_RANGE(0x020, 0x020) ICR |
| 74 | // AM_RANGE(0x042, 0x043) sound related |
| 75 | // AM_RANGE(0x061, 0x061) sound related |
| 76 | // AM_RANGE(0x200, 0x203) i/o, coin, eeprom |
| 77 | // AM_RANGE(0x2f8, 0x2ff) COM2 |
| 78 | ADDRESS_MAP_END |
| 79 | |
| 68 | 80 | static INPUT_PORTS_START( dlair2 ) |
| 69 | 81 | /* dummy active high structure */ |
| 70 | 82 | PORT_START("SYSA") |
| r19684 | r19685 | |
| 150 | 162 | { |
| 151 | 163 | } |
| 152 | 164 | |
| 165 | INTERRUPT_GEN_MEMBER(dlair2_state::dlair2_timer_irq) |
| 166 | { |
| 167 | device.execute().set_input_line_and_vector(0,HOLD_LINE,0x20/4); |
| 168 | } |
| 169 | |
| 153 | 170 | static MACHINE_CONFIG_START( dlair2, dlair2_state ) |
| 154 | 171 | |
| 155 | 172 | /* basic machine hardware */ |
| 156 | 173 | MCFG_CPU_ADD("maincpu", I8088 , MAIN_CLOCK/3) /* Schematics show I8088 "max" CPU */ |
| 157 | 174 | MCFG_CPU_PROGRAM_MAP(dlair2_map) |
| 175 | MCFG_CPU_IO_MAP(dlair2_io) |
| 176 | MCFG_CPU_PERIODIC_INT_DRIVER(dlair2_state, dlair2_timer_irq, 60) // timer irq, TODO: timing |
| 158 | 177 | |
| 159 | 178 | /* video hardware */ |
| 160 | 179 | MCFG_SCREEN_ADD("screen", RASTER) |
| r19684 | r19685 | |
| 183 | 202 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 184 | 203 | ROM_LOAD( "dl2_319.bin", 0x00000, 0x10000, CRC(e9453a1b) SHA1(eb1201abd0124f6edbabd49bec81af827369cb2c) ) |
| 185 | 204 | ROM_END |
| 205 | |
| 186 | 206 | ROM_START( dlair2_319e ) |
| 187 | 207 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 188 | 208 | ROM_LOAD( "dl2euro3.19.bin", 0x00000, 0x10000, CRC(cc23ad9f) SHA1(24add8f03749dcc27b1b166dc2e5d346534a0088) ) |
| 189 | 209 | ROM_END |
| 210 | |
| 190 | 211 | ROM_START( dlair2_319s ) |
| 191 | 212 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 192 | 213 | ROM_LOAD( "dl2-span.bin", 0x00000, 0x10000, CRC(4b9a811d) SHA1(6fe580f541305422f89edbbf475f7c5f17153738) ) |
| 193 | 214 | ROM_END |
| 215 | |
| 194 | 216 | ROM_START( dlair2_318 ) |
| 195 | 217 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 196 | 218 | ROM_LOAD( "dl2_318.bin", 0x00000, 0x10000, CRC(64706492) SHA1(99c92572c59ce1206847a5363d3791196fccd742) ) |
| 197 | 219 | ROM_END |
| 220 | |
| 198 | 221 | ROM_START( dlair2_316e ) |
| 199 | 222 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 200 | 223 | ROM_LOAD( "dl2euro.bin", 0x00000, 0x10000, CRC(d68f1b13) SHA1(cc9ee307b4d3caba049be6226163c810cf89ab44) ) |
| 201 | 224 | ROM_END |
| 225 | |
| 202 | 226 | ROM_START( dlair2_315 ) |
| 203 | 227 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 204 | 228 | ROM_LOAD( "dl2_315.rom", 0x00000, 0x10000, CRC(13ec0600) SHA1(9366dfac4508c4a723d688016b8cddb57aa6f5f1) ) |
| 205 | 229 | ROM_END |
| 230 | |
| 206 | 231 | ROM_START( dlair2_315s ) |
| 207 | 232 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 208 | 233 | ROM_LOAD( "315pi.bin", 0x00000, 0x10000, CRC(75d8861a) SHA1(56ab31a760f43f98fa40396ee7d7af7ce982d28d) ) |
| 209 | 234 | ROM_END |
| 235 | |
| 210 | 236 | ROM_START( dlair2_314 ) |
| 211 | 237 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 212 | 238 | ROM_LOAD( "dl2_314.bin", 0x00000, 0x10000, CRC(af92b612) SHA1(a0b986fa8a0f2206beedf1dcaed4d108599947ff) ) |
| 213 | 239 | ROM_END |
| 240 | |
| 214 | 241 | ROM_START( dlair2_312 ) |
| 215 | 242 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 216 | 243 | ROM_LOAD( "312.bin", 0x00000, 0x10000, CRC(c842be6b) SHA1(bf548ea3c6e98cd93f79408c3b9f0e1e22cc8bd1) ) |
| 217 | 244 | ROM_END |
| 245 | |
| 218 | 246 | ROM_START( dlair2_300 ) |
| 219 | 247 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 220 | 248 | ROM_LOAD( "dl2_300.bin", 0x00000, 0x10000, CRC(dec4f2e3) SHA1(fd96378c78df4aacd4b2190823ec5c1591199d44) ) |
| 221 | 249 | ROM_END |
| 250 | |
| 222 | 251 | ROM_START( dlair2_211 ) |
| 223 | 252 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 224 | 253 | ROM_LOAD( "dl2_211.bin", 0x00000, 0x10000, CRC(9f2660a3) SHA1(bf35356aab0138f86e6ea18c7bcf4f3f3c428d98) ) |
| r19684 | r19685 | |
| 228 | 257 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 229 | 258 | ROM_LOAD( "ace.dat", 0x00000, 0x10000, CRC(de93a213) SHA1(1c95d5f45292f08149d749e1f7b5d9409d3a266e) ) |
| 230 | 259 | ROM_END |
| 260 | |
| 231 | 261 | ROM_START( spacea91_13e ) |
| 232 | 262 | ROM_REGION( 0x10000, "ipl", 0 ) |
| 233 | 263 | ROM_LOAD( "sa91euro1.3.bin", 0x00000, 0x10000, CRC(27dd0486) SHA1(8a57510b466381d9962e5397d89a7a3e73d757b0) ) |