src/mame/drivers/decocass.c
| r14742 | r14743 | |
| 221 | 221 | PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_MINMAX(0x10,0xf0) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(2) |
| 222 | 222 | |
| 223 | 223 | PORT_START("DSW1") |
| 224 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2") |
| 224 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2") |
| 225 | 225 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 226 | 226 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 227 | 227 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 228 | 228 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) |
| 229 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:3,4") |
| 229 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:3,4") |
| 230 | 230 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 231 | 231 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 232 | 232 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 233 | 233 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 234 | | PORT_DIPNAME( 0x30, 0x30, "Type of Tape" ) PORT_DIPLOCATION("SW1:5,6") /* Used by the "bios" */ |
| 234 | PORT_DIPNAME( 0x30, 0x30, "Type of Tape" ) PORT_DIPLOCATION("SW1:5,6") /* Used by the "bios" */ |
| 235 | 235 | PORT_DIPSETTING( 0x00, "MT (Big)" ) /* Was listed as "Board Type" with this being "OLD" */ |
| 236 | 236 | PORT_DIPSETTING( 0x10, "invalid?" ) |
| 237 | 237 | PORT_DIPSETTING( 0x20, "invalid?" ) |
| 238 | 238 | PORT_DIPSETTING( 0x30, "MD (Small)" ) /* Was listed as "Board Type" with this being "NEW" */ |
| 239 | | PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:7") |
| 239 | PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:7") |
| 240 | 240 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 241 | 241 | PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) ) |
| 242 | 242 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK) |
| r14742 | r14743 | |
| 247 | 247 | PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW2:3") |
| 248 | 248 | PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW2:4") /* Most Dipswitch Settings sheets show 4 (with/without 5) as some form of Diffculty */ |
| 249 | 249 | PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW2:5") |
| 250 | | PORT_DIPNAME( 0xe0, 0xe0, "Country Code" ) PORT_DIPLOCATION("SW2:6,7,8") /* Always Listed as "DON'T CHANGE" */ |
| 250 | PORT_DIPNAME( 0xe0, 0xe0, "Country Code" ) PORT_DIPLOCATION("SW2:6,7,8") /* Always Listed as "DON'T CHANGE" */ |
| 251 | 251 | PORT_DIPSETTING( 0xe0, "A" ) |
| 252 | 252 | PORT_DIPSETTING( 0xc0, "B" ) |
| 253 | 253 | PORT_DIPSETTING( 0xa0, "C" ) |
| r14742 | r14743 | |
| 256 | 256 | PORT_DIPSETTING( 0x40, "F" ) |
| 257 | 257 | INPUT_PORTS_END |
| 258 | 258 | |
| 259 | | static INPUT_PORTS_START( cbtime ) |
| 259 | static INPUT_PORTS_START( cterrani ) |
| 260 | 260 | PORT_INCLUDE( decocass ) |
| 261 | 261 | |
| 262 | 262 | PORT_MODIFY("DSW2") |
| 263 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 263 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 264 | 264 | PORT_DIPSETTING( 0x01, "3" ) |
| 265 | 265 | PORT_DIPSETTING( 0x00, "5" ) |
| 266 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 266 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 267 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 268 | PORT_DIPSETTING( 0x06, "3000" ) |
| 269 | PORT_DIPSETTING( 0x04, "5000" ) |
| 270 | PORT_DIPSETTING( 0x02, "7000" ) |
| 271 | PORT_DIPNAME( 0x08, 0x08, "Player's Rocket Movement" ) PORT_DIPLOCATION("SW2:4") |
| 272 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 273 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 274 | PORT_DIPNAME( 0x10, 0x10, "Alien Craft Movement" ) PORT_DIPLOCATION("SW2:5") |
| 275 | PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) |
| 276 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 277 | /* Switches 6, 7 & 8 are shown as completly blank */ |
| 278 | INPUT_PORTS_END |
| 279 | |
| 280 | static INPUT_PORTS_START( csuperas ) |
| 281 | PORT_INCLUDE( decocass ) |
| 282 | |
| 283 | PORT_MODIFY("DSW2") |
| 284 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 285 | PORT_DIPSETTING( 0x01, "3" ) |
| 286 | PORT_DIPSETTING( 0x00, "5" ) |
| 287 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 288 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 267 | 289 | PORT_DIPSETTING( 0x06, "20000" ) |
| 268 | 290 | PORT_DIPSETTING( 0x04, "30000" ) |
| 269 | 291 | PORT_DIPSETTING( 0x02, "40000" ) |
| 270 | | PORT_DIPSETTING( 0x00, "50000" ) |
| 271 | | PORT_DIPNAME( 0x08, 0x08, "Enemies" ) PORT_DIPLOCATION("SW2:4") |
| 272 | | PORT_DIPSETTING( 0x08, "4" ) |
| 273 | | PORT_DIPSETTING( 0x00, "6" ) |
| 274 | | PORT_DIPNAME( 0x10, 0x10, "End of Level Pepper" ) PORT_DIPLOCATION("SW2:5") |
| 275 | | PORT_DIPSETTING( 0x10, DEF_STR( No ) ) |
| 276 | | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 292 | PORT_DIPNAME( 0x08, 0x08, "Alien Craft Movement" ) PORT_DIPLOCATION("SW2:4") |
| 293 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 294 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 295 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 277 | 296 | INPUT_PORTS_END |
| 278 | 297 | |
| 279 | | static INPUT_PORTS_START( cnightst ) |
| 298 | static INPUT_PORTS_START( clocknch ) |
| 280 | 299 | PORT_INCLUDE( decocass ) |
| 281 | 300 | |
| 282 | 301 | PORT_MODIFY("DSW2") |
| 283 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 302 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 284 | 303 | PORT_DIPSETTING( 0x01, "3" ) |
| 285 | 304 | PORT_DIPSETTING( 0x00, "5" ) |
| 286 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 287 | | PORT_DIPSETTING( 0x06, "When Night Star Completed (First 2 Times)" ) |
| 288 | | PORT_DIPSETTING( 0x04, "When Night Star Completed (First Time Only)" ) |
| 289 | | PORT_DIPSETTING( 0x02, "Every 70000" ) |
| 290 | | PORT_DIPSETTING( 0x00, "30000 Only" ) |
| 291 | | PORT_DIPNAME( 0x08, 0x08, "Number of Missles" ) PORT_DIPLOCATION("SW2:4") |
| 292 | | PORT_DIPSETTING( 0x08, "Few" ) |
| 305 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 306 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 307 | PORT_DIPSETTING( 0x06, "15000" ) |
| 308 | PORT_DIPSETTING( 0x04, "20000" ) |
| 309 | PORT_DIPSETTING( 0x02, "30000" ) |
| 310 | /* Switches 4, 5, 6, 7 & 8 are listed as "Not Used" and "Don't Change" */ |
| 311 | INPUT_PORTS_END |
| 312 | |
| 313 | static INPUT_PORTS_START( cprogolf ) |
| 314 | PORT_INCLUDE( decocass ) |
| 315 | |
| 316 | PORT_MODIFY("DSW2") |
| 317 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 318 | PORT_DIPSETTING( 0x01, "2" ) |
| 319 | PORT_DIPSETTING( 0x00, "3" ) |
| 320 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") /* You must shoot equal to or under the listed value for a bonus */ |
| 321 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 322 | PORT_DIPSETTING( 0x02, "6 Under" ) |
| 323 | PORT_DIPSETTING( 0x04, "3 Under" ) |
| 324 | PORT_DIPSETTING( 0x06, "1 Under" ) |
| 325 | PORT_DIPNAME( 0x08, 0x08, "Number of Strokes" ) PORT_DIPLOCATION("SW2:4") /* You must shoot equal to or under to continue, else you lose a life */ |
| 326 | PORT_DIPSETTING( 0x00, "Par +2" ) |
| 327 | PORT_DIPSETTING( 0x08, "Par +3" ) |
| 328 | PORT_DIPNAME( 0x10, 0x10, "Show Stroke Power/Ball Direction" ) PORT_DIPLOCATION("SW2:5") |
| 329 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 330 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 331 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 332 | INPUT_PORTS_END |
| 333 | |
| 334 | static INPUT_PORTS_START( cexplore ) |
| 335 | PORT_INCLUDE( decocass ) |
| 336 | |
| 337 | PORT_MODIFY("DSW2") |
| 338 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 339 | PORT_DIPSETTING( 0x01, "3" ) |
| 340 | PORT_DIPSETTING( 0x00, "5" ) |
| 341 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 342 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 343 | PORT_DIPSETTING( 0x06, "10000" ) |
| 344 | PORT_DIPSETTING( 0x04, "1500000" ) |
| 345 | PORT_DIPSETTING( 0x02, "30000" ) |
| 346 | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") /* Listed as "Missle" */ |
| 347 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 348 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 349 | PORT_DIPNAME( 0x10, 0x10, "Number of UFOs" ) PORT_DIPLOCATION("SW2:5") |
| 350 | PORT_DIPSETTING( 0x10, "Few" ) |
| 293 | 351 | PORT_DIPSETTING( 0x00, "Many" ) |
| 294 | | PORT_DIPNAME( 0x10, 0x10, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:5") |
| 295 | | PORT_DIPSETTING( 0x10, "Slow" ) |
| 296 | | PORT_DIPSETTING( 0x00, "Fast" ) |
| 297 | 352 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 298 | 353 | INPUT_PORTS_END |
| 299 | | |
| 300 | 354 | static INPUT_PORTS_START( ctornado ) |
| 301 | 355 | PORT_INCLUDE( decocass ) |
| 302 | 356 | |
| 303 | 357 | PORT_MODIFY("DSW2") |
| 304 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 358 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 305 | 359 | PORT_DIPSETTING( 0x01, "3" ) |
| 306 | 360 | PORT_DIPSETTING( 0x00, "5" ) |
| 307 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 361 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 308 | 362 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 309 | 363 | PORT_DIPSETTING( 0x06, "10000" ) |
| 310 | 364 | PORT_DIPSETTING( 0x04, "20000" ) |
| 311 | 365 | PORT_DIPSETTING( 0x02, "30000" ) |
| 312 | | PORT_DIPNAME( 0x08, 0x08, "Crash Bombs" ) PORT_DIPLOCATION("SW2:4") /* Printed English translation "Hero Destructor" */ |
| 366 | PORT_DIPNAME( 0x08, 0x08, "Crash Bombs" ) PORT_DIPLOCATION("SW2:4") /* Printed English translation "Hero Destructor" */ |
| 313 | 367 | PORT_DIPSETTING( 0x08, "3" ) |
| 314 | 368 | PORT_DIPSETTING( 0x00, "5" ) |
| 315 | | PORT_DIPNAME( 0x10, 0x10, "Alens' Speed" ) PORT_DIPLOCATION("SW2:5") |
| 369 | PORT_DIPNAME( 0x10, 0x10, "Alens' Speed" ) PORT_DIPLOCATION("SW2:5") |
| 316 | 370 | PORT_DIPSETTING( 0x10, "Slow" ) |
| 317 | 371 | PORT_DIPSETTING( 0x00, "Fast" ) |
| 318 | 372 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 319 | 373 | INPUT_PORTS_END |
| 320 | 374 | |
| 321 | | static INPUT_PORTS_START( cbdash ) |
| 375 | static INPUT_PORTS_START( cmissnx ) |
| 322 | 376 | PORT_INCLUDE( decocass ) |
| 323 | 377 | |
| 324 | 378 | PORT_MODIFY("DSW2") |
| 325 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 379 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 326 | 380 | PORT_DIPSETTING( 0x01, "3" ) |
| 327 | 381 | PORT_DIPSETTING( 0x00, "5" ) |
| 328 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 382 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 329 | 383 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 384 | PORT_DIPSETTING( 0x06, "5000" ) |
| 385 | PORT_DIPSETTING( 0x04, "10000" ) |
| 386 | PORT_DIPSETTING( 0x02, "15000" ) |
| 387 | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,5") /* Listed as "Game Level" */ |
| 388 | PORT_DIPSETTING( 0x18, DEF_STR( Easy ) ) |
| 389 | PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) |
| 390 | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 391 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 392 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 393 | INPUT_PORTS_END |
| 394 | |
| 395 | static INPUT_PORTS_START( cbtime ) |
| 396 | PORT_INCLUDE( decocass ) |
| 397 | |
| 398 | PORT_MODIFY("DSW2") |
| 399 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 400 | PORT_DIPSETTING( 0x01, "3" ) |
| 401 | PORT_DIPSETTING( 0x00, "5" ) |
| 402 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 330 | 403 | PORT_DIPSETTING( 0x06, "20000" ) |
| 331 | 404 | PORT_DIPSETTING( 0x04, "30000" ) |
| 332 | 405 | PORT_DIPSETTING( 0x02, "40000" ) |
| 333 | | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,5") |
| 334 | | PORT_DIPSETTING( 0x18, DEF_STR( Normal ) ) /* Number of Diamonds Little, Timer: Long */ |
| 335 | | PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) /* Number of Diamonds Little, Timer: Long */ |
| 336 | | PORT_DIPSETTING( 0x08, DEF_STR( Harder ) ) /* Number of Diamonds Many, Timer: Short */ |
| 337 | | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) /* Number of Diamonds Many, Timer: Short */ |
| 338 | | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 406 | PORT_DIPSETTING( 0x00, "50000" ) |
| 407 | PORT_DIPNAME( 0x08, 0x08, "Enemies" ) PORT_DIPLOCATION("SW2:4") |
| 408 | PORT_DIPSETTING( 0x08, "4" ) |
| 409 | PORT_DIPSETTING( 0x00, "6" ) |
| 410 | PORT_DIPNAME( 0x10, 0x10, "End of Level Pepper" ) PORT_DIPLOCATION("SW2:5") |
| 411 | PORT_DIPSETTING( 0x10, DEF_STR( No ) ) |
| 412 | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 339 | 413 | INPUT_PORTS_END |
| 340 | 414 | |
| 341 | | static INPUT_PORTS_START( cprogolf ) |
| 415 | static INPUT_PORTS_START( cgraplop ) |
| 342 | 416 | PORT_INCLUDE( decocass ) |
| 343 | 417 | |
| 344 | 418 | PORT_MODIFY("DSW2") |
| 345 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 346 | | PORT_DIPSETTING( 0x01, "2" ) |
| 347 | | PORT_DIPSETTING( 0x00, "3" ) |
| 348 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") /* You must shoot equal to or under the listed value for a bonus */ |
| 419 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 420 | PORT_DIPSETTING( 0x01, "3" ) |
| 421 | PORT_DIPSETTING( 0x00, "5" ) |
| 422 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 349 | 423 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 350 | | PORT_DIPSETTING( 0x02, "6 Under" ) |
| 351 | | PORT_DIPSETTING( 0x04, "3 Under" ) |
| 352 | | PORT_DIPSETTING( 0x06, "1 Under" ) |
| 353 | | PORT_DIPNAME( 0x08, 0x08, "Number of Strokes" ) PORT_DIPLOCATION("SW2:4") /* You must shoot equal to or under to continue, else you lose a life */ |
| 354 | | PORT_DIPSETTING( 0x00, "Par +2" ) |
| 355 | | PORT_DIPSETTING( 0x08, "Par +3" ) |
| 356 | | PORT_DIPNAME( 0x10, 0x10, "Show Stroke Power/Ball Direction" ) PORT_DIPLOCATION("SW2:5") |
| 357 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 358 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 359 | | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 424 | PORT_DIPSETTING( 0x06, "20000" ) |
| 425 | PORT_DIPSETTING( 0x04, "50000" ) |
| 426 | PORT_DIPSETTING( 0x02, "70000" ) |
| 427 | PORT_DIPNAME( 0x08, 0x08, "Number of Up Sign" ) PORT_DIPLOCATION("SW2:4") |
| 428 | PORT_DIPSETTING( 0x08, "Few" ) |
| 429 | PORT_DIPSETTING( 0x00, "Many" ) |
| 430 | PORT_DIPNAME( 0x10, 0x10, "Falling Speed" ) PORT_DIPLOCATION("SW2:5") |
| 431 | PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) |
| 432 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 433 | /* Switches 6, 7 & 8 are listed as "Not Used" and "Don't Change" */ |
| 360 | 434 | INPUT_PORTS_END |
| 361 | 435 | |
| 362 | | static INPUT_PORTS_START( csuperas ) |
| 436 | static INPUT_PORTS_START( cnightst ) |
| 363 | 437 | PORT_INCLUDE( decocass ) |
| 364 | 438 | |
| 365 | 439 | PORT_MODIFY("DSW2") |
| 366 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 440 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 367 | 441 | PORT_DIPSETTING( 0x01, "3" ) |
| 368 | 442 | PORT_DIPSETTING( 0x00, "5" ) |
| 369 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 370 | | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 371 | | PORT_DIPSETTING( 0x06, "20000" ) |
| 372 | | PORT_DIPSETTING( 0x04, "30000" ) |
| 373 | | PORT_DIPSETTING( 0x02, "40000" ) |
| 374 | | PORT_DIPNAME( 0x08, 0x08, "Alien Craft Movement" ) PORT_DIPLOCATION("SW2:4") |
| 375 | | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 376 | | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 443 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 444 | PORT_DIPSETTING( 0x06, "When Night Star Completed (First 2 Times)" ) |
| 445 | PORT_DIPSETTING( 0x04, "When Night Star Completed (First Time Only)" ) |
| 446 | PORT_DIPSETTING( 0x02, "Every 70000" ) |
| 447 | PORT_DIPSETTING( 0x00, "30000 Only" ) |
| 448 | PORT_DIPNAME( 0x08, 0x08, "Number of Missles" ) PORT_DIPLOCATION("SW2:4") |
| 449 | PORT_DIPSETTING( 0x08, "Few" ) |
| 450 | PORT_DIPSETTING( 0x00, "Many" ) |
| 451 | PORT_DIPNAME( 0x10, 0x10, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:5") |
| 452 | PORT_DIPSETTING( 0x10, "Slow" ) |
| 453 | PORT_DIPSETTING( 0x00, "Fast" ) |
| 377 | 454 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 378 | 455 | INPUT_PORTS_END |
| 379 | 456 | |
| 380 | | static INPUT_PORTS_START( cscrtry ) |
| 457 | static INPUT_PORTS_START( cskater ) |
| 381 | 458 | PORT_INCLUDE( decocass ) |
| 382 | 459 | |
| 383 | 460 | PORT_MODIFY("DSW2") |
| 384 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 385 | | PORT_DIPSETTING( 0x01, "2" ) |
| 386 | | PORT_DIPSETTING( 0x00, "4" ) |
| 387 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 388 | | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 389 | | PORT_DIPSETTING( 0x06, "30000" ) |
| 390 | | PORT_DIPSETTING( 0x04, "50000" ) |
| 391 | | PORT_DIPSETTING( 0x02, "70000" ) |
| 392 | | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") |
| 461 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") /* Listed as "Number of Balls" */ |
| 462 | PORT_DIPSETTING( 0x01, "3" ) |
| 463 | PORT_DIPSETTING( 0x00, "5" ) |
| 464 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 465 | PORT_DIPSETTING( 0x00, "60000" ) |
| 466 | PORT_DIPSETTING( 0x06, "20000" ) |
| 467 | PORT_DIPSETTING( 0x04, "30000" ) |
| 468 | PORT_DIPSETTING( 0x02, "40000" ) |
| 469 | PORT_DIPNAME( 0x08, 0x08, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:4") |
| 393 | 470 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 394 | 471 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 395 | | /* Switches 5, 6, 7 & 8 are listed as "Special Purpose" and "Don't Change" */ |
| 472 | PORT_DIPNAME( 0x10, 0x10, "Number of Skates" ) PORT_DIPLOCATION("SW2:5") |
| 473 | PORT_DIPSETTING( 0x10, "Small" ) |
| 474 | PORT_DIPSETTING( 0x00, "Large" ) |
| 475 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 396 | 476 | INPUT_PORTS_END |
| 397 | 477 | |
| 398 | 478 | static INPUT_PORTS_START( cpsoccer ) |
| 399 | 479 | PORT_INCLUDE( decocass ) |
| 400 | 480 | |
| 401 | 481 | PORT_MODIFY("DSW2") |
| 402 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") /* Listed as "Number of Balls" */ |
| 482 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") /* Listed as "Number of Balls" */ |
| 403 | 483 | PORT_DIPSETTING( 0x01, "3" ) |
| 404 | 484 | PORT_DIPSETTING( 0x00, "5" ) |
| 405 | | PORT_DIPNAME( 0x06, 0x06, "Number of Nice Goal" ) PORT_DIPLOCATION("SW2:2,3") |
| 485 | PORT_DIPNAME( 0x06, 0x06, "Number of Nice Goal" ) PORT_DIPLOCATION("SW2:2,3") |
| 406 | 486 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 407 | 487 | PORT_DIPSETTING( 0x06, "5" ) |
| 408 | 488 | PORT_DIPSETTING( 0x04, "10" ) |
| 409 | 489 | PORT_DIPSETTING( 0x02, "20" ) |
| 410 | | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:4") |
| 490 | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:4") |
| 411 | 491 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 412 | 492 | PORT_DIPSETTING( 0x08, DEF_STR( On ) ) |
| 413 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") /* Listed as "Class" */ |
| 493 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") /* Listed as "Class" */ |
| 414 | 494 | PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) |
| 415 | 495 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 416 | 496 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 417 | 497 | INPUT_PORTS_END |
| 418 | 498 | |
| 419 | | static INPUT_PORTS_START( cterrani ) |
| 499 | static INPUT_PORTS_START( csdtenis ) |
| 420 | 500 | PORT_INCLUDE( decocass ) |
| 421 | 501 | |
| 422 | 502 | PORT_MODIFY("DSW2") |
| 423 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 424 | | PORT_DIPSETTING( 0x01, "3" ) |
| 425 | | PORT_DIPSETTING( 0x00, "5" ) |
| 426 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 503 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") /* Listed as "Number of Balls" */ |
| 504 | PORT_DIPSETTING( 0x01, "2" ) |
| 505 | PORT_DIPSETTING( 0x00, "1" ) |
| 506 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 427 | 507 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 428 | | PORT_DIPSETTING( 0x06, "3000" ) |
| 429 | | PORT_DIPSETTING( 0x04, "5000" ) |
| 430 | | PORT_DIPSETTING( 0x02, "7000" ) |
| 431 | | PORT_DIPNAME( 0x08, 0x08, "Player's Rocket Movement" ) PORT_DIPLOCATION("SW2:4") |
| 432 | | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 433 | | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 434 | | PORT_DIPNAME( 0x10, 0x10, "Alien Craft Movement" ) PORT_DIPLOCATION("SW2:5") |
| 508 | PORT_DIPSETTING( 0x06, "Every 1set" ) |
| 509 | PORT_DIPSETTING( 0x04, "Every 2set" ) |
| 510 | PORT_DIPSETTING( 0x02, "Every 3set" ) |
| 511 | PORT_DIPNAME( 0x08, 0x08, "Speed Level" ) PORT_DIPLOCATION("SW2:4") |
| 512 | PORT_DIPSETTING( 0x08, "Low Speed" ) |
| 513 | PORT_DIPSETTING( 0x00, "High Speed" ) |
| 514 | PORT_DIPNAME( 0x10, 0x10, "Attack Level" ) PORT_DIPLOCATION("SW2:5") |
| 435 | 515 | PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) |
| 436 | 516 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 437 | | /* Switches 6, 7 & 8 are shown as completly blank */ |
| 517 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 438 | 518 | INPUT_PORTS_END |
| 439 | 519 | |
| 440 | | static INPUT_PORTS_START( cmissnx ) |
| 520 | static INPUT_PORTS_START( cscrtry ) |
| 441 | 521 | PORT_INCLUDE( decocass ) |
| 442 | 522 | |
| 443 | 523 | PORT_MODIFY("DSW2") |
| 444 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 445 | | PORT_DIPSETTING( 0x01, "3" ) |
| 446 | | PORT_DIPSETTING( 0x00, "5" ) |
| 447 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 524 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 525 | PORT_DIPSETTING( 0x01, "2" ) |
| 526 | PORT_DIPSETTING( 0x00, "4" ) |
| 527 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 448 | 528 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 449 | | PORT_DIPSETTING( 0x06, "5000" ) |
| 450 | | PORT_DIPSETTING( 0x04, "10000" ) |
| 451 | | PORT_DIPSETTING( 0x02, "15000" ) |
| 452 | | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,5") /* Listed as "Game Level" */ |
| 453 | | PORT_DIPSETTING( 0x18, DEF_STR( Easy ) ) |
| 454 | | PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) |
| 455 | | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 456 | | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 457 | | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 529 | PORT_DIPSETTING( 0x06, "30000" ) |
| 530 | PORT_DIPSETTING( 0x04, "50000" ) |
| 531 | PORT_DIPSETTING( 0x02, "70000" ) |
| 532 | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") |
| 533 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 534 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 535 | PORT_DIPNAME( 0x10, 0x10, "Timer(Don't Change)" ) PORT_DIPLOCATION("SW2:5") |
| 536 | PORT_DIPSETTING( 0x10, "Timer decrease" ) |
| 537 | PORT_DIPSETTING( 0x00, "Timer infinity" ) |
| 538 | /* Switches 6, 7 & 8 are listed as "Special Purpose" and "Don't Change" */ |
| 458 | 539 | INPUT_PORTS_END |
| 459 | 540 | |
| 460 | 541 | static INPUT_PORTS_START( cfghtice ) |
| 461 | 542 | PORT_INCLUDE( decocass ) |
| 462 | 543 | |
| 463 | 544 | PORT_MODIFY("DSW2") |
| 464 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 545 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 465 | 546 | PORT_DIPSETTING( 0x01, "3" ) |
| 466 | 547 | PORT_DIPSETTING( 0x00, "5" ) |
| 467 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Very_Difficult ) ) PORT_DIPLOCATION("SW2:2,3") |
| 548 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Very_Difficult ) ) PORT_DIPLOCATION("SW2:2,3") |
| 468 | 549 | PORT_DIPSETTING( 0x04, DEF_STR( Very_Easy ) ) |
| 469 | 550 | PORT_DIPSETTING( 0x06, DEF_STR( Easy ) ) |
| 470 | 551 | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 471 | 552 | PORT_DIPSETTING( 0x02, DEF_STR( Very_Difficult ) ) |
| 472 | | PORT_DIPNAME( 0x08, 0x08, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:4") |
| 553 | PORT_DIPNAME( 0x08, 0x08, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:4") |
| 473 | 554 | PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) |
| 474 | 555 | PORT_DIPSETTING( 0x00, "Fast" ) |
| 475 | 556 | PORT_SERVICE_DIPLOC( 0x10, IP_ACTIVE_LOW, "SW2:5" ) /* Listed as Test Mode, but doesn't seem to work??? */ |
| 476 | 557 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 477 | 558 | INPUT_PORTS_END |
| 478 | 559 | |
| 479 | | static INPUT_PORTS_START( clocknch ) |
| 560 | static INPUT_PORTS_START( cbdash ) |
| 480 | 561 | PORT_INCLUDE( decocass ) |
| 481 | 562 | |
| 482 | 563 | PORT_MODIFY("DSW2") |
| 483 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 564 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 484 | 565 | PORT_DIPSETTING( 0x01, "3" ) |
| 485 | 566 | PORT_DIPSETTING( 0x00, "5" ) |
| 486 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 567 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 487 | 568 | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 488 | | PORT_DIPSETTING( 0x06, "15000" ) |
| 489 | | PORT_DIPSETTING( 0x04, "20000" ) |
| 490 | | PORT_DIPSETTING( 0x02, "30000" ) |
| 491 | | /* Switches 4, 5, 6, 7 & 8 are listed as "Not Used" and "Don't Change" */ |
| 492 | | INPUT_PORTS_END |
| 493 | | |
| 494 | | static INPUT_PORTS_START( cgraplop ) |
| 495 | | PORT_INCLUDE( decocass ) |
| 496 | | |
| 497 | | PORT_MODIFY("DSW2") |
| 498 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 499 | | PORT_DIPSETTING( 0x01, "3" ) |
| 500 | | PORT_DIPSETTING( 0x00, "5" ) |
| 501 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 502 | | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 503 | 569 | PORT_DIPSETTING( 0x06, "20000" ) |
| 504 | | PORT_DIPSETTING( 0x04, "50000" ) |
| 505 | | PORT_DIPSETTING( 0x02, "70000" ) |
| 506 | | PORT_DIPNAME( 0x08, 0x08, "Number of UPs" ) PORT_DIPLOCATION("SW2:4") |
| 507 | | PORT_DIPSETTING( 0x08, "Few" ) |
| 508 | | PORT_DIPSETTING( 0x00, "Many" ) |
| 509 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5") /* Listed as "Falling Speed" */ |
| 510 | | PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) |
| 511 | | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 512 | | /* Switches 6, 7 & 8 are listed as "Not Used" and "Don't Change" */ |
| 513 | | INPUT_PORTS_END |
| 514 | | |
| 515 | | static INPUT_PORTS_START( cexplore ) |
| 516 | | PORT_INCLUDE( decocass ) |
| 517 | | |
| 518 | | PORT_MODIFY("DSW2") |
| 519 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") |
| 520 | | PORT_DIPSETTING( 0x01, "3" ) |
| 521 | | PORT_DIPSETTING( 0x00, "5" ) |
| 522 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") |
| 523 | | PORT_DIPSETTING( 0x00, DEF_STR( None ) ) |
| 524 | | PORT_DIPSETTING( 0x06, "10000" ) |
| 525 | | PORT_DIPSETTING( 0x04, "1500000" ) |
| 526 | | PORT_DIPSETTING( 0x02, "30000" ) |
| 527 | | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") /* Listed as "Missle" */ |
| 528 | | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 529 | | PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) |
| 530 | | PORT_DIPNAME( 0x10, 0x10, "Number of UFOs" ) PORT_DIPLOCATION("SW2:5") |
| 531 | | PORT_DIPSETTING( 0x10, "Few" ) |
| 532 | | PORT_DIPSETTING( 0x00, "Many" ) |
| 570 | PORT_DIPSETTING( 0x04, "30000" ) |
| 571 | PORT_DIPSETTING( 0x02, "40000" ) |
| 572 | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,5") |
| 573 | PORT_DIPSETTING( 0x18, DEF_STR( Normal ) ) /* Number of Diamonds Little, Timer: Long */ |
| 574 | PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) /* Number of Diamonds Little, Timer: Long */ |
| 575 | PORT_DIPSETTING( 0x08, DEF_STR( Harder ) ) /* Number of Diamonds Many, Timer: Short */ |
| 576 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) /* Number of Diamonds Many, Timer: Short */ |
| 533 | 577 | /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ |
| 534 | 578 | INPUT_PORTS_END |
| 535 | 579 | |
| r14742 | r14743 | |
| 650 | 694 | |
| 651 | 695 | /* video hardware */ |
| 652 | 696 | MCFG_SCREEN_ADD("screen", RASTER) |
| 653 | | MCFG_SCREEN_RAW_PARAMS(HCLK, 384, 8, 248, 272, 8, 248) |
| 697 | MCFG_SCREEN_RAW_PARAMS(HCLK, 384, 0*8, 256, 272, 1*8, 248) |
| 654 | 698 | MCFG_SCREEN_UPDATE_STATIC(decocass) |
| 655 | 699 | |
| 656 | 700 | MCFG_GFXDECODE(decocass) |
| r14742 | r14743 | |
| 684 | 728 | MACHINE_CONFIG_END |
| 685 | 729 | |
| 686 | 730 | |
| 687 | | static MACHINE_CONFIG_DERIVED( clocknch, decocass ) |
| 731 | static MACHINE_CONFIG_DERIVED( cterrani, decocass ) |
| 688 | 732 | |
| 689 | 733 | /* basic machine hardware */ |
| 690 | | MCFG_MACHINE_RESET(clocknch) |
| 734 | MCFG_MACHINE_RESET(cterrani) |
| 691 | 735 | MACHINE_CONFIG_END |
| 692 | 736 | |
| 693 | 737 | |
| 694 | | static MACHINE_CONFIG_DERIVED( ctisland, decocass ) |
| 738 | static MACHINE_CONFIG_DERIVED( castfant, decocass ) |
| 695 | 739 | |
| 696 | 740 | /* basic machine hardware */ |
| 697 | | MCFG_MACHINE_RESET(ctisland) |
| 741 | MCFG_MACHINE_RESET(castfant) |
| 698 | 742 | MACHINE_CONFIG_END |
| 699 | 743 | |
| 700 | 744 | |
| r14742 | r14743 | |
| 705 | 749 | MACHINE_CONFIG_END |
| 706 | 750 | |
| 707 | 751 | |
| 708 | | static MACHINE_CONFIG_DERIVED( castfant, decocass ) |
| 752 | static MACHINE_CONFIG_DERIVED( clocknch, decocass ) |
| 709 | 753 | |
| 710 | 754 | /* basic machine hardware */ |
| 711 | | MCFG_MACHINE_RESET(castfant) |
| 755 | MCFG_MACHINE_RESET(clocknch) |
| 712 | 756 | MACHINE_CONFIG_END |
| 713 | 757 | |
| 714 | 758 | |
| 759 | static MACHINE_CONFIG_DERIVED( cprogolf, decocass ) |
| 760 | |
| 761 | /* basic machine hardware */ |
| 762 | MCFG_MACHINE_RESET(cprogolf) |
| 763 | MACHINE_CONFIG_END |
| 764 | |
| 765 | |
| 715 | 766 | static MACHINE_CONFIG_DERIVED( cluckypo, decocass ) |
| 716 | 767 | |
| 717 | 768 | /* basic machine hardware */ |
| r14742 | r14743 | |
| 719 | 770 | MACHINE_CONFIG_END |
| 720 | 771 | |
| 721 | 772 | |
| 722 | | static MACHINE_CONFIG_DERIVED( cterrani, decocass ) |
| 773 | static MACHINE_CONFIG_DERIVED( ctisland, decocass ) |
| 723 | 774 | |
| 724 | 775 | /* basic machine hardware */ |
| 725 | | MCFG_MACHINE_RESET(cterrani) |
| 776 | MCFG_MACHINE_RESET(ctisland) |
| 726 | 777 | MACHINE_CONFIG_END |
| 727 | 778 | |
| 728 | 779 | |
| r14742 | r14743 | |
| 733 | 784 | MACHINE_CONFIG_END |
| 734 | 785 | |
| 735 | 786 | |
| 736 | | static MACHINE_CONFIG_DERIVED( cprogolf, decocass ) |
| 787 | static MACHINE_CONFIG_DERIVED( cdiscon1, decocass ) |
| 737 | 788 | |
| 738 | 789 | /* basic machine hardware */ |
| 739 | | MCFG_MACHINE_RESET(cprogolf) |
| 790 | MCFG_MACHINE_RESET(cdiscon1) |
| 740 | 791 | MACHINE_CONFIG_END |
| 741 | 792 | |
| 742 | 793 | |
| 743 | | static MACHINE_CONFIG_DERIVED( cmissnx, decocass ) |
| 794 | static MACHINE_CONFIG_DERIVED( ctornado, decocass ) |
| 744 | 795 | |
| 745 | 796 | /* basic machine hardware */ |
| 746 | | MCFG_MACHINE_RESET(cmissnx) |
| 797 | MCFG_MACHINE_RESET(ctornado) |
| 747 | 798 | MACHINE_CONFIG_END |
| 748 | 799 | |
| 749 | 800 | |
| 750 | | static MACHINE_CONFIG_DERIVED( cdiscon1, decocass ) |
| 801 | static MACHINE_CONFIG_DERIVED( cmissnx, decocass ) |
| 751 | 802 | |
| 752 | 803 | /* basic machine hardware */ |
| 753 | | MCFG_MACHINE_RESET(cdiscon1) |
| 804 | MCFG_MACHINE_RESET(cmissnx) |
| 754 | 805 | MACHINE_CONFIG_END |
| 755 | 806 | |
| 756 | 807 | |
| r14742 | r14743 | |
| 761 | 812 | MACHINE_CONFIG_END |
| 762 | 813 | |
| 763 | 814 | |
| 764 | | static MACHINE_CONFIG_DERIVED( ctornado, decocass ) |
| 815 | static MACHINE_CONFIG_DERIVED( cbtime, decocass ) |
| 765 | 816 | |
| 766 | 817 | /* basic machine hardware */ |
| 767 | | MCFG_MACHINE_RESET(ctornado) |
| 818 | MCFG_MACHINE_RESET(cbtime) |
| 768 | 819 | MACHINE_CONFIG_END |
| 769 | 820 | |
| 770 | 821 | |
| 771 | | static MACHINE_CONFIG_DERIVED( cbnj, decocass ) |
| 772 | | |
| 773 | | /* basic machine hardware */ |
| 774 | | MCFG_MACHINE_RESET(cbnj) |
| 775 | | MACHINE_CONFIG_END |
| 776 | | |
| 777 | | |
| 778 | 822 | static MACHINE_CONFIG_DERIVED( cburnrub, decocass ) |
| 779 | 823 | |
| 780 | 824 | /* basic machine hardware */ |
| r14742 | r14743 | |
| 782 | 826 | MACHINE_CONFIG_END |
| 783 | 827 | |
| 784 | 828 | |
| 785 | | static MACHINE_CONFIG_DERIVED( cbtime, decocass ) |
| 786 | | |
| 787 | | /* basic machine hardware */ |
| 788 | | MCFG_MACHINE_RESET(cbtime) |
| 789 | | MACHINE_CONFIG_END |
| 790 | | |
| 791 | | |
| 792 | 829 | static MACHINE_CONFIG_DERIVED( cgraplop, decocass ) |
| 793 | 830 | |
| 794 | 831 | /* basic machine hardware */ |
| r14742 | r14743 | |
| 810 | 847 | MACHINE_CONFIG_END |
| 811 | 848 | |
| 812 | 849 | |
| 813 | | static MACHINE_CONFIG_DERIVED( cfghtice, decocass ) |
| 850 | static MACHINE_CONFIG_DERIVED( cskater, decocass ) |
| 814 | 851 | |
| 815 | 852 | /* basic machine hardware */ |
| 816 | | MCFG_MACHINE_RESET(cfghtice) |
| 853 | MCFG_MACHINE_RESET(cskater) |
| 817 | 854 | MACHINE_CONFIG_END |
| 818 | 855 | |
| 819 | 856 | |
| r14742 | r14743 | |
| 838 | 875 | MACHINE_CONFIG_END |
| 839 | 876 | |
| 840 | 877 | |
| 878 | static MACHINE_CONFIG_DERIVED( csdtenis, decocass ) |
| 879 | |
| 880 | /* basic machine hardware */ |
| 881 | MCFG_MACHINE_RESET(csdtenis) |
| 882 | MACHINE_CONFIG_END |
| 883 | |
| 884 | |
| 885 | static MACHINE_CONFIG_DERIVED( czeroize, decocass ) |
| 886 | |
| 887 | /* basic machine hardware */ |
| 888 | MCFG_MACHINE_RESET(czeroize) |
| 889 | MACHINE_CONFIG_END |
| 890 | |
| 891 | |
| 841 | 892 | static MACHINE_CONFIG_DERIVED( cppicf, decocass ) |
| 842 | 893 | |
| 843 | 894 | /* basic machine hardware */ |
| r14742 | r14743 | |
| 845 | 896 | MACHINE_CONFIG_END |
| 846 | 897 | |
| 847 | 898 | |
| 848 | | static MACHINE_CONFIG_DERIVED( cbdash, decocass ) |
| 899 | static MACHINE_CONFIG_DERIVED( cfghtice, decocass ) |
| 849 | 900 | |
| 850 | 901 | /* basic machine hardware */ |
| 851 | | MCFG_MACHINE_RESET(cbdash) |
| 902 | MCFG_MACHINE_RESET(cfghtice) |
| 852 | 903 | MACHINE_CONFIG_END |
| 853 | 904 | |
| 854 | 905 | |
| 855 | | static MACHINE_CONFIG_DERIVED( cscrtry, decocass ) |
| 906 | static MACHINE_CONFIG_DERIVED( type4, decocass ) |
| 856 | 907 | |
| 857 | 908 | /* basic machine hardware */ |
| 858 | | MCFG_MACHINE_RESET(cscrtry) |
| 909 | MCFG_MACHINE_RESET(type4) |
| 859 | 910 | MACHINE_CONFIG_END |
| 860 | 911 | |
| 861 | 912 | |
| 862 | | static MACHINE_CONFIG_DERIVED( cflyball, decocass ) |
| 913 | static MACHINE_CONFIG_DERIVED( cbdash, decocass ) |
| 863 | 914 | |
| 864 | 915 | /* basic machine hardware */ |
| 865 | | MCFG_MACHINE_RESET(cflyball) |
| 916 | MCFG_MACHINE_RESET(cbdash) |
| 866 | 917 | MACHINE_CONFIG_END |
| 867 | 918 | |
| 868 | 919 | |
| 869 | | static MACHINE_CONFIG_DERIVED( czeroize, decocass ) |
| 920 | static MACHINE_CONFIG_DERIVED( cflyball, decocass ) |
| 870 | 921 | |
| 871 | 922 | /* basic machine hardware */ |
| 872 | | MCFG_MACHINE_RESET(czeroize) |
| 873 | | MCFG_SCREEN_MODIFY("screen") |
| 874 | | MCFG_SCREEN_VISIBLE_AREA(1*8, 32*8-1, 1*8, 31*8-1) |
| 923 | MCFG_MACHINE_RESET(cflyball) |
| 875 | 924 | MACHINE_CONFIG_END |
| 876 | 925 | |
| 877 | 926 | |
| 878 | 927 | #define DECOCASS_COMMON_ROMS \ |
| 879 | 928 | ROM_REGION( 0x10000, "audiocpu", 0 ) \ |
| 880 | | ROM_LOAD( "v1.5a", 0xf800, 0x0800, CRC(b66b2c2a) SHA1(0097f38beb4872e735e560148052e258a26b08fd) ) /* from RMS-8 board: 2716 eprom @5A w/V1 label, contains audio cpu code */ \ |
| 929 | ROM_LOAD( "v1-.5a", 0xf800, 0x0800, CRC(b66b2c2a) SHA1(0097f38beb4872e735e560148052e258a26b08fd) ) /* from RMS-8 board: 2716 eprom @5A w/V1- label, contains audio cpu code */ \ |
| 881 | 930 | \ |
| 882 | 931 | ROM_REGION( 0x10000, "mcu", 0 ) /* 4k for the 8041 MCU (actually 1K ROM + 64 bytes RAM @ 0x800) */ \ |
| 883 | | ROM_LOAD( "cassmcu.1c", 0x0000, 0x0400, CRC(a6df18fd) SHA1(1f9ea47e372d31767c936c15852b43df2b0ee8ff) ) /* from B10-B board: "NEC // JAPAN // X1202D-108 // D8041C 535" 8041 MCU @1C, handles cassette and other stuff; This info needs additional verification, as the d8041-535 mcu has not been dumped yet to prove code is the same. */ \ |
| 932 | ROM_LOAD( "cassmcu.1c", 0x0000, 0x0400, CRC(a6df18fd) SHA1(1f9ea47e372d31767c936c15852b43df2b0ee8ff) ) /* from B10-B board: "NEC // JAPAN // X1202D-108 // D8041C 535" 8041 MCU @1C, handles cassette and other stuff; This info needs additional verification, as the d8041-535 mcu has not been dumped yet to prove code is the same. */ \ |
| 884 | 933 | \ |
| 885 | 934 | ROM_REGION( 0x00060, "proms", 0 ) /* PROMS */ \ |
| 886 | 935 | ROM_LOAD( "v2.3m", 0x0000, 0x0020, CRC(238fdb40) SHA1(b88e8fabb82092105c3828154608ea067acbf2e5) ) /* from DSP-8 board: M3-7603-5 (82s123 equiv, 32x8 TS) PROM @3M w/'V2' stamp, unknown purpose (gfx related: row/interrupt/vblank related? vertical counter related) */ \ |
| r14742 | r14743 | |
| 892 | 941 | /* v0a.7e, New boardset bios, revision A */ \ |
| 893 | 942 | \ |
| 894 | 943 | ROM_REGION( 0x10000, "maincpu", 0 ) \ |
| 895 | | ROM_LOAD( "v0a.7e", 0xf000, 0x1000, CRC(3D33AC34) SHA1(909D59E7A993AFFD10224402B4370E82A5F5545C) ) /* from RMS-8 board: 2732 EPROM @7E w/'V0A' label (has HDRA01HDR string inside it), bios code */ \ |
| 944 | ROM_LOAD( "v0a-.7e", 0xf000, 0x1000, CRC(3D33AC34) SHA1(909D59E7A993AFFD10224402B4370E82A5F5545C) ) /* from RMS-8 board: 2732 EPROM @7E w/'V0A-' label (has HDRA01HDR string inside it), bios code */ \ |
| 896 | 945 | \ |
| 897 | 946 | DECOCASS_COMMON_ROMS \ |
| 898 | 947 | |
| r14742 | r14743 | |
| 901 | 950 | /* rms8.7e, New boardset bios, revision B */ \ |
| 902 | 951 | \ |
| 903 | 952 | ROM_REGION( 0x10000, "maincpu", 0 ) \ |
| 904 | | ROM_LOAD( "rms8.7e", 0xf000, 0x1000, CRC(23d929b7) SHA1(063f83020ba3d6f43ab8471f95ca919767b93aa4) ) /* from RMS-8 board: 2732 EPROM @7E w/unknown label (probably 'V0B', needs checking; has HDRB01HDR string in it), bios code */ \ |
| 953 | ROM_LOAD( "v0b-.7e", 0xf000, 0x1000, CRC(23d929b7) SHA1(063f83020ba3d6f43ab8471f95ca919767b93aa4) ) /* from RMS-8 board: 2732 EPROM @7E w/'V0B-' label (has HDRB01HDR string inside it), bios code */ \ |
| 905 | 954 | \ |
| 906 | 955 | DECOCASS_COMMON_ROMS \ |
| 907 | 956 | |
| r14742 | r14743 | |
| 910 | 959 | /* dsp3.p0b/p1b, Old boardset bios, revision B?; from DSP-3 board? has HDRB01x string in it, 2x 2716 EPROM? */ \ |
| 911 | 960 | \ |
| 912 | 961 | ROM_REGION( 0x10000, "maincpu", 0 ) \ |
| 913 | | ROM_LOAD( "dsp3.p0b", 0xf000, 0x0800, CRC(b67a91d9) SHA1(681c040be0f0ed1ba0a50161b36d0ad8e1c8c5cb) ) \ |
| 914 | | ROM_LOAD( "dsp3.p1b", 0xf800, 0x0800, CRC(3bfff5f3) SHA1(4e9437cb1b76d64da6b37f01bd6e879fb399e8ce) ) \ |
| 962 | ROM_LOAD( "dsp3.p0b", 0xf000, 0x0800, CRC(b67a91d9) SHA1(681c040be0f0ed1ba0a50161b36d0ad8e1c8c5cb) ) \ |
| 963 | ROM_LOAD( "dsp3.p1b", 0xf800, 0x0800, CRC(3bfff5f3) SHA1(4e9437cb1b76d64da6b37f01bd6e879fb399e8ce) ) \ |
| 915 | 964 | \ |
| 916 | 965 | DECOCASS_COMMON_ROMS \ |
| 917 | 966 | |
| r14742 | r14743 | |
| 934 | 983 | ROM_LOAD( "testtape.cas", 0x0000, 0x2000, CRC(4f9d8efb) SHA1(5b77747dad1033e5703f06c0870441b54b4256c5) ) |
| 935 | 984 | ROM_END |
| 936 | 985 | |
| 986 | /* 01 Highway Chase */ |
| 937 | 987 | ROM_START( chwy ) |
| 938 | 988 | DECOCASS_BIOS_B_ROMS |
| 939 | 989 | |
| r14742 | r14743 | |
| 945 | 995 | ROM_LOAD( "chwy.cas", 0x0000, 0x8000, CRC(68a48064) SHA1(7e389737972fd0c54f398d296159c561f5ec3a93) ) |
| 946 | 996 | ROM_END |
| 947 | 997 | |
| 948 | | ROM_START( clocknch ) |
| 998 | /* 04 Terranean */ |
| 999 | ROM_START( cterrani ) |
| 949 | 1000 | DECOCASS_BIOS_B_ROMS |
| 950 | 1001 | |
| 951 | 1002 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 952 | 1003 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 953 | 1004 | |
| 954 | 1005 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 955 | | ROM_LOAD( "clocknch.cas", 0x0000, 0x8000, CRC(c9d163a4) SHA1(3ef55a8d8f603059e263776c08eb81f2cf18b75c) ) |
| 1006 | ROM_LOAD( "cterrani.cas", 0x0000, 0x8000, CRC(eb71adbc) SHA1(67becfde39c034d4b8edc2eb100050de102773da) ) |
| 956 | 1007 | ROM_END |
| 957 | 1008 | |
| 958 | | ROM_START( ctisland ) |
| 1009 | /* 07 Astro Fantasia */ |
| 1010 | ROM_START( castfant ) |
| 959 | 1011 | DECOCASS_BIOS_B_ROMS |
| 960 | 1012 | |
| 961 | 1013 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 962 | 1014 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 963 | 1015 | |
| 964 | 1016 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 965 | | ROM_LOAD( "ctisland.cas", 0x0000, 0x8000, CRC(3f63b8f8) SHA1(2fd0679ef9750a228ebb098672ab6091fda75804) ) |
| 966 | | |
| 967 | | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 968 | | ROM_LOAD( "deco-ti.x1", 0x0000, 0x1000, CRC(a7f8aeba) SHA1(0c9ba1a46d0636b36f40fad31638db89f374f778) ) |
| 969 | | ROM_LOAD( "deco-ti.x2", 0x1000, 0x1000, CRC(2a0d3c91) SHA1(552d08fcddddbea5b52fa1e8decd188ae49c86ea) ) |
| 970 | | ROM_LOAD( "deco-ti.x3", 0x2000, 0x1000, CRC(3a26b97c) SHA1(f57e76077806e149a9e455c85e5431eac2d42bc3) ) |
| 971 | | ROM_LOAD( "deco-ti.x4", 0x3000, 0x1000, CRC(1cbe43de) SHA1(8f26ad224e96c87da810c60d3dd88d415400b9fc) ) |
| 1017 | ROM_LOAD( "castfant.cas", 0x0000, 0x8000, CRC(6d77d1b5) SHA1(821bd65fbe887cbeac9281a2ad3f88595918f886) ) |
| 972 | 1018 | ROM_END |
| 973 | 1019 | |
| 974 | | ROM_START( ctisland2 ) |
| 1020 | /* 09 Super Astro Fighter */ |
| 1021 | ROM_START( csuperas ) |
| 975 | 1022 | DECOCASS_BIOS_B_ROMS |
| 976 | 1023 | |
| 977 | 1024 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 978 | 1025 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 979 | 1026 | |
| 980 | 1027 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 981 | | ROM_LOAD( "ctislnd2.cas", 0x0000, 0x8000, CRC(2854b4c0) SHA1(d3b4e0031dbb2340fbbe396a1ff9b8fbfd63663e) ) |
| 982 | | |
| 983 | | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 984 | | ROM_LOAD( "deco-ti.x1", 0x0000, 0x1000, CRC(a7f8aeba) SHA1(0c9ba1a46d0636b36f40fad31638db89f374f778) ) |
| 985 | | ROM_LOAD( "deco-ti.x2", 0x1000, 0x1000, CRC(2a0d3c91) SHA1(552d08fcddddbea5b52fa1e8decd188ae49c86ea) ) |
| 986 | | ROM_LOAD( "deco-ti.x3", 0x2000, 0x1000, CRC(3a26b97c) SHA1(f57e76077806e149a9e455c85e5431eac2d42bc3) ) |
| 987 | | ROM_LOAD( "deco-ti.x4", 0x3000, 0x1000, CRC(1cbe43de) SHA1(8f26ad224e96c87da810c60d3dd88d415400b9fc) ) |
| 1028 | ROM_LOAD( "csuperas.cas", 0x0000, 0x8000, CRC(fabcd07f) SHA1(4070c668ad6725f0710cf7fe6df0d5f80272a449) ) |
| 988 | 1029 | ROM_END |
| 989 | 1030 | |
| 990 | | ROM_START( ctisland3 ) |
| 1031 | /* 11 Lock'n'Chase */ |
| 1032 | ROM_START( clocknch ) |
| 991 | 1033 | DECOCASS_BIOS_B_ROMS |
| 992 | 1034 | |
| 993 | 1035 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 994 | 1036 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 995 | 1037 | |
| 996 | 1038 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 997 | | ROM_LOAD( "ctislnd3.cas", 0x0000, 0x8000, CRC(45464e1e) SHA1(03275694d963c7ab0e0f5525e248e69da5f9b591) ) |
| 998 | | |
| 999 | | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 1000 | | ROM_LOAD( "deco-ti.x1", 0x0000, 0x1000, CRC(a7f8aeba) SHA1(0c9ba1a46d0636b36f40fad31638db89f374f778) ) |
| 1001 | | ROM_LOAD( "deco-ti.x2", 0x1000, 0x1000, CRC(2a0d3c91) SHA1(552d08fcddddbea5b52fa1e8decd188ae49c86ea) ) |
| 1002 | | ROM_LOAD( "deco-ti.x3", 0x2000, 0x1000, CRC(3a26b97c) SHA1(f57e76077806e149a9e455c85e5431eac2d42bc3) ) |
| 1003 | | ROM_LOAD( "deco-ti.x4", 0x3000, 0x1000, CRC(1cbe43de) SHA1(8f26ad224e96c87da810c60d3dd88d415400b9fc) ) |
| 1039 | ROM_LOAD( "clocknch.cas", 0x0000, 0x8000, CRC(c9d163a4) SHA1(3ef55a8d8f603059e263776c08eb81f2cf18b75c) ) |
| 1004 | 1040 | ROM_END |
| 1005 | 1041 | |
| 1006 | | ROM_START( csuperas ) |
| 1042 | /* 13 */ |
| 1043 | ROM_START( cprogolf ) |
| 1007 | 1044 | DECOCASS_BIOS_B_ROMS |
| 1008 | 1045 | |
| 1009 | 1046 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 1010 | 1047 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 1011 | 1048 | |
| 1012 | 1049 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1013 | | ROM_LOAD( "csuperas.cas", 0x0000, 0x8000, CRC(fabcd07f) SHA1(4070c668ad6725f0710cf7fe6df0d5f80272a449) ) |
| 1050 | ROM_LOAD( "cprogolf.cas", 0x0000, 0x8000, CRC(02123cd1) SHA1(e4c630ed293725f23d539cb43beb97953558dabd) ) |
| 1014 | 1051 | ROM_END |
| 1015 | 1052 | |
| 1016 | | ROM_START( castfant ) |
| 1053 | /* 15 Lucky Poker */ |
| 1054 | ROM_START( cluckypo ) |
| 1017 | 1055 | DECOCASS_BIOS_B_ROMS |
| 1018 | 1056 | |
| 1019 | 1057 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 1020 | 1058 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 1021 | 1059 | |
| 1022 | 1060 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1023 | | ROM_LOAD( "castfant.cas", 0x0000, 0x8000, CRC(6d77d1b5) SHA1(821bd65fbe887cbeac9281a2ad3f88595918f886) ) |
| 1061 | ROM_LOAD( "cluckypo.cas", 0x0000, 0x8000, CRC(2070c243) SHA1(cd3af309af8eb27937756c1fe6fd0504be5aaaf5) ) |
| 1024 | 1062 | ROM_END |
| 1025 | 1063 | |
| 1026 | | ROM_START( cluckypo ) |
| 1064 | /* 16 Treasure Island */ |
| 1065 | ROM_START( ctisland ) |
| 1027 | 1066 | DECOCASS_BIOS_B_ROMS |
| 1028 | 1067 | |
| 1029 | 1068 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 1030 | 1069 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 1031 | 1070 | |
| 1032 | 1071 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1033 | | ROM_LOAD( "cluckypo.cas", 0x0000, 0x8000, CRC(2070c243) SHA1(cd3af309af8eb27937756c1fe6fd0504be5aaaf5) ) |
| 1072 | ROM_LOAD( "ctisland.cas", 0x0000, 0x8000, CRC(3f63b8f8) SHA1(2fd0679ef9750a228ebb098672ab6091fda75804) ) |
| 1073 | |
| 1074 | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 1075 | ROM_LOAD( "deco-ti.x1", 0x0000, 0x1000, CRC(a7f8aeba) SHA1(0c9ba1a46d0636b36f40fad31638db89f374f778) ) |
| 1076 | ROM_LOAD( "deco-ti.x2", 0x1000, 0x1000, CRC(2a0d3c91) SHA1(552d08fcddddbea5b52fa1e8decd188ae49c86ea) ) |
| 1077 | ROM_LOAD( "deco-ti.x3", 0x2000, 0x1000, CRC(3a26b97c) SHA1(f57e76077806e149a9e455c85e5431eac2d42bc3) ) |
| 1078 | ROM_LOAD( "deco-ti.x4", 0x3000, 0x1000, CRC(1cbe43de) SHA1(8f26ad224e96c87da810c60d3dd88d415400b9fc) ) |
| 1034 | 1079 | ROM_END |
| 1035 | 1080 | |
| 1036 | | ROM_START( cterrani ) |
| 1081 | ROM_START( ctisland2 ) |
| 1037 | 1082 | DECOCASS_BIOS_B_ROMS |
| 1038 | 1083 | |
| 1039 | 1084 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 1040 | 1085 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 1041 | 1086 | |
| 1042 | 1087 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1043 | | ROM_LOAD( "cterrani.cas", 0x0000, 0x8000, CRC(eb71adbc) SHA1(67becfde39c034d4b8edc2eb100050de102773da) ) |
| 1088 | ROM_LOAD( "ctislnd2.cas", 0x0000, 0x8000, CRC(2854b4c0) SHA1(d3b4e0031dbb2340fbbe396a1ff9b8fbfd63663e) ) |
| 1089 | |
| 1090 | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 1091 | ROM_LOAD( "deco-ti.x1", 0x0000, 0x1000, CRC(a7f8aeba) SHA1(0c9ba1a46d0636b36f40fad31638db89f374f778) ) |
| 1092 | ROM_LOAD( "deco-ti.x2", 0x1000, 0x1000, CRC(2a0d3c91) SHA1(552d08fcddddbea5b52fa1e8decd188ae49c86ea) ) |
| 1093 | ROM_LOAD( "deco-ti.x3", 0x2000, 0x1000, CRC(3a26b97c) SHA1(f57e76077806e149a9e455c85e5431eac2d42bc3) ) |
| 1094 | ROM_LOAD( "deco-ti.x4", 0x3000, 0x1000, CRC(1cbe43de) SHA1(8f26ad224e96c87da810c60d3dd88d415400b9fc) ) |
| 1044 | 1095 | ROM_END |
| 1045 | 1096 | |
| 1046 | | ROM_START( cexplore ) |
| 1097 | ROM_START( ctisland3 ) |
| 1047 | 1098 | DECOCASS_BIOS_B_ROMS |
| 1048 | 1099 | |
| 1049 | 1100 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 1050 | | /* The dongle data is reverse engineered by table analysis */ |
| 1051 | | ROM_LOAD( "cexplore.pro", 0x0000, 0x0020, BAD_DUMP CRC(c7a9ac8f) SHA1(b0a566d948f71a4eddcde0dd5e9e69ca96f71c36) ) |
| 1101 | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 1052 | 1102 | |
| 1053 | 1103 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1054 | | ROM_LOAD( "cexplore.cas", 0x0000, 0x8000, CRC(fae49c66) SHA1(4ae69e2f706fdf30204f0aa1277619395cacc21b) ) |
| 1104 | ROM_LOAD( "ctislnd3.cas", 0x0000, 0x8000, CRC(45464e1e) SHA1(03275694d963c7ab0e0f5525e248e69da5f9b591) ) |
| 1055 | 1105 | |
| 1056 | 1106 | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 1057 | | ROM_LOAD( "cexplore_overlay_roms", 0x0000, 0x4000, NO_DUMP ) |
| 1107 | ROM_LOAD( "deco-ti.x1", 0x0000, 0x1000, CRC(a7f8aeba) SHA1(0c9ba1a46d0636b36f40fad31638db89f374f778) ) |
| 1108 | ROM_LOAD( "deco-ti.x2", 0x1000, 0x1000, CRC(2a0d3c91) SHA1(552d08fcddddbea5b52fa1e8decd188ae49c86ea) ) |
| 1109 | ROM_LOAD( "deco-ti.x3", 0x2000, 0x1000, CRC(3a26b97c) SHA1(f57e76077806e149a9e455c85e5431eac2d42bc3) ) |
| 1110 | ROM_LOAD( "deco-ti.x4", 0x3000, 0x1000, CRC(1cbe43de) SHA1(8f26ad224e96c87da810c60d3dd88d415400b9fc) ) |
| 1058 | 1111 | ROM_END |
| 1059 | 1112 | |
| 1060 | | ROM_START( cprogolf ) |
| 1113 | /* 18 Explorer */ |
| 1114 | ROM_START( cexplore ) |
| 1061 | 1115 | DECOCASS_BIOS_B_ROMS |
| 1062 | 1116 | |
| 1063 | 1117 | ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ |
| 1064 | | ROM_LOAD( "de-0061.pro", 0x0000, 0x0020, CRC(e09ae5de) SHA1(7dec067d0739a6dad2607132641b66880a5b7751) ) |
| 1118 | /* The dongle data is reverse engineered by table analysis */ |
| 1119 | ROM_LOAD( "cexplore.pro", 0x0000, 0x0020, BAD_DUMP CRC(c7a9ac8f) SHA1(b0a566d948f71a4eddcde0dd5e9e69ca96f71c36) ) |
| 1065 | 1120 | |
| 1066 | 1121 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1067 | | ROM_LOAD( "cprogolf.cas", 0x0000, 0x8000, CRC(02123cd1) SHA1(e4c630ed293725f23d539cb43beb97953558dabd) ) |
| 1122 | ROM_LOAD( "cexplore.cas", 0x0000, 0x8000, CRC(fae49c66) SHA1(4ae69e2f706fdf30204f0aa1277619395cacc21b) ) |
| 1123 | |
| 1124 | ROM_REGION( 0x4000, "user3", 0 ) /* roms from the overlay pcb */ |
| 1125 | ROM_LOAD( "cexplore_overlay_roms", 0x0000, 0x4000, NO_DUMP ) |
| 1068 | 1126 | ROM_END |
| 1069 | 1127 | |
| 1070 | 1128 | /* The Following use Dongle Type 2 (CS82-007) |
| 1071 | 1129 | (dongle data differs for each game) */ |
| 1072 | 1130 | |
| 1073 | | ROM_START( cmissnx ) |
| 1074 | | DECOCASS_BIOS_B_ROMS |
| 1075 | | |
| 1076 | | ROM_REGION( 0x00800, "dongle", 0 ) /* dongle data */ |
| 1077 | | ROM_LOAD( "cmissnx.pro", 0x0000, 0x0800, CRC(8a41c071) SHA1(7b16d933707bf21d25dcd11db6a6c28834b11c5b) ) |
| 1078 | | |
| 1079 | | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1080 | | ROM_LOAD( "cmissnx.cas", 0x0000, 0x8000, CRC(3a094e11) SHA1(c355fe14838187cbde19a799e5c60083c82615ac) ) |
| 1081 | | ROM_END |
| 1082 | | |
| 1131 | /* 19 Disco No.1 / Sweet Heart */ |
| 1083 | 1132 | ROM_START( cdiscon1 ) |
| 1084 | 1133 | DECOCASS_BIOS_B_ROMS |
| 1085 | 1134 | |
| r14742 | r14743 | |
| 1100 | 1149 | ROM_LOAD( "csweetht.cas", 0x0000, 0x8000, CRC(175ef706) SHA1(49b86233f69d0daf54a6e59b86e69b8159e8f6cc) ) |
| 1101 | 1150 | ROM_END |
| 1102 | 1151 | |
| 1103 | | ROM_START( cptennis ) |
| 1152 | /* 20 Tornado */ |
| 1153 | ROM_START( ctornado ) |
| 1104 | 1154 | DECOCASS_BIOS_B_ROMS |
| 1105 | 1155 | |
| 1106 | 1156 | ROM_REGION( 0x00800, "dongle", 0 ) /* dongle data */ |
| 1107 | | ROM_LOAD( "cptennis.pro", 0x0000, 0x0800, CRC(59b8cede) SHA1(514861a652b5256a11477fc357bc01dfd87f712b) ) |
| 1157 | ROM_LOAD( "ctornado.pro", 0x0000, 0x0800, CRC(c9a91697) SHA1(3f7163291edbdf1a596e3cd2b7a16bbb140ffb36) ) |
| 1108 | 1158 | |
| 1109 | 1159 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1110 | | ROM_LOAD( "cptennis.cas", 0x0000, 0x8000, CRC(6bb257fe) SHA1(7554bf1996bc9e9c04a276aab050708d70103f54) ) |
| 1160 | ROM_LOAD( "ctornado.cas", 0x0000, 0x8000, CRC(e4e36ce0) SHA1(48a11823121fb2e3de31ae08e453c0124fc4f7f3) ) |
| 1111 | 1161 | ROM_END |
| 1112 | 1162 | |
| 1113 | | ROM_START( ctornado ) |
| 1163 | /* 21 Mission-X */ |
| 1164 | ROM_START( cmissnx ) |
| 1114 | 1165 | DECOCASS_BIOS_B_ROMS |
| 1115 | 1166 | |
| 1116 | 1167 | ROM_REGION( 0x00800, "dongle", 0 ) /* dongle data */ |
| 1117 | | ROM_LOAD( "ctornado.pro", 0x0000, 0x0800, CRC(c9a91697) SHA1(3f7163291edbdf1a596e3cd2b7a16bbb140ffb36) ) |
| 1168 | ROM_LOAD( "cmissnx.pro", 0x0000, 0x0800, CRC(8a41c071) SHA1(7b16d933707bf21d25dcd11db6a6c28834b11c5b) ) |
| 1118 | 1169 | |
| 1119 | 1170 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1120 | | ROM_LOAD( "ctornado.cas", 0x0000, 0x8000, CRC(e4e36ce0) SHA1(48a11823121fb2e3de31ae08e453c0124fc4f7f3) ) |
| 1171 | ROM_LOAD( "cmissnx.cas", 0x0000, 0x8000, CRC(3a094e11) SHA1(c355fe14838187cbde19a799e5c60083c82615ac) ) |
| 1121 | 1172 | ROM_END |
| 1122 | 1173 | |
| 1174 | /* 22 Pro Tennis */ |
| 1175 | ROM_START( cptennis ) |
| 1176 | DECOCASS_BIOS_B_ROMS |
| 1177 | |
| 1178 | ROM_REGION( 0x00800, "dongle", 0 ) /* dongle data */ |
| 1179 | ROM_LOAD( "cptennis.pro", 0x0000, 0x0800, CRC(59b8cede) SHA1(514861a652b5256a11477fc357bc01dfd87f712b) ) |
| 1180 | |
| 1181 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1182 | ROM_LOAD( "cptennis.cas", 0x0000, 0x8000, CRC(6bb257fe) SHA1(7554bf1996bc9e9c04a276aab050708d70103f54) ) |
| 1183 | ROM_END |
| 1184 | |
| 1185 | |
| 1123 | 1186 | /* The Following use Dongle Type 3 (unknown part number?) |
| 1124 | 1187 | (dongle data differs for each game) */ |
| 1125 | 1188 | |
| 1189 | /* 26 Hamburger / Burger Time */ |
| 1190 | ROM_START( cbtime ) |
| 1191 | DECOCASS_BIOS_B_ROMS |
| 1192 | |
| 1193 | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1194 | ROM_LOAD( "cbtime.pro", 0x0000, 0x1000, CRC(25bec0f0) SHA1(9fb1f9699f37937421e26d4fb8fdbcd21a5ddc5c) ) |
| 1195 | |
| 1196 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1197 | ROM_LOAD( "cbtime.cas", 0x0000, 0x8000, CRC(56d7dc58) SHA1(34b2513c9ca7ab40f532b6d6d911aa3012113632) ) |
| 1198 | ROM_END |
| 1199 | |
| 1200 | /* 27 Burnin' Rubber / Bump 'n' Jump */ |
| 1126 | 1201 | ROM_START( cburnrub ) |
| 1127 | 1202 | DECOCASS_BIOS_B_ROMS |
| 1128 | 1203 | |
| r14742 | r14743 | |
| 1153 | 1228 | ROM_LOAD( "cbnj.cas", 0x0000, 0x8000, CRC(eed41560) SHA1(85d5df76efac33cd10427f659c4259afabb3daaf) ) |
| 1154 | 1229 | ROM_END |
| 1155 | 1230 | |
| 1156 | | ROM_START( cbtime ) |
| 1157 | | DECOCASS_BIOS_B_ROMS |
| 1158 | | |
| 1159 | | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1160 | | ROM_LOAD( "cbtime.pro", 0x0000, 0x1000, CRC(25bec0f0) SHA1(9fb1f9699f37937421e26d4fb8fdbcd21a5ddc5c) ) |
| 1161 | | |
| 1162 | | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1163 | | ROM_LOAD( "cbtime.cas", 0x0000, 0x8000, CRC(56d7dc58) SHA1(34b2513c9ca7ab40f532b6d6d911aa3012113632) ) |
| 1164 | | ROM_END |
| 1165 | | |
| 1231 | /* 28 Graplop / Cluster Buster */ |
| 1166 | 1232 | ROM_START( cgraplop ) |
| 1167 | 1233 | DECOCASS_BIOS_B_ROMS |
| 1168 | 1234 | |
| r14742 | r14743 | |
| 1183 | 1249 | ROM_LOAD( "cgraplop2.cas", 0x0000, 0x8000, CRC(2e728981) SHA1(83ba90d95858d647315a1c311b8643672afea5f7) ) |
| 1184 | 1250 | ROM_END |
| 1185 | 1251 | |
| 1252 | /* 29 La-Pa-Pa / Rootin' Tootin' */ |
| 1186 | 1253 | ROM_START( clapapa ) |
| 1187 | 1254 | DECOCASS_BIOS_B_ROMS |
| 1188 | 1255 | |
| r14742 | r14743 | |
| 1203 | 1270 | ROM_LOAD( "clapapa2.cas", 0x0000, 0x8000, CRC(069dd3c4) SHA1(5a19392c7ac5aea979187c96267e73bf5126307e) ) |
| 1204 | 1271 | ROM_END |
| 1205 | 1272 | |
| 1206 | | ROM_START( cfghtice ) |
| 1207 | | DECOCASS_BIOS_B_ROMS |
| 1273 | /* 30 Skater */ |
| 1274 | ROM_START( cskater ) |
| 1275 | DECOCASS_BIOS_A_ROMS |
| 1208 | 1276 | |
| 1209 | 1277 | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1210 | | ROM_LOAD( "cfghtice.pro", 0x0000, 0x1000, CRC(5abd27b5) SHA1(2ab1c171adffd491759036d6ce2433706654aad2) ) |
| 1278 | ROM_LOAD( "dp-130 a.dgl", 0x0000, 0x1000, CRC(469e80a8) SHA1(f581cd534ce6faba010c6616538cdf9d96d787da) ) |
| 1211 | 1279 | |
| 1212 | 1280 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1213 | | ROM_LOAD( "cfghtice.cas", 0x0000, 0x10000, CRC(906dd7fb) SHA1(894a7970d5476ed035edd15656e5cf10d6ddcf57) ) |
| 1281 | ROM_LOAD( "dt-130 a.bin", 0x0000, 0x8000, CRC(1722e5e1) SHA1(e94066ead608df85d3f7310d4a81ba291da4bee6) ) |
| 1214 | 1282 | ROM_END |
| 1215 | 1283 | |
| 1284 | /* 31 Pro Bowling */ |
| 1216 | 1285 | ROM_START( cprobowl ) |
| 1217 | 1286 | DECOCASS_BIOS_B_ROMS |
| 1218 | 1287 | |
| r14742 | r14743 | |
| 1223 | 1292 | ROM_LOAD( "cprobowl.cas", 0x0000, 0x8000, CRC(cb86c5e1) SHA1(66c467418cff2ed6d7c121a8b1650ee97ae48fe9) ) |
| 1224 | 1293 | ROM_END |
| 1225 | 1294 | |
| 1295 | /* 32 Night Star */ |
| 1226 | 1296 | ROM_START( cnightst ) |
| 1227 | 1297 | DECOCASS_BIOS_B_ROMS |
| 1228 | 1298 | |
| r14742 | r14743 | |
| 1243 | 1313 | ROM_LOAD( "cnights2.cas", 0x0000, 0x8000, CRC(1a28128c) SHA1(4b620a1919d02814f734aba995115c09dc2db930) ) |
| 1244 | 1314 | ROM_END |
| 1245 | 1315 | |
| 1316 | /* 33 Pro Soccer */ |
| 1246 | 1317 | ROM_START( cpsoccer ) |
| 1247 | 1318 | DECOCASS_BIOS_B_ROMS |
| 1248 | 1319 | |
| r14742 | r14743 | |
| 1257 | 1328 | DECOCASS_BIOS_A_ROMS |
| 1258 | 1329 | |
| 1259 | 1330 | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1260 | | ROM_LOAD( "dp-133a.dgl", 0x0000, 0x1000, CRC(919fabb2) SHA1(3d6a0676cea7b0be0fe69d06e04ca08c36b2851a) ) |
| 1331 | ROM_LOAD( "dp-133 a.dgl", 0x0000, 0x1000, CRC(919fabb2) SHA1(3d6a0676cea7b0be0fe69d06e04ca08c36b2851a) ) |
| 1261 | 1332 | |
| 1262 | 1333 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1263 | | ROM_LOAD( "dt-133a.cas", 0x0000, 0x10000, CRC(de682a29) SHA1(2ee0dd8cb7fb595020d730a9da5d9cccda3f1264) ) |
| 1334 | ROM_LOAD( "dt-133 a.bin", 0x0000, 0x10000, CRC(de682a29) SHA1(2ee0dd8cb7fb595020d730a9da5d9cccda3f1264) ) |
| 1264 | 1335 | ROM_END |
| 1265 | 1336 | |
| 1337 | /* 34 Super Doubles Tennis */ |
| 1338 | ROM_START( csdtenis ) |
| 1339 | DECOCASS_BIOS_A_ROMS |
| 1340 | |
| 1341 | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1342 | ROM_LOAD( "dp-134 a.dgl", 0x0000, 0x1000, CRC(e484d2f5) SHA1(ee4e4c221933d391aeed8ff7182fa931a4e01466) ) |
| 1343 | |
| 1344 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1345 | ROM_LOAD( "dt-134 a.bin", 0x0000, 0x10000, CRC(9a69d961) SHA1(f88e267815ca0697708aca0ac9fa6f7664a0519c) ) |
| 1346 | ROM_END |
| 1347 | |
| 1348 | /* 37 Zeroize */ |
| 1349 | ROM_START( czeroize ) |
| 1350 | DECOCASS_BIOS_B_ROMS |
| 1351 | |
| 1352 | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1353 | ROM_LOAD( "czeroize.pro", 0x0000, 0x1000, NO_DUMP ) /* The Following have unknown Dongles (dongle data not read) */ |
| 1354 | |
| 1355 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1356 | ROM_LOAD( "czeroize.cas", 0x0000, 0x10000, CRC(3ef0a406) SHA1(645b34cd477e0bb5539c8fe937a7a2dbd8369003) ) |
| 1357 | ROM_END |
| 1358 | |
| 1359 | /* 39 Peter Pepper's Ice Cream Factory */ |
| 1266 | 1360 | ROM_START( cppicf ) |
| 1267 | 1361 | DECOCASS_BIOS_B_ROMS |
| 1268 | 1362 | |
| r14742 | r14743 | |
| 1283 | 1377 | ROM_LOAD( "cppicf2.cas", 0x0000, 0x8000, CRC(78ffa1bc) SHA1(d15f2a240ae7b45885d32b5f507243f82e820d4b) ) |
| 1284 | 1378 | ROM_END |
| 1285 | 1379 | |
| 1380 | /* 40 Fighting Ice Hockey */ |
| 1381 | ROM_START( cfghtice ) |
| 1382 | DECOCASS_BIOS_B_ROMS |
| 1383 | |
| 1384 | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1385 | ROM_LOAD( "cfghtice.pro", 0x0000, 0x1000, CRC(5abd27b5) SHA1(2ab1c171adffd491759036d6ce2433706654aad2) ) |
| 1386 | |
| 1387 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1388 | ROM_LOAD( "cfghtice.cas", 0x0000, 0x10000, CRC(906dd7fb) SHA1(894a7970d5476ed035edd15656e5cf10d6ddcf57) ) |
| 1389 | ROM_END |
| 1390 | |
| 1286 | 1391 | /* The Following use Dongle Type 4 (unknown part number?) |
| 1287 | 1392 | (dongle data is used for most of the graphics) */ |
| 1288 | 1393 | |
| 1394 | /* 38 Scrum Try */ |
| 1289 | 1395 | ROM_START( cscrtry ) |
| 1290 | 1396 | DECOCASS_BIOS_B_ROMS |
| 1291 | 1397 | |
| r14742 | r14743 | |
| 1306 | 1412 | ROM_LOAD( "cscrtry2.cas", 0x0000, 0x8000, CRC(04597842) SHA1(7f1fc3e06b61df880debe9056bdfbbb8600af739) ) |
| 1307 | 1413 | ROM_END |
| 1308 | 1414 | |
| 1309 | | ROM_START( cgsumo ) |
| 1415 | /* 41 Oozumou - The Grand Sumo */ |
| 1416 | ROM_START( coozumou ) |
| 1310 | 1417 | DECOCASS_BIOS_A_ROMS |
| 1311 | 1418 | |
| 1312 | 1419 | ROM_REGION( 0x08000, "dongle", 0 ) /* dongle data */ |
| 1313 | | ROM_LOAD( "dp-141a.pro", 0x0000, 0x8000, CRC(bc379d2c) SHA1(bab19dcb6d68fdbd547ebab1598353f436321157) ) |
| 1420 | ROM_LOAD( "dp-141 a.dgl", 0x0000, 0x8000, CRC(bc379d2c) SHA1(bab19dcb6d68fdbd547ebab1598353f436321157) ) |
| 1314 | 1421 | |
| 1315 | 1422 | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1316 | | ROM_LOAD( "dt-141[1a]ext.bin", 0x0000, 0x10000, CRC(20c2e86a) SHA1(a18248ba00b847a09df0bea7752a21162af8af76) ) |
| 1423 | ROM_LOAD( "dt-141 1a.bin", 0x0000, 0x10000, CRC(20c2e86a) SHA1(a18248ba00b847a09df0bea7752a21162af8af76) ) |
| 1317 | 1424 | ROM_END |
| 1318 | 1425 | |
| 1319 | | /* The Following use Dongle Type 5 (unknown part number?) |
| 1320 | | (dongle data not read) */ |
| 1321 | | |
| 1426 | /* 44 Boulder Dash */ |
| 1322 | 1427 | ROM_START( cbdash ) |
| 1323 | 1428 | DECOCASS_BIOS_B_ROMS |
| 1324 | 1429 | |
| r14742 | r14743 | |
| 1331 | 1436 | |
| 1332 | 1437 | /* The Following have no Dongles at all */ |
| 1333 | 1438 | |
| 1439 | /* 35 Flying Ball*/ |
| 1334 | 1440 | ROM_START( cflyball ) |
| 1335 | 1441 | DECOCASS_BIOS_B_ROMS |
| 1336 | 1442 | |
| r14742 | r14743 | |
| 1340 | 1446 | ROM_LOAD( "cflyball.cas", 0x0000, 0x10000, CRC(cb40d043) SHA1(57698bac7e0d552167efa99d08116bf19a3b29c9) ) |
| 1341 | 1447 | ROM_END |
| 1342 | 1448 | |
| 1343 | | /* The Following have unknown Dongles |
| 1344 | | (dongle data not read) */ |
| 1345 | 1449 | |
| 1346 | | ROM_START( czeroize ) |
| 1347 | | DECOCASS_BIOS_B_ROMS |
| 1348 | | |
| 1349 | | ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ |
| 1350 | | ROM_LOAD( "czeroize.pro", 0x0000, 0x1000, NO_DUMP ) |
| 1351 | | |
| 1352 | | ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ |
| 1353 | | ROM_LOAD( "czeroize.cas", 0x0000, 0x10000, CRC(3ef0a406) SHA1(645b34cd477e0bb5539c8fe937a7a2dbd8369003) ) |
| 1354 | | ROM_END |
| 1355 | | |
| 1356 | | |
| 1357 | 1450 | static DRIVER_INIT( decocass ) |
| 1358 | 1451 | { |
| 1359 | 1452 | decocass_state *state = machine.driver_data<decocass_state>(); |
| r14742 | r14743 | |
| 1443 | 1536 | /* 26 */ GAME( 1983, cbtime, decocass, cbtime, cbtime, decocass, ROT270, "Data East Corporation", "Burger Time (DECO Cassette)", 0 ) |
| 1444 | 1537 | /* 27 */ GAME( 1982, cburnrub, decocass, cburnrub, decocass, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (DECO Cassette, set 1)", 0 ) |
| 1445 | 1538 | GAME( 1982, cburnrub2,cburnrub, cburnrub, decocass, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (DECO Cassette, set 2)", 0 ) |
| 1446 | | GAME( 1982, cbnj, cburnrub, cbnj, decocass, decocass, ROT270, "Data East Corporation", "Bump 'n' Jump (DECO Cassette)", 0 ) |
| 1539 | GAME( 1982, cbnj, cburnrub, cburnrub, decocass, decocass, ROT270, "Data East Corporation", "Bump 'n' Jump (DECO Cassette)", 0 ) |
| 1447 | 1540 | /* 28 */ GAME( 1983, cgraplop, decocass, cgraplop, cgraplop, decocass, ROT270, "Data East Corporation", "Cluster Buster / Graplop (DECO Cassette, set 1)", 0 ) |
| 1448 | 1541 | GAME( 1983, cgraplop2,cgraplop, cgraplop2,cgraplop, decocass, ROT270, "Data East Corporation", "Cluster Buster / Graplop (DECO Cassette, set 2)", GAME_NOT_WORKING ) |
| 1449 | 1542 | /* 29 */ GAME( 1983, clapapa, decocass, clapapa, decocass, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' / La-Pa-Pa (DECO Cassette)" , 0) /* Displays 'La-Pa-Pa during attract */ |
| 1450 | 1543 | GAME( 1983, clapapa2, clapapa, clapapa, decocass, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' (DECO Cassette)" , 0) /* Displays 'Rootin' Tootin' during attract */ |
| 1451 | | /* 30 */ // 1983.03 Skater |
| 1544 | /* 30 */ GAME( 1983, cskater, decocass, cskater, cskater, decocass, ROT270, "Data East Corporation", "Skater (DECO Cassette, Japan)", 0 ) |
| 1452 | 1545 | /* 31 */ GAME( 1983, cprobowl, decocass, cprobowl, decocass, decocass, ROT270, "Data East Corporation", "Pro Bowling (DECO Cassette)", 0 ) |
| 1453 | 1546 | /* 32 */ GAME( 1983, cnightst, decocass, cnightst, cnightst, decocass, ROT270, "Data East Corporation", "Night Star (DECO Cassette, set 1)", 0 ) |
| 1454 | 1547 | GAME( 1983, cnightst2,cnightst, cnightst, cnightst, decocass, ROT270, "Data East Corporation", "Night Star (DECO Cassette, set 2)", 0 ) |
| 1455 | 1548 | /* 33 */ GAME( 1983, cpsoccer, decocass, cpsoccer, cpsoccer, decocass, ROT270, "Data East Corporation", "Pro Soccer (DECO Cassette)", 0 ) |
| 1456 | 1549 | GAME( 1983, cpsoccerj,cpsoccer, cpsoccer, cpsoccer, decocass, ROT270, "Data East Corporation", "Pro Soccer (DECO Cassette, Japan)", 0 ) |
| 1457 | | /* 34 */ // 1983.09 Super Doubles Tennis |
| 1550 | /* 34 */ GAME( 1983, csdtenis, decocass, csdtenis, csdtenis, decocass, ROT270, "Data East Corporation", "Super Doubles Tennis (DECO Cassette, Japan)", GAME_WRONG_COLORS ) |
| 1458 | 1551 | /* 35 */ GAME( 1985, cflyball, decocass, cflyball, decocass, decocass, ROT270, "Data East Corporation", "Flying Ball (DECO Cassette)", 0 ) |
| 1459 | 1552 | /* 36 */ // 1984.04 Genesis/Boomer Rang'r |
| 1460 | 1553 | /* 37 */ GAME( 1983, czeroize, decocass, czeroize, decocass, decocass, ROT270, "Data East Corporation", "Zeroize (DECO Cassette)", 0 ) |
| 1461 | | /* 38 */ GAME( 1984, cscrtry, decocass, cscrtry, cscrtry, decocass, ROT270, "Data East Corporation", "Scrum Try (DECO Cassette, set 1)", 0 ) |
| 1462 | | GAME( 1984, cscrtry2, cscrtry, cscrtry, cscrtry, decocass, ROT270, "Data East Corporation", "Scrum Try (DECO Cassette, set 2)", 0 ) |
| 1554 | /* 38 */ GAME( 1984, cscrtry, decocass, type4, cscrtry, decocass, ROT270, "Data East Corporation", "Scrum Try (DECO Cassette, set 1)", 0 ) |
| 1555 | GAME( 1984, cscrtry2, cscrtry, type4, cscrtry, decocass, ROT270, "Data East Corporation", "Scrum Try (DECO Cassette, set 2)", 0 ) |
| 1463 | 1556 | /* 39 */ GAME( 1984, cppicf, decocass, cppicf, decocass, decocass, ROT270, "Data East Corporation", "Peter Pepper's Ice Cream Factory (DECO Cassette, set 1)", 0 ) |
| 1464 | 1557 | GAME( 1984, cppicf2, cppicf, cppicf, decocass, decocass, ROT270, "Data East Corporation", "Peter Pepper's Ice Cream Factory (DECO Cassette, set 2)", 0 ) |
| 1465 | 1558 | /* 40 */ GAME( 1984, cfghtice, decocass, cfghtice, cfghtice, decocass, ROT270, "Data East Corporation", "Fighting Ice Hockey (DECO Cassette)", 0 ) |
| 1466 | | /* 41 */ GAME( 1984, cgsumo, decocass, cscrtry, cscrtry, decocass, ROT270, "Data East Corporation", "Oozumou - The Grand Sumo (DECO Cassette)", 0 ) |
| 1559 | /* 41 */ GAME( 1984, coozumou, decocass, type4, cscrtry, decocass, ROT270, "Data East Corporation", "Oozumou - The Grand Sumo (DECO Cassette, Japan)", 0 ) |
| 1467 | 1560 | /* 42 */ // 1984.08 Hellow Gateball // not a typo, this is official spelling |
| 1468 | 1561 | /* 43 */ // 1984.08 Yellow Cab |
| 1469 | 1562 | /* 44 */ GAME( 1985, cbdash, decocass, cbdash, cbdash, decocass, ROT270, "Data East Corporation", "Boulder Dash (DECO Cassette)", 0 ) |
src/mame/drivers/dec8.c
| r14742 | r14743 | |
| 2 | 2 | |
| 3 | 3 | Various Data East 8 bit games: |
| 4 | 4 | |
| 5 | | Cobra Command (World) (c) 1988 Data East Corporation (6809) |
| 6 | | Cobra Command (Japan) (c) 1988 Data East Corporation (6809) |
| 7 | | The Real Ghostbusters (2p) (c) 1987 Data East USA (6809 + I8751) |
| 8 | | The Real Ghostbusters (3p) (c) 1987 Data East USA (6809 + I8751) |
| 9 | | Meikyuu Hunter G (c) 1987 Data East Corporation (6809 + I8751) |
| 10 | | Super Real Darwin (c) 1987 Data East Corporation (6809 + I8751) |
| 11 | | Psycho-Nics Oscar (c) 1988 Data East USA (2*6809 + I8751) |
| 12 | | Psycho-Nics Oscar (Japan) (c) 1987 Data East Corporation (2*6809 + I8751) |
| 13 | | Gondomania (c) 1987 Data East USA (6809 + I8751) |
| 14 | | Makyou Senshi (c) 1987 Data East Corporation (6809 + I8751) |
| 15 | 5 | Last Mission (rev 6) (c) 1986 Data East USA (2*6809 + I8751) |
| 16 | 6 | Last Mission (rev 5) (c) 1986 Data East USA (2*6809 + I8751) |
| 7 | Last Mission (Japan) (c) 1986 Data East Corporation (2*6809 + I8751) |
| 17 | 8 | Shackled (c) 1986 Data East USA (2*6809 + I8751) |
| 18 | 9 | Breywood (c) 1986 Data East Corporation (2*6809 + I8751) |
| 10 | Gondomania (c) 1987 Data East USA (6809 + I8751) |
| 11 | Makyou Senshi (c) 1987 Data East Corporation (6809 + I8751) |
| 12 | Garyo Retsuden (c) 1987 Data East Corporation (6809 + I8751) |
| 13 | The Real Ghostbusters (2p) (c) 1987 Data East USA (6809 + I8751) |
| 14 | The Real Ghostbusters (3p) (c) 1987 Data East USA (6809 + I8751) |
| 15 | Meikyuu Hunter G (c) 1987 Data East Corporation (6809 + I8751) |
| 19 | 16 | Captain Silver (World) (c) 1987 Data East Corporation (2*6809 + I8751) |
| 20 | 17 | Captain Silver (Japan) (c) 1987 Data East Corporation (2*6809 + I8751) |
| 21 | | Garyo Retsuden (Japan) (c) 1987 Data East Corporation (6809 + I8751) |
| 18 | Psycho-Nics Oscar (World) (c) 1987 Data East Corporation (2*6809 + I8751) |
| 19 | Psycho-Nics Oscar (US) (c) 1988 Data East USA (2*6809 + I8751) |
| 20 | Psycho-Nics Oscar (Japan) (c) 1987 Data East Corporation (2*6809 + I8751) |
| 21 | Super Real Darwin (World) (c) 1987 Data East Corporation (6809 + I8751) |
| 22 | Super Real Darwin (Japan) (c) 1987 Data East Corporation (6809 + I8751) |
| 23 | Cobra Command (World) (c) 1988 Data East Corporation (6809) |
| 24 | Cobra Command (Japan) (c) 1988 Data East Corporation (6809) |
| 22 | 25 | |
| 23 | 26 | All games use a 6502 for sound (some are encrypted), all games except Cobracom |
| 24 | | use an Intel 8751 for protection & coinage. For these games the coinage dip |
| 25 | | switch is not currently supported, they are fixed at 1 coin 1 credit. |
| 27 | use an Intel 8751 for protection & coinage. For the games without (fake) MCU, |
| 28 | the coinage dip switch (sometimes based on the manual) is simulated. |
| 26 | 29 | |
| 27 | 30 | Meikyuu Hunter G was formerly known as Mazehunter. |
| 28 | 31 | |
| 29 | 32 | Emulation by Bryan McPhail, mish@tendril.co.uk |
| 30 | 33 | |
| 31 | 34 | To do: |
| 32 | | Support coinage options for all i8751 emulations. |
| 33 | 35 | Super Real Darwin 'Double' sprites appearing from the top of the screen are clipped |
| 34 | 36 | Strangely coloured butterfly on Garyo Retsuden water levels! |
| 35 | 37 | |
| r14742 | r14743 | |
| 162 | 164 | * |
| 163 | 165 | ********************************/ |
| 164 | 166 | |
| 165 | | static WRITE8_HANDLER( srdarwin_i8751_w ) |
| 167 | static WRITE8_HANDLER( lastmisn_i8751_w ) |
| 166 | 168 | { |
| 167 | 169 | dec8_state *state = space->machine().driver_data<dec8_state>(); |
| 170 | |
| 171 | /* Japan coinage first, then World coinage - US coinage shall be the same as the Japan one */ |
| 172 | int lneed1[2][4] = {{1, 1, 1, 2}, {1, 1, 1, 1}}; /* slot 1 : coins needed */ |
| 173 | int lcred1[2][4] = {{1, 2, 3, 1}, {1, 2, 3, 5}}; /* slot 1 : credits awarded */ |
| 174 | int lneed2[2][4] = {{1, 1, 1, 2}, {1, 2, 3, 4}}; /* slot 2 : coins needed */ |
| 175 | int lcred2[2][4] = {{1, 2, 3, 1}, {1, 1, 1, 1}}; /* slot 2 : credits awarded */ |
| 176 | |
| 168 | 177 | state->m_i8751_return = 0; |
| 169 | 178 | |
| 170 | 179 | switch (offset) |
| 171 | 180 | { |
| 172 | 181 | case 0: /* High byte */ |
| 173 | 182 | state->m_i8751_value = (state->m_i8751_value & 0xff) | (data << 8); |
| 183 | device_set_input_line(state->m_maincpu, M6809_FIRQ_LINE, HOLD_LINE); /* Signal main cpu */ |
| 174 | 184 | break; |
| 175 | 185 | case 1: /* Low byte */ |
| 176 | 186 | state->m_i8751_value = (state->m_i8751_value & 0xff00) | data; |
| 177 | 187 | break; |
| 178 | 188 | } |
| 179 | 189 | |
| 180 | | if (state->m_i8751_value == 0x0000) {state->m_i8751_return = 0; state->m_coin1 = 0;} |
| 181 | | if (state->m_i8751_value == 0x3063) state->m_i8751_return = 0x9c; /* Protection - Japanese version */ |
| 182 | | if (state->m_i8751_value == 0x306b) state->m_i8751_return = 0x94; /* Protection - World version */ |
| 183 | | if ((state->m_i8751_value & 0xff00) == 0x4000) state->m_i8751_return = state->m_i8751_value; /* Coinage settings */ |
| 184 | | if (state->m_i8751_value == 0x5000) state->m_i8751_return = ((state->m_coin1 / 10) << 4) | (state->m_coin1 % 10); /* Coin request */ |
| 185 | | if (state->m_i8751_value == 0x6000) {state->m_i8751_value = -1; state->m_coin1--; } /* Coin clear */ |
| 186 | | /* Nb: Command 0x4000 for setting coinage options is not sup3ed */ |
| 187 | | if ((input_port_read(space->machine(), "FAKE") & 1) == 1) state->m_latch = 1; |
| 188 | | if ((input_port_read(space->machine(), "FAKE") & 1) != 1 && state->m_latch) {state->m_coin1++; state->m_latch = 0;} |
| 190 | /* Coins are controlled by the i8751 */ |
| 191 | if ((input_port_read(space->machine(), "IN2") & 3) == 3) state->m_latch = 1; |
| 192 | if ((input_port_read(space->machine(), "IN2") & 1) != 1 && state->m_latch) |
| 193 | { |
| 194 | state->m_coin1++; |
| 195 | state->m_latch = 0; |
| 196 | state->m_snd = 0x400; |
| 197 | state->m_i8751_return = 0x400; |
| 198 | if (state->m_coin1>=state->m_need1) |
| 199 | { |
| 200 | state->m_coin1-=state->m_need1; |
| 201 | state->m_credits+=state->m_cred1; |
| 202 | } |
| 203 | } |
| 204 | if ((input_port_read(space->machine(), "IN2") & 2) != 2 && state->m_latch) |
| 205 | { |
| 206 | state->m_coin2++; |
| 207 | state->m_latch = 0; |
| 208 | state->m_snd = 0x400; |
| 209 | state->m_i8751_return = 0x400; |
| 210 | if (state->m_coin2>=state->m_need2) |
| 211 | { |
| 212 | state->m_coin2-=state->m_need2; |
| 213 | state->m_credits+=state->m_cred2; |
| 214 | } |
| 215 | } |
| 216 | if (state->m_credits>99) state->m_credits=99; /* not handled by main CPU */ |
| 189 | 217 | |
| 190 | | /* This next value is the index to a series of tables, |
| 191 | | each table controls the end of level bad guy, wrong values crash the |
| 192 | | cpu right away via a bogus jump. |
| 218 | if (state->m_i8751_value == 0x0401) state->m_i8751_return = 0; /* ??? */ |
| 193 | 219 | |
| 194 | | Level number requested is in low byte |
| 220 | if (state->m_i8751_value == 0x007a) { state->m_i8751_return = 0x85; state->m_coinage_id = 0; } /* Japanese version ID */ |
| 221 | if (state->m_i8751_value == 0x007b) { state->m_i8751_return = 0x84; state->m_coinage_id = 0; } /* US version ID */ |
| 195 | 222 | |
| 196 | | Addresses on left hand side are from the protection vector table which is |
| 197 | | stored at location 0xf580 in rom dy_01.rom |
| 198 | | |
| 199 | | ba5e (lda #00) = Level 0? |
| 200 | | ba82 (lda #01) = Pyramid boss, Level 1? |
| 201 | | baaa = No boss appears, game hangs |
| 202 | | bacc (lda #04) = Killer Bee boss, Level 4? |
| 203 | | bae0 (lda #03) = Snake type boss, Level 3? |
| 204 | | baf9 = Double grey thing boss...! |
| 205 | | bb0a = Single grey thing boss! |
| 206 | | bb18 (lda #00) = Hailstorm from top of screen. |
| 207 | | bb31 (lda #28) = Small hailstorm |
| 208 | | bb47 (ldb #05) = Small hailstorm |
| 209 | | bb5a (lda #08) = Weird square things.. |
| 210 | | bb63 = Square things again |
| 211 | | (24) = Another square things boss.. |
| 212 | | (26) = Clock boss! (level 3) |
| 213 | | (28) = Big dragon boss, perhaps an end-of-game baddy |
| 214 | | (30) = 4 things appear at corners, seems to fit with attract mode (level 1) |
| 215 | | (32) = Grey things teleport onto screen.. |
| 216 | | (34) = Grey thing appears in middle of screen |
| 217 | | (36) = As above |
| 218 | | (38) = Circle thing with two pincers |
| 219 | | (40) = Grey bird |
| 220 | | (42) = Crash (end of table) |
| 221 | | |
| 222 | | The table below is hopefully correct thanks to Jose Miguel Morales Farreras, |
| 223 | | but Boss #6 is uncomfirmed as correct. |
| 224 | | |
| 225 | | */ |
| 226 | | if (state->m_i8751_value == 0x8000) state->m_i8751_return = 0xf580 + 0; /* Boss #1: Snake + Bees */ |
| 227 | | if (state->m_i8751_value == 0x8001) state->m_i8751_return = 0xf580 + 30; /* Boss #2: 4 Corners */ |
| 228 | | if (state->m_i8751_value == 0x8002) state->m_i8751_return = 0xf580 + 26; /* Boss #3: Clock */ |
| 229 | | if (state->m_i8751_value == 0x8003) state->m_i8751_return = 0xf580 + 2; /* Boss #4: Pyramid */ |
| 230 | | if (state->m_i8751_value == 0x8004) state->m_i8751_return = 0xf580 + 6; /* Boss #5: Snake + Head Combo */ |
| 231 | | if (state->m_i8751_value == 0x8005) state->m_i8751_return = 0xf580 + 24; /* Boss #6: LED Panels */ |
| 232 | | if (state->m_i8751_value == 0x8006) state->m_i8751_return = 0xf580 + 28; /* Boss #7: Dragon */ |
| 233 | | if (state->m_i8751_value == 0x8007) state->m_i8751_return = 0xf580 + 32; /* Boss #8: Teleport */ |
| 234 | | if (state->m_i8751_value == 0x8008) state->m_i8751_return = 0xf580 + 38; /* Boss #9: Octopus (Pincer) */ |
| 235 | | if (state->m_i8751_value == 0x8009) state->m_i8751_return = 0xf580 + 40; /* Boss #10: Bird */ |
| 236 | | if (state->m_i8751_value == 0x800a) state->m_i8751_return = 0xf580 + 42; /* End Game(bad address?) */ |
| 223 | if (offset == 0) |
| 224 | { |
| 225 | if ((state->m_i8751_value >> 8) == 0x01) /* Coinage settings */ |
| 226 | { |
| 227 | state->m_i8751_return = state->m_i8751_value; |
| 228 | state->m_need1 = lneed1[state->m_coinage_id][(state->m_i8751_value & 0x03) >> 0]; |
| 229 | state->m_need2 = lneed2[state->m_coinage_id][(state->m_i8751_value & 0x0c) >> 2]; |
| 230 | state->m_cred1 = lcred1[state->m_coinage_id][(state->m_i8751_value & 0x03) >> 0]; |
| 231 | state->m_cred2 = lcred2[state->m_coinage_id][(state->m_i8751_value & 0x0c) >> 2]; |
| 232 | } |
| 233 | if ((state->m_i8751_value >> 8) == 0x02) { state->m_i8751_return = state->m_snd | ((state->m_credits / 10) << 4) | (state->m_credits % 10); state->m_snd = 0; } /* Credits request */ |
| 234 | if ((state->m_i8751_value >> 8) == 0x03 && state->m_credits) { state->m_i8751_return = 0; state->m_credits--; } /* Credits clear */ |
| 235 | } |
| 237 | 236 | } |
| 238 | 237 | |
| 239 | | |
| 240 | 238 | static WRITE8_HANDLER( shackled_i8751_w ) |
| 241 | 239 | { |
| 242 | 240 | dec8_state *state = space->machine().driver_data<dec8_state>(); |
| r14742 | r14743 | |
| 246 | 244 | { |
| 247 | 245 | case 0: /* High byte */ |
| 248 | 246 | state->m_i8751_value = (state->m_i8751_value & 0xff) | (data << 8); |
| 249 | | device_set_input_line(state->m_subcpu, M6809_FIRQ_LINE, HOLD_LINE); /* Signal main cpu */ |
| 247 | device_set_input_line(state->m_subcpu, M6809_FIRQ_LINE, HOLD_LINE); /* Signal sub cpu */ |
| 250 | 248 | break; |
| 251 | 249 | case 1: /* Low byte */ |
| 252 | 250 | state->m_i8751_value = (state->m_i8751_value & 0xff00) | data; |
| r14742 | r14743 | |
| 254 | 252 | } |
| 255 | 253 | |
| 256 | 254 | /* Coins are controlled by the i8751 */ |
| 257 | | if (/*(input_port_read(space->machine(), "IN2") & 3) == 3*/!state->m_latch) {state->m_latch = 1; state->m_coin1 = state->m_coin2 = 0;} |
| 258 | | if ((input_port_read(space->machine(), "IN2") & 1) != 1 && state->m_latch) {state->m_coin1 = 1; state->m_latch = 0;} |
| 259 | | if ((input_port_read(space->machine(), "IN2") & 2) != 2 && state->m_latch) {state->m_coin2 = 1; state->m_latch = 0;} |
| 255 | if (/*(input_port_read(space->machine(), "IN2") & 3) == 3*/!state->m_latch) { state->m_latch = 1; state->m_coin1 = state->m_coin2 = 0; } |
| 256 | if ((input_port_read(space->machine(), "IN2") & 1) != 1 && state->m_latch) { state->m_coin1 = 1; state->m_latch = 0; } |
| 257 | if ((input_port_read(space->machine(), "IN2") & 2) != 2 && state->m_latch) { state->m_coin2 = 1; state->m_latch = 0; } |
| 260 | 258 | |
| 261 | | if (state->m_i8751_value == 0x0050) state->m_i8751_return = 0; /* Breywood ID */ |
| 262 | | if (state->m_i8751_value == 0x0051) state->m_i8751_return = 0; /* Shackled ID */ |
| 263 | | if (state->m_i8751_value == 0x0102) state->m_i8751_return = 0; /* ?? */ |
| 264 | | if (state->m_i8751_value == 0x0101) state->m_i8751_return = 0; /* ?? */ |
| 265 | | if (state->m_i8751_value == 0x8101) state->m_i8751_return = ((state->m_coin2 / 10) << 4) | (state->m_coin2 % 10) | |
| 266 | | ((((state->m_coin1 / 10) << 4) | (state->m_coin1 % 10)) << 8); /* Coins */ |
| 259 | if (state->m_i8751_value == 0x0102) state->m_i8751_return = 0; /* ??? */ |
| 260 | if (state->m_i8751_value == 0x0101) state->m_i8751_return = 0; /* ??? */ |
| 261 | if (state->m_i8751_value == 0x0400) state->m_i8751_return = 0; /* ??? */ |
| 262 | |
| 263 | if (state->m_i8751_value == 0x0050) state->m_i8751_return = 0; /* Japanese version (Breywood) ID */ |
| 264 | if (state->m_i8751_value == 0x0051) state->m_i8751_return = 0; /* US version (Shackled) ID */ |
| 265 | |
| 266 | if (state->m_i8751_value == 0x8101) state->m_i8751_return = ((((state->m_coin2 / 10) << 4) | (state->m_coin2 % 10)) << 0) | |
| 267 | ((((state->m_coin1 / 10) << 4) | (state->m_coin1 % 10)) << 8); /* Coins */ |
| 267 | 268 | } |
| 268 | 269 | |
| 269 | | static WRITE8_HANDLER( lastmisn_i8751_w ) |
| 270 | static WRITE8_HANDLER( csilver_i8751_w ) |
| 270 | 271 | { |
| 271 | 272 | dec8_state *state = space->machine().driver_data<dec8_state>(); |
| 273 | |
| 274 | /* Japan coinage first, then World coinage - US coinage shall be the same as the Japan one */ |
| 275 | int lneed1[2][4] = {{1, 1, 1, 2}, {1, 1, 1, 1}}; /* slot 1 : coins needed */ |
| 276 | int lcred1[2][4] = {{1, 2, 3, 1}, {2, 3, 4, 6}}; /* slot 1 : credits awarded */ |
| 277 | int lneed2[2][4] = {{1, 1, 1, 2}, {1, 2, 3, 4}}; /* slot 2 : coins needed */ |
| 278 | int lcred2[2][4] = {{1, 2, 3, 1}, {1, 1, 1, 1}}; /* slot 2 : credits awarded */ |
| 279 | |
| 272 | 280 | state->m_i8751_return = 0; |
| 273 | 281 | |
| 274 | 282 | switch (offset) |
| r14742 | r14743 | |
| 282 | 290 | break; |
| 283 | 291 | } |
| 284 | 292 | |
| 285 | | if (offset == 0) |
| 293 | /* Coins are controlled by the i8751 */ |
| 294 | if ((input_port_read(space->machine(), "IN2") & 3) == 3) state->m_latch = 1; |
| 295 | if ((input_port_read(space->machine(), "IN2") & 1) != 1 && state->m_latch) |
| 286 | 296 | { |
| 287 | | /* Coins are controlled by the i8751 */ |
| 288 | | if ((input_port_read(space->machine(), "IN2") & 3) == 3 && !state->m_latch) state->m_latch = 1; |
| 289 | | if ((input_port_read(space->machine(), "IN2") & 3) != 3 && state->m_latch) {state->m_coin1++; state->m_latch = 0; state->m_snd = 0x400; state->m_i8751_return = 0x400; return;} |
| 290 | | if (state->m_i8751_value == 0x007a) state->m_i8751_return = 0x0185; /* Japan ID code */ |
| 291 | | if (state->m_i8751_value == 0x007b) state->m_i8751_return = 0x0184; /* USA ID code */ |
| 292 | | if (state->m_i8751_value == 0x0001) {state->m_coin1 = state->m_snd = 0;}//??? |
| 293 | | if (state->m_i8751_value == 0x0000) {state->m_i8751_return = 0x0184;}//??? |
| 294 | | if (state->m_i8751_value == 0x0401) state->m_i8751_return = 0x0184; //??? |
| 295 | | if ((state->m_i8751_value >> 8) == 0x01) state->m_i8751_return = 0x0184; /* Coinage setup */ |
| 296 | | if ((state->m_i8751_value >> 8) == 0x02) {state->m_i8751_return = state->m_snd | ((state->m_coin1 / 10) << 4) | (state->m_coin1 % 10); state->m_snd = 0;} /* Coin return */ |
| 297 | | if ((state->m_i8751_value >> 8) == 0x03 && state->m_coin1) {state->m_i8751_return = 0; state->m_coin1--; } /* Coin clear */ |
| 297 | state->m_coin1++; |
| 298 | state->m_latch = 0; |
| 299 | state->m_snd = 0x1200; |
| 300 | state->m_i8751_return = 0x1200; |
| 301 | if (state->m_coin1>=state->m_need1) |
| 302 | { |
| 303 | state->m_coin1-=state->m_need1; |
| 304 | state->m_credits+=state->m_cred1; |
| 305 | } |
| 298 | 306 | } |
| 299 | | } |
| 300 | | |
| 301 | | static WRITE8_HANDLER( csilver_i8751_w ) |
| 302 | | { |
| 303 | | dec8_state *state = space->machine().driver_data<dec8_state>(); |
| 304 | | state->m_i8751_return = 0; |
| 305 | | |
| 306 | | switch (offset) |
| 307 | if ((input_port_read(space->machine(), "IN2") & 2) != 2 && state->m_latch) |
| 307 | 308 | { |
| 308 | | case 0: /* High byte */ |
| 309 | | state->m_i8751_value = (state->m_i8751_value & 0xff) | (data << 8); |
| 310 | | device_set_input_line(state->m_maincpu, M6809_FIRQ_LINE, HOLD_LINE); /* Signal main cpu */ |
| 311 | | break; |
| 312 | | case 1: /* Low byte */ |
| 313 | | state->m_i8751_value = (state->m_i8751_value & 0xff00) | data; |
| 314 | | break; |
| 309 | state->m_coin2++; |
| 310 | state->m_latch = 0; |
| 311 | state->m_snd = 0x1200; |
| 312 | state->m_i8751_return = 0x1200; |
| 313 | if (state->m_coin2>=state->m_need2) |
| 314 | { |
| 315 | state->m_coin2-=state->m_need2; |
| 316 | state->m_credits+=state->m_cred2; |
| 317 | } |
| 315 | 318 | } |
| 319 | if (state->m_credits>99) state->m_credits=99; /* not handled by main CPU */ |
| 316 | 320 | |
| 321 | if (state->m_i8751_value == 0x054a) { state->m_i8751_return = 0xb5; state->m_coinage_id = 0; } /* Japanese version ID */ |
| 322 | if (state->m_i8751_value == 0x054c) { state->m_i8751_return = 0xb3; state->m_coinage_id = 1; } /* World version ID */ |
| 323 | |
| 317 | 324 | if (offset == 0) |
| 318 | 325 | { |
| 319 | | /* Coins are controlled by the i8751 */ |
| 320 | | if ((input_port_read(space->machine(), "IN2") & 3) == 3 && !state->m_latch) state->m_latch = 1; |
| 321 | | if ((input_port_read(space->machine(), "IN2") & 3) != 3 && state->m_latch) {state->m_coin1++; state->m_latch = 0; state->m_snd = 0x1200; state->m_i8751_return = 0x1200; return;} |
| 322 | | |
| 323 | | if (state->m_i8751_value == 0x054a) {state->m_i8751_return = ~(0x4a); state->m_coin1 = 0; state->m_snd = 0;} /* Captain Silver (Japan) ID */ |
| 324 | | if (state->m_i8751_value == 0x054c) {state->m_i8751_return = ~(0x4c); state->m_coin1 = 0; state->m_snd = 0;} /* Captain Silver (World) ID */ |
| 325 | | if ((state->m_i8751_value >> 8) == 0x01) state->m_i8751_return = 0; /* Coinage - Not Supported */ |
| 326 | | if ((state->m_i8751_value >> 8) == 0x02) {state->m_i8751_return = state->m_snd | state->m_coin1; state->m_snd = 0; } /* Coin Return */ |
| 327 | | if ((state->m_i8751_value >> 8) == 0x03 && state->m_coin1) {state->m_i8751_return = 0; state->m_coin1--;} /* Coin Clear */ |
| 326 | if ((state->m_i8751_value >> 8) == 0x01) /* Coinage settings */ |
| 327 | { |
| 328 | state->m_i8751_return = state->m_i8751_value; |
| 329 | state->m_need1 = lneed1[state->m_coinage_id][(state->m_i8751_value & 0x03) >> 0]; |
| 330 | state->m_need2 = lneed2[state->m_coinage_id][(state->m_i8751_value & 0x0c) >> 2]; |
| 331 | state->m_cred1 = lcred1[state->m_coinage_id][(state->m_i8751_value & 0x03) >> 0]; |
| 332 | state->m_cred2 = lcred2[state->m_coinage_id][(state->m_i8751_value & 0x0c) >> 2]; |
| 333 | } |
| 334 | if ((state->m_i8751_value >> 8) == 0x02) { state->m_i8751_return = state->m_snd | state->m_credits; state->m_snd = 0; } /* Credits request */ |
| 335 | if ((state->m_i8751_value >> 8) == 0x03 && state->m_credits) { state->m_i8751_return = 0; state->m_credits--; } /* Credits clear */ |
| 328 | 336 | } |
| 329 | 337 | } |
| 330 | 338 | |
| 331 | | static WRITE8_HANDLER( garyoret_i8751_w ) |
| 339 | static WRITE8_HANDLER( srdarwin_i8751_w ) |
| 332 | 340 | { |
| 333 | 341 | dec8_state *state = space->machine().driver_data<dec8_state>(); |
| 342 | |
| 343 | /* Japan coinage first, then World coinage - US coinage shall be the same as the Japan one */ |
| 344 | int lneed1[2][4] = {{1, 1, 1, 2}, {1, 1, 1, 1}}; /* slot 1 : coins needed */ |
| 345 | int lcred1[2][4] = {{1, 2, 3, 1}, {2, 3, 4, 6}}; /* slot 1 : credits awarded */ |
| 346 | int lneed2[2][4] = {{1, 1, 1, 2}, {1, 2, 3, 4}}; /* slot 2 : coins needed */ |
| 347 | int lcred2[2][4] = {{1, 2, 3, 1}, {1, 1, 1, 1}}; /* slot 2 : credits awarded */ |
| 348 | |
| 334 | 349 | state->m_i8751_return = 0; |
| 335 | 350 | |
| 336 | 351 | switch (offset) |
| r14742 | r14743 | |
| 345 | 360 | |
| 346 | 361 | /* Coins are controlled by the i8751 */ |
| 347 | 362 | if ((input_port_read(space->machine(), "I8751") & 3) == 3) state->m_latch = 1; |
| 348 | | if ((input_port_read(space->machine(), "I8751") & 1) != 1 && state->m_latch) {state->m_coin1++; state->m_latch = 0;} |
| 349 | | if ((input_port_read(space->machine(), "I8751") & 2) != 2 && state->m_latch) {state->m_coin2++; state->m_latch = 0;} |
| 363 | if ((input_port_read(space->machine(), "I8751") & 1) != 1 && state->m_latch) |
| 364 | { |
| 365 | state->m_coin1++; |
| 366 | state->m_latch = 0; |
| 367 | if (state->m_coin1>=state->m_need1) |
| 368 | { |
| 369 | state->m_coin1-=state->m_need1; |
| 370 | state->m_credits+=state->m_cred1; |
| 371 | } |
| 372 | } |
| 373 | if ((input_port_read(space->machine(), "I8751") & 2) != 2 && state->m_latch) |
| 374 | { |
| 375 | state->m_coin2++; |
| 376 | state->m_latch = 0; |
| 377 | if (state->m_coin2>=state->m_need2) |
| 378 | { |
| 379 | state->m_coin2-=state->m_need2; |
| 380 | state->m_credits+=state->m_cred2; |
| 381 | } |
| 382 | } |
| 383 | if (state->m_credits>99) state->m_credits=99; /* not handled by main CPU */ |
| 350 | 384 | |
| 351 | | /* Work out return values */ |
| 352 | | if ((state->m_i8751_value >> 8) == 0x00) {state->m_i8751_return = 0; state->m_coin1 = state->m_coin2 = 0;} |
| 353 | | if ((state->m_i8751_value >> 8) == 0x01) state->m_i8751_return = 0x59a; /* ID */ |
| 354 | | if ((state->m_i8751_value >> 8) == 0x04) state->m_i8751_return = state->m_i8751_value; /* Coinage settings (Not supported) */ |
| 355 | | if ((state->m_i8751_value >> 8) == 0x05) {state->m_i8751_return = 0x00 | ((state->m_coin1 / 10) << 4) | (state->m_coin1 % 10); } /* Coin 1 */ |
| 356 | | if ((state->m_i8751_value >> 8) == 0x06 && state->m_coin1 && !offset) {state->m_i8751_return = 0x600; state->m_coin1--; } /* Coin 1 clear */ |
| 385 | if (state->m_i8751_value == 0x0000) state->m_i8751_return = 0; /* ??? */ |
| 386 | |
| 387 | if (state->m_i8751_value == 0x3063) { state->m_i8751_return = 0x9c; state->m_coinage_id = 0; } /* Japanese version ID */ |
| 388 | if (state->m_i8751_value == 0x306b) { state->m_i8751_return = 0x94; state->m_coinage_id = 1; } /* World version ID */ |
| 389 | |
| 390 | if ((state->m_i8751_value >> 8) == 0x40) /* Coinage settings */ |
| 391 | { |
| 392 | state->m_i8751_return = state->m_i8751_value; |
| 393 | state->m_need1 = lneed1[state->m_coinage_id][(state->m_i8751_value & 0x03) >> 0]; |
| 394 | state->m_need2 = lneed2[state->m_coinage_id][(state->m_i8751_value & 0x0c) >> 2]; |
| 395 | state->m_cred1 = lcred1[state->m_coinage_id][(state->m_i8751_value & 0x03) >> 0]; |
| 396 | state->m_cred2 = lcred2[state->m_coinage_id][(state->m_i8751_value & 0x0c) >> 2]; |
| 397 | } |
| 398 | if (state->m_i8751_value == 0x5000) { state->m_i8751_return = ((state->m_credits / 10) << 4) | (state->m_credits % 10); } /* Credits request */ |
| 399 | if (state->m_i8751_value == 0x6000 && state->m_credits) { state->m_i8751_value = -1; state->m_credits--; } /* Credits clear */ |
| 400 | |
| 401 | /* |
| 402 | This next value is the index to a series of tables, |
| 403 | each table controls the end of level bad guy, |
| 404 | wrong values crash the cpu right away via a bogus jump. |
| 405 | |
| 406 | Level number requested is in low byte |
| 407 | |
| 408 | Addresses on left hand side are from the protection vector table which is |
| 409 | stored at location 0xf580 in rom dy_01.rom |
| 410 | |
| 411 | ba5e (lda #00) = Level 0? |
| 412 | ba82 (lda #01) = Pyramid boss, Level 1? |
| 413 | baaa = No boss appears, game hangs |
| 414 | bacc (lda #04) = Killer Bee boss, Level 4? |
| 415 | bae0 (lda #03) = Snake type boss, Level 3? |
| 416 | baf9 = Double grey thing boss...! |
| 417 | bb0a = Single grey thing boss! |
| 418 | bb18 (lda #00) = Hailstorm from top of screen. |
| 419 | bb31 (lda #28) = Small hailstorm |
| 420 | bb47 (ldb #05) = Small hailstorm |
| 421 | bb5a (lda #08) = Weird square things.. |
| 422 | bb63 = Square things again |
| 423 | (24) = Another square things boss.. |
| 424 | (26) = Clock boss! (level 3) |
| 425 | (28) = Big dragon boss, perhaps an end-of-game baddy |
| 426 | (30) = 4 things appear at corners, seems to fit with attract mode (level 1) |
| 427 | (32) = Grey things teleport onto screen.. |
| 428 | (34) = Grey thing appears in middle of screen |
| 429 | (36) = As above |
| 430 | (38) = Circle thing with two pincers |
| 431 | (40) = Grey bird |
| 432 | (42) = Crash (end of table) |
| 433 | |
| 434 | The table below is hopefully correct thanks to Jose Miguel Morales Farreras, |
| 435 | but Boss #6 is uncomfirmed as correct. |
| 436 | */ |
| 437 | if (state->m_i8751_value == 0x8000) state->m_i8751_return = 0xf580 + 0; /* Boss #1: Snake + Bees */ |
| 438 | if (state->m_i8751_value == 0x8001) state->m_i8751_return = 0xf580 + 30; /* Boss #2: 4 Corners */ |
| 439 | if (state->m_i8751_value == 0x8002) state->m_i8751_return = 0xf580 + 26; /* Boss #3: Clock */ |
| 440 | if (state->m_i8751_value == 0x8003) state->m_i8751_return = 0xf580 + 2; /* Boss #4: Pyramid */ |
| 441 | if (state->m_i8751_value == 0x8004) state->m_i8751_return = 0xf580 + 6; /* Boss #5: Snake + Head Combo */ |
| 442 | if (state->m_i8751_value == 0x8005) state->m_i8751_return = 0xf580 + 24; /* Boss #6: LED Panels */ |
| 443 | if (state->m_i8751_value == 0x8006) state->m_i8751_return = 0xf580 + 28; /* Boss #7: Dragon */ |
| 444 | if (state->m_i8751_value == 0x8007) state->m_i8751_return = 0xf580 + 32; /* Boss #8: Teleport */ |
| 445 | if (state->m_i8751_value == 0x8008) state->m_i8751_return = 0xf580 + 38; /* Boss #9: Octopus (Pincer) */ |
| 446 | if (state->m_i8751_value == 0x8009) state->m_i8751_return = 0xf580 + 40; /* Boss #10: Bird */ |
| 447 | if (state->m_i8751_value == 0x800a) state->m_i8751_return = 0xf580 + 42; /* End Game(bad address?) */ |
| 357 | 448 | } |
| 358 | 449 | |
| 359 | 450 | /******************************************************************************/ |
| r14742 | r14743 | |
| 503 | 594 | /******************************************************************************/ |
| 504 | 595 | |
| 505 | 596 | |
| 506 | | |
| 507 | | static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8 ) |
| 508 | | AM_RANGE(0x0000, 0x07ff) AM_RAM |
| 509 | | AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 510 | | AM_RANGE(0x1000, 0x17ff) AM_DEVREADWRITE("tilegen2", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 511 | | AM_RANGE(0x1800, 0x1fff) AM_RAM |
| 512 | | AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 513 | | AM_RANGE(0x2800, 0x2fff) AM_RAM AM_SHARE("spriteram") |
| 514 | | AM_RANGE(0x3000, 0x31ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_be_w) AM_BASE_GENERIC(paletteram) |
| 515 | | AM_RANGE(0x3200, 0x37ff) AM_WRITEONLY /* Unused */ |
| 516 | | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("IN0") /* Player 1 */ |
| 517 | | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("IN1") /* Player 2 */ |
| 518 | | AM_RANGE(0x3802, 0x3802) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 519 | | AM_RANGE(0x3803, 0x3803) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 520 | | AM_RANGE(0x3800, 0x3807) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) |
| 521 | | AM_RANGE(0x3810, 0x381f) AM_DEVWRITE("tilegen1", deco_bac06_pf_control1_8bit_w) |
| 522 | | AM_RANGE(0x3a00, 0x3a00) AM_READ_PORT("IN2") /* VBL & coins */ |
| 523 | | AM_RANGE(0x3a00, 0x3a07) AM_DEVWRITE("tilegen2", deco_bac06_pf_control0_8bit_w) |
| 524 | | AM_RANGE(0x3a10, 0x3a1f) AM_DEVWRITE("tilegen2", deco_bac06_pf_control1_8bit_w) |
| 525 | | AM_RANGE(0x3c00, 0x3c00) AM_WRITE(dec8_bank_w) |
| 526 | | AM_RANGE(0x3c02, 0x3c02) AM_WRITE(dec8_mxc06_karn_buffer_spriteram_w) /* DMA */ |
| 527 | | AM_RANGE(0x3e00, 0x3e00) AM_WRITE(dec8_sound_w) |
| 528 | | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 529 | | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 530 | | ADDRESS_MAP_END |
| 531 | | |
| 532 | | static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8 ) |
| 533 | | AM_RANGE(0x0000, 0x0fff) AM_RAM |
| 534 | | AM_RANGE(0x1000, 0x17ff) AM_RAM |
| 535 | | AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 536 | | AM_RANGE(0x2000, 0x27ff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 537 | | AM_RANGE(0x2800, 0x2bff) AM_RAM // colscroll? mirror? |
| 538 | | AM_RANGE(0x2c00, 0x2fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_rowscroll_8bit_r, deco_bac06_pf_rowscroll_8bit_w) |
| 539 | | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") |
| 540 | | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("IN0") /* Player 1 */ |
| 541 | | AM_RANGE(0x3800, 0x3800) AM_WRITE(dec8_sound_w) |
| 542 | | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("IN1") /* Player 2 */ |
| 543 | | AM_RANGE(0x3802, 0x3802) AM_READ_PORT("IN2") /* Player 3 */ |
| 544 | | AM_RANGE(0x3803, 0x3803) AM_READ_PORT("DSW0") /* Start buttons + VBL */ |
| 545 | | AM_RANGE(0x3820, 0x3820) AM_READ_PORT("DSW1") /* Dip */ |
| 546 | | AM_RANGE(0x3820, 0x3827) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) |
| 547 | | AM_RANGE(0x3830, 0x383f) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_control1_8bit_r, deco_bac06_pf_control1_8bit_w) |
| 548 | | AM_RANGE(0x3840, 0x3840) AM_READ(i8751_h_r) |
| 549 | | AM_RANGE(0x3840, 0x3840) AM_WRITE(ghostb_bank_w) |
| 550 | | AM_RANGE(0x3860, 0x3860) AM_READ(i8751_l_r) |
| 551 | | AM_RANGE(0x3860, 0x3861) AM_WRITE(dec8_i8751_w) |
| 552 | | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 553 | | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 554 | | ADDRESS_MAP_END |
| 555 | | |
| 556 | | static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8 ) |
| 557 | | AM_RANGE(0x0000, 0x05ff) AM_RAM |
| 558 | | AM_RANGE(0x0600, 0x07ff) AM_RAM AM_SHARE("spriteram") |
| 559 | | AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(srdarwin_videoram_w) AM_BASE_MEMBER(dec8_state, m_videoram) |
| 560 | | AM_RANGE(0x1000, 0x13ff) AM_RAM |
| 561 | | AM_RANGE(0x1400, 0x17ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) |
| 562 | | AM_RANGE(0x1800, 0x1801) AM_WRITE(srdarwin_i8751_w) |
| 563 | | AM_RANGE(0x1802, 0x1802) AM_WRITE(i8751_reset_w) /* Maybe.. */ |
| 564 | | AM_RANGE(0x1803, 0x1803) AM_WRITENOP /* NMI ack */ |
| 565 | | AM_RANGE(0x1804, 0x1804) AM_DEVWRITE_MODERN("spriteram", buffered_spriteram8_device, write) /* DMA */ |
| 566 | | AM_RANGE(0x1805, 0x1806) AM_WRITE(srdarwin_control_w) /* Scroll & Bank */ |
| 567 | | AM_RANGE(0x2000, 0x2000) AM_READWRITE(i8751_h_r, dec8_sound_w) /* Sound */ |
| 568 | | AM_RANGE(0x2001, 0x2001) AM_READWRITE(i8751_l_r, flip_screen_w) /* Flipscreen */ |
| 569 | | AM_RANGE(0x2800, 0x288f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) |
| 570 | | AM_RANGE(0x3000, 0x308f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) |
| 571 | | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 572 | | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("IN0") /* Player 1 */ |
| 573 | | AM_RANGE(0x3802, 0x3802) AM_READ_PORT("IN1") /* Player 2 (cocktail) + VBL */ |
| 574 | | AM_RANGE(0x3803, 0x3803) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 575 | | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 576 | | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 577 | | ADDRESS_MAP_END |
| 578 | | |
| 579 | | static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8 ) |
| 580 | | AM_RANGE(0x0000, 0x17ff) AM_RAM |
| 581 | | AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 582 | | AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) |
| 583 | | AM_RANGE(0x2800, 0x2bff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) |
| 584 | | AM_RANGE(0x2c00, 0x2fff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) |
| 585 | | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") /* Sprites */ |
| 586 | | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 587 | | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 588 | | AM_RANGE(0x380a, 0x380b) AM_READ(gondo_player_1_r) /* Player 1 rotary */ |
| 589 | | AM_RANGE(0x380c, 0x380d) AM_READ(gondo_player_2_r) /* Player 2 rotary */ |
| 590 | | AM_RANGE(0x380e, 0x380e) AM_READ_PORT("IN3") /* VBL */ |
| 591 | | AM_RANGE(0x380f, 0x380f) AM_READ_PORT("IN2") /* Fire buttons */ |
| 592 | | AM_RANGE(0x3810, 0x3810) AM_WRITE(dec8_sound_w) |
| 593 | | AM_RANGE(0x3818, 0x382f) AM_WRITE(gondo_scroll_w) |
| 594 | | AM_RANGE(0x3830, 0x3830) AM_WRITE(ghostb_bank_w) /* Bank + NMI enable */ |
| 595 | | AM_RANGE(0x3838, 0x3838) AM_READ(i8751_h_r) |
| 596 | | AM_RANGE(0x3839, 0x3839) AM_READ(i8751_l_r) |
| 597 | | AM_RANGE(0x383a, 0x383b) AM_WRITE(dec8_i8751_w) |
| 598 | | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 599 | | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 600 | | ADDRESS_MAP_END |
| 601 | | |
| 602 | | static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8 ) |
| 603 | | AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1") |
| 604 | | AM_RANGE(0x0f00, 0x0fff) AM_RAM |
| 605 | | AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2") |
| 606 | | AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 607 | | AM_RANGE(0x2800, 0x2fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 608 | | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") /* Sprites */ |
| 609 | | AM_RANGE(0x3800, 0x3bff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_be_w) AM_BASE_GENERIC(paletteram) |
| 610 | | AM_RANGE(0x3c00, 0x3c00) AM_READ_PORT("IN0") |
| 611 | | AM_RANGE(0x3c01, 0x3c01) AM_READ_PORT("IN1") |
| 612 | | AM_RANGE(0x3c02, 0x3c02) AM_READ_PORT("IN2") /* VBL & coins */ |
| 613 | | AM_RANGE(0x3c03, 0x3c03) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 614 | | AM_RANGE(0x3c04, 0x3c04) AM_READ_PORT("DSW1") |
| 615 | | AM_RANGE(0x3c00, 0x3c07) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) |
| 616 | | AM_RANGE(0x3c10, 0x3c1f) AM_DEVWRITE("tilegen1", deco_bac06_pf_control1_8bit_w) |
| 617 | | AM_RANGE(0x3c80, 0x3c80) AM_WRITE(dec8_mxc06_karn_buffer_spriteram_w) /* DMA */ |
| 618 | | AM_RANGE(0x3d00, 0x3d00) AM_WRITE(dec8_bank_w) /* BNKS */ |
| 619 | | AM_RANGE(0x3d80, 0x3d80) AM_WRITE(dec8_sound_w) /* SOUN */ |
| 620 | | AM_RANGE(0x3e00, 0x3e00) AM_WRITENOP /* COINCL */ |
| 621 | | AM_RANGE(0x3e80, 0x3e83) AM_WRITE(oscar_int_w) |
| 622 | | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 623 | | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 624 | | ADDRESS_MAP_END |
| 625 | | |
| 626 | | static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8 ) |
| 627 | | AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1") |
| 628 | | AM_RANGE(0x0f00, 0x0fff) AM_RAM |
| 629 | | AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2") |
| 630 | | AM_RANGE(0x3e80, 0x3e83) AM_WRITE(oscar_int_w) |
| 631 | | AM_RANGE(0x4000, 0xffff) AM_ROM |
| 632 | | ADDRESS_MAP_END |
| 633 | | |
| 634 | 597 | static ADDRESS_MAP_START( lastmisn_map, AS_PROGRAM, 8 ) |
| 635 | 598 | AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") |
| 636 | 599 | AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram) |
| r14742 | r14743 | |
| 726 | 689 | AM_RANGE(0x4000, 0xffff) AM_ROM |
| 727 | 690 | ADDRESS_MAP_END |
| 728 | 691 | |
| 692 | static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8 ) |
| 693 | AM_RANGE(0x0000, 0x17ff) AM_RAM |
| 694 | AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 695 | AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) |
| 696 | AM_RANGE(0x2800, 0x2bff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) |
| 697 | AM_RANGE(0x2c00, 0x2fff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) |
| 698 | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") /* Sprites */ |
| 699 | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 700 | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 701 | AM_RANGE(0x380a, 0x380b) AM_READ(gondo_player_1_r) /* Player 1 rotary */ |
| 702 | AM_RANGE(0x380c, 0x380d) AM_READ(gondo_player_2_r) /* Player 2 rotary */ |
| 703 | AM_RANGE(0x380e, 0x380e) AM_READ_PORT("IN3") /* VBL */ |
| 704 | AM_RANGE(0x380f, 0x380f) AM_READ_PORT("IN2") /* Fire buttons */ |
| 705 | AM_RANGE(0x3810, 0x3810) AM_WRITE(dec8_sound_w) |
| 706 | AM_RANGE(0x3818, 0x382f) AM_WRITE(gondo_scroll_w) |
| 707 | AM_RANGE(0x3830, 0x3830) AM_WRITE(ghostb_bank_w) /* Bank + NMI enable */ |
| 708 | AM_RANGE(0x3838, 0x3838) AM_READ(i8751_h_r) |
| 709 | AM_RANGE(0x3839, 0x3839) AM_READ(i8751_l_r) |
| 710 | AM_RANGE(0x383a, 0x383b) AM_WRITE(dec8_i8751_w) |
| 711 | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 712 | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 713 | ADDRESS_MAP_END |
| 714 | |
| 715 | static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8 ) |
| 716 | AM_RANGE(0x0000, 0x17ff) AM_RAM |
| 717 | AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 718 | AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) |
| 719 | AM_RANGE(0x2800, 0x2bff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) |
| 720 | AM_RANGE(0x2c00, 0x2fff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) |
| 721 | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") /* Sprites */ |
| 722 | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 723 | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 724 | AM_RANGE(0x3808, 0x3808) AM_READNOP /* ? */ |
| 725 | AM_RANGE(0x380a, 0x380a) AM_READ_PORT("IN1") /* Player 2 + VBL */ |
| 726 | AM_RANGE(0x380b, 0x380b) AM_READ_PORT("IN0") /* Player 1 */ |
| 727 | AM_RANGE(0x3810, 0x3810) AM_WRITE(dec8_sound_w) |
| 728 | AM_RANGE(0x3818, 0x382f) AM_WRITE(gondo_scroll_w) |
| 729 | AM_RANGE(0x3830, 0x3830) AM_WRITE(ghostb_bank_w) /* Bank + NMI enable */ |
| 730 | AM_RANGE(0x3838, 0x3839) AM_WRITE(dec8_i8751_w) |
| 731 | AM_RANGE(0x383a, 0x383a) AM_READ(i8751_h_r) |
| 732 | AM_RANGE(0x383b, 0x383b) AM_READ(i8751_l_r) |
| 733 | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 734 | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 735 | ADDRESS_MAP_END |
| 736 | |
| 737 | static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8 ) |
| 738 | AM_RANGE(0x0000, 0x0fff) AM_RAM |
| 739 | AM_RANGE(0x1000, 0x17ff) AM_RAM |
| 740 | AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 741 | AM_RANGE(0x2000, 0x27ff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 742 | AM_RANGE(0x2800, 0x2bff) AM_RAM // colscroll? mirror? |
| 743 | AM_RANGE(0x2c00, 0x2fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_rowscroll_8bit_r, deco_bac06_pf_rowscroll_8bit_w) |
| 744 | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") |
| 745 | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("IN0") /* Player 1 */ |
| 746 | AM_RANGE(0x3800, 0x3800) AM_WRITE(dec8_sound_w) |
| 747 | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("IN1") /* Player 2 */ |
| 748 | AM_RANGE(0x3802, 0x3802) AM_READ_PORT("IN2") /* Player 3 */ |
| 749 | AM_RANGE(0x3803, 0x3803) AM_READ_PORT("DSW0") /* Start buttons + VBL */ |
| 750 | AM_RANGE(0x3820, 0x3820) AM_READ_PORT("DSW1") /* Dip */ |
| 751 | AM_RANGE(0x3820, 0x3827) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) |
| 752 | AM_RANGE(0x3830, 0x383f) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_control1_8bit_r, deco_bac06_pf_control1_8bit_w) |
| 753 | AM_RANGE(0x3840, 0x3840) AM_READ(i8751_h_r) |
| 754 | AM_RANGE(0x3840, 0x3840) AM_WRITE(ghostb_bank_w) |
| 755 | AM_RANGE(0x3860, 0x3860) AM_READ(i8751_l_r) |
| 756 | AM_RANGE(0x3860, 0x3861) AM_WRITE(dec8_i8751_w) |
| 757 | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 758 | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 759 | ADDRESS_MAP_END |
| 760 | |
| 729 | 761 | static ADDRESS_MAP_START( csilver_map, AS_PROGRAM, 8 ) |
| 730 | 762 | AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") |
| 731 | 763 | AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram) |
| r14742 | r14743 | |
| 767 | 799 | AM_RANGE(0x4000, 0xffff) AM_ROM |
| 768 | 800 | ADDRESS_MAP_END |
| 769 | 801 | |
| 770 | | static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8 ) |
| 771 | | AM_RANGE(0x0000, 0x17ff) AM_RAM |
| 772 | | AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 773 | | AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) |
| 774 | | AM_RANGE(0x2800, 0x2bff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) |
| 775 | | AM_RANGE(0x2c00, 0x2fff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) |
| 802 | static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8 ) |
| 803 | AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1") |
| 804 | AM_RANGE(0x0f00, 0x0fff) AM_RAM |
| 805 | AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2") |
| 806 | AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 807 | AM_RANGE(0x2800, 0x2fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 776 | 808 | AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("spriteram") /* Sprites */ |
| 809 | AM_RANGE(0x3800, 0x3bff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_be_w) AM_BASE_GENERIC(paletteram) |
| 810 | AM_RANGE(0x3c00, 0x3c00) AM_READ_PORT("IN0") |
| 811 | AM_RANGE(0x3c01, 0x3c01) AM_READ_PORT("IN1") |
| 812 | AM_RANGE(0x3c02, 0x3c02) AM_READ_PORT("IN2") /* VBL & coins */ |
| 813 | AM_RANGE(0x3c03, 0x3c03) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 814 | AM_RANGE(0x3c04, 0x3c04) AM_READ_PORT("DSW1") |
| 815 | AM_RANGE(0x3c00, 0x3c07) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) |
| 816 | AM_RANGE(0x3c10, 0x3c1f) AM_DEVWRITE("tilegen1", deco_bac06_pf_control1_8bit_w) |
| 817 | AM_RANGE(0x3c80, 0x3c80) AM_WRITE(dec8_mxc06_karn_buffer_spriteram_w) /* DMA */ |
| 818 | AM_RANGE(0x3d00, 0x3d00) AM_WRITE(dec8_bank_w) /* BNKS */ |
| 819 | AM_RANGE(0x3d80, 0x3d80) AM_WRITE(dec8_sound_w) /* SOUN */ |
| 820 | AM_RANGE(0x3e00, 0x3e00) AM_WRITENOP /* COINCL */ |
| 821 | AM_RANGE(0x3e80, 0x3e83) AM_WRITE(oscar_int_w) |
| 822 | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 823 | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 824 | ADDRESS_MAP_END |
| 825 | |
| 826 | static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8 ) |
| 827 | AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1") |
| 828 | AM_RANGE(0x0f00, 0x0fff) AM_RAM |
| 829 | AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2") |
| 830 | AM_RANGE(0x3e80, 0x3e83) AM_WRITE(oscar_int_w) |
| 831 | AM_RANGE(0x4000, 0xffff) AM_ROM |
| 832 | ADDRESS_MAP_END |
| 833 | |
| 834 | static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8 ) |
| 835 | AM_RANGE(0x0000, 0x05ff) AM_RAM |
| 836 | AM_RANGE(0x0600, 0x07ff) AM_RAM AM_SHARE("spriteram") |
| 837 | AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(srdarwin_videoram_w) AM_BASE_MEMBER(dec8_state, m_videoram) |
| 838 | AM_RANGE(0x1000, 0x13ff) AM_RAM |
| 839 | AM_RANGE(0x1400, 0x17ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) |
| 840 | AM_RANGE(0x1800, 0x1801) AM_WRITE(srdarwin_i8751_w) |
| 841 | AM_RANGE(0x1802, 0x1802) AM_WRITE(i8751_reset_w) /* Maybe.. */ |
| 842 | AM_RANGE(0x1803, 0x1803) AM_WRITENOP /* NMI ack */ |
| 843 | AM_RANGE(0x1804, 0x1804) AM_DEVWRITE_MODERN("spriteram", buffered_spriteram8_device, write) /* DMA */ |
| 844 | AM_RANGE(0x1805, 0x1806) AM_WRITE(srdarwin_control_w) /* Scroll & Bank */ |
| 845 | AM_RANGE(0x2000, 0x2000) AM_READWRITE(i8751_h_r, dec8_sound_w) /* Sound */ |
| 846 | AM_RANGE(0x2001, 0x2001) AM_READWRITE(i8751_l_r, flip_screen_w) /* Flipscreen */ |
| 847 | AM_RANGE(0x2800, 0x288f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) |
| 848 | AM_RANGE(0x3000, 0x308f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) |
| 777 | 849 | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 778 | | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 779 | | AM_RANGE(0x3808, 0x3808) AM_READNOP /* ? */ |
| 780 | | AM_RANGE(0x380a, 0x380a) AM_READ_PORT("IN1") /* Player 2 + VBL */ |
| 781 | | AM_RANGE(0x380b, 0x380b) AM_READ_PORT("IN0") /* Player 1 */ |
| 782 | | AM_RANGE(0x3810, 0x3810) AM_WRITE(dec8_sound_w) |
| 783 | | AM_RANGE(0x3818, 0x382f) AM_WRITE(gondo_scroll_w) |
| 784 | | AM_RANGE(0x3830, 0x3830) AM_WRITE(ghostb_bank_w) /* Bank + NMI enable */ |
| 785 | | AM_RANGE(0x3838, 0x3839) AM_WRITE(garyoret_i8751_w) |
| 786 | | AM_RANGE(0x383a, 0x383a) AM_READ(i8751_h_r) |
| 787 | | AM_RANGE(0x383b, 0x383b) AM_READ(i8751_l_r) |
| 850 | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("IN0") /* Player 1 */ |
| 851 | AM_RANGE(0x3802, 0x3802) AM_READ_PORT("IN1") /* Player 2 (cocktail) + VBL */ |
| 852 | AM_RANGE(0x3803, 0x3803) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 788 | 853 | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 789 | 854 | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 790 | 855 | ADDRESS_MAP_END |
| 791 | 856 | |
| 857 | static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8 ) |
| 858 | AM_RANGE(0x0000, 0x07ff) AM_RAM |
| 859 | AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 860 | AM_RANGE(0x1000, 0x17ff) AM_DEVREADWRITE("tilegen2", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) |
| 861 | AM_RANGE(0x1800, 0x1fff) AM_RAM |
| 862 | AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) |
| 863 | AM_RANGE(0x2800, 0x2fff) AM_RAM AM_SHARE("spriteram") |
| 864 | AM_RANGE(0x3000, 0x31ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_be_w) AM_BASE_GENERIC(paletteram) |
| 865 | AM_RANGE(0x3200, 0x37ff) AM_WRITEONLY /* Unused */ |
| 866 | AM_RANGE(0x3800, 0x3800) AM_READ_PORT("IN0") /* Player 1 */ |
| 867 | AM_RANGE(0x3801, 0x3801) AM_READ_PORT("IN1") /* Player 2 */ |
| 868 | AM_RANGE(0x3802, 0x3802) AM_READ_PORT("DSW0") /* Dip 1 */ |
| 869 | AM_RANGE(0x3803, 0x3803) AM_READ_PORT("DSW1") /* Dip 2 */ |
| 870 | AM_RANGE(0x3800, 0x3807) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) |
| 871 | AM_RANGE(0x3810, 0x381f) AM_DEVWRITE("tilegen1", deco_bac06_pf_control1_8bit_w) |
| 872 | AM_RANGE(0x3a00, 0x3a00) AM_READ_PORT("IN2") /* VBL & coins */ |
| 873 | AM_RANGE(0x3a00, 0x3a07) AM_DEVWRITE("tilegen2", deco_bac06_pf_control0_8bit_w) |
| 874 | AM_RANGE(0x3a10, 0x3a1f) AM_DEVWRITE("tilegen2", deco_bac06_pf_control1_8bit_w) |
| 875 | AM_RANGE(0x3c00, 0x3c00) AM_WRITE(dec8_bank_w) |
| 876 | AM_RANGE(0x3c02, 0x3c02) AM_WRITE(dec8_mxc06_karn_buffer_spriteram_w) /* DMA */ |
| 877 | AM_RANGE(0x3e00, 0x3e00) AM_WRITE(dec8_sound_w) |
| 878 | AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") |
| 879 | AM_RANGE(0x8000, 0xffff) AM_ROM |
| 880 | ADDRESS_MAP_END |
| 881 | |
| 792 | 882 | /******************************************************************************/ |
| 793 | 883 | |
| 794 | 884 | /* Used for Cobra Command, Maze Hunter, Super Real Darwin etc */ |
| r14742 | r14743 | |
| 894 | 984 | /******************************************************************************/ |
| 895 | 985 | |
| 896 | 986 | #define PLAYER1_JOYSTICK /* Player 1 controls */ \ |
| 897 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY \ |
| 898 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY \ |
| 899 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY \ |
| 987 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY \ |
| 988 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY \ |
| 989 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY \ |
| 900 | 990 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY |
| 901 | 991 | |
| 902 | 992 | #define PLAYER2_JOYSTICK /* Player 2 controls */ \ |
| 903 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL \ |
| 904 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL \ |
| 905 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL \ |
| 993 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL \ |
| 994 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL \ |
| 995 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL \ |
| 906 | 996 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL |
| 907 | 997 | |
| 908 | | static INPUT_PORTS_START( cobracom ) |
| 998 | |
| 999 | /* verified from M6809 code - coinage needs further checking when the MCU is available */ |
| 1000 | static INPUT_PORTS_START( lastmisn ) |
| 909 | 1001 | PORT_START("IN0") |
| 910 | 1002 | PLAYER1_JOYSTICK |
| 911 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 912 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 913 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 914 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) |
| 1003 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* shoot */ |
| 1004 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* bomb */ |
| 1005 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) /* select */ |
| 1006 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 915 | 1007 | |
| 916 | 1008 | PORT_START("IN1") |
| 917 | 1009 | PLAYER2_JOYSTICK |
| 918 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 919 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) |
| 920 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 921 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1010 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL /* shoot */ |
| 1011 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL /* bomb */ |
| 1012 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL /* select */ |
| 1013 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 922 | 1014 | |
| 923 | 1015 | PORT_START("IN2") |
| 924 | 1016 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 925 | 1017 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 926 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 927 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1018 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) |
| 1019 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) |
| 928 | 1020 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 929 | 1021 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 930 | 1022 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 931 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK ) |
| 1023 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 932 | 1024 | |
| 933 | 1025 | PORT_START("DSW0") |
| 934 | 1026 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 935 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 936 | | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1027 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 937 | 1028 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 938 | 1029 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1030 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) |
| 939 | 1031 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 940 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 941 | | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1032 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 942 | 1033 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 943 | 1034 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 944 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
| 1035 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 1036 | PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) ) |
| 945 | 1037 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 946 | 1038 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 947 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 948 | | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 949 | | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 950 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1039 | PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) |
| 1040 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1041 | PORT_DIPSETTING( 0x20, DEF_STR( Cocktail ) ) |
| 1042 | PORT_DIPNAME( 0x40, 0x40, "Invulnerability (Cheat)") |
| 951 | 1043 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 952 | 1044 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 953 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 954 | | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 955 | | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1045 | PORT_DIPNAME( 0x80, 0x80, "Infinite Lives (Cheat)") |
| 1046 | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1047 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 956 | 1048 | |
| 957 | 1049 | PORT_START("DSW1") |
| 958 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 959 | | PORT_DIPSETTING( 0x03, "3" ) |
| 960 | | PORT_DIPSETTING( 0x02, "4" ) |
| 961 | | PORT_DIPSETTING( 0x01, "5" ) |
| 962 | | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 963 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 964 | | PORT_DIPSETTING( 0x04, DEF_STR( Easy ) ) |
| 965 | | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1050 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) |
| 1051 | PORT_DIPSETTING( 0x01, "3" ) |
| 1052 | PORT_DIPSETTING( 0x00, "5" ) |
| 1053 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) /* tables at 0x82c1 (4 words) and 0xde38 (3 words) in 'lastmisn', 0x82c1 and 0xde17 in 'lastmisno' */ |
| 1054 | PORT_DIPSETTING( 0x06, "30k 70k 70k+" ) |
| 1055 | PORT_DIPSETTING( 0x04, "40k 90k 90k+" ) |
| 1056 | PORT_DIPSETTING( 0x02, "40k and 80k" ) |
| 1057 | PORT_DIPSETTING( 0x00, "50k only" ) |
| 1058 | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) |
| 1059 | PORT_DIPSETTING( 0x18, DEF_STR( Easy ) ) |
| 1060 | PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) |
| 966 | 1061 | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 967 | 1062 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 968 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Allow_Continue ) ) |
| 969 | | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 970 | | PORT_DIPSETTING( 0x10, DEF_STR( Yes ) ) |
| 971 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Bonus_Life ) ) |
| 972 | | PORT_DIPSETTING( 0x20, "50k, 150k" ) |
| 973 | | PORT_DIPSETTING( 0x00, "100k, 200k" ) |
| 974 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) |
| 975 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 976 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 977 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
| 978 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 979 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1063 | PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW ) |
| 1064 | PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) |
| 1065 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Allow_Continue ) ) |
| 1066 | PORT_DIPSETTING( 0x80, DEF_STR( No ) ) |
| 1067 | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 980 | 1068 | INPUT_PORTS_END |
| 981 | 1069 | |
| 982 | | static INPUT_PORTS_START( ghostb ) |
| 1070 | /* verified from M6809 code - coinage needs further checking when the MCU is available */ |
| 1071 | static INPUT_PORTS_START( lastmisnj ) |
| 1072 | PORT_INCLUDE(lastmisn) |
| 1073 | |
| 1074 | PORT_MODIFY("DSW1") |
| 1075 | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) /* tables at 0x82b7 (4 words) and 0xdd29 (3 words) */ |
| 1076 | PORT_DIPSETTING( 0x06, "30k 50k 50k+" ) |
| 1077 | PORT_DIPSETTING( 0x04, "30k 70k 70k+" ) |
| 1078 | PORT_DIPSETTING( 0x02, "50k 100k 100k+" ) |
| 1079 | PORT_DIPSETTING( 0x00, "50k only" ) |
| 1080 | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) |
| 1081 | PORT_DIPSETTING( 0x18, DEF_STR( Normal ) ) |
| 1082 | PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) /* "difficult" */ |
| 1083 | PORT_DIPSETTING( 0x08, DEF_STR( Very_Hard ) ) /* "very difficult" */ |
| 1084 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) /* "top difficult" */ |
| 1085 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) |
| 1086 | INPUT_PORTS_END |
| 1087 | |
| 1088 | |
| 1089 | /* verified from M6809 code */ |
| 1090 | static INPUT_PORTS_START( shackled ) |
| 983 | 1091 | PORT_START("IN0") |
| 984 | 1092 | PLAYER1_JOYSTICK |
| 985 | 1093 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 986 | 1094 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 987 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 988 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1095 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1096 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 989 | 1097 | |
| 990 | 1098 | PORT_START("IN1") |
| 991 | 1099 | PLAYER2_JOYSTICK |
| 992 | 1100 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 993 | 1101 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) |
| 994 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 995 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1102 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1103 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 996 | 1104 | |
| 997 | 1105 | PORT_START("IN2") |
| 998 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 999 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1000 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1001 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1002 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1003 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1004 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1005 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1106 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1107 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1108 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) |
| 1109 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) |
| 1110 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1111 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1112 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1113 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1006 | 1114 | |
| 1007 | 1115 | PORT_START("DSW0") |
| 1008 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) |
| 1009 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) |
| 1010 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1011 | | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1012 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
| 1116 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) |
| 1117 | PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) |
| 1118 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1119 | PORT_DIPUNUSED( 0x02, IP_ACTIVE_LOW ) |
| 1120 | PORT_DIPUNUSED( 0x04, IP_ACTIVE_LOW ) |
| 1121 | PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) |
| 1122 | PORT_DIPNAME( 0x10, 0x40, "Leave Off" ) /* game doesn't boot when this is On - code at 0x401a - related to MCU - "dias" in Dip Switches page */ |
| 1013 | 1123 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1014 | 1124 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1015 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1016 | | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1017 | | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1018 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1019 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1020 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1021 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
| 1125 | PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW ) |
| 1126 | PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) |
| 1127 | PORT_DIPNAME( 0x80, 0x80, "Freeze" ) |
| 1022 | 1128 | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1023 | 1129 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1024 | 1130 | |
| 1025 | | PORT_START("I8751") |
| 1026 | | /* Low 4 bits not connected on schematics */ |
| 1027 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1028 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1029 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1030 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 1031 | | |
| 1032 | 1131 | PORT_START("DSW1") |
| 1033 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1034 | | PORT_DIPSETTING( 0x01, "1" ) |
| 1035 | | PORT_DIPSETTING( 0x03, "3" ) |
| 1036 | | PORT_DIPSETTING( 0x02, "5" ) |
| 1037 | | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 1038 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1039 | | PORT_DIPSETTING( 0x04, DEF_STR( Easy ) ) |
| 1040 | | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1041 | | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 1132 | /* tables in main CPU : 0x859b (Help), 0x85e9 (6-Help), 0x8fbe (Coin), 0x91b6 (Heart) */ |
| 1133 | PORT_DIPNAME( 0x07, 0x07, "Coin/Heart/Help/6-Help" ) /* name from Dip Switches page */ |
| 1134 | PORT_DIPSETTING( 0x00, "2/100/50/200" ) |
| 1135 | PORT_DIPSETTING( 0x01, "4/100/60/300" ) |
| 1136 | PORT_DIPSETTING( 0x02, "6/200/70/300" ) |
| 1137 | PORT_DIPSETTING( 0x03, "8/200/80/400" ) |
| 1138 | PORT_DIPSETTING( 0x07, "10/200/100/500" ) |
| 1139 | PORT_DIPSETTING( 0x06, "12/300/100/600" ) |
| 1140 | PORT_DIPSETTING( 0x05, "18/400/200/700" ) |
| 1141 | PORT_DIPSETTING( 0x04, "20/500/200/800" ) |
| 1142 | PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) |
| 1143 | PORT_DIPNAME( 0x30, 0x30, DEF_STR( Difficulty ) ) |
| 1144 | PORT_DIPSETTING( 0x30, DEF_STR( Normal ) ) |
| 1145 | PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) |
| 1146 | PORT_DIPSETTING( 0x10, DEF_STR( Very_Hard ) ) |
| 1042 | 1147 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1043 | | PORT_DIPNAME( 0x30, 0x30, "Scene Time" ) |
| 1044 | | PORT_DIPSETTING( 0x00, "4.00" ) |
| 1045 | | PORT_DIPSETTING( 0x10, "4.30" ) |
| 1046 | | PORT_DIPSETTING( 0x30, "5.00" ) |
| 1047 | | PORT_DIPSETTING( 0x20, "6.00" ) |
| 1048 | | PORT_DIPNAME( 0x40, 0x00, DEF_STR( Allow_Continue ) ) |
| 1049 | | PORT_DIPSETTING( 0x40, DEF_STR( No ) ) |
| 1050 | | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 1051 | | PORT_DIPNAME( 0x80, 0x80, "Beam Energy Pickup" ) /* Ghostb only */ |
| 1052 | | PORT_DIPSETTING( 0x00, "Up 1.5%" ) |
| 1053 | | PORT_DIPSETTING( 0x80, DEF_STR( Normal ) ) |
| 1148 | PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) |
| 1149 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) |
| 1150 | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1151 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1054 | 1152 | INPUT_PORTS_END |
| 1055 | 1153 | |
| 1056 | | static INPUT_PORTS_START( ghostb3 ) |
| 1057 | | PORT_INCLUDE(ghostb) |
| 1154 | /* verified from M6809 code */ |
| 1155 | static INPUT_PORTS_START( breywood ) |
| 1156 | PORT_INCLUDE(shackled) |
| 1058 | 1157 | |
| 1059 | | PORT_MODIFY("IN2") |
| 1060 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) |
| 1061 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3) |
| 1062 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) |
| 1063 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) |
| 1064 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) |
| 1065 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) |
| 1066 | | |
| 1067 | | PORT_MODIFY("DSW0") |
| 1068 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START3 ) |
| 1158 | PORT_MODIFY("DSW1") |
| 1159 | PORT_DIPNAME( 0x0f, 0x0f, "Power" ) /* table at 0x41be in sub CPU */ |
| 1160 | PORT_DIPSETTING( 0x07, "200" ) |
| 1161 | PORT_DIPSETTING( 0x0b, "300" ) |
| 1162 | PORT_DIPSETTING( 0x03, "400" ) |
| 1163 | PORT_DIPSETTING( 0x0d, "500" ) |
| 1164 | PORT_DIPSETTING( 0x05, "600" ) |
| 1165 | PORT_DIPSETTING( 0x09, "700" ) |
| 1166 | PORT_DIPSETTING( 0x01, "800" ) |
| 1167 | PORT_DIPSETTING( 0x0e, "900" ) |
| 1168 | PORT_DIPSETTING( 0x0f, "1000" ) |
| 1169 | PORT_DIPSETTING( 0x06, "2000" ) |
| 1170 | PORT_DIPSETTING( 0x0a, "3000" ) |
| 1171 | PORT_DIPSETTING( 0x02, "4000" ) |
| 1172 | PORT_DIPSETTING( 0x0c, "5000" ) |
| 1173 | PORT_DIPSETTING( 0x04, "6000" ) |
| 1174 | PORT_DIPSETTING( 0x08, "7000" ) |
| 1175 | PORT_DIPSETTING( 0x00, "8000" ) |
| 1069 | 1176 | INPUT_PORTS_END |
| 1070 | 1177 | |
| 1071 | | static INPUT_PORTS_START( meikyuh ) |
| 1072 | | PORT_INCLUDE(ghostb) |
| 1073 | 1178 | |
| 1074 | | PORT_MODIFY("I8751") |
| 1075 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1076 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 1077 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1078 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1079 | | |
| 1080 | | INPUT_PORTS_END |
| 1081 | | |
| 1082 | | |
| 1083 | | static INPUT_PORTS_START( srdarwin ) |
| 1084 | | PORT_START("IN0") |
| 1085 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY |
| 1086 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY |
| 1087 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY |
| 1088 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY |
| 1089 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1090 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1091 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) |
| 1092 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1093 | | |
| 1094 | | PORT_START("IN1") |
| 1095 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL |
| 1096 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL |
| 1097 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL |
| 1098 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL |
| 1099 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1100 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL |
| 1101 | | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1102 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1103 | | |
| 1104 | | PORT_START("DSW0") |
| 1105 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1106 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1107 | | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1108 | | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1109 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1110 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1111 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1112 | | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1113 | | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1114 | | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1115 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) |
| 1116 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1117 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1118 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1119 | | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1120 | | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1121 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1122 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1123 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1124 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1125 | | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1126 | | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1127 | | |
| 1128 | | PORT_START("DSW1") |
| 1129 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1130 | | PORT_DIPSETTING( 0x01, "1" ) |
| 1131 | | PORT_DIPSETTING( 0x03, "3" ) |
| 1132 | | PORT_DIPSETTING( 0x02, "5" ) |
| 1133 | | PORT_DIPSETTING( 0x00, "28 (Cheat)") |
| 1134 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1135 | | PORT_DIPSETTING( 0x04, DEF_STR( Easy ) ) |
| 1136 | | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1137 | | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 1138 | | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1139 | | PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) ) |
| 1140 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1141 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1142 | | PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) |
| 1143 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1144 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1145 | | PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) ) |
| 1146 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1147 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1148 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Continues ) ) |
| 1149 | | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1150 | | PORT_DIPSETTING( 0x80, DEF_STR( On ) ) |
| 1151 | | |
| 1152 | | PORT_START("FAKE") |
| 1153 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) /* Fake */ |
| 1154 | | INPUT_PORTS_END |
| 1155 | | |
| 1179 | /* verified from HD6309 code - 'makyosen' coinage needs further checking when its REAL MCU is available */ |
| 1156 | 1180 | static INPUT_PORTS_START( gondo ) |
| 1157 | 1181 | PORT_START("IN0") |
| 1158 | 1182 | PLAYER1_JOYSTICK |
| r14742 | r14743 | |
| 1187 | 1211 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1188 | 1212 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1189 | 1213 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1190 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 1214 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) /* produces sound but gives 0 credits - coinage not initialised in the MCU */ |
| 1191 | 1215 | |
| 1192 | 1216 | PORT_START("AN0") /* player 1 12-way rotary control */ |
| 1193 | 1217 | PORT_BIT( 0x0f, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(15) PORT_KEYDELTA(1) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_FULL_TURN_COUNT(12) |
| r14742 | r14743 | |
| 1196 | 1220 | PORT_BIT( 0x0f, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(15) PORT_KEYDELTA(1) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M) PORT_PLAYER(2) PORT_REVERSE PORT_FULL_TURN_COUNT(12) |
| 1197 | 1221 | |
| 1198 | 1222 | PORT_START("DSW0") |
| 1199 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1200 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1201 | | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1223 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) /* table at 0x01b8 in MCU (4 bytes : coins in 4 MSbits and credits in 4 LSbits) */ |
| 1224 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1202 | 1225 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1203 | 1226 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1204 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1205 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1206 | | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1227 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) |
| 1228 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) /* table at 0x01bc in MCU (4 bytes : coins in 4 MSbits and credits in 4 LSbits) */ |
| 1229 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1207 | 1230 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1208 | 1231 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1209 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
| 1210 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1211 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1232 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 1233 | PORT_DIPUNUSED( 0x10, IP_ACTIVE_LOW ) |
| 1212 | 1234 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1213 | 1235 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1214 | 1236 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1215 | 1237 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1216 | 1238 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1217 | 1239 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1218 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
| 1240 | PORT_DIPNAME( 0x80, 0x80, "Swap buttons" ) /* code at 0x8a2b in 'gondo', 0x88c5 in 'makyosen' - undocumented in the manual */ |
| 1219 | 1241 | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1220 | 1242 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1221 | 1243 | |
| r14742 | r14743 | |
| 1224 | 1246 | PORT_DIPSETTING( 0x01, "1" ) |
| 1225 | 1247 | PORT_DIPSETTING( 0x03, "3" ) |
| 1226 | 1248 | PORT_DIPSETTING( 0x02, "5" ) |
| 1227 | | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 1249 | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") /* gives 99 lives */ |
| 1228 | 1250 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1229 | | PORT_DIPSETTING( 0x04, DEF_STR( Easy ) ) |
| 1251 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1230 | 1252 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1231 | | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 1253 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1232 | 1254 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1233 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Allow_Continue ) ) |
| 1255 | PORT_DIPNAME( 0x10, 0x00, DEF_STR( Allow_Continue ) ) |
| 1234 | 1256 | PORT_DIPSETTING( 0x10, DEF_STR( No ) ) |
| 1235 | 1257 | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 1236 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) |
| 1237 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1238 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1239 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) |
| 1240 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1241 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1242 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
| 1243 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1244 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1258 | PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW ) |
| 1259 | PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) |
| 1260 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) |
| 1245 | 1261 | INPUT_PORTS_END |
| 1246 | 1262 | |
| 1247 | | static INPUT_PORTS_START( oscar ) |
| 1263 | |
| 1264 | /* verified from HD6309 code - coinage needs further checking when the MCU is available */ |
| 1265 | static INPUT_PORTS_START( garyoret ) |
| 1248 | 1266 | PORT_START("IN0") |
| 1249 | 1267 | PLAYER1_JOYSTICK |
| 1250 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1251 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1252 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) |
| 1253 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) |
| 1268 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* shoot */ |
| 1269 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* bomb */ |
| 1270 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) |
| 1271 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1254 | 1272 | |
| 1255 | 1273 | PORT_START("IN1") |
| 1256 | 1274 | PLAYER2_JOYSTICK |
| 1257 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1258 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL |
| 1259 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL |
| 1260 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1261 | | |
| 1262 | | PORT_START("IN2") |
| 1263 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1264 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1265 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 1266 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1267 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1268 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1275 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) /* shoot */ |
| 1276 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) /* bomb */ |
| 1269 | 1277 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1270 | 1278 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1271 | 1279 | |
| 1280 | PORT_START("I8751") /* hooked up on the (fake) i8751 */ |
| 1281 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1282 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1283 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1284 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) /* produces sound but gives 0 credits - coinage not initialised in the (fake) MCU */ |
| 1285 | |
| 1272 | 1286 | PORT_START("DSW0") |
| 1273 | 1287 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1274 | 1288 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| r14742 | r14743 | |
| 1280 | 1294 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1281 | 1295 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1282 | 1296 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 1283 | | PORT_DIPNAME( 0x10, 0x10, "Freeze Mode" ) |
| 1284 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1285 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1297 | PORT_DIPUNUSED( 0x10, IP_ACTIVE_LOW ) |
| 1286 | 1298 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1287 | 1299 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1288 | 1300 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1289 | 1301 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1290 | 1302 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1291 | 1303 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1292 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1293 | | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1294 | | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1304 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) /* not tested - no cocktail when simultaneous players anyway */ |
| 1295 | 1305 | |
| 1296 | 1306 | PORT_START("DSW1") |
| 1297 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1298 | | PORT_DIPSETTING( 0x01, "1" ) |
| 1299 | | PORT_DIPSETTING( 0x03, "3" ) |
| 1300 | | PORT_DIPSETTING( 0x02, "5" ) |
| 1301 | | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 1307 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) |
| 1308 | PORT_DIPSETTING( 0x01, "3" ) |
| 1309 | PORT_DIPSETTING( 0x00, "5" ) |
| 1310 | PORT_DIPUNUSED( 0x02, IP_ACTIVE_LOW ) |
| 1302 | 1311 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1303 | 1312 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1304 | 1313 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1305 | 1314 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1306 | 1315 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1307 | | PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) |
| 1308 | | PORT_DIPSETTING( 0x30, "Every 40000" ) |
| 1309 | | PORT_DIPSETTING( 0x20, "Every 60000" ) |
| 1310 | | PORT_DIPSETTING( 0x10, "Every 90000" ) |
| 1311 | | PORT_DIPSETTING( 0x00, "50000 only" ) |
| 1312 | | PORT_DIPNAME( 0x40, 0x40, "Invulnerability (Cheat)") |
| 1316 | PORT_DIPUNUSED( 0x10, IP_ACTIVE_LOW ) |
| 1317 | PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW ) |
| 1318 | PORT_DIPNAME( 0x40, 0x40, "Leave Off" ) /* game doesn't boot when this is On - code at 0x807f and test at 0x819e */ |
| 1313 | 1319 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1314 | 1320 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1315 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) |
| 1316 | | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 1317 | | PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) |
| 1321 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) |
| 1318 | 1322 | INPUT_PORTS_END |
| 1319 | 1323 | |
| 1320 | | static INPUT_PORTS_START( oscaru ) |
| 1324 | |
| 1325 | /* verified from HD6309 code */ |
| 1326 | static INPUT_PORTS_START( ghostb ) |
| 1321 | 1327 | PORT_START("IN0") |
| 1322 | 1328 | PLAYER1_JOYSTICK |
| 1323 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1324 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1325 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) |
| 1326 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) |
| 1329 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* "FIRE" */ |
| 1330 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) /* beam / upgradable shot when out of energy */ |
| 1331 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1332 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1327 | 1333 | |
| 1328 | 1334 | PORT_START("IN1") |
| 1329 | 1335 | PLAYER2_JOYSTICK |
| 1330 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1331 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL |
| 1332 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL |
| 1333 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1336 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) /* "FIRE" */ |
| 1337 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) /* beam / upgradable shot when out of energy */ |
| 1338 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1339 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1334 | 1340 | |
| 1335 | 1341 | PORT_START("IN2") |
| 1336 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1337 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1338 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 1342 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1343 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1344 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1339 | 1345 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1340 | 1346 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1341 | 1347 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1342 | 1348 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1343 | | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1349 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1344 | 1350 | |
| 1351 | PORT_START("I8751") |
| 1352 | /* Low 4 bits not connected on schematics */ |
| 1353 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1354 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1355 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1356 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) /* produce sound but gives 0 credits - "ANDA" instruction at 0x8a5a */ |
| 1357 | |
| 1345 | 1358 | PORT_START("DSW0") |
| 1346 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1347 | | PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) ) |
| 1348 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) |
| 1349 | | PORT_DIPSETTING( 0x01, DEF_STR( 1C_4C ) ) |
| 1350 | | PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) ) |
| 1351 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1352 | | PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) |
| 1353 | | PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) ) |
| 1354 | | PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) |
| 1355 | | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1356 | | PORT_DIPNAME( 0x10, 0x10, "Freeze Mode" ) |
| 1357 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1358 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1359 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) |
| 1360 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) |
| 1361 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1362 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1363 | PORT_DIPUNUSED( 0x10, IP_ACTIVE_LOW ) |
| 1359 | 1364 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1360 | 1365 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1361 | 1366 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1362 | 1367 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1363 | 1368 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1364 | 1369 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1365 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1366 | | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1367 | | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1370 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) /* not tested - no cocktail when simultaneous players anyway */ |
| 1368 | 1371 | |
| 1369 | 1372 | PORT_START("DSW1") |
| 1370 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1373 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) /* lives are added when STARTn is pressed */ |
| 1371 | 1374 | PORT_DIPSETTING( 0x01, "1" ) |
| 1372 | 1375 | PORT_DIPSETTING( 0x03, "3" ) |
| 1373 | 1376 | PORT_DIPSETTING( 0x02, "5" ) |
| 1374 | | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 1377 | PORT_DIPSETTING( 0x00, "Invulnerability (Cheat)") /* gives 1 life */ |
| 1375 | 1378 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1376 | 1379 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1377 | 1380 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1378 | 1381 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1379 | 1382 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1380 | | PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) |
| 1381 | | PORT_DIPSETTING( 0x30, "Every 40000" ) |
| 1382 | | PORT_DIPSETTING( 0x20, "Every 60000" ) |
| 1383 | | PORT_DIPSETTING( 0x10, "Every 90000" ) |
| 1384 | | PORT_DIPSETTING( 0x00, "50000 only" ) |
| 1385 | | PORT_DIPNAME( 0x40, 0x40, "Invulnerability (Cheat)") |
| 1386 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1383 | PORT_DIPNAME( 0x30, 0x30, "Max Scene Time" ) /* 1:00 is added when STARTn is pressed until max scene time is reached */ |
| 1384 | PORT_DIPSETTING( 0x00, "4:00" ) |
| 1385 | PORT_DIPSETTING( 0x10, "4:30" ) |
| 1386 | PORT_DIPSETTING( 0x30, "5:00" ) |
| 1387 | PORT_DIPSETTING( 0x20, "6:00" ) |
| 1388 | PORT_DIPNAME( 0x40, 0x00, DEF_STR( Allow_Continue ) ) |
| 1389 | PORT_DIPSETTING( 0x40, DEF_STR( No ) ) |
| 1390 | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 1391 | PORT_DIPNAME( 0x80, 0x80, "Energy Bonus" ) /* energy is set to value each new life */ |
| 1392 | PORT_DIPSETTING( 0x80, DEF_STR( None ) ) /* 0x0100 */ |
| 1393 | PORT_DIPSETTING( 0x00, "+25%" ) /* 0x0140 */ |
| 1394 | INPUT_PORTS_END |
| 1395 | |
| 1396 | /* verified from HD6309 code */ |
| 1397 | static INPUT_PORTS_START( ghostb2a ) |
| 1398 | PORT_INCLUDE(ghostb) |
| 1399 | |
| 1400 | /* BUTTON1 : upgradable shot - BUTTON2 : beam (provided you have energy) */ |
| 1401 | |
| 1402 | PORT_MODIFY("I8751") |
| 1403 | /* Low 4 bits not connected on schematics */ |
| 1404 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1405 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1406 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1407 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) /* produce sound but gives 0 lives - "ANDA" instruction at 0x8a20 */ |
| 1408 | |
| 1409 | PORT_MODIFY("DSW0") |
| 1410 | /* NO start buttons - to start a game, press any button from any player */ |
| 1411 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1412 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1413 | |
| 1414 | PORT_MODIFY("DSW1") |
| 1415 | /* lives are added when COINn is pressed */ |
| 1416 | /* 1:00 is added when COINn is pressed until max scene time is reached */ |
| 1417 | PORT_DIPNAME( 0x80, 0x80, "Energy Bonus" ) /* energy is added when COINn is pressed */ |
| 1418 | PORT_DIPSETTING( 0x80, DEF_STR( None ) ) /* 0x0040 */ |
| 1419 | PORT_DIPSETTING( 0x00, "+50%" ) /* 0x0060 */ |
| 1420 | INPUT_PORTS_END |
| 1421 | |
| 1422 | /* verified from HD6309 code */ |
| 1423 | static INPUT_PORTS_START( ghostb3 ) |
| 1424 | PORT_INCLUDE(ghostb2a) |
| 1425 | |
| 1426 | PORT_MODIFY("IN2") |
| 1427 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) |
| 1428 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3) |
| 1429 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) |
| 1430 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) |
| 1431 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) /* upgradable shot */ |
| 1432 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) /* beam (provided you have energy) */ |
| 1433 | |
| 1434 | PORT_MODIFY("I8751") |
| 1435 | /* Low 4 bits not connected on schematics */ |
| 1436 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1437 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1438 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1439 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 1440 | INPUT_PORTS_END |
| 1441 | |
| 1442 | /* verified from HD6309 code */ |
| 1443 | static INPUT_PORTS_START( meikyuh ) |
| 1444 | PORT_INCLUDE(ghostb) |
| 1445 | |
| 1446 | PORT_MODIFY("I8751") |
| 1447 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 1448 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) /* gives 4 credits for 14 coins ! */ |
| 1449 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1450 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1451 | |
| 1452 | /* BUTTON1 : upgradable shot - BUTTON2 : circular fire (provided you have energy) - BUTTON1 + BUTTON2 : beam (provided you have energy) */ |
| 1453 | |
| 1454 | PORT_MODIFY("DSW1") |
| 1455 | /* lives are added when STARTn is pressed - 1 extra life is awarded on 2nd credit and after for the same player who gets then 2, 4 or 6 additional lives */ |
| 1456 | /* max time scene is always 6:00 at start - 0:30 is subed every 8 levels - 1:00 is added when STARTn is pressed until max scene time is reached */ |
| 1457 | PORT_DIPNAME( 0x10, 0x10, "Energy Bonus" ) /* energy is added when STARTn is pressed */ |
| 1458 | PORT_DIPSETTING( 0x10, DEF_STR( None ) ) /* 0x0020 */ |
| 1459 | PORT_DIPSETTING( 0x00, "+50%" ) /* 0x0030 */ |
| 1460 | PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW ) |
| 1461 | PORT_DIPNAME( 0x80, 0x80, "Freeze" ) |
| 1462 | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1387 | 1463 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1388 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) |
| 1389 | | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 1390 | | PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) |
| 1391 | 1464 | INPUT_PORTS_END |
| 1392 | 1465 | |
| 1393 | | static INPUT_PORTS_START( lastmisn ) |
| 1466 | |
| 1467 | /* verified from M6809 code - coinage needs further checking when the MCU is available */ |
| 1468 | static INPUT_PORTS_START( csilver ) |
| 1394 | 1469 | PORT_START("IN0") |
| 1395 | 1470 | PLAYER1_JOYSTICK |
| 1396 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1397 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1398 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) |
| 1471 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* sword */ |
| 1472 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* jump */ |
| 1473 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1399 | 1474 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1400 | 1475 | |
| 1401 | 1476 | PORT_START("IN1") |
| 1402 | 1477 | PLAYER2_JOYSTICK |
| 1403 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1404 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL |
| 1405 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL |
| 1478 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL /* sword */ |
| 1479 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL /* jump */ |
| 1480 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1406 | 1481 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1407 | 1482 | |
| 1408 | 1483 | PORT_START("IN2") |
| r14742 | r14743 | |
| 1417 | 1492 | |
| 1418 | 1493 | PORT_START("DSW0") |
| 1419 | 1494 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1420 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1421 | | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1422 | | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1423 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1495 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) ) |
| 1496 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) |
| 1497 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_4C ) ) |
| 1498 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) ) |
| 1424 | 1499 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1425 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1426 | | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1500 | PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) |
| 1501 | PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) ) |
| 1502 | PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) |
| 1427 | 1503 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1428 | | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1429 | | PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) ) |
| 1430 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1504 | PORT_DIPUNUSED( 0x10, IP_ACTIVE_LOW ) |
| 1505 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1506 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1507 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1508 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1509 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1431 | 1510 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1432 | | PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) |
| 1511 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1433 | 1512 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1434 | | PORT_DIPSETTING( 0x20, DEF_STR( Cocktail ) ) |
| 1435 | | PORT_DIPNAME( 0x40, 0x40, "Invulnerability (Cheat)") |
| 1436 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1437 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1438 | | PORT_DIPNAME( 0x80, 0x80, "Infinite Lives (Cheat)") |
| 1439 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1440 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1513 | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1441 | 1514 | |
| 1442 | 1515 | PORT_START("DSW1") |
| 1443 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) |
| 1444 | | PORT_DIPSETTING( 0x01, "3" ) |
| 1445 | | PORT_DIPSETTING( 0x00, "5" ) |
| 1446 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) |
| 1447 | | PORT_DIPSETTING( 0x06, "30k, 70k then every 70k" ) |
| 1448 | | PORT_DIPSETTING( 0x04, "40k, 90k then every 90k" ) |
| 1449 | | PORT_DIPSETTING( 0x02, "40k and 80k" ) |
| 1450 | | PORT_DIPSETTING( 0x00, "50k only" ) |
| 1451 | | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) |
| 1516 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1517 | PORT_DIPSETTING( 0x01, "1" ) |
| 1518 | PORT_DIPSETTING( 0x03, "3" ) |
| 1519 | PORT_DIPSETTING( 0x02, "5" ) |
| 1520 | PORT_DIPSETTING( 0x00, "255 (Cheat)") |
| 1521 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1452 | 1522 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1453 | | PORT_DIPSETTING( 0x18, DEF_STR( Normal ) ) |
| 1454 | | PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) |
| 1523 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1524 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1455 | 1525 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1456 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) /* Unused according to the manual */ |
| 1457 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1458 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1459 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) |
| 1526 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Allow_Continue ) ) |
| 1527 | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 1528 | PORT_DIPSETTING( 0x10, DEF_STR( Yes ) ) |
| 1529 | PORT_DIPUNUSED( 0x20, IP_ACTIVE_LOW ) |
| 1530 | PORT_DIPNAME( 0x40, 0x40, "No Key for Door (Cheat)") /* code at 0x9816 in sub CPU */ |
| 1460 | 1531 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1461 | 1532 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1462 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Allow_Continue ) ) |
| 1463 | | PORT_DIPSETTING( 0x80, DEF_STR( No ) ) |
| 1464 | | PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) |
| 1533 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) |
| 1465 | 1534 | INPUT_PORTS_END |
| 1466 | 1535 | |
| 1467 | | static INPUT_PORTS_START( lastmisnj ) |
| 1536 | /* verified from M6809 code - coinage needs further checking when the MCU is available */ |
| 1537 | static INPUT_PORTS_START( csilverj ) |
| 1538 | PORT_INCLUDE(csilver) |
| 1539 | |
| 1540 | PORT_MODIFY("DSW0") |
| 1541 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1542 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1543 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1544 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1545 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) |
| 1546 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1547 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1548 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1549 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1550 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 1551 | INPUT_PORTS_END |
| 1552 | |
| 1553 | |
| 1554 | /* verified from HD6309 code */ |
| 1555 | static INPUT_PORTS_START( oscar ) |
| 1468 | 1556 | PORT_START("IN0") |
| 1469 | 1557 | PLAYER1_JOYSTICK |
| 1470 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1471 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1472 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) |
| 1473 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1558 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* shoot */ |
| 1559 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* jump */ |
| 1560 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) /* select */ |
| 1561 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) |
| 1474 | 1562 | |
| 1475 | 1563 | PORT_START("IN1") |
| 1476 | 1564 | PLAYER2_JOYSTICK |
| 1477 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1478 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL |
| 1479 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL |
| 1480 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1565 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL /* shoot */ |
| 1566 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL /* jump */ |
| 1567 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL /* select */ |
| 1568 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1481 | 1569 | |
| 1482 | 1570 | PORT_START("IN2") |
| 1483 | 1571 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1484 | 1572 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1485 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) |
| 1486 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) |
| 1573 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* always adds 1 credit */ |
| 1574 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1487 | 1575 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1488 | 1576 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1489 | 1577 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1490 | 1578 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1491 | 1579 | |
| 1492 | 1580 | PORT_START("DSW0") |
| 1493 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1494 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1495 | | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1496 | | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1497 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1498 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1499 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1500 | | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1581 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) /* table at 0xf8e3 (4 * 2 bytes : coins then credits) */ |
| 1582 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) ) |
| 1583 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) |
| 1584 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_4C ) ) |
| 1585 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) ) |
| 1586 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) /* table at 0xf8eb (4 * 2 bytes : coins then credits) */ |
| 1587 | PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) |
| 1588 | PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) ) |
| 1589 | PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) |
| 1501 | 1590 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1502 | | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1503 | | PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) ) |
| 1591 | PORT_DIPNAME( 0x10, 0x10, "Freeze Mode" ) |
| 1504 | 1592 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1505 | 1593 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1506 | | PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) |
| 1507 | | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1508 | | PORT_DIPSETTING( 0x20, DEF_STR( Cocktail ) ) |
| 1509 | | PORT_DIPNAME( 0x40, 0x40, "Invulnerability (Cheat)") |
| 1594 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1595 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1596 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 1597 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1510 | 1598 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1511 | 1599 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1512 | | PORT_DIPNAME( 0x80, 0x80, "Infinite Lives (Cheat)") |
| 1513 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1514 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1600 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1601 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1602 | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1515 | 1603 | |
| 1516 | 1604 | PORT_START("DSW1") |
| 1517 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) |
| 1518 | | PORT_DIPSETTING( 0x01, "3" ) |
| 1519 | | PORT_DIPSETTING( 0x00, "5" ) |
| 1520 | | PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) |
| 1521 | | PORT_DIPSETTING( 0x06, "30k, 50k then every 50k" ) |
| 1522 | | PORT_DIPSETTING( 0x04, "30k, 70k then every 70k" ) |
| 1523 | | PORT_DIPSETTING( 0x02, "50k, 100k then every 100k" ) |
| 1524 | | PORT_DIPSETTING( 0x00, "50k only" ) |
| 1525 | | PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) |
| 1605 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1606 | PORT_DIPSETTING( 0x01, "1" ) |
| 1607 | PORT_DIPSETTING( 0x03, "3" ) |
| 1608 | PORT_DIPSETTING( 0x02, "5" ) |
| 1609 | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 1610 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1526 | 1611 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1527 | | PORT_DIPSETTING( 0x18, DEF_STR( Normal ) ) |
| 1528 | | PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) |
| 1612 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1613 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1529 | 1614 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1530 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) /* Unused according to the manual */ |
| 1531 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1532 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1533 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) |
| 1615 | PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) /* tables at 0x82d8 (4 words) and 0xf3fe (3 words) */ |
| 1616 | PORT_DIPSETTING( 0x30, "40k 100k 60k+" ) |
| 1617 | PORT_DIPSETTING( 0x20, "60k 160k 100k+" ) |
| 1618 | PORT_DIPSETTING( 0x10, "90k 240k 150k+" ) |
| 1619 | PORT_DIPSETTING( 0x00, "50k only" ) |
| 1620 | PORT_DIPNAME( 0x40, 0x40, "Invulnerability (Cheat)") /* not when falling into void or water - also gives infinite time */ |
| 1534 | 1621 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1535 | 1622 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1536 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) |
| 1537 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1538 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1623 | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) |
| 1624 | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 1625 | PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) |
| 1539 | 1626 | INPUT_PORTS_END |
| 1540 | 1627 | |
| 1541 | | static INPUT_PORTS_START( shackled ) |
| 1542 | | PORT_START("IN0") |
| 1543 | | PLAYER1_JOYSTICK |
| 1544 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1545 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1546 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1547 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1628 | /* verified from HD6309 code */ |
| 1629 | static INPUT_PORTS_START( oscarj ) |
| 1630 | PORT_INCLUDE(oscar) |
| 1548 | 1631 | |
| 1549 | | PORT_START("IN1") |
| 1550 | | PLAYER2_JOYSTICK |
| 1551 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 1552 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) |
| 1553 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1554 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1632 | PORT_MODIFY("DSW0") |
| 1633 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) /* table at 0xf8d6 (4 * 2 bytes : coins then credits) in 'oscarj1', 0xf8e6 in 'oscarj2', 0xf8f2 in 'oscaru' */ |
| 1634 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1635 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1636 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1637 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) |
| 1638 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) /* table at 0xf8de (4 * 2 bytes : coins then credits) in 'oscarj1', 0xf8ee in 'oscarj2', 0xf8fa in 'oscaru' */ |
| 1639 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1640 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1641 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1642 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 1555 | 1643 | |
| 1556 | | PORT_START("IN2") |
| 1557 | | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1558 | | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1559 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) |
| 1560 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) |
| 1561 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1562 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1563 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 1564 | | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1644 | /* bonus lives : tables at 0x82d8 (4 words) and 0xf3f1 (3 words) in 'oscarj1', 0x82de and 0xf401 in 'orscarj2', 0x82d8 and 0xf412 in 'orscaru' - same as in 'oscar' */ |
| 1645 | INPUT_PORTS_END |
| 1565 | 1646 | |
| 1566 | | PORT_START("DSW0") |
| 1567 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) |
| 1568 | | PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) |
| 1569 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1570 | | PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) ) /* All marked as unused in the manual */ |
| 1571 | | PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) |
| 1572 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1573 | | PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) |
| 1574 | | PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) |
| 1575 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1576 | | PORT_DIPNAME( 0x10, 0x10, "Leave Off" ) /* game doesn't boot when this is On */ |
| 1577 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1578 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1579 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) |
| 1580 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1581 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1582 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) |
| 1583 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1584 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1585 | | PORT_DIPNAME( 0x80, 0x80, "Freeze" ) |
| 1586 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1587 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1588 | 1647 | |
| 1589 | | PORT_START("DSW1") |
| 1590 | | PORT_DIPNAME( 0x0f, 0x0f, "Power" ) |
| 1591 | | PORT_DIPSETTING( 0x07, "200" ) |
| 1592 | | PORT_DIPSETTING( 0x0b, "300" ) |
| 1593 | | PORT_DIPSETTING( 0x03, "400" ) |
| 1594 | | PORT_DIPSETTING( 0x0d, "500" ) |
| 1595 | | PORT_DIPSETTING( 0x05, "600" ) |
| 1596 | | PORT_DIPSETTING( 0x09, "700" ) |
| 1597 | | PORT_DIPSETTING( 0x01, "800" ) |
| 1598 | | PORT_DIPSETTING( 0x0e, "900" ) |
| 1599 | | PORT_DIPSETTING( 0x0f, "1000" ) |
| 1600 | | PORT_DIPSETTING( 0x06, "2000" ) |
| 1601 | | PORT_DIPSETTING( 0x0a, "3000" ) |
| 1602 | | PORT_DIPSETTING( 0x02, "4000" ) |
| 1603 | | PORT_DIPSETTING( 0x0c, "5000" ) |
| 1604 | | PORT_DIPSETTING( 0x04, "6000" ) |
| 1605 | | PORT_DIPSETTING( 0x08, "7000" ) |
| 1606 | | PORT_DIPSETTING( 0x00, "8000" ) |
| 1607 | | PORT_DIPNAME( 0x30, 0x30, DEF_STR( Difficulty ) ) |
| 1608 | | PORT_DIPSETTING( 0x30, DEF_STR( Normal ) ) |
| 1609 | | PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) |
| 1610 | | PORT_DIPSETTING( 0x10, DEF_STR( Very_Hard ) ) |
| 1611 | | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1612 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) |
| 1613 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1614 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1615 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) |
| 1616 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1617 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1618 | | INPUT_PORTS_END |
| 1619 | | |
| 1620 | | static INPUT_PORTS_START( csilver ) |
| 1648 | /* verified from M6809 code - coinage needs further checking when the MCU is available */ |
| 1649 | static INPUT_PORTS_START( srdarwin ) |
| 1621 | 1650 | PORT_START("IN0") |
| 1622 | | PLAYER1_JOYSTICK |
| 1651 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY |
| 1652 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY |
| 1653 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY |
| 1654 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY |
| 1623 | 1655 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1624 | 1656 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1625 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1626 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1657 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) |
| 1658 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1627 | 1659 | |
| 1628 | 1660 | PORT_START("IN1") |
| 1629 | | PLAYER2_JOYSTICK |
| 1661 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL |
| 1662 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL |
| 1663 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL |
| 1664 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL |
| 1630 | 1665 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1631 | 1666 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL |
| 1632 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1667 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1633 | 1668 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1634 | 1669 | |
| 1635 | | PORT_START("IN2") |
| 1670 | PORT_START("I8751") /* Fake port for i8751 */ |
| 1636 | 1671 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1637 | 1672 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1638 | | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) |
| 1639 | | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) |
| 1640 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1641 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1642 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1643 | | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1644 | 1673 | |
| 1645 | 1674 | PORT_START("DSW0") |
| 1646 | 1675 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1647 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1648 | | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1649 | | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1650 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1676 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) ) |
| 1677 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) |
| 1678 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_4C ) ) |
| 1679 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) ) |
| 1651 | 1680 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1652 | | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1653 | | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1681 | PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) |
| 1682 | PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) ) |
| 1683 | PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) |
| 1654 | 1684 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1655 | | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1656 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) /* Listed as "Unused" in the manual */ |
| 1657 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1658 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1685 | PORT_DIPUNUSED( 0x10, IP_ACTIVE_LOW ) |
| 1659 | 1686 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| 1660 | 1687 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1661 | 1688 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| r14742 | r14743 | |
| 1671 | 1698 | PORT_DIPSETTING( 0x01, "1" ) |
| 1672 | 1699 | PORT_DIPSETTING( 0x03, "3" ) |
| 1673 | 1700 | PORT_DIPSETTING( 0x02, "5" ) |
| 1674 | | PORT_DIPSETTING( 0x00, "Infinite (Cheat)") |
| 1701 | PORT_DIPSETTING( 0x00, "28 (Cheat)") |
| 1675 | 1702 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1676 | | PORT_DIPSETTING( 0x04, DEF_STR( Easy ) ) |
| 1703 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1677 | 1704 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1678 | | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 1705 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1679 | 1706 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1680 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Allow_Continue ) ) |
| 1707 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Bonus_Life ) ) |
| 1708 | PORT_DIPSETTING( 0x10, "Every 50k" ) /* table at 0xab06 - last bonus life at 850k */ |
| 1709 | PORT_DIPSETTING( 0x00, "Every 100k" ) /* table at 0xab17 - last bonus life at 900k */ |
| 1710 | PORT_DIPNAME( 0x20, 0x20, "After Stage 10" ) /* code at 0xab94 */ |
| 1711 | PORT_DIPSETTING( 0x20, "Back to Stage 1" ) |
| 1712 | PORT_DIPSETTING( 0x00, "Game Over" ) |
| 1713 | PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) |
| 1714 | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) |
| 1681 | 1715 | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 1682 | | PORT_DIPSETTING( 0x10, DEF_STR( Yes ) ) |
| 1683 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) /* Manual states dips 6-8 are "Unused" */ |
| 1684 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1685 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1686 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) |
| 1687 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1688 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1689 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) |
| 1690 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1691 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1716 | PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) |
| 1692 | 1717 | INPUT_PORTS_END |
| 1693 | 1718 | |
| 1694 | | static INPUT_PORTS_START( garyoret ) |
| 1719 | /* verified from M6809 code - coinage needs further checking when the MCU is available */ |
| 1720 | static INPUT_PORTS_START( srdarwinj ) |
| 1721 | PORT_INCLUDE(srdarwin) |
| 1722 | |
| 1723 | PORT_MODIFY("DSW0") |
| 1724 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1725 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1726 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1727 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1728 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) |
| 1729 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1730 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) |
| 1731 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1732 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1733 | PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) |
| 1734 | INPUT_PORTS_END |
| 1735 | |
| 1736 | |
| 1737 | /* verified from M6809 code */ |
| 1738 | static INPUT_PORTS_START( cobracom ) |
| 1695 | 1739 | PORT_START("IN0") |
| 1696 | 1740 | PLAYER1_JOYSTICK |
| 1697 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) |
| 1698 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) |
| 1699 | | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) |
| 1700 | | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1741 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* fire */ |
| 1742 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* missile */ |
| 1743 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1744 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) |
| 1701 | 1745 | |
| 1702 | 1746 | PORT_START("IN1") |
| 1703 | 1747 | PLAYER2_JOYSTICK |
| 1704 | | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 1705 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) |
| 1748 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) /* fire */ |
| 1749 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) /* missile */ |
| 1706 | 1750 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1707 | | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) |
| 1751 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) |
| 1708 | 1752 | |
| 1709 | | PORT_START("I8751") /* Fake port for i8751 */ |
| 1753 | PORT_START("IN2") |
| 1710 | 1754 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 1711 | 1755 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 1756 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* always adds 1 credit */ |
| 1757 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1758 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1759 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1760 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 1761 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK ) |
| 1712 | 1762 | |
| 1713 | 1763 | PORT_START("DSW0") |
| 1714 | | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) |
| 1764 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) /* code at 0x88b7 in 'cobracom', 0x890e in 'cobracomj' */ |
| 1715 | 1765 | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1716 | 1766 | PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) |
| 1717 | 1767 | PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) |
| 1718 | 1768 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) |
| 1719 | | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) |
| 1769 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) /* code at 0x889b in 'cobracom', 0x88f2 in 'cobracomj' */ |
| 1720 | 1770 | PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) |
| 1721 | 1771 | PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) |
| 1722 | 1772 | PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) |
| 1723 | 1773 | PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) |
| 1724 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) |
| 1774 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
| 1725 | 1775 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1726 | 1776 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1727 | 1777 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) ) |
| r14742 | r14743 | |
| 1730 | 1780 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) |
| 1731 | 1781 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1732 | 1782 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1733 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) |
| 1734 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1735 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1783 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1784 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1785 | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1736 | 1786 | |
| 1737 | 1787 | PORT_START("DSW1") |
| 1738 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) |
| 1739 | | PORT_DIPSETTING( 0x01, "3" ) |
| 1740 | | PORT_DIPSETTING( 0x00, "5" ) |
| 1741 | | PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) ) |
| 1742 | | PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) |
| 1743 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1788 | PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) |
| 1789 | PORT_DIPSETTING( 0x03, "3" ) |
| 1790 | PORT_DIPSETTING( 0x02, "4" ) |
| 1791 | PORT_DIPSETTING( 0x01, "5" ) |
| 1792 | PORT_DIPSETTING( 0x00, "99 (Cheat)") /* lose a life before getting 2nd bonus life ! */ |
| 1744 | 1793 | PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) |
| 1745 | | PORT_DIPSETTING( 0x04, DEF_STR( Easy ) ) |
| 1794 | PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) |
| 1746 | 1795 | PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) |
| 1747 | | PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) |
| 1796 | PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) |
| 1748 | 1797 | PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) |
| 1749 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) |
| 1750 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1751 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1752 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) |
| 1753 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1754 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1755 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) |
| 1756 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1757 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1758 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) |
| 1759 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
| 1760 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1798 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Allow_Continue ) ) |
| 1799 | PORT_DIPSETTING( 0x00, DEF_STR( No ) ) |
| 1800 | PORT_DIPSETTING( 0x10, DEF_STR( Yes ) ) |
| 1801 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Bonus_Life ) ) /* table at 0xa898 (2* 2 words) in 'cobracomj', 0xa8fe in 'cobracomj' */ |
| 1802 | PORT_DIPSETTING( 0x20, "50k and 150k" ) |
| 1803 | PORT_DIPSETTING( 0x00, "100k and 200k" ) |
| 1804 | PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) |
| 1805 | PORT_DIPUNUSED( 0x80, IP_ACTIVE_LOW ) /* previously "Freeze" : code at 0x8849 in 'cobracomj', 0x88a0 in 'cobracomj' */ |
| 1761 | 1806 | INPUT_PORTS_END |
| 1762 | 1807 | |
| 1763 | 1808 | /******************************************************************************/ |
| r14742 | r14743 | |
| 1962 | 2007 | state->save_item(NAME(state->m_i8751_port1)); |
| 1963 | 2008 | state->save_item(NAME(state->m_i8751_return)); |
| 1964 | 2009 | state->save_item(NAME(state->m_i8751_value)); |
| 2010 | state->save_item(NAME(state->m_coinage_id)); |
| 1965 | 2011 | state->save_item(NAME(state->m_coin1)); |
| 1966 | 2012 | state->save_item(NAME(state->m_coin2)); |
| 2013 | state->save_item(NAME(state->m_need1)); |
| 2014 | state->save_item(NAME(state->m_need2)); |
| 2015 | state->save_item(NAME(state->m_cred1)); |
| 2016 | state->save_item(NAME(state->m_cred2)); |
| 2017 | state->save_item(NAME(state->m_credits)); |
| 1967 | 2018 | state->save_item(NAME(state->m_snd)); |
| 1968 | 2019 | state->save_item(NAME(state->m_msm5205next)); |
| 1969 | 2020 | state->save_item(NAME(state->m_toggle)); |
| r14742 | r14743 | |
| 1980 | 2031 | |
| 1981 | 2032 | state->m_nmi_enable = state->m_i8751_port0 = state->m_i8751_port1 = 0; |
| 1982 | 2033 | state->m_i8751_return = state->m_i8751_value = 0; |
| 1983 | | state->m_coin1 = state->m_coin2 = state->m_snd = 0; |
| 2034 | state->m_coinage_id = 0; |
| 2035 | state->m_coin1 = state->m_coin2 = state->m_credits = state->m_snd = 0; |
| 2036 | state->m_need1 = state->m_need2 = state->m_cred1 = state->m_cred2 = 1; |
| 1984 | 2037 | state->m_msm5205next = 0; |
| 1985 | 2038 | state->m_toggle = 0; |
| 1986 | 2039 | |
| r14742 | r14743 | |
| 1993 | 2046 | } |
| 1994 | 2047 | |
| 1995 | 2048 | |
| 1996 | | static MACHINE_CONFIG_START( cobracom, dec8_state ) |
| 2049 | static MACHINE_CONFIG_START( lastmisn, dec8_state ) |
| 1997 | 2050 | |
| 1998 | 2051 | /* basic machine hardware */ |
| 1999 | 2052 | MCFG_CPU_ADD("maincpu", M6809, 2000000) |
| 2000 | | MCFG_CPU_PROGRAM_MAP(cobra_map) |
| 2001 | | MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse) |
| 2053 | MCFG_CPU_PROGRAM_MAP(lastmisn_map) |
| 2002 | 2054 | |
| 2055 | MCFG_CPU_ADD("sub", M6809, 2000000) |
| 2056 | MCFG_CPU_PROGRAM_MAP(lastmisn_sub_map) |
| 2057 | |
| 2003 | 2058 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2004 | | MCFG_CPU_PROGRAM_MAP(dec8_s_map) |
| 2059 | MCFG_CPU_PROGRAM_MAP(ym3526_s_map) |
| 2005 | 2060 | /* NMIs are caused by the main CPU */ |
| 2061 | MCFG_QUANTUM_TIME(attotime::from_hz(12000)) |
| 2006 | 2062 | |
| 2007 | 2063 | MCFG_MACHINE_START(dec8) |
| 2008 | 2064 | MCFG_MACHINE_RESET(dec8) |
| r14742 | r14743 | |
| 2010 | 2066 | /* video hardware */ |
| 2011 | 2067 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2012 | 2068 | |
| 2013 | | MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0) |
| 2014 | | deco_bac06_device::set_gfx_region_wide(*device, 2,2,0); |
| 2015 | | MCFG_DEVICE_ADD("tilegen2", DECO_BAC06, 0) |
| 2016 | | deco_bac06_device::set_gfx_region_wide(*device, 3,3,0); |
| 2069 | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2070 | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2017 | 2071 | |
| 2018 | | MCFG_DEVICE_ADD("spritegen", DECO_MXC06, 0) |
| 2019 | | deco_mxc06_device::set_gfx_region(*device, 1); |
| 2020 | | |
| 2021 | | |
| 2022 | 2072 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2023 | 2073 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2024 | | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2074 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */) |
| 2025 | 2075 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2026 | 2076 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2027 | | MCFG_SCREEN_UPDATE_STATIC(cobracom) |
| 2077 | MCFG_SCREEN_UPDATE_STATIC(lastmisn) |
| 2028 | 2078 | |
| 2029 | | MCFG_GFXDECODE(cobracom) |
| 2030 | | MCFG_PALETTE_LENGTH(256) |
| 2079 | MCFG_GFXDECODE(shackled) |
| 2080 | MCFG_PALETTE_LENGTH(1024) |
| 2031 | 2081 | |
| 2032 | | MCFG_VIDEO_START(cobracom) |
| 2082 | MCFG_VIDEO_START(lastmisn) |
| 2033 | 2083 | |
| 2034 | 2084 | /* sound hardware */ |
| 2035 | 2085 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 2036 | 2086 | |
| 2037 | 2087 | MCFG_SOUND_ADD("ym1", YM2203, 1500000) |
| 2038 | | MCFG_SOUND_ROUTE(0, "mono", 0.53) |
| 2039 | | MCFG_SOUND_ROUTE(1, "mono", 0.53) |
| 2040 | | MCFG_SOUND_ROUTE(2, "mono", 0.53) |
| 2041 | | MCFG_SOUND_ROUTE(3, "mono", 0.50) |
| 2088 | MCFG_SOUND_ROUTE(0, "mono", 0.23) |
| 2089 | MCFG_SOUND_ROUTE(1, "mono", 0.23) |
| 2090 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2091 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2042 | 2092 | |
| 2043 | | MCFG_SOUND_ADD("ym2", YM3812, 3000000) |
| 2044 | | MCFG_SOUND_CONFIG(ym3812_config) |
| 2093 | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2094 | MCFG_SOUND_CONFIG(ym3526_config) |
| 2045 | 2095 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2046 | 2096 | MACHINE_CONFIG_END |
| 2047 | 2097 | |
| 2048 | | static MACHINE_CONFIG_START( ghostb, dec8_state ) |
| 2098 | static MACHINE_CONFIG_START( shackled, dec8_state ) |
| 2049 | 2099 | |
| 2050 | 2100 | /* basic machine hardware */ |
| 2051 | | MCFG_CPU_ADD("maincpu", HD6309, 3000000*4) |
| 2052 | | MCFG_CPU_PROGRAM_MAP(meikyuh_map) |
| 2053 | | MCFG_CPU_VBLANK_INT("screen", gondo_interrupt) |
| 2101 | MCFG_CPU_ADD("maincpu", M6809, 2000000) |
| 2102 | MCFG_CPU_PROGRAM_MAP(shackled_map) |
| 2054 | 2103 | |
| 2104 | MCFG_CPU_ADD("sub", M6809, 2000000) |
| 2105 | MCFG_CPU_PROGRAM_MAP(shackled_sub_map) |
| 2106 | |
| 2055 | 2107 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2056 | | MCFG_CPU_PROGRAM_MAP(dec8_s_map) |
| 2108 | MCFG_CPU_PROGRAM_MAP(ym3526_s_map) |
| 2057 | 2109 | /* NMIs are caused by the main CPU */ |
| 2110 | MCFG_QUANTUM_TIME(attotime::from_hz(4800)) |
| 2058 | 2111 | |
| 2059 | | MCFG_CPU_ADD("mcu", I8751, 3000000*4) |
| 2060 | | MCFG_CPU_IO_MAP(dec8_mcu_io_map) |
| 2061 | | |
| 2062 | 2112 | MCFG_MACHINE_START(dec8) |
| 2063 | 2113 | MCFG_MACHINE_RESET(dec8) |
| 2064 | 2114 | |
| 2065 | 2115 | /* video hardware */ |
| 2066 | 2116 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2067 | 2117 | |
| 2068 | | MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0) |
| 2069 | | deco_bac06_device::set_gfx_region_wide(*device, 2,2,0); |
| 2070 | | |
| 2071 | 2118 | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2072 | 2119 | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2073 | 2120 | |
| r14742 | r14743 | |
| 2076 | 2123 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */) |
| 2077 | 2124 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2078 | 2125 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2079 | | MCFG_SCREEN_UPDATE_STATIC(ghostb) |
| 2080 | | MCFG_SCREEN_VBLANK_STATIC(dec8) |
| 2126 | MCFG_SCREEN_UPDATE_STATIC(shackled) |
| 2081 | 2127 | |
| 2082 | | MCFG_GFXDECODE(ghostb) |
| 2128 | MCFG_GFXDECODE(shackled) |
| 2083 | 2129 | MCFG_PALETTE_LENGTH(1024) |
| 2084 | 2130 | |
| 2085 | | MCFG_PALETTE_INIT(ghostb) |
| 2086 | | MCFG_VIDEO_START(ghostb) |
| 2131 | MCFG_VIDEO_START(shackled) |
| 2087 | 2132 | |
| 2088 | 2133 | /* sound hardware */ |
| 2089 | 2134 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| r14742 | r14743 | |
| 2094 | 2139 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2095 | 2140 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2096 | 2141 | |
| 2097 | | MCFG_SOUND_ADD("ym2", YM3812, 3000000) |
| 2098 | | MCFG_SOUND_CONFIG(ym3812_config) |
| 2142 | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2143 | MCFG_SOUND_CONFIG(ym3526_config) |
| 2099 | 2144 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2100 | 2145 | MACHINE_CONFIG_END |
| 2101 | 2146 | |
| 2147 | static MACHINE_CONFIG_START( gondo, dec8_state ) |
| 2102 | 2148 | |
| 2103 | | static MACHINE_CONFIG_START( oscar, dec8_state ) |
| 2104 | | |
| 2105 | 2149 | /* basic machine hardware */ |
| 2106 | | MCFG_CPU_ADD("maincpu", HD6309, XTAL_12MHz/2) /* verified on pcb */ |
| 2107 | | MCFG_CPU_PROGRAM_MAP(oscar_map) |
| 2108 | | MCFG_CPU_VBLANK_INT("screen", oscar_interrupt) |
| 2150 | MCFG_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP */ |
| 2151 | MCFG_CPU_PROGRAM_MAP(gondo_map) |
| 2152 | MCFG_CPU_VBLANK_INT("screen", gondo_interrupt) |
| 2109 | 2153 | |
| 2110 | | MCFG_CPU_ADD("sub", HD6309, XTAL_12MHz/2) /* verified on pcb */ |
| 2111 | | MCFG_CPU_PROGRAM_MAP(oscar_sub_map) |
| 2112 | | |
| 2113 | | MCFG_CPU_ADD("audiocpu", M6502, XTAL_12MHz/8) |
| 2154 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2114 | 2155 | MCFG_CPU_PROGRAM_MAP(oscar_s_map) |
| 2115 | 2156 | /* NMIs are caused by the main CPU */ |
| 2116 | | MCFG_QUANTUM_TIME(attotime::from_hz(2400)) /* 40 CPU slices per frame */ |
| 2117 | 2157 | |
| 2158 | MCFG_CPU_ADD("mcu", I8751, XTAL_8MHz) |
| 2159 | MCFG_CPU_IO_MAP(dec8_mcu_io_map) |
| 2160 | |
| 2118 | 2161 | MCFG_MACHINE_START(dec8) |
| 2119 | 2162 | MCFG_MACHINE_RESET(dec8) |
| 2120 | 2163 | |
| 2121 | 2164 | /* video hardware */ |
| 2122 | 2165 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2123 | 2166 | |
| 2124 | | MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0) |
| 2125 | | deco_bac06_device::set_gfx_region_wide(*device, 2,2,0); |
| 2167 | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2168 | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2126 | 2169 | |
| 2127 | | MCFG_DEVICE_ADD("spritegen", DECO_MXC06, 0) |
| 2128 | | deco_mxc06_device::set_gfx_region(*device, 1); |
| 2129 | | |
| 2130 | 2170 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2131 | 2171 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2132 | | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */) |
| 2172 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2133 | 2173 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2134 | 2174 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2135 | | MCFG_SCREEN_UPDATE_STATIC(oscar) |
| 2175 | MCFG_SCREEN_UPDATE_STATIC(gondo) |
| 2176 | MCFG_SCREEN_VBLANK_STATIC(dec8) |
| 2136 | 2177 | |
| 2137 | | MCFG_GFXDECODE(oscar) |
| 2138 | | MCFG_PALETTE_LENGTH(512) |
| 2178 | MCFG_GFXDECODE(gondo) |
| 2179 | MCFG_PALETTE_LENGTH(1024) |
| 2139 | 2180 | |
| 2140 | | MCFG_VIDEO_START(oscar) |
| 2181 | MCFG_VIDEO_START(gondo) |
| 2141 | 2182 | |
| 2142 | 2183 | /* sound hardware */ |
| 2143 | 2184 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 2144 | 2185 | |
| 2145 | | MCFG_SOUND_ADD("ym1", YM2203, XTAL_12MHz/8) /* verified on pcb */ |
| 2186 | MCFG_SOUND_ADD("ym1", YM2203, 1500000) |
| 2146 | 2187 | MCFG_SOUND_ROUTE(0, "mono", 0.23) |
| 2147 | 2188 | MCFG_SOUND_ROUTE(1, "mono", 0.23) |
| 2148 | 2189 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2149 | 2190 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2150 | 2191 | |
| 2151 | | MCFG_SOUND_ADD("ym2", YM3526, XTAL_12MHz/4) /* verified on pcb */ |
| 2192 | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2152 | 2193 | MCFG_SOUND_CONFIG(ym3526_config) |
| 2153 | 2194 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2154 | 2195 | MACHINE_CONFIG_END |
| 2155 | 2196 | |
| 2197 | static MACHINE_CONFIG_START( garyoret, dec8_state ) |
| 2156 | 2198 | |
| 2157 | | static MACHINE_CONFIG_START( srdarwin, dec8_state ) |
| 2158 | | |
| 2159 | 2199 | /* basic machine hardware */ |
| 2160 | | MCFG_CPU_ADD("maincpu", M6809,2000000) /* MC68A09EP */ |
| 2161 | | MCFG_CPU_PROGRAM_MAP(srdarwin_map) |
| 2162 | | MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse) |
| 2200 | MCFG_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP */ |
| 2201 | MCFG_CPU_PROGRAM_MAP(garyoret_map) |
| 2202 | MCFG_CPU_VBLANK_INT("screen", gondo_interrupt) |
| 2163 | 2203 | |
| 2164 | 2204 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2165 | | MCFG_CPU_PROGRAM_MAP(dec8_s_map) |
| 2205 | MCFG_CPU_PROGRAM_MAP(oscar_s_map) |
| 2166 | 2206 | /* NMIs are caused by the main CPU */ |
| 2167 | 2207 | |
| 2208 | MCFG_CPU_ADD("mcu", I8751, XTAL_8MHz) |
| 2209 | MCFG_CPU_IO_MAP(dec8_mcu_io_map) |
| 2210 | |
| 2168 | 2211 | MCFG_MACHINE_START(dec8) |
| 2169 | 2212 | MCFG_MACHINE_RESET(dec8) |
| 2170 | 2213 | |
| 2171 | 2214 | /* video hardware */ |
| 2172 | 2215 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2173 | 2216 | |
| 2217 | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2218 | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2219 | |
| 2174 | 2220 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2175 | 2221 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2176 | 2222 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2177 | 2223 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2178 | 2224 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2179 | | MCFG_SCREEN_UPDATE_STATIC(srdarwin) |
| 2225 | MCFG_SCREEN_UPDATE_STATIC(garyoret) |
| 2226 | MCFG_SCREEN_VBLANK_STATIC(dec8) |
| 2180 | 2227 | |
| 2181 | | MCFG_GFXDECODE(srdarwin) |
| 2182 | | MCFG_PALETTE_LENGTH(144) |
| 2228 | MCFG_GFXDECODE(gondo) |
| 2229 | MCFG_PALETTE_LENGTH(1024) |
| 2183 | 2230 | |
| 2184 | | MCFG_VIDEO_START(srdarwin) |
| 2231 | MCFG_VIDEO_START(garyoret) |
| 2185 | 2232 | |
| 2186 | 2233 | /* sound hardware */ |
| 2187 | 2234 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| r14742 | r14743 | |
| 2192 | 2239 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2193 | 2240 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2194 | 2241 | |
| 2195 | | MCFG_SOUND_ADD("ym2", YM3812, 3000000) |
| 2196 | | MCFG_SOUND_CONFIG(ym3812_config) |
| 2242 | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2243 | MCFG_SOUND_CONFIG(ym3526_config) |
| 2197 | 2244 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2198 | 2245 | MACHINE_CONFIG_END |
| 2199 | 2246 | |
| 2200 | | static MACHINE_CONFIG_START( gondo, dec8_state ) |
| 2247 | static MACHINE_CONFIG_START( ghostb, dec8_state ) |
| 2201 | 2248 | |
| 2202 | 2249 | /* basic machine hardware */ |
| 2203 | | MCFG_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP */ |
| 2204 | | MCFG_CPU_PROGRAM_MAP(gondo_map) |
| 2250 | MCFG_CPU_ADD("maincpu", HD6309, 3000000*4) |
| 2251 | MCFG_CPU_PROGRAM_MAP(meikyuh_map) |
| 2205 | 2252 | MCFG_CPU_VBLANK_INT("screen", gondo_interrupt) |
| 2206 | 2253 | |
| 2207 | 2254 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2208 | | MCFG_CPU_PROGRAM_MAP(oscar_s_map) |
| 2255 | MCFG_CPU_PROGRAM_MAP(dec8_s_map) |
| 2209 | 2256 | /* NMIs are caused by the main CPU */ |
| 2210 | 2257 | |
| 2211 | | MCFG_CPU_ADD("mcu", I8751, XTAL_8MHz) |
| 2258 | MCFG_CPU_ADD("mcu", I8751, 3000000*4) |
| 2212 | 2259 | MCFG_CPU_IO_MAP(dec8_mcu_io_map) |
| 2213 | 2260 | |
| 2214 | 2261 | MCFG_MACHINE_START(dec8) |
| r14742 | r14743 | |
| 2217 | 2264 | /* video hardware */ |
| 2218 | 2265 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2219 | 2266 | |
| 2267 | MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0) |
| 2268 | deco_bac06_device::set_gfx_region_wide(*device, 2,2,0); |
| 2269 | |
| 2220 | 2270 | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2221 | 2271 | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2222 | 2272 | |
| 2223 | 2273 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2224 | 2274 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2225 | | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2275 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */) |
| 2226 | 2276 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2227 | 2277 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2228 | | MCFG_SCREEN_UPDATE_STATIC(gondo) |
| 2278 | MCFG_SCREEN_UPDATE_STATIC(ghostb) |
| 2229 | 2279 | MCFG_SCREEN_VBLANK_STATIC(dec8) |
| 2230 | 2280 | |
| 2231 | | MCFG_GFXDECODE(gondo) |
| 2281 | MCFG_GFXDECODE(ghostb) |
| 2232 | 2282 | MCFG_PALETTE_LENGTH(1024) |
| 2233 | 2283 | |
| 2234 | | MCFG_VIDEO_START(gondo) |
| 2284 | MCFG_PALETTE_INIT(ghostb) |
| 2285 | MCFG_VIDEO_START(ghostb) |
| 2235 | 2286 | |
| 2236 | 2287 | /* sound hardware */ |
| 2237 | 2288 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| r14742 | r14743 | |
| 2242 | 2293 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2243 | 2294 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2244 | 2295 | |
| 2245 | | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2246 | | MCFG_SOUND_CONFIG(ym3526_config) |
| 2296 | MCFG_SOUND_ADD("ym2", YM3812, 3000000) |
| 2297 | MCFG_SOUND_CONFIG(ym3812_config) |
| 2247 | 2298 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2248 | 2299 | MACHINE_CONFIG_END |
| 2249 | 2300 | |
| 2250 | | static MACHINE_CONFIG_START( lastmisn, dec8_state ) |
| 2301 | static MACHINE_CONFIG_START( csilver, dec8_state ) |
| 2251 | 2302 | |
| 2252 | 2303 | /* basic machine hardware */ |
| 2253 | | MCFG_CPU_ADD("maincpu", M6809, 2000000) |
| 2254 | | MCFG_CPU_PROGRAM_MAP(lastmisn_map) |
| 2304 | MCFG_CPU_ADD("maincpu", M6809, XTAL_12MHz/8) /* verified on pcb */ |
| 2305 | MCFG_CPU_PROGRAM_MAP(csilver_map) |
| 2255 | 2306 | |
| 2256 | | MCFG_CPU_ADD("sub", M6809, 2000000) |
| 2257 | | MCFG_CPU_PROGRAM_MAP(lastmisn_sub_map) |
| 2307 | MCFG_CPU_ADD("sub", M6809, XTAL_12MHz/8) /* verified on pcb */ |
| 2308 | MCFG_CPU_PROGRAM_MAP(csilver_sub_map) |
| 2309 | MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse) |
| 2258 | 2310 | |
| 2259 | | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2260 | | MCFG_CPU_PROGRAM_MAP(ym3526_s_map) |
| 2311 | MCFG_CPU_ADD("audiocpu", M6502, XTAL_12MHz/8) /* verified on pcb */ |
| 2312 | MCFG_CPU_PROGRAM_MAP(csilver_s_map) |
| 2261 | 2313 | /* NMIs are caused by the main CPU */ |
| 2262 | | MCFG_QUANTUM_TIME(attotime::from_hz(12000)) |
| 2314 | MCFG_QUANTUM_TIME(attotime::from_hz(6000)) |
| 2263 | 2315 | |
| 2264 | 2316 | MCFG_MACHINE_START(dec8) |
| 2265 | 2317 | MCFG_MACHINE_RESET(dec8) |
| r14742 | r14743 | |
| 2272 | 2324 | |
| 2273 | 2325 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2274 | 2326 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2275 | | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */) |
| 2327 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2276 | 2328 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2277 | 2329 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2278 | 2330 | MCFG_SCREEN_UPDATE_STATIC(lastmisn) |
| r14742 | r14743 | |
| 2285 | 2337 | /* sound hardware */ |
| 2286 | 2338 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 2287 | 2339 | |
| 2288 | | MCFG_SOUND_ADD("ym1", YM2203, 1500000) |
| 2340 | MCFG_SOUND_ADD("ym1", YM2203, XTAL_12MHz/8) /* verified on pcb */ |
| 2289 | 2341 | MCFG_SOUND_ROUTE(0, "mono", 0.23) |
| 2290 | 2342 | MCFG_SOUND_ROUTE(1, "mono", 0.23) |
| 2291 | 2343 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2292 | 2344 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2293 | 2345 | |
| 2294 | | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2346 | MCFG_SOUND_ADD("ym2", YM3526, XTAL_12MHz/4) /* verified on pcb */ |
| 2295 | 2347 | MCFG_SOUND_CONFIG(ym3526_config) |
| 2296 | 2348 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2349 | |
| 2350 | MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* verified on pcb */ |
| 2351 | MCFG_SOUND_CONFIG(msm5205_config) |
| 2352 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.88) |
| 2297 | 2353 | MACHINE_CONFIG_END |
| 2298 | 2354 | |
| 2299 | | static MACHINE_CONFIG_START( shackled, dec8_state ) |
| 2355 | static MACHINE_CONFIG_START( oscar, dec8_state ) |
| 2300 | 2356 | |
| 2301 | 2357 | /* basic machine hardware */ |
| 2302 | | MCFG_CPU_ADD("maincpu", M6809, 2000000) |
| 2303 | | MCFG_CPU_PROGRAM_MAP(shackled_map) |
| 2358 | MCFG_CPU_ADD("maincpu", HD6309, XTAL_12MHz/2) /* verified on pcb */ |
| 2359 | MCFG_CPU_PROGRAM_MAP(oscar_map) |
| 2360 | MCFG_CPU_VBLANK_INT("screen", oscar_interrupt) |
| 2304 | 2361 | |
| 2305 | | MCFG_CPU_ADD("sub", M6809, 2000000) |
| 2306 | | MCFG_CPU_PROGRAM_MAP(shackled_sub_map) |
| 2362 | MCFG_CPU_ADD("sub", HD6309, XTAL_12MHz/2) /* verified on pcb */ |
| 2363 | MCFG_CPU_PROGRAM_MAP(oscar_sub_map) |
| 2307 | 2364 | |
| 2308 | | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2309 | | MCFG_CPU_PROGRAM_MAP(ym3526_s_map) |
| 2365 | MCFG_CPU_ADD("audiocpu", M6502, XTAL_12MHz/8) |
| 2366 | MCFG_CPU_PROGRAM_MAP(oscar_s_map) |
| 2310 | 2367 | /* NMIs are caused by the main CPU */ |
| 2311 | | MCFG_QUANTUM_TIME(attotime::from_hz(4800)) |
| 2368 | MCFG_QUANTUM_TIME(attotime::from_hz(2400)) /* 40 CPU slices per frame */ |
| 2312 | 2369 | |
| 2313 | 2370 | MCFG_MACHINE_START(dec8) |
| 2314 | 2371 | MCFG_MACHINE_RESET(dec8) |
| r14742 | r14743 | |
| 2316 | 2373 | /* video hardware */ |
| 2317 | 2374 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2318 | 2375 | |
| 2319 | | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2320 | | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2376 | MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0) |
| 2377 | deco_bac06_device::set_gfx_region_wide(*device, 2,2,0); |
| 2321 | 2378 | |
| 2379 | MCFG_DEVICE_ADD("spritegen", DECO_MXC06, 0) |
| 2380 | deco_mxc06_device::set_gfx_region(*device, 1); |
| 2381 | |
| 2322 | 2382 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2323 | 2383 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2324 | 2384 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */) |
| 2325 | 2385 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2326 | 2386 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2327 | | MCFG_SCREEN_UPDATE_STATIC(shackled) |
| 2387 | MCFG_SCREEN_UPDATE_STATIC(oscar) |
| 2328 | 2388 | |
| 2329 | | MCFG_GFXDECODE(shackled) |
| 2330 | | MCFG_PALETTE_LENGTH(1024) |
| 2389 | MCFG_GFXDECODE(oscar) |
| 2390 | MCFG_PALETTE_LENGTH(512) |
| 2331 | 2391 | |
| 2332 | | MCFG_VIDEO_START(shackled) |
| 2392 | MCFG_VIDEO_START(oscar) |
| 2333 | 2393 | |
| 2334 | 2394 | /* sound hardware */ |
| 2335 | 2395 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 2336 | 2396 | |
| 2337 | | MCFG_SOUND_ADD("ym1", YM2203, 1500000) |
| 2397 | MCFG_SOUND_ADD("ym1", YM2203, XTAL_12MHz/8) /* verified on pcb */ |
| 2338 | 2398 | MCFG_SOUND_ROUTE(0, "mono", 0.23) |
| 2339 | 2399 | MCFG_SOUND_ROUTE(1, "mono", 0.23) |
| 2340 | 2400 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2341 | 2401 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2342 | 2402 | |
| 2343 | | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2403 | MCFG_SOUND_ADD("ym2", YM3526, XTAL_12MHz/4) /* verified on pcb */ |
| 2344 | 2404 | MCFG_SOUND_CONFIG(ym3526_config) |
| 2345 | 2405 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2346 | 2406 | MACHINE_CONFIG_END |
| 2347 | 2407 | |
| 2348 | | static MACHINE_CONFIG_START( csilver, dec8_state ) |
| 2408 | static MACHINE_CONFIG_START( srdarwin, dec8_state ) |
| 2349 | 2409 | |
| 2350 | 2410 | /* basic machine hardware */ |
| 2351 | | MCFG_CPU_ADD("maincpu", M6809, XTAL_12MHz/8) /* verified on pcb */ |
| 2352 | | MCFG_CPU_PROGRAM_MAP(csilver_map) |
| 2353 | | |
| 2354 | | MCFG_CPU_ADD("sub", M6809, XTAL_12MHz/8) /* verified on pcb */ |
| 2355 | | MCFG_CPU_PROGRAM_MAP(csilver_sub_map) |
| 2411 | MCFG_CPU_ADD("maincpu", M6809,2000000) /* MC68A09EP */ |
| 2412 | MCFG_CPU_PROGRAM_MAP(srdarwin_map) |
| 2356 | 2413 | MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse) |
| 2357 | 2414 | |
| 2358 | | MCFG_CPU_ADD("audiocpu", M6502, XTAL_12MHz/8) /* verified on pcb */ |
| 2359 | | MCFG_CPU_PROGRAM_MAP(csilver_s_map) |
| 2415 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2416 | MCFG_CPU_PROGRAM_MAP(dec8_s_map) |
| 2360 | 2417 | /* NMIs are caused by the main CPU */ |
| 2361 | | MCFG_QUANTUM_TIME(attotime::from_hz(6000)) |
| 2362 | 2418 | |
| 2363 | 2419 | MCFG_MACHINE_START(dec8) |
| 2364 | 2420 | MCFG_MACHINE_RESET(dec8) |
| r14742 | r14743 | |
| 2366 | 2422 | /* video hardware */ |
| 2367 | 2423 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2368 | 2424 | |
| 2369 | | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2370 | | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2371 | | |
| 2372 | 2425 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2373 | 2426 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2374 | 2427 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2375 | 2428 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2376 | 2429 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2377 | | MCFG_SCREEN_UPDATE_STATIC(lastmisn) |
| 2430 | MCFG_SCREEN_UPDATE_STATIC(srdarwin) |
| 2378 | 2431 | |
| 2379 | | MCFG_GFXDECODE(shackled) |
| 2380 | | MCFG_PALETTE_LENGTH(1024) |
| 2432 | MCFG_GFXDECODE(srdarwin) |
| 2433 | MCFG_PALETTE_LENGTH(144) |
| 2381 | 2434 | |
| 2382 | | MCFG_VIDEO_START(lastmisn) |
| 2435 | MCFG_VIDEO_START(srdarwin) |
| 2383 | 2436 | |
| 2384 | 2437 | /* sound hardware */ |
| 2385 | 2438 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 2386 | 2439 | |
| 2387 | | MCFG_SOUND_ADD("ym1", YM2203, XTAL_12MHz/8) /* verified on pcb */ |
| 2440 | MCFG_SOUND_ADD("ym1", YM2203, 1500000) |
| 2388 | 2441 | MCFG_SOUND_ROUTE(0, "mono", 0.23) |
| 2389 | 2442 | MCFG_SOUND_ROUTE(1, "mono", 0.23) |
| 2390 | 2443 | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2391 | 2444 | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2392 | 2445 | |
| 2393 | | MCFG_SOUND_ADD("ym2", YM3526, XTAL_12MHz/4) /* verified on pcb */ |
| 2394 | | MCFG_SOUND_CONFIG(ym3526_config) |
| 2446 | MCFG_SOUND_ADD("ym2", YM3812, 3000000) |
| 2447 | MCFG_SOUND_CONFIG(ym3812_config) |
| 2395 | 2448 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2396 | | |
| 2397 | | MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* verified on pcb */ |
| 2398 | | MCFG_SOUND_CONFIG(msm5205_config) |
| 2399 | | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.88) |
| 2400 | 2449 | MACHINE_CONFIG_END |
| 2401 | 2450 | |
| 2402 | | static MACHINE_CONFIG_START( garyoret, dec8_state ) |
| 2451 | static MACHINE_CONFIG_START( cobracom, dec8_state ) |
| 2403 | 2452 | |
| 2404 | 2453 | /* basic machine hardware */ |
| 2405 | | MCFG_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP */ |
| 2406 | | MCFG_CPU_PROGRAM_MAP(garyoret_map) |
| 2407 | | MCFG_CPU_VBLANK_INT("screen", gondo_interrupt) |
| 2454 | MCFG_CPU_ADD("maincpu", M6809, 2000000) |
| 2455 | MCFG_CPU_PROGRAM_MAP(cobra_map) |
| 2456 | MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse) |
| 2408 | 2457 | |
| 2409 | 2458 | MCFG_CPU_ADD("audiocpu", M6502, 1500000) |
| 2410 | | MCFG_CPU_PROGRAM_MAP(oscar_s_map) |
| 2459 | MCFG_CPU_PROGRAM_MAP(dec8_s_map) |
| 2411 | 2460 | /* NMIs are caused by the main CPU */ |
| 2412 | 2461 | |
| 2413 | 2462 | MCFG_MACHINE_START(dec8) |
| r14742 | r14743 | |
| 2416 | 2465 | /* video hardware */ |
| 2417 | 2466 | MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") |
| 2418 | 2467 | |
| 2419 | | MCFG_DEVICE_ADD("spritegen", DECO_KARNOVSPRITES, 0) |
| 2420 | | deco_karnovsprites_device::set_gfx_region(*device, 1); |
| 2468 | MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0) |
| 2469 | deco_bac06_device::set_gfx_region_wide(*device, 2,2,0); |
| 2470 | MCFG_DEVICE_ADD("tilegen2", DECO_BAC06, 0) |
| 2471 | deco_bac06_device::set_gfx_region_wide(*device, 3,3,0); |
| 2421 | 2472 | |
| 2473 | MCFG_DEVICE_ADD("spritegen", DECO_MXC06, 0) |
| 2474 | deco_mxc06_device::set_gfx_region(*device, 1); |
| 2475 | |
| 2476 | |
| 2422 | 2477 | MCFG_SCREEN_ADD("screen", RASTER) |
| 2423 | 2478 | MCFG_SCREEN_REFRESH_RATE(58) |
| 2424 | 2479 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */) |
| 2425 | 2480 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 2426 | 2481 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) |
| 2427 | | MCFG_SCREEN_UPDATE_STATIC(garyoret) |
| 2428 | | MCFG_SCREEN_VBLANK_STATIC(dec8) |
| 2482 | MCFG_SCREEN_UPDATE_STATIC(cobracom) |
| 2429 | 2483 | |
| 2430 | | MCFG_GFXDECODE(gondo) |
| 2431 | | MCFG_PALETTE_LENGTH(1024) |
| 2484 | MCFG_GFXDECODE(cobracom) |
| 2485 | MCFG_PALETTE_LENGTH(256) |
| 2432 | 2486 | |
| 2433 | | MCFG_VIDEO_START(garyoret) |
| 2487 | MCFG_VIDEO_START(cobracom) |
| 2434 | 2488 | |
| 2435 | 2489 | /* sound hardware */ |
| 2436 | 2490 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 2437 | 2491 | |
| 2438 | 2492 | MCFG_SOUND_ADD("ym1", YM2203, 1500000) |
| 2439 | | MCFG_SOUND_ROUTE(0, "mono", 0.23) |
| 2440 | | MCFG_SOUND_ROUTE(1, "mono", 0.23) |
| 2441 | | MCFG_SOUND_ROUTE(2, "mono", 0.23) |
| 2442 | | MCFG_SOUND_ROUTE(3, "mono", 0.20) |
| 2493 | MCFG_SOUND_ROUTE(0, "mono", 0.53) |
| 2494 | MCFG_SOUND_ROUTE(1, "mono", 0.53) |
| 2495 | MCFG_SOUND_ROUTE(2, "mono", 0.53) |
| 2496 | MCFG_SOUND_ROUTE(3, "mono", 0.50) |
| 2443 | 2497 | |
| 2444 | | MCFG_SOUND_ADD("ym2", YM3526, 3000000) |
| 2445 | | MCFG_SOUND_CONFIG(ym3526_config) |
| 2498 | MCFG_SOUND_ADD("ym2", YM3812, 3000000) |
| 2499 | MCFG_SOUND_CONFIG(ym3812_config) |
| 2446 | 2500 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) |
| 2447 | 2501 | MACHINE_CONFIG_END |
| 2448 | 2502 | |
| 2449 | 2503 | /******************************************************************************/ |
| 2450 | 2504 | |
| 2451 | | ROM_START( cobracom ) |
| 2452 | | ROM_REGION( 0x30000, "maincpu", 0 ) |
| 2453 | | ROM_LOAD( "el11-5.bin", 0x08000, 0x08000, CRC(af0a8b05) SHA1(096e4e7f2785a20bfaec14277413ce4e20e90214) ) |
| 2454 | | ROM_LOAD( "el12-4.bin", 0x10000, 0x10000, CRC(7a44ef38) SHA1(d7dc277dce08f9d073290e100be4a7ca2e2b82cb) ) |
| 2455 | | ROM_LOAD( "el13.bin", 0x20000, 0x10000, CRC(04505acb) SHA1(2220efb277884588859375dab9960f04f07273a7) ) |
| 2505 | ROM_START( lastmisn ) |
| 2506 | ROM_REGION( 0x20000, "maincpu", 0 ) |
| 2507 | ROM_LOAD( "dl03-6.13h", 0x08000, 0x08000, CRC(47751a5e) SHA1(190970a6eb849781e8853f2bed7b34ac44e569ca) ) /* Rev 6 roms */ |
| 2508 | ROM_LOAD( "lm_dl04.7h", 0x10000, 0x10000, CRC(7dea1552) SHA1(920684413e2ba4313111e79821c5714977b26b1a) ) |
| 2456 | 2509 | |
| 2510 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 2511 | ROM_LOAD( "lm_dl02.18h", 0x0000, 0x10000, CRC(ec9b5daf) SHA1(86d47bad123676abc82dd7c92943878c54c33075) ) |
| 2512 | |
| 2457 | 2513 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2458 | | ROM_LOAD( "el10-4.bin", 0x8000, 0x8000, CRC(edfad118) SHA1(10de8805472346fead62460a3fdc09ae26a4e0d5) ) |
| 2514 | ROM_LOAD( "dl05-.5h", 0x8000, 0x8000, CRC(1a5df8c0) SHA1(83d36b1d5fb87f50c44f3110804d6bbdbbc0da99) ) |
| 2459 | 2515 | |
| 2460 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2461 | | ROM_LOAD( "el14.bin", 0x00000, 0x08000, CRC(47246177) SHA1(51b025740dc03b04009ac97d8d110ab521894386) ) |
| 2516 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2517 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 2462 | 2518 | |
| 2463 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2464 | | ROM_LOAD( "el00-4.bin", 0x00000, 0x10000, CRC(122da2a8) SHA1(ce72f16abf7e5449c7d044d4b827e8735c3be0ff) ) |
| 2465 | | ROM_LOAD( "el01-4.bin", 0x20000, 0x10000, CRC(27bf705b) SHA1(196c35aaf3816d3eef4c2af6d146a90a48365d33) ) |
| 2466 | | ROM_LOAD( "el02-4.bin", 0x40000, 0x10000, CRC(c86fede6) SHA1(97584fa19591651fcfb39d1b2b6306165e93554c) ) |
| 2467 | | ROM_LOAD( "el03-4.bin", 0x60000, 0x10000, CRC(1d8a855b) SHA1(429261c200dddc62a330be8aea150b2037133188) ) |
| 2519 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2520 | ROM_LOAD( "dl01-.2a", 0x00000, 0x2000, CRC(f3787a5d) SHA1(3701df42cb2aca951963703e72c6c7b272eed82b) ) |
| 2521 | ROM_CONTINUE( 0x06000, 0x2000 ) |
| 2522 | ROM_CONTINUE( 0x04000, 0x2000 ) |
| 2523 | ROM_CONTINUE( 0x02000, 0x2000 ) |
| 2468 | 2524 | |
| 2469 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles 1 */ |
| 2470 | | ROM_LOAD( "el05.bin", 0x00000, 0x10000, CRC(1c4f6033) SHA1(4a7dece911166d1ff5f41df6ec5140596206d8d4) ) |
| 2471 | | ROM_LOAD( "el06.bin", 0x20000, 0x10000, CRC(d24ba794) SHA1(b34b7bbaab4ebdd81c87d363f087cc92e27e8d1c) ) |
| 2472 | | ROM_LOAD( "el04.bin", 0x40000, 0x10000, CRC(d80a49ce) SHA1(1a92413b5ab53f80e44a954433e69ec5fe2c0aa6) ) |
| 2473 | | ROM_LOAD( "el07.bin", 0x60000, 0x10000, CRC(6d771fc3) SHA1(f29979f3aa07bdb544fb0c1d773c5558b4533390) ) |
| 2525 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2526 | ROM_LOAD( "dl11-.13f", 0x00000, 0x08000, CRC(36579d3b) SHA1(8edf952dafcd5bc66e08074687f0bec809fd4c2f) ) |
| 2527 | ROM_LOAD( "dl12-.9f", 0x20000, 0x08000, CRC(2ba6737e) SHA1(c5e4c27726bf14e9cd60d62e2f17ea5be8093c37) ) |
| 2528 | ROM_LOAD( "dl13-.8f", 0x40000, 0x08000, CRC(39a7dc93) SHA1(3b7968fd06ac0379525c1d3e73f8bbe18ea36439) ) |
| 2529 | ROM_LOAD( "dl10-.16f", 0x60000, 0x08000, CRC(fe275ea8) SHA1(2f089f96583235f1f5226ef2a64b430d84efbeee) ) |
| 2474 | 2530 | |
| 2475 | | ROM_REGION( 0x80000, "gfx4", 0 ) /* tiles 2 */ |
| 2476 | | ROM_LOAD( "el08.bin", 0x00000, 0x08000, CRC(cb0dcf4c) SHA1(e14853f83ee9ba5cbf2eb1e085fee4e65af3cc25) ) |
| 2477 | | ROM_CONTINUE( 0x40000, 0x08000 ) |
| 2478 | | ROM_LOAD( "el09.bin", 0x20000, 0x08000, CRC(1fae5be7) SHA1(be6e090b0b82648b385d9b6d11775f3ff40f0af3) ) |
| 2479 | | ROM_CONTINUE( 0x60000, 0x08000 ) |
| 2531 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2532 | ROM_LOAD( "dl09-.12k", 0x00000, 0x10000, CRC(6a5a0c5d) SHA1(0106cf693c284be5faf96e56b651fab92a410915) ) |
| 2533 | ROM_LOAD( "dl08-.14k", 0x20000, 0x10000, CRC(3b38cfce) SHA1(d6829bed6916fb301c08031bd466ee4dcc05b275) ) |
| 2534 | ROM_LOAD( "dl07-.15k", 0x40000, 0x10000, CRC(1b60604d) SHA1(1ee15cfdac87f7eeb92050766293b894cfad1466) ) |
| 2535 | ROM_LOAD( "dl06-.17k", 0x60000, 0x10000, CRC(c43c26a7) SHA1(896e278935b100edc12cd970469f2e8293eb96cc) ) |
| 2536 | |
| 2537 | ROM_REGION( 256, "proms", 0 ) |
| 2538 | ROM_LOAD( "dl-14.9c", 0x00000, 0x100, CRC(2e55aa12) SHA1(c0f2b9649467eb9d2c1e47589b5990f5c5e8cc93) ) /* Priority (Not yet used) */ |
| 2480 | 2539 | ROM_END |
| 2481 | 2540 | |
| 2482 | | ROM_START( cobracomj ) |
| 2483 | | ROM_REGION( 0x30000, "maincpu", 0 ) |
| 2484 | | ROM_LOAD( "eh-11.rom", 0x08000, 0x08000, CRC(868637e1) SHA1(8b1e3e045e341bb94b1f6c7d89198b22e6c19de7) ) |
| 2485 | | ROM_LOAD( "eh-12.rom", 0x10000, 0x10000, CRC(7c878a83) SHA1(9b2a3083c6dae69626fdab16d97517d30eaa1859) ) |
| 2486 | | ROM_LOAD( "el13.bin", 0x20000, 0x10000, CRC(04505acb) SHA1(2220efb277884588859375dab9960f04f07273a7) ) |
| 2541 | ROM_START( lastmisno ) |
| 2542 | ROM_REGION( 0x20000, "maincpu", 0 ) |
| 2543 | ROM_LOAD( "lm_dl03.13h", 0x08000, 0x08000, CRC(357f5f6b) SHA1(a114aac50db62a6bcb943681e517ad7c88ec47f4) ) /* Rev 5 roms */ |
| 2544 | ROM_LOAD( "lm_dl04.7h", 0x10000, 0x10000, CRC(7dea1552) SHA1(920684413e2ba4313111e79821c5714977b26b1a) ) |
| 2487 | 2545 | |
| 2546 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 2547 | ROM_LOAD( "lm_dl02.18h", 0x0000, 0x10000, CRC(ec9b5daf) SHA1(86d47bad123676abc82dd7c92943878c54c33075) ) |
| 2548 | |
| 2488 | 2549 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2489 | | ROM_LOAD( "eh-10.rom", 0x8000, 0x8000, CRC(62ca5e89) SHA1(b04acaccc58846e0d277868a873a440b7f8071b0) ) |
| 2550 | ROM_LOAD( "dl05-.5h", 0x8000, 0x8000, CRC(1a5df8c0) SHA1(83d36b1d5fb87f50c44f3110804d6bbdbbc0da99) ) |
| 2490 | 2551 | |
| 2552 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2553 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 2554 | |
| 2491 | 2555 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2492 | | ROM_LOAD( "el14.bin", 0x00000, 0x08000, CRC(47246177) SHA1(51b025740dc03b04009ac97d8d110ab521894386) ) |
| 2556 | ROM_LOAD( "dl01-.2a", 0x00000, 0x2000, CRC(f3787a5d) SHA1(3701df42cb2aca951963703e72c6c7b272eed82b) ) |
| 2557 | ROM_CONTINUE( 0x06000, 0x2000 ) |
| 2558 | ROM_CONTINUE( 0x04000, 0x2000 ) |
| 2559 | ROM_CONTINUE( 0x02000, 0x2000 ) |
| 2493 | 2560 | |
| 2494 | 2561 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2495 | | ROM_LOAD( "eh-00.rom", 0x00000, 0x10000, CRC(d96b6797) SHA1(01c4a9f2bebb13cba14636690cd5356db73f045e) ) |
| 2496 | | ROM_LOAD( "eh-01.rom", 0x20000, 0x10000, CRC(3fef9c02) SHA1(e4b731faf6a2f4e5fed8ba9bd07e0f203981ffec) ) |
| 2497 | | ROM_LOAD( "eh-02.rom", 0x40000, 0x10000, CRC(bfae6c34) SHA1(9503a120e11e9466cd9a2931fd44a631d72ca5f0) ) |
| 2498 | | ROM_LOAD( "eh-03.rom", 0x60000, 0x10000, CRC(d56790f8) SHA1(1cc7cb9f7102158de14a737e9317a54f01790ba8) ) |
| 2562 | ROM_LOAD( "dl11-.13f", 0x00000, 0x08000, CRC(36579d3b) SHA1(8edf952dafcd5bc66e08074687f0bec809fd4c2f) ) |
| 2563 | ROM_LOAD( "dl12-.9f", 0x20000, 0x08000, CRC(2ba6737e) SHA1(c5e4c27726bf14e9cd60d62e2f17ea5be8093c37) ) |
| 2564 | ROM_LOAD( "dl13-.8f", 0x40000, 0x08000, CRC(39a7dc93) SHA1(3b7968fd06ac0379525c1d3e73f8bbe18ea36439) ) |
| 2565 | ROM_LOAD( "dl10-.16f", 0x60000, 0x08000, CRC(fe275ea8) SHA1(2f089f96583235f1f5226ef2a64b430d84efbeee) ) |
| 2499 | 2566 | |
| 2500 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles 1 */ |
| 2501 | | ROM_LOAD( "el05.bin", 0x00000, 0x10000, CRC(1c4f6033) SHA1(4a7dece911166d1ff5f41df6ec5140596206d8d4) ) |
| 2502 | | ROM_LOAD( "el06.bin", 0x20000, 0x10000, CRC(d24ba794) SHA1(b34b7bbaab4ebdd81c87d363f087cc92e27e8d1c) ) |
| 2503 | | ROM_LOAD( "el04.bin", 0x40000, 0x10000, CRC(d80a49ce) SHA1(1a92413b5ab53f80e44a954433e69ec5fe2c0aa6) ) |
| 2504 | | ROM_LOAD( "el07.bin", 0x60000, 0x10000, CRC(6d771fc3) SHA1(f29979f3aa07bdb544fb0c1d773c5558b4533390) ) |
| 2567 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2568 | ROM_LOAD( "dl09-.12k", 0x00000, 0x10000, CRC(6a5a0c5d) SHA1(0106cf693c284be5faf96e56b651fab92a410915) ) |
| 2569 | ROM_LOAD( "dl08-.14k", 0x20000, 0x10000, CRC(3b38cfce) SHA1(d6829bed6916fb301c08031bd466ee4dcc05b275) ) |
| 2570 | ROM_LOAD( "dl07-.15k", 0x40000, 0x10000, CRC(1b60604d) SHA1(1ee15cfdac87f7eeb92050766293b894cfad1466) ) |
| 2571 | ROM_LOAD( "dl06-.17k", 0x60000, 0x10000, CRC(c43c26a7) SHA1(896e278935b100edc12cd970469f2e8293eb96cc) ) |
| 2505 | 2572 | |
| 2506 | | ROM_REGION( 0x80000, "gfx4", 0 ) /* tiles 2 */ |
| 2507 | | ROM_LOAD( "el08.bin", 0x00000, 0x08000, CRC(cb0dcf4c) SHA1(e14853f83ee9ba5cbf2eb1e085fee4e65af3cc25) ) |
| 2508 | | ROM_CONTINUE( 0x40000, 0x08000 ) |
| 2509 | | ROM_LOAD( "el09.bin", 0x20000, 0x08000, CRC(1fae5be7) SHA1(be6e090b0b82648b385d9b6d11775f3ff40f0af3) ) |
| 2510 | | ROM_CONTINUE( 0x60000, 0x08000 ) |
| 2573 | ROM_REGION( 256, "proms", 0 ) |
| 2574 | ROM_LOAD( "dl-14.9c", 0x00000, 0x100, CRC(2e55aa12) SHA1(c0f2b9649467eb9d2c1e47589b5990f5c5e8cc93) ) /* Priority (Not yet used) */ |
| 2511 | 2575 | ROM_END |
| 2512 | 2576 | |
| 2577 | ROM_START( lastmisnj ) |
| 2578 | ROM_REGION( 0x20000, "maincpu", 0 ) |
| 2579 | ROM_LOAD( "dl03-.13h", 0x08000, 0x08000, CRC(4be5e7e1) SHA1(9f943658663da31947cebdcbcb5f4e2be0714c06) ) |
| 2580 | ROM_LOAD( "dl04-.7h", 0x10000, 0x10000, CRC(f026adf9) SHA1(4ccd0e714a6eb7cee388c93beee2d5510407c961) ) |
| 2581 | |
| 2582 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 2583 | ROM_LOAD( "dl02-.18h", 0x0000, 0x10000, CRC(d0de2b5d) SHA1(e0bb34c2a2ef6fc6f05ab9a98bd23a39004c0c05) ) |
| 2584 | |
| 2585 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2586 | ROM_LOAD( "dl05-.5h", 0x8000, 0x8000, CRC(1a5df8c0) SHA1(83d36b1d5fb87f50c44f3110804d6bbdbbc0da99) ) |
| 2587 | |
| 2588 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2589 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 2590 | |
| 2591 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2592 | ROM_LOAD( "dl01-.2a", 0x00000, 0x2000, CRC(f3787a5d) SHA1(3701df42cb2aca951963703e72c6c7b272eed82b) ) |
| 2593 | ROM_CONTINUE( 0x06000, 0x2000 ) |
| 2594 | ROM_CONTINUE( 0x04000, 0x2000 ) |
| 2595 | ROM_CONTINUE( 0x02000, 0x2000 ) |
| 2596 | |
| 2597 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2598 | ROM_LOAD( "dl11-.13f", 0x00000, 0x08000, CRC(36579d3b) SHA1(8edf952dafcd5bc66e08074687f0bec809fd4c2f) ) |
| 2599 | ROM_LOAD( "dl12-.9f", 0x20000, 0x08000, CRC(2ba6737e) SHA1(c5e4c27726bf14e9cd60d62e2f17ea5be8093c37) ) |
| 2600 | ROM_LOAD( "dl13-.8f", 0x40000, 0x08000, CRC(39a7dc93) SHA1(3b7968fd06ac0379525c1d3e73f8bbe18ea36439) ) |
| 2601 | ROM_LOAD( "dl10-.16f", 0x60000, 0x08000, CRC(fe275ea8) SHA1(2f089f96583235f1f5226ef2a64b430d84efbeee) ) |
| 2602 | |
| 2603 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2604 | ROM_LOAD( "dl09-.12k", 0x00000, 0x10000, CRC(6a5a0c5d) SHA1(0106cf693c284be5faf96e56b651fab92a410915) ) |
| 2605 | ROM_LOAD( "dl08-.14k", 0x20000, 0x10000, CRC(3b38cfce) SHA1(d6829bed6916fb301c08031bd466ee4dcc05b275) ) |
| 2606 | ROM_LOAD( "dl07-.15k", 0x40000, 0x10000, CRC(1b60604d) SHA1(1ee15cfdac87f7eeb92050766293b894cfad1466) ) |
| 2607 | ROM_LOAD( "dl06-.17k", 0x60000, 0x10000, CRC(c43c26a7) SHA1(896e278935b100edc12cd970469f2e8293eb96cc) ) |
| 2608 | |
| 2609 | ROM_REGION( 256, "proms", 0 ) |
| 2610 | ROM_LOAD( "dl-14.9c", 0x00000, 0x100, CRC(2e55aa12) SHA1(c0f2b9649467eb9d2c1e47589b5990f5c5e8cc93) ) /* Priority (Not yet used) */ |
| 2611 | ROM_END |
| 2612 | |
| 2613 | ROM_START( shackled ) |
| 2614 | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 2615 | ROM_LOAD( "dk-02.rom", 0x08000, 0x08000, CRC(87f8fa85) SHA1(1cb93a60eefdb453a3cc6ec9c5cc2e367fb8aeb0) ) |
| 2616 | ROM_LOAD( "dk-06.rom", 0x10000, 0x10000, CRC(69ad62d1) SHA1(1aa23b12ab4f1908cddd25f091e1f9bd70a5113c) ) |
| 2617 | ROM_LOAD( "dk-05.rom", 0x20000, 0x10000, CRC(598dd128) SHA1(10843c5352eef03c8675df6abaf23c9c9c795aa3) ) |
| 2618 | ROM_LOAD( "dk-04.rom", 0x30000, 0x10000, CRC(36d305d4) SHA1(17586c316aff405cf20c1467d69c98fa2a3c2630) ) |
| 2619 | ROM_LOAD( "dk-03.rom", 0x40000, 0x08000, CRC(6fd90fd1) SHA1(2f8db17e5545c82d243a7e23e7bda2c2a9101360) ) |
| 2620 | |
| 2621 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 2622 | ROM_LOAD( "dk-01.rom", 0x00000, 0x10000, CRC(71fe3bda) SHA1(959cce01362b2c670c2e15b03a78a1ff9cea4ee9) ) |
| 2623 | |
| 2624 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2625 | ROM_LOAD( "dk-07.rom", 0x08000, 0x08000, CRC(887e4bcc) SHA1(6427396080e9cd8647adff47c8ed04593a14268c) ) |
| 2626 | |
| 2627 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2628 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 2629 | |
| 2630 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2631 | ROM_LOAD( "dk-00.rom", 0x00000, 0x08000, CRC(69b975aa) SHA1(38cb96768c79ff1aa1b4b190e08ec9155baf698a) ) |
| 2632 | |
| 2633 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2634 | ROM_LOAD( "dk-12.rom", 0x00000, 0x10000, CRC(615c2371) SHA1(30b25dc27d34646d886a465c77622eaa894d83c3) ) |
| 2635 | ROM_LOAD( "dk-13.rom", 0x10000, 0x10000, CRC(479aa503) SHA1(1167f0d15439c95a1094f81855203e863ce0488d) ) |
| 2636 | ROM_LOAD( "dk-14.rom", 0x20000, 0x10000, CRC(cdc24246) SHA1(1a4189bc2b1fa99740dd7921608159936ba3bd07) ) |
| 2637 | ROM_LOAD( "dk-15.rom", 0x30000, 0x10000, CRC(88db811b) SHA1(7d3c4a80925f323efb589798b4a341d1a2ca95f9) ) |
| 2638 | ROM_LOAD( "dk-16.rom", 0x40000, 0x10000, CRC(061a76bd) SHA1(5bcb513e48bed9b7c4207d94531be691a85e295d) ) |
| 2639 | ROM_LOAD( "dk-17.rom", 0x50000, 0x10000, CRC(a6c5d8af) SHA1(58f3fece9a5ef8b39090a2f39610381b8e7cdbf7) ) |
| 2640 | ROM_LOAD( "dk-18.rom", 0x60000, 0x10000, CRC(4d466757) SHA1(701d79bebbba4f266e19080d16ff2f93ffa94287) ) |
| 2641 | ROM_LOAD( "dk-19.rom", 0x70000, 0x10000, CRC(1911e83e) SHA1(174e9db3f2211ecbbb93c6bda8f6185dbfdbc818) ) |
| 2642 | |
| 2643 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2644 | ROM_LOAD( "dk-11.rom", 0x00000, 0x10000, CRC(5cf5719f) SHA1(8c7582ac19010421ec748391a193aa18e51b981f) ) |
| 2645 | ROM_LOAD( "dk-10.rom", 0x20000, 0x10000, CRC(408e6d08) SHA1(28cb76792e5f84bd101a91cb82597a5939804f84) ) |
| 2646 | ROM_LOAD( "dk-09.rom", 0x40000, 0x10000, CRC(c1557fac) SHA1(7d39ec793113a48baf45c2ea07abb07e2e48985a) ) |
| 2647 | ROM_LOAD( "dk-08.rom", 0x60000, 0x10000, CRC(5e54e9f5) SHA1(1ab41a3bde1f2c2be670e89cf402be28001c17d1) ) |
| 2648 | ROM_END |
| 2649 | |
| 2650 | ROM_START( breywood ) |
| 2651 | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 2652 | ROM_LOAD( "7.bin", 0x08000, 0x08000, CRC(c19856b9) SHA1(766994703bb59879c311675353d7231ad27c7c16) ) |
| 2653 | ROM_LOAD( "3.bin", 0x10000, 0x10000, CRC(2860ea02) SHA1(7ac090c3ae9d71baa6227ec9555f1c9f2d25ea0d) ) |
| 2654 | ROM_LOAD( "4.bin", 0x20000, 0x10000, CRC(0fdd915e) SHA1(262df956dfc727c710ade28af7f33fddaafd7ee2) ) |
| 2655 | ROM_LOAD( "5.bin", 0x30000, 0x10000, CRC(71036579) SHA1(c58ff3222b5bcd75d58c5f282554e92103e80916) ) |
| 2656 | ROM_LOAD( "6.bin", 0x40000, 0x08000, CRC(308f4893) SHA1(539c138ff01c5718cc8a982482b989468d532699) ) |
| 2657 | |
| 2658 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 2659 | ROM_LOAD( "8.bin", 0x0000, 0x10000, CRC(3d9fb623) SHA1(6e5eaad9bb0a432e2da5da5b18a2ed36617bdde2) ) |
| 2660 | |
| 2661 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2662 | ROM_LOAD( "2.bin", 0x8000, 0x8000, CRC(4a471c38) SHA1(963ed7b6afeefdfc2cf0d65b0998f973330e6495) ) |
| 2663 | |
| 2664 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2665 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 2666 | |
| 2667 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2668 | ROM_LOAD( "1.bin", 0x00000, 0x08000, CRC(815a891a) SHA1(e557d6a35821a8589d9e3df0f42131b58b08c8ca) ) |
| 2669 | |
| 2670 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2671 | ROM_LOAD( "20.bin", 0x00000, 0x10000, CRC(2b7634f2) SHA1(56d963d4960d9b3e888c8107340763e176adfa9b) ) |
| 2672 | ROM_LOAD( "19.bin", 0x10000, 0x10000, CRC(4530a952) SHA1(99251a21347815cba465669e18df31262bcdaba1) ) |
| 2673 | ROM_LOAD( "18.bin", 0x20000, 0x10000, CRC(87c28833) SHA1(3f1a294065326389d304e540bc880844c6c7cb06) ) |
| 2674 | ROM_LOAD( "17.bin", 0x30000, 0x10000, CRC(bfb43a4d) SHA1(56092935147a3b643a9b39eb7cfc067a764644c5) ) |
| 2675 | ROM_LOAD( "16.bin", 0x40000, 0x10000, CRC(f9848cc4) SHA1(6d8e77b67ce4d418defba6f6979632f31d2307c6) ) |
| 2676 | ROM_LOAD( "15.bin", 0x50000, 0x10000, CRC(baa3d218) SHA1(3c31df23cc871cffd9a4dafae106e4a98f5af848) ) |
| 2677 | ROM_LOAD( "14.bin", 0x60000, 0x10000, CRC(12afe533) SHA1(6df3471c16a714d118717da549a7523aa388ddd3) ) |
| 2678 | ROM_LOAD( "13.bin", 0x70000, 0x10000, CRC(03373755) SHA1(d2541dd957803168f246d96b7cd74eae7fd43188) ) |
| 2679 | |
| 2680 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2681 | ROM_LOAD( "9.bin", 0x00000, 0x10000, CRC(067e2a43) SHA1(f1da7455aab21f94ed25a93b0ebfde69baa475d1) ) |
| 2682 | ROM_LOAD( "10.bin", 0x20000, 0x10000, CRC(c19733aa) SHA1(3dfcfd33c5c4f792bb941ac933301c03ddd72b03) ) |
| 2683 | ROM_LOAD( "11.bin", 0x40000, 0x10000, CRC(e37d5dbe) SHA1(ff79b4f6d8b0a3061e78d15480df0155650f347f) ) |
| 2684 | ROM_LOAD( "12.bin", 0x60000, 0x10000, CRC(beee880f) SHA1(9a818a75cbec425a13f629bda6d50aa341aa1896) ) |
| 2685 | ROM_END |
| 2686 | |
| 2687 | ROM_START( gondo ) |
| 2688 | ROM_REGION( 0x40000, "maincpu", 0 ) |
| 2689 | ROM_LOAD( "dt-00.256", 0x08000, 0x08000, CRC(a8cf9118) SHA1(865744c9866957d686a31608d356e279fe58934e) ) |
| 2690 | ROM_LOAD( "dt-01.512", 0x10000, 0x10000, CRC(c39bb877) SHA1(9beb59ba19f38417c5d4d36e8f3c41f2b017d2d6) ) |
| 2691 | ROM_LOAD( "dt-02.512", 0x20000, 0x10000, CRC(bb5e674b) SHA1(8057dc7464a8b6987536f248d607957923b223cf) ) |
| 2692 | ROM_LOAD( "dt-03.512", 0x30000, 0x10000, CRC(99c32b13) SHA1(3d79f48e7d198cb2e519d592a89eda505044bce5) ) |
| 2693 | |
| 2694 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2695 | ROM_LOAD( "dt-05.256", 0x8000, 0x8000, CRC(ec08aa29) SHA1(ce83974ae095d9518d1ebf9f7e712f0cbc2c1b42) ) |
| 2696 | |
| 2697 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2698 | ROM_LOAD( "dt-a.1b", 0x0000, 0x1000, CRC(03abceeb) SHA1(a16b779d7cea1c1437f85fa6b6e08894a46a5674) ) |
| 2699 | |
| 2700 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2701 | ROM_LOAD( "dt-14.256", 0x00000, 0x08000, CRC(4bef16e1) SHA1(b8157a7a1b8f36cea1fd353267a4e03d920cb4aa) ) |
| 2702 | |
| 2703 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2704 | ROM_LOAD( "dt-19.512", 0x00000, 0x10000, CRC(da2abe4b) SHA1(d53e4769671f3fd437edcff7e7ea05156bbcb45d) ) |
| 2705 | ROM_LOAD( "dt-20.256", 0x10000, 0x08000, CRC(42d01002) SHA1(5a289ffdc83c05f21908a5d0b6247da5b51c1ddd) ) |
| 2706 | ROM_LOAD( "dt-16.512", 0x20000, 0x10000, CRC(e9955d8f) SHA1(aeef5e18f9d36c1bab3000e95205ce1b18cfbf0b) ) |
| 2707 | ROM_LOAD( "dt-18.256", 0x30000, 0x08000, CRC(c0c5df1c) SHA1(5b0f71f590434cdd0545ce098666798927727469) ) |
| 2708 | ROM_LOAD( "dt-15.512", 0x40000, 0x10000, CRC(a54b2eb6) SHA1(25cb61f67135672154f1ad8e0c49ec04655e91de) ) |
| 2709 | ROM_LOAD( "dt-17.256", 0x50000, 0x08000, CRC(3bbcff0d) SHA1(a8f7aa56ff49ed6b29240c3504d6c9945944953b) ) |
| 2710 | ROM_LOAD( "dt-21.512", 0x60000, 0x10000, CRC(1c5f682d) SHA1(4b7022cce930a9e9a0087c91e8344269fe7ed889) ) |
| 2711 | ROM_LOAD( "dt-22.256", 0x70000, 0x08000, CRC(c1876a5f) SHA1(66122ce765723765e20036bd4d461a210c8b94d3) ) |
| 2712 | |
| 2713 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2714 | ROM_LOAD( "dt-08.512", 0x00000, 0x08000, CRC(aec483f5) SHA1(1d6de823ab0eeb9c89e9c227428ff278663627f3) ) |
| 2715 | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 2716 | ROM_LOAD( "dt-09.256", 0x08000, 0x08000, CRC(446f0ce0) SHA1(072b88d6de5aa0ed6b1d60c266bcf170dea927d5) ) |
| 2717 | ROM_LOAD( "dt-06.512", 0x20000, 0x08000, CRC(3fe1527f) SHA1(b8df4bef2b1a879b65214025fc3b5998ef5c8886) ) |
| 2718 | ROM_CONTINUE( 0x30000, 0x08000 ) |
| 2719 | ROM_LOAD( "dt-07.256", 0x28000, 0x08000, CRC(61f9bce5) SHA1(ef8a5f5e4c66a143304bcab50ca87579f1507864) ) |
| 2720 | ROM_LOAD( "dt-12.512", 0x40000, 0x08000, CRC(1a72ca8d) SHA1(f412758452cb3417e85c355ccb8794fde7edf1cc) ) |
| 2721 | ROM_CONTINUE( 0x50000, 0x08000 ) |
| 2722 | ROM_LOAD( "dt-13.256", 0x48000, 0x08000, CRC(ccb81aec) SHA1(56e524ed4373b7bd1074a0d22ff75ede379f1696) ) |
| 2723 | ROM_LOAD( "dt-10.512", 0x60000, 0x08000, CRC(cfcfc9ed) SHA1(57f43d638cf864d68420f0203740be7bda9da5ca) ) |
| 2724 | ROM_CONTINUE( 0x70000, 0x08000 ) |
| 2725 | ROM_LOAD( "dt-11.256", 0x68000, 0x08000, CRC(53e9cf17) SHA1(8cbb45154a60f42f1b1e7299b12d2e92fc194df8) ) |
| 2726 | |
| 2727 | ROM_REGION( 1024, "proms", 0 ) |
| 2728 | ROM_LOAD( "mb7122e.10b", 0x00000, 0x400, CRC(dcbfec4e) SHA1(a375caef4575746870e285d90ba991ea7daefad6) ) /* Priority (Not yet used) */ |
| 2729 | ROM_END |
| 2730 | |
| 2731 | ROM_START( makyosen ) |
| 2732 | ROM_REGION( 0x40000, "maincpu", 0 ) |
| 2733 | ROM_LOAD( "ds00", 0x08000, 0x08000, CRC(33bb16fe) SHA1(5d3873b66e0d08b35d56a8b508c774b27368a100) ) |
| 2734 | ROM_LOAD( "dt-01.512", 0x10000, 0x10000, CRC(c39bb877) SHA1(9beb59ba19f38417c5d4d36e8f3c41f2b017d2d6) ) |
| 2735 | ROM_LOAD( "ds02", 0x20000, 0x10000, CRC(925307a4) SHA1(1e8b8eb21df1a11b14c981b343b34c6cc3676517) ) |
| 2736 | ROM_LOAD( "ds03", 0x30000, 0x10000, CRC(9c0fcbf6) SHA1(bfe42b5277fea111840a9f59b2cb8dfe44444029) ) |
| 2737 | |
| 2738 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2739 | ROM_LOAD( "ds05", 0x8000, 0x8000, CRC(e6e28ca9) SHA1(3b1f8219331db1910bfb428f8964f8fc1063df6f) ) |
| 2740 | |
| 2741 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H (fake) MCU based on 'gondo' one */ |
| 2742 | ROM_LOAD( "ds-a.1b", 0x0000, 0x1000, BAD_DUMP CRC(f61b77cf) SHA1(2d3549876ea08623ce9da1d637853cb4c740300a)) |
| 2743 | |
| 2744 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2745 | ROM_LOAD( "ds14", 0x00000, 0x08000, CRC(00cbe9c8) SHA1(de7b640de8fd54ee79194945c96d5768d09f483b) ) |
| 2746 | |
| 2747 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2748 | ROM_LOAD( "dt-19.512", 0x00000, 0x10000, CRC(da2abe4b) SHA1(d53e4769671f3fd437edcff7e7ea05156bbcb45d) ) |
| 2749 | ROM_LOAD( "ds20", 0x10000, 0x08000, CRC(0eef7f56) SHA1(05c23aa6a598478cd4822634cff96055c585e9d2) ) |
| 2750 | ROM_LOAD( "dt-16.512", 0x20000, 0x10000, CRC(e9955d8f) SHA1(aeef5e18f9d36c1bab3000e95205ce1b18cfbf0b) ) |
| 2751 | ROM_LOAD( "ds18", 0x30000, 0x08000, CRC(2b2d1468) SHA1(a144ac1b367e1fec876156230e9ab1c99416962e) ) |
| 2752 | ROM_LOAD( "dt-15.512", 0x40000, 0x10000, CRC(a54b2eb6) SHA1(25cb61f67135672154f1ad8e0c49ec04655e91de) ) |
| 2753 | ROM_LOAD( "ds17", 0x50000, 0x08000, CRC(75ae349a) SHA1(15755a28925d5ed37fab4bd988716fcc5d20c290) ) |
| 2754 | ROM_LOAD( "dt-21.512", 0x60000, 0x10000, CRC(1c5f682d) SHA1(4b7022cce930a9e9a0087c91e8344269fe7ed889) ) |
| 2755 | ROM_LOAD( "ds22", 0x70000, 0x08000, CRC(c8ffb148) SHA1(ae1a8b3cd1f5e423dc1a3c7d05f9fe7c689432e3) ) |
| 2756 | |
| 2757 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2758 | ROM_LOAD( "dt-08.512", 0x00000, 0x08000, CRC(aec483f5) SHA1(1d6de823ab0eeb9c89e9c227428ff278663627f3) ) |
| 2759 | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 2760 | ROM_LOAD( "dt-09.256", 0x08000, 0x08000, CRC(446f0ce0) SHA1(072b88d6de5aa0ed6b1d60c266bcf170dea927d5) ) |
| 2761 | ROM_LOAD( "dt-06.512", 0x20000, 0x08000, CRC(3fe1527f) SHA1(b8df4bef2b1a879b65214025fc3b5998ef5c8886) ) |
| 2762 | ROM_CONTINUE( 0x30000, 0x08000 ) |
| 2763 | ROM_LOAD( "dt-07.256", 0x28000, 0x08000, CRC(61f9bce5) SHA1(ef8a5f5e4c66a143304bcab50ca87579f1507864) ) |
| 2764 | ROM_LOAD( "dt-12.512", 0x40000, 0x08000, CRC(1a72ca8d) SHA1(f412758452cb3417e85c355ccb8794fde7edf1cc) ) |
| 2765 | ROM_CONTINUE( 0x50000, 0x08000 ) |
| 2766 | ROM_LOAD( "dt-13.256", 0x48000, 0x08000, CRC(ccb81aec) SHA1(56e524ed4373b7bd1074a0d22ff75ede379f1696) ) |
| 2767 | ROM_LOAD( "dt-10.512", 0x60000, 0x08000, CRC(cfcfc9ed) SHA1(57f43d638cf864d68420f0203740be7bda9da5ca) ) |
| 2768 | ROM_CONTINUE( 0x70000, 0x08000 ) |
| 2769 | ROM_LOAD( "dt-11.256", 0x68000, 0x08000, CRC(53e9cf17) SHA1(8cbb45154a60f42f1b1e7299b12d2e92fc194df8) ) |
| 2770 | |
| 2771 | ROM_REGION( 1024, "proms", 0 ) |
| 2772 | ROM_LOAD( "mb7122e.10b", 0x00000, 0x400, CRC(dcbfec4e) SHA1(a375caef4575746870e285d90ba991ea7daefad6) ) /* Priority (Not yet used) */ |
| 2773 | |
| 2774 | ROM_REGION( 0x0600, "plds", 0 ) |
| 2775 | ROM_LOAD( "pal16r4nc.10u", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */ |
| 2776 | ROM_LOAD( "pal16r4nc.11g", 0x0200, 0x0104, NO_DUMP ) /* PAL is read protected */ |
| 2777 | ROM_LOAD( "pal16r4nc.1s", 0x0400, 0x0104, NO_DUMP ) /* PAL is read protected */ |
| 2778 | ROM_END |
| 2779 | |
| 2780 | ROM_START( garyoret ) |
| 2781 | ROM_REGION( 0x50000, "maincpu", 0 ) |
| 2782 | ROM_LOAD( "dv00", 0x08000, 0x08000, CRC(cceaaf05) SHA1(b8f54638feab77d023e01ced947e1269f0d19fd8) ) |
| 2783 | ROM_LOAD( "dv01", 0x10000, 0x10000, CRC(c33fc18a) SHA1(0d9594b0e6c39aea5b9f15f6aa364b31604f1066) ) |
| 2784 | ROM_LOAD( "dv02", 0x20000, 0x10000, CRC(f9e26ce7) SHA1(8589594ebc7ae16942739382273a222dfa30b3b7) ) |
| 2785 | ROM_LOAD( "dv03", 0x30000, 0x10000, CRC(55d8d699) SHA1(da1519cd54d27cc406420ce0845e43f7228cfd4e) ) |
| 2786 | ROM_LOAD( "dv04", 0x40000, 0x10000, CRC(ed3d00ee) SHA1(6daa2ee509235ad03d3012a00382820279add620) ) |
| 2787 | |
| 2788 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2789 | ROM_LOAD( "dv05", 0x08000, 0x08000, CRC(c97c347f) SHA1(a1b22733dc15d524af97db3e608a82503a49b182) ) |
| 2790 | |
| 2791 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H (fake) MCU based on 'gondo' one */ |
| 2792 | ROM_LOAD( "dv__.mcu", 0x0000, 0x1000, BAD_DUMP CRC(37cacec6) SHA1(d81fe36939ccac784a83a69dfc6898b22a4515ec) ) |
| 2793 | |
| 2794 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2795 | ROM_LOAD( "dv14", 0x00000, 0x08000, CRC(fb2bc581) SHA1(d597976c5ae586166c49051cc3de8cf0c2e5a5e1) ) /* Characters */ |
| 2796 | |
| 2797 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2798 | ROM_LOAD( "dv22", 0x00000, 0x10000, CRC(cef0367e) SHA1(8beb3a6b91ec0a6ec052243c8f626a581d349f65) ) |
| 2799 | ROM_LOAD( "dv21", 0x10000, 0x08000, CRC(90042fb7) SHA1(f19bbf158c92030e8fddb5087b5b69b71956baf8) ) |
| 2800 | ROM_LOAD( "dv20", 0x20000, 0x10000, CRC(451a2d8c) SHA1(f4eea444b797d394edeb514ddc1c494fd7ccc2f2) ) |
| 2801 | ROM_LOAD( "dv19", 0x30000, 0x08000, CRC(14e1475b) SHA1(f0aec5b7b4be0da06a73ed382e7e851654e47e47) ) |
| 2802 | ROM_LOAD( "dv18", 0x40000, 0x10000, CRC(7043bead) SHA1(5d1be8b9cd56ae43d60406b05258d20de980096d) ) |
| 2803 | ROM_LOAD( "dv17", 0x50000, 0x08000, CRC(28f449d7) SHA1(cf1bc690b67910c42ad09531ab1d88461d00b944) ) |
| 2804 | ROM_LOAD( "dv16", 0x60000, 0x10000, CRC(37e4971e) SHA1(9442c315b7cdbcc046d9e6838cb793c1857174ed) ) |
| 2805 | ROM_LOAD( "dv15", 0x70000, 0x08000, CRC(ca41b6ac) SHA1(d7a9ef6c89741c1e8e17a668a9d39ea089f5c73f) ) |
| 2806 | |
| 2807 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2808 | ROM_LOAD( "dv08", 0x00000, 0x08000, CRC(89c13e15) SHA1(6507e60de5cd78a5b46090e4825a44c2a23631d7) ) |
| 2809 | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 2810 | ROM_LOAD( "dv09", 0x08000, 0x08000, CRC(6a345a23) SHA1(b86f81b9fe25acd833ca3e2cff6cfa853c02280a) ) |
| 2811 | ROM_CONTINUE( 0x18000, 0x08000 ) |
| 2812 | |
| 2813 | ROM_LOAD( "dv06", 0x20000, 0x08000, CRC(1eb52a20) SHA1(46670ed973f794be9c2c7e6bf5d97db51211e9a9) ) |
| 2814 | ROM_CONTINUE( 0x30000, 0x08000 ) |
| 2815 | ROM_LOAD( "dv07", 0x28000, 0x08000, CRC(e7346ef8) SHA1(8083a7a182e8ed904daf2f692115d01b3d0830eb) ) |
| 2816 | ROM_CONTINUE( 0x38000, 0x08000 ) |
| 2817 | |
| 2818 | ROM_LOAD( "dv12", 0x40000, 0x08000, CRC(46ba5af4) SHA1(a1c13e7e3c85060202120b64e3cee32c1f733270) ) |
| 2819 | ROM_CONTINUE( 0x50000, 0x08000 ) |
| 2820 | ROM_LOAD( "dv13", 0x48000, 0x08000, CRC(a7af6dfd) SHA1(fa41bdafb64c79bd9769903fd37d4d5172b66a52) ) |
| 2821 | ROM_CONTINUE( 0x58000, 0x08000 ) |
| 2822 | |
| 2823 | ROM_LOAD( "dv10", 0x60000, 0x08000, CRC(68b6d75c) SHA1(ac719ef6b30ac9e63fab13cb359e6114493f274d) ) |
| 2824 | ROM_CONTINUE( 0x70000, 0x08000 ) |
| 2825 | ROM_LOAD( "dv11", 0x68000, 0x08000, CRC(b5948aee) SHA1(587afbfeda985bede9e4b5f57dad6763f4294962) ) |
| 2826 | ROM_CONTINUE( 0x78000, 0x08000 ) |
| 2827 | ROM_END |
| 2828 | |
| 2513 | 2829 | ROM_START( ghostb ) |
| 2514 | 2830 | ROM_REGION( 0x50000, "maincpu", 0 ) |
| 2515 | 2831 | ROM_LOAD( "dz01-22.1d", 0x08000, 0x08000, CRC(fc65fdf2) SHA1(b6ffe2043d5dbff061a9806631646428eed95dd3) ) |
| r14742 | r14743 | |
| 2521 | 2837 | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 2522 | 2838 | ROM_LOAD( "dz06.5f", 0x8000, 0x8000, CRC(798f56df) SHA1(aee33cd0c102015114e17f6cb98945e7cc806f55) ) |
| 2523 | 2839 | |
| 2524 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2840 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H (fake) MCU */ |
| 2525 | 2841 | ROM_LOAD( "dz-1.1b", 0x0000, 0x1000, BAD_DUMP CRC(18b7e1e6) SHA1(46b6d914ecee5e743ac805be1545ca44fb016d7d) ) /* Verfied label, but is it different the other DZ */ |
| 2526 | 2842 | |
| 2527 | 2843 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| r14742 | r14743 | |
| 2559 | 2875 | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 2560 | 2876 | ROM_LOAD( "dz06.5f", 0x8000, 0x8000, CRC(798f56df) SHA1(aee33cd0c102015114e17f6cb98945e7cc806f55) ) |
| 2561 | 2877 | |
| 2562 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2878 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H (fake) MCU */ |
| 2563 | 2879 | ROM_LOAD( "dz.1b", 0x0000, 0x1000, BAD_DUMP CRC(18b7e1e6) SHA1(46b6d914ecee5e743ac805be1545ca44fb016d7d) ) |
| 2564 | 2880 | |
| 2565 | 2881 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| r14742 | r14743 | |
| 2597 | 2913 | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 2598 | 2914 | ROM_LOAD( "dz06.5f", 0x8000, 0x8000, CRC(798f56df) SHA1(aee33cd0c102015114e17f6cb98945e7cc806f55) ) |
| 2599 | 2915 | |
| 2600 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2916 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H (fake) MCU */ |
| 2601 | 2917 | ROM_LOAD( "dz.1b", 0x0000, 0x1000, BAD_DUMP CRC(18b7e1e6) SHA1(46b6d914ecee5e743ac805be1545ca44fb016d7d) ) |
| 2602 | 2918 | |
| 2603 | 2919 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| r14742 | r14743 | |
| 2842 | 3158 | ROM_LOAD( "dw19.10d", 0x0400, 0x0400, CRC(cc16f3fa) SHA1(4562106ff752f5fc5ae00ff098141e5d74fe4700) ) |
| 2843 | 3159 | ROM_END |
| 2844 | 3160 | |
| 2845 | | ROM_START( srdarwin ) |
| 2846 | | ROM_REGION( 0x28000, "maincpu", 0 ) |
| 2847 | | ROM_LOAD( "dy01-e.b14", 0x20000, 0x08000, CRC(176e9299) SHA1(20cd44ab610e384ab4f0172054c9adc432b12e9c) ) |
| 2848 | | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 2849 | | ROM_LOAD( "dy00.b16", 0x10000, 0x10000, CRC(2bf6b461) SHA1(435d922c7b9df7f2b2f774346caed81d330be8a0) ) |
| 3161 | /* |
| 3162 | Main Compoennts |
| 3163 | --------------- |
| 2850 | 3164 | |
| 2851 | | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 2852 | | ROM_LOAD( "dy04.d7", 0x8000, 0x8000, CRC(2ae3591c) SHA1(f21b06d84e2c3d3895be0812024641fd006e45cf) ) |
| 3165 | Top board (DATA EAST DE-0250-3): |
| 3166 | 2x MC68B09EP (18e,19e)(main) |
| 3167 | 1x RP65C02A (3f)(sound) |
| 3168 | 1x YM3812 (1e)(sound) |
| 3169 | 1x YM2203 (1f)(sound) |
| 3170 | 2x Y30148 (1j,2j)(sound) |
| 3171 | 1x OKI M5205 (3j)(sound) |
| 3172 | 1x NEC PC3403C (1j)(sound) |
| 3173 | 1x C4558C (2j)(sound) |
| 3174 | 1x oscillator 8.000 (x1) |
| 3175 | 1x ID8751H (read protected) |
| 2853 | 3176 | |
| 2854 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2855 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3177 | Lower board (DATA EAST DE-0251-2): |
| 3178 | 1x DECO TC15G032AY-0013-8644a-DSPC10 (square component, with 135 pass-through pins)(14h) |
| 3179 | 1x DECO VSC30-M60348-6102 (DIL40)(9a) |
| 3180 | 1x DECO HMC20-M60232-6902 (DIL28)(14a) |
| 3181 | 1x oscillator 12.000 (x1) |
| 2856 | 3182 | |
| 2857 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2858 | | ROM_LOAD( "dy05.b6", 0x00000, 0x4000, CRC(8780e8a3) SHA1(03ea91fdc5aba8e139201604fb3bf9b69f71f056) ) |
| 3183 | ROMs |
| 3184 | ---- |
| 2859 | 3185 | |
| 2860 | | ROM_REGION( 0x30000, "gfx2", 0 ) /* sprites */ |
| 2861 | | ROM_LOAD( "dy07.h16", 0x00000, 0x8000, CRC(97eaba60) SHA1(e3252b67bad7babcf4ece39f46ae4aeb950eb92b) ) |
| 2862 | | ROM_LOAD( "dy06.h14", 0x08000, 0x8000, CRC(c279541b) SHA1(eb3737413499d07b6c2af99a95b27b2590e670c5) ) |
| 2863 | | ROM_LOAD( "dy09.k13", 0x10000, 0x8000, CRC(d30d1745) SHA1(647b6121ab6fa812368da45e1295cc41f73be89d) ) |
| 2864 | | ROM_LOAD( "dy08.k11", 0x18000, 0x8000, CRC(71d645fd) SHA1(a74a9b9697fc39b4e675e732a9d7d82976cc95dd) ) |
| 2865 | | ROM_LOAD( "dy11.k16", 0x20000, 0x8000, CRC(fd9ccc5b) SHA1(b38c44c01acdc455d4192e4c8be1d68d9eb0c7b6) ) |
| 2866 | | ROM_LOAD( "dy10.k14", 0x28000, 0x8000, CRC(88770ab8) SHA1(0a4a807a8d3b0653864bd984872d5567836f8cf8) ) |
| 3186 | Top board (DATA EAST DE-0250-3): |
| 3187 | 2x MBM27256 (00,03) |
| 3188 | 10x MBM27C512 (01,02,04,05,06,07,08,09,10,11) |
| 3189 | 1x MB7122 (DIL18) (15) |
| 2867 | 3190 | |
| 2868 | | ROM_REGION( 0x40000, "gfx3", 0 ) /* tiles */ |
| 2869 | | ROM_LOAD( "dy03.b4", 0x00000, 0x4000, CRC(44f2a4f9) SHA1(97368dd112451cd630f2fa5ba54679e84e7d4d97) ) |
| 2870 | | ROM_CONTINUE( 0x10000, 0x4000 ) |
| 2871 | | ROM_CONTINUE( 0x20000, 0x4000 ) |
| 2872 | | ROM_CONTINUE( 0x30000, 0x4000 ) |
| 2873 | | ROM_LOAD( "dy02.b5", 0x08000, 0x4000, CRC(522d9a9e) SHA1(248274ed6df604357cad386fcf0521b26810aa0e) ) |
| 2874 | | ROM_CONTINUE( 0x18000, 0x4000 ) |
| 2875 | | ROM_CONTINUE( 0x28000, 0x4000 ) |
| 2876 | | ROM_CONTINUE( 0x38000, 0x4000 ) |
| 3191 | Lower board (DATA EAST DE-0251-2): |
| 3192 | 3x MBM27C512 |
| 2877 | 3193 | |
| 2878 | | ROM_REGION( 256, "proms", 0 ) |
| 2879 | | ROM_LOAD( "dy12.f4", 0x00000, 0x100, CRC(ebfaaed9) SHA1(5723dbfa3eb3fc4df8c8975b320a5c49848309d8) ) /* Priority (Not yet used) */ |
| 2880 | | ROM_END |
| 3194 | Notes |
| 3195 | ----- |
| 2881 | 3196 | |
| 2882 | | ROM_START( srdarwinj ) |
| 2883 | | ROM_REGION( 0x28000, "maincpu", 0 ) |
| 2884 | | ROM_LOAD( "dy_01.rom", 0x20000, 0x08000, CRC(1eeee4ff) SHA1(89a70de8bd61c671582b11773ce69b2edcd9c2f8) ) |
| 2885 | | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 2886 | | ROM_LOAD( "dy00.b16", 0x10000, 0x10000, CRC(2bf6b461) SHA1(435d922c7b9df7f2b2f774346caed81d330be8a0) ) |
| 3197 | Top board (DATA EAST DE-0250-3): |
| 3198 | 1x JAMMA edge connector |
| 3199 | 2x 25x2 legs connectors to lower board (cn1,cn2) |
| 3200 | 1x trimmer (volume) |
| 3201 | 2x 8 switches dip (7k,16k) |
| 2887 | 3202 | |
| 2888 | | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 2889 | | ROM_LOAD( "dy04.d7", 0x8000, 0x8000, CRC(2ae3591c) SHA1(f21b06d84e2c3d3895be0812024641fd006e45cf) ) |
| 3203 | Lower board (DATA EAST DE-0251-2): |
| 3204 | 2x 25x2 legs connectors to top board (cn1,cn2) |
| 2890 | 3205 | |
| 2891 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2892 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3206 | */ |
| 2893 | 3207 | |
| 2894 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2895 | | ROM_LOAD( "dy05.b6", 0x00000, 0x4000, CRC(8780e8a3) SHA1(03ea91fdc5aba8e139201604fb3bf9b69f71f056) ) |
| 3208 | ROM_START( csilver ) |
| 3209 | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 3210 | ROM_LOAD( "dx03-12.18d", 0x08000, 0x08000, CRC(2d926e7c) SHA1(cf38e92904edb1870b0a4965f9049d67efe8cf6a) ) |
| 3211 | ROM_LOAD( "dx01.12d", 0x10000, 0x10000, CRC(570fb50c) SHA1(3002f53182834a060fc282be1bc5767906e19ba2) ) |
| 3212 | ROM_LOAD( "dx02.13d", 0x20000, 0x10000, CRC(58625890) SHA1(503a969085f6dcb16687217c48136ea22d07c89f) ) |
| 2896 | 3213 | |
| 2897 | | ROM_REGION( 0x30000, "gfx2", 0 ) /* sprites */ |
| 2898 | | ROM_LOAD( "dy07.h16", 0x00000, 0x8000, CRC(97eaba60) SHA1(e3252b67bad7babcf4ece39f46ae4aeb950eb92b) ) |
| 2899 | | ROM_LOAD( "dy06.h14", 0x08000, 0x8000, CRC(c279541b) SHA1(eb3737413499d07b6c2af99a95b27b2590e670c5) ) |
| 2900 | | ROM_LOAD( "dy09.k13", 0x10000, 0x8000, CRC(d30d1745) SHA1(647b6121ab6fa812368da45e1295cc41f73be89d) ) |
| 2901 | | ROM_LOAD( "dy08.k11", 0x18000, 0x8000, CRC(71d645fd) SHA1(a74a9b9697fc39b4e675e732a9d7d82976cc95dd) ) |
| 2902 | | ROM_LOAD( "dy11.k16", 0x20000, 0x8000, CRC(fd9ccc5b) SHA1(b38c44c01acdc455d4192e4c8be1d68d9eb0c7b6) ) |
| 2903 | | ROM_LOAD( "dy10.k14", 0x28000, 0x8000, CRC(88770ab8) SHA1(0a4a807a8d3b0653864bd984872d5567836f8cf8) ) |
| 3214 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3215 | ROM_LOAD( "dx04-1.19d", 0x0000, 0x10000, CRC(29432691) SHA1(a76ecd27d217c66a0e43f93e29efe83c657925c3) ) |
| 2904 | 3216 | |
| 2905 | | ROM_REGION( 0x40000, "gfx3", 0 ) /* tiles */ |
| 2906 | | ROM_LOAD( "dy03.b4", 0x00000, 0x4000, CRC(44f2a4f9) SHA1(97368dd112451cd630f2fa5ba54679e84e7d4d97) ) |
| 2907 | | ROM_CONTINUE( 0x10000, 0x4000 ) |
| 2908 | | ROM_CONTINUE( 0x20000, 0x4000 ) |
| 2909 | | ROM_CONTINUE( 0x30000, 0x4000 ) |
| 2910 | | ROM_LOAD( "dy02.b5", 0x08000, 0x4000, CRC(522d9a9e) SHA1(248274ed6df604357cad386fcf0521b26810aa0e) ) |
| 2911 | | ROM_CONTINUE( 0x18000, 0x4000 ) |
| 2912 | | ROM_CONTINUE( 0x28000, 0x4000 ) |
| 2913 | | ROM_CONTINUE( 0x38000, 0x4000 ) |
| 3217 | ROM_REGION( 0x18000, "audiocpu", 0 ) |
| 3218 | ROM_LOAD( "dx05.3f", 0x10000, 0x08000, CRC(eb32cf25) SHA1(9390c88033259c65eb15320e31f5d696970987cc) ) |
| 3219 | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 2914 | 3220 | |
| 2915 | | ROM_REGION( 256, "proms", 0 ) |
| 2916 | | ROM_LOAD( "dy12.f4", 0x00000, 0x100, CRC(ebfaaed9) SHA1(5723dbfa3eb3fc4df8c8975b320a5c49848309d8) ) /* Priority (Not yet used) */ |
| 2917 | | ROM_END |
| 2918 | | |
| 2919 | | ROM_START( gondo ) |
| 2920 | | ROM_REGION( 0x40000, "maincpu", 0 ) |
| 2921 | | ROM_LOAD( "dt-00.256", 0x08000, 0x08000, CRC(a8cf9118) SHA1(865744c9866957d686a31608d356e279fe58934e) ) |
| 2922 | | ROM_LOAD( "dt-01.512", 0x10000, 0x10000, CRC(c39bb877) SHA1(9beb59ba19f38417c5d4d36e8f3c41f2b017d2d6) ) |
| 2923 | | ROM_LOAD( "dt-02.512", 0x20000, 0x10000, CRC(bb5e674b) SHA1(8057dc7464a8b6987536f248d607957923b223cf) ) |
| 2924 | | ROM_LOAD( "dt-03.512", 0x30000, 0x10000, CRC(99c32b13) SHA1(3d79f48e7d198cb2e519d592a89eda505044bce5) ) |
| 2925 | | |
| 2926 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2927 | | ROM_LOAD( "dt-05.256", 0x8000, 0x8000, CRC(ec08aa29) SHA1(ce83974ae095d9518d1ebf9f7e712f0cbc2c1b42) ) |
| 2928 | | |
| 2929 | 3221 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2930 | | ROM_LOAD( "dt-a.1b", 0x0000, 0x1000, CRC(03abceeb) SHA1(a16b779d7cea1c1437f85fa6b6e08894a46a5674) ) |
| 3222 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) // dx-8.19a ? |
| 2931 | 3223 | |
| 2932 | 3224 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2933 | | ROM_LOAD( "dt-14.256", 0x00000, 0x08000, CRC(4bef16e1) SHA1(b8157a7a1b8f36cea1fd353267a4e03d920cb4aa) ) |
| 3225 | ROM_LOAD( "dx00.3d", 0x00000, 0x08000, CRC(f01ef985) SHA1(d5b823bd7c0efcf3137f8643c5d99a260bed5675) ) |
| 2934 | 3226 | |
| 2935 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2936 | | ROM_LOAD( "dt-19.512", 0x00000, 0x10000, CRC(da2abe4b) SHA1(d53e4769671f3fd437edcff7e7ea05156bbcb45d) ) |
| 2937 | | ROM_LOAD( "dt-20.256", 0x10000, 0x08000, CRC(42d01002) SHA1(5a289ffdc83c05f21908a5d0b6247da5b51c1ddd) ) |
| 2938 | | ROM_LOAD( "dt-16.512", 0x20000, 0x10000, CRC(e9955d8f) SHA1(aeef5e18f9d36c1bab3000e95205ce1b18cfbf0b) ) |
| 2939 | | ROM_LOAD( "dt-18.256", 0x30000, 0x08000, CRC(c0c5df1c) SHA1(5b0f71f590434cdd0545ce098666798927727469) ) |
| 2940 | | ROM_LOAD( "dt-15.512", 0x40000, 0x10000, CRC(a54b2eb6) SHA1(25cb61f67135672154f1ad8e0c49ec04655e91de) ) |
| 2941 | | ROM_LOAD( "dt-17.256", 0x50000, 0x08000, CRC(3bbcff0d) SHA1(a8f7aa56ff49ed6b29240c3504d6c9945944953b) ) |
| 2942 | | ROM_LOAD( "dt-21.512", 0x60000, 0x10000, CRC(1c5f682d) SHA1(4b7022cce930a9e9a0087c91e8344269fe7ed889) ) |
| 2943 | | ROM_LOAD( "dt-22.256", 0x70000, 0x08000, CRC(c1876a5f) SHA1(66122ce765723765e20036bd4d461a210c8b94d3) ) |
| 3227 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites (3bpp) */ |
| 3228 | ROM_LOAD( "dx14.15k", 0x00000, 0x10000, CRC(80f07915) SHA1(ea100f12ef3a68110af911fa9beeb73b388f069d) ) |
| 3229 | /* 0x10000-0x1ffff empy */ |
| 3230 | ROM_LOAD( "dx13.13k", 0x20000, 0x10000, CRC(d32c02e7) SHA1(d0518ec31e9e3f7b4e76fba5d7c05c33c61a9c72) ) |
| 3231 | /* 0x30000-0x3ffff empy */ |
| 3232 | ROM_LOAD( "dx12.10k", 0x40000, 0x10000, CRC(ac78b76b) SHA1(c2be347fd950894401123ada8b27bfcfce53e66b) ) |
| 3233 | /* 0x50000-0x5ffff empy */ |
| 3234 | /* 0x60000-0x7ffff empy (no 4th plane) */ |
| 2944 | 3235 | |
| 2945 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2946 | | ROM_LOAD( "dt-08.512", 0x00000, 0x08000, CRC(aec483f5) SHA1(1d6de823ab0eeb9c89e9c227428ff278663627f3) ) |
| 2947 | | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 2948 | | ROM_LOAD( "dt-09.256", 0x08000, 0x08000, CRC(446f0ce0) SHA1(072b88d6de5aa0ed6b1d60c266bcf170dea927d5) ) |
| 2949 | | ROM_LOAD( "dt-06.512", 0x20000, 0x08000, CRC(3fe1527f) SHA1(b8df4bef2b1a879b65214025fc3b5998ef5c8886) ) |
| 2950 | | ROM_CONTINUE( 0x30000, 0x08000 ) |
| 2951 | | ROM_LOAD( "dt-07.256", 0x28000, 0x08000, CRC(61f9bce5) SHA1(ef8a5f5e4c66a143304bcab50ca87579f1507864) ) |
| 2952 | | ROM_LOAD( "dt-12.512", 0x40000, 0x08000, CRC(1a72ca8d) SHA1(f412758452cb3417e85c355ccb8794fde7edf1cc) ) |
| 2953 | | ROM_CONTINUE( 0x50000, 0x08000 ) |
| 2954 | | ROM_LOAD( "dt-13.256", 0x48000, 0x08000, CRC(ccb81aec) SHA1(56e524ed4373b7bd1074a0d22ff75ede379f1696) ) |
| 2955 | | ROM_LOAD( "dt-10.512", 0x60000, 0x08000, CRC(cfcfc9ed) SHA1(57f43d638cf864d68420f0203740be7bda9da5ca) ) |
| 2956 | | ROM_CONTINUE( 0x70000, 0x08000 ) |
| 2957 | | ROM_LOAD( "dt-11.256", 0x68000, 0x08000, CRC(53e9cf17) SHA1(8cbb45154a60f42f1b1e7299b12d2e92fc194df8) ) |
| 2958 | | |
| 2959 | | ROM_REGION( 1024, "proms", 0 ) |
| 2960 | | ROM_LOAD( "mb7122e.10b", 0x00000, 0x400, CRC(dcbfec4e) SHA1(a375caef4575746870e285d90ba991ea7daefad6) ) /* Priority (Not yet used) */ |
| 3236 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles (3bpp) */ |
| 3237 | ROM_LOAD( "dx06.5f", 0x00000, 0x10000, CRC(b6fb208c) SHA1(027d33f0b5feb6f0433134213cfcef96790eaace) ) |
| 3238 | ROM_LOAD( "dx07.7f", 0x10000, 0x10000, CRC(ee3e1817) SHA1(013496976a9ffacf1587b3a6fc0f548becb1ab0e) ) |
| 3239 | ROM_LOAD( "dx08.8f", 0x20000, 0x10000, CRC(705900fe) SHA1(53b9d09f9780a3bf3545bc27a2855ebee3884124) ) |
| 3240 | ROM_LOAD( "dx09.10f", 0x30000, 0x10000, CRC(3192571d) SHA1(240c6c099f1e6edbf0be7d5a4ec396b056c9f70f) ) |
| 3241 | ROM_LOAD( "dx10.12f", 0x40000, 0x10000, CRC(3ef77a32) SHA1(97b97c35a6ca994d2e7a6e7a63101eda9709bcb1) ) |
| 3242 | ROM_LOAD( "dx11.13f", 0x50000, 0x10000, CRC(9cf3d5b8) SHA1(df4974f8412ab1cf65871b8e4e3dbee478bf4d21) ) |
| 2961 | 3243 | ROM_END |
| 2962 | 3244 | |
| 2963 | | ROM_START( makyosen ) |
| 2964 | | ROM_REGION( 0x40000, "maincpu", 0 ) |
| 2965 | | ROM_LOAD( "ds00", 0x08000, 0x08000, CRC(33bb16fe) SHA1(5d3873b66e0d08b35d56a8b508c774b27368a100) ) |
| 2966 | | ROM_LOAD( "dt-01.512", 0x10000, 0x10000, CRC(c39bb877) SHA1(9beb59ba19f38417c5d4d36e8f3c41f2b017d2d6) ) |
| 2967 | | ROM_LOAD( "ds02", 0x20000, 0x10000, CRC(925307a4) SHA1(1e8b8eb21df1a11b14c981b343b34c6cc3676517) ) |
| 2968 | | ROM_LOAD( "ds03", 0x30000, 0x10000, CRC(9c0fcbf6) SHA1(bfe42b5277fea111840a9f59b2cb8dfe44444029) ) |
| 3245 | /* Different IC positions to World set? */ |
| 3246 | ROM_START( csilverj ) |
| 3247 | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 3248 | ROM_LOAD( "dx03-3.a4", 0x08000, 0x08000, CRC(02dd8cfc) SHA1(f29c0d9dd03e8c52672c0f3dbee44a93c5b4261d) ) |
| 3249 | ROM_LOAD( "dx01.a2", 0x10000, 0x10000, CRC(570fb50c) SHA1(3002f53182834a060fc282be1bc5767906e19ba2) ) |
| 3250 | ROM_LOAD( "dx02.a3", 0x20000, 0x10000, CRC(58625890) SHA1(503a969085f6dcb16687217c48136ea22d07c89f) ) |
| 2969 | 3251 | |
| 2970 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2971 | | ROM_LOAD( "ds05", 0x8000, 0x8000, CRC(e6e28ca9) SHA1(3b1f8219331db1910bfb428f8964f8fc1063df6f) ) |
| 3252 | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3253 | ROM_LOAD( "dx04-1.a5", 0x0000, 0x10000, CRC(29432691) SHA1(a76ecd27d217c66a0e43f93e29efe83c657925c3) ) |
| 2972 | 3254 | |
| 3255 | ROM_REGION( 0x18000, "audiocpu", 0 ) |
| 3256 | ROM_LOAD( "dx05.a6", 0x10000, 0x08000, CRC(eb32cf25) SHA1(9390c88033259c65eb15320e31f5d696970987cc) ) |
| 3257 | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 3258 | |
| 2973 | 3259 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 2974 | | ROM_LOAD( "ds-a.1b", 0x0000, 0x1000, BAD_DUMP CRC(8bb25edc) SHA1(7073b06747e55e4ac5b60b68a64ffbc7e18cb593) ) |
| 3260 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 2975 | 3261 | |
| 2976 | 3262 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 2977 | | ROM_LOAD( "ds14", 0x00000, 0x08000, CRC(00cbe9c8) SHA1(de7b640de8fd54ee79194945c96d5768d09f483b) ) |
| 3263 | ROM_LOAD( "dx00.a1", 0x00000, 0x08000, CRC(f01ef985) SHA1(d5b823bd7c0efcf3137f8643c5d99a260bed5675) ) |
| 2978 | 3264 | |
| 2979 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 2980 | | ROM_LOAD( "dt-19.512", 0x00000, 0x10000, CRC(da2abe4b) SHA1(d53e4769671f3fd437edcff7e7ea05156bbcb45d) ) |
| 2981 | | ROM_LOAD( "ds20", 0x10000, 0x08000, CRC(0eef7f56) SHA1(05c23aa6a598478cd4822634cff96055c585e9d2) ) |
| 2982 | | ROM_LOAD( "dt-16.512", 0x20000, 0x10000, CRC(e9955d8f) SHA1(aeef5e18f9d36c1bab3000e95205ce1b18cfbf0b) ) |
| 2983 | | ROM_LOAD( "ds18", 0x30000, 0x08000, CRC(2b2d1468) SHA1(a144ac1b367e1fec876156230e9ab1c99416962e) ) |
| 2984 | | ROM_LOAD( "dt-15.512", 0x40000, 0x10000, CRC(a54b2eb6) SHA1(25cb61f67135672154f1ad8e0c49ec04655e91de) ) |
| 2985 | | ROM_LOAD( "ds17", 0x50000, 0x08000, CRC(75ae349a) SHA1(15755a28925d5ed37fab4bd988716fcc5d20c290) ) |
| 2986 | | ROM_LOAD( "dt-21.512", 0x60000, 0x10000, CRC(1c5f682d) SHA1(4b7022cce930a9e9a0087c91e8344269fe7ed889) ) |
| 2987 | | ROM_LOAD( "ds22", 0x70000, 0x08000, CRC(c8ffb148) SHA1(ae1a8b3cd1f5e423dc1a3c7d05f9fe7c689432e3) ) |
| 3265 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites (3bpp) */ |
| 3266 | ROM_LOAD( "dx14.b5", 0x00000, 0x10000, CRC(80f07915) SHA1(ea100f12ef3a68110af911fa9beeb73b388f069d) ) |
| 3267 | /* 0x10000-0x1ffff empy */ |
| 3268 | ROM_LOAD( "dx13.b4", 0x20000, 0x10000, CRC(d32c02e7) SHA1(d0518ec31e9e3f7b4e76fba5d7c05c33c61a9c72) ) |
| 3269 | /* 0x30000-0x3ffff empy */ |
| 3270 | ROM_LOAD( "dx12.b3", 0x40000, 0x10000, CRC(ac78b76b) SHA1(c2be347fd950894401123ada8b27bfcfce53e66b) ) |
| 3271 | /* 0x50000-0x5ffff empy */ |
| 3272 | /* 0x60000-0x7ffff empy (no 4th plane) */ |
| 2988 | 3273 | |
| 2989 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 2990 | | ROM_LOAD( "dt-08.512", 0x00000, 0x08000, CRC(aec483f5) SHA1(1d6de823ab0eeb9c89e9c227428ff278663627f3) ) |
| 2991 | | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 2992 | | ROM_LOAD( "dt-09.256", 0x08000, 0x08000, CRC(446f0ce0) SHA1(072b88d6de5aa0ed6b1d60c266bcf170dea927d5) ) |
| 2993 | | ROM_LOAD( "dt-06.512", 0x20000, 0x08000, CRC(3fe1527f) SHA1(b8df4bef2b1a879b65214025fc3b5998ef5c8886) ) |
| 2994 | | ROM_CONTINUE( 0x30000, 0x08000 ) |
| 2995 | | ROM_LOAD( "dt-07.256", 0x28000, 0x08000, CRC(61f9bce5) SHA1(ef8a5f5e4c66a143304bcab50ca87579f1507864) ) |
| 2996 | | ROM_LOAD( "dt-12.512", 0x40000, 0x08000, CRC(1a72ca8d) SHA1(f412758452cb3417e85c355ccb8794fde7edf1cc) ) |
| 2997 | | ROM_CONTINUE( 0x50000, 0x08000 ) |
| 2998 | | ROM_LOAD( "dt-13.256", 0x48000, 0x08000, CRC(ccb81aec) SHA1(56e524ed4373b7bd1074a0d22ff75ede379f1696) ) |
| 2999 | | ROM_LOAD( "dt-10.512", 0x60000, 0x08000, CRC(cfcfc9ed) SHA1(57f43d638cf864d68420f0203740be7bda9da5ca) ) |
| 3000 | | ROM_CONTINUE( 0x70000, 0x08000 ) |
| 3001 | | ROM_LOAD( "dt-11.256", 0x68000, 0x08000, CRC(53e9cf17) SHA1(8cbb45154a60f42f1b1e7299b12d2e92fc194df8) ) |
| 3002 | | |
| 3003 | | ROM_REGION( 1024, "proms", 0 ) |
| 3004 | | ROM_LOAD( "mb7122e.10b", 0x00000, 0x400, CRC(dcbfec4e) SHA1(a375caef4575746870e285d90ba991ea7daefad6) ) /* Priority (Not yet used) */ |
| 3005 | | |
| 3006 | | ROM_REGION( 0x0600, "plds", 0 ) |
| 3007 | | ROM_LOAD( "pal16r4nc.10u", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */ |
| 3008 | | ROM_LOAD( "pal16r4nc.11g", 0x0200, 0x0104, NO_DUMP ) /* PAL is read protected */ |
| 3009 | | ROM_LOAD( "pal16r4nc.1s", 0x0400, 0x0104, NO_DUMP ) /* PAL is read protected */ |
| 3274 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles (3bpp) */ |
| 3275 | ROM_LOAD( "dx06.a7", 0x00000, 0x10000, CRC(b6fb208c) SHA1(027d33f0b5feb6f0433134213cfcef96790eaace) ) |
| 3276 | ROM_LOAD( "dx07.a8", 0x10000, 0x10000, CRC(ee3e1817) SHA1(013496976a9ffacf1587b3a6fc0f548becb1ab0e) ) |
| 3277 | ROM_LOAD( "dx08.a9", 0x20000, 0x10000, CRC(705900fe) SHA1(53b9d09f9780a3bf3545bc27a2855ebee3884124) ) |
| 3278 | ROM_LOAD( "dx09.a10", 0x30000, 0x10000, CRC(3192571d) SHA1(240c6c099f1e6edbf0be7d5a4ec396b056c9f70f) ) |
| 3279 | ROM_LOAD( "dx10.b1", 0x40000, 0x10000, CRC(3ef77a32) SHA1(97b97c35a6ca994d2e7a6e7a63101eda9709bcb1) ) |
| 3280 | ROM_LOAD( "dx11.b2", 0x50000, 0x10000, CRC(9cf3d5b8) SHA1(df4974f8412ab1cf65871b8e4e3dbee478bf4d21) ) |
| 3010 | 3281 | ROM_END |
| 3011 | 3282 | |
| 3012 | 3283 | ROM_START( oscar ) |
| r14742 | r14743 | |
| 3138 | 3409 | ROM_LOAD( "du-13.bin", 0x00000, 0x200, CRC(bea1f87e) SHA1(f5215992e4b53c9cd4c7e0b20ff5cfdce3ab6d02) ) /* Priority (Not yet used) */ |
| 3139 | 3410 | ROM_END |
| 3140 | 3411 | |
| 3141 | | ROM_START( lastmisn ) |
| 3142 | | ROM_REGION( 0x20000, "maincpu", 0 ) |
| 3143 | | ROM_LOAD( "dl03-6.13h", 0x08000, 0x08000, CRC(47751a5e) SHA1(190970a6eb849781e8853f2bed7b34ac44e569ca) ) /* Rev 6 roms */ |
| 3144 | | ROM_LOAD( "lm_dl04.7h", 0x10000, 0x10000, CRC(7dea1552) SHA1(920684413e2ba4313111e79821c5714977b26b1a) ) |
| 3412 | ROM_START( srdarwin ) |
| 3413 | ROM_REGION( 0x28000, "maincpu", 0 ) |
| 3414 | ROM_LOAD( "dy01-e.b14", 0x20000, 0x08000, CRC(176e9299) SHA1(20cd44ab610e384ab4f0172054c9adc432b12e9c) ) |
| 3415 | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 3416 | ROM_LOAD( "dy00.b16", 0x10000, 0x10000, CRC(2bf6b461) SHA1(435d922c7b9df7f2b2f774346caed81d330be8a0) ) |
| 3145 | 3417 | |
| 3146 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3147 | | ROM_LOAD( "lm_dl02.18h", 0x0000, 0x10000, CRC(ec9b5daf) SHA1(86d47bad123676abc82dd7c92943878c54c33075) ) |
| 3418 | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 3419 | ROM_LOAD( "dy04.d7", 0x8000, 0x8000, CRC(2ae3591c) SHA1(f21b06d84e2c3d3895be0812024641fd006e45cf) ) |
| 3148 | 3420 | |
| 3149 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 3150 | | ROM_LOAD( "dl05-.5h", 0x8000, 0x8000, CRC(1a5df8c0) SHA1(83d36b1d5fb87f50c44f3110804d6bbdbbc0da99) ) |
| 3151 | | |
| 3152 | 3421 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3153 | 3422 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3154 | 3423 | |
| 3155 | 3424 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3156 | | ROM_LOAD( "dl01-.2a", 0x00000, 0x2000, CRC(f3787a5d) SHA1(3701df42cb2aca951963703e72c6c7b272eed82b) ) |
| 3157 | | ROM_CONTINUE( 0x06000, 0x2000 ) |
| 3158 | | ROM_CONTINUE( 0x04000, 0x2000 ) |
| 3159 | | ROM_CONTINUE( 0x02000, 0x2000 ) |
| 3425 | ROM_LOAD( "dy05.b6", 0x00000, 0x4000, CRC(8780e8a3) SHA1(03ea91fdc5aba8e139201604fb3bf9b69f71f056) ) |
| 3160 | 3426 | |
| 3161 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3162 | | ROM_LOAD( "dl11-.13f", 0x00000, 0x08000, CRC(36579d3b) SHA1(8edf952dafcd5bc66e08074687f0bec809fd4c2f) ) |
| 3163 | | ROM_LOAD( "dl12-.9f", 0x20000, 0x08000, CRC(2ba6737e) SHA1(c5e4c27726bf14e9cd60d62e2f17ea5be8093c37) ) |
| 3164 | | ROM_LOAD( "dl13-.8f", 0x40000, 0x08000, CRC(39a7dc93) SHA1(3b7968fd06ac0379525c1d3e73f8bbe18ea36439) ) |
| 3165 | | ROM_LOAD( "dl10-.16f", 0x60000, 0x08000, CRC(fe275ea8) SHA1(2f089f96583235f1f5226ef2a64b430d84efbeee) ) |
| 3427 | ROM_REGION( 0x30000, "gfx2", 0 ) /* sprites */ |
| 3428 | ROM_LOAD( "dy07.h16", 0x00000, 0x8000, CRC(97eaba60) SHA1(e3252b67bad7babcf4ece39f46ae4aeb950eb92b) ) |
| 3429 | ROM_LOAD( "dy06.h14", 0x08000, 0x8000, CRC(c279541b) SHA1(eb3737413499d07b6c2af99a95b27b2590e670c5) ) |
| 3430 | ROM_LOAD( "dy09.k13", 0x10000, 0x8000, CRC(d30d1745) SHA1(647b6121ab6fa812368da45e1295cc41f73be89d) ) |
| 3431 | ROM_LOAD( "dy08.k11", 0x18000, 0x8000, CRC(71d645fd) SHA1(a74a9b9697fc39b4e675e732a9d7d82976cc95dd) ) |
| 3432 | ROM_LOAD( "dy11.k16", 0x20000, 0x8000, CRC(fd9ccc5b) SHA1(b38c44c01acdc455d4192e4c8be1d68d9eb0c7b6) ) |
| 3433 | ROM_LOAD( "dy10.k14", 0x28000, 0x8000, CRC(88770ab8) SHA1(0a4a807a8d3b0653864bd984872d5567836f8cf8) ) |
| 3166 | 3434 | |
| 3167 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 3168 | | ROM_LOAD( "dl09-.12k", 0x00000, 0x10000, CRC(6a5a0c5d) SHA1(0106cf693c284be5faf96e56b651fab92a410915) ) |
| 3169 | | ROM_LOAD( "dl08-.14k", 0x20000, 0x10000, CRC(3b38cfce) SHA1(d6829bed6916fb301c08031bd466ee4dcc05b275) ) |
| 3170 | | ROM_LOAD( "dl07-.15k", 0x40000, 0x10000, CRC(1b60604d) SHA1(1ee15cfdac87f7eeb92050766293b894cfad1466) ) |
| 3171 | | ROM_LOAD( "dl06-.17k", 0x60000, 0x10000, CRC(c43c26a7) SHA1(896e278935b100edc12cd970469f2e8293eb96cc) ) |
| 3435 | ROM_REGION( 0x40000, "gfx3", 0 ) /* tiles */ |
| 3436 | ROM_LOAD( "dy03.b4", 0x00000, 0x4000, CRC(44f2a4f9) SHA1(97368dd112451cd630f2fa5ba54679e84e7d4d97) ) |
| 3437 | ROM_CONTINUE( 0x10000, 0x4000 ) |
| 3438 | ROM_CONTINUE( 0x20000, 0x4000 ) |
| 3439 | ROM_CONTINUE( 0x30000, 0x4000 ) |
| 3440 | ROM_LOAD( "dy02.b5", 0x08000, 0x4000, CRC(522d9a9e) SHA1(248274ed6df604357cad386fcf0521b26810aa0e) ) |
| 3441 | ROM_CONTINUE( 0x18000, 0x4000 ) |
| 3442 | ROM_CONTINUE( 0x28000, 0x4000 ) |
| 3443 | ROM_CONTINUE( 0x38000, 0x4000 ) |
| 3172 | 3444 | |
| 3173 | 3445 | ROM_REGION( 256, "proms", 0 ) |
| 3174 | | ROM_LOAD( "dl-14.9c", 0x00000, 0x100, CRC(2e55aa12) SHA1(c0f2b9649467eb9d2c1e47589b5990f5c5e8cc93) ) /* Priority (Not yet used) */ |
| 3446 | ROM_LOAD( "dy12.f4", 0x00000, 0x100, CRC(ebfaaed9) SHA1(5723dbfa3eb3fc4df8c8975b320a5c49848309d8) ) /* Priority (Not yet used) */ |
| 3175 | 3447 | ROM_END |
| 3176 | 3448 | |
| 3177 | | ROM_START( lastmisno ) |
| 3178 | | ROM_REGION( 0x20000, "maincpu", 0 ) |
| 3179 | | ROM_LOAD( "lm_dl03.13h", 0x08000, 0x08000, CRC(357f5f6b) SHA1(a114aac50db62a6bcb943681e517ad7c88ec47f4) ) /* Rev 5 roms */ |
| 3180 | | ROM_LOAD( "lm_dl04.7h", 0x10000, 0x10000, CRC(7dea1552) SHA1(920684413e2ba4313111e79821c5714977b26b1a) ) |
| 3449 | ROM_START( srdarwinj ) |
| 3450 | ROM_REGION( 0x28000, "maincpu", 0 ) |
| 3451 | ROM_LOAD( "dy_01.rom", 0x20000, 0x08000, CRC(1eeee4ff) SHA1(89a70de8bd61c671582b11773ce69b2edcd9c2f8) ) |
| 3452 | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 3453 | ROM_LOAD( "dy00.b16", 0x10000, 0x10000, CRC(2bf6b461) SHA1(435d922c7b9df7f2b2f774346caed81d330be8a0) ) |
| 3181 | 3454 | |
| 3182 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3183 | | ROM_LOAD( "lm_dl02.18h", 0x0000, 0x10000, CRC(ec9b5daf) SHA1(86d47bad123676abc82dd7c92943878c54c33075) ) |
| 3455 | ROM_REGION( 2*0x10000, "audiocpu", 0 ) /* 64K for sound CPU + 64k for decrypted opcodes */ |
| 3456 | ROM_LOAD( "dy04.d7", 0x8000, 0x8000, CRC(2ae3591c) SHA1(f21b06d84e2c3d3895be0812024641fd006e45cf) ) |
| 3184 | 3457 | |
| 3185 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 3186 | | ROM_LOAD( "dl05-.5h", 0x8000, 0x8000, CRC(1a5df8c0) SHA1(83d36b1d5fb87f50c44f3110804d6bbdbbc0da99) ) |
| 3187 | | |
| 3188 | 3458 | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3189 | 3459 | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3190 | 3460 | |
| 3191 | 3461 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3192 | | ROM_LOAD( "dl01-.2a", 0x00000, 0x2000, CRC(f3787a5d) SHA1(3701df42cb2aca951963703e72c6c7b272eed82b) ) |
| 3193 | | ROM_CONTINUE( 0x06000, 0x2000 ) |
| 3194 | | ROM_CONTINUE( 0x04000, 0x2000 ) |
| 3195 | | ROM_CONTINUE( 0x02000, 0x2000 ) |
| 3462 | ROM_LOAD( "dy05.b6", 0x00000, 0x4000, CRC(8780e8a3) SHA1(03ea91fdc5aba8e139201604fb3bf9b69f71f056) ) |
| 3196 | 3463 | |
| 3197 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3198 | | ROM_LOAD( "dl11-.13f", 0x00000, 0x08000, CRC(36579d3b) SHA1(8edf952dafcd5bc66e08074687f0bec809fd4c2f) ) |
| 3199 | | ROM_LOAD( "dl12-.9f", 0x20000, 0x08000, CRC(2ba6737e) SHA1(c5e4c27726bf14e9cd60d62e2f17ea5be8093c37) ) |
| 3200 | | ROM_LOAD( "dl13-.8f", 0x40000, 0x08000, CRC(39a7dc93) SHA1(3b7968fd06ac0379525c1d3e73f8bbe18ea36439) ) |
| 3201 | | ROM_LOAD( "dl10-.16f", 0x60000, 0x08000, CRC(fe275ea8) SHA1(2f089f96583235f1f5226ef2a64b430d84efbeee) ) |
| 3464 | ROM_REGION( 0x30000, "gfx2", 0 ) /* sprites */ |
| 3465 | ROM_LOAD( "dy07.h16", 0x00000, 0x8000, CRC(97eaba60) SHA1(e3252b67bad7babcf4ece39f46ae4aeb950eb92b) ) |
| 3466 | ROM_LOAD( "dy06.h14", 0x08000, 0x8000, CRC(c279541b) SHA1(eb3737413499d07b6c2af99a95b27b2590e670c5) ) |
| 3467 | ROM_LOAD( "dy09.k13", 0x10000, 0x8000, CRC(d30d1745) SHA1(647b6121ab6fa812368da45e1295cc41f73be89d) ) |
| 3468 | ROM_LOAD( "dy08.k11", 0x18000, 0x8000, CRC(71d645fd) SHA1(a74a9b9697fc39b4e675e732a9d7d82976cc95dd) ) |
| 3469 | ROM_LOAD( "dy11.k16", 0x20000, 0x8000, CRC(fd9ccc5b) SHA1(b38c44c01acdc455d4192e4c8be1d68d9eb0c7b6) ) |
| 3470 | ROM_LOAD( "dy10.k14", 0x28000, 0x8000, CRC(88770ab8) SHA1(0a4a807a8d3b0653864bd984872d5567836f8cf8) ) |
| 3202 | 3471 | |
| 3203 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 3204 | | ROM_LOAD( "dl09-.12k", 0x00000, 0x10000, CRC(6a5a0c5d) SHA1(0106cf693c284be5faf96e56b651fab92a410915) ) |
| 3205 | | ROM_LOAD( "dl08-.14k", 0x20000, 0x10000, CRC(3b38cfce) SHA1(d6829bed6916fb301c08031bd466ee4dcc05b275) ) |
| 3206 | | ROM_LOAD( "dl07-.15k", 0x40000, 0x10000, CRC(1b60604d) SHA1(1ee15cfdac87f7eeb92050766293b894cfad1466) ) |
| 3207 | | ROM_LOAD( "dl06-.17k", 0x60000, 0x10000, CRC(c43c26a7) SHA1(896e278935b100edc12cd970469f2e8293eb96cc) ) |
| 3472 | ROM_REGION( 0x40000, "gfx3", 0 ) /* tiles */ |
| 3473 | ROM_LOAD( "dy03.b4", 0x00000, 0x4000, CRC(44f2a4f9) SHA1(97368dd112451cd630f2fa5ba54679e84e7d4d97) ) |
| 3474 | ROM_CONTINUE( 0x10000, 0x4000 ) |
| 3475 | ROM_CONTINUE( 0x20000, 0x4000 ) |
| 3476 | ROM_CONTINUE( 0x30000, 0x4000 ) |
| 3477 | ROM_LOAD( "dy02.b5", 0x08000, 0x4000, CRC(522d9a9e) SHA1(248274ed6df604357cad386fcf0521b26810aa0e) ) |
| 3478 | ROM_CONTINUE( 0x18000, 0x4000 ) |
| 3479 | ROM_CONTINUE( 0x28000, 0x4000 ) |
| 3480 | ROM_CONTINUE( 0x38000, 0x4000 ) |
| 3208 | 3481 | |
| 3209 | 3482 | ROM_REGION( 256, "proms", 0 ) |
| 3210 | | ROM_LOAD( "dl-14.9c", 0x00000, 0x100, CRC(2e55aa12) SHA1(c0f2b9649467eb9d2c1e47589b5990f5c5e8cc93) ) /* Priority (Not yet used) */ |
| 3483 | ROM_LOAD( "dy12.f4", 0x00000, 0x100, CRC(ebfaaed9) SHA1(5723dbfa3eb3fc4df8c8975b320a5c49848309d8) ) /* Priority (Not yet used) */ |
| 3211 | 3484 | ROM_END |
| 3212 | 3485 | |
| 3213 | | ROM_START( lastmisnj ) |
| 3214 | | ROM_REGION( 0x20000, "maincpu", 0 ) |
| 3215 | | ROM_LOAD( "dl03-.13h", 0x08000, 0x08000, CRC(4be5e7e1) SHA1(9f943658663da31947cebdcbcb5f4e2be0714c06) ) |
| 3216 | | ROM_LOAD( "dl04-.7h", 0x10000, 0x10000, CRC(f026adf9) SHA1(4ccd0e714a6eb7cee388c93beee2d5510407c961) ) |
| 3486 | ROM_START( cobracom ) |
| 3487 | ROM_REGION( 0x30000, "maincpu", 0 ) |
| 3488 | ROM_LOAD( "el11-5.bin", 0x08000, 0x08000, CRC(af0a8b05) SHA1(096e4e7f2785a20bfaec14277413ce4e20e90214) ) |
| 3489 | ROM_LOAD( "el12-4.bin", 0x10000, 0x10000, CRC(7a44ef38) SHA1(d7dc277dce08f9d073290e100be4a7ca2e2b82cb) ) |
| 3490 | ROM_LOAD( "el13.bin", 0x20000, 0x10000, CRC(04505acb) SHA1(2220efb277884588859375dab9960f04f07273a7) ) |
| 3217 | 3491 | |
| 3218 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3219 | | ROM_LOAD( "dl02-.18h", 0x0000, 0x10000, CRC(d0de2b5d) SHA1(e0bb34c2a2ef6fc6f05ab9a98bd23a39004c0c05) ) |
| 3220 | | |
| 3221 | 3492 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 3222 | | ROM_LOAD( "dl05-.5h", 0x8000, 0x8000, CRC(1a5df8c0) SHA1(83d36b1d5fb87f50c44f3110804d6bbdbbc0da99) ) |
| 3493 | ROM_LOAD( "el10-4.bin", 0x8000, 0x8000, CRC(edfad118) SHA1(10de8805472346fead62460a3fdc09ae26a4e0d5) ) |
| 3223 | 3494 | |
| 3224 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3225 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3495 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3496 | ROM_LOAD( "el14.bin", 0x00000, 0x08000, CRC(47246177) SHA1(51b025740dc03b04009ac97d8d110ab521894386) ) |
| 3226 | 3497 | |
| 3227 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3228 | | ROM_LOAD( "dl01-.2a", 0x00000, 0x2000, CRC(f3787a5d) SHA1(3701df42cb2aca951963703e72c6c7b272eed82b) ) |
| 3229 | | ROM_CONTINUE( 0x06000, 0x2000 ) |
| 3230 | | ROM_CONTINUE( 0x04000, 0x2000 ) |
| 3231 | | ROM_CONTINUE( 0x02000, 0x2000 ) |
| 3498 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3499 | ROM_LOAD( "el00-4.bin", 0x00000, 0x10000, CRC(122da2a8) SHA1(ce72f16abf7e5449c7d044d4b827e8735c3be0ff) ) |
| 3500 | ROM_LOAD( "el01-4.bin", 0x20000, 0x10000, CRC(27bf705b) SHA1(196c35aaf3816d3eef4c2af6d146a90a48365d33) ) |
| 3501 | ROM_LOAD( "el02-4.bin", 0x40000, 0x10000, CRC(c86fede6) SHA1(97584fa19591651fcfb39d1b2b6306165e93554c) ) |
| 3502 | ROM_LOAD( "el03-4.bin", 0x60000, 0x10000, CRC(1d8a855b) SHA1(429261c200dddc62a330be8aea150b2037133188) ) |
| 3232 | 3503 | |
| 3233 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3234 | | ROM_LOAD( "dl11-.13f", 0x00000, 0x08000, CRC(36579d3b) SHA1(8edf952dafcd5bc66e08074687f0bec809fd4c2f) ) |
| 3235 | | ROM_LOAD( "dl12-.9f", 0x20000, 0x08000, CRC(2ba6737e) SHA1(c5e4c27726bf14e9cd60d62e2f17ea5be8093c37) ) |
| 3236 | | ROM_LOAD( "dl13-.8f", 0x40000, 0x08000, CRC(39a7dc93) SHA1(3b7968fd06ac0379525c1d3e73f8bbe18ea36439) ) |
| 3237 | | ROM_LOAD( "dl10-.16f", 0x60000, 0x08000, CRC(fe275ea8) SHA1(2f089f96583235f1f5226ef2a64b430d84efbeee) ) |
| 3504 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles 1 */ |
| 3505 | ROM_LOAD( "el05.bin", 0x00000, 0x10000, CRC(1c4f6033) SHA1(4a7dece911166d1ff5f41df6ec5140596206d8d4) ) |
| 3506 | ROM_LOAD( "el06.bin", 0x20000, 0x10000, CRC(d24ba794) SHA1(b34b7bbaab4ebdd81c87d363f087cc92e27e8d1c) ) |
| 3507 | ROM_LOAD( "el04.bin", 0x40000, 0x10000, CRC(d80a49ce) SHA1(1a92413b5ab53f80e44a954433e69ec5fe2c0aa6) ) |
| 3508 | ROM_LOAD( "el07.bin", 0x60000, 0x10000, CRC(6d771fc3) SHA1(f29979f3aa07bdb544fb0c1d773c5558b4533390) ) |
| 3238 | 3509 | |
| 3239 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 3240 | | ROM_LOAD( "dl09-.12k", 0x00000, 0x10000, CRC(6a5a0c5d) SHA1(0106cf693c284be5faf96e56b651fab92a410915) ) |
| 3241 | | ROM_LOAD( "dl08-.14k", 0x20000, 0x10000, CRC(3b38cfce) SHA1(d6829bed6916fb301c08031bd466ee4dcc05b275) ) |
| 3242 | | ROM_LOAD( "dl07-.15k", 0x40000, 0x10000, CRC(1b60604d) SHA1(1ee15cfdac87f7eeb92050766293b894cfad1466) ) |
| 3243 | | ROM_LOAD( "dl06-.17k", 0x60000, 0x10000, CRC(c43c26a7) SHA1(896e278935b100edc12cd970469f2e8293eb96cc) ) |
| 3244 | | |
| 3245 | | ROM_REGION( 256, "proms", 0 ) |
| 3246 | | ROM_LOAD( "dl-14.9c", 0x00000, 0x100, CRC(2e55aa12) SHA1(c0f2b9649467eb9d2c1e47589b5990f5c5e8cc93) ) /* Priority (Not yet used) */ |
| 3510 | ROM_REGION( 0x80000, "gfx4", 0 ) /* tiles 2 */ |
| 3511 | ROM_LOAD( "el08.bin", 0x00000, 0x08000, CRC(cb0dcf4c) SHA1(e14853f83ee9ba5cbf2eb1e085fee4e65af3cc25) ) |
| 3512 | ROM_CONTINUE( 0x40000, 0x08000 ) |
| 3513 | ROM_LOAD( "el09.bin", 0x20000, 0x08000, CRC(1fae5be7) SHA1(be6e090b0b82648b385d9b6d11775f3ff40f0af3) ) |
| 3514 | ROM_CONTINUE( 0x60000, 0x08000 ) |
| 3247 | 3515 | ROM_END |
| 3248 | 3516 | |
| 3249 | | ROM_START( shackled ) |
| 3250 | | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 3251 | | ROM_LOAD( "dk-02.rom", 0x08000, 0x08000, CRC(87f8fa85) SHA1(1cb93a60eefdb453a3cc6ec9c5cc2e367fb8aeb0) ) |
| 3252 | | ROM_LOAD( "dk-06.rom", 0x10000, 0x10000, CRC(69ad62d1) SHA1(1aa23b12ab4f1908cddd25f091e1f9bd70a5113c) ) |
| 3253 | | ROM_LOAD( "dk-05.rom", 0x20000, 0x10000, CRC(598dd128) SHA1(10843c5352eef03c8675df6abaf23c9c9c795aa3) ) |
| 3254 | | ROM_LOAD( "dk-04.rom", 0x30000, 0x10000, CRC(36d305d4) SHA1(17586c316aff405cf20c1467d69c98fa2a3c2630) ) |
| 3255 | | ROM_LOAD( "dk-03.rom", 0x40000, 0x08000, CRC(6fd90fd1) SHA1(2f8db17e5545c82d243a7e23e7bda2c2a9101360) ) |
| 3517 | ROM_START( cobracomj ) |
| 3518 | ROM_REGION( 0x30000, "maincpu", 0 ) |
| 3519 | ROM_LOAD( "eh-11.rom", 0x08000, 0x08000, CRC(868637e1) SHA1(8b1e3e045e341bb94b1f6c7d89198b22e6c19de7) ) |
| 3520 | ROM_LOAD( "eh-12.rom", 0x10000, 0x10000, CRC(7c878a83) SHA1(9b2a3083c6dae69626fdab16d97517d30eaa1859) ) |
| 3521 | ROM_LOAD( "el13.bin", 0x20000, 0x10000, CRC(04505acb) SHA1(2220efb277884588859375dab9960f04f07273a7) ) |
| 3256 | 3522 | |
| 3257 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3258 | | ROM_LOAD( "dk-01.rom", 0x00000, 0x10000, CRC(71fe3bda) SHA1(959cce01362b2c670c2e15b03a78a1ff9cea4ee9) ) |
| 3259 | | |
| 3260 | 3523 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 3261 | | ROM_LOAD( "dk-07.rom", 0x08000, 0x08000, CRC(887e4bcc) SHA1(6427396080e9cd8647adff47c8ed04593a14268c) ) |
| 3524 | ROM_LOAD( "eh-10.rom", 0x8000, 0x8000, CRC(62ca5e89) SHA1(b04acaccc58846e0d277868a873a440b7f8071b0) ) |
| 3262 | 3525 | |
| 3263 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3264 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3265 | | |
| 3266 | 3526 | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3267 | | ROM_LOAD( "dk-00.rom", 0x00000, 0x08000, CRC(69b975aa) SHA1(38cb96768c79ff1aa1b4b190e08ec9155baf698a) ) |
| 3527 | ROM_LOAD( "el14.bin", 0x00000, 0x08000, CRC(47246177) SHA1(51b025740dc03b04009ac97d8d110ab521894386) ) |
| 3268 | 3528 | |
| 3269 | 3529 | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3270 | | ROM_LOAD( "dk-12.rom", 0x00000, 0x10000, CRC(615c2371) SHA1(30b25dc27d34646d886a465c77622eaa894d83c3) ) |
| 3271 | | ROM_LOAD( "dk-13.rom", 0x10000, 0x10000, CRC(479aa503) SHA1(1167f0d15439c95a1094f81855203e863ce0488d) ) |
| 3272 | | ROM_LOAD( "dk-14.rom", 0x20000, 0x10000, CRC(cdc24246) SHA1(1a4189bc2b1fa99740dd7921608159936ba3bd07) ) |
| 3273 | | ROM_LOAD( "dk-15.rom", 0x30000, 0x10000, CRC(88db811b) SHA1(7d3c4a80925f323efb589798b4a341d1a2ca95f9) ) |
| 3274 | | ROM_LOAD( "dk-16.rom", 0x40000, 0x10000, CRC(061a76bd) SHA1(5bcb513e48bed9b7c4207d94531be691a85e295d) ) |
| 3275 | | ROM_LOAD( "dk-17.rom", 0x50000, 0x10000, CRC(a6c5d8af) SHA1(58f3fece9a5ef8b39090a2f39610381b8e7cdbf7) ) |
| 3276 | | ROM_LOAD( "dk-18.rom", 0x60000, 0x10000, CRC(4d466757) SHA1(701d79bebbba4f266e19080d16ff2f93ffa94287) ) |
| 3277 | | ROM_LOAD( "dk-19.rom", 0x70000, 0x10000, CRC(1911e83e) SHA1(174e9db3f2211ecbbb93c6bda8f6185dbfdbc818) ) |
| 3530 | ROM_LOAD( "eh-00.rom", 0x00000, 0x10000, CRC(d96b6797) SHA1(01c4a9f2bebb13cba14636690cd5356db73f045e) ) |
| 3531 | ROM_LOAD( "eh-01.rom", 0x20000, 0x10000, CRC(3fef9c02) SHA1(e4b731faf6a2f4e5fed8ba9bd07e0f203981ffec) ) |
| 3532 | ROM_LOAD( "eh-02.rom", 0x40000, 0x10000, CRC(bfae6c34) SHA1(9503a120e11e9466cd9a2931fd44a631d72ca5f0) ) |
| 3533 | ROM_LOAD( "eh-03.rom", 0x60000, 0x10000, CRC(d56790f8) SHA1(1cc7cb9f7102158de14a737e9317a54f01790ba8) ) |
| 3278 | 3534 | |
| 3279 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 3280 | | ROM_LOAD( "dk-11.rom", 0x00000, 0x10000, CRC(5cf5719f) SHA1(8c7582ac19010421ec748391a193aa18e51b981f) ) |
| 3281 | | ROM_LOAD( "dk-10.rom", 0x20000, 0x10000, CRC(408e6d08) SHA1(28cb76792e5f84bd101a91cb82597a5939804f84) ) |
| 3282 | | ROM_LOAD( "dk-09.rom", 0x40000, 0x10000, CRC(c1557fac) SHA1(7d39ec793113a48baf45c2ea07abb07e2e48985a) ) |
| 3283 | | ROM_LOAD( "dk-08.rom", 0x60000, 0x10000, CRC(5e54e9f5) SHA1(1ab41a3bde1f2c2be670e89cf402be28001c17d1) ) |
| 3284 | | ROM_END |
| 3535 | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles 1 */ |
| 3536 | ROM_LOAD( "el05.bin", 0x00000, 0x10000, CRC(1c4f6033) SHA1(4a7dece911166d1ff5f41df6ec5140596206d8d4) ) |
| 3537 | ROM_LOAD( "el06.bin", 0x20000, 0x10000, CRC(d24ba794) SHA1(b34b7bbaab4ebdd81c87d363f087cc92e27e8d1c) ) |
| 3538 | ROM_LOAD( "el04.bin", 0x40000, 0x10000, CRC(d80a49ce) SHA1(1a92413b5ab53f80e44a954433e69ec5fe2c0aa6) ) |
| 3539 | ROM_LOAD( "el07.bin", 0x60000, 0x10000, CRC(6d771fc3) SHA1(f29979f3aa07bdb544fb0c1d773c5558b4533390) ) |
| 3285 | 3540 | |
| 3286 | | ROM_START( breywood ) |
| 3287 | | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 3288 | | ROM_LOAD( "7.bin", 0x08000, 0x08000, CRC(c19856b9) SHA1(766994703bb59879c311675353d7231ad27c7c16) ) |
| 3289 | | ROM_LOAD( "3.bin", 0x10000, 0x10000, CRC(2860ea02) SHA1(7ac090c3ae9d71baa6227ec9555f1c9f2d25ea0d) ) |
| 3290 | | ROM_LOAD( "4.bin", 0x20000, 0x10000, CRC(0fdd915e) SHA1(262df956dfc727c710ade28af7f33fddaafd7ee2) ) |
| 3291 | | ROM_LOAD( "5.bin", 0x30000, 0x10000, CRC(71036579) SHA1(c58ff3222b5bcd75d58c5f282554e92103e80916) ) |
| 3292 | | ROM_LOAD( "6.bin", 0x40000, 0x08000, CRC(308f4893) SHA1(539c138ff01c5718cc8a982482b989468d532699) ) |
| 3293 | | |
| 3294 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3295 | | ROM_LOAD( "8.bin", 0x0000, 0x10000, CRC(3d9fb623) SHA1(6e5eaad9bb0a432e2da5da5b18a2ed36617bdde2) ) |
| 3296 | | |
| 3297 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 3298 | | ROM_LOAD( "2.bin", 0x8000, 0x8000, CRC(4a471c38) SHA1(963ed7b6afeefdfc2cf0d65b0998f973330e6495) ) |
| 3299 | | |
| 3300 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3301 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3302 | | |
| 3303 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3304 | | ROM_LOAD( "1.bin", 0x00000, 0x08000, CRC(815a891a) SHA1(e557d6a35821a8589d9e3df0f42131b58b08c8ca) ) |
| 3305 | | |
| 3306 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3307 | | ROM_LOAD( "20.bin", 0x00000, 0x10000, CRC(2b7634f2) SHA1(56d963d4960d9b3e888c8107340763e176adfa9b) ) |
| 3308 | | ROM_LOAD( "19.bin", 0x10000, 0x10000, CRC(4530a952) SHA1(99251a21347815cba465669e18df31262bcdaba1) ) |
| 3309 | | ROM_LOAD( "18.bin", 0x20000, 0x10000, CRC(87c28833) SHA1(3f1a294065326389d304e540bc880844c6c7cb06) ) |
| 3310 | | ROM_LOAD( "17.bin", 0x30000, 0x10000, CRC(bfb43a4d) SHA1(56092935147a3b643a9b39eb7cfc067a764644c5) ) |
| 3311 | | ROM_LOAD( "16.bin", 0x40000, 0x10000, CRC(f9848cc4) SHA1(6d8e77b67ce4d418defba6f6979632f31d2307c6) ) |
| 3312 | | ROM_LOAD( "15.bin", 0x50000, 0x10000, CRC(baa3d218) SHA1(3c31df23cc871cffd9a4dafae106e4a98f5af848) ) |
| 3313 | | ROM_LOAD( "14.bin", 0x60000, 0x10000, CRC(12afe533) SHA1(6df3471c16a714d118717da549a7523aa388ddd3) ) |
| 3314 | | ROM_LOAD( "13.bin", 0x70000, 0x10000, CRC(03373755) SHA1(d2541dd957803168f246d96b7cd74eae7fd43188) ) |
| 3315 | | |
| 3316 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 3317 | | ROM_LOAD( "9.bin", 0x00000, 0x10000, CRC(067e2a43) SHA1(f1da7455aab21f94ed25a93b0ebfde69baa475d1) ) |
| 3318 | | ROM_LOAD( "10.bin", 0x20000, 0x10000, CRC(c19733aa) SHA1(3dfcfd33c5c4f792bb941ac933301c03ddd72b03) ) |
| 3319 | | ROM_LOAD( "11.bin", 0x40000, 0x10000, CRC(e37d5dbe) SHA1(ff79b4f6d8b0a3061e78d15480df0155650f347f) ) |
| 3320 | | ROM_LOAD( "12.bin", 0x60000, 0x10000, CRC(beee880f) SHA1(9a818a75cbec425a13f629bda6d50aa341aa1896) ) |
| 3541 | ROM_REGION( 0x80000, "gfx4", 0 ) /* tiles 2 */ |
| 3542 | ROM_LOAD( "el08.bin", 0x00000, 0x08000, CRC(cb0dcf4c) SHA1(e14853f83ee9ba5cbf2eb1e085fee4e65af3cc25) ) |
| 3543 | ROM_CONTINUE( 0x40000, 0x08000 ) |
| 3544 | ROM_LOAD( "el09.bin", 0x20000, 0x08000, CRC(1fae5be7) SHA1(be6e090b0b82648b385d9b6d11775f3ff40f0af3) ) |
| 3545 | ROM_CONTINUE( 0x60000, 0x08000 ) |
| 3321 | 3546 | ROM_END |
| 3322 | 3547 | |
| 3323 | | /* |
| 3324 | | Main Compoennts |
| 3325 | | --------------- |
| 3326 | | |
| 3327 | | Top board (DATA EAST DE-0250-3): |
| 3328 | | 2x MC68B09EP (18e,19e)(main) |
| 3329 | | 1x RP65C02A (3f)(sound) |
| 3330 | | 1x YM3812 (1e)(sound) |
| 3331 | | 1x YM2203 (1f)(sound) |
| 3332 | | 2x Y30148 (1j,2j)(sound) |
| 3333 | | 1x OKI M5205 (3j)(sound) |
| 3334 | | 1x NEC PC3403C (1j)(sound) |
| 3335 | | 1x C4558C (2j)(sound) |
| 3336 | | 1x oscillator 8.000 (x1) |
| 3337 | | 1x ID8751H (read protected) |
| 3338 | | |
| 3339 | | Lower board (DATA EAST DE-0251-2): |
| 3340 | | 1x DECO TC15G032AY-0013-8644a-DSPC10 (square component, with 135 pass-through pins)(14h) |
| 3341 | | 1x DECO VSC30-M60348-6102 (DIL40)(9a) |
| 3342 | | 1x DECO HMC20-M60232-6902 (DIL28)(14a) |
| 3343 | | 1x oscillator 12.000 (x1) |
| 3344 | | |
| 3345 | | ROMs |
| 3346 | | ---- |
| 3347 | | |
| 3348 | | Top board (DATA EAST DE-0250-3): |
| 3349 | | 2x MBM27256 (00,03) |
| 3350 | | 10x MBM27C512 (01,02,04,05,06,07,08,09,10,11) |
| 3351 | | 1x MB7122 (DIL18) (15) |
| 3352 | | |
| 3353 | | Lower board (DATA EAST DE-0251-2): |
| 3354 | | 3x MBM27C512 |
| 3355 | | |
| 3356 | | Notes |
| 3357 | | ----- |
| 3358 | | |
| 3359 | | Top board (DATA EAST DE-0250-3): |
| 3360 | | 1x JAMMA edge connector |
| 3361 | | 2x 25x2 legs connectors to lower board (cn1,cn2) |
| 3362 | | 1x trimmer (volume) |
| 3363 | | 2x 8 switches dip (7k,16k) |
| 3364 | | |
| 3365 | | Lower board (DATA EAST DE-0251-2): |
| 3366 | | 2x 25x2 legs connectors to top board (cn1,cn2) |
| 3367 | | |
| 3368 | | */ |
| 3369 | | |
| 3370 | | ROM_START( csilver ) |
| 3371 | | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 3372 | | ROM_LOAD( "dx03-12.18d", 0x08000, 0x08000, CRC(2d926e7c) SHA1(cf38e92904edb1870b0a4965f9049d67efe8cf6a) ) |
| 3373 | | ROM_LOAD( "dx01.12d", 0x10000, 0x10000, CRC(570fb50c) SHA1(3002f53182834a060fc282be1bc5767906e19ba2) ) |
| 3374 | | ROM_LOAD( "dx02.13d", 0x20000, 0x10000, CRC(58625890) SHA1(503a969085f6dcb16687217c48136ea22d07c89f) ) |
| 3375 | | |
| 3376 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3377 | | ROM_LOAD( "dx04-1.19d", 0x0000, 0x10000, CRC(29432691) SHA1(a76ecd27d217c66a0e43f93e29efe83c657925c3) ) |
| 3378 | | |
| 3379 | | ROM_REGION( 0x18000, "audiocpu", 0 ) |
| 3380 | | ROM_LOAD( "dx05.3f", 0x10000, 0x08000, CRC(eb32cf25) SHA1(9390c88033259c65eb15320e31f5d696970987cc) ) |
| 3381 | | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 3382 | | |
| 3383 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3384 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) // dx-8.19a ? |
| 3385 | | |
| 3386 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3387 | | ROM_LOAD( "dx00.3d", 0x00000, 0x08000, CRC(f01ef985) SHA1(d5b823bd7c0efcf3137f8643c5d99a260bed5675) ) |
| 3388 | | |
| 3389 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites (3bpp) */ |
| 3390 | | ROM_LOAD( "dx14.15k", 0x00000, 0x10000, CRC(80f07915) SHA1(ea100f12ef3a68110af911fa9beeb73b388f069d) ) |
| 3391 | | /* 0x10000-0x1ffff empy */ |
| 3392 | | ROM_LOAD( "dx13.13k", 0x20000, 0x10000, CRC(d32c02e7) SHA1(d0518ec31e9e3f7b4e76fba5d7c05c33c61a9c72) ) |
| 3393 | | /* 0x30000-0x3ffff empy */ |
| 3394 | | ROM_LOAD( "dx12.10k", 0x40000, 0x10000, CRC(ac78b76b) SHA1(c2be347fd950894401123ada8b27bfcfce53e66b) ) |
| 3395 | | /* 0x50000-0x5ffff empy */ |
| 3396 | | /* 0x60000-0x7ffff empy (no 4th plane) */ |
| 3397 | | |
| 3398 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles (3bpp) */ |
| 3399 | | ROM_LOAD( "dx06.5f", 0x00000, 0x10000, CRC(b6fb208c) SHA1(027d33f0b5feb6f0433134213cfcef96790eaace) ) |
| 3400 | | ROM_LOAD( "dx07.7f", 0x10000, 0x10000, CRC(ee3e1817) SHA1(013496976a9ffacf1587b3a6fc0f548becb1ab0e) ) |
| 3401 | | ROM_LOAD( "dx08.8f", 0x20000, 0x10000, CRC(705900fe) SHA1(53b9d09f9780a3bf3545bc27a2855ebee3884124) ) |
| 3402 | | ROM_LOAD( "dx09.10f", 0x30000, 0x10000, CRC(3192571d) SHA1(240c6c099f1e6edbf0be7d5a4ec396b056c9f70f) ) |
| 3403 | | ROM_LOAD( "dx10.12f", 0x40000, 0x10000, CRC(3ef77a32) SHA1(97b97c35a6ca994d2e7a6e7a63101eda9709bcb1) ) |
| 3404 | | ROM_LOAD( "dx11.13f", 0x50000, 0x10000, CRC(9cf3d5b8) SHA1(df4974f8412ab1cf65871b8e4e3dbee478bf4d21) ) |
| 3405 | | ROM_END |
| 3406 | | |
| 3407 | | /* Different IC positions to World set? */ |
| 3408 | | ROM_START( csilverj ) |
| 3409 | | ROM_REGION( 0x48000, "maincpu", 0 ) |
| 3410 | | ROM_LOAD( "dx03-3.a4", 0x08000, 0x08000, CRC(02dd8cfc) SHA1(f29c0d9dd03e8c52672c0f3dbee44a93c5b4261d) ) |
| 3411 | | ROM_LOAD( "dx01.a2", 0x10000, 0x10000, CRC(570fb50c) SHA1(3002f53182834a060fc282be1bc5767906e19ba2) ) |
| 3412 | | ROM_LOAD( "dx02.a3", 0x20000, 0x10000, CRC(58625890) SHA1(503a969085f6dcb16687217c48136ea22d07c89f) ) |
| 3413 | | |
| 3414 | | ROM_REGION( 0x10000, "sub", 0 ) /* CPU 2, 1st 16k is empty */ |
| 3415 | | ROM_LOAD( "dx04-1.a5", 0x0000, 0x10000, CRC(29432691) SHA1(a76ecd27d217c66a0e43f93e29efe83c657925c3) ) |
| 3416 | | |
| 3417 | | ROM_REGION( 0x18000, "audiocpu", 0 ) |
| 3418 | | ROM_LOAD( "dx05.a6", 0x10000, 0x08000, CRC(eb32cf25) SHA1(9390c88033259c65eb15320e31f5d696970987cc) ) |
| 3419 | | ROM_CONTINUE( 0x08000, 0x08000 ) |
| 3420 | | |
| 3421 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3422 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3423 | | |
| 3424 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3425 | | ROM_LOAD( "dx00.a1", 0x00000, 0x08000, CRC(f01ef985) SHA1(d5b823bd7c0efcf3137f8643c5d99a260bed5675) ) |
| 3426 | | |
| 3427 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites (3bpp) */ |
| 3428 | | ROM_LOAD( "dx14.b5", 0x00000, 0x10000, CRC(80f07915) SHA1(ea100f12ef3a68110af911fa9beeb73b388f069d) ) |
| 3429 | | /* 0x10000-0x1ffff empy */ |
| 3430 | | ROM_LOAD( "dx13.b4", 0x20000, 0x10000, CRC(d32c02e7) SHA1(d0518ec31e9e3f7b4e76fba5d7c05c33c61a9c72) ) |
| 3431 | | /* 0x30000-0x3ffff empy */ |
| 3432 | | ROM_LOAD( "dx12.b3", 0x40000, 0x10000, CRC(ac78b76b) SHA1(c2be347fd950894401123ada8b27bfcfce53e66b) ) |
| 3433 | | /* 0x50000-0x5ffff empy */ |
| 3434 | | /* 0x60000-0x7ffff empy (no 4th plane) */ |
| 3435 | | |
| 3436 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles (3bpp) */ |
| 3437 | | ROM_LOAD( "dx06.a7", 0x00000, 0x10000, CRC(b6fb208c) SHA1(027d33f0b5feb6f0433134213cfcef96790eaace) ) |
| 3438 | | ROM_LOAD( "dx07.a8", 0x10000, 0x10000, CRC(ee3e1817) SHA1(013496976a9ffacf1587b3a6fc0f548becb1ab0e) ) |
| 3439 | | ROM_LOAD( "dx08.a9", 0x20000, 0x10000, CRC(705900fe) SHA1(53b9d09f9780a3bf3545bc27a2855ebee3884124) ) |
| 3440 | | ROM_LOAD( "dx09.a10", 0x30000, 0x10000, CRC(3192571d) SHA1(240c6c099f1e6edbf0be7d5a4ec396b056c9f70f) ) |
| 3441 | | ROM_LOAD( "dx10.b1", 0x40000, 0x10000, CRC(3ef77a32) SHA1(97b97c35a6ca994d2e7a6e7a63101eda9709bcb1) ) |
| 3442 | | ROM_LOAD( "dx11.b2", 0x50000, 0x10000, CRC(9cf3d5b8) SHA1(df4974f8412ab1cf65871b8e4e3dbee478bf4d21) ) |
| 3443 | | ROM_END |
| 3444 | | |
| 3445 | | ROM_START( garyoret ) |
| 3446 | | ROM_REGION( 0x50000, "maincpu", 0 ) |
| 3447 | | ROM_LOAD( "dv00", 0x08000, 0x08000, CRC(cceaaf05) SHA1(b8f54638feab77d023e01ced947e1269f0d19fd8) ) |
| 3448 | | ROM_LOAD( "dv01", 0x10000, 0x10000, CRC(c33fc18a) SHA1(0d9594b0e6c39aea5b9f15f6aa364b31604f1066) ) |
| 3449 | | ROM_LOAD( "dv02", 0x20000, 0x10000, CRC(f9e26ce7) SHA1(8589594ebc7ae16942739382273a222dfa30b3b7) ) |
| 3450 | | ROM_LOAD( "dv03", 0x30000, 0x10000, CRC(55d8d699) SHA1(da1519cd54d27cc406420ce0845e43f7228cfd4e) ) |
| 3451 | | ROM_LOAD( "dv04", 0x40000, 0x10000, CRC(ed3d00ee) SHA1(6daa2ee509235ad03d3012a00382820279add620) ) |
| 3452 | | |
| 3453 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 3454 | | ROM_LOAD( "dv05", 0x08000, 0x08000, CRC(c97c347f) SHA1(a1b22733dc15d524af97db3e608a82503a49b182) ) |
| 3455 | | |
| 3456 | | ROM_REGION( 0x1000, "mcu", 0 ) /* ID8751H MCU */ |
| 3457 | | ROM_LOAD( "id8751h.mcu", 0x0000, 0x1000, NO_DUMP ) |
| 3458 | | |
| 3459 | | ROM_REGION( 0x08000, "gfx1", 0 ) /* characters */ |
| 3460 | | ROM_LOAD( "dv14", 0x00000, 0x08000, CRC(fb2bc581) SHA1(d597976c5ae586166c49051cc3de8cf0c2e5a5e1) ) /* Characters */ |
| 3461 | | |
| 3462 | | ROM_REGION( 0x80000, "gfx2", 0 ) /* sprites */ |
| 3463 | | ROM_LOAD( "dv22", 0x00000, 0x10000, CRC(cef0367e) SHA1(8beb3a6b91ec0a6ec052243c8f626a581d349f65) ) |
| 3464 | | ROM_LOAD( "dv21", 0x10000, 0x08000, CRC(90042fb7) SHA1(f19bbf158c92030e8fddb5087b5b69b71956baf8) ) |
| 3465 | | ROM_LOAD( "dv20", 0x20000, 0x10000, CRC(451a2d8c) SHA1(f4eea444b797d394edeb514ddc1c494fd7ccc2f2) ) |
| 3466 | | ROM_LOAD( "dv19", 0x30000, 0x08000, CRC(14e1475b) SHA1(f0aec5b7b4be0da06a73ed382e7e851654e47e47) ) |
| 3467 | | ROM_LOAD( "dv18", 0x40000, 0x10000, CRC(7043bead) SHA1(5d1be8b9cd56ae43d60406b05258d20de980096d) ) |
| 3468 | | ROM_LOAD( "dv17", 0x50000, 0x08000, CRC(28f449d7) SHA1(cf1bc690b67910c42ad09531ab1d88461d00b944) ) |
| 3469 | | ROM_LOAD( "dv16", 0x60000, 0x10000, CRC(37e4971e) SHA1(9442c315b7cdbcc046d9e6838cb793c1857174ed) ) |
| 3470 | | ROM_LOAD( "dv15", 0x70000, 0x08000, CRC(ca41b6ac) SHA1(d7a9ef6c89741c1e8e17a668a9d39ea089f5c73f) ) |
| 3471 | | |
| 3472 | | ROM_REGION( 0x80000, "gfx3", 0 ) /* tiles */ |
| 3473 | | ROM_LOAD( "dv08", 0x00000, 0x08000, CRC(89c13e15) SHA1(6507e60de5cd78a5b46090e4825a44c2a23631d7) ) |
| 3474 | | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 3475 | | ROM_LOAD( "dv09", 0x08000, 0x08000, CRC(6a345a23) SHA1(b86f81b9fe25acd833ca3e2cff6cfa853c02280a) ) |
| 3476 | | ROM_CONTINUE( 0x18000, 0x08000 ) |
| 3477 | | |
| 3478 | | ROM_LOAD( "dv06", 0x20000, 0x08000, CRC(1eb52a20) SHA1(46670ed973f794be9c2c7e6bf5d97db51211e9a9) ) |
| 3479 | | ROM_CONTINUE( 0x30000, 0x08000 ) |
| 3480 | | ROM_LOAD( "dv07", 0x28000, 0x08000, CRC(e7346ef8) SHA1(8083a7a182e8ed904daf2f692115d01b3d0830eb) ) |
| 3481 | | ROM_CONTINUE( 0x38000, 0x08000 ) |
| 3482 | | |
| 3483 | | ROM_LOAD( "dv12", 0x40000, 0x08000, CRC(46ba5af4) SHA1(a1c13e7e3c85060202120b64e3cee32c1f733270) ) |
| 3484 | | ROM_CONTINUE( 0x50000, 0x08000 ) |
| 3485 | | ROM_LOAD( "dv13", 0x48000, 0x08000, CRC(a7af6dfd) SHA1(fa41bdafb64c79bd9769903fd37d4d5172b66a52) ) |
| 3486 | | ROM_CONTINUE( 0x58000, 0x08000 ) |
| 3487 | | |
| 3488 | | ROM_LOAD( "dv10", 0x60000, 0x08000, CRC(68b6d75c) SHA1(ac719ef6b30ac9e63fab13cb359e6114493f274d) ) |
| 3489 | | ROM_CONTINUE( 0x70000, 0x08000 ) |
| 3490 | | ROM_LOAD( "dv11", 0x68000, 0x08000, CRC(b5948aee) SHA1(587afbfeda985bede9e4b5f57dad6763f4294962) ) |
| 3491 | | ROM_CONTINUE( 0x78000, 0x08000 ) |
| 3492 | | ROM_END |
| 3493 | | |
| 3494 | 3548 | /******************************************************************************/ |
| 3495 | 3549 | |
| 3496 | 3550 | static DRIVER_INIT( dec8 ) |
| r14742 | r14743 | |
| 3521 | 3575 | } |
| 3522 | 3576 | |
| 3523 | 3577 | /* Below, I set up the correct number of banks depending on the "maincpu" region size */ |
| 3524 | | static DRIVER_INIT( ghostb ) |
| 3578 | static DRIVER_INIT( lastmisn ) |
| 3525 | 3579 | { |
| 3526 | 3580 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3527 | | UINT8 *RAM = machine.region("proms")->base(); |
| 3528 | | |
| 3529 | | /* Blank out unused garbage in colour prom to avoid colour overflow */ |
| 3530 | | memset(RAM + 0x20, 0, 0xe0); |
| 3531 | | |
| 3532 | | memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x4000); |
| 3533 | | DRIVER_INIT_CALL(deco222); |
| 3581 | memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000); |
| 3582 | DRIVER_INIT_CALL( dec8 ); |
| 3534 | 3583 | } |
| 3535 | 3584 | |
| 3536 | | static DRIVER_INIT( meikyuh ) |
| 3585 | static DRIVER_INIT( shackled ) |
| 3537 | 3586 | { |
| 3538 | 3587 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3539 | | UINT8 *RAM = machine.region("proms")->base(); |
| 3540 | | |
| 3541 | | /* Blank out unused garbage in colour prom to avoid colour overflow */ |
| 3542 | | memset(RAM + 0x20, 0, 0xe0); |
| 3543 | | |
| 3544 | | memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x4000); |
| 3588 | memory_configure_bank(machine, "bank1", 0, 14, &ROM[0x10000], 0x4000); |
| 3545 | 3589 | DRIVER_INIT_CALL( dec8 ); |
| 3546 | 3590 | } |
| 3547 | 3591 | |
| 3548 | | static DRIVER_INIT( cobracom ) |
| 3592 | static DRIVER_INIT( gondo ) |
| 3549 | 3593 | { |
| 3550 | 3594 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3551 | | memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000); |
| 3595 | memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x4000); |
| 3552 | 3596 | DRIVER_INIT_CALL( dec8 ); |
| 3553 | 3597 | } |
| 3554 | 3598 | |
| 3555 | | static DRIVER_INIT( oscar ) |
| 3599 | static DRIVER_INIT( garyoret ) |
| 3556 | 3600 | { |
| 3557 | 3601 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3558 | | memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000); |
| 3559 | | DRIVER_INIT_CALL( deco222 ); |
| 3602 | memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x4000); |
| 3603 | DRIVER_INIT_CALL( dec8 ); |
| 3560 | 3604 | } |
| 3561 | 3605 | |
| 3562 | | static DRIVER_INIT( gondo ) |
| 3606 | static DRIVER_INIT( ghostb ) |
| 3563 | 3607 | { |
| 3564 | 3608 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3565 | | memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x4000); |
| 3566 | | DRIVER_INIT_CALL( dec8 ); |
| 3609 | UINT8 *RAM = machine.region("proms")->base(); |
| 3610 | |
| 3611 | /* Blank out unused garbage in colour prom to avoid colour overflow */ |
| 3612 | memset(RAM + 0x20, 0, 0xe0); |
| 3613 | |
| 3614 | memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x4000); |
| 3615 | DRIVER_INIT_CALL(deco222); |
| 3567 | 3616 | } |
| 3568 | 3617 | |
| 3569 | | static DRIVER_INIT( garyoret ) |
| 3618 | static DRIVER_INIT( meikyuh ) |
| 3570 | 3619 | { |
| 3571 | 3620 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3572 | | memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x4000); |
| 3621 | UINT8 *RAM = machine.region("proms")->base(); |
| 3622 | |
| 3623 | /* Blank out unused garbage in colour prom to avoid colour overflow */ |
| 3624 | memset(RAM + 0x20, 0, 0xe0); |
| 3625 | |
| 3626 | memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x4000); |
| 3573 | 3627 | DRIVER_INIT_CALL( dec8 ); |
| 3574 | 3628 | } |
| 3575 | 3629 | |
| r14742 | r14743 | |
| 3583 | 3637 | DRIVER_INIT_CALL( dec8 ); |
| 3584 | 3638 | } |
| 3585 | 3639 | |
| 3586 | | static DRIVER_INIT( shackled ) |
| 3640 | static DRIVER_INIT( oscar ) |
| 3587 | 3641 | { |
| 3588 | 3642 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3589 | | memory_configure_bank(machine, "bank1", 0, 14, &ROM[0x10000], 0x4000); |
| 3590 | | DRIVER_INIT_CALL( dec8 ); |
| 3591 | | } |
| 3592 | | |
| 3593 | | static DRIVER_INIT( lastmisn ) |
| 3594 | | { |
| 3595 | | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3596 | 3643 | memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000); |
| 3597 | | DRIVER_INIT_CALL( dec8 ); |
| 3644 | DRIVER_INIT_CALL( deco222 ); |
| 3598 | 3645 | } |
| 3599 | 3646 | |
| 3600 | 3647 | static DRIVER_INIT( srdarwin ) |
| r14742 | r14743 | |
| 3604 | 3651 | DRIVER_INIT_CALL( deco222 ); |
| 3605 | 3652 | } |
| 3606 | 3653 | |
| 3654 | static DRIVER_INIT( cobracom ) |
| 3655 | { |
| 3656 | UINT8 *ROM = machine.region("maincpu")->base(); |
| 3657 | memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000); |
| 3658 | DRIVER_INIT_CALL( dec8 ); |
| 3659 | } |
| 3607 | 3660 | |
| 3661 | |
| 3608 | 3662 | /******************************************************************************/ |
| 3609 | 3663 | |
| 3610 | | GAME( 1988, cobracom, 0, cobracom, cobracom, cobracom, ROT0, "Data East Corporation", "Cobra-Command (World revision 5)", GAME_SUPPORTS_SAVE ) |
| 3611 | | GAME( 1988, cobracomj,cobracom, cobracom, cobracom, cobracom, ROT0, "Data East Corporation", "Cobra-Command (Japan)", GAME_SUPPORTS_SAVE ) |
| 3612 | | GAME( 1987, ghostb, 0, ghostb, ghostb, ghostb, ROT0, "Data East USA", "The Real Ghostbusters (US 2 Players, revision 2)", GAME_SUPPORTS_SAVE ) |
| 3613 | | GAME( 1987, ghostb2a, ghostb, ghostb, ghostb, ghostb, ROT0, "Data East USA", "The Real Ghostbusters (US 2 Players)", GAME_SUPPORTS_SAVE ) |
| 3614 | | GAME( 1987, ghostb3, ghostb, ghostb, ghostb3, ghostb, ROT0, "Data East USA", "The Real Ghostbusters (US 3 Players)", GAME_SUPPORTS_SAVE ) |
| 3615 | | GAME( 1987, meikyuh, ghostb, ghostb, meikyuh, meikyuh, ROT0, "Data East Corporation", "Meikyuu Hunter G (Japan, set 1)", GAME_SUPPORTS_SAVE ) |
| 3616 | | GAME( 1987, meikyuha, ghostb, ghostb, meikyuh, meikyuh, ROT0, "Data East Corporation", "Meikyuu Hunter G (Japan, set 2)", GAME_SUPPORTS_SAVE ) |
| 3617 | | GAME( 1987, srdarwin, 0, srdarwin, srdarwin, srdarwin, ROT270, "Data East Corporation", "Super Real Darwin (World)", GAME_SUPPORTS_SAVE ) |
| 3618 | | GAME( 1987, srdarwinj,srdarwin, srdarwin, srdarwin, srdarwin, ROT270, "Data East Corporation", "Super Real Darwin (Japan)", GAME_SUPPORTS_SAVE ) |
| 3619 | | GAME( 1987, gondo, 0, gondo, gondo, gondo, ROT270, "Data East USA", "Gondomania (US)", GAME_SUPPORTS_SAVE ) |
| 3620 | | GAME( 1987, makyosen, gondo, gondo, gondo, gondo, ROT270, "Data East Corporation", "Makyou Senshi (Japan)", GAME_SUPPORTS_SAVE ) |
| 3621 | | GAME( 1988, oscar, 0, oscar, oscar, oscar, ROT0, "Data East Corporation", "Psycho-Nics Oscar (World revision 0)", GAME_SUPPORTS_SAVE ) |
| 3622 | | GAME( 1987, oscaru, oscar, oscar, oscaru, oscar, ROT0, "Data East USA", "Psycho-Nics Oscar (US)", GAME_SUPPORTS_SAVE ) |
| 3623 | | GAME( 1987, oscarj1, oscar, oscar, oscaru, oscar, ROT0, "Data East Corporation", "Psycho-Nics Oscar (Japan revision 1)", GAME_SUPPORTS_SAVE ) |
| 3624 | | GAME( 1987, oscarj2, oscar, oscar, oscaru, oscar, ROT0, "Data East Corporation", "Psycho-Nics Oscar (Japan revision 2)", GAME_SUPPORTS_SAVE ) |
| 3625 | | GAME( 1986, lastmisn, 0, lastmisn, lastmisn, lastmisn, ROT270, "Data East USA", "Last Mission (US revision 6)", GAME_SUPPORTS_SAVE ) |
| 3626 | | GAME( 1986, lastmisno,lastmisn, lastmisn, lastmisn, lastmisn, ROT270, "Data East USA", "Last Mission (US revision 5)", GAME_SUPPORTS_SAVE ) |
| 3627 | | GAME( 1986, lastmisnj,lastmisn, lastmisn, lastmisnj, lastmisn, ROT270, "Data East Corporation", "Last Mission (Japan)", GAME_SUPPORTS_SAVE ) |
| 3628 | | GAME( 1986, shackled, 0, shackled, shackled, shackled, ROT0, "Data East USA", "Shackled (US)", GAME_SUPPORTS_SAVE ) |
| 3629 | | GAME( 1986, breywood, shackled, shackled, shackled, shackled, ROT0, "Data East Corporation", "Breywood (Japan revision 2)", GAME_SUPPORTS_SAVE ) |
| 3630 | | GAME( 1987, csilver, 0, csilver, csilver, csilver, ROT0, "Data East Corporation", "Captain Silver (World)", GAME_SUPPORTS_SAVE ) |
| 3631 | | GAME( 1987, csilverj, csilver, csilver, csilver, csilver, ROT0, "Data East Corporation", "Captain Silver (Japan)", GAME_SUPPORTS_SAVE ) |
| 3632 | | GAME( 1987, garyoret, 0, garyoret, garyoret, garyoret, ROT0, "Data East Corporation", "Garyo Retsuden (Japan)", GAME_SUPPORTS_SAVE ) |
| 3664 | GAME( 1986, lastmisn, 0, lastmisn, lastmisn, lastmisn, ROT270, "Data East USA", "Last Mission (US revision 6)", GAME_SUPPORTS_SAVE ) |
| 3665 | GAME( 1986, lastmisno,lastmisn, lastmisn, lastmisn, lastmisn, ROT270, "Data East USA", "Last Mission (US revision 5)", GAME_SUPPORTS_SAVE ) |
| 3666 | GAME( 1986, lastmisnj,lastmisn, lastmisn, lastmisnj, lastmisn, ROT270, "Data East Corporation", "Last Mission (Japan)", GAME_SUPPORTS_SAVE ) |
| 3667 | GAME( 1986, shackled, 0, shackled, shackled, shackled, ROT0, "Data East USA", "Shackled (US)", GAME_SUPPORTS_SAVE ) |
| 3668 | GAME( 1986, breywood, shackled, shackled, breywood, shackled, ROT0, "Data East Corporation", "Breywood (Japan revision 2)", GAME_SUPPORTS_SAVE ) |
| 3669 | GAME( 1987, gondo, 0, gondo, gondo, gondo, ROT270, "Data East USA", "Gondomania (US)", GAME_SUPPORTS_SAVE ) |
| 3670 | GAME( 1987, makyosen, gondo, gondo, gondo, gondo, ROT270, "Data East Corporation", "Makyou Senshi (Japan)", GAME_SUPPORTS_SAVE ) |
| 3671 | GAME( 1987, garyoret, 0, garyoret, garyoret, garyoret, ROT0, "Data East Corporation", "Garyo Retsuden (Japan)", GAME_SUPPORTS_SAVE ) |
| 3672 | GAME( 1987, ghostb, 0, ghostb, ghostb, ghostb, ROT0, "Data East USA", "The Real Ghostbusters (US 2 Players, revision 2)", GAME_SUPPORTS_SAVE ) |
| 3673 | GAME( 1987, ghostb2a, ghostb, ghostb, ghostb2a, ghostb, ROT0, "Data East USA", "The Real Ghostbusters (US 2 Players)", GAME_SUPPORTS_SAVE ) |
| 3674 | GAME( 1987, ghostb3, ghostb, ghostb, ghostb3, ghostb, ROT0, "Data East USA", "The Real Ghostbusters (US 3 Players)", GAME_SUPPORTS_SAVE ) |
| 3675 | GAME( 1987, meikyuh, ghostb, ghostb, meikyuh, meikyuh, ROT0, "Data East Corporation", "Meikyuu Hunter G (Japan, set 1)", GAME_SUPPORTS_SAVE ) |
| 3676 | GAME( 1987, meikyuha, ghostb, ghostb, meikyuh, meikyuh, ROT0, "Data East Corporation", "Meikyuu Hunter G (Japan, set 2)", GAME_SUPPORTS_SAVE ) |
| 3677 | GAME( 1987, csilver, 0, csilver, csilver, csilver, ROT0, "Data East Corporation", "Captain Silver (World)", GAME_SUPPORTS_SAVE ) |
| 3678 | GAME( 1987, csilverj, csilver, csilver, csilverj, csilver, ROT0, "Data East Corporation", "Captain Silver (Japan)", GAME_SUPPORTS_SAVE ) |
| 3679 | GAME( 1987, oscar, 0, oscar, oscar, oscar, ROT0, "Data East Corporation", "Psycho-Nics Oscar (World revision 0)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
| 3680 | GAME( 1988, oscaru, oscar, oscar, oscarj, oscar, ROT0, "Data East USA", "Psycho-Nics Oscar (US)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
| 3681 | GAME( 1987, oscarj1, oscar, oscar, oscarj, oscar, ROT0, "Data East Corporation", "Psycho-Nics Oscar (Japan revision 1)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
| 3682 | GAME( 1987, oscarj2, oscar, oscar, oscarj, oscar, ROT0, "Data East Corporation", "Psycho-Nics Oscar (Japan revision 2)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
| 3683 | GAME( 1987, srdarwin, 0, srdarwin, srdarwin, srdarwin, ROT270, "Data East Corporation", "Super Real Darwin (World)", GAME_SUPPORTS_SAVE ) |
| 3684 | GAME( 1987, srdarwinj,srdarwin, srdarwin, srdarwinj, srdarwin, ROT270, "Data East Corporation", "Super Real Darwin (Japan)", GAME_SUPPORTS_SAVE ) |
| 3685 | GAME( 1988, cobracom, 0, cobracom, cobracom, cobracom, ROT0, "Data East Corporation", "Cobra-Command (World revision 5)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
| 3686 | GAME( 1988, cobracomj,cobracom, cobracom, cobracom, cobracom, ROT0, "Data East Corporation", "Cobra-Command (Japan)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |