jimb@tsdiag.ccur.com (Jim Blakey RG8U) (02/01/91)
A friend of mine and I are attempting to program VGA adapters to display WEFAX images in 800x600x256 (or higher). We have the hardware pretty well squared away, but we're having some trouble with programming the VGA adapter on the bare metal. (There are rather stringent time constraints present - this beast is seriously interrupt driven). Are there any source-code examples of how to manipulate the VGA registers for the higher modes? Has anyone actually suceeded in figuring the VGA card out by reverse engineering? Our main interest is in Trident chipset-derived cards, but info for other ones may prove helpful as well. Modes that require less than 64K (ie 320x200x256) work as expected. Our color register setup routines work, as well as the sum to grayscale command. We've tried INT 10H to put the card in the proper mode, but any and all attempts to jam data in the video RAM for modes that require more than 64K have resulted in seemingly random results. Any information will be greatly appreciated, thank you in advance. -- David E. Tiller davet@tsdiag.ccur.com | Concurrent Computer Corp. FAX: 201-870-5952 Ph: (201) 870-4119 (w) | 2 Crescent Place, M/S 117 UUCP: ucbvax!rutgers!petsd!tsdiag!davet | Oceanport NJ, 07757 ICBM: 40 16' 52" N 73 59' 00" W | N2KAU @ NN2Z and... -- Jim Blakey jimb@tsdiag.ccur.com
wahlsten@elixir.lne.kth.se (Jorgen Wahlsten) (02/12/91)
In article <1435@tsdiag.ccur.com> jimb@tsdiag.ccur.com (Jim Blakey RG8U) writes: > > A friend of mine and I are attempting to program VGA adapters >to display WEFAX images in 800x600x256 (or higher). ... >... Modes that require less than 64K >(ie 320x200x256) work as expected. Our color register setup routines work, >as well as the sum to grayscale command. We've tried INT 10H to put the card >in the proper mode, but any and all attempts to jam data in the video RAM >for modes that require more than 64K have resulted in seemingly random results. The problem is that the so-called higher modes require more than 64 Kb and there are no standard way of switching banks... (e.g. Each constructor of Super-VGA boards has their own way). Therefore one has quite a problem to run *whatever* if there isn't a driver supplied (for Windows or as stated *whatever*). I've seen a PD-software called FractInt that draws fractal on the screen with whatever you might have as a VGA-adaptor. This fractint uses small routines to switch memory-bank depending on your VGA-board to be able to switch banks properly. But this fractint isn't the only software capable of doing this. There are others as well that supply small routines (in source), one for each adapter possible that switches banks... It you fail to find any hint in PD's on this bank-switching problem you should always be able to contact Trident themself (or some local hopefully well- informed supplier/agent). I know i've seen how to bank-switch for *-VGA but i don't remember what PD that supplied the particular source that i looked at (Sorry!). I could probably try to find out where and what i saw that routine for Trident chip-set but it would take some time (It was a while ago)... Try those display-programs that already exists and supports different types of VGA... I hope this gives you a hint on where to look. Good Luck with your VGA. /Jorgen Wahlsten wahlsten@lne.kth.se