trunk/src/mame/drivers/vastar.c
| r18868 | r18869 | |
| 61 | 61 | |
| 62 | 62 | ***************************************************************************/ |
| 63 | 63 | |
| 64 | /* |
| 65 | |
| 66 | Planet Probe - unknown manufacture - Copyright 1985 |
| 67 | Game probably programmed by same people behind some Kyugo/Orca/Komax games (see hiscore table, Gyrodine pinout, clocks etc.) |
| 68 | |
| 69 | Upper board marked DVL/A-V |
| 70 | Bottom Bord DVL/B-V |
| 71 | |
| 72 | The pcb seems a bootleg/prototype: |
| 73 | On the upper board there are some pads for jumpers , some empty spaces left unpopulated for additional TTLs and an XTAL. |
| 74 | All 5 sockets for 2732 eproms were modified to accept 2764 eproms. |
| 75 | The AY8910 pin 26 (TEST 2) is grounded with a flying wire |
| 76 | |
| 77 | Upper board chips: |
| 78 | 5x 2764 eproms |
| 79 | 1x 2128 static ram (2k ram) |
| 80 | 2x z80B |
| 81 | 1x AY8910 |
| 82 | 2x 8 positions dipswitches |
| 83 | |
| 84 | Bottom Board chips: |
| 85 | 5x 2764 eproms |
| 86 | 2x 2128 static ram (2kx8 ram) |
| 87 | 4x 93422 DRAM (256x4 dram) |
| 88 | 1x 6301 PROM (probably used for background ?) |
| 89 | 3x 82s129 Colour PROMS (connected to resistors) |
| 90 | |
| 91 | Clocks measured: |
| 92 | |
| 93 | Main XTAL 18.432mhz |
| 94 | 2x z80 : 18.432 / 6 |
| 95 | AY8910 : 18.432 / 12 |
| 96 | Vsync : 60.58hz |
| 97 | |
| 98 | */ |
| 99 | |
| 100 | |
| 64 | 101 | #include "emu.h" |
| 65 | 102 | #include "cpu/z80/z80.h" |
| 66 | 103 | #include "sound/ay8910.h" |
| r18868 | r18869 | |
| 70 | 107 | { |
| 71 | 108 | /* we must start with the second CPU halted */ |
| 72 | 109 | machine().device("sub")->execute().set_input_line(INPUT_LINE_RESET, ASSERT_LINE); |
| 110 | m_nmi_mask = 0; |
| 111 | m_sprite_priority[0] = 0; |
| 73 | 112 | } |
| 74 | 113 | |
| 75 | 114 | WRITE8_MEMBER(vastar_state::vastar_hold_cpu2_w) |
| r18868 | r18869 | |
| 78 | 117 | machine().device("sub")->execute().set_input_line(INPUT_LINE_RESET, (data & 1) ? CLEAR_LINE : ASSERT_LINE); |
| 79 | 118 | } |
| 80 | 119 | |
| 81 | | READ8_MEMBER(vastar_state::vastar_sharedram_r) |
| 82 | | { |
| 83 | | |
| 84 | | return m_sharedram[offset]; |
| 85 | | } |
| 86 | | |
| 87 | | WRITE8_MEMBER(vastar_state::vastar_sharedram_w) |
| 88 | | { |
| 89 | | |
| 90 | | m_sharedram[offset] = data; |
| 91 | | } |
| 92 | | |
| 93 | 120 | WRITE8_MEMBER(vastar_state::flip_screen_w) |
| 94 | 121 | { |
| 95 | 122 | flip_screen_set(data); |
| r18868 | r18869 | |
| 97 | 124 | |
| 98 | 125 | WRITE8_MEMBER(vastar_state::nmi_mask_w) |
| 99 | 126 | { |
| 100 | | |
| 101 | 127 | m_nmi_mask = data & 1; |
| 102 | 128 | } |
| 103 | 129 | |
| r18868 | r18869 | |
| 111 | 137 | AM_RANGE(0xc000, 0xc000) AM_WRITEONLY AM_SHARE("sprite_priority") /* sprite/BG priority */ |
| 112 | 138 | AM_RANGE(0xc400, 0xcfff) AM_RAM_WRITE(vastar_fgvideoram_w) AM_SHARE("fgvideoram") |
| 113 | 139 | AM_RANGE(0xe000, 0xe000) AM_READWRITE(watchdog_reset_r, watchdog_reset_w) |
| 114 | | AM_RANGE(0xf000, 0xf0ff) AM_READWRITE(vastar_sharedram_r, vastar_sharedram_w) AM_SHARE("sharedram") |
| 115 | | AM_RANGE(0xf100, 0xf7ff) AM_RAM |
| 140 | AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("sharedram") |
| 116 | 141 | |
| 117 | | /* in hidden portions of video RAM: (fallthrough) */ |
| 142 | /* in hidden portions of video RAM: (fallthrough) - todo, just make these pointers */ |
| 118 | 143 | AM_RANGE(0xc400, 0xc43f) AM_WRITEONLY AM_SHARE("spriteram1") /* actually c410-c41f and c430-c43f */ |
| 119 | 144 | AM_RANGE(0xc7c0, 0xc7df) AM_WRITEONLY AM_SHARE("bg1_scroll") |
| 120 | 145 | AM_RANGE(0xc7e0, 0xc7ff) AM_WRITEONLY AM_SHARE("bg2_scroll") |
| r18868 | r18869 | |
| 132 | 157 | |
| 133 | 158 | static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, vastar_state ) |
| 134 | 159 | AM_RANGE(0x0000, 0x1fff) AM_ROM |
| 135 | | AM_RANGE(0x4000, 0x40ff) AM_READWRITE(vastar_sharedram_r, vastar_sharedram_w) |
| 160 | AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("sharedram") |
| 136 | 161 | AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P2") |
| 137 | 162 | AM_RANGE(0x8040, 0x8040) AM_READ_PORT("P1") |
| 138 | 163 | AM_RANGE(0x8080, 0x8080) AM_READ_PORT("SYSTEM") |
| r18868 | r18869 | |
| 229 | 254 | INPUT_PORTS_END |
| 230 | 255 | |
| 231 | 256 | |
| 257 | static INPUT_PORTS_START( pprobe ) |
| 258 | PORT_START("P1") |
| 259 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY |
| 260 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY |
| 261 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY |
| 262 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY |
| 263 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) |
| 264 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 ) |
| 265 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 266 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 232 | 267 | |
| 268 | PORT_START("P2") |
| 269 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL |
| 270 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL |
| 271 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL |
| 272 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL |
| 273 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL |
| 274 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL |
| 275 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 276 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 277 | |
| 278 | PORT_START("SYSTEM") |
| 279 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) |
| 280 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) |
| 281 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN3 ) |
| 282 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 ) |
| 283 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START2 ) |
| 284 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 285 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 286 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 287 | |
| 288 | PORT_START("DSW1") |
| 289 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) |
| 290 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 291 | PORT_DIPSETTING( 0x01, DEF_STR( On ) ) |
| 292 | PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) |
| 293 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 294 | PORT_DIPSETTING( 0x02, DEF_STR( On ) ) |
| 295 | PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) |
| 296 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 297 | PORT_DIPSETTING( 0x04, DEF_STR( On ) ) |
| 298 | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) |
| 299 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 300 | PORT_DIPSETTING( 0x08, DEF_STR( On ) ) |
| 301 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
| 302 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 303 | PORT_DIPSETTING( 0x10, DEF_STR( On ) ) |
| 304 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) |
| 305 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 306 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 307 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) |
| 308 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 309 | PORT_DIPSETTING( 0x40, DEF_STR( On ) ) |
| 310 | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
| 311 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 312 | PORT_DIPSETTING( 0x80, DEF_STR( On ) ) |
| 313 | |
| 314 | PORT_START("DSW2") |
| 315 | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) |
| 316 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 317 | PORT_DIPSETTING( 0x01, DEF_STR( On ) ) |
| 318 | PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) |
| 319 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 320 | PORT_DIPSETTING( 0x02, DEF_STR( On ) ) |
| 321 | PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) |
| 322 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 323 | PORT_DIPSETTING( 0x04, DEF_STR( On ) ) |
| 324 | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) |
| 325 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 326 | PORT_DIPSETTING( 0x08, DEF_STR( On ) ) |
| 327 | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
| 328 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 329 | PORT_DIPSETTING( 0x10, DEF_STR( On ) ) |
| 330 | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) |
| 331 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 332 | PORT_DIPSETTING( 0x20, DEF_STR( On ) ) |
| 333 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) |
| 334 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 335 | PORT_DIPSETTING( 0x40, DEF_STR( On ) ) |
| 336 | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
| 337 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 338 | PORT_DIPSETTING( 0x80, DEF_STR( On ) ) |
| 339 | INPUT_PORTS_END |
| 340 | |
| 341 | |
| 342 | |
| 233 | 343 | static const gfx_layout charlayout = |
| 234 | 344 | { |
| 235 | 345 | 8,8, |
| r18868 | r18869 | |
| 299 | 409 | static MACHINE_CONFIG_START( vastar, vastar_state ) |
| 300 | 410 | |
| 301 | 411 | /* basic machine hardware */ |
| 302 | | MCFG_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz ???? */ |
| 412 | MCFG_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) |
| 303 | 413 | MCFG_CPU_PROGRAM_MAP(main_map) |
| 304 | 414 | MCFG_CPU_IO_MAP(main_port_map) |
| 305 | 415 | MCFG_CPU_VBLANK_INT_DRIVER("screen", vastar_state, vblank_irq) |
| 306 | 416 | |
| 307 | | MCFG_CPU_ADD("sub", Z80, 3072000) /* 3.072 MHz ???? */ |
| 417 | MCFG_CPU_ADD("sub", Z80, XTAL_18_432MHz/6) |
| 308 | 418 | MCFG_CPU_PROGRAM_MAP(cpu2_map) |
| 309 | 419 | MCFG_CPU_IO_MAP(cpu2_port_map) |
| 310 | 420 | MCFG_CPU_PERIODIC_INT_DRIVER(vastar_state, irq0_line_hold, 4*60) /* ??? */ |
| r18868 | r18869 | |
| 314 | 424 | |
| 315 | 425 | /* video hardware */ |
| 316 | 426 | MCFG_SCREEN_ADD("screen", RASTER) |
| 317 | | MCFG_SCREEN_REFRESH_RATE(60) |
| 427 | MCFG_SCREEN_REFRESH_RATE(60.58) |
| 318 | 428 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) |
| 319 | 429 | MCFG_SCREEN_SIZE(32*8, 32*8) |
| 320 | 430 | MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) |
| r18868 | r18869 | |
| 328 | 438 | /* sound hardware */ |
| 329 | 439 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 330 | 440 | |
| 331 | | MCFG_SOUND_ADD("aysnd", AY8910, 1500000) |
| 441 | MCFG_SOUND_ADD("aysnd", AY8910, XTAL_18_432MHz/12) |
| 332 | 442 | MCFG_SOUND_CONFIG(ay8910_config) |
| 333 | 443 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) |
| 334 | 444 | MACHINE_CONFIG_END |
| r18868 | r18869 | |
| 369 | 479 | ROM_REGION( 0x2000, "gfx4", 0 ) |
| 370 | 480 | ROM_LOAD( "c_s4.rom", 0x0000, 0x2000, CRC(c9fbbfc9) SHA1(7c6ace0e2eae8420a31d9054ad5dd94924273d5f) ) |
| 371 | 481 | |
| 372 | | ROM_REGION( 0x0400, "proms", 0 ) |
| 482 | ROM_REGION( 0x0300, "proms", 0 ) |
| 373 | 483 | ROM_LOAD( "tbp24s10.6p", 0x0000, 0x0100, CRC(a712d73a) SHA1(a65fa5928431d8631fb04e01ad0a0d2de849bf1d) ) /* red component */ |
| 374 | 484 | ROM_LOAD( "tbp24s10.6s", 0x0100, 0x0100, CRC(0a7d48ec) SHA1(400e0b271c241712e7b7502e96e4f8a609e078e1) ) /* green component */ |
| 375 | 485 | ROM_LOAD( "tbp24s10.6m", 0x0200, 0x0100, CRC(4c3db907) SHA1(03bcbc4763dcf49f4a06f499042e36183aa8b762) ) /* blue component */ |
| 376 | | ROM_LOAD( "tbp24s10.8n", 0x0300, 0x0100, CRC(b5297a3b) SHA1(a5a512f86097b7d892f6d11e8492e8a379c07f60) ) /* ???? */ |
| 486 | |
| 487 | ROM_REGION( 0x0100, "unkprom", 0 ) |
| 488 | ROM_LOAD( "tbp24s10.8n", 0x0000, 0x0100, CRC(b5297a3b) SHA1(a5a512f86097b7d892f6d11e8492e8a379c07f60) ) /* ???? */ |
| 377 | 489 | ROM_END |
| 378 | 490 | |
| 379 | 491 | ROM_START( vastar2 ) |
| r18868 | r18869 | |
| 404 | 516 | ROM_REGION( 0x2000, "gfx4", 0 ) |
| 405 | 517 | ROM_LOAD( "c_s4.rom", 0x0000, 0x2000, CRC(c9fbbfc9) SHA1(7c6ace0e2eae8420a31d9054ad5dd94924273d5f) ) |
| 406 | 518 | |
| 407 | | ROM_REGION( 0x0400, "proms", 0 ) |
| 519 | ROM_REGION( 0x0300, "proms", 0 ) |
| 408 | 520 | ROM_LOAD( "tbp24s10.6p", 0x0000, 0x0100, CRC(a712d73a) SHA1(a65fa5928431d8631fb04e01ad0a0d2de849bf1d) ) /* red component */ |
| 409 | 521 | ROM_LOAD( "tbp24s10.6s", 0x0100, 0x0100, CRC(0a7d48ec) SHA1(400e0b271c241712e7b7502e96e4f8a609e078e1) ) /* green component */ |
| 410 | 522 | ROM_LOAD( "tbp24s10.6m", 0x0200, 0x0100, CRC(4c3db907) SHA1(03bcbc4763dcf49f4a06f499042e36183aa8b762) ) /* blue component */ |
| 411 | | ROM_LOAD( "tbp24s10.8n", 0x0300, 0x0100, CRC(b5297a3b) SHA1(a5a512f86097b7d892f6d11e8492e8a379c07f60) ) /* ???? */ |
| 523 | |
| 524 | ROM_REGION( 0x0100, "unkprom", 0 ) |
| 525 | ROM_LOAD( "tbp24s10.8n", 0x0000, 0x0100, CRC(b5297a3b) SHA1(a5a512f86097b7d892f6d11e8492e8a379c07f60) ) /* ???? */ |
| 412 | 526 | ROM_END |
| 413 | 527 | |
| 528 | ROM_START( pprobe ) |
| 529 | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 530 | ROM_LOAD( "pb2.bin", 0x0000, 0x2000, CRC(a88592aa) SHA1(98e8e6233b85e678718f532708d57ec946b9fd88) ) |
| 531 | ROM_LOAD( "pb3.bin", 0x2000, 0x2000, CRC(e4e20f74) SHA1(53b4d0499127cca149a3dd03af4f05de552cff57) ) |
| 532 | ROM_LOAD( "pb4.bin", 0x4000, 0x2000, CRC(4e40e3fe) SHA1(ccb3c5828508efc9f0df44bf3408e807d5ef58a0) ) |
| 533 | ROM_LOAD( "pb5.bin", 0x6000, 0x2000, CRC(b26ff0fd) SHA1(c64966ee91557f8982b9b7fd17306508228f1e15) ) |
| 414 | 534 | |
| 535 | ROM_REGION( 0x10000, "sub", 0 ) |
| 536 | ROM_LOAD( "pb1.bin", 0x0000, 0x2000, CRC(cd624df9) SHA1(0645ce8dc1b361904da4f6e7adc9b7de109b2d14) ) |
| 415 | 537 | |
| 538 | ROM_REGION( 0x2000, "gfx1", 0 ) |
| 539 | ROM_LOAD( "pb9.bin", 0x0000, 0x2000, CRC(82294dd6) SHA1(24b8eac3d476d4a4d91dd169e26bd075b0d1bf45) ) |
| 540 | |
| 541 | ROM_REGION( 0x4000, "gfx2", 0 ) |
| 542 | ROM_LOAD( "pb8.bin", 0x0000, 0x2000, CRC(8d809e45) SHA1(70f99626acdceaadbe03de49bcf778266ddff893) ) |
| 543 | ROM_LOAD( "pb10.bin", 0x2000, 0x2000, CRC(895f9dd3) SHA1(919861482598aa35a9ad476da19f9efa30904cd4) ) |
| 544 | |
| 545 | ROM_REGION( 0x2000, "gfx3", 0 ) |
| 546 | ROM_LOAD( "pb6.bin", 0x0000, 0x2000, CRC(ff309239) SHA1(4e52833fafd54d4502ad09091fbfb1a8a2ff8828) ) |
| 547 | |
| 548 | ROM_REGION( 0x2000, "gfx4", 0 ) |
| 549 | ROM_LOAD( "pb7.bin", 0x0000, 0x2000, CRC(439978f7) SHA1(ba80dd919a9bb6f8c516d4eb794c02ae0f0dea00) ) |
| 550 | |
| 551 | ROM_REGION( 0x0300, "proms", 0 ) |
| 552 | ROM_LOAD( "n82s129.3", 0x0000, 0x0100, CRC(dfb6b97c) SHA1(e35eda4f3022e661b021b952c53054d96481fb49) ) |
| 553 | ROM_LOAD( "n82s129.1", 0x0100, 0x0100, CRC(3cc696a2) SHA1(0a1407c19c63ee0f02c3e8b95b0c199b9aec3ce5) ) |
| 554 | ROM_LOAD( "dm74s287.2", 0x0200, 0x0100, CRC(64fea033) SHA1(19bbb325f71cb17ea069958b3c246fa908f0008e) ) |
| 555 | |
| 556 | ROM_REGION( 0x0100, "unkprom", 0 ) |
| 557 | ROM_LOAD( "mmi6301-1.bin", 0x0000, 0x0100, CRC(b5297a3b) SHA1(a5a512f86097b7d892f6d11e8492e8a379c07f60) ) /* ???? == vastar - tbp24s10.8n */ |
| 558 | ROM_END |
| 559 | |
| 560 | |
| 416 | 561 | GAME( 1983, vastar, 0, vastar, vastar, driver_device, 0, ROT90, "Sesame Japan", "Vastar (set 1)", 0 ) |
| 417 | 562 | GAME( 1983, vastar2, vastar, vastar, vastar, driver_device, 0, ROT90, "Sesame Japan", "Vastar (set 2)", 0 ) |
| 563 | GAME( 1983, pprobe, 0, vastar, pprobe, driver_device, 0, ROT90, "Orca / Kyugo?", "Planet Probe (prototype?)", GAME_IMPERFECT_GRAPHICS ) // has no Copyright, probably because Orca / Kyugo didn't have a trading name at this point |