VOGONS


First post, by megatron-uk

User metadata
Rank l33t
Rank
l33t

I've just restored a Thinkpad 240 with a broken screen and am having a difficult time getting sound working correctly. This has an ESS Solo 1E (ES1946) onboard and an Intel 440DX chipset. The Thinkpad BIOS has almost no options for managing resources, but I have disabled IRDA, serial and parallel ports to free any assigned interrupts. The only other option is under "PCI" and has an option to assign an IRQ to the "1st", "2nd", "3rd" and "4th" PCI devices - though no indication on what each of those devices are.

FM seems to work regardless of what driver I use (ESSOLO.SYS, ESSOLO.COM - v212Y and v321D, the pciset technique), so I did think it was all working.... but I observe the following other issues:

- ESSOLO.SYS: No errors during loading (shows "SOLO") when the driver is loaded. FM works, but doesn't appear to do anything else (no effects/digital output).
- ESSOLO.COM: initialises the card according to what I set in c:\essolo.ini; and shows a success message about the configured resources, but the system immediately locks up after it loads; the C:\ prompt and cursor return, but no input is possible.
- Changes to essolo.ini to affect DDMA, TDMA or PC/PCI make no difference to the behaviour (the mode is correctly shown in the output of essolo.com) - I don't know what implementation IBM have got on the 240 motherboard, so have tried all 3 options
- Changes to assigned IRQ (tried both 5 and 7) makes no difference

The attachment ess.jpg is no longer available

If using the pciset technique everything seems to run okay (and unlike ESSOLO.COM - it doesn't lock up), but once you run an audio setup tool (like Duke3d setup.exe) FM works, but testing the effects shows an error about initialising the card and possible dma/address error. Hard setting the values in something like Doom will blow up DOS4GW runtime part way through loading.

All of the above have been tried with various combinations of blank config.sys, with himem.sys and with himemx (in case it was a memory manager issue). There appears to be no difference, which leads me to believe it's not anything to do with any of those DOS components, and instead a hardware resource/hardware configuration issue.

Anyone with a Thinkpad 240 able to get the Solo-1E working properly in plain old DOS?

My collection database and technical wiki:
https://www.target-earth.net

Reply 1 of 4, by megatron-uk

User metadata
Rank l33t
Rank
l33t

So far I've tested around 15 or so titles, in all of them FM sound is working. I am only able to get digital audio working in the following titles:

- Wolfenstein 3d
- Blake Stone 1 + 2
- Eradicator

Digital audio in those titles above *only* works if ESSOLO.SYS is loaded *and* c:\essolo.ini is configured for TDMA mode. ESSOLO.COM still hangs, every single time. Without ESSOLO.SYS loaded the above titles have no digital audio. The use of just PCISET itself to twiddle the chip registers is clearly not sufficient for those games.

In the following titles I can *only* get FM sound; either the setup fails to detect SB/ESS digital audio (or hangs when attempting to do so), or the game starts but no digital effects are played:

- DN3D
- Cybermage
- Descent
- Doom 1 + 2
- Heretic
- Hexen
- Magic Carpet
- Dark Forces

In addition, I get digital audio from Powerslave during the intro splash screen (the 'laugh'), but then the game hangs. This may or may not be a broken install, but since it is one of a handful of protected mode games with digital audio (Eradicator being the only other), I've mentioned it.

My collection database and technical wiki:
https://www.target-earth.net

Reply 2 of 4, by megatron-uk

User metadata
Rank l33t
Rank
l33t

I haven't been able to get digital effects working in DOS yet, though I did achieve the following:

- Clean install of Win98SE + IBM audio supplement == working Windows audio + "DOS emulation" device in control panel (set to A220, D1, I5)
- Added entries of c:\essolo.sys to config.sys and c:\essolo.com to autoexec.bat
- essolo.com no longer hangs the machine

The attachment IMG20241230102409.jpg is no longer available

Looking at the config for essolo.ini that the IBM driver package created, it is basically the default (base 220, i5, d1, mpu 330, gameport 201, DDMA mode). In my manual creation of that file I have been *disabling* the gameport (since there isn't one) and mpu401 (since I have a real one at the same address on my SCP-55).... and I have now found out that disabling the MPU401 port is what was causing the Thinkpad 240 keyboard and mouse to stop responding!

As a workaround, instead of disabling the mpu401 port in essolo.ini I am setting it to 0x300 instead so as not to conflict with 0x330 of the Roland card. The previous games which were working (Wolf3d, Blake Stone, etc) all still work:

The attachment IMG20241230102159.jpg is no longer available
The attachment IMG20241230102132.jpg is no longer available

Still no digital audio in DOS from other titles, but at least essolo.com doesn't lock the keyboard up any more and I can try the other DMA modes in the knowledge that it's not that which was causing the keyboard lockup.

My collection database and technical wiki:
https://www.target-earth.net

Reply 3 of 4, by megatron-uk

User metadata
Rank l33t
Rank
l33t

Changed essolo.ini to PC/PCI (SBLink) mode and it seems to work in that mode - still no lockup after loading essolo.com:

The attachment IMG20241230104020.jpg is no longer available

Duke3d setup now plays back digital audio:

The attachment IMG20241230104105.jpg is no longer available

Now to re-enable PCMCIA card services in config.sys and the Roland SCP-55 enabler.....

My collection database and technical wiki:
https://www.target-earth.net

Reply 4 of 4, by megatron-uk

User metadata
Rank l33t
Rank
l33t

Further progress:

- ESS Solo-1 working via essolo.sys in config.sys (leaves no driver behind) and essolo.com in autoexec.bat.
- Initialises in PC/PCI mode
- Working in both realmode and protected mode games (tested around a dozen so far)
- ESSVOL.exe does not work on the Solo-1E ("Audiodrive not detected")
- But.... (https://www.bttr-software.de/products/sbmix/) works nicely in its place

PCMCIA:
- PCMCIA working (Cardsoft drivers, using the SSCBTI.SYS driver)
- Roland SCP-55 enabler working
- Roland SCP-55 stereo out to ESS Solo line-in working (defaults to muted, but works after setting line-in volume with sbmix)

Other:
- UMBPCI working, with ranges excluded in use by the hardware (I use: /I=CC00-D7FF /I=DC00-DFFF)

So in summary: FM works (and sounds a million times better than the CS4624 in my TP 600X), digital audio works (in the games tested so far), Roland MIDI works. The only issue I have now is that half of the Cardsoft drivers won't load high. UMBPCI creates more than enough UMB areas, but the cardsoft cardxtnd.sys (20k) and cs.exe (12k) drivers will only load into lower memory, despite there being 47k total UMB free (and 38k of that being contiguous) as reported by mem:

This leaves me with a reasonable, though not spectacular, 594k with everything loaded and no EMS driver (I have a matching config.sys entry to the above but with EMS enabled as well - the default is without any EMS manager at all though):

The attachment IMG20241230122127.jpg is no longer available

This is probably just about enough for everything... but getting those remaining cardsoft drivers loaded high would be the icing on the cake. Any suggestions to get those drivers in upper memory?

My collection database and technical wiki:
https://www.target-earth.net