[Back to GRAPHICS SWAG index] [Back to Main SWAG index] [Original]

    {
    > How do I set a pixel in that mode (800x600x256) ?

    If the computer has a VESA driver installed, you can do it the same as you
    would for 320x200 (13h).  You would first change the video mode to the
    correct one and then plot the point.  The trouble is that every video card
    has different mode numbers for the different modes.

         Resolution       Manuf.      Mode #    Chip

         320x200          All         13h       All

         640x480          ATI         62h       All
         640x480          Chips&Tech  79h       452,453
         640x480          Paradise    5Fh       All
         640x480          Trident     5Dh       All
         640x480          Tseng       2Eh       All
         640x480          Video7      67h       All
         640x480          Genoa       5Ch       All

         800x600          ATI         63h       All
         800x600          Chips&Tech  7Bh       453
         800x600          Tseng       30h       All
         800x600          Video7      69h       All

         1024x768         Trident     62h       8900
         1024x768         Tseng       38h       ET4000

       Ploting a Pixel
       ---------------

         To plot a pixel you would use the following Pascal Procedure:
    }

    Procedure Plot(x,y:integer; color:byte); assembler;
    Asm
      mov bh,0
      mov cx,x { sets x coordinate }
      mov dx,y { sets y coordinate }
      mov al,color { sets color (0-255) }
      mov ah,0Ch { tells video to plot a point }
      int 10h
    End;

    {
    The x coordinate is moved into cx, the y coordinate is moved into dx and
    the color is moved into al.  You must make sure that color is a BYTE
    variable.  It can go from 0-255.  When you pass the color, it either must
    be from a byte variable or it must be 'variable mod 256' (where
    'variable' is some integer type variable).

    This example uses inline assembler.  To do anything significant with the SVGA
    you either have to use assembler or find a good BGI file or unit that will do
    it for you.
    }

[Back to GRAPHICS SWAG index] [Back to Main SWAG index] [Original]