Hi Eric!

Thanks for your answer!

>   > I'd like to write an Intel HDA driver for SCI games (Sierra quests).
> > Ok, they work great under Dosbox, but I still prefer using plain DOS.
> You could at least use dosemu :-p Much faster :-)

I'll try it, but I still want plain DOS.

> > I consider myself a good programmer, but I've never made any low-level
> > programming or debug DOS programs.
> Which programming languages do you write? At least part of your
> driver can be written in C, but you might need Assembly language
> as well, in particular if you want to take the tough route of
> creating universal virtual hardware instead of a Sierra driver.
> For debugging, I recommend using DOSEMU or, for even more lowlevel
> stuff, BOCHS, but you can also try 386SWAT in pure DOS, maybe :-)

My program languages are Basic, C, C++ and Java. I know Basic and Java won't
help and I am sure C & C++ somehow will. I installed Dosbox with heavy debug
information but since I don't know any assembly language I couldn't do much.

> > Is there any book or information on the net I can start with?
> Creating virtual hardware can be very hard, but if I understand
> you correctly, Sierra games already have some sort of interface
> for loading custom sound drivers?

Almost all Sierra quest, from the 90's, uses SCI (Sierra's Creative
Interpreter). SCI game has a configuration file that specifies what drivers
files to use for audio, video, mouse, etc. Most drivers aren't larger than
10,000 bytes.

> Then you can split your task
> in two parts: Write something which makes any sound on HDA and
> can be run from the command line. And write something which does
> anything with the sound sent by a Sierra game and which can be
> loaded as a Sierra driver. For example the latter can blink some
> pixels on your screen or can use the PC speaker (port 61h) - any
> noticeable activity will be enough to show you that your Sierra
> driver does properly receive sound data from your game...

Excellent idea!

PS: You can have a look at the sources of the ancient VSB
> virtual sound blaster to see how complicated it is to create
> some virtual hardware for SB1/SB2. Or look at the sources of
> DOSEMU to see how a proper virtual SB16 can be implemented in
> C. Of course DOSEMU uses Linux to send sound to your hardware
> and to trap I/O access of DOS, so it only shows the "middle"
> part of what a virtual soundblaster for DOS will need...
Where can I find VSB sources? I've found in Google the phrase "virtual sound
blaster" but I can't find neither the binaries nor the source. I find a
couple of sites with the phrase, not the files to download, though.

Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
Freedos-user mailing list

Reply via email to