Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!lll-winken!uunet!munnari!otc!metro!ipso!runx!emmett From: emmett@runx.ips.oz (Emmett Lazich) Newsgroups: comp.unix.xenix Subject: graphics under SCO xenix with a hercules adapter Message-ID: <2093@runx.ips.oz> Date: 9 Apr 89 12:18:54 GMT Organization: RUNX Un*x Timeshare. Sydney, Australia. Lines: 62 Has anyone successfully made David T. Lewis's GL Graphics Library work under SCO 286 xenix 2.2.1 with a hercules mono graphics board? /dev/mono seems to return the correct far address for the display memory (I bet it hasn't set up the correct limit in the segment descriptor!). But I cannot put the CRT controller into graphics mode! No ioctl() call (or stty command) will put the herc board into graphics mode. SCO didn't seem to want to support it? What would have been nice is if the console driver (maj dev == 0) supported the hercules graphics mode using the second 32K page of display memory. Then when you switch between multiscreens you could have text where there should be text, and graphics in the screen being accessed by the GL library (what I am saying here is that the console driver keeps track of what's going on in each screen and does a few outb() calls when it has to talk to the 6845). I guess you could go the whole way and do a "rep movsw" (ie a multiscreen switch :-)) and CRT controller mode change to/from graphics mode when necessary, and have graphics on as many screens as you like. It would not be too hard if one had the source to the console driver. Any help appreciated! (David Lewis are you there??) I will probably write a weee little device driver with just an open() a close(),and an ioctl() and use it to switch the herc board between text and graphics mode. So if someone could tell me the values to put into the 6845 data register I'd be very grateful. (If I simply turn on bit 1 at 0x3b8 my screen goes really crazy! (experimented under MSDOS)) I'll use the hercioctl() routine to return the segment address ^^^^^^^^^ (I'll call it the herc driver in master) :-) of the video memory to the user program after it sets up a descriptor with the correct segment limits and all that crap. I'll use the second page of video memory so that if the user switches multiscreens nothing will get messed up. (Not only that! - multiscreens would be temporarily inactive while graphics is being displayed. A pity :-( But I dont have the source for the console driver so it must be this way.) Well.... any comments? Anyone interested? I only dreamed it all up just then but it seems like it would work. I think I'll do it! 6845/herc info please! Any info on PHIGS for people with UNIX running on AT machines? --Emmett ----------------------------------------------- Internet: emmett@runx.ips.oz.au UUCP: ...!uunet!munnari!runx.oz!emmett :w herc.msg