[comp.lang.pascal] TP Pageing in Textmode

kb36+@andrew.cmu.edu (Keith Douglas Beiter) (12/08/89)

Hello netlanders!

I am writing programs in TP5.0 for a friend that make up a help function
and help index for a program he is writing.  He is using Turbo Basic, so
he has to shell to my programs.  The only trouble is, he wants to have
the programs I am writing on video page 3 in text mode ($bb00).  Since I
am using the MEM command, I can easily send it to page 3.  The only
trouble is, I cannot find anything in Turbo Pascal that deals with
changing the visual/active page in text mode.  I can use the PAGE
command from  PC-Magazines powertools, but my friend doesn't want me to
use that because when he goes to sell his program, he could get in
trouble for selling a copy it the PAGE command (and he doesn't want to
have to pay royalties, or any garbage like that.)  Anyways, I want to
know if anyone knows how to change the visual/active page in textmode,
or if they know of any PD programs that will do it.

As everyone always says, any help will be appreciated.

Kevin (The computer thinks I'm a skitzo, i.e. Keith)

jrwsnsr@nmtsun.nmt.edu (Jonathan R. Watts) (12/08/89)

In article <21679@adm.BRL.MIL>, kb36+@andrew.cmu.edu (Keith Douglas Beiter) writes:
> I am writing programs in TP5.0 for a friend that make up a help function
> and help index for a program he is writing.  He is using Turbo Basic, so
> he has to shell to my programs.  The only trouble is, he wants to have
> the programs I am writing on video page 3 in text mode ($bb00).  Since I
> am using the MEM command, I can easily send it to page 3.  The only
> trouble is, I cannot find anything in Turbo Pascal that deals with
> changing the visual/active page in text mode.  I can use the PAGE
> command from  PC-Magazines powertools, but my friend doesn't want me to
> use that because when he goes to sell his program, he could get in
> trouble for selling a copy it the PAGE command (and he doesn't want to
> have to pay royalties, or any garbage like that.)  Anyways, I want to
> know if anyone knows how to change the visual/active page in textmode,
> or if they know of any PD programs that will do it.

If you can find it, get QWIK55, or better yet, QWIK50.  This is a set of
very fast Turbo Pascal screen functions, and it includes paging ability.
It is probably available on SIMTEL20 or on a local BBS (I got it from a local
BBS myself).  If you can't find the QWIK50 version, you'll have to register
the sucker so that you can a version that will work with TP5.0.  (It doesn't
come with all the source code, only the .TPU and SOME source.)  You don't
need to pay royalties or anything, but you should register it (which is $25).

  - Jonathan Watts

jrwsnsr@jupiter.nmt.edu

bb16@prism.gatech.EDU (Scott Bostater) (12/08/89)

In article <3625@nmtsun.nmt.edu> jrwsnsr@nmtsun.nmt.edu (Jonathan R. Watts) writes:
>
>If you can find it, get QWIK55, or better yet, QWIK50.  This is a set of
>very fast Turbo Pascal screen functions, and it includes paging ability.
>It is probably available on SIMTEL20 or on a local BBS (I got it from a local
>BBS myself).  If you can't find the QWIK50 version, you'll have to register
>the sucker so that you can a version that will work with TP5.0.  (It doesn't
>come with all the source code, only the .TPU and SOME source.)  You don't
>need to pay royalties or anything, but you should register it (which is $25).

The qwik55 library (as well as wndw55 and pull55) are available from 
Eagle Performance Software which maintains a BBS in Ft. Worth. the number is
214-539-9878. The code is shareware, but you must register to get the source 
code. It's well worth the cost of registration. If you can't find it on
simtel  drop me a line and I'll upload my copies after the end of the quarter
(I haven't been able to ftp since Thanksgiving! :-()

DISCLAIMER: I have no ties to Eagle Performance Software other than I happily
use their products...
-- 
Scott Bostater      GTRI/RAIL/RAD   (Ga. Tech)
"My soul finds rest in God alone; my salvation comes from Him"  -Ps 62.1
uucp:     ...!{allegra,amd,hplabs,ut-ngp}!gatech!prism!bb16
Internet: bb16@prism.gatech.edu

reino@cs.eur.nl (Reino de Boer) (12/11/89)

kb36+@andrew.cmu.edu (Keith Douglas Beiter) writes:

>I am writing programs in TP5.0 for a friend that make up a help function
>[...text deleted...] he wants to have
>the programs I am writing on video page 3 in text mode ($bb00).  Since I
>am using the MEM command, I can easily send it to page 3.  The only
>trouble is, I cannot find anything in Turbo Pascal that deals with
>changing the visual/active page in text mode.  I can use the PAGE

Try the following:
{ uses dos }
var   old_page : byte;

function get_page : byte;
  var cpu : registers;
  begin
	cpu.ah := $0F; { Function 0FH: Get Current Video Mode }
	intr( $10, cpu ); { ROM BIOS Interrupt 10H: Video Services }
	get_page := cpu.bh
  end;

procedure set_page( pageno : byte );
  var cpu : registers;
  begin
	with cpu do begin
	  ah := $05H; { Function 05H: Select Active Page }
	  al := pageno
	end;
	intr( $10, cpu ) { ROM BIOS Interrupt 10H: Video Services }
  end;

begin
  old_page := get_page;
  set_page( 3 );
  { your code }
  set_page( old_page );
  { return to BASIC }
end.

Hope this helps -- Reino

-- 
Reino R. A. de Boer
Erasmus University Rotterdam ( Informatica )
e-mail: reino@cs.eur.nl