VGA BIOS can be used as an alternative to SVGAlib. please go through the following mails to understand how to use this. The exact syntax for the operations given below can be found online and assembly code can be directly used with gcc using the asm directive ******************************************************************** Paramveer, For teh OS assignment, there is no need to use SVGAlib. Instead all they need to do make the vga bios calls for moving the cursor position (x,y)! The VGA bios functions can be called by invoking software interrupt 10(Hex)! You just need to store the appropriate values in registers AH/BH etc to call the required BIOS function. For example to set the cursor position you need to have AH = 02 BH = page number (0 for graphics modes) DH = row DL = column returns nothing - positions relative to 0,0 origin - 80x25 uses coordinates 0,0 to 24,79; 40x25 uses 0,0 to 24,39 Other things you may wish to do are: set the video mode AH = 00 AL = 00 40x25 B/W text (CGA,EGA,MCGA,VGA) = 01 40x25 16 color text (CGA,EGA,MCGA,VGA) = 02 80x25 16 shades of gray text (CGA,EGA,MCGA,VGA) = 03 80x25 16 color text (CGA,EGA,MCGA,VGA) (the link below gives the different BIOS functions and the parameters needed) http://www.htl-steyr.ac.at/~morg/pcinfo/hardware/interrupts/inte1at0.htm The more adventorus can use the Graphics modes! hs Here is a sample assembly program to call int 10H ;========================================= ; Basic program to change graphics modes ;========================================= mov ah,00 ;subfunction 0 mov al,18 ;select mode 18 (or 12h if prefer) int 10h ;call graphics interrupt ;==== Graphics code here ==== mov ah,00 ;again subfunc 0 mov al,03 ;text mode 3 int 10h ;call int For those wiishing more info look in http://www.csn.ul.ie/~darkstar/assembler/tut6.html