mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 03:06:34 +02:00
Add TargetEntry and TargetExit (merged)
This commit is contained in:
parent
bdb90bfda6
commit
dc1bba3973
@ -10,6 +10,15 @@ uses
|
|||||||
mouse,
|
mouse,
|
||||||
go32;
|
go32;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TargetEntry;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TargetExit;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
var
|
var
|
||||||
OldVideoBuf : PVideoBuf;
|
OldVideoBuf : PVideoBuf;
|
||||||
|
|
||||||
@ -293,10 +302,13 @@ end;
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.3 2000-08-16 18:51:57 peter
|
Revision 1.4 2000-10-04 11:53:31 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.3 2000/08/16 18:51:57 peter
|
||||||
* Fixes from Gabor (merged)
|
* Fixes from Gabor (merged)
|
||||||
|
|
||||||
Revision 1.2 2000/07/13 11:32:24 michael
|
Revision 1.2 2000/07/13 11:32:24 michael
|
||||||
+ removed logs
|
+ removed logs
|
||||||
|
|
||||||
}
|
}
|
@ -157,6 +157,8 @@ var
|
|||||||
implementation
|
implementation
|
||||||
|
|
||||||
{ Include system dependent part }
|
{ Include system dependent part }
|
||||||
|
{ must declare TargetEntry and TargetExit procedures
|
||||||
|
which can be empty of course }
|
||||||
{$i video.inc}
|
{$i video.inc}
|
||||||
|
|
||||||
procedure GetVideoMode(var Mode: TVideoMode);
|
procedure GetVideoMode(var Mode: TVideoMode);
|
||||||
@ -202,11 +204,13 @@ end;
|
|||||||
|
|
||||||
var
|
var
|
||||||
OldExitProc : pointer;
|
OldExitProc : pointer;
|
||||||
|
|
||||||
procedure UnRegisterVideoModes;{$ifdef PPC_BP}far;{$endif}
|
procedure UnRegisterVideoModes;{$ifdef PPC_BP}far;{$endif}
|
||||||
var
|
var
|
||||||
P: PVideoModeList;
|
P: PVideoModeList;
|
||||||
begin
|
begin
|
||||||
ExitProc:=OldExitProc;
|
ExitProc:=OldExitProc;
|
||||||
|
TargetExit;
|
||||||
while assigned(modes) do
|
while assigned(modes) do
|
||||||
begin
|
begin
|
||||||
p:=modes;
|
p:=modes;
|
||||||
@ -218,84 +222,19 @@ end;
|
|||||||
|
|
||||||
begin
|
begin
|
||||||
RegisterVideoModes;
|
RegisterVideoModes;
|
||||||
|
TargetEntry;
|
||||||
OldExitProc:=ExitProc;
|
OldExitProc:=ExitProc;
|
||||||
ExitProc:=@UnRegisterVideoModes;
|
ExitProc:=@UnRegisterVideoModes;
|
||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.2 2000-09-24 19:52:21 hajny
|
Revision 1.3 2000-10-04 11:53:31 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.2 2000/09/24 19:52:21 hajny
|
||||||
* max TVideoBuf size extended
|
* max TVideoBuf size extended
|
||||||
|
|
||||||
Revision 1.1 2000/07/13 06:29:39 michael
|
Revision 1.1 2000/07/13 06:29:39 michael
|
||||||
+ Initial import
|
+ Initial import
|
||||||
|
|
||||||
Revision 1.3 2000/02/29 11:43:16 pierre
|
|
||||||
Common renamed APIComm to avoid problems with free vision
|
|
||||||
|
|
||||||
Revision 1.2 2000/02/06 14:28:19 florian
|
|
||||||
* mouse support for vesa resolutions under go32v2, needs currently the define
|
|
||||||
custommouse
|
|
||||||
|
|
||||||
Revision 1.1 2000/01/06 01:20:31 peter
|
|
||||||
* moved out of packages/ back to topdir
|
|
||||||
|
|
||||||
Revision 1.1 1999/12/23 19:36:47 peter
|
|
||||||
* place unitfiles in target dirs
|
|
||||||
|
|
||||||
Revision 1.1 1999/11/24 23:36:37 peter
|
|
||||||
* moved to packages dir
|
|
||||||
|
|
||||||
Revision 1.9 1999/03/14 22:15:48 florian
|
|
||||||
* my last changes doesn't work correctly, fixed more
|
|
||||||
the screen height calculation works incorrect in 80x50 mode
|
|
||||||
|
|
||||||
Revision 1.8 1999/03/14 17:43:00 florian
|
|
||||||
+ 80x50 mode support added
|
|
||||||
* some bugs in VESA mode support removed
|
|
||||||
|
|
||||||
Revision 1.7 1999/03/13 17:34:01 florian
|
|
||||||
* again SetVideoMode fixed
|
|
||||||
|
|
||||||
Revision 1.6 1999/03/13 17:30:47 florian
|
|
||||||
* endless loop in SetVideoMode fixed
|
|
||||||
|
|
||||||
Revision 1.5 1999/02/22 12:46:15 peter
|
|
||||||
+ lowascii boolean if ascii < #32 is handled correctly
|
|
||||||
|
|
||||||
Revision 1.4 1998/12/23 22:41:08 peter
|
|
||||||
+ color consts
|
|
||||||
|
|
||||||
Revision 1.3 1998/12/11 00:13:18 peter
|
|
||||||
+ SetMouseXY
|
|
||||||
* use far for exitproc procedure
|
|
||||||
|
|
||||||
Revision 1.2 1998/12/08 10:09:56 peter
|
|
||||||
* unregister videomodes at the end
|
|
||||||
|
|
||||||
Revision 1.1 1998/12/04 12:48:24 peter
|
|
||||||
* moved some dirs
|
|
||||||
|
|
||||||
Revision 1.14 1998/11/01 20:29:10 peter
|
|
||||||
+ lockupdatescreen counter to not let updatescreen() update
|
|
||||||
|
|
||||||
Revision 1.13 1998/10/28 21:18:23 peter
|
|
||||||
* more fixes
|
|
||||||
|
|
||||||
Revision 1.12 1998/10/28 00:02:07 peter
|
|
||||||
+ mouse
|
|
||||||
+ video.clearscreen, video.videobufsize
|
|
||||||
|
|
||||||
Revision 1.11 1998/10/27 11:24:20 peter
|
|
||||||
* fixed the log
|
|
||||||
|
|
||||||
|
|
||||||
Date Version Who Comments
|
|
||||||
07/06/97 0.1 bazsi Initial implementation
|
|
||||||
Console mode (Linux) ready
|
|
||||||
07/28/97 0.2 bazsi Linux on foreign terminals ready
|
|
||||||
08/27/97 0.3 bazsi Noone else did it, so I did it: DOS support
|
|
||||||
(I had to boot DOS... ;-(
|
|
||||||
Mode-switching implemented
|
|
||||||
07/28/97 0.3.1 bazsi added support for terminfo. remote terminal
|
|
||||||
support is broken now
|
|
||||||
}
|
}
|
@ -23,10 +23,7 @@ Begin
|
|||||||
Tio.c_lflag:=Tio.c_lflag and (not (ECHO or ECHONL or ICANON or ISIG or IEXTEN));
|
Tio.c_lflag:=Tio.c_lflag and (not (ECHO or ECHONL or ICANON or ISIG or IEXTEN));
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
Tio := OldIO;
|
||||||
Tio.c_iflag:=OldIO.c_iflag;
|
|
||||||
Tio.c_lflag:=OldIO.c_lflag;
|
|
||||||
end;
|
|
||||||
TCSetAttr(1,TCSANOW,Tio);
|
TCSetAttr(1,TCSANOW,Tio);
|
||||||
End;
|
End;
|
||||||
|
|
||||||
@ -576,7 +573,10 @@ end;
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.2 2000-07-13 11:32:25 michael
|
Revision 1.3 2000-10-04 11:53:31 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.2 2000/07/13 11:32:25 michael
|
||||||
+ removed logs
|
+ removed logs
|
||||||
|
|
||||||
}
|
}
|
@ -300,7 +300,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
var
|
var
|
||||||
preInitVideoTio, postInitVideoTio: linux.termios;
|
InitialVideoTio, preInitVideoTio, postInitVideoTio: linux.termios;
|
||||||
inputRaw, outputRaw: boolean;
|
inputRaw, outputRaw: boolean;
|
||||||
|
|
||||||
procedure saveRawSettings(const tio: linux.termios);
|
procedure saveRawSettings(const tio: linux.termios);
|
||||||
@ -338,6 +338,16 @@ begin
|
|||||||
TCSetAttr(1,TCSANOW,tio);
|
TCSetAttr(1,TCSANOW,tio);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TargetEntry;
|
||||||
|
begin
|
||||||
|
TCGetAttr(1,InitialVideoTio);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TargetExit;
|
||||||
|
begin
|
||||||
|
TCSetAttr(1,TCSANOW,InitialVideoTio);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure prepareInitVideo;
|
procedure prepareInitVideo;
|
||||||
begin
|
begin
|
||||||
TCGetAttr(1,preInitVideoTio);
|
TCGetAttr(1,preInitVideoTio);
|
||||||
@ -437,7 +447,9 @@ begin
|
|||||||
SendEscapeSeqNdx(cursor_visible);
|
SendEscapeSeqNdx(cursor_visible);
|
||||||
SendEscapeSeqNdx(enter_ca_mode);
|
SendEscapeSeqNdx(enter_ca_mode);
|
||||||
SetCursorType(crUnderLine);
|
SetCursorType(crUnderLine);
|
||||||
end;
|
end
|
||||||
|
else if not assigned(cur_term) then
|
||||||
|
setupterm(nil, stdout, err);
|
||||||
ClearScreen;
|
ClearScreen;
|
||||||
{$ifdef logging}
|
{$ifdef logging}
|
||||||
assign(f,'video.log');
|
assign(f,'video.log');
|
||||||
@ -471,7 +483,11 @@ begin
|
|||||||
FreeMem(OldVideoBuf,VideoBufSize);
|
FreeMem(OldVideoBuf,VideoBufSize);
|
||||||
VideoBufSize:=0;
|
VideoBufSize:=0;
|
||||||
doneVideoDone;
|
doneVideoDone;
|
||||||
del_curterm(cur_term);
|
if assigned(cur_term) then
|
||||||
|
begin
|
||||||
|
del_curterm(cur_term);
|
||||||
|
cur_term := nil;
|
||||||
|
end;
|
||||||
{$ifdef logging}
|
{$ifdef logging}
|
||||||
close(f);
|
close(f);
|
||||||
{$endif logging}
|
{$endif logging}
|
||||||
@ -589,7 +605,10 @@ end;
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.4 2000-09-26 08:18:29 jonas
|
Revision 1.5 2000-10-04 11:53:31 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.4 2000/09/26 08:18:29 jonas
|
||||||
+ added preserving of rawness of terminal when going though
|
+ added preserving of rawness of terminal when going though
|
||||||
init/donevideo
|
init/donevideo
|
||||||
* del_term() is now called in donevideo
|
* del_term() is now called in donevideo
|
||||||
@ -609,5 +628,5 @@ end;
|
|||||||
|
|
||||||
Revision 1.2 2000/07/13 11:32:25 michael
|
Revision 1.2 2000/07/13 11:32:25 michael
|
||||||
+ removed logs
|
+ removed logs
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
System independent low-level video interface for OS/2
|
System independent low-level video interface for OS/2
|
||||||
|
|
||||||
$Id$
|
$Id$
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
uses
|
uses
|
||||||
@ -38,6 +39,14 @@ var OrigCurType: TVioCursorInfo;
|
|||||||
OrigCurCol: word;
|
OrigCurCol: word;
|
||||||
CellHeight: byte;
|
CellHeight: byte;
|
||||||
|
|
||||||
|
procedure TargetEntry;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TargetExit;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure CheckCellHeight;
|
procedure CheckCellHeight;
|
||||||
|
|
||||||
@ -365,7 +374,10 @@ end;
|
|||||||
{
|
{
|
||||||
|
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.4 2000-09-26 18:15:29 hajny
|
Revision 1.5 2000-10-04 11:53:31 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.4 2000/09/26 18:15:29 hajny
|
||||||
+ working with VP/2 already (not FPC yet)!video.inc
|
+ working with VP/2 already (not FPC yet)!video.inc
|
||||||
|
|
||||||
Revision 1.3 2000/09/24 19:53:03 hajny
|
Revision 1.3 2000/09/24 19:53:03 hajny
|
||||||
|
@ -7,6 +7,15 @@
|
|||||||
{ use a buffer, just like linux,go32v2 }
|
{ use a buffer, just like linux,go32v2 }
|
||||||
{$define use_buf}
|
{$define use_buf}
|
||||||
|
|
||||||
|
|
||||||
|
procedure TargetEntry;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TargetExit;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
var
|
var
|
||||||
VideoSeg : word;
|
VideoSeg : word;
|
||||||
OldVideoBuf : PVideoBuf;
|
OldVideoBuf : PVideoBuf;
|
||||||
@ -212,7 +221,10 @@ end;
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.2 2000-07-13 11:32:27 michael
|
Revision 1.3 2000-10-04 11:53:32 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.2 2000/07/13 11:32:27 michael
|
||||||
+ removed logs
|
+ removed logs
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -338,9 +338,21 @@ begin
|
|||||||
RegisterVideoMode(80, 25, True, @DefaultVideoModeSelector, $00000003);
|
RegisterVideoMode(80, 25, True, @DefaultVideoModeSelector, $00000003);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TargetEntry;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TargetExit;
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.2 2000-07-13 11:32:27 michael
|
Revision 1.3 2000-10-04 11:53:32 pierre
|
||||||
|
Add TargetEntry and TargetExit (merged)
|
||||||
|
|
||||||
|
Revision 1.2 2000/07/13 11:32:27 michael
|
||||||
+ removed logs
|
+ removed logs
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user