trunk/src/mame/drivers/dblewing.c
r24600 | r24601 | |
1 | | /* Double Wings |
| 1 | /* |
2 | 2 | |
| 3 | Double Wings |
| 4 | Mitchell 1993 |
| 5 | |
| 6 | This game runs on Data East hardware. |
| 7 | |
| 8 | PCB Layout |
| 9 | ---------- |
| 10 | |
| 11 | S-NK-3220 |
| 12 | DEC-22VO |
| 13 | |---------------------------------------------| |
| 14 | |MB3730 C3403 32.22MHz MBE-01.16A| |
| 15 | | Y3014B KP_03-.16H 77 | |
| 16 | | M6295 MBE-00.14A| |
| 17 | | YM2151 |------| | |
| 18 | | Z80 CXK5864 | | | |
| 19 | | VOL VG-02.11B| 52 | | |
| 20 | | LH5168 CXK5864 | | | |
| 21 | | |------| | |
| 22 | | |------| 28MHz| |
| 23 | |J KP_02-.10H| | | |
| 24 | |A | 141 | CXK5814 | |
| 25 | |M MBE-02.8H | | | |
| 26 | |M | | CXK5814 | |
| 27 | |A |------| | |
| 28 | | CXK5814 | |
| 29 | | KP_01-.5D | |
| 30 | | CXK5814 | |
| 31 | | CXK5864 | |
| 32 | | |----| KP_00-.3D |------| | |
| 33 | | |104 | | 102 | | |
| 34 | | | | CXK5864 | | | |
| 35 | | |----| | | | |
| 36 | |SW2 SW1 VG-01.1H VG-00.1F |------| | |
| 37 | |---------------------------------------------| |
| 38 | Notes: |
| 39 | 102 - Custom encrypted 68000 CPU. Clock 14.000MHz [28/2] |
| 40 | Z80 - Toshiba TMPZ84C000AP-6 Z80 CPU. Clock 3.58MHz [32.22/9] |
| 41 | YM2151 - Yamaha YM2151 FM Operator Type-M (OPM) sound chip. Clock 3.58MHz [32.22/9] |
| 42 | M6295 - Oki M6295 4-channel mixing ADPCM LSI. Clock 1.000MHz [28/28]. Pin 7 HIGH |
| 43 | LH6168 - Sharp LH6168 8kx8 SRAM (DIP28) |
| 44 | CXK5814 - Sony CXK5816 2kx8 SRAM (DIP24) |
| 45 | CXK5864 - Sony CXK5864 8kx8 SRAM (DIP28) |
| 46 | VG-* - MMI PAL16L8 (DIP20) |
| 47 | SW1/SW2 - 8-position DIP switch |
| 48 | HSync - 15.6250kHz |
| 49 | VSync - 58.4443Hz |
| 50 | |
| 51 | Other DATA EAST Chips |
| 52 | -------------------------------------- |
| 53 | DATA EAST 52 9235EV 205941 VC5259-0001 JAPAN (Sprite Generator IC, 128 pin PQFP) |
| 54 | DATA EAST 102 (M) DATA EAST 250 JAPAN (Encrypted 68000 CPU, 128 Pin PQFP) |
| 55 | DATA EAST 141 24220F008 (Tile Generator IC, 160 pin PQFP) |
| 56 | DATA EAST 104 L7A0717 9143 (M) DATA EAST (IO/Protection, 100 pin PQFP) |
| 57 | Small surface-mounted chip with number scratched off (28 pin SOP), but has number 9303K9200 |
| 58 | A similar chip exists on Capt. America PCB and has the number 77 on it. Possibly the same chip? |
| 59 | |
| 60 | |
| 61 | |
3 | 62 | - sound CPU seems to miss commands sometimes |
4 | 63 | - flipscreen is wrong |
5 | | - should sprites be buffered (is there a Deco71?) |
| 64 | - should sprites be buffered, is the Deco '77' a '71' or similar? |
6 | 65 | |
7 | 66 | */ |
8 | 67 | |
r24600 | r24601 | |
141 | 200 | ADDRESS_MAP_END |
142 | 201 | |
143 | 202 | static ADDRESS_MAP_START( sound_io, AS_IO, 8, dblewing_state ) |
144 | | AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("audio_data", 0) |
| 203 | AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("audiocpu", 0) |
145 | 204 | ADDRESS_MAP_END |
146 | 205 | |
147 | 206 | |
r24600 | r24601 | |
212 | 271 | PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
213 | 272 | PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_VBLANK("screen") |
214 | 273 | |
215 | | // Do not change these until the bit order from the protection device is correct! |
216 | 274 | PORT_START("DSW") |
217 | 275 | /* 16bit - These values are for Dip Switch #1 */ |
218 | 276 | PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2,3") |
r24600 | r24601 | |
309 | 367 | static MACHINE_CONFIG_START( dblewing, dblewing_state ) |
310 | 368 | |
311 | 369 | /* basic machine hardware */ |
312 | | MCFG_CPU_ADD("maincpu", M68000, 14000000) /* DE102 */ |
| 370 | MCFG_CPU_ADD("maincpu", M68000, XTAL_28MHz/2) /* DE102 */ |
313 | 371 | MCFG_CPU_PROGRAM_MAP(dblewing_map) |
314 | 372 | MCFG_CPU_VBLANK_INT_DRIVER("screen", dblewing_state, irq6_line_hold) |
315 | 373 | |
316 | | MCFG_CPU_ADD("audiocpu", Z80, 4000000) |
| 374 | MCFG_CPU_ADD("audiocpu", Z80, XTAL_32_22MHz/9) |
317 | 375 | MCFG_CPU_PROGRAM_MAP(sound_map) |
318 | 376 | MCFG_CPU_IO_MAP(sound_io) |
319 | 377 | |
r24600 | r24601 | |
322 | 380 | |
323 | 381 | /* video hardware */ |
324 | 382 | MCFG_SCREEN_ADD("screen", RASTER) |
325 | | MCFG_SCREEN_REFRESH_RATE(58) |
| 383 | MCFG_SCREEN_REFRESH_RATE(58.443) |
326 | 384 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) |
327 | 385 | MCFG_SCREEN_SIZE(64*8, 32*8) |
328 | 386 | MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1) |
r24600 | r24601 | |
344 | 402 | /* sound hardware */ |
345 | 403 | MCFG_SPEAKER_STANDARD_MONO("mono") |
346 | 404 | |
347 | | MCFG_YM2151_ADD("ymsnd", 32220000/9) |
| 405 | MCFG_YM2151_ADD("ymsnd", XTAL_32_22MHz/9) |
348 | 406 | MCFG_YM2151_IRQ_HANDLER(WRITELINE(dblewing_state, sound_irq)) |
349 | 407 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) |
350 | 408 | |
351 | | MCFG_OKIM6295_ADD("oki", 32220000/32, OKIM6295_PIN7_HIGH) |
| 409 | MCFG_OKIM6295_ADD("oki", XTAL_28MHz/28, OKIM6295_PIN7_HIGH) |
352 | 410 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) |
353 | 411 | MACHINE_CONFIG_END |
354 | 412 | |
355 | 413 | |
356 | | /* |
357 | 414 | |
358 | | Double Wings (JPN Ver.) |
359 | | (c)1993 Mitchell |
360 | | DEC-22V0 (S-NK-3220) |
361 | 415 | |
362 | | Software is by Mitchell, but the PCB is pure Data East. |
363 | | |
364 | | Data East ROM code = KP |
365 | | |
366 | | |
367 | | CPU :DE102 - Encrypted 68000 |
368 | | Sound :TMPZ84C00AP-6,YM2151,OKI M6295, YM3014B |
369 | | OSC :28.0000MHz,32.2200MHz |
370 | | RAM :LH6168 x 1, CXK5814 x 6, CXK5864 x 4 |
371 | | DIP :2 x 8 position |
372 | | Other :DATA EAST Chips (numbers scratched) |
373 | | -------------------------------------- |
374 | | DATA EAST #? 9235EV 205941 VC5259-0001 JAPAN (confirmed #52) - 128 pin PQFP |
375 | | DATA EAST #? DATA EAST 250 JAPAN (#102, the CPU) - 128 Pin PQFP |
376 | | DATA EAST #? 24220F008 (confirmed #141) - 160 pin PQFP |
377 | | DATA EAST #? L7A0717 9143 (confirmed #104, IO/Protection) - 100 pin PQFP |
378 | | |
379 | | PALs: PAL16L8 (x 2, VG-00, VG-01) between program ROMs and CPU |
380 | | PAL16L8 (x 1, VG-02) next to #52 |
381 | | |
382 | | Small surface-mounted chip with number scratched off (28 pin SOP), but has number 9303K9200. |
383 | | A similar chip exists on Capt. America PCB and has the number 77 on it. Possibly the same chip? |
384 | | |
385 | | KP_00-.3D [547dc83e] |
386 | | KP_01-.5D [7a210c33] |
387 | | |
388 | | KP_02-.10H [def035fa] |
389 | | |
390 | | KP_03-.16H [5d7f930d] |
391 | | |
392 | | MBE-00.14A [e33f5c93] |
393 | | MBE-01.16A [ef452ad7] |
394 | | MBE-02.8H [5a6d3ac5] |
395 | | |
396 | | */ |
397 | | |
398 | 416 | ROM_START( dblewing ) |
399 | 417 | ROM_REGION( 0x80000, "maincpu", 0 ) /* DE102 code (encrypted) */ |
400 | 418 | ROM_LOAD16_BYTE( "kp_00-.3d", 0x000001, 0x040000, CRC(547dc83e) SHA1(f6f96bd4338d366f06df718093f035afabc073d1) ) |
401 | 419 | ROM_LOAD16_BYTE( "kp_01-.5d", 0x000000, 0x040000, CRC(7a210c33) SHA1(ced89140af6d6a1bc0ffb7728afca428ed007165) ) |
402 | 420 | |
403 | | ROM_REGION( 0x18000, "audiocpu", 0 ) // sound cpu |
404 | | ROM_LOAD( "kp_02-.10h", 0x00000, 0x08000, CRC(def035fa) SHA1(fd50314e5c94c25df109ee52c0ce701b0ff2140c) ) |
405 | | ROM_CONTINUE( 0x10000, 0x08000 ) |
| 421 | ROM_REGION( 0x10000, "audiocpu", 0 ) // sound cpu |
| 422 | ROM_LOAD( "kp_02-.10h", 0x00000, 0x10000, CRC(def035fa) SHA1(fd50314e5c94c25df109ee52c0ce701b0ff2140c) ) |
406 | 423 | |
407 | | ROM_REGION( 0x10000, "audio_data", 0 ) // sound data |
408 | | ROM_COPY( "audiocpu" , 0x00000, 0x00000, 0x8000 ) |
409 | | ROM_COPY( "audiocpu" , 0x10000, 0x08000, 0x8000 ) |
410 | | |
411 | 424 | ROM_REGION( 0x100000, "gfx1", 0 ) |
412 | 425 | ROM_LOAD( "mbe-02.8h", 0x00000, 0x100000, CRC(5a6d3ac5) SHA1(738bb833e2c5d929ac75fe4e69ee0af88197d8a6) ) |
413 | 426 | |
r24600 | r24601 | |
420 | 433 | ROM_RELOAD( 0x20000, 0x20000 ) |
421 | 434 | ROM_RELOAD( 0x40000, 0x20000 ) |
422 | 435 | ROM_RELOAD( 0x60000, 0x20000 ) |
423 | | |
424 | 436 | ROM_END |
425 | 437 | |
426 | 438 | DRIVER_INIT_MEMBER(dblewing_state,dblewing) |