Hi Mikkel, well the rugxulo.googlepages.com distro
does not even have an installer, so it does not
break your Linux either :-). Just copy the files
over your existing DOS to update your old DOS...

Note that DOS basically never really has drivers
for sound: DOS games expect soundblaster hardware
and some soundcards - like yours - come with some
tool which switches the hardware into soundblaster
compatibility mode. As the games try to communicate
with your hardware directly, they will not even try
to use a driver... Only very few games would. The
only common soundcard which has no soundblaster-in-
hardware compatibility but STILL works in DOS is
the SBPCI and SBLive series from Creative: They do
have a "driver" which traps all attempts to talk to
soundblaster hardware and "converts" them into the
different access style that the ACTUAL SBLive/SBPCI
hardware needs. Only works with emm386-compatible
games, though...

By the way,
> http://groups.google.de/group/de.comp.os.msdos/msg/ca0e07ae1d32c531
> http://groups.google.de/group/de.comp.os.msdos/msg/b803266bfc07816a
explains what the ESStech.com Allegro audio tool for DOS does:

> essolo.ini hex: 20 02 01 00  88 03 05 00  01 02 30 03  01 00 00 00
> Content:        ioport dma   adlib  irq   joyst  midi  unknown
Test PC: www.bttr-software.de/members/robert/p500dk/ Pentium 200
with ATI Mach64 / Acer ALI M1511/1513 Aladdin / CMD 646 EIDE /
D-Link DLK2201 DE-220P ISA network / ST340016A 37 GB IDE / 64 MB

Note that ISA compatible PCs often work better with PCI cards that
try to have a soundblaster compatible mode - my ForteMedia FM801
card worked in a PC with ISA+PCI+AGP in the PCI slot but in my new
PC without ISA slots (PCIe+PCI) only the Adlib part still works.

Back to Robert's information: The ESS driver only installs in Win9x
even though it is a plain DOS tool - which only does a bit of init:
> ftp://ftp.esstech.com/pub/audio-modem/VXD/Allegro_ES1988-1989/A1VXD_7130_Sign_29739.zip

Quoting settings from his post, shortened:
> ESS PCI Audio DOS Device Setup Utility, Version 2.31S
> (c) ESS Technology,Inc. 1996-1999. All rights reserved.
> ES1938/ES1946  PCI IRQ: 5  PCI IO Base: 7000  DMA Mode is TDMA
> SBPro Game...: SB IO=220h IRQ=5 DMA=1 MPU401 IO=330h Game...=201h

> Robert found with www.uwe-sieber.de/files/pciset.zip that only
PCI config bytes 40, 41 and 51 changed: 7f->5f, 90->10, 0->21
> He read www.alsa-project.org/alsa/ftp/datasheets/ess/DsSolo1.pdf
and found that this means "switch 10 to 16 bit I/O port base",
"enable legacy audio" (:-)) and "select normal IRQ and TDMA",
where bits 6:5 of byte 51h are 0 no IRQ / 1 normal IRQ / 2 non-
standard IRQ / 3 reserved and bits 2:1:0 are 0 Distributed DMA,
1 Transparent DMA, 2 PC/PCI DMA, 3 reserved, 4 to 7 WBDMA. All
are different attempts to have ISA style DMA on a PCI soundcard.
My FM801 has similar settings, alas all fail on my new board...

Robert used the small testsound players here:
> ftp://ftp.eunet.bg/pub/simtelnet/msdos/sound/plany15.zip
> ftp://ftp.eunet.bg/pub/simtelnet/msdos/sound/promod11.zip

I hope you enjoyed this summary / translation :-)


PS: About another PCI sound chipset:
> www.coli.uni-saarland.de/~eric/stuff/soft/specials/ViaAC97enableDOS.c
is a small code snippet explaining how to do what VIAAUDIO.COM does and
what VIAFMTSR.COM is: one enables VIA audio soundblaster mode, the other
is a virtual Adlib thing and sort of complex.   But VIAAUDIO is minimal:

"outb 80h,39h / outl 0cf8h,80003d48h / outl 0cfch, inl 0cfch and not 1"
unmutes the card :-)  If you had Win3, you would also do outb 80,19 and
... cfc or 1 at start and outb 80,29 and ... cfc and not 1 at end of it.

In the example, 80003d48 means "bus 0 slot 7 function 5 register 48"
where 0.7.5 is the PCI location of your VIA audio chip which you can
fetch with tools like DOS PCISLEEP or Linux lspci :-). You can check
by doing outl 0cf8h,80003d00h -> is inl 0cfch 30581106h VIA VT82C686?
Instead of 80003d00h you can use 80000500h or (slot shl 11) ... ;-).

You also have to tell in BIOS CMOS setup that you want to bootstrap
the card in legacy mode - then outl 0cf8h, 80003d40h -> inb 0cfeh
will return an odd number which shows that the card is enabled. The
BIOS does most bootstrap - VIAAUDIO only sets one last reg 48 bit!

Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
Freedos-user mailing list

Reply via email to