From: Wolfgang.Ehrhardt.PLEASE.REMOVE@munich.netsurf.de   
      
   On Thu, 9 Dec 2004 20:09:05 +0100, "Samuel Fleischer"   
    wrote:   
      
   Only two notes to your solution   
   [snip]   
   >PROCEDURE Variable; ASSEMBLER;   
   >{written by Pedt Scragg    
   >Code is released into the Public Domain - please leave   
   >this notice intact if redistributed}   
   >asm   
   > mov ah, 0fh   
   > call int10h   
   > xor dl, dl   
   > xor bh, bh   
   > push ax   
   > mov ax, 1130h   
   > call int10h   
   > pop ax   
   > or dl, dl   
   > jne @@3   
   > mov dl, 18h   
   >@@3:   
   > mov dh, dl   
   > xor ah, ah   
      
   the following two lines will set the Font8x8 flag in CRT terminology   
   if you have more than 25 lines. It should work if you use it with   
   textmode(LastModus).   
      
   > cmp dh, 18h   
   > jbe @@4   
   > inc ah   
   >@@4:   
   > mov LastModus, ax   
   >end;   
   >   
   >PROCEDURE SetStartMode;   
   >{found this on SWAG,   
   > by SWAG-support-team,   
   > sets the video mode}   
   >VAR   
   > Regs : Registers;   
   >BEGIN   
   > regs.ah := 0;   
   > regs.al := LastModus;   
   > Intr($10,regs);   
   >END;   
      
   Here you loose the information gathered by the former procedure,   
   ah=Font8x8 is discarded. If you need this and do not want to use   
   textmode you can use Int $10 Func $11 SubFunc $02 or $12   
      
   Wolfgang   
   --   
   In order to e-mail me a reply to this message, you will have   
   to remove PLEASE.REMOVE from the address shown in the header   
   or get it from http://home.netsurf.de/wolfgang.ehrhardt   
   (Free AES, CRC, Hash, and HMAC source for Pascal/Delphi)   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|