Mail Archives: djgpp/1999/09/01/18:17:49
John S. Fine writes:
> I want to start using Allegro and I don't have a VESA driver for
> my Tseng ET4000, so I downloaded FREEBB12.ZIP and attempted its
> install program. It crashes.
Ho hum. That's certainly not a good thing, but unfortunately this
is a pretty much impossible sort of problem to debug by remote.
It is almost certainly one of the autodetection routines that is
causing the problem, which will be specific to your particular
hardware setup.
You can still try installing the driver by hand, though. Either
build it from source and then copy the relevant vbeaf.drv file
to c:\, or you can extract the driver binaries from the install.exe
using the Allegro datafile tools, eg:
exedat -x -a install.exe drivers.dat
dat -x drivers.dat *
dat -x tseng_dat.dat *
copy vbeaf_drv c:\vbeaf.drv
Or you can do the same thing using the grabber program to export
the binary directly from drivers.dat to c:\vbeaf.drv.
> In a DOS box in Win NT on the second of those computers (where
> it ultimately won't work, but I just was investigating the install
> problem), it runs apparently normally, but doesn't seem to install
> anything anywhere.
It's unlikely that any of the drivers will work under NT, and the
install program tries to autodetect them, so I wouldn't expect it
to work there.
> I also tried rebuilding the whole thing from source. I got many
> of those spilled register errors, like those you get in rebuilding
> Allegro itself.
Argh, yes. There is quite a bit of inline asm in the driver sources,
which will need updating to work with gcc 2.95. I'll fix this
whenever I get around to making a new release, but no promises
when that will be (FreeBE/AF only gets updated when someone sends
me new driver code for it).
> Are any of you successfully use FREEBB12?
It works for me on all the machines that I have access to (Matrox
Mystique and NVidia Riva TNT). Presumably it works for all the
other people who have written drivers as well: the idea is that
if everyone in the world was to write a driver for their card,
it wouldn't be long before all hardware was supported really well.
In practice, though, only a few people can be bothered to do this,
so the chipset support tends to be rather spotty :-)
> What is install.exe supposed to do? What files does it put where,
> etc.?
It just copies the driver binary (vbeaf.drv) to the root of your
c:\ drive, after trying to figure out what sort of card you have,
and hence which version of vbeaf.drv to use. It's a very trivial
program, basically just a pretty front end for the "copy" command.
> Should I be using a different version of something (DJGPP, or
> CWSDPMI, or Allegro, or FREEBB, or QEMM)? All these things have
> other versions and it isn't clear which can go together.
You could try running CWSDPMI instead of QEMM: I know nothing about
that, but who knows. To build from source, for now you'll need to
use a gcc version earlier than 2.95, or adjust all the asm parts,
but you shouldn't need to do that: even if the install program is
crashing, you can still bypass it and install the precompiled
version by hand.
> Should I be using something else entirely and not FREEBB?
> I have a fixed frequency monitor using a Tseng ET4000 chip. The
> monitor has decent support only for 1024x768 (it can't do more
> and it does less very badly). The BIOS will init 1024x768 mode
> correctly with the right mode number, but I can't figure out how
> to get Allegro to use that. I don't even know whether FREEBB
> would let me use 1024x768 in Allegro if I ever got it to work.
It should, but I can't confirm that from personal experience.
I wrote that Tseng driver code as part of the original SVGA
support in Allegro, and only later migrated it into a VBE/AF
driver form, but I gave away my old machine with the Tseng card
many years ago, so this is not exactly well tested.
The FreeBE/AF Tseng support is very simplistic, with no hardware
accelerator or linear framebuffer support. It may be enough to
get SVGA modes working with Allegro if you don't have a proper
VESA driver for your card, but to be honest I think you would
be better off to look for a decent VESA implementation instead.
You should be able to get a suitable TSR from the hardware
manufacturer.
Shawn Hargreaves.
- Raw text -