diff options
author | 2020-10-11 03:23:40 +1100 | |
---|---|---|
committer | 2020-10-11 03:23:40 +1100 | |
commit | ce045e819b6a64e2f161c883d2ee574e96482185 (patch) | |
tree | 945261c177db993e50ddcd2e2d2fe5367d9c35f0 | |
parent | c751a5348a89f2cd9d6b84938551e341ec7f8450 (diff) |
kaypro: merged software lists, using compatibility flag instead.
New working software
------------------
Kaypro284 boot disk
Kaypro IV boot disk
Kaypro 10 boot disk
Kaypro 10 Games
-rw-r--r-- | hash/kaypro.xml (renamed from hash/kayproii.xml) | 99 | ||||
-rw-r--r-- | hash/kaypro484.xml | 32 | ||||
-rw-r--r-- | src/mame/drivers/kaypro.cpp | 36 | ||||
-rw-r--r-- | src/mame/includes/kaypro.h | 2 |
4 files changed, 124 insertions, 45 deletions
diff --git a/hash/kayproii.xml b/hash/kaypro.xml index d19c601bb12..8e5ee9f6a03 100644 --- a/hash/kayproii.xml +++ b/hash/kaypro.xml @@ -3,7 +3,9 @@ <!-- license:CC0 --> -<softwarelist name="kayproii" description="Kaypro II disk images"> +<softwarelist name="kaypro" description="Kaypro CP/M disk images"> + +<!-- A:ii --> <!-- Operating systems --> @@ -11,6 +13,7 @@ license:CC0 <description>CP/M 2.2 Boot Disk (Ger)</description> <year>19??</year> <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="139911"> <rom name="cp-m 2.2 boot disk (19xx)(digital research)(de).td0" size="139911" crc="ab5d7ae0" sha1="b73622c17306e32b42cef31d58616378329605ef"/> @@ -22,6 +25,7 @@ license:CC0 <description>CP/M 2.2</description> <year>19??</year> <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="188479"> <rom name="cp-m 2.2 (19xx)(digital research).imd" size="188479" crc="602c4f18" sha1="c4158b4f84066514af2b74cb6d0915f661402819"/> @@ -35,6 +39,7 @@ license:CC0 <description>Perfect Calc v1.00</description> <year>1982</year> <publisher>Perfect Software</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="163451"> <rom name="perfect calc v1.00 (1982)(perfect software).imd" size="163451" crc="d7c79f18" sha1="3666da3855bfc9c82a328fee67906ac04b6bd75b"/> @@ -46,6 +51,7 @@ license:CC0 <description>Perfect Speller</description> <year>1982</year> <publisher>Perfect Software</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="150160"> <rom name="perfect speller (1982)(perfect software).imd" size="150160" crc="c03fc828" sha1="4a405c65a55b5ba9be17b638cfe9c0b539698fbc"/> @@ -57,6 +63,7 @@ license:CC0 <description>Perfect Writer</description> <year>1982</year> <publisher>Perfect Software</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="197701"> <rom name="perfect writer (1982)(perfect software).imd" size="197701" crc="43cb00ac" sha1="67145d125f3f50e660ae8b2e299aad8200d59a7f"/> @@ -68,6 +75,7 @@ license:CC0 <description>Perfect Writer - Docs and Utilities</description> <year>198?</year> <publisher><unknown></publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="151202"> <rom name="perfect writer - docs and utilities (198x)(-).imd" size="151202" crc="94cda75d" sha1="46348510ff682ef3a8a1e5a27f1625beae21980e"/> @@ -79,6 +87,7 @@ license:CC0 <description>Perfect Writer - Lessons</description> <year>198?</year> <publisher>Perfect Software</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="180829"> <rom name="perfect writer - lessons (198x)(perfect software).imd" size="180829" crc="b8bba8ca" sha1="6e18f014337efcb70248b8cff2483bc1d5c8ec4f"/> @@ -90,6 +99,7 @@ license:CC0 <description>Profit Plan</description> <year>1982</year> <publisher>Chang Laboratories</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="113909"> <rom name="profit plan (1982)(chang laboratories).imd" size="113909" crc="1d967882" sha1="03d00c14e57e0e84e0e1fa127ab36b47d1731ea4"/> @@ -101,6 +111,7 @@ license:CC0 <description>Select - Teach</description> <year>1981</year> <publisher>Select Information Systems</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="148661"> <rom name="select - teach (1981)(select information systems).imd" size="148661" crc="459b51f0" sha1="7bb16452689cbb39a9c8a2088306a98b2f3ca31a"/> @@ -112,6 +123,7 @@ license:CC0 <description>Select - Work Processor</description> <year>1981</year> <publisher>Select Information Systems</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="106254"> <rom name="select - work processor (1981)(select information systems).imd" size="106254" crc="ebcb98c5" sha1="1c8d1a3228e6ac5fdffe7409d921499db22fea72"/> @@ -123,6 +135,7 @@ license:CC0 <description>WordStar v3.3</description> <year>1983</year> <publisher>MicroPro</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="202296"> <rom name="wordstar v3.3 (1983)(micropro).imd" size="202296" crc="64e0f3d6" sha1="6abf468d538e65e82bc0b85cc5d656282048ce3c"/> @@ -134,6 +147,7 @@ license:CC0 <description>Synergy Host Control System 10/11/85</description> <year>1985</year> <publisher>Digital Keyboards</publisher> + <sharedfeat name="compatibility" value="A" /> <part name="flop1" interface="floppy_5_25"> <dataarea name="flop" size="191031"> <rom name="synhcs.imd" size="191031" crc="c87f1400" sha1="550c6c35e7605956498345df3c151b6abd89b62d"/> @@ -141,4 +155,87 @@ license:CC0 </part> </software> +<!-- B: 284 --> + + <software name="k28422g"> + <description>CP/M 2.2G</description> + <year>19??</year> + <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="B" /> + <part name="flop1" interface="floppy_5_25"> + <dataarea name="flop" size="0x01b508"> + <rom name="k284-22g.td0" size="0x01b508" crc="d80ce9a0" sha1="0d3da88129ad7ff04079b2a7fe73f19f5da21681"/> + </dataarea> + </part> + </software> + +<!-- C: 2X,484 --> + + <software name="cpm22f"> + <description>CP/M 2.2F (81-292)</description> + <year>19??</year> + <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="C" /> + <part name="flop1" interface="floppy_5_25"> + <dataarea name="flop" size="270208"> + <rom name="k4f-292.td0" size="270208" crc="8309cabe" sha1="7eb6829aaadae67b71bf4bfa19ce72f1e780747e"/> + </dataarea> + </part> + </software> + + <software name="cpm22g"> + <description>CP/M 2.2G (81-292-A)</description> + <year>19??</year> + <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="C" /> + <part name="flop1" interface="floppy_5_25"> + <dataarea name="flop" size="202620"> + <rom name="kp22gdsd.td0" size="202620" crc="6ab35630" sha1="106fb294b719d620abd82ee74f0f16130264e3d1"/> + </dataarea> + </part> + </software> + +<!-- D: iv --> + + <software name="kiv22"> + <description>CP/M 2.2 for Kaypro IV</description> + <year>19??</year> + <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="D" /> + <part name="flop1" interface="floppy_5_25"> + <dataarea name="flop" size="0x056639"> + <rom name="kiv-22.imd" size="0x056639" crc="99182539" sha1="d4b5a6a0a0038fc12aa39a7dd17006f1c71198df"/> + </dataarea> + </part> + </software> + +<!-- E: 10 - kaypro10 disks are loadable by 2X,484 --> + + <software name="kay10a0s"> + <description>CP/M 2.2F</description> + <year>19??</year> + <publisher>Digital Research</publisher> + <sharedfeat name="compatibility" value="E,C" /> + <part name="flop" interface="floppy_5_25"> + <dataarea name="flop" size="0x05741e"> + <rom name="kay10a0s.imd" size="0x05741e" crc="adfb4421" sha1="684758a5ddf467aba3be46c62f59bebcb97bbc1b"/> + </dataarea> + </part> + </software> + + <software name="kay10games"> + <description>Kaypro 10 Games</description> + <year>19??</year> + <publisher><unknown></publisher> + <sharedfeat name="compatibility" value="E,C" /> + <part name="flop" interface="floppy_5_25"> + <dataarea name="flop" size="0x05d7eb"> + <rom name="kay10b0a.imd" size="0x05d7eb" crc="f52ac968" sha1="1acc4d20bc1bfd3db8adbc28226bffdf3940c350"/> + </dataarea> + </part> + </software> + +<!-- F: 4X,robie (rom 1.7R) --> +<!-- G: new2,1,omni4 (rom 2.01) --> + </softwarelist> diff --git a/hash/kaypro484.xml b/hash/kaypro484.xml deleted file mode 100644 index 2450ec1cc55..00000000000 --- a/hash/kaypro484.xml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd"> -<!-- -license:CC0 ---> -<softwarelist name="kaypro484" description="Kaypro 4/84 disk images"> - -<!-- Operating systems --> - - <software name="cpm22f"> - <description>CP/M 2.2F (81-292)</description> - <year>19??</year> - <publisher>Digital Research</publisher> - <part name="flop1" interface="floppy_5_25"> - <dataarea name="flop" size="270208"> - <rom name="k4f-292.td0" size="270208" crc="8309cabe" sha1="7eb6829aaadae67b71bf4bfa19ce72f1e780747e"/> - </dataarea> - </part> - </software> - - <software name="cpm22g"> - <description>CP/M 2.2G (81-292-A)</description> - <year>19??</year> - <publisher>Digital Research</publisher> - <part name="flop1" interface="floppy_5_25"> - <dataarea name="flop" size="202620"> - <rom name="kp22gdsd.td0" size="202620" crc="6ab35630" sha1="106fb294b719d620abd82ee74f0f16130264e3d1"/> - </dataarea> - </part> - </software> - -</softwarelist> diff --git a/src/mame/drivers/kaypro.cpp b/src/mame/drivers/kaypro.cpp index bb65f6959a1..73c01b2ebb3 100644 --- a/src/mame/drivers/kaypro.cpp +++ b/src/mame/drivers/kaypro.cpp @@ -267,7 +267,7 @@ void kaypro_state::kayproii(machine_config &config) m_fdc->set_force_ready(true); FLOPPY_CONNECTOR(config, "fdc:0", kaypro_floppies, "525ssdd", floppy_image_device::default_floppy_formats).enable_sound(true); FLOPPY_CONNECTOR(config, "fdc:1", kaypro_floppies, "525ssdd", floppy_image_device::default_floppy_formats).enable_sound(true); - SOFTWARE_LIST(config, "flop_list").set_original("kayproii"); + SOFTWARE_LIST(config, "flop_list").set_original("kaypro").set_filter("A"); } void kaypro_state::kayproiv(machine_config &config) @@ -278,7 +278,7 @@ void kaypro_state::kayproiv(machine_config &config) config.device_remove("fdc:1"); FLOPPY_CONNECTOR(config, "fdc:0", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats).enable_sound(true); FLOPPY_CONNECTOR(config, "fdc:1", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats).enable_sound(true); - SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro483"); + SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro").set_filter("D"); } void kaypro_state::omni2(machine_config &config) @@ -367,7 +367,19 @@ void kaypro_state::kaypro484(machine_config &config) m_fdc->set_force_ready(true); FLOPPY_CONNECTOR(config, "fdc:0", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats).enable_sound(true); FLOPPY_CONNECTOR(config, "fdc:1", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats).enable_sound(true); - SOFTWARE_LIST(config, "flop_list").set_original("kaypro484"); + SOFTWARE_LIST(config, "flop_list").set_original("kaypro").set_filter("C"); +} + +void kaypro_state::kaypro4x(machine_config &config) +{ + kaypro484(config); + SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro").set_filter("F"); +} + +void kaypro_state::kaypro1(machine_config &config) +{ + kaypro484(config); + SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro").set_filter("G"); } void kaypro_state::kaypro10(machine_config &config) @@ -375,14 +387,14 @@ void kaypro_state::kaypro10(machine_config &config) kaypro484(config); config.device_remove("fdc:1"); // only has 1 floppy drive // need to add hard drive & controller - SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro10"); + SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro").set_filter("E"); } void kaypro_state::kaypronew2(machine_config &config) { kaypro484(config); config.device_remove("fdc:1"); // only has 1 floppy drive - SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypronew2"); + SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro").set_filter("G"); } void kaypro_state::kaypro284(machine_config &config) @@ -392,7 +404,7 @@ void kaypro_state::kaypro284(machine_config &config) config.device_remove("fdc:1"); FLOPPY_CONNECTOR(config, "fdc:0", kaypro_floppies, "525ssdd", floppy_image_device::default_floppy_formats).enable_sound(true); FLOPPY_CONNECTOR(config, "fdc:1", kaypro_floppies, "525ssdd", floppy_image_device::default_floppy_formats).enable_sound(true); - SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro284"); + SOFTWARE_LIST(config.replace(), "flop_list").set_original("kaypro").set_filter("B"); } void kaypro_state::init_kaypro() @@ -663,10 +675,10 @@ COMP( 1984, kaypro484, 0, 0, kaypro484, kaypro, kaypro_state, i COMP( 1984, kaypro284, kaypro484, 0, kaypro284, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 2/84", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // model 81-015 COMP( 1984, kaypro484p88, kaypro484, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 4/84 plus88", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // model 81-015 with an added 8088 daughterboard and rom COMP( 1984, kaypro1084, kaypro10, 0, kaypro10, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 10", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // model 81-005 -COMP( 1984, robie, 0, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro Robie", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) -COMP( 1985, kaypro2x, kaypro484, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 2x", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // model 81-025 +COMP( 1984, robie, 0, 0, kaypro4x, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro Robie", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +COMP( 1985, kaypro2x, kaypro484, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 2x", MACHINE_SUPPORTS_SAVE ) // model 81-025 COMP( 1985, kaypronew2, 0, 0, kaypronew2, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro New 2", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) -COMP( 1985, kaypro4x, robie, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 4x", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) -COMP( 1986, kaypro1, kaypro484, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 1", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) -COMP( 198?, omni2, kayproii, 0, omni2, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Omni II Logic Analyzer", MACHINE_SUPPORTS_SAVE ) -COMP( 198?, omni4, kaypro484, 0, kaypro484, kaypro, kaypro_state, init_kaypro, "Omni Logic Inc.", "Omni 4 Logic Analyzer", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +COMP( 1985, kaypro4x, robie, 0, kaypro4x, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 4x", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +COMP( 1986, kaypro1, kaypro484, 0, kaypro1, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Kaypro 1", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +COMP( 198?, omni2, kayproii, 0, omni2, kaypro, kaypro_state, init_kaypro, "Non Linear Systems", "Omni II Logic Analyzer", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +COMP( 198?, omni4, kaypro484, 0, kaypro1, kaypro, kaypro_state, init_kaypro, "Omni Logic Inc.", "Omni 4 Logic Analyzer", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/includes/kaypro.h b/src/mame/includes/kaypro.h index 370ea1d75d1..97de596cfe4 100644 --- a/src/mame/includes/kaypro.h +++ b/src/mame/includes/kaypro.h @@ -48,6 +48,8 @@ public: void kaypro484(machine_config &config); void kaypro10(machine_config &config); void kaypro284(machine_config &config); + void kaypro4x(machine_config &config); + void kaypro1(machine_config &config); void init_kaypro(); |