Skip to content

Commit 9062e29

Browse files
committed
sd1 (21 voice) BIOS 4.xx now correctly detects speed.
This allows the 4.xx BIOS to correctly configure the emulated sd1 for 21 voices and thus play at the correct pitch. Thus the SD-1 Sequencer OS 4.xx floppies now also apply to the SD-1. So this also consolidates the `sd1_flop` and `sd132_flop` software lists into a single `sd1_flop` list - but still keeps the `vfxsd_flop` list separate because that is still sufficiently different. The consolidated `sd1_flop` software list uses `<sharedfeat name="compatibility" ... />` to allow the different sd1 versions to show only those floppies that apply, respectively: The sd132 does not show the Sequencer OS 3.00 floppy; the sd1 does not show the demo disks. Arguably this is not quite right because all the demos would at least technically work even on the 21-voice SD-1, in particular those for other keyboards (SQ and KS series) which only use the SD-1's sequencer; but any SD-1/32 demos would run out of voices and thus sound worse than they should if played on an SD-1 (21-voice), so it seems a safer bet to make those only available on the SD-1/32.
1 parent 94d54eb commit 9062e29

File tree

3 files changed

+141
-87
lines changed

3 files changed

+141
-87
lines changed

hash/sd132_flop.xml

Lines changed: 0 additions & 80 deletions
This file was deleted.

hash/sd1_flop.xml

Lines changed: 130 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,55 @@ license:CC0-1.0
55
-->
66
<softwarelist name="sd1_flop" description="Ensoniq SD-1 Disk Images">
77

8-
<software name="os3" supported="yes">
9-
<description>SD-1 Sequencer OS version 3.0</description>
8+
<software name="os410" supported="yes">
9+
<description>SD-1 Sequencer OS version 4.10</description>
10+
<year>1992</year>
11+
<publisher>Ensoniq</publisher>
12+
<sharedfeat name="compatibility" value="sd1,sd132" />
13+
<notes><![CDATA[
14+
SEQUENCER O.S.DISK - VERSION 4.10
15+
(REQUIRES ROM O.S. VER. 4.00 OR HIGHER)
16+
THIS DISK ALSO CONTAINS
17+
MULTIPLE SOUND PROGRAM FILES,
18+
PRESET FILES AND DEMO SEQUENCES.
19+
20+
P/N 8506000201-A MODEL VSD-201
21+
]]></notes>
22+
23+
<part name="flop" interface="floppy_3_5">
24+
<dataarea name="flop" size="819200">
25+
<rom name="SD1_OS_4_10.img" size="819200" crc="82fb69a4" sha1="152a1147ccb0424a9e8d96ca948c085fadcaf361" />
26+
</dataarea>
27+
</part>
28+
</software>
29+
30+
<software name="os400" cloneof="os410" supported="yes">
31+
<description>SD-1 Sequencer OS version 4.00</description>
32+
<year>1991</year>
33+
<publisher>Ensoniq</publisher>
34+
<sharedfeat name="compatibility" value="sd1,sd132" />
35+
<notes><![CDATA[
36+
SEQUENCER O.S.DISK - VERSION 4.00
37+
(REQUIRES ROM O.S. VER. 4.00 OR HIGHER)
38+
THIS DISK ALSO CONTAINS
39+
MULTIPLE SOUND PROGRAM FILES,
40+
PRESET FILES AND DEMO SEQUENCES.
41+
42+
P/N 8506000201-A MODEL VSD-201
43+
]]></notes>
44+
45+
<part name="flop" interface="floppy_3_5">
46+
<dataarea name="flop" size="819200">
47+
<rom name="SD1_OS_4_00.img" size="819200" crc="e218f989" sha1="6ba14f4ff2ad99800478893716d9c14a61a7eb38" />
48+
</dataarea>
49+
</part>
50+
</software>
51+
52+
<software name="os300" cloneof="os410" supported="yes">
53+
<description>SD-1 Sequencer OS version 3.00</description>
1054
<year>1990</year>
1155
<publisher>Ensoniq</publisher>
56+
<sharedfeat name="compatibility" value="sd1" />
1257

1358
<part name="flop" interface="floppy_3_5">
1459
<dataarea name="flop" size="819200">
@@ -17,4 +62,87 @@ license:CC0-1.0
1762
</part>
1863
</software>
1964

65+
<software name="sd1_32_demo1" supported="yes">
66+
<description>SD-1 32 Voice Demo Disk #1</description>
67+
<year>1992</year>
68+
<publisher>Ensoniq</publisher>
69+
<sharedfeat name="compatibility" value="sd132" />
70+
<notes><![CDATA[
71+
FEATURES MULTIPLE DEMOS*:
72+
"DOWN-HOME", "CHEW-EM-UP", "RAYZ-H/HOP",
73+
"OH-YEAH" AND "AINT-ENUFF"
74+
75+
SEQUENCED BY RICHARD SOUTHER/
76+
SCOTT FRANKFURT AND RAY CHEW
77+
*ALSO FEATURES DEMO PRESET FILE
78+
]]></notes>
79+
80+
81+
<part name="flop" interface="floppy_3_5">
82+
<dataarea name="flop" size="819200">
83+
<rom name="SD1_32Voice_DemoDisk1.img" size="819200" crc="7cfb73c5" sha1="0e5f8a3b64674d56d40346e62f7a095ace83bb55" />
84+
</dataarea>
85+
</part>
86+
</software>
87+
88+
<software name="multi_demo1" supported="yes">
89+
<description>Multi-Product Demo Disk #1</description>
90+
<year>1992</year>
91+
<publisher>Ensoniq</publisher>
92+
<sharedfeat name="compatibility" value="sd132" />
93+
<notes><![CDATA[
94+
INCLUDES SD-1 32 VOICE DEMOS: "3 STYLES" AND "SOUNDBLAST"
95+
KS-32 DEMOS: "KS DEMO1", "KS MEDIEVAL", "KS BROADWAY",
96+
SQ-2 DEMOS: "SQ-2 DIXIE"
97+
ALSO INCLUDES PREVIOUSLY RELEASED DEMOS
98+
99+
P/N 8506000701
100+
]]></notes>
101+
102+
<part name="flop" interface="floppy_3_5">
103+
<dataarea name="flop" size="819200">
104+
<rom name="MultiProductDemoDisk1.img" size="819200" crc="2a5456a1" sha1="c9ab9199fac474c01751ba0d1678dcd72ff57834" />
105+
</dataarea>
106+
</part>
107+
</software>
108+
109+
<software name="multi_demo2" supported="yes">
110+
<description>Multi-Product Demo Disk #2</description>
111+
<year>1993</year>
112+
<publisher>Ensoniq</publisher>
113+
<sharedfeat name="compatibility" value="sd132" />
114+
<notes><![CDATA[
115+
Includes eight Sd-1 32 Voice Demos, four SQ-2 demos and two KS-32 Demos
116+
117+
Sequenced by Ray Chew, Mike Ford, Richard Souther.
118+
119+
P/N 8506000801
120+
]]></notes>
121+
122+
<part name="flop" interface="floppy_3_5">
123+
<dataarea name="flop" size="819200">
124+
<rom name="MultiProductDemoDisk2.img" size="819200" crc="4f017eaf" sha1="65f3734cfab0fd79ec192674383be7b76e45d5b3" />
125+
</dataarea>
126+
</part>
127+
</software>
128+
129+
<software name="sq32_demo1" supported="yes">
130+
<description>SQ 32 Voice Demo Disk #1</description>
131+
<year>1993</year>
132+
<publisher>Ensoniq</publisher>
133+
<sharedfeat name="compatibility" value="sd132" />
134+
<notes><![CDATA[
135+
FEATURES "DESI-SLAM*" AND "CONTRASTS 123"
136+
137+
*KEYBOARD AND RACK VERSIONS
138+
SD-1 DISK FORMAT
139+
]]></notes>
140+
141+
<part name="flop" interface="floppy_3_5">
142+
<dataarea name="flop" size="819200">
143+
<rom name="SQ_32Voice_DemoDisk1.img" size="819200" crc="91ba0cc0" sha1="c7e3f803122ce9b8b860724a064c40bd9747da41" />
144+
</dataarea>
145+
</part>
146+
</software>
147+
20148
</softwarelist>

src/mame/ensoniq/esq5505.cpp

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -864,7 +864,7 @@ void esq5505_state::sd1(machine_config &config, int panel_type)
864864
vfxsd(config, panel_type);
865865

866866
// software list
867-
SOFTWARE_LIST(config, "sd1_flop").set_original("sd1_flop");
867+
SOFTWARE_LIST(config, "sd1_flop").set_original("sd1_flop").set_filter("sd1");
868868
}
869869

870870
// Like the sd1, but with some clock speeds faster.
@@ -881,7 +881,7 @@ void esq5505_state::sd132(machine_config &config, int panel_type)
881881
m_pump->set_clock(clock);
882882

883883
// software list
884-
SOFTWARE_LIST(config, "sd132_flop").set_original("sd132_flop");
884+
SOFTWARE_LIST(config.replace(), "sd1_flop").set_original("sd1_flop").set_filter("sd132");
885885
}
886886

887887
// 32-voice machines with the VFX-SD type config
@@ -1095,8 +1095,15 @@ ROM_END
10951095

10961096
ROM_START( sd1 )
10971097
ROM_REGION16_BE(0x40000, "osrom", 0)
1098-
ROM_LOAD16_BYTE( "sd1_21_300b_lower.bin", 0x000001, 0x020000, CRC(a1358a0c) SHA1(64ac5358aa46da37ca4195002cf358554e00878a) )
1099-
ROM_LOAD16_BYTE( "sd1_21_300b_upper.bin", 0x000000, 0x010000, CRC(465ba463) SHA1(899b0e83d0788c8d49c7b09ccf0b4a92b528c6e9) )
1098+
ROM_SYSTEM_BIOS(0, "410", "SD-1 v4.10")
1099+
ROM_LOAD16_BYTE_BIOS(0, "sd1_410_lo.bin", 0x000001, 0x020000, CRC(faa613a6) SHA1(60066765cddfa9d3b5d09057d8f83fb120f4e65e) )
1100+
ROM_LOAD16_BYTE_BIOS(0, "sd1_410_hi.bin", 0x000000, 0x010000, CRC(618c0aa8) SHA1(74acf458aa1d04a0a7a0cd5855c49e6855dbd301) )
1101+
ROM_SYSTEM_BIOS(1, "402", "SD-1 v4.02")
1102+
ROM_LOAD16_BYTE_BIOS(1, "sd1_32_402_lo.bin", 0x000001, 0x020000, CRC(5da2572b) SHA1(cb6ddd637ed13bfeb40a99df56000479e63fc8ec) )
1103+
ROM_LOAD16_BYTE_BIOS(1, "sd1_32_402_hi.bin", 0x000000, 0x010000, CRC(fc45c210) SHA1(23b81ebd9176112e6eae0c7c75b39fcb1656c953) )
1104+
ROM_SYSTEM_BIOS(2, "300", "SD-1 v3.00")
1105+
ROM_LOAD16_BYTE_BIOS(2, "sd1_21_300b_lower.bin", 0x000001, 0x020000, CRC(a1358a0c) SHA1(64ac5358aa46da37ca4195002cf358554e00878a) )
1106+
ROM_LOAD16_BYTE_BIOS(2, "sd1_21_300b_upper.bin", 0x000000, 0x010000, CRC(465ba463) SHA1(899b0e83d0788c8d49c7b09ccf0b4a92b528c6e9) )
11001107

11011108
ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00) // BS=0 region (12-bit)
11021109
ROM_LOAD16_BYTE( "u34.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
@@ -1110,7 +1117,6 @@ ROM_START( sd1 )
11101117
ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
11111118
ROM_END
11121119

1113-
// note: all known 4.xx BIOSes are for the 32-voice SD-1 and play out of tune on 21-voice h/w
11141120
ROM_START( sd132 )
11151121
ROM_REGION16_BE(0x40000, "osrom", 0)
11161122
ROM_SYSTEM_BIOS(0, "410", "SD-1 v4.10")

0 commit comments

Comments
 (0)