home *** CD-ROM | disk | FTP | other *** search
- There are a number of functions in ADVC which are intended to be used
- with a mouse. In specific, they rely on a Microsoft-compatible mouse.
- Most of the functions are self-explanatory, but the mouse cursor location
- needs to be explained further.
-
- The mouse cursor location is automatically updated by the mouse
- driver. You don't need to write any control routines for that at all. In
- order to provide a generalized interface, though, the location is returned
- in a somewhat unusual manner. It may be helpful to go into that in a bit
- more depth.
-
- The mouse cursor location is returned as a range of values equivalent
- to the dimensions of a CGA screen. That is, the columns range from 0-639,
- and the rows from 0-199. This holds true whether the display is in text
- or one of the color modes. To find where the cursor actually is, then,
- requires conversion factors.
-
- If you're in hi-res color mode (640x200), there is no conversion
- factor. The values directly correspond to the screen location.
-
- If you're in lo-res color mode (320x200), you need to apply a
- conversion factor of two to the columnar location. That is, if you want
- to position to the middle of the screen, you must set the mouse to column
- 160 * 2, or 320. The row location is still accurate, however.
-
- If you're in text mode (80x25), you need to apply conversion factors
- of eight to both the column and row locations, and add an offset of one.
- For example, if the mouse locations were returned as column 80, row 24,
- you would translate this to meaning text column 11, which is 80 / 8 + 1,
- and text row 4, which is 24 / 8 + 1. In effect, a text mode character is
- equivalent to an 8x8 block of graphics pixels. The offset is added
- because the graphics screen has its origin at (0,0), whereas the text
- screen has its offset at (1,1) in the usual notation.
-