Installing an Ensoniq SoundScape OPUS in DOS
**This article's content comes from a webpage that no longer exists, historically it was here. I do not take credit for its content, nor have I tried this myself. I have tidied up the formatting slightly. If you claim this text as your work and wish to be credited here for its content, please let me know.**
Not long ago I asked whether anyone knew how to get this card running in DOS (one of three 16-bit ISA sound cards I was working on):
Ensoniq Soundscape PnP Wavetable Sound Card, aka Ensoniq Soundscape OPUS.
Other identifying info:
- FCC ID LF7SS2016
- Model S3016
- Gateway P/N SNDCRD006ABWW
Ensoniq manufactured the card for Gateway.
No one seemed to know how, so I made a fresh effort and pushed through to a good measure of success (though I have posted separately about not being able to play MP3's with it).
My notes:
1) Download sndscape.zip from Vogons Drivers.
This provides DOS drivers for the Ensoniq Soundscape S-2000, Elite, and OPUS. It is actually someone’s hack of the installed Win9x driver, but they don't give instructions on how to set it up.
2) Copy the unzipped contents to C:\SNDSCAPE
3) The above files will be insufficient, however. A Windows SYSTEM.INI file is required. Create one from the text at the end of this post and save it to C:\SNDSCAPE\SYSTEM.INI. Then edit the last line of C:\SNDSCAPE\SNDSCAPE.INI to change the Windows Path to C:\SNDSCAPE.
4) Set an environment variable:
SET SNDSCAPE=C:\SNDSCAPE
5) Now run C:\SNDSCAPE\SSINIT.EXE (it requires the SNDSCAPE environment variable).
SSINIT presents a Quick Setup for setting basic volumes, all initially at 12 of 15:
Master Volume
Synth/Music Volume (DOS games music)
Wave/Sound Volume (“DOS games digitized sound” – does that mean sound effects?)
6) You can set those, choose Done, then Accept/Discard, followed by initialization of the card with either the existing configuration, or the existing configuration as modified by changes above.
Or instead of Done, choose Advanced to exit the Quick Setup and choose any of the menu items:
Set Midi
I/O port address: 330, 350
IRQ: 2/9, 5, 7, 10
Set Joystick disabled, enabled
Set Soundblaster/Wave emulation
disabled, enabled-at-I/O-address-220
IRQ: 2/9, 5, 7, 10
DMA: 0, 1, 3
7) Test the card: Tests current values from the Hardware settings – whether they are in use by other H/W, or available. (Note that settings are not yet saved, nor the card initialized).
DMA Channel 1: Available
IRQ
MIDI IRQ 2: Available
Soundblaster/Wave IRQ 5: Available
Mixer: Offers advanced volume settings for all devices, including left/right volume control
Midi: Set MIDI routing to Internal or External (currently Internal)
Exit: Choose this, then Accept/Discard, followed by initialization of the card with either the existing configuration, or the existing configuration as modified by changes made via the menus.
SSINIT’s Help system offers this info:
PORT | Must equal the I/O address set by the jumpers on the card (Wrong! No I/O jumpers exist.) |
IRQ | For MIDI, IRQ 2 is normal/expected by many programs. |
Joystick | Set to enable/disable |
Soundblaster Enable | To turn on Soundblaster emulation |
IRQ | For Soundblaster emulation, IRQ 5 is normal/expected by many programs |
DMA | For Soundblaster emulation |
WAVEPORT | Base I/O address of Windows Wave Record and Playback Device |
There is also an INITSS.BAT with these contents:
SET SNDSCAPE=C:\dosdrv\sndscapeSET BLASTER=A220 Ixx Dx T1
c:\dosdrv\Sndscape\SSINIT.EXE /I
SET BLASTER should be left as above. SSINIT will change it to the configured settings during initialization.
The /I switch (SSINIT /I) just initializes the card without running the configuration utility first.
INITSS.BAT should be edited thus:
SET BLASTER=A220 Ixx Dx T1
C:\SNDSCAPE\SSINIT.EXE /I
Then in AUTOEXEC.BAT, add this line:
Reboot and set sound and effects to SoundBlaster in games, etc.
My Successful Hardware Setup
Hardware:
Set Midi
I/O port address: [330], 350
IRQ: [2/9], 5, 7, 10
Set Joystick disabled, [enabled]
Set Soundblaster/Wave emulation
disabled, [enabled-at-I/O-address-220]
IRQ: 2/9, [5], 7, 10
DMA: 0, [1], 3
Test Card: A-OK, except reports MIDI IRQ 9: Available. IRQ 2 is reportedly expected by most progams, but maybe 9 is equivalent via IRQ sharing.
SYSTEM.INI contents:
oemfonts.fon=vgaoem.fon
system.drv=system.drv
drivers=mmsystem.dll power.drv
shell=Explorer.exe
user.exe=user.exe
gdi.exe=gdi.exe
sound.drv=mmsound.drv
dibeng.drv=dibeng.dll
comm.drv=comm.drv
mouse.drv=mouse.drv
keyboard.drv=keyboard.drv
*DisplayFallback=0
fonts.fon=vgasys.fon
fixedfon.fon=vgafix.fon
386Grabber=vgafull.3gr
display.drv=pnpdrvr.drv
scrnsave.exe=C:\WINDOWS\WEBSAVER.SCR
[keyboard]
keyboard.dll=
oemansi.bin=
subtype=
type=4
[boot.description]
system.drv=Standard PC
keyboard.typ=Standard 101/102-Key or Microsoft Natural Keyboard
mouse.drv=Standard mouse
aspect=100,96,96
display.drv=Oak Technology Super VGA
[386Enh]
device=*VCD
ebios=*ebios
woafont=dosapp.fon
mouse=*vmouse, msmouse.vxd
device=*dynapage
device=*vpd
device=*int13
EMMExclude=C000-CFFF
device=vswp.vxd
PagingFile=c:\windows\WIN386.SWP
keyboard=*vkd
display=*vdd,*vflatd
[NonWindowsApp]
TTInitialSizes=4 5 6 7 8 9 10 11 12 13 14 15 16 18 20 22
[power.drv]
[drivers]
midi1=sxgb.drv
wavemapper=*.drv
MSACM.imaadpcm=*.acm
MSACM.msadpcm=*.acm
midi=mmsystem.dll
wave=mmsystem.dll
[iccvid.drv]
[mciseq.drv]
[mci]
cdaudio=mcicda.drv
sequencer=mciseq.drv
waveaudio=mciwave.drv
avivideo=mciavi.drv
videodisc=mcipionr.drv
vcr=mcivisca.drv
MPEGVideo=mciqtz.drv
LiveAudioFile=mcilma.dll
MPEGVideo2=mciqtz.drv
[vcache]
[MSNP32]
[Password Lists]
DEFAULT=C:\WINDOWS\DEFAULT.PWL
[drivers32]
msacm.msg711=msg711.acm
vidc.CVID=iccvid.dll
VIDC.IV31=ir32_32.dll
VIDC.IV32=ir32_32.dll
vidc.MSVC=msvidc32.dll
VIDC.MRLE=msrle32.dll
msacm.lhacm=lhacm.acm
msacm.msg723=msg723.acm
vidc.M263=msh263.drv
vidc.M261=msh261.drv
msacm.l3acm=C:\WINDOWS\SYSTEM\L3CODECA.ACM
VIDC.VDOM=vdowave.drv
VIDC.MPG4=msscmc32.dll
vidc.vivo=ivvideo.dll
msacm.vivog723=vivog723.acm
VIDC.TR20=tr2032.dll
VIDC.UCOD=clrviddd.dll
VIDC.IV50=ir50_32.dll
msacm.iac2=C:\WINDOWS\SYSTEM\IAC25_32.AX
MSACM.NSPAC=nspac32.acm
VIDC.IV41=ir41_32.ax
msacm.msaudio1=msaud32.acm
MSACM.CEGSM=mobilev.acm
MSACM.imaadpcm=imaadp32.acm
MSACM.msadpcm=msadp32.acm
MSACM.msgsm610=msgsm32.acm
MSACM.trspch=tssoft32.acm
msacm.sl_anet=sl_anet.acm
VIDC.YUY2=msyuv.dll
VIDC.UYVY=msyuv.dll
VIDC.YVYU=msyuv.dll
[TTFontDimenCache]
0 4=2 4
0 5=3 5
0 6=4 6
0 7=4 7
0 8=5 8
0 9=5 9
0 10=6 10
0 11=7 11
0 12=7 12
0 13=8 13
0 14=8 14
0 15=9 15
0 16=10 16
0 18=11 18
0 20=12 20
0 22=13 22
[SNDSCAPE.DRV]
Port=330
WavePort=338
IRQ=9
SBIRQ=5
DMA=1