Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!zephyr.ens.tek.com!tekcrl!tekgvs!toma From: toma@tekgvs.LABS.TEK.COM (Tom Almy) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: reading directly from screen Message-ID: <7300@tekgvs.LABS.TEK.COM> Date: 12 Apr 90 21:32:39 GMT References: <399@techbook.UUCP> <2724@unocss.unomaha.edu> Reply-To: toma@tekgvs.LABS.TEK.COM (Tom Almy) Organization: Tektronix, Inc., Beaverton, OR. Lines: 26 In article <2724@unocss.unomaha.edu> ho@fergvax.unl.edu writes: >Trouble with this might be that on EGA systems, if I'm not mistaken, it >is possible to move the "beginning" of display memory, such that it is >no longer at segment 0xb800. True! My NNANSI.SYS and FANSI-CONSOLE and perhaps others do just this to get fast scrolling. I do intercept several BIOS calls and reset the offset if I detect that a program probably will be wanting to access the display directly (FANSI-CONSOLE does the same thing, but different calls). For instance, enquiring the display mode resets the offset because there is no reason to check the mode unless you want to display directly. >I think it would require a couple of EGA BIOS calls to determine that. >I'm betting the VGA is even more flexible ("confusing"), but as I don't >have access to a VGA card, I can't speculate. VGA is the same. And on both you can get the information out of low memory. You will also want to know the number of columns and lines on the display. 40:4A -- word with number of columns 40:4E -- ofset into segment for start of display 40:84 -- byte with number of rows - 1 Tom Almy toma@tekgvs.labs.tek.com Standard Disclaimers Apply