diff options
Diffstat (limited to 'src/mame/drivers/pc.cpp')
-rw-r--r-- | src/mame/drivers/pc.cpp | 151 |
1 files changed, 110 insertions, 41 deletions
diff --git a/src/mame/drivers/pc.cpp b/src/mame/drivers/pc.cpp index aa565d9358d..7b6b1b43d2e 100644 --- a/src/mame/drivers/pc.cpp +++ b/src/mame/drivers/pc.cpp @@ -43,6 +43,7 @@ public: { } void ataripc1(machine_config &config); + void coppc400(machine_config &config); void ncrpc4i(machine_config &config); void kaypro16(machine_config &config); void kaypropc(machine_config &config); @@ -55,11 +56,10 @@ public: void pccga(machine_config &config); void mk88(machine_config &config); void eppc(machine_config &config); + void olystar20f(machine_config &config); void olytext30(machine_config &config); - void laser_xt3(machine_config &config); void zenith(machine_config &config); void eagle1600(machine_config &config); - void eaglespirit(machine_config &config); void laser_turbo_xt(machine_config &config); void ibm5550(machine_config &config); void comport(machine_config &config); @@ -67,8 +67,6 @@ public: void ittxtra(machine_config &config); void cadd810(machine_config &config); void juko16(machine_config &config); - void hyo88t(machine_config &config); - void kyoxt(machine_config &config); void init_bondwell(); @@ -198,7 +196,7 @@ void pc_state::cfg_single_720K(device_t *device) void pc_state::pccga(machine_config &config) { /* basic machine hardware */ - i8088_cpu_device &maincpu(I8088(config, "maincpu", 4772720)); /* 4.77 MHz */ + i8088_cpu_device &maincpu(I8088(config, "maincpu", XTAL(14'318'181)/3)); /* 4.77 MHz */ maincpu.set_addrmap(AS_PROGRAM, &pc_state::pc8_map); maincpu.set_addrmap(AS_IO, &pc_state::pc8_io); maincpu.set_irq_acknowledge_callback("mb:pic8259", FUNC(pic8259_device::inta_cb)); @@ -1046,39 +1044,6 @@ Options: 8087 FPU ******************************************************************************/ -void pc_state::laser_turbo_xt(machine_config &config) -{ - i8088_cpu_device &maincpu(I8088(config, "maincpu", XTAL(14'318'181)/3)); /* 4.77 MHz */ - maincpu.set_addrmap(AS_PROGRAM, &pc_state::pc8_map); - maincpu.set_addrmap(AS_IO, &pc_state::pc8_io); - maincpu.set_irq_acknowledge_callback("mb:pic8259", FUNC(pic8259_device::inta_cb)); - - ibm5160_mb_device &mb(IBM5160_MOTHERBOARD(config, "mb", 0)); - mb.set_cputag(m_maincpu); - mb.int_callback().set_inputline(m_maincpu, 0); - mb.nmi_callback().set_inputline(m_maincpu, INPUT_LINE_NMI); - mb.set_input_default(DEVICE_INPUT_DEFAULTS_NAME(pccga)); - - // FIXME: determine ISA bus clock - ISA8_SLOT(config, "isa1", 0, "mb:isa", pc_isa8_cards, "cga", false); - ISA8_SLOT(config, "isa2", 0, "mb:isa", pc_isa8_cards, "com", false); // Multi I/O card (includes FDC) - ISA8_SLOT(config, "isa3", 0, "mb:isa", pc_isa8_cards, "fdc_xt", false); - ISA8_SLOT(config, "isa4", 0, "mb:isa", pc_isa8_cards, nullptr, false); - ISA8_SLOT(config, "isa5", 0, "mb:isa", pc_isa8_cards, nullptr, false); - ISA8_SLOT(config, "isa6", 0, "mb:isa", pc_isa8_cards, nullptr, false); - ISA8_SLOT(config, "isa7", 0, "mb:isa", pc_isa8_cards, nullptr, false); - ISA8_SLOT(config, "isa8", 0, "mb:isa", pc_isa8_cards, nullptr, false); - - /* keyboard */ - PC_KBDC_SLOT(config, "kbd", pc_xt_keyboards, STR_KBD_IBM_PC_XT_83).set_pc_kbdc_slot(subdevice("mb:pc_kbdc")); - - /* internal ram */ - RAM(config, RAM_TAG).set_default_size("640K").set_extra_options("512K,768K,896K,1024K,1408K,1536K,1664K"); - - /* software lists */ - SOFTWARE_LIST(config, "disk_list").set_original("ibm5150"); -} - ROM_START( laser_turbo_xt ) ROM_REGION(0x10000, "bios", 0) ROM_LOAD("laser_turbo_xt.bin", 0x0e000, 0x02000, CRC(0a6121d3) SHA1(59b1f8dd6fe981ef9a7700adebf6e1adda7cee90)) // version 1.11 - 27c64d @@ -1168,6 +1133,29 @@ ROM_START( zdsupers ) ROMX_LOAD("z184m v2.9e.10d", 0x8000, 0x8000, CRC(de2f200b) SHA1(ad5ce601669a82351e412fc6c1c70c47779a1e55), ROM_BIOS(1)) ROM_END +/****************************************************** Zenith Z-150 series *** + +Form factor: Desktop + +******************************************************************************/ + +ROM_START( zdz150 ) + ROM_REGION(0x10000, "bios", 0) + ROM_LOAD("444-260-18.bin", 0x8000, 0x4000, CRC(685208fe) SHA1(a1384627e8ecfd93842f6eabda4a417dd92be6df)) + ROM_LOAD("444-229-18.bin", 0xc000, 0x4000, CRC(a6078b8a) SHA1(9a970013f5109a5003365eb2923cc26f08516dcb)) +ROM_END + +/****************************************************** Zenith Z-160 series *** + +Form factor: (Trans-)Portable + +******************************************************************************/ + +ROM_START( zdz160 ) + ROM_REGION(0x10000, "bios", 0) + ROM_LOAD("f800ffff.rom", 0x8000, 0x8000, CRC(46dd9695) SHA1(beaf6b45cecdadf630a94902fa84006bf00e2b3d)) +ROM_END + /************************************************************** CompuAdd 810 ** http://mkgraham.dx.am/810.html @@ -1272,6 +1260,26 @@ ROM_START( nixpc01 ) ROM_LOAD( "nx01.bin", 0xc000, 0x4000, CRC(b0a75d1f) SHA1(7c2890eced917969968fc2e7491cda90a9734e03)) ROM_END +/***************************************************** Leading Edge Model D *** + +Those use an Intel Wildcard 88, a XT computer sans slots and DRAM on a SIMM like module +Chipset: Faraday FE2010A + +******************************************************************************/ + +ROM_START( ledgmodd ) + ROM_REGION(0x10000, "bios", 0) + // 0: blank display + ROM_SYSTEM_BIOS(0, "le", "Leading Edge") + ROMX_LOAD( "wildcard_88-the_leading_edge-model_d-le_303-27.bin", 0xc000, 0x4000, CRC(cc05347d) SHA1(c44f3ce56472e0894ab955a14f6a91a3fb876baf), ROM_BIOS(0) ) + // 1: blank display + ROM_SYSTEM_BIOS(1, "daewoo", "Daewoo") + ROMX_LOAD( "wildcard_88-the_leading_edge-model_d-daewoo-pn_23096023.bin", 0xc000, 0x4000, CRC(34f5fa32) SHA1(73c0489532a1f9a0b23bdd1865cd8b0c6f131ad9), ROM_BIOS(1) ) + // 2: Phoenix 8088 ROM BIOS Version 2.52 / P E Nelson - No scancode from keyboard + ROM_SYSTEM_BIOS(2, "wildcard", "Wildcard") + ROMX_LOAD( "wildcard7354-1001rev2.52.05.bin", 0x8000, 0x8000, CRC(ea0c4c2f) SHA1(d817f57dd5332a943b33826dbe67b23e4c94a6ca), ROM_BIOS(2) ) +ROM_END + /******************************************************Leading Edge Model M *** aka the Sperry PC, the "Sperry HT - 4.71 Bios" that can be found online is identical to the v.4.71 below @@ -1330,6 +1338,62 @@ ROM_START( nms9100 ) ROMX_LOAD("philipsxt.bin", 0x8000, 0x8000, CRC(2f3135e7) SHA1(d2fc4c06cf09e2c5a62017f0977b084be8bf9bbd), ROM_BIOS(2)) ROM_END +/************************************************* AEG Olympia Olystar 20F *** +Form Factor: Desktop +uses an Acer 710IIN motherboard, BIOS-Version 4.06 +CPU: AMD P8088-1, FPU socket available +Chips: Acer M1101, 2201A, UM8250B, WD37C65B-PL , Paradise PVC4 +OSC: 14.31818, 30.000000MHz, 16.000, 1.832 +RAM: 640K (256K, 512K, 768K, 1024K) +Bus: two ISA8 slots on a riser card +Video: Hercules/CGA compatible, on board +Mass storage: Floppy 720KB, HD 20MB on WD MFM-controller +On board ports: parallel, serial, Video, keyboard (Mini-DIN) + +*****************************************************************************/ + +void pc_state::olystar20f(machine_config &config) +{ + pccga(config); + + subdevice<isa8_slot_device>("isa2")->set_option_machine_config("fdc_xt", cfg_single_720K); + subdevice<isa8_slot_device>("isa3")->set_default_option(nullptr); + subdevice<isa8_slot_device>("isa5")->set_default_option("hdc"); + subdevice<ram_device>(RAM_TAG)->set_default_size("640K").set_extra_options("64K, 128K, 256K, 512K, 768K, 1024K"); // the BIOS detects 2432KB extension RAM in the 640K setting ... +} + +ROM_START( olystar20f ) + ROM_REGION(0x10000, "bios", 0) + ROM_LOAD("20f_ebios_u43_v4.06.bin", 0x8000, 0x8000, CRC(0dddb623) SHA1(d821f48ddc7c77868b3f5952fa12f41911bea406)) + + ROM_REGION(0x2000,"gfx1", 0) // on board PVC4 based graphics card (similar to Commodore PC AGA and Schneider EuroPC) + ROM_LOAD("20f_u11_v1.3.bin", 0x0000, 0x2000, CRC(d252ee8d) SHA1(035385521abc3d1b79967b5302a87d08f9383215)) +ROM_END + +/********************************************************* Cordata PPC-400 *** +Form factor: Luggable +Links: https://www.system-cfg.com/detailcollection.php?ident=243 +CPU: 8088/4.77MHz +RAM: 256K or 512K +Mass storage: 1/2 floppy disks 5.25" DD, 10MB or 20MB harddisk +On board: serial, parallel, video (CGA, Hercules, 640x400 mode) +Monitor: 9" monochrome + +*****************************************************************************/ + +void pc_state::coppc400(machine_config &config) +{ + pccga(config); + + subdevice<ram_device>(RAM_TAG)->set_default_size("512K").set_extra_options("256K"); + // the top 16K of the 512K are used for graphics even if a RAM expansion card is used +} + +ROM_START( coppc400 ) + ROM_REGION(0x10000, "bios", 0) + ROM_LOAD("f800ffff.rom", 0x8000, 0x8000, CRC(3d9b6594) SHA1(41f85e692e2020326fd580f7c436c23c76840119)) +ROM_END + /*************************************************************************** Game driver(s) @@ -1340,11 +1404,13 @@ ROM_END COMP( 1989, mk88, ibm5150, 0, mk88, pccga, pc_state, empty_init, "<unknown>", "MK-88", MACHINE_NOT_WORKING ) COMP( 1991, poisk2, ibm5150, 0, poisk2, pccga, pc_state, empty_init, "<unknown>", "Poisk-2", MACHINE_NOT_WORKING ) COMP( 1990, mc1702, ibm5150, 0, eagle1600, pccga, pc_state, empty_init, "<unknown>", "Elektronika MC-1702", MACHINE_NOT_WORKING ) +COMP( 198?, olystar20f, ibm5150, 0, olystar20f, pccga, pc_state, empty_init, "AEG Olympia", "Olystar 20F", MACHINE_NOT_WORKING ) COMP( 198?, olytext30, ibm5150, 0, olytext30, pccga, pc_state, empty_init, "AEG Olympia", "Olytext 30", MACHINE_NOT_WORKING ) COMP( 1987, ataripc1, ibm5150, 0, ataripc1, pccga, pc_state, empty_init, "Atari", "PC1", 0 ) COMP( 1988, ataripc3, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Atari", "PC3", 0 ) COMP( 1985, bw230, ibm5150, 0, bondwell, bondwell, pc_state, init_bondwell, "Bondwell Holding", "BW230 (PRO28 Series)", 0 ) COMP( 1982, mpc1600, ibm5150, 0, mpc1600, pccga, pc_state, empty_init, "Columbia Data Products", "MPC 1600", 0 ) +COMP( 198?, coppc400, ibm5150, 0, coppc400, pccga, pc_state, empty_init, "Corona Data Systems, Inc.", "Cordata PPC-400", MACHINE_NOT_WORKING ) COMP( 1983, comport, ibm5150, 0, comport, pccga, pc_state, empty_init, "Compaq", "Compaq Portable", MACHINE_NOT_WORKING ) COMP( 198?, cadd810, ibm5150, 0, cadd810, pccga, pc_state, empty_init, "CompuAdd", "810", MACHINE_NOT_WORKING ) COMP( 1984, dgone, ibm5150, 0, dgone, pccga, pc_state, empty_init, "Data General", "Data General/One" , MACHINE_NOT_WORKING ) @@ -1359,7 +1425,8 @@ COMP( 198?, juko16, ibm5150, 0, juko16, pccga, pc_state, COMP( 1985, kaypro16, ibm5150, 0, kaypro16, pccga, pc_state, empty_init, "Kaypro Corporation", "Kaypro 16", 0 ) COMP( 198?, kaypropc, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Kaypro Corporation", "PC", MACHINE_NOT_WORKING ) COMP( 198?, kyoxt, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Kyocera", "XT", MACHINE_NOT_WORKING ) -COMP( 198?, ledgmodm, ibm5150, 0, siemens, pccga, pc_state, empty_init, "Leading Edge", "Model M", MACHINE_NOT_WORKING ) +COMP( 198?, ledgmodd, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Leading Edge Hardware Products, Inc.", "Model D", MACHINE_NOT_WORKING ) +COMP( 198?, ledgmodm, ibm5150, 0, siemens, pccga, pc_state, empty_init, "Leading Edge Hardware Products, Inc.", "Model M", MACHINE_NOT_WORKING ) COMP( 198?, mpx16, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Micromint", "MPX-16", MACHINE_NOT_WORKING ) COMP( 1985, ncrpc4i, ibm5150, 0, ncrpc4i, pccga, pc_state, empty_init, "NCR", "PC4i", MACHINE_NOT_WORKING ) COMP( 198?, nixpc01, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Nixdorf Computer AG", "8810/25 CPC - PC01", MACHINE_NOT_WORKING ) @@ -1372,6 +1439,8 @@ COMP( 1992, iskr3104, ibm5150, 0, iskr3104, pccga, pc_state, COMP( 1985, sicpc1605, ibm5150, 0, siemens, pccga, pc_state, empty_init, "Siemens", "Sicomp PC16-05", MACHINE_NOT_WORKING ) COMP( 1985, pc7000, ibm5150, 0, eagle1600, pccga, pc_state, empty_init, "Sharp", "PC-7000", MACHINE_NOT_WORKING ) COMP( 198?, hstrtpls, ibm5150, 0, pccga, pccga, pc_state, empty_init, "Vendex", "HeadStart Plus", MACHINE_NOT_WORKING ) -COMP( 1988, laser_turbo_xt, ibm5150, 0, laser_turbo_xt, 0, pc_state, empty_init, "VTech", "Laser Turbo XT", 0 ) -COMP( 1989, laser_xt3, ibm5150, 0, laser_turbo_xt, 0, pc_state, empty_init, "VTech", "Laser XT/3", 0 ) +COMP( 1988, laser_turbo_xt, ibm5150, 0, pccga, pccga, pc_state, empty_init, "VTech", "Laser Turbo XT", 0 ) +COMP( 1989, laser_xt3, ibm5150, 0, pccga, pccga, pc_state, empty_init, "VTech", "Laser XT/3", 0 ) COMP( 1987, zdsupers, ibm5150, 0, zenith, pccga, pc_state, empty_init, "Zenith Data Systems", "SuperSport", 0 ) +COMP( 198?, zdz150, ibm5150, 0, zenith, pccga, pc_state, empty_init, "Zenith Data Systems", "Z-150 series", 0 ) +COMP( 198?, zdz160, ibm5150, 0, zenith, pccga, pc_state, empty_init, "Zenith Data Systems", "Z-160 series", 0 ) |