🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.msdos.programmer
Article #255

Re: i/o routines and non-standard video modes

#255
From: Neuvo Niilo Anselmi
Date: Thu, 16 Nov 1989 14:49
41 lines
2767 bytes
In article <2092@calvin.EE.CORNELL.EDU> richard@calvin.spp.cornell.edu.UUCP (Richard Brittain) writes:
>
>Well, I hate it when people post replies that are not true, but working from
>my manual (like I said, I don't have the hardware to actually test this)
>BIOS data area:
>0040:004a	# characters per line 16 bit int
>0040:004c	# bytes required for 1 screenful of data - 16 bit int 
>0040:0084	# rows-1 - 1 byte
>0040:0085	# scan lines per character (i.e. height of cell) - 16 bit int
>If these are set correctly (The last two only for EGA/VGA/MCGA) then that
>should be all you need.
>Alternatively:
>BIOS INT 10H
>function AH=0F  Get mode - should return characters/line as well as mode.
>Hopefully the 'non-standard' modes also return this correctly
>function AX=1130 Get character generator info (EGA/VGA/MCGA) returns #rows-1
>and bytes/character in the 'alternate' font table.
>
Well I've got the hardware (IBM PS/60, normal colorVGA). After some
inetnsive hacking I was able to come up with a 80*50 color mode (with
Turbo Pascal 4.0). I set the bios data area, got the correct font,
used function AX=1130 to crosscheck that I had done everything
correctly, and changed the required VGA ports (not in that order).
The screen looked fine and bios *knew* that I used 80*50, but bios
won't use the bottom half (ie lines 26-50) of the screen. So here
I am with a fifty line screen, but the bios is so stupid that it
won't scroll more than 25 lines. If I set the number of chars per
line (0040:004a) to 160, bios writes to every other line (as it
should) allowing me to write on the bottom half of the screen, but
it won't scroll the bottom half. I tested this with bios commands
not Turbo's own write commands. Can someone help me with this?
I don't want to rewrite the bios. I sort of like the idea of
having DOS and 50 lines (now it's 50 lines, but dos uses only the
first 25).


-- 
      NN   NN  NN   NN  NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
    NNNN    N  NN    N  NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
  NNNNNN  N    NN  N    NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNN  NN   NN  NN   NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
Technical Details
Message-ID: <2544@alva.tut.fi>
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!mcsun!sunic!tut!nn86302
References: <2090@calvin.EE.CORNELL.EDU> <2980@einstein.ptolemy.arc.nasa.gov> <2092@calvin.EE.CORNELL.EDU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!mcsun!sunic!tut!nn86302
From: nn86302@tut.fi (Neuvo Niilo Anselmi)
Newsgroups: alt.msdos.programmer,comp.sys.ibm.pc
Subject: Re: i/o routines and non-standard video modes
Message-ID: <2544@alva.tut.fi>
Date: 16 Nov 89 14:49:19 GMT
References: <2090@calvin.EE.CORNELL.EDU> <2980@einstein.ptolemy.arc.nasa.gov> <2092@calvin.EE.CORNELL.EDU>
Reply-To: nn86302@alva.UUCP (Neuvo Niilo Anselmi)
Organization: Tampere University of Technology, Finland
Lines: 41