richardg@pogo.UUCP (04/02/87)
There are some additional reasons for doing IN/OUT instructions and writting directly to video memory. Some graphics cards like the Hercules card do not have an extended bios on the card. This means that while the Hercules card is compatible with the existing ROM BIOS (in that it clones a monochrome card) there is only one way to put the card into graphics mode and that is to program the 6845s directly. It is also not an option on the Hercules card to use the read/write dot functions of the BIOS since they are also not available. This does complicate life since this makes it impossible for a TSR application to query the video mode from the BIOS and determine if the card is currently in alpha mode and it is safe to do character output through the bios. A common technique here is to look at video memory and determine if it looks like characters and attributes or if it looks like graphics data. So if you wish to support a Hercules card, an otherwise well behaved application may need to look at video memory in order to determine if character output to the screen will rendered as such. I have always felt that there needed to be a well behaved except for doing graphics category of application and would suggest to davidsen@kbsvax.steinmetz.UUCP (William E. Davidsen Jr) that he make his fourth category category five and make a new fourth category which is "Does everything through the bios except for graphics". This will actually catch a wide range of applications. GEM by DRI for instance would fall into this category unless a serial mouse was installed. Here again you run into the problem that dmt@mtunb.UUCP (Dave Tutelman) and others have identified that BIOS support for the RS232 ports is not what you would like it to be. Programs like GEM which support the MOUSE.COM interface, however, are well behaved (except for graphics writes to video memory) when talking through MOUSE.COM since this interface removes the need to write IN/OUT level code to support a mouse. -- Richard J. Greco "You think you've got problems, what UUCP: richardg@pogo.GPID.TEK.COM are you supposed to do if you are a Phone: (503) 685-3860 manically depressed robot." Tektronix, Inc. - P.O. Box 1000 - Wilsonville, Or 97070 - Mail Stop 63/356