mcdonald@uxe.cso.uiuc.edu (11/18/89)
>The problem is that while Turbo's own screen package will take advantage of >whatever size screen you are using, DOS (not necessarily BIOS) is hard-coded >to work with only the first 25 lines of the screen. The problem here is that >to do anything else, DOS would have to automagically sense the current screen >size, which, since it uses BIOS calls, would tremendously slow down screen >I/O. OS/2 can solve this problem easily, because it *always* knows what size >the screen is. Why then, pray tell, if I execute the following program: cseg segment para public 'code' org 100h SETMOD proc far assume cs:cseg,ds:cseg mov ax,3 int 16 mov ah, 17 mov al, 18 mov bl, 0 int 16 mov ah, 18 mov al, 0 mov bl, 32 int 16 mov ah, 1 mov cx, 0407h int 16 int 020h SETMOD endp cseg ends end SETMOD does DOS then use 50 lines? If I do a "dir" I get 50 lines. IF I do a print screen, it prints all 50 lines. If I execute WordPerfect v5 it uses 50 lines. IF I use a broken program that expects 25 lines only, when I get out of it, DOS gets back to work in 50 lines properly? This is DOS 3.3 on a Model 80 or a Dell 310. Are you perhaps saying that command.com does not use DOS calls? Doug McDonald
toma@tekgvs.LABS.TEK.COM (Tom Almy) (11/22/89)
In article <110200032@uxe.cso.uiuc.edu> mcdonald@uxe.cso.uiuc.edu writes: > >>The problem is that while Turbo's own screen package will take advantage of >>whatever size screen you are using, DOS (not necessarily BIOS) is hard-coded >>to work with only the first 25 lines of the screen. The problem here is that >>to do anything else, DOS would have to automagically sense the current screen >>size [...] [sample program that puts VGA display in 50 line mode] >does DOS then use 50 lines? If I do a "dir" I get 50 lines. IF I >do a print screen, it prints all 50 lines. [...] DOS handles the extra screen size just fine since it has the BIOS do it. On the other hand ANSI.SYS, which comes with DOS, prior to DOS 4.0 would not handle these extended modes. I'm not sure (haven't tested) if ANSI.SYS will handle 132 column modes even with DOS 4.0. "Automagically sensing screen size" is real easy since the number of columns is in a known RAM location, and the number of rows for all but CGA and Monochrome is in another known RAM location. Tom Almy toma@tekgvs.labs.tek.com Standard Disclaimers Apply