diff --git a/src/mame/heathzenith/README.md b/src/mame/heathzenith/README.md new file mode 100644 index 00000000000..c61679c5639 --- /dev/null +++ b/src/mame/heathzenith/README.md @@ -0,0 +1,53 @@ +# Heath Company / Zenith Data Systems + +## History +When Heath Company first developed their computers, Heath Company was owned by Schlumberger. In October 1979, Heath was sold to Zenith, which then created the [Zenith Data Systems](https://en.wikipedia.org/wiki/Zenith_Data_Systems) division for all the computer related products. The division was headquartered in the +Heath plant. + +## Models +Prior to the Zenith purchase, Heath offered both kits and assembled products. For kits, model number starts an "H" and the assembled products started with "WH". The "W" was referred to as "Wired". After the acquisition, kit naming remained the same. The assembled products were rebranded as Zenith or ZDS (Zenith Data Systems) and model number starts with "Z". For example, prior to the acquisition, the models were H89 and WH89. After the acquisition, the models were H-89 and Z-89. + +The systems were basically identical other than being either a kit or assembled. The combined company continued to make many of their new products available as both a kit and assembled. + +### H8 +An 8080 based system released in 1977 by Heath Company. + +### H11 / H11A / WH11 +A PDP-11 compatible system released by Heath Company in 1977. This system is not currently emulated in MAME. + +### H/Z-89 Series (H88, H88A, H-89, H-89A, WH89, Z-89, Z-90) +A Z80-based computer introduced in 1979 by Heath Company. Shares same cabinet as the H-19 terminal. + +#### Heath H89 add-on cards +##### H-88-3 Serial port +3 port serial card. Based on the 8250 UART. + +##### H-88-1 (not currently implemented) +5.25" Hard-sectored disk controller. Connects with internal drives and external H-17, H-77, and Z-87 drives. + +##### Z-89-37 +5.25" Soft-sectored disk controller. Connects with internal drives and external H-17, H/Z-37 H-77, and Z-87 drives. + +##### Z-89-47 (not currently implemented) +8" Interface card for the H/Z-47 and REMEX Floppy drives. + +##### Z-89-67 (not currently implemented) +Interface card for the Z-67 - SASI 10M Winchester Drive & 8" Floppy. + +#### H88 / H88A +The H88 came standard with a cassette interface board, and supported adding a H-88-1 hard-sectored controller. It came with the MTR-88 ROM. ROM/System could be upgraded to support MTR-89 or MTR-90 and their supported cards. + +#### H89 / H89A / WH89 / Z-89 +These systems came with the MTR-89 ROM. It came with the H-88-1 hard-sectored controller. It also supported the Z-89-47 interface card. ROM/System could be upgraded to support MTR-90 and their supported cards. + +#### Z-90 +The Z-90 came standard with the Z-89-37 soft-sectored controller. It has the MTR-90 ROM. Supported all of Heath's disk drive add-on cards: H-88-1, Z-89-37, Z-89-47, and Z-89-67, although at most only 2 could be installed at the same time. + +### H19 (Z-19) +A Z80-based terminal introduced in 1979 by Heath Company. + +### H22 +A 6512-based terminal. + +### H/Z-100 Series +A dual processor (8088 and 8085) computer. It could run 8-bit and 16-bit software. \ No newline at end of file diff --git a/src/mame/heathkit/et3400.cpp b/src/mame/heathzenith/et3400.cpp similarity index 100% rename from src/mame/heathkit/et3400.cpp rename to src/mame/heathzenith/et3400.cpp diff --git a/src/mame/heathkit/h17_fdc.cpp b/src/mame/heathzenith/h17_fdc.cpp similarity index 100% rename from src/mame/heathkit/h17_fdc.cpp rename to src/mame/heathzenith/h17_fdc.cpp diff --git a/src/mame/heathkit/h17_fdc.h b/src/mame/heathzenith/h17_fdc.h similarity index 100% rename from src/mame/heathkit/h17_fdc.h rename to src/mame/heathzenith/h17_fdc.h diff --git a/src/mame/heathkit/h19.cpp b/src/mame/heathzenith/h19.cpp similarity index 86% rename from src/mame/heathkit/h19.cpp rename to src/mame/heathzenith/h19.cpp index 1982df0a520..a3b0fe21fa7 100644 --- a/src/mame/heathkit/h19.cpp +++ b/src/mame/heathzenith/h19.cpp @@ -3,6 +3,7 @@ /*************************************************************************** Heathkit H19 + Zenith Data Systems Z-19 A smart terminal designed and manufactured by Heath Company. This is identical to the Zenith Data Systems Z-19. @@ -68,5 +69,5 @@ ROM_END } // anonymous namespace -// year name parent compat machine input class init company fullname flags -COMP( 1979, h19, 0, 0, h19, 0, h19_state, empty_init, "Heath Company", "Heathkit H-19", MACHINE_SUPPORTS_SAVE ) +// year name parent compat machine input class init company fullname flags +COMP( 1979, h19, 0, 0, h19, 0, h19_state, empty_init, "Heath Company", "H-19 Terminal", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/heathkit/h8.cpp b/src/mame/heathzenith/h8.cpp similarity index 100% rename from src/mame/heathkit/h8.cpp rename to src/mame/heathzenith/h8.cpp diff --git a/src/mame/heathkit/h89.cpp b/src/mame/heathzenith/h89.cpp similarity index 92% rename from src/mame/heathkit/h89.cpp rename to src/mame/heathzenith/h89.cpp index 50154f85382..65827b00adc 100644 --- a/src/mame/heathkit/h89.cpp +++ b/src/mame/heathzenith/h89.cpp @@ -926,7 +926,6 @@ void h89_sigmasoft_state::h89_sigmasoft(machine_config & config) } -// ROM definition ROM_START( h88 ) ROM_REGION( 0x2000, "maincpu", ROMREGION_ERASEFF ) @@ -935,20 +934,19 @@ ROM_START( h88 ) ROM_LOAD("2716_444-40_mtr88.u518", 0x0000, 0x0800, CRC(093afb79) SHA1(bcc1569ad9da7babf0a4199cab96d8cd59b2dd78)) ROM_END -// ROM definition ROM_START( h89 ) ROM_REGION( 0x2000, "maincpu", ROMREGION_ERASEFF ) ROM_DEFAULT_BIOS("mtr90") ROM_LOAD( "2716_444-19_h17.u520", 0x1800, 0x0800, CRC(26e80ae3) SHA1(0c0ee95d7cb1a760f924769e10c0db1678f2435c)) - ROM_SYSTEM_BIOS(0, "mtr90", "MTR-90 (444-142)") + ROM_SYSTEM_BIOS(0, "mtr90", "Zenith Data Systems MTR-90 (444-142)") ROMX_LOAD("2732_444-142_mtr90.u518", 0x0000, 0x1000, CRC(c4ff47c5) SHA1(d6f3d71ff270a663003ec18a3ed1fa49f627123a), ROM_BIOS(0)) - ROM_SYSTEM_BIOS(1, "mtr89", "MTR-89 (444-62)") + ROM_SYSTEM_BIOS(1, "mtr89", "Heath MTR-89 (444-62)") ROMX_LOAD("2716_444-62_mtr89.u518", 0x0000, 0x0800, CRC(8f507972) SHA1(ac6c6c1344ee4e09fb60d53c85c9b761217fe9dc), ROM_BIOS(1)) - ROM_SYSTEM_BIOS(2, "mms84b", "MMS 444-84B") + ROM_SYSTEM_BIOS(2, "mms84b", "Magnolia MicroSystems 444-84B") ROMX_LOAD("2732_444_84b_mms.u518", 0x0000, 0x1000, CRC(7e75d6f4) SHA1(baf34e036388d1a191197e31f8a93209f04fc58b), ROM_BIOS(2)) ROM_SYSTEM_BIOS(3, "kmr-100", "Kres KMR-100 V3.a.02") @@ -957,10 +955,10 @@ ROM_START( h89 ) ROM_SYSTEM_BIOS(4, "mtrhex_4k", "Ultimeth 4k ROM") ROMX_LOAD("2732_mtrhex_4k.u518", 0x0000, 0x1000, CRC(e26b29a9) SHA1(ba13d6c9deef682a9a8262bc910d46b577929a13), ROM_BIOS(4)) - ROM_SYSTEM_BIOS(5, "mtr90-84", "Heath's MTR-90 (444-84 - Superseded by 444-142)") + ROM_SYSTEM_BIOS(5, "mtr90-84", "Zenith Data Systems MTR-90 (444-84 - Superseded by 444-142)") ROMX_LOAD("2732_444-84_mtr90.u518", 0x0000, 0x1000, CRC(f10fca03) SHA1(c4a978153af0f2dfcc9ba05be4c1033d33fee30b), ROM_BIOS(5)) - ROM_SYSTEM_BIOS(6, "mms84a", "MMS 444-84A (Superseded by MMS 444-84B)") + ROM_SYSTEM_BIOS(6, "mms84a", "Magnolia MicroSystems 444-84A (Superseded by MMS 444-84B)") ROMX_LOAD("2732_444_84a_mms.u518", 0x0000, 0x1000, CRC(0e541a7e) SHA1(b1deb620fc89c1068e2e663e14be69d1f337a4b9), ROM_BIOS(6)) ROM_SYSTEM_BIOS(7, "mtrhex", "Ultimeth 2k ROM") @@ -973,35 +971,61 @@ ROM_START( h89_sigmasoft ) ROM_LOAD( "2716_444-19_h17.u520", 0x1800, 0x0800, CRC(26e80ae3) SHA1(0c0ee95d7cb1a760f924769e10c0db1678f2435c)) - ROM_SYSTEM_BIOS(0, "mtr90", "MTR-90 (444-142)") + ROM_SYSTEM_BIOS(0, "mtr90", "Zenith Data Systems MTR-90 (444-142)") ROMX_LOAD("2732_444-142_mtr90.u518", 0x0000, 0x1000, CRC(c4ff47c5) SHA1(d6f3d71ff270a663003ec18a3ed1fa49f627123a), ROM_BIOS(0)) - ROM_SYSTEM_BIOS(1, "mtr89", "MTR-89 (444-62)") + ROM_SYSTEM_BIOS(1, "mtr89", "Heath MTR-89 (444-62)") ROMX_LOAD("2716_444-62_mtr89.u518", 0x0000, 0x0800, CRC(8f507972) SHA1(ac6c6c1344ee4e09fb60d53c85c9b761217fe9dc), ROM_BIOS(1)) - ROM_SYSTEM_BIOS(2, "mms84b", "MMS 444-84B") + ROM_SYSTEM_BIOS(2, "mms84b", "Magnolia MicroSystems 444-84B") ROMX_LOAD("2732_444_84b_mms.u518", 0x0000, 0x1000, CRC(7e75d6f4) SHA1(baf34e036388d1a191197e31f8a93209f04fc58b), ROM_BIOS(2)) ROM_SYSTEM_BIOS(3, "kmr-100", "Kres KMR-100 V3.a.02") ROMX_LOAD("2732_kmr100_v3_a_02.u518", 0x0000, 0x1000, CRC(fd491592) SHA1(3d5803f95c38b237b07cd230353cd9ddc9858c13), ROM_BIOS(3)) - ROM_SYSTEM_BIOS(4, "mtrhex_4k", "Ultimeth ROM") + ROM_SYSTEM_BIOS(4, "mtrhex_4k", "Ultimeth 4k ROM") ROMX_LOAD("2732_mtrhex_4k.u518", 0x0000, 0x1000, CRC(e26b29a9) SHA1(ba13d6c9deef682a9a8262bc910d46b577929a13), ROM_BIOS(4)) - ROM_SYSTEM_BIOS(5, "mtr90-84", "Heath's MTR-90 (444-84 - Superseded by 444-142)") + ROM_SYSTEM_BIOS(5, "mtr90-84", "Zenith Data Systems MTR-90 (444-84 - Superseded by 444-142)") ROMX_LOAD("2732_444-84_mtr90.u518", 0x0000, 0x1000, CRC(f10fca03) SHA1(c4a978153af0f2dfcc9ba05be4c1033d33fee30b), ROM_BIOS(5)) - ROM_SYSTEM_BIOS(6, "mms84a", "MMS 444-84A (Superseded by MMS 444-84B)") + ROM_SYSTEM_BIOS(6, "mms84a", "Magnolia MicroSystems 444-84A (Superseded by MMS 444-84B)") ROMX_LOAD("2732_444_84a_mms.u518", 0x0000, 0x1000, CRC(0e541a7e) SHA1(b1deb620fc89c1068e2e663e14be69d1f337a4b9), ROM_BIOS(6)) ROM_SYSTEM_BIOS(7, "mtrhex", "Ultimeth 2k ROM") ROMX_LOAD("2716_mtrhex.u518", 0x0000, 0x0800, CRC(842a306a) SHA1(ddbc2b8bb127464af9eda8e7c56e6be7c8b43a16), ROM_BIOS(7)) ROM_END +ROM_START( z90 ) + ROM_REGION( 0x2000, "maincpu", ROMREGION_ERASEFF ) + ROM_DEFAULT_BIOS("mtr90") + + ROM_LOAD( "2716_444-19_h17.u520", 0x1800, 0x0800, CRC(26e80ae3) SHA1(0c0ee95d7cb1a760f924769e10c0db1678f2435c)) + + ROM_SYSTEM_BIOS(0, "mtr90", "Zenith Data Systems MTR-90 (444-142)") + ROMX_LOAD("2732_444-142_mtr90.u518", 0x0000, 0x1000, CRC(c4ff47c5) SHA1(d6f3d71ff270a663003ec18a3ed1fa49f627123a), ROM_BIOS(0)) + + ROM_SYSTEM_BIOS(1, "mms84b", "Magnolia MicroSystems 444-84B") + ROMX_LOAD("2732_444_84b_mms.u518", 0x0000, 0x1000, CRC(7e75d6f4) SHA1(baf34e036388d1a191197e31f8a93209f04fc58b), ROM_BIOS(1)) + + ROM_SYSTEM_BIOS(2, "kmr-100", "Kres KMR-100 V3.a.02") + ROMX_LOAD("2732_kmr100_v3_a_02.u518", 0x0000, 0x1000, CRC(fd491592) SHA1(3d5803f95c38b237b07cd230353cd9ddc9858c13), ROM_BIOS(2)) + + ROM_SYSTEM_BIOS(3, "mtrhex_4k", "Ultimeth 4k ROM") + ROMX_LOAD("2732_mtrhex_4k.u518", 0x0000, 0x1000, CRC(e26b29a9) SHA1(ba13d6c9deef682a9a8262bc910d46b577929a13), ROM_BIOS(3)) + + ROM_SYSTEM_BIOS(4, "mtr90-84", "Zenith Data Systems MTR-90 (444-84 - Superseded by 444-142)") + ROMX_LOAD("2732_444-84_mtr90.u518", 0x0000, 0x1000, CRC(f10fca03) SHA1(c4a978153af0f2dfcc9ba05be4c1033d33fee30b), ROM_BIOS(4)) + + ROM_SYSTEM_BIOS(5, "mms84a", "Magnolia MicroSystems 444-84A (Superseded by MMS 444-84B)") + ROMX_LOAD("2732_444_84a_mms.u518", 0x0000, 0x1000, CRC(0e541a7e) SHA1(b1deb620fc89c1068e2e663e14be69d1f337a4b9), ROM_BIOS(5)) +ROM_END + } // anonymous namespace -// year name parent compat machine input class init company fullname flags -COMP( 1979, h88, h89, 0, h88, h88, h88_state, empty_init, "Heath Company", "Heathkit H88", MACHINE_SUPPORTS_SAVE) -COMP( 1979, h89, 0, 0, h89, h89, h89_state, empty_init, "Heath Company", "Heathkit H89", MACHINE_SUPPORTS_SAVE) -COMP( 1984, h89_sigmasoft, h89, 0, h89_sigmasoft, h89, h89_sigmasoft_state, empty_init, "Heath Company", "Heathkit H89 with SigmaSoft IGC", MACHINE_SUPPORTS_SAVE) +// year name parent compat machine input class init company fullname flags +COMP( 1979, h88, h89, 0, h88, h88, h88_state, empty_init, "Heath Company", "H-88", MACHINE_SUPPORTS_SAVE) +COMP( 1979, h89, 0, 0, h89, h89, h89_state, empty_init, "Heath Company", "H-89", MACHINE_SUPPORTS_SAVE) +COMP( 1981, z90, h89, 0, h89, h89, h89_state, empty_init, "Zenith Data Systems", "Z-90", MACHINE_SUPPORTS_SAVE) +COMP( 1984, h89_sigmasoft, h89, 0, h89_sigmasoft, h89, h89_sigmasoft_state, empty_init, "Heath Company", "H-89 with SigmaSoft IGC", MACHINE_SUPPORTS_SAVE) diff --git a/src/mame/heathkit/h_88_cass.cpp b/src/mame/heathzenith/h_88_cass.cpp similarity index 100% rename from src/mame/heathkit/h_88_cass.cpp rename to src/mame/heathzenith/h_88_cass.cpp diff --git a/src/mame/heathkit/h_88_cass.h b/src/mame/heathzenith/h_88_cass.h similarity index 100% rename from src/mame/heathkit/h_88_cass.h rename to src/mame/heathzenith/h_88_cass.h diff --git a/src/mame/heathkit/intr_cntrl.cpp b/src/mame/heathzenith/intr_cntrl.cpp similarity index 100% rename from src/mame/heathkit/intr_cntrl.cpp rename to src/mame/heathzenith/intr_cntrl.cpp diff --git a/src/mame/heathkit/intr_cntrl.h b/src/mame/heathzenith/intr_cntrl.h similarity index 100% rename from src/mame/heathkit/intr_cntrl.h rename to src/mame/heathzenith/intr_cntrl.h diff --git a/src/mame/zenith/mdt60.cpp b/src/mame/heathzenith/mdt60.cpp similarity index 100% rename from src/mame/zenith/mdt60.cpp rename to src/mame/heathzenith/mdt60.cpp diff --git a/src/mame/heathkit/sigmasoft_parallel_port.cpp b/src/mame/heathzenith/sigmasoft_parallel_port.cpp similarity index 100% rename from src/mame/heathkit/sigmasoft_parallel_port.cpp rename to src/mame/heathzenith/sigmasoft_parallel_port.cpp diff --git a/src/mame/heathkit/sigmasoft_parallel_port.h b/src/mame/heathzenith/sigmasoft_parallel_port.h similarity index 100% rename from src/mame/heathkit/sigmasoft_parallel_port.h rename to src/mame/heathzenith/sigmasoft_parallel_port.h diff --git a/src/mame/heathkit/tlb.cpp b/src/mame/heathzenith/tlb.cpp similarity index 100% rename from src/mame/heathkit/tlb.cpp rename to src/mame/heathzenith/tlb.cpp diff --git a/src/mame/heathkit/tlb.h b/src/mame/heathzenith/tlb.h similarity index 100% rename from src/mame/heathkit/tlb.h rename to src/mame/heathzenith/tlb.h diff --git a/src/mame/zenith/z100.cpp b/src/mame/heathzenith/z100.cpp similarity index 100% rename from src/mame/zenith/z100.cpp rename to src/mame/heathzenith/z100.cpp diff --git a/src/mame/zenith/z22.cpp b/src/mame/heathzenith/z22.cpp similarity index 100% rename from src/mame/zenith/z22.cpp rename to src/mame/heathzenith/z22.cpp diff --git a/src/mame/zenith/z29.cpp b/src/mame/heathzenith/z29.cpp similarity index 95% rename from src/mame/zenith/z29.cpp rename to src/mame/heathzenith/z29.cpp index 5400529100a..d54273430fe 100644 --- a/src/mame/zenith/z29.cpp +++ b/src/mame/heathzenith/z29.cpp @@ -176,5 +176,5 @@ ROM_END } // anonymous namespace - -COMP(1983, z29, 0, 0, z29, z29, z29_state, empty_init, "Zenith Data Systems", "Z-29", MACHINE_IS_SKELETON) +// year name parent compat machine input class init company fullname flags +COMP( 1983, z29, 0, 0, z29, z29, z29_state, empty_init, "Zenith Data Systems", "Z-29 Terminal", MACHINE_IS_SKELETON) diff --git a/src/mame/heathkit/z37_fdc.cpp b/src/mame/heathzenith/z37_fdc.cpp similarity index 100% rename from src/mame/heathkit/z37_fdc.cpp rename to src/mame/heathzenith/z37_fdc.cpp diff --git a/src/mame/heathkit/z37_fdc.h b/src/mame/heathzenith/z37_fdc.h similarity index 100% rename from src/mame/heathkit/z37_fdc.h rename to src/mame/heathzenith/z37_fdc.h diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 3c89ebef9ac..9267c55a8ca 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -19423,19 +19423,32 @@ wildfire // Parker Bros @source:hds/hds200.cpp hds200 // (c) Human Designed Systems -@source:heathkit/et3400.cpp +@source:heathzenith/et3400.cpp et3400 // -@source:heathkit/h8.cpp +@source:heathzenith/h8.cpp h8 // -@source:heathkit/h19.cpp -h19 // Heath H19 (Zenith Z-19) +@source:heathzenith/h19.cpp +h19 // Heath H19 -@source:heathkit/h89.cpp -h89 // Heath H89 (WH89, Zenith Z-89, Z-90) +@source:heathzenith/h89.cpp +h89 // Heath H89 (WH89) h88 // Heath H88 (with cassette tape) h89_sigmasoft // H89 with the SigmaSoft IGC card +z90 // Zenith Z-90 + +@source:heathzenith/mdt60.cpp +mdt60 // + +@source:heathzenith/z22.cpp +z22 // + +@source:heathzenith/z29.cpp +z29 // + +@source:heathzenith/z100.cpp +z100 // @source:hec2hrp/hec2hrp.cpp hec2hr // @@ -46486,18 +46499,6 @@ jackrabts // (c) 1984 monymony // (c) 1983 monymony2 // (c) 1983 -@source:zenith/mdt60.cpp -mdt60 // - -@source:zenith/z22.cpp -z22 // - -@source:zenith/z29.cpp -z29 // - -@source:zenith/z100.cpp -z100 // - @source:zpa/iq151.cpp iq151 //