trunk/src/mame/drivers/segaybd.c
| r31801 | r31802 | |
| 45 | 45 | |
| 46 | 46 | const UINT32 MASTER_CLOCK = 50000000; |
| 47 | 47 | const UINT32 SOUND_CLOCK = 32215900; |
| 48 | const UINT32 LINK_CLOCK = XTAL_16MHz; |
| 48 | 49 | |
| 49 | 50 | // use this to fiddle with the IRQ2 timing |
| 50 | 51 | #define TWEAK_IRQ2_SCANLINE (0) |
| r31801 | r31802 | |
| 681 | 682 | AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE("shareram") |
| 682 | 683 | AM_RANGE(0x100000, 0x10001f) AM_READWRITE(io_chip_r, io_chip_w) |
| 683 | 684 | AM_RANGE(0x100040, 0x100047) AM_READWRITE(analog_r, analog_w) |
| 685 | AM_RANGE(0x1f0000, 0x1fffff) AM_RAM |
| 686 | ADDRESS_MAP_END |
| 684 | 687 | |
| 688 | static ADDRESS_MAP_START( main_map_link, AS_PROGRAM, 16, segaybd_state ) |
| 685 | 689 | AM_RANGE(0x190000, 0x190fff) AM_RAM // ram to share with link CPU? |
| 686 | 690 | AM_RANGE(0x191000, 0x191001) AM_READ(link_r) |
| 687 | 691 | AM_RANGE(0x192000, 0x192001) AM_READWRITE(link2_r, link2_w) |
| 688 | 692 | |
| 689 | | AM_RANGE(0x1f0000, 0x1fffff) AM_RAM |
| 693 | AM_IMPORT_FROM(main_map) |
| 690 | 694 | ADDRESS_MAP_END |
| 691 | 695 | |
| 692 | | |
| 693 | | |
| 694 | 696 | //************************************************************************** |
| 695 | 697 | // SUB CPU ADDRESS MAPS |
| 696 | 698 | //************************************************************************** |
| r31801 | r31802 | |
| 741 | 743 | AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(sound_data_r) |
| 742 | 744 | ADDRESS_MAP_END |
| 743 | 745 | |
| 746 | //************************************************************************** |
| 747 | // Z80 LINK BOARD CPU ADDRESS MAPS |
| 748 | //************************************************************************** |
| 744 | 749 | |
| 750 | static ADDRESS_MAP_START( link_map, AS_PROGRAM, 8, segaybd_state ) |
| 751 | ADDRESS_MAP_UNMAP_HIGH |
| 752 | AM_RANGE(0x0000, 0x0fff) AM_ROM |
| 753 | AM_RANGE(0x2000, 0x2fff) AM_RAM |
| 754 | AM_RANGE(0x3000, 0x3fff) AM_RAM |
| 755 | AM_RANGE(0x4000, 0x47ff) AM_RAM |
| 756 | ADDRESS_MAP_END |
| 745 | 757 | |
| 758 | static ADDRESS_MAP_START( link_portmap, AS_IO, 8, segaybd_state ) |
| 759 | ADDRESS_MAP_UNMAP_HIGH |
| 760 | ADDRESS_MAP_GLOBAL_MASK(0xff) |
| 761 | ADDRESS_MAP_END |
| 762 | |
| 746 | 763 | //************************************************************************** |
| 747 | 764 | // GENERIC PORT DEFINITIONS |
| 748 | 765 | //************************************************************************** |
| r31801 | r31802 | |
| 1275 | 1292 | MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) |
| 1276 | 1293 | MACHINE_CONFIG_END |
| 1277 | 1294 | |
| 1295 | // LINK PCB is 834-6740 |
| 1296 | // has 1x 8 switch dip bank, z80B CPU, ribbon connector? (to main board?), RX/TX ports, 16Mhz OSC |
| 1297 | static MACHINE_CONFIG_DERIVED( yboard_link, yboard ) |
| 1298 | MCFG_CPU_MODIFY("maincpu") |
| 1299 | MCFG_CPU_PROGRAM_MAP(main_map_link) |
| 1278 | 1300 | |
| 1301 | MCFG_CPU_ADD("linkcpu", Z80, LINK_CLOCK/4 ) // ?? mhz |
| 1302 | MCFG_CPU_PROGRAM_MAP(link_map) |
| 1303 | MCFG_CPU_IO_MAP(link_portmap) |
| 1304 | MACHINE_CONFIG_END |
| 1279 | 1305 | |
| 1280 | 1306 | //************************************************************************** |
| 1281 | 1307 | // ROM DEFINITIONS |
| r31801 | r31802 | |
| 1697 | 1723 | ROM_LOAD16_BYTE( "epr-11791.14", 0x000001, 0x20000, CRC(36b2910a) SHA1(9948b91837f944a7a606542fa685525e74bbe398) ) |
| 1698 | 1724 | ROM_LOAD16_BYTE( "epr-11790.17", 0x040000, 0x20000, CRC(2a564e66) SHA1(5f30fc15bfd017d75cfffe1e9e62ed0bcf32a98e) ) |
| 1699 | 1725 | ROM_LOAD16_BYTE( "epr-11792.15", 0x040001, 0x20000, CRC(c85caf6e) SHA1(2411ea99ec7f6e2b0b4f219e86ff2172539ad2c4) ) |
| 1700 | | |
| 1726 | |
| 1701 | 1727 | ROM_REGION64_BE( 0x400000, "ysprites", 0) |
| 1702 | 1728 | ROMX_LOAD( "epr-11757.67", 0x000000, 0x20000, CRC(e46dc478) SHA1(baf79e230aef3d63fb50373b2b1626f7c56ee94f), ROM_SKIP(7) ) |
| 1703 | 1729 | ROMX_LOAD( "epr-11758.75", 0x000001, 0x20000, CRC(5b435c87) SHA1(6b42b08e73957c36cd8faa896ca14461d00afd29), ROM_SKIP(7) ) |
| r31801 | r31802 | |
| 2087 | 2113 | ROM_LOAD("epr-11897.ic3", 0x000000, 0x20000, CRC(4463cb95) SHA1(e86fd4611cf83fe72d59950a60fc8c3a7381a1c7)) |
| 2088 | 2114 | ROM_LOAD("epr-11898.ic4", 0x000000, 0x20000, CRC(5d19d767) SHA1(d335cd3ef57c75e388df04b04fc3e2881a3902cf)) |
| 2089 | 2115 | |
| 2090 | | ROM_REGION(0x10000, "linkcpu", 0) // Z80 sound CPU |
| 2116 | ROM_REGION(0x10000, "linkcpu", 0) // Z80 link board CPU |
| 2091 | 2117 | ROM_LOAD("epr-12028", 0x000000, 0x08000, CRC(bb682a92) SHA1(0445bdbca0db9edecd826da37cd2d3afc57c5cf6) ) |
| 2092 | 2118 | ROM_END |
| 2093 | 2119 | |
| r31801 | r31802 | |
| 2441 | 2467 | //************************************************************************** |
| 2442 | 2468 | |
| 2443 | 2469 | // YEAR, NAME, PARENT, MACHINE, INPUT, INIT, MONITOR,COMPANY,FULLNAME,FLAGS, LAYOUT |
| 2444 | | GAME( 1988, gforce2, 0, yboard, gforce2, segaybd_state, gforce2, ROT0, "Sega", "Galaxy Force 2", GAME_SUPPORTS_SAVE ) |
| 2445 | | GAME( 1988, gforce2j, gforce2, yboard, gforce2, segaybd_state, gforce2, ROT0, "Sega", "Galaxy Force 2 (Japan)", GAME_SUPPORTS_SAVE ) |
| 2446 | | GAME( 1988, gforce2ja, gforce2, yboard, gforce2, segaybd_state, gforce2, ROT0, "Sega", "Galaxy Force 2 (Japan, Rev A)", GAME_SUPPORTS_SAVE ) |
| 2447 | | GAME( 1990, gloc, 0, yboard, gloc, segaybd_state, gloc, ROT0, "Sega", "G-LOC Air Battle (US)", GAME_SUPPORTS_SAVE ) |
| 2448 | | GAME( 1990, glocr360, gloc, yboard, glocr360, segaybd_state, r360, ROT0, "Sega", "G-LOC R360", GAME_SUPPORTS_SAVE ) |
| 2449 | | GAMEL(1988, pdrift, 0, yboard, pdrift, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (World, Rev A)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2450 | | GAMEL(1988, pdrifta, pdrift, yboard, pdrift, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (World)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2451 | | GAMEL(1988, pdrifte, pdrift, yboard, pdrifte, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (World, Earlier)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2452 | | GAMEL(1988, pdriftj, pdrift, yboard, pdriftj, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (Japan)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2453 | | GAMEL(1988, pdriftl, pdrift, yboard, pdriftl, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (Japan, Link Version)", GAME_SUPPORTS_SAVE|GAME_NOT_WORKING, layout_pdrift) |
| 2470 | GAME( 1988, gforce2, 0, yboard, gforce2, segaybd_state, gforce2, ROT0, "Sega", "Galaxy Force 2", GAME_SUPPORTS_SAVE ) |
| 2471 | GAME( 1988, gforce2j, gforce2, yboard, gforce2, segaybd_state, gforce2, ROT0, "Sega", "Galaxy Force 2 (Japan)", GAME_SUPPORTS_SAVE ) |
| 2472 | GAME( 1988, gforce2ja, gforce2, yboard, gforce2, segaybd_state, gforce2, ROT0, "Sega", "Galaxy Force 2 (Japan, Rev A)", GAME_SUPPORTS_SAVE ) |
| 2454 | 2473 | |
| 2455 | | GAME( 1991, rchase, 0, yboard, rchase, segaybd_state, rchase, ROT0, "Sega", "Rail Chase (World)", GAME_SUPPORTS_SAVE ) |
| 2456 | | GAME( 1991, rchasej, rchase, yboard, rchase, segaybd_state, rchase, ROT0, "Sega", "Rail Chase (Japan)", GAME_SUPPORTS_SAVE ) |
| 2457 | | GAME( 1991, strkfgtr, 0, yboard, strkfgtr, segaybd_state, gloc, ROT0, "Sega", "Strike Fighter (World)", GAME_SUPPORTS_SAVE ) |
| 2458 | | GAME( 1991, strkfgtrj, strkfgtr, yboard, strkfgtr, segaybd_state, gloc, ROT0, "Sega", "Strike Fighter (Japan)", GAME_SUPPORTS_SAVE ) |
| 2474 | GAME( 1990, gloc, 0, yboard, gloc, segaybd_state, gloc, ROT0, "Sega", "G-LOC Air Battle (US)", GAME_SUPPORTS_SAVE ) |
| 2475 | GAME( 1990, glocr360, gloc, yboard, glocr360, segaybd_state, r360, ROT0, "Sega", "G-LOC R360", GAME_SUPPORTS_SAVE ) |
| 2476 | |
| 2477 | GAMEL(1988, pdrift, 0, yboard, pdrift, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (World, Rev A)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2478 | GAMEL(1988, pdrifta, pdrift, yboard, pdrift, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (World)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2479 | GAMEL(1988, pdrifte, pdrift, yboard, pdrifte, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (World, Earlier)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2480 | GAMEL(1988, pdriftj, pdrift, yboard, pdriftj, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (Japan)", GAME_SUPPORTS_SAVE, layout_pdrift ) |
| 2481 | GAMEL(1988, pdriftl, pdrift, yboard_link, pdriftl, segaybd_state, pdrift, ROT0, "Sega", "Power Drift (Japan, Link Version)", GAME_SUPPORTS_SAVE|GAME_NOT_WORKING, layout_pdrift) |
| 2482 | |
| 2483 | GAME( 1991, rchase, 0, yboard, rchase, segaybd_state, rchase, ROT0, "Sega", "Rail Chase (World)", GAME_SUPPORTS_SAVE ) |
| 2484 | GAME( 1991, rchasej, rchase, yboard, rchase, segaybd_state, rchase, ROT0, "Sega", "Rail Chase (Japan)", GAME_SUPPORTS_SAVE ) |
| 2485 | |
| 2486 | GAME( 1991, strkfgtr, 0, yboard, strkfgtr, segaybd_state, gloc, ROT0, "Sega", "Strike Fighter (World)", GAME_SUPPORTS_SAVE ) |
| 2487 | GAME( 1991, strkfgtrj, strkfgtr, yboard, strkfgtr, segaybd_state, gloc, ROT0, "Sega", "Strike Fighter (Japan)", GAME_SUPPORTS_SAVE ) |