Browse Source

* removed warnings/notes

peter 25 years ago
parent
commit
66ea55dd7c

+ 74 - 87
packages/forms/fd2pascal.pp

@@ -2,7 +2,7 @@ Program fd2pascal;
 
 { ---------------------------------------------------------------------------
     Program to convert forms fdesign file to pascal code
-    Copyright (C) 1997	Michael Van Canneyt
+    Copyright (C) 1997  Michael Van Canneyt
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -25,7 +25,7 @@ Uses linux;
 
 Const RevString = '$Revision$';
   NrOptions = 4;
-  Options   : Array[0..NrOptions] Of String[20] = 
+  Options   : Array[0..NrOptions] Of String[20] =
               ('v','callback','main','altformat','compensate');
 
 Type
@@ -34,7 +34,7 @@ Type
              CPlcol,CPlabel,CPShortcut,CPresize,CPgravity,CPname,CPCallback,
              CPargument,
              CPinvalid);
-  { Properties of an object for which defaults must be set }           
+  { Properties of an object for which defaults must be set }
   AdjProps=(APClass,APBoxtype,ApColors,APAlignment,APSize,APLcol,APstyle,APgravity);
   { List of all object classes }
   ObjClasses=(FL_INVALID,FL_BUTTON, FL_LIGHTBUTTON,FL_ROUNDBUTTON, FL_ROUND3DBUTTON,
@@ -47,7 +47,7 @@ Type
   PreProps=(PPmagic,PPNrforms,PPUnitofMeasure,PPinvalid);
   { Properties of a form }
   FormProps=(FPName,FPWidth,FPHeight,FPnumObjs,FPinvalid);
-   
+
 Const
   { Names of all object properties }
   ContPropNames : Array[ContProps] of string[20] =
@@ -55,17 +55,17 @@ Const
              'lcol','label','shortcut','resize','gravity','name','callback',
              'argument',
              'invalid');
-  { Names of all object properties which must be checked.}           
+  { Names of all object properties which must be checked.}
   AdjPropsNames : Array[AdjProps] of string[20] =
           ('class','boxtype','colors','alignment','size','lcol','style','gravity');
-  { Names of all preamble properties }        
-  PrePropNames : Array[PreProps] of string[20] = 
+  { Names of all preamble properties }
+  PrePropNames : Array[PreProps] of string[20] =
             ('Magic','Number of forms','Unit of measure','Invalid');
-  { Names of all form properties }          
+  { Names of all form properties }
   FormPropNames : Array[FormProps] of string[20] =
             ('Name','Width','Height','Number of Objects','Invalid');
-  { Names of all object classes }          
-  FObjClassNames : Array[ObjClasses] of string[20]=          
+  { Names of all object classes }
+  FObjClassNames : Array[ObjClasses] of string[20]=
              ('FL_INVALID','BUTTON', 'LIGHTBUTTON','ROUNDBUTTON', 'ROUND3DBUTTON',
               'CHECKBUTTON', 'BITMAPBUTTON', 'PIXMAPBUTTON','BITMAP', 'PIXMAP',
               'BOX', 'TEXT', 'MENU', 'CHART', 'CHOICE', 'COUNTER', 'SLIDER', 'VALSLIDER', 'INPUT',
@@ -76,7 +76,7 @@ Const
  { Default properties. If empty a property is ignored.
    To force setting of a property, put 'FL_FORCE' as a string.
    Mind : Case sensitive }
-     
+
   DefProps : array[ObjClasses,AdjProps] of string[25] =
              (('FL_INVALID','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
               ('BUTTON','FL_UP_BOX','FL_COL1 FL_COL1','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
@@ -110,7 +110,7 @@ Const
               ('GLCANVAS','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
               ('IMAGECANVAS','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
               ('FOLDER','','','','','','FL_NORMAL_STYLE','FL_FORCE'));
-     
+
 Type
   { object data type }
   PControl = ^TControl;
@@ -118,14 +118,14 @@ Type
     Props : array[ContProps] of string;
     NextControl : PControl;
     end;
-    
+
   { Form data type}
   PFormRec = ^TFormRec;
   TFormRec = Record
     Name : String;
     Width,Height : String[5];
     Controls : PControl;
-    NextForm : PFormRec;    
+    NextForm : PFormRec;
     end;
   { Callback data type }
   PCBrec = ^TCBrec;
@@ -133,17 +133,15 @@ Type
     name : string;
     next : PCBrec;
     end;
-  { Property emitting procedures }  
+  { Property emitting procedures }
   EmitProp = Procedure (Data : PControl;ObjClass : ObjClasses);
-  
+
 Var
   OptionsSet : Array[1..NrOptions] Of Boolean;
   FileName : String;
   Infile,outfile : Text;
-  Magic : String[20];
   LineNr : Longint;
   NrForms,NrControls : Longint;
-  UnitOfMeasure : string;
   FormRoot : PFormRec;
   cbroot : pcbrec;
   { Default properties emitters }
@@ -152,7 +150,7 @@ Var
   ClassEmitters : Array[ObjClasses] of EmitProp;
 
 { ------------------------------------------------------------------------
-  Utilities Code 
+  Utilities Code
   ------------------------------------------------------------------------ }
 
 
@@ -165,7 +163,7 @@ begin
   IntToStr:=Temp;
 end;
 
-     
+
 Procedure EmitError (Const s : String);
 
 begin
@@ -181,7 +179,7 @@ end;
 
 
 { ------------------------------------------------------------------------
-  Option handling Code 
+  Option handling Code
   ------------------------------------------------------------------------ }
 
 
@@ -189,7 +187,7 @@ Procedure DoOptions;
 
 Var i,j,k : byte;
     os : string;
-    
+
 Procedure ShowVersion;
 
 begin
@@ -226,12 +224,12 @@ begin
       begin
       os:=copy(paramstr(i),2,length(paramstr(i))-1);
       k:=NrOptions+1;
-      for j:=0 to NrOptions do 
+      for j:=0 to NrOptions do
         if os=options[j] then k:=j;
       if k=NrOptions+1 then
         EmitError('Option not recognised : '+paramstr(i))
       else
-        if k=0 then ShowVersion else OptionsSet[k]:=True; 
+        if k=0 then ShowVersion else OptionsSet[k]:=True;
       end
     end; {for}
   if FileName='' then
@@ -242,7 +240,7 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code for reading the input file. 
+  Code for reading the input file.
   ------------------------------------------------------------------------ }
 
 
@@ -251,7 +249,7 @@ begin
   if pos('.fd',FileName)=0 then
     FileName:=FileName+'.fd';
   assign(infile,Filename);
-{$i-} 
+{$i-}
   reset (infile);
 {$i+}
   if ioresult<>0 then
@@ -259,7 +257,7 @@ begin
     EmitError('Can''t open : '+filename);
     halt(1);
     end;
-  LineNr:=0; 
+  LineNr:=0;
 end;
 
 Procedure CloseFile;
@@ -273,7 +271,7 @@ Procedure GetLine(Var S : String);
 begin
   inc(LineNr);
   Readln(infile,s);
-{$ifdef debug}  
+{$ifdef debug}
   writeln ('Reading line : ',linenr)
 {$endif}
 end;
@@ -281,17 +279,17 @@ end;
 Procedure ProcessPreAmbleLine (Const s: String);
 
 var key,value : string;
-    ppos : Longint; 
+    ppos : Longint;
     i,k : PreProps;
     code : Word;
-    
+
 begin
   if s='' then exit;
   ppos:=pos(':',s);
   if ppos=0 then
     exit;
   Key:=Copy(s,1,ppos-1);
-  Value:=Copy(s,ppos+2,length(s)-ppos-1); 
+  Value:=Copy(s,ppos+2,length(s)-ppos-1);
   k:=PPinvalid;
   for i:=PPmagic to PPinvalid do
     if key=PrePropNames[i] then k:=i;
@@ -299,17 +297,17 @@ begin
     EmitLineError('Unknown keyword : '+Key)
   else
     Case K of
-      PPMagic : Magic:=key;
+      PPMagic,
+      PPunitofmeasure: ;
       PPnrforms: begin
                val(value,NrForms,code);
                if code<>0 then EmitLineError('Invalid number of forms');
                end;
-      PPunitofmeasure: UnitOfMeasure:=Value;
-    end;           
+    end;
 end;
 
 { ------------------------------------------------------------------------
-  Code for reading preamble. 
+  Code for reading preamble.
   ------------------------------------------------------------------------ }
 
 
@@ -330,7 +328,7 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code for reading 1 object. 
+  Code for reading 1 object.
   ------------------------------------------------------------------------ }
 
 
@@ -338,15 +336,15 @@ Procedure ProcessControlLine (PC : PControl; const S : String);
 
 Var Key,Value : String;
     i,k : ContProps;
-    ppos,code : word;
-    
+    ppos : word;
+
 begin
   if s='' then exit;
   ppos:=pos(':',s);
   if ppos=0 then
     exit;
   Key:=Copy(s,1,ppos-1);
-  Value:=Copy(s,ppos+2,length(s)-ppos-1); 
+  Value:=Copy(s,ppos+2,length(s)-ppos-1);
   K:=CPInvalid;
   For i:=CPclass to CPInvalid do
     if ContPropNames[i]=Key then k:=i;
@@ -376,7 +374,7 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code for reading 1 form. 
+  Code for reading 1 form.
   ------------------------------------------------------------------------ }
 
 Procedure ProcessFormLine (PF : PFormRec; const S : String);
@@ -384,14 +382,14 @@ Procedure ProcessFormLine (PF : PFormRec; const S : String);
 Var Key,Value : String;
     i,k : FormProps;
     ppos,code : word;
-    
+
 begin
   if s='' then exit;
   ppos:=pos(':',s);
   if ppos=0 then
     exit;
   Key:=Copy(s,1,ppos-1);
-  Value:=Copy(s,ppos+2,length(s)-ppos-1); 
+  Value:=Copy(s,ppos+2,length(s)-ppos-1);
   K:=FPInvalid;
   For i:=FPName to FPInvalid do
     if FormPropNames[i]=Key then k:=i;
@@ -416,7 +414,7 @@ Procedure ProcessForm (PF : PFormRec);
 Var line : String;
     CurrentControl : PControl;
     I : Integer;
-    
+
 begin
 {$ifdef debug}
   writeln('Starting form');
@@ -455,16 +453,16 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code for reading the forms. 
+  Code for reading the forms.
   ------------------------------------------------------------------------ }
 
 
 Procedure DoForms;
 
-Var Line : String;
+Var
     i : Longint;
     CurrentForm: PformRec;
-    
+
 begin
   FormRoot:=Nil;
   if NrForms=0 then exit;
@@ -473,7 +471,7 @@ begin
   for i:=1 to nrforms do
      begin
      ProcessForm (CurrentForm);
-     If i=nrforms then 
+     If i=nrforms then
        Currentform^.NextForm:=nil
      else
        New(CurrentForm^.NextForm);
@@ -482,7 +480,7 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code for reading the postamble. 
+  Code for reading the postamble.
   ------------------------------------------------------------------------ }
 
 
@@ -492,7 +490,7 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code for writing the output file. 
+  Code for writing the output file.
   ------------------------------------------------------------------------ }
 
 Procedure OpenOutFile;
@@ -512,7 +510,7 @@ begin
 {$i-}
   rewrite(outfile);
 {$i+}
-  if ioresult<>0 then 
+  if ioresult<>0 then
     begin
     EmitError('Couldn''t open output file : '+filename);
     halt(1)
@@ -526,7 +524,7 @@ begin
 end;
 
 { ------------------------------------------------------------------------
-  Code to emit Header/variable/type declarations 
+  Code to emit Header/variable/type declarations
   ------------------------------------------------------------------------ }
 
 
@@ -540,7 +538,7 @@ begin
   writeln (OutFile,'    vdata : Pointer;');
   writeln (OutFile,'    ldata : Longint;');
   cp:=fp^.controls;
-  {Skip first control, is formbackground } 
+  {Skip first control, is formbackground }
   if cp<>nil then cp:=cp^.nextcontrol;
   while cp<>nil do
     begin
@@ -566,7 +564,7 @@ var cp : PControl;
 begin
   writeln (OutFile,'  ',fp^.name,' : PFL_FORM;');
   cp:=fp^.controls;
-  {Skip first control, is formbackground } 
+  {Skip first control, is formbackground }
   if cp<>nil then cp:=cp^.nextcontrol;
   while cp<>nil do
     begin
@@ -586,7 +584,6 @@ end;
 Procedure EmitHeader;
 
 var fp : PFormRec;
-    cp : PControl;
 
 begin
   if OptionsSet[2] then
@@ -618,12 +615,12 @@ begin
       EmitVar(fp); { Emit Variable declaration}
     fp:=fp^.nextform;
     end;
-  if not optionsset[2] then  
+  if not optionsset[2] then
     begin
     { No program, we must emit interface stuff }
     if not (optionsset[3]) then
       begin
-      { Emit normal interface declarations 
+      { Emit normal interface declarations
         -> functions }
       fp:=formroot;
       while fp<>nil do
@@ -635,7 +632,7 @@ begin
       end
     else
       begin
-      { Emit alternate interface declaration 
+      { Emit alternate interface declaration
         -> 1 function to create all forms.}
       writeln (OutFile,'Procedure Create_The_Forms;');
       end;
@@ -681,13 +678,10 @@ begin
     fp:=fp^.nextform;
     end;
   writeln (outFile,'End;');
-  writeln (OutFile); 
+  writeln (OutFile);
 end;
 
 Procedure EmitAlternateMain;
-
-var fp : PFormRec;
-
 begin
   { Alternate format, we just call creatallforms to create all forms}
   writeln (OutFile,'Create_The_Forms;');
@@ -709,16 +703,13 @@ begin
     writeln (OutFile,'  ',fp^.name,' :=Create_Form_',fp^.name,';');
     fp:=fp^.nextform;
     end;
-  { Show the first form }  
+  { Show the first form }
   writeln (OutFile,'  fl_show_form(',formroot^.name,'^.',Formroot^.name,
                    ',FL_PLACE_CENTER,FL_FULLBORDER,''',
                    FormRoot^.name,''');');
 end;
 
 Procedure EmitFooter;
-
-var fp : PFormRec;
-
 begin
   if OptionsSet[3] then {Alternate format.}
      EmitCreateForms;
@@ -778,7 +769,7 @@ end;
 
 Procedure EmitColors (cp : PControl;ObjClass : ObjClasses);
 
-var temp : string; 
+var temp : string;
 
 begin
   if cp^.props[cpcolors]<>defprops[objclass,APcolors] then
@@ -856,13 +847,12 @@ end;
 Procedure EmitObject(cp : PControl);
 
 var temp : string;
-    Corners : array[1..4] of string[5];
-    I : Longint;  
+    I : Longint;
     j,k : ObjClasses;
 
 begin
 with cp^ do
-  begin  
+  begin
   temp:=lowercase(props[CPclass]);
   delete(temp,1,3);
   if temp='begin_group' then
@@ -904,7 +894,7 @@ with cp^ do
   k:=FL_INVALID;
   for j:=FL_BUTTON to FL_FOLDER do
     if temp=DefProps[j,apclass] then k:=j;
-  if k<>FL_INVALID then 
+  if k<>FL_INVALID then
      begin
      { Emit defaults }
      EmitProperties (cp,k);
@@ -912,12 +902,12 @@ with cp^ do
      if Assigned(ClassEmitters[k]) then
        ClassEmitters[k] (cp,k);
      end;
-  { Assign to needed object. }  
+  { Assign to needed object. }
   if Optionsset[3] then
     Writeln (OutFile,'  ',props[cpname],':=obj;')
-  else   
+  else
     Writeln (OutFile,'  fdui^.',props[cpname],':=obj;');
-  end; 
+  end;
 end;
 
 { ------------------------------------------------------------------------
@@ -963,7 +953,7 @@ with fp^ do
                                       EmitString (cp^.props[CPname]),');');
   cp:=cp^.nextcontrol;
   { Emit all objects }
-  while cp<>nil do 
+  while cp<>nil do
     begin
     EmitObject(cp);
     cp:=cp^.nextcontrol;
@@ -983,18 +973,15 @@ with fp^ do
     end;
   writeln (OutFile,'end;');
   writeln (OutFile);
-  end;  
+  end;
 end;
 
 Procedure EmitForms;
 
 var
-
-fp : PformRec;
-cp : PControl;
-
+  fp : PformRec;
 begin
-  { Start emitting forms } 
+  { Start emitting forms }
   fp:=Formroot;
   while fp<>nil do
     begin
@@ -1012,7 +999,7 @@ Procedure CollectCallbacks;
 Var CurrentCb,CBwalk : PCBrec;
     fp : PformRec;
     cp : PControl;
-    
+
 begin
   CbRoot:=nil;
   CurrentCB:=cbroot;
@@ -1049,7 +1036,7 @@ begin
       cp:=cp^.nextcontrol;
       end;
     fp:=fp^.nextform;
-    end;        
+    end;
 end;
 
 Procedure EmitCallback (Const s : string);
@@ -1061,7 +1048,7 @@ begin
   writeln (OutFile,'  { Place your code here }');
   writeln (OutFile,'end;');
   writeln (OutFile);
-end; 
+end;
 
 Procedure EmitCallBacks;
 
@@ -1076,13 +1063,13 @@ begin
       begin
       EmitCallBack(cb^.Name);
       cb:=cb^.next;
-      end; 
+      end;
     end;
 end;
 
 
 { ------------------------------------------------------------------------
-  EmitterTable initialization Code 
+  EmitterTable initialization Code
   ------------------------------------------------------------------------ }
 
 Procedure EmitDummy (cp : PControl;ObjClass : ObjClasses);
@@ -1103,12 +1090,12 @@ begin
   EmitProcs[APsize]:=@EmitSize;
   EmitProcs[APStyle]:=@EmitStyle;
   EmitProcs[APgravity]:=@EmitGravity;
-  for i:=FL_INVALID to FL_FOLDER do 
+  for i:=FL_INVALID to FL_FOLDER do
     ClassEmitters[i]:=EmitProp(Nil);
 end;
 
 { ------------------------------------------------------------------------
-  Main program Code 
+  Main program Code
   ------------------------------------------------------------------------ }
 
 

File diff suppressed because it is too large
+ 344 - 342
packages/forms/forms.pp


+ 0 - 1
packages/ncurses/ncrt.inc

@@ -742,7 +742,6 @@ End;
 function  Keypressed : boolean;
 var
    l : longint;
-   fd : fdSet;
 Begin
    Keypressed := FALSE;
    nodelay(ActiveWn,bool(TRUE));

+ 1164 - 1221
packages/ncurses/ncurses.pp

@@ -24,43 +24,27 @@ interface
 {$linklib ncurses}
 {$linklib c}
 
-   { Manually Added types }
-   Type
-
-   Bool = byte;
-   PINTEGER = ^Longint;
-   PLongint = ^ longint;
-   PFILE = pointer;
-
-    const
-       NCURSES_VERSION_MAJOR = 3;
-       NCURSES_VERSION_MINOR = 0;
-       NCURSES_VERSION_PATCH = 980228;
-       NCURSES_VERSION = '3.0';
-    {
-    #ifdef NCURSES_NOMACROS
-    #define NCURSES_ATTR_T attr_t
-    #endif
-
-    #ifndef NCURSES_ATTR_T
-    #define NCURSES_ATTR_T int
-    #endif
-
-    #ifndef NCURSES_CONST
-    #define NCURSES_CONST
-    #endif
-    }
-
-    type
-
-       chtype = longint;
-       pchtype = pchar;
-
-    const
-       CXX_BUILTIN_BOOL = 1;
-    type
-
-       CXX_TYPE_OF_BOOL = char;
+{ Manually Added types }
+Type
+  Bool = byte;
+  PINTEGER = ^Longint;
+  PLongint = ^ longint;
+  PFILE = pointer;
+
+const
+  NCURSES_VERSION_MAJOR = 5;
+  NCURSES_VERSION_MINOR = 0;
+  NCURSES_VERSION_PATCH = 19991023;
+  NCURSES_VERSION = '5.0';
+
+type
+  chtype  = longint;
+  pchtype = pchar;
+
+const
+  CXX_BUILTIN_BOOL = 1;
+type
+  CXX_TYPE_OF_BOOL = char;
 
 Var
     COLORS : longint;external name 'COLORS';
@@ -218,223 +202,223 @@ Var
        COLS    : longint;external name 'COLS';
        TABSIZE : longint;external name 'TABSIZE';
 
-    Function define_key(_para1:pchar; _para2:longint):longint; cdecl;
-    Function keyok(_para1:longint; _para2:bool):longint; cdecl;
-    Function resizeterm(_para1:longint; _para2:longint):longint; cdecl;
-    Function use_default_colors:longint; cdecl;
-    Function wresize(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;
+    Function define_key(_para1:pchar; _para2:longint):longint; cdecl;external;
+    Function keyok(_para1:longint; _para2:bool):longint; cdecl;external;
+    Function resizeterm(_para1:longint; _para2:longint):longint; cdecl;external;
+    Function use_default_colors:longint; cdecl;external;
+    Function wresize(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
     {
     extern char ttytype[];
     }
-    Function baudrate:longint; cdecl;
-    Function beep:longint; cdecl;
-    Function can_change_color:bool; cdecl;
-    Function cbreak:longint; cdecl;
-    Function clearok(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    Function color_content(_para1:longint; _para2:plongint; _para3:plongint; _para4:plongint):longint; cdecl;
+    Function baudrate:longint; cdecl;external;
+    Function beep:longint; cdecl;external;
+    Function can_change_color:bool; cdecl;external;
+    Function cbreak:longint; cdecl;external;
+    Function clearok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    Function color_content(_para1:longint; _para2:plongint; _para3:plongint; _para4:plongint):longint; cdecl;external;
 
     Function copywin(_para1:pWINDOW; _para2:pWINDOW; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint; _para8:longint; _para9:longint):longint;cdecl;
-    Function curs_set(_para1:longint):longint; cdecl;
-    Function def_prog_mode:longint; cdecl;
-    Function def_shell_mode:longint; cdecl;
-    Function delay_output(_para1:longint):longint; cdecl;
-    procedure delscreen(_para1:pSCREEN);cdecl;
-    Function delwin(_para1:pWINDOW):longint; cdecl;
-
-    Function doupdate:longint; cdecl;
-
-    Function echo:longint; cdecl;
-    Function endwin:longint; cdecl;
-    Function erasechar:char; cdecl;
-    procedure filter;cdecl;
-    Function flash:longint; cdecl;
-    Function flushinp:longint; cdecl;
-
-    Function halfdelay(_para1:longint):longint; cdecl;
-    Function has_colors:bool; cdecl;
-    Function has_ic:longint; cdecl;
-    Function has_il:longint; cdecl;
-    procedure idcok(_para1:pWINDOW; _para2:bool);cdecl;
-    Function idlok(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    procedure immedok(_para1:pWINDOW; _para2:bool);cdecl;
-
-    Function init_color(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;
-    Function init_pair(_para1:longint; _para2:longint; _para3:longint):longint; cdecl;
-    Function intrflush(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    Function isendwin:longint; cdecl;
-    Function is_linetouched(_para1:pWINDOW; _para2:longint):longint; cdecl;
-    Function is_wintouched(_para1:pWINDOW):longint; cdecl;
-
-
-    Function keypad(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    Function killchar:char; cdecl;
-    Function leaveok(_para1:pWINDOW; _para2:bool):longint; cdecl;
-
-    Function meta(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    Function mvcur(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;
-    Function mvderwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;
+               _para6:longint; _para7:longint; _para8:longint; _para9:longint):longint;cdecl;external;
+    Function curs_set(_para1:longint):longint; cdecl;external;
+    Function def_prog_mode:longint; cdecl;external;
+    Function def_shell_mode:longint; cdecl;external;
+    Function delay_output(_para1:longint):longint; cdecl;external;
+    procedure delscreen(_para1:pSCREEN);cdecl;external;
+    Function delwin(_para1:pWINDOW):longint; cdecl;external;
+
+    Function doupdate:longint; cdecl;external;
+
+    Function echo:longint; cdecl;external;
+    Function endwin:longint; cdecl;external;
+    Function erasechar:char; cdecl;external;
+    procedure filter;cdecl;external;
+    Function flash:longint; cdecl;external;
+    Function flushinp:longint; cdecl;external;
+
+    Function halfdelay(_para1:longint):longint; cdecl;external;
+    Function has_colors:bool; cdecl;external;
+    Function has_ic:longint; cdecl;external;
+    Function has_il:longint; cdecl;external;
+    procedure idcok(_para1:pWINDOW; _para2:bool);cdecl;external;
+    Function idlok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    procedure immedok(_para1:pWINDOW; _para2:bool);cdecl;external;
+
+    Function init_color(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external;
+    Function init_pair(_para1:longint; _para2:longint; _para3:longint):longint; cdecl;external;
+    Function intrflush(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    Function isendwin:longint; cdecl;external;
+    Function is_linetouched(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
+    Function is_wintouched(_para1:pWINDOW):longint; cdecl;external;
+
+
+    Function keypad(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    Function killchar:char; cdecl;external;
+    Function leaveok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+
+    Function meta(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    Function mvcur(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external;
+    Function mvderwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
     {
     extern int mvprintw(int,int,const char  ,...)
                 GCC_PRINTFLIKE(3,4);
     extern int mvscanw(int,int,const char  ,...)
                 GCC_SCANFLIKE(3,4);
     }
-    Function mvwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;
+    Function mvwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
     {
     extern int mvwprintw(WINDOW ,int,int,const char  ,...)
                 GCC_PRINTFLIKE(4,5);
     extern int mvwscanw(WINDOW  ,int,int,const char  ,...)
                 GCC_SCANFLIKE(4,5);
     }
-    Function napms(_para1:longint):longint; cdecl;
+    Function napms(_para1:longint):longint; cdecl;external;
 
-    Function nl:longint; cdecl;
-    Function nocbreak:longint; cdecl;
-    Function nodelay(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    Function noecho:longint; cdecl;
-    Function nonl:longint; cdecl;
-    Function noqiflush:longint; cdecl;
-    Function noraw:longint; cdecl;
-    Function notimeout(_para1:pWINDOW; _para2:bool):longint; cdecl;
+    Function nl:longint; cdecl;external;
+    Function nocbreak:longint; cdecl;external;
+    Function nodelay(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    Function noecho:longint; cdecl;external;
+    Function nonl:longint; cdecl;external;
+    Function noqiflush:longint; cdecl;external;
+    Function noraw:longint; cdecl;external;
+    Function notimeout(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
 
-    Function overlay(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;
+    Function overlay(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;external;
 
-    Function overwrite(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;
-    Function pair_content(_para1:longint; _para2:plongint; _para3:plongint):longint; cdecl;
+    Function overwrite(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;external;
+    Function pair_content(_para1:longint; _para2:plongint; _para3:plongint):longint; cdecl;external;
 
-    Function pechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;
+    Function pechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
     Function pnoutrefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint):longint;cdecl;
+               _para6:longint; _para7:longint):longint;cdecl;external;
     Function prefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint):longint;cdecl;
+               _para6:longint; _para7:longint):longint;cdecl;external;
     {
     extern int printw(const char  ,...)
                 GCC_PRINTFLIKE(1,2);
     }
-    Function putp(_para1:pchar):longint; cdecl;
-    Function putwin(_para1:pWINDOW; _para2:pFILE):longint; cdecl;
-    Function qiflush:longint; cdecl;
-    Function raw:longint; cdecl;
-    Function resetty:longint; cdecl;
-    Function reset_prog_mode:longint; cdecl;
-    Function reset_shell_mode:longint; cdecl;
+    Function putp(_para1:pchar):longint; cdecl;external;
+    Function putwin(_para1:pWINDOW; _para2:pFILE):longint; cdecl;external;
+    Function qiflush:longint; cdecl;external;
+    Function raw:longint; cdecl;external;
+    Function resetty:longint; cdecl;external;
+    Function reset_prog_mode:longint; cdecl;external;
+    Function reset_shell_mode:longint; cdecl;external;
 {
-    Function ripoffline(_para1:longint; init:function (_para1:pWINDOW; _para2:longint):longint):longint; cdecl;
+    Function ripoffline(_para1:longint; init:function (_para1:pWINDOW; _para2:longint):longint):longint; cdecl;external;
 }
-    Function savetty:longint; cdecl;
+    Function savetty:longint; cdecl;external;
     {
     extern int scanw(const char  ,...)
                 GCC_SCANFLIKE(1,2);
     }
-    Function scr_dump(_para1:pchar):longint; cdecl;
+    Function scr_dump(_para1:pchar):longint; cdecl;external;
 
-    Function scr_init(_para1:pchar):longint; cdecl;
-    Function scrollok(_para1:pWINDOW; _para2:bool):longint; cdecl;
+    Function scr_init(_para1:pchar):longint; cdecl;external;
+    Function scrollok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
 
-    Function scr_restore(_para1:pchar):longint; cdecl;
+    Function scr_restore(_para1:pchar):longint; cdecl;external;
 
-    Function scr_set(_para1:pchar):longint; cdecl;
+    Function scr_set(_para1:pchar):longint; cdecl;external;
 
 
-    Function slk_attroff(_para1:attr_t):longint; cdecl;
+    Function slk_attroff(_para1:attr_t):longint; cdecl;external;
 
-    Function slk_attron(_para1:attr_t):longint; cdecl;
+    Function slk_attron(_para1:attr_t):longint; cdecl;external;
 
-    Function slk_attrset(_para1:attr_t):longint; cdecl;
-    Function slk_attr:attr_t; cdecl;
-    Function slk_clear:longint; cdecl;
-    Function slk_init(_para1:longint):longint; cdecl;
+    Function slk_attrset(_para1:attr_t):longint; cdecl;external;
+    Function slk_attr:attr_t; cdecl;external;
+    Function slk_clear:longint; cdecl;external;
+    Function slk_init(_para1:longint):longint; cdecl;external;
 
-    Function slk_noutrefresh:longint; cdecl;
-    Function slk_refresh:longint; cdecl;
-    Function slk_restore:longint; cdecl;
+    Function slk_noutrefresh:longint; cdecl;external;
+    Function slk_refresh:longint; cdecl;external;
+    Function slk_restore:longint; cdecl;external;
 
-    Function slk_set(_para1:longint; _para2:pchar; _para3:longint):longint; cdecl;
-    Function slk_touch:longint; cdecl;
-    Function start_color:longint; cdecl;
+    Function slk_set(_para1:longint; _para2:pchar; _para3:longint):longint; cdecl;external;
+    Function slk_touch:longint; cdecl;external;
+    Function start_color:longint; cdecl;external;
 
-    Function syncok(_para1:pWINDOW; _para2:bool):longint; cdecl;
-    Function termattrs:chtype; cdecl;
+    Function syncok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
+    Function termattrs:chtype; cdecl;external;
 
-    Function tigetflag(_para1:pchar):longint; cdecl;
+    Function tigetflag(_para1:pchar):longint; cdecl;external;
 
-    Function tigetnum(_para1:pchar):longint; cdecl;
+    Function tigetnum(_para1:pchar):longint; cdecl;external;
 
-    Function derwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;
-    Function dupwin (_para1:pWINDOW):PWINDOW; cdecl;
-    Function getwin (_para1:pFILE):PWINDOW; cdecl;
-    Function initscr :PWINDOW; cdecl;
-    Function keyname  (_para1:longint):pchar; cdecl;
-    Function longname :pchar; cdecl;
-    Function newpad (_para1:longint; _para2:longint):PWINDOW; cdecl;
-    Function newterm (_para1:pchar; _para2:pFILE; _para3:pFILE):PSCREEN; cdecl;
-    Function newwin  (_para1:longint; _para2:longint; _para3:longint; _para4:longint):PWINDOW; cdecl;
-    Function set_term (_para1:pSCREEN):PSCREEN; cdecl;
-    Function slk_label (_para1:longint):pchar; cdecl;
-    Function subpad (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;
-    Function subwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;
-    Function termname :pchar; cdecl;
-    Function tigetstr (_para1:pchar):pchar; cdecl;
-    Function typeahead(_para1:longint):longint; cdecl;
-    Function ungetch(_para1:longint):longint; cdecl;
-    procedure use_env(_para1:bool);cdecl;
-    Function vidattr(_para1:chtype):longint; cdecl;
+    Function derwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external;
+    Function dupwin (_para1:pWINDOW):PWINDOW; cdecl;external;
+    Function getwin (_para1:pFILE):PWINDOW; cdecl;external;
+    Function initscr :PWINDOW; cdecl;external;
+    Function keyname  (_para1:longint):pchar; cdecl;external;
+    Function longname :pchar; cdecl;external;
+    Function newpad (_para1:longint; _para2:longint):PWINDOW; cdecl;external;
+    Function newterm (_para1:pchar; _para2:pFILE; _para3:pFILE):PSCREEN; cdecl;external;
+    Function newwin  (_para1:longint; _para2:longint; _para3:longint; _para4:longint):PWINDOW; cdecl;external;
+    Function set_term (_para1:pSCREEN):PSCREEN; cdecl;external;
+    Function slk_label (_para1:longint):pchar; cdecl;external;
+    Function subpad (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external;
+    Function subwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external;
+    Function termname :pchar; cdecl;external;
+    Function tigetstr (_para1:pchar):pchar; cdecl;external;
+    Function typeahead(_para1:longint):longint; cdecl;external;
+    Function ungetch(_para1:longint):longint; cdecl;external;
+    procedure use_env(_para1:bool);cdecl;external;
+    Function vidattr(_para1:chtype):longint; cdecl;external;
 {
-    Function vidputs(_para1:chtype; _para2:function (_para1:longint):longint):longint; cdecl;
+    Function vidputs(_para1:chtype; _para2:function (_para1:longint):longint):longint; cdecl;external;
 }
 {
-    Function vwprintw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;
-    Function vwscanw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;
+    Function vwprintw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;external;
+    Function vwscanw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;external;
 }
-    Function waddch(_para1:pWINDOW; _para2:chtype):longint; cdecl;
-    Function waddchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;
-    Function waddnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;
-    Function wattr_on(_para1:pWINDOW; _para2:attr_t):longint; cdecl;
-    Function wattr_off(_para1:pWINDOW; _para2:attr_t):longint; cdecl;
-    Function wbkgd(_para1:pWINDOW; _para2:chtype):longint; cdecl;
-    procedure wbkgdset(_para1:pWINDOW; _para2:chtype);cdecl;
+    Function waddch(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
+    Function waddchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;external;
+    Function waddnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
+    Function wattr_on(_para1:pWINDOW; _para2:attr_t):longint; cdecl;external;
+    Function wattr_off(_para1:pWINDOW; _para2:attr_t):longint; cdecl;external;
+    Function wbkgd(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
+    procedure wbkgdset(_para1:pWINDOW; _para2:chtype);cdecl;external;
     Function wborder(_para1:pWINDOW; _para2:chtype; _para3:chtype; _para4:chtype; _para5:chtype;
-               _para6:chtype; _para7:chtype; _para8:chtype; _para9:chtype):longint;cdecl;
-    Function wchgat(_para1:pWINDOW; _para2:longint; _para3:attr_t; _para4:longint; _para5:pointer):longint; cdecl;
-    Function wclear(_para1:pWINDOW):longint; cdecl;
-    Function wclrtobot(_para1:pWINDOW):longint; cdecl;
-    Function wclrtoeol(_para1:pWINDOW):longint; cdecl;
-    procedure wcursyncup(_para1:pWINDOW);cdecl;
-    Function wdelch(_para1:pWINDOW):longint; cdecl;
-    Function wechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;
-    Function werase(_para1:pWINDOW):longint; cdecl;
-    Function wgetch(_para1:pWINDOW):longint; cdecl;
-    Function wgetnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;
-    Function whline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;
+               _para6:chtype; _para7:chtype; _para8:chtype; _para9:chtype):longint;cdecl;external;
+    Function wchgat(_para1:pWINDOW; _para2:longint; _para3:attr_t; _para4:longint; _para5:pointer):longint; cdecl;external;
+    Function wclear(_para1:pWINDOW):longint; cdecl;external;
+    Function wclrtobot(_para1:pWINDOW):longint; cdecl;external;
+    Function wclrtoeol(_para1:pWINDOW):longint; cdecl;external;
+    procedure wcursyncup(_para1:pWINDOW);cdecl;external;
+    Function wdelch(_para1:pWINDOW):longint; cdecl;external;
+    Function wechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
+    Function werase(_para1:pWINDOW):longint; cdecl;external;
+    Function wgetch(_para1:pWINDOW):longint; cdecl;external;
+    Function wgetnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
+    Function whline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;external;
     Function winch (win : PWindow) : longint;
-    Function winchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;
-    Function winnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;
-    Function winsch(_para1:pWINDOW; _para2:chtype):longint; cdecl;
-    Function winsdelln(_para1:pWINDOW; _para2:longint):longint; cdecl;
-    Function winsnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;
-    Function wmove(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;
-    Function wnoutrefresh(_para1:pWINDOW):longint; cdecl;
+    Function winchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;external;
+    Function winnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
+    Function winsch(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
+    Function winsdelln(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
+    Function winsnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
+    Function wmove(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
+    Function wnoutrefresh(_para1:pWINDOW):longint; cdecl;external;
     {
     extern int wprintw(WINDOW  ,const char  ,...)
                 GCC_PRINTFLIKE(2,3);
     }
-    Function wredrawln(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;
-    Function wrefresh(_para1:pWINDOW):longint; cdecl;
+    Function wredrawln(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
+    Function wrefresh(_para1:pWINDOW):longint; cdecl;external;
     {
     extern int wscanw(WINDOW  ,const char  ,...)
                 GCC_SCANFLIKE(2,3);
     }
-    Function wscrl(_para1:pWINDOW; _para2:longint):longint; cdecl;
-    Function wsetscrreg(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;
-    procedure wsyncdown(_para1:pWINDOW);cdecl;
-    procedure wsyncup(_para1:pWINDOW);cdecl;
-    Function wtimeout(_para1:pWINDOW; _para2:longint):longint; cdecl;
-    Function wtouchln(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;
-    Function wvline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;
+    Function wscrl(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
+    Function wsetscrreg(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
+    procedure wsyncdown(_para1:pWINDOW);cdecl;external;
+    procedure wsyncup(_para1:pWINDOW);cdecl;external;
+    Function wtimeout(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
+    Function wtouchln(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external;
+    Function wvline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;external;
     Function mvwchgat(_para1:pWINDOW; _para2:longint; _para3:longint;
                       _para4:longint; _para5:longint; _para6:longint;
-                      _para7:longint):longint;Cdecl;
+                      _para7:longint):longint;cdecl;external;
 
     const
            A_NORMAL = 0;
@@ -593,15 +577,12 @@ Var
     function attr_off(a : longint) : longint;
     function attr_on(a : longint) : longint;
     function attr_set(a : longint) : longint;
-    function box_set(w : pwindow;v,h : longint) : longint;
     function chgat(n,a,c,o : longint) : longint;
     function getbkgd(win : pwindow) : longint;
-    function hline_set(c,n : longint) : longint;
     function slk_attr_off(a : longint) : longint;
     function slk_attr_on(a : longint) : longint;
     function slk_attr_set(a : longint) : longint;
     function vid_attr(a : longint) : longint;
-    function vline_set(c,n : longint) : longint;
     function wattr_get(win : pwindow) : longint;
     {
        Pseudo-character tokens outside ASCII range.  The curses wgetch() function
@@ -707,1032 +688,994 @@ Var
        KEY_RESIZE = 410;        {0632}
        KEY_MAX = 511;           {0777}
 
-    function mcprint(_para1:pchar; _para2:longint):longint;cdecl;
-    function has_key(_para1:longint):longint;cdecl;
-
-  implementation
-
-const External_library='';
-
-    function define_key(_para1:pchar; _para2:longint):longint;Cdecl; External;
-    function keyok(_para1:longint; _para2:bool):longint;Cdecl; External;
-    function resizeterm(_para1:longint; _para2:longint):longint;Cdecl; External;
-    function use_default_colors:longint;Cdecl; External;
-    function wresize(_para1:pWINDOW; _para2:longint; _para3:longint):longint;Cdecl; External;
-    function baudrate:longint;Cdecl; External;
-    function beep:longint;Cdecl; External;
-    function can_change_color:bool;Cdecl; External;
-    function cbreak:longint;Cdecl; External;
-    function clearok(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function color_content(_para1:longint; _para2:plongint; _para3:plongint; _para4:plongint):longint;Cdecl; External;
-    function copywin(_para1:pWINDOW; _para2:pWINDOW; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint; _para8:longint; _para9:longint):longint;Cdecl; External;
-    function curs_set(_para1:longint):longint;Cdecl; External;
-    function def_prog_mode:longint;Cdecl; External;
-    function def_shell_mode:longint;Cdecl; External;
-    function delay_output(_para1:longint):longint;Cdecl; External;
-    procedure delscreen(_para1:pSCREEN);Cdecl; External;
-    function delwin(_para1:pWINDOW):longint;Cdecl; External;
-    function doupdate:longint;Cdecl; External;
-    function echo:longint;Cdecl; External;
-    function endwin:longint;Cdecl; External;
-    function erasechar:char;Cdecl; External;
-    procedure filter;Cdecl; External;
-    function flash:longint;Cdecl; External;
-    function flushinp:longint;Cdecl; External;
-    function halfdelay(_para1:longint):longint;Cdecl; External;
-    function has_colors:bool;Cdecl; External;
-    function has_ic:longint;Cdecl; External;
-    function has_il:longint;Cdecl; External;
-    procedure idcok(_para1:pWINDOW; _para2:bool);Cdecl; External;
-    function idlok(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    procedure immedok(_para1:pWINDOW; _para2:bool);Cdecl; External;
-    function init_color(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint;Cdecl; External;
-    function init_pair(_para1:longint; _para2:longint; _para3:longint):longint;Cdecl; External;
-    function intrflush(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function isendwin:longint;Cdecl; External;
-    function is_linetouched(_para1:pWINDOW; _para2:longint):longint;Cdecl; External;
-    function is_wintouched(_para1:pWINDOW):longint;Cdecl; External;
-    function keypad(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function killchar:char;Cdecl; External;
-    function leaveok(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function meta(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function mvcur(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint;Cdecl; External;
-    function mvderwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint;Cdecl; External;
-    function mvwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint;Cdecl; External;
-    function napms(_para1:longint):longint;Cdecl; External;
-    function nl:longint;Cdecl; External;
-    function nocbreak:longint;Cdecl; External;
-    function nodelay(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function noecho:longint;Cdecl; External;
-    function nonl:longint;Cdecl; External;
-    function noqiflush:longint;Cdecl; External;
-    function noraw:longint;Cdecl; External;
-    function notimeout(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function overlay(_para1:pWINDOW; _para2:pWINDOW):longint;Cdecl; External;
-    function overwrite(_para1:pWINDOW; _para2:pWINDOW):longint;Cdecl; External;
-    function pair_content(_para1:longint; _para2:plongint; _para3:plongint):longint;Cdecl; External;
-    function pechochar(_para1:pWINDOW; _para2:chtype):longint;Cdecl; External;
-    function pnoutrefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint):longint;Cdecl; External;
-    function prefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint):longint;Cdecl; External;
-    function putp(_para1:pchar):longint;Cdecl; External;
-    function putwin(_para1:pWINDOW; _para2:pFILE):longint;Cdecl; External;
-    function qiflush:longint;Cdecl; External;
-    function raw:longint;Cdecl; External;
-    function resetty:longint;Cdecl; External;
-    function reset_prog_mode:longint;Cdecl; External;
-    function reset_shell_mode:longint;Cdecl; External;
-{
-    function ripoffline(_para1:longint; init:function (_para1:pWINDOW; _para2:longint):longint):longint;Cdecl; External;
-}
-    function savetty:longint;Cdecl; External;
-    function scr_dump(_para1:pchar):longint;Cdecl; External;
-    function scr_init(_para1:pchar):longint;Cdecl; External;
-    function scrollok(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function scr_restore(_para1:pchar):longint;Cdecl; External;
-    function scr_set(_para1:pchar):longint;Cdecl; External;
-    function slk_attroff(_para1:attr_t):longint;Cdecl; External;
-    function slk_attron(_para1:attr_t):longint;Cdecl; External;
-    function slk_attrset(_para1:attr_t):longint;Cdecl; External;
-    function slk_attr:attr_t;Cdecl; External;
-    function slk_clear:longint;Cdecl; External;
-    function slk_init(_para1:longint):longint;Cdecl; External;
-    function slk_noutrefresh:longint;Cdecl; External;
-    function slk_refresh:longint;Cdecl; External;
-    function slk_restore:longint;Cdecl; External;
-    function slk_set(_para1:longint; _para2:pchar; _para3:longint):longint;Cdecl; External;
-    function slk_touch:longint;Cdecl; External;
-    function start_color:longint;Cdecl; External;
-    function syncok(_para1:pWINDOW; _para2:bool):longint;Cdecl; External;
-    function termattrs:chtype;Cdecl; External;
-    function tigetflag(_para1:pchar):longint;Cdecl; External;
-    function tigetnum(_para1:pchar):longint;Cdecl; External;
-    function typeahead(_para1:longint):longint;Cdecl; External;
-    function ungetch(_para1:longint):longint;Cdecl; External;
-    procedure use_env(_para1:bool);Cdecl; External;
-    function vidattr(_para1:chtype):longint;Cdecl; External;
-{
-    function vidputs(_para1:chtype; _para2:function (_para1:longint):longint):longint;Cdecl; External;
-    function vwprintw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint;Cdecl; External;
-    function vwscanw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint;Cdecl; External;
-}
-    function waddch(_para1:pWINDOW; _para2:chtype):longint;Cdecl; External;
-    function waddchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint;Cdecl; External;
-    function waddnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint;Cdecl; External;
-    function wattr_on(_para1:pWINDOW; _para2:attr_t):longint;Cdecl; External;
-    function wattr_off(_para1:pWINDOW; _para2:attr_t):longint;Cdecl; External;
-    function wbkgd(_para1:pWINDOW; _para2:chtype):longint;Cdecl; External;
-    procedure wbkgdset(_para1:pWINDOW; _para2:chtype);Cdecl; External;
-    function wborder(_para1:pWINDOW; _para2:chtype; _para3:chtype; _para4:chtype; _para5:chtype;
-               _para6:chtype; _para7:chtype; _para8:chtype; _para9:chtype):longint;Cdecl; External;
-    function wchgat(_para1:pWINDOW; _para2:longint; _para3:attr_t; _para4:longint; _para5:pointer):longint;Cdecl; External;
-    function wclear(_para1:pWINDOW):longint;Cdecl; External;
-    function wclrtobot(_para1:pWINDOW):longint;Cdecl; External;
-    function wclrtoeol(_para1:pWINDOW):longint;Cdecl; External;
-    procedure wcursyncup(_para1:pWINDOW);Cdecl; External;
-    function wdelch(_para1:pWINDOW):longint;Cdecl; External;
-    function wechochar(_para1:pWINDOW; _para2:chtype):longint;Cdecl; External;
-    function werase(_para1:pWINDOW):longint;Cdecl; External;
-    function wgetch(_para1:pWINDOW):longint;Cdecl; External;
-    function wgetnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint;Cdecl; External;
-    function whline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint;Cdecl; External;
-    function winchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint;Cdecl; External;
-    function winnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint;Cdecl; External;
-    function winsch(_para1:pWINDOW; _para2:chtype):longint;Cdecl; External;
-    function winsdelln(_para1:pWINDOW; _para2:longint):longint;Cdecl; External;
-    function winsnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint;Cdecl; External;
-    function wmove(_para1:pWINDOW; _para2:longint; _para3:longint):longint;Cdecl; External;
-    function wnoutrefresh(_para1:pWINDOW):longint;Cdecl; External;
-    function wredrawln(_para1:pWINDOW; _para2:longint; _para3:longint):longint;Cdecl; External;
-    function wrefresh(_para1:pWINDOW):longint;Cdecl; External;
-    function wscrl(_para1:pWINDOW; _para2:longint):longint;Cdecl; External;
-    function wsetscrreg(_para1:pWINDOW; _para2:longint; _para3:longint):longint;Cdecl; External;
-    procedure wsyncdown(_para1:pWINDOW);Cdecl; External;
-    procedure wsyncup(_para1:pWINDOW);Cdecl; External;
-    function wtimeout(_para1:pWINDOW; _para2:longint):longint;Cdecl; External;
-    function wtouchln(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint):longint;Cdecl; External;
-    function wvline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint;Cdecl; External;
-    function mvwchgat(_para1:pWINDOW; _para2:longint; _para3:longint;
-                      _para4:longint; _para5:longint; _para6:longint;
-                      _para7:longint):longint;Cdecl; External;
-
-    function wgetstr(w : pwindow;s : pchar) : longint;
-      begin
-         wgetstr:=wgetnstr(w,s,-(1));
-      end;
-    function getnstr(s : pchar;n : longint) : longint;
-      begin
-         getnstr:=wgetnstr(stdscr,s,n);
-      end;
-    function setterm(term : longint) : longint;
-      begin
-         {
-         setterm:=setupterm(term,1,plongint(0));
-         }
-      end;
-    function fixterm : longint;
-      begin
-         fixterm:=reset_prog_mode;
-      end;
-    function resetterm : longint;
-      begin
-         resetterm:=reset_shell_mode;
-      end;
-    function saveterm : longint;
-      begin
-         saveterm:=def_prog_mode;
-      end;
-    function crmode : longint;
-      begin
-         crmode:=cbreak;
-      end;
-    function nocrmode : longint;
-      begin
-         nocrmode:=nocbreak;
-      end;
-    procedure getsyx(var y,x : longint);
-      begin
-         getyx(stdscr,y,x);
-      end;
-    function getattrs(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>nil then
-           if_local1:=win^._attrs
-         else
-           if_local1:=A_NORMAL;
-         getattrs:=if_local1;
-      end;
-    function getcurx(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>nil then
-           if_local1:=win^._curx
-         else
-           if_local1:=ERR;
-         getcurx:=if_local1;
-      end;
-    function getcury(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=win^._cury
-         else
-           if_local1:=ERR;
-         getcury:=if_local1;
-      end;
-    function getbegx(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=win^._begx
-         else
-           if_local1:=ERR;
-         getbegx:=if_local1;
-      end;
-    function getbegy(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=win^._begy
-         else
-           if_local1:=ERR;
-         getbegy:=if_local1;
-      end;
-    function getmaxx(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=(win^._maxx) + 1
-         else
-           if_local1:=ERR;
-         getmaxx:=if_local1;
-      end;
-    function getmaxy(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=(win^._maxy) + 1
-         else
-           if_local1:=ERR;
-         getmaxy:=if_local1;
-      end;
-    function getparx(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=win^._parx
-         else
-           if_local1:=ERR;
-         getparx:=if_local1;
-      end;
-    function getpary(win : pwindow) : longint;
-      var
-         if_local1 : longint;
-
-      begin
-         if win<>Nil then
-           if_local1:=win^._pary
-         else
-           if_local1:=ERR;
-         getpary:=if_local1;
-      end;
-    function wstandout(win : pwindow) : longint;
-      begin
-         wstandout:=wattr_set(win,A_STANDOUT);
-      end;
-    function wstandend(win : pwindow) : longint;
-      begin
-         wstandend:=wattr_set(win,A_NORMAL);
-      end;
-    function wattron(win : pwindow;at : longint) : longint;
-      begin
-         wattron:=wattr_on(win,at);
-      end;
-    function wattroff(win : pwindow;at : longint) : longint;
-      begin
-         wattroff:=wattr_off(win,at);
-      end;
-    function wattrset(win : pwindow;at : longint) : longint;
-      begin
-         wattrset:=wattr_set(win,at);
-      end;
-    function scroll(win : pwindow) : longint;
-      begin
-         scroll:=wscrl(win,1);
-      end;
-    function touchwin(win : pwindow) : longint;
-      begin
-         touchwin:=wtouchln(win,0,getmaxy(win),1);
-      end;
-    function touchline(win : pwindow;s,c : longint) : longint;
-      begin
-         touchline:=wtouchln(win,s,c,1);
-      end;
-    function untouchwin(win : pwindow) : longint;
-      begin
-         untouchwin:=wtouchln(win,0,getmaxy(win),0);
-      end;
-    function box(win : pwindow;v,h : longint) : longint;
-      begin
-         box:=wborder(win,v,v,h,h,0,0,0,0);
-      end;
-    function border(ls,rs,ts,bs,tl,tr,bl,br : longint) : longint;
-      begin
-         border:=wborder(stdscr,ls,rs,ts,bs,tl,tr,bl,br);
-      end;
-    function hline(ch,n : longint) : longint;
-      begin
-         hline:=whline(stdscr,ch,n);
-      end;
-    function vline(ch,n : longint) : longint;
-      begin
-         vline:=wvline(stdscr,ch,n);
-      end;
-    function winstr(w : pwindow;s : pchar) : longint;
-      begin
-         winstr:=winnstr(w,s,-(1));
-      end;
-    function winchstr(w : pwindow;s : pchar) : longint;
-      begin
-        {
-         winchstr:=winchnstr(w,s,-1);
-         }
-      end;
-    function winsstr(w : pwindow;s : pchar) : longint;
-      begin
-         winsstr:=winsnstr(w,s,-(1));
-      end;
-    function redrawwin(w : pwindow) : longint;
-      begin
-         redrawwin:=wredrawln(w,0,(w^._maxy) + 1);
-      end;
-    function waddstr(win : pwindow;st : pchar) : longint;
-      begin
-         waddstr:=waddnstr(win,st,-1);
-      end;
-    function waddchstr(win : pwindow;st : pchar) : longint;
-      begin
-         waddchstr:=waddchnstr(win,st,-1);
-      end;
-    function addch(ch : longint) : longint;
-      begin
-         addch:=waddch(stdscr,ch);
-      end;
-    function addchnstr(st : pchar;n : longint) : longint;
-      begin
-         addchnstr:=waddchnstr(stdscr,st,n);
-      end;
-    function addchstr(st : pchar) : longint;
-      begin
-         addchstr:=waddchstr(stdscr,st);
-      end;
-    function addnstr(st : pchar;n : longint) : longint;
-      begin
-         addnstr:=waddnstr(stdscr,st,n);
-      end;
-    function addstr(st : pchar) : longint;
-      begin
-         addstr:=waddnstr(stdscr,st,-1);
-      end;
-    function attroff(at : longint) : longint;
-      begin
-         attroff:=wattroff(stdscr,at);
-      end;
-    function attron(at : longint) : longint;
-      begin
-         attron:=wattron(stdscr,at);
-      end;
-    function attrset(at : longint) : longint;
-      begin
-         attrset:=wattrset(stdscr,at);
-      end;
-    function bkgd(ch : longint) : longint;
-      begin
-         bkgd:=wbkgd(stdscr,ch);
-      end;
-    procedure bkgdset(ch : longint);
-      begin
-         wbkgdset(stdscr,ch);
-      end;
-    function clear : longint;
-      begin
-         clear:=wclear(stdscr);
-      end;
-    function clrtobot : longint;
-      begin
-         clrtobot:=wclrtobot(stdscr);
-      end;
-    function clrtoeol : longint;
-      begin
-         clrtoeol:=wclrtoeol(stdscr);
-      end;
-    function delch : longint;
-      begin
-         delch:=wdelch(stdscr);
-      end;
-    function deleteln : longint;
-      begin
-         deleteln:=winsdelln(stdscr,-1);
-      end;
-    function echochar(c : longint) : longint;
-      begin
-         echochar:=wechochar(stdscr,c);
-      end;
-    function erase : longint;
-      begin
-         erase:=werase(stdscr);
-      end;
-    function getch : longint;
-      begin
-         getch:=wgetch(stdscr);
-      end;
-    function getstr(st : pchar) : longint;
-      begin
-         getstr:=wgetstr(stdscr,st);
-      end;
-    function inch : longint;
-      begin
-         inch:=winch(stdscr);
-      end;
-    function inchnstr(s : pchar;n : longint) : longint;
-      begin
-         inchnstr:=winchnstr(stdscr,s,n);
-      end;
-    function inchstr(s : pchar) : longint;
-      begin
-         inchstr:=winchstr(stdscr,s);
-      end;
-    function innstr(s : pchar;n : longint) : longint;
-      begin
-         innstr:=winnstr(stdscr,s,n);
-      end;
-    function insch(c : longint) : longint;
-      begin
-         insch:=winsch(stdscr,c);
-      end;
-    function insdelln(n : longint) : longint;
-      begin
-         insdelln:=winsdelln(stdscr,n);
-      end;
-    function insertln : longint;
-      begin
-         insertln:=winsdelln(stdscr,1);
-      end;
-    function insnstr(s : pchar;n : longint) : longint;
-      begin
-         insnstr:=winsnstr(stdscr,s,n);
-      end;
-    function insstr(s : pchar) : longint;
-      begin
-         insstr:=winsstr(stdscr,s);
-      end;
-    function instr(s : pchar) : longint;
-      begin
-         instr:=winstr(stdscr,s);
-      end;
-    function move(y,x : longint) : longint;
-      begin
-         move:=wmove(stdscr,y,x);
-      end;
-    function refresh : longint;
-      begin
-         refresh:=wrefresh(stdscr);
-      end;
-    function scrl(n : longint) : longint;
-      begin
-         scrl:=wscrl(stdscr,n);
-      end;
-    function setscrreg(t,b : longint) : longint;
-      begin
-         setscrreg:=wsetscrreg(stdscr,t,b);
-      end;
-    function standend : longint;
-      begin
-         standend:=wstandend(stdscr);
-      end;
-    function standout : longint;
-      begin
-         standout:=wstandout(stdscr);
-      end;
-    function timeout(delay : longint) : longint;
-      begin
-         timeout:=wtimeout(stdscr,delay);
-      end;
-    function wdeleteln(win : pwindow) : longint;
-      begin
-         wdeleteln:=winsdelln(win,-1);
-      end;
-    function winsertln(win : pwindow) : longint;
-      begin
-         winsertln:=winsdelln(win,1);
-      end;
-    function mvaddch(y,x,ch : longint) : longint;
-      begin
-         mvaddch:=mvwaddch(stdscr,y,x,ch);
-      end;
-    function mvaddchnstr(y,x: longint;st : pchar;n : longint) : longint;
-      begin
-         mvaddchnstr:=mvwaddchnstr(stdscr,y,x,st,n);
-      end;
-    function mvaddchstr(y,x : longint;st : pchar) : longint;
-      begin
-         mvaddchstr:=mvwaddchstr(stdscr,y,x,st);
-      end;
-    function mvaddnstr(y,x: longint;st : pchar; n : longint) : longint;
-      begin
-         mvaddnstr:=mvwaddnstr(stdscr,y,x,st,n);
-      end;
-    function mvaddstr(y,x : longint;st : pchar) : longint;
-      begin
-         mvaddstr:=mvwaddstr(stdscr,y,x,st);
-      end;
-    function mvdelch(y,x : longint) : longint;
-      begin
-         mvdelch:=mvwdelch(stdscr,y,x);
-      end;
-    function mvgetch(y,x : longint) : longint;
-      begin
-         mvgetch:=mvwgetch(stdscr,y,x);
-      end;
-    function mvgetnstr(y,x : longint;st : pchar;n : longint) : longint;
-      begin
-         mvgetnstr:=mvwgetnstr(stdscr,y,x,st,n);
-      end;
-    function mvgetstr(y,x: longint;st : pchar) : longint;
-      begin
-         mvgetstr:=mvwgetstr(stdscr,y,x,st);
-      end;
-    function mvhline(y,x : longint;c : chtype;n : longint) : longint;
-      begin
-         mvhline:=mvwhline(stdscr,y,x,c,n);
-      end;
-    function mvinch(y,x : longint) : longint;
-      begin
-         mvinch:=mvwinch(stdscr,y,x);
-      end;
-    function mvinchnstr(y,x : longint;s : pchar;n : longint) : longint;
-      begin
-         mvinchnstr:=mvwinchnstr(stdscr,y,x,s,n);
-      end;
-    function mvinchstr(y,x : longint;s : pchar) : longint;
-      begin
-         mvinchstr:=mvwinchstr(stdscr,y,x,s);
-      end;
-    function mvinnstr(y,x : longint;s : pchar;n : longint) : longint;
-      begin
-         mvinnstr:=mvwinnstr(stdscr,y,x,s,n);
-      end;
-    function mvinsch(y,x: longint;c : chtype) : longint;
-      begin
-         mvinsch:=mvwinsch(stdscr,y,x,c);
-      end;
-    function mvinsnstr(y,x : longint;s : pchar;n : longint) : longint;
-      begin
-         mvinsnstr:=mvwinsnstr(stdscr,y,x,s,n);
-      end;
-    function mvinsstr(y,x : longint;s : pchar) : longint;
-      begin
-         mvinsstr:=mvwinsstr(stdscr,y,x,s);
-      end;
-    function mvinstr(y,x : longint;s : pchar) : longint;
-      begin
-         mvinstr:=mvwinstr(stdscr,y,x,s);
-      end;
-    function mvvline(y,x,c,n : longint) : longint;
-      begin
-         mvvline:=mvwvline(stdscr,y,x,c,n);
-      end;
-
-    function attr_get : longint;
-      begin
-         attr_get:=wattr_get(stdscr);
-      end;
-    function attr_off(a : longint) : longint;
-      begin
-         attr_off:=wattr_off(stdscr,a);
-      end;
-    function attr_on(a : longint) : longint;
-      begin
-         attr_on:=wattr_on(stdscr,a);
-      end;
-    function attr_set(a : longint) : longint;
-      begin
-         attr_set:=wattr_set(stdscr,a);
-      end;
-    function box_set(w : pwindow;v,h : longint) : longint;
-      begin
-        {
-         box_set:=wborder_set(w,v,v,h,h,0,0,0,9);
-         }
-      end;
-    function chgat(n,a,c,o : longint) : longint;
-      begin
-      {
-         chgat:=wchgat(stdscr,n,a,c,o);
-      }
-      end;
-    function getbkgd(win : pwindow) : longint;
-      begin
-         getbkgd:=win^._bkgd;
-      end;
-    function hline_set(c,n : longint) : longint;
-      begin
-      {
-         hline_set:=whline_set(stdscr,c,n);
-      }
-      end;
-    function mvchgat(y,x,n,a,c,o : longint) : longint;
-      begin
-         mvchgat:=mvwchgat(stdscr,y,x,n,a,c,o);
-      end;
-
-    function mvhline_set(y,x,c,n : longint) : longint;
-      begin
-      {
-         mvhline_set:=mvwhline_set(stdscr,y,x,c,n);
-       }
-      end;
-    function mvvline_set(y,x,c,n : longint) : longint;
-      begin
-      {
-         mvvline_set:=mvwvline_set(stdscr,y,x,c,n);
-      }
-      end;
-    function slk_attr_off(a : longint) : longint;
-      begin
-         slk_attr_off:=slk_attroff(a);
-      end;
-    function slk_attr_on(a : longint) : longint;
-      begin
-         slk_attr_on:=slk_attron(a);
-      end;
-    function slk_attr_set(a : longint) : longint;
-      begin
-         slk_attr_set:=slk_attrset(a);
-      end;
-    function vid_attr(a : longint) : longint;
-      begin
-         vid_attr:=vidattr(a);
-      end;
-    function vline_set(c,n : longint) : longint;
-      begin
-      {
-         vline_set:=vhline_set(stdscr,c,n);
-      }
-      end;
+    function mcprint(_para1:pchar; _para2:longint):longint;cdecl;external;
+    function has_key(_para1:longint):longint;cdecl;external;
+
+implementation
+
+function wgetstr(w : pwindow;s : pchar) : longint;
+begin
+  wgetstr:=wgetnstr(w,s,-(1));
+end;
+
+function getnstr(s : pchar;n : longint) : longint;
+begin
+  getnstr:=wgetnstr(stdscr,s,n);
+end;
+
+function setterm(term : longint) : longint;
+begin
+  {
+  setterm:=setupterm(term,1,plongint(0));
+  }
+  setterm:=0;
+end;
+
+function fixterm : longint;
+begin
+  fixterm:=reset_prog_mode;
+end;
+
+function resetterm : longint;
+begin
+  resetterm:=reset_shell_mode;
+end;
+
+function saveterm : longint;
+begin
+  saveterm:=def_prog_mode;
+end;
+
+function crmode : longint;
+begin
+  crmode:=cbreak;
+end;
+
+function nocrmode : longint;
+begin
+  nocrmode:=nocbreak;
+end;
+
+procedure getsyx(var y,x : longint);
+begin
+  getyx(stdscr,y,x);
+end;
+
+function getattrs(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>nil then
+    if_local1:=win^._attrs
+  else
+    if_local1:=A_NORMAL;
+  getattrs:=if_local1;
+end;
+
+function getcurx(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>nil then
+    if_local1:=win^._curx
+  else
+    if_local1:=ERR;
+  getcurx:=if_local1;
+end;
+
+function getcury(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>Nil then
+    if_local1:=win^._cury
+  else
+    if_local1:=ERR;
+  getcury:=if_local1;
+end;
+function getbegx(win : pwindow) : longint;
+var
+  if_local1 : longint;
+
+begin
+  if win<>Nil then
+    if_local1:=win^._begx
+  else
+    if_local1:=ERR;
+  getbegx:=if_local1;
+end;
+
+function getbegy(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>Nil then
+    if_local1:=win^._begy
+  else
+    if_local1:=ERR;
+  getbegy:=if_local1;
+end;
+
+function getmaxx(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>Nil then
+    if_local1:=(win^._maxx) + 1
+  else
+    if_local1:=ERR;
+  getmaxx:=if_local1;
+end;
+
+function getmaxy(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>Nil then
+    if_local1:=(win^._maxy) + 1
+  else
+    if_local1:=ERR;
+  getmaxy:=if_local1;
+end;
+
+function getparx(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>Nil then
+    if_local1:=win^._parx
+  else
+    if_local1:=ERR;
+  getparx:=if_local1;
+end;
+
+function getpary(win : pwindow) : longint;
+var
+  if_local1 : longint;
+begin
+  if win<>Nil then
+    if_local1:=win^._pary
+  else
+    if_local1:=ERR;
+  getpary:=if_local1;
+end;
+
+function wstandout(win : pwindow) : longint;
+begin
+  wstandout:=wattr_set(win,A_STANDOUT);
+end;
+
+function wstandend(win : pwindow) : longint;
+begin
+  wstandend:=wattr_set(win,A_NORMAL);
+end;
+
+function wattron(win : pwindow;at : longint) : longint;
+begin
+  wattron:=wattr_on(win,at);
+end;
+
+function wattroff(win : pwindow;at : longint) : longint;
+begin
+  wattroff:=wattr_off(win,at);
+end;
+
+function wattrset(win : pwindow;at : longint) : longint;
+begin
+  wattrset:=wattr_set(win,at);
+end;
+
+function scroll(win : pwindow) : longint;
+begin
+  scroll:=wscrl(win,1);
+end;
+
+function touchwin(win : pwindow) : longint;
+begin
+  touchwin:=wtouchln(win,0,getmaxy(win),1);
+end;
+
+function touchline(win : pwindow;s,c : longint) : longint;
+begin
+  touchline:=wtouchln(win,s,c,1);
+end;
+
+function untouchwin(win : pwindow) : longint;
+begin
+  untouchwin:=wtouchln(win,0,getmaxy(win),0);
+end;
+
+function box(win : pwindow;v,h : longint) : longint;
+begin
+  box:=wborder(win,v,v,h,h,0,0,0,0);
+end;
+
+function border(ls,rs,ts,bs,tl,tr,bl,br : longint) : longint;
+begin
+  border:=wborder(stdscr,ls,rs,ts,bs,tl,tr,bl,br);
+end;
+
+function hline(ch,n : longint) : longint;
+begin
+  hline:=whline(stdscr,ch,n);
+end;
+
+function vline(ch,n : longint) : longint;
+begin
+  vline:=wvline(stdscr,ch,n);
+end;
+
+function winstr(w : pwindow;s : pchar) : longint;
+begin
+  winstr:=winnstr(w,s,-(1));
+end;
+
+function winchstr(w : pwindow;s : pchar) : longint;
+begin
+  winchstr:=winchnstr(w,s,-1);
+end;
+
+function winsstr(w : pwindow;s : pchar) : longint;
+begin
+  winsstr:=winsnstr(w,s,-(1));
+end;
+
+function redrawwin(w : pwindow) : longint;
+begin
+  redrawwin:=wredrawln(w,0,(w^._maxy) + 1);
+end;
+
+function waddstr(win : pwindow;st : pchar) : longint;
+begin
+  waddstr:=waddnstr(win,st,-1);
+end;
+
+function waddchstr(win : pwindow;st : pchar) : longint;
+begin
+  waddchstr:=waddchnstr(win,st,-1);
+end;
+
+function addch(ch : longint) : longint;
+begin
+  addch:=waddch(stdscr,ch);
+end;
+
+function addchnstr(st : pchar;n : longint) : longint;
+begin
+  addchnstr:=waddchnstr(stdscr,st,n);
+end;
+
+function addchstr(st : pchar) : longint;
+begin
+  addchstr:=waddchstr(stdscr,st);
+end;
+
+function addnstr(st : pchar;n : longint) : longint;
+begin
+  addnstr:=waddnstr(stdscr,st,n);
+end;
+
+function addstr(st : pchar) : longint;
+begin
+  addstr:=waddnstr(stdscr,st,-1);
+end;
+
+function attroff(at : longint) : longint;
+begin
+  attroff:=wattroff(stdscr,at);
+end;
+
+function attron(at : longint) : longint;
+begin
+  attron:=wattron(stdscr,at);
+end;
+
+function attrset(at : longint) : longint;
+begin
+  attrset:=wattrset(stdscr,at);
+end;
+
+function bkgd(ch : longint) : longint;
+begin
+  bkgd:=wbkgd(stdscr,ch);
+end;
+
+procedure bkgdset(ch : longint);
+begin
+  wbkgdset(stdscr,ch);
+end;
+
+function clear : longint;
+begin
+  clear:=wclear(stdscr);
+end;
+
+function clrtobot : longint;
+begin
+  clrtobot:=wclrtobot(stdscr);
+end;
+
+function clrtoeol : longint;
+begin
+  clrtoeol:=wclrtoeol(stdscr);
+end;
+
+function delch : longint;
+begin
+  delch:=wdelch(stdscr);
+end;
+
+function deleteln : longint;
+begin
+  deleteln:=winsdelln(stdscr,-1);
+end;
+
+function echochar(c : longint) : longint;
+begin
+  echochar:=wechochar(stdscr,c);
+end;
+
+function erase : longint;
+begin
+  erase:=werase(stdscr);
+end;
+
+function getch : longint;
+begin
+  getch:=wgetch(stdscr);
+end;
+
+function getstr(st : pchar) : longint;
+begin
+  getstr:=wgetstr(stdscr,st);
+end;
+
+function inch : longint;
+begin
+  inch:=winch(stdscr);
+end;
+
+function inchnstr(s : pchar;n : longint) : longint;
+begin
+  inchnstr:=winchnstr(stdscr,s,n);
+end;
+
+function inchstr(s : pchar) : longint;
+begin
+  inchstr:=winchstr(stdscr,s);
+end;
+
+function innstr(s : pchar;n : longint) : longint;
+begin
+  innstr:=winnstr(stdscr,s,n);
+end;
+
+function insch(c : longint) : longint;
+begin
+  insch:=winsch(stdscr,c);
+end;
+
+function insdelln(n : longint) : longint;
+begin
+  insdelln:=winsdelln(stdscr,n);
+end;
+
+function insertln : longint;
+begin
+  insertln:=winsdelln(stdscr,1);
+end;
+
+function insnstr(s : pchar;n : longint) : longint;
+begin
+  insnstr:=winsnstr(stdscr,s,n);
+end;
+
+function insstr(s : pchar) : longint;
+begin
+  insstr:=winsstr(stdscr,s);
+end;
+
+function instr(s : pchar) : longint;
+begin
+  instr:=winstr(stdscr,s);
+end;
+
+function move(y,x : longint) : longint;
+begin
+  move:=wmove(stdscr,y,x);
+end;
+
+function refresh : longint;
+begin
+  refresh:=wrefresh(stdscr);
+end;
+
+function scrl(n : longint) : longint;
+begin
+  scrl:=wscrl(stdscr,n);
+end;
+
+function setscrreg(t,b : longint) : longint;
+begin
+  setscrreg:=wsetscrreg(stdscr,t,b);
+end;
+
+function standend : longint;
+begin
+  standend:=wstandend(stdscr);
+end;
+
+function standout : longint;
+begin
+  standout:=wstandout(stdscr);
+end;
+
+function timeout(delay : longint) : longint;
+begin
+  timeout:=wtimeout(stdscr,delay);
+end;
+
+function wdeleteln(win : pwindow) : longint;
+begin
+  wdeleteln:=winsdelln(win,-1);
+end;
+
+function winsertln(win : pwindow) : longint;
+begin
+  winsertln:=winsdelln(win,1);
+end;
+
+function mvaddch(y,x,ch : longint) : longint;
+begin
+  mvaddch:=mvwaddch(stdscr,y,x,ch);
+end;
+
+function mvaddchnstr(y,x: longint;st : pchar;n : longint) : longint;
+begin
+  mvaddchnstr:=mvwaddchnstr(stdscr,y,x,st,n);
+end;
+
+function mvaddchstr(y,x : longint;st : pchar) : longint;
+begin
+  mvaddchstr:=mvwaddchstr(stdscr,y,x,st);
+end;
+
+function mvaddnstr(y,x: longint;st : pchar; n : longint) : longint;
+begin
+  mvaddnstr:=mvwaddnstr(stdscr,y,x,st,n);
+end;
+
+function mvaddstr(y,x : longint;st : pchar) : longint;
+begin
+  mvaddstr:=mvwaddstr(stdscr,y,x,st);
+end;
+
+function mvdelch(y,x : longint) : longint;
+begin
+  mvdelch:=mvwdelch(stdscr,y,x);
+end;
+
+function mvgetch(y,x : longint) : longint;
+begin
+  mvgetch:=mvwgetch(stdscr,y,x);
+end;
+
+function mvgetnstr(y,x : longint;st : pchar;n : longint) : longint;
+begin
+  mvgetnstr:=mvwgetnstr(stdscr,y,x,st,n);
+end;
+
+function mvgetstr(y,x: longint;st : pchar) : longint;
+begin
+  mvgetstr:=mvwgetstr(stdscr,y,x,st);
+end;
+
+function mvhline(y,x : longint;c : chtype;n : longint) : longint;
+begin
+  mvhline:=mvwhline(stdscr,y,x,c,n);
+end;
+
+function mvinch(y,x : longint) : longint;
+begin
+  mvinch:=mvwinch(stdscr,y,x);
+end;
+
+function mvinchnstr(y,x : longint;s : pchar;n : longint) : longint;
+begin
+  mvinchnstr:=mvwinchnstr(stdscr,y,x,s,n);
+end;
+
+function mvinchstr(y,x : longint;s : pchar) : longint;
+begin
+  mvinchstr:=mvwinchstr(stdscr,y,x,s);
+end;
+
+function mvinnstr(y,x : longint;s : pchar;n : longint) : longint;
+begin
+  mvinnstr:=mvwinnstr(stdscr,y,x,s,n);
+end;
+
+function mvinsch(y,x: longint;c : chtype) : longint;
+begin
+  mvinsch:=mvwinsch(stdscr,y,x,c);
+end;
+
+function mvinsnstr(y,x : longint;s : pchar;n : longint) : longint;
+begin
+  mvinsnstr:=mvwinsnstr(stdscr,y,x,s,n);
+end;
+
+function mvinsstr(y,x : longint;s : pchar) : longint;
+begin
+  mvinsstr:=mvwinsstr(stdscr,y,x,s);
+end;
+
+function mvinstr(y,x : longint;s : pchar) : longint;
+begin
+  mvinstr:=mvwinstr(stdscr,y,x,s);
+end;
+
+function mvvline(y,x,c,n : longint) : longint;
+begin
+  mvvline:=mvwvline(stdscr,y,x,c,n);
+end;
+
+function attr_get : longint;
+begin
+  attr_get:=wattr_get(stdscr);
+end;
+
+function attr_off(a : longint) : longint;
+begin
+  attr_off:=wattr_off(stdscr,a);
+end;
+
+function attr_on(a : longint) : longint;
+begin
+  attr_on:=wattr_on(stdscr,a);
+end;
+
+function attr_set(a : longint) : longint;
+begin
+  attr_set:=wattr_set(stdscr,a);
+end;
+
+function chgat(n,a,c,o : longint) : longint;
+begin
+ chgat:=wchgat(stdscr,n,a,c,pointer(o));
+end;
+
+function getbkgd(win : pwindow) : longint;
+begin
+  getbkgd:=win^._bkgd;
+end;
+
+function mvchgat(y,x,n,a,c,o : longint) : longint;
+begin
+  mvchgat:=mvwchgat(stdscr,y,x,n,a,c,o);
+end;
+
+function slk_attr_off(a : longint) : longint;
+begin
+  slk_attr_off:=slk_attroff(a);
+end;
+
+function slk_attr_on(a : longint) : longint;
+begin
+  slk_attr_on:=slk_attron(a);
+end;
+
+function slk_attr_set(a : longint) : longint;
+begin
+  slk_attr_set:=slk_attrset(a);
+end;
+
+function vid_attr(a : longint) : longint;
+begin
+  vid_attr:=vidattr(a);
+end;
+
+function wattr_get(win : pwindow) : longint;
+begin
+  wattr_get:=win^._attrs;
+end;
+
+function KEY_F(n : longint) : longint;
+begin
+  KEY_F:=KEY_F0 + n;
+end;
+
+procedure getyx(win : pwindow; var y,x : longint);
+begin
+  X:=ERR;
+  Y:=ERR;
+  if Win<>Nil then
+   begin
+     Y:=win^._cury;
+     X:=Win^._curx;
+   end;
+end;
+
+procedure getbegyx(win : pwindow; var y,x : longint);
+begin
+  X:=ERR;
+  Y:=ERR;
+  if Win<>Nil then
+   begin
+     Y:=win^._begy;
+     X:=Win^._begx;
+   end;
+end;
+
+procedure getmaxyx(win : pwindow; var y,x : longint);
+begin
+  X:=ERR;
+  Y:=ERR;
+  if Win<>Nil then
+   begin
+     Y:=win^._maxy+1;
+     X:=Win^._maxx+1;
+   end;
+end;
+
+procedure getparyx(win : pwindow; var y,x : longint);
+begin
+  X:=ERR;
+  Y:=ERR;
+  if Win<>Nil then
+   begin
+     Y:=win^._pary;
+     X:=Win^._parx;
+   end;
+end;
+
+function winch (win : PWindow) : longint;
+begin
+  if win<>nil then
+   winch:=win^._line[win^._cury].text[Win^ ._curx]
+  else
+   winch:=0;
+end;
+
+function wattr_set(win : pwindow; at : longint) : longint;
+begin
+  If win<>nil then
+   begin
+     win^._attrs := at;
+     wattr_set:=at;
+   end
+  else
+   wattr_set:=0;
+end;
+
+procedure setsyx (y,x : longint);
+begin
+  stdscr^._cury := y;
+  stdscr^._curx := x;
+end;
+
+function  mvwaddch(win : pwindow;y,x : longint; ch : chtype) : longint;
+begin
+  if wmove(win,y,x) = ERR then
+   exit(ERR)
+  else
+   exit(waddch(win,ch))
+end;
+
+function  mvwaddchnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(waddchnstr(win,st,n))
+end;
+
+function  mvwaddchstr(win : pwindow;y,x : longint;st : pchar) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(waddchnstr(win,st,-1))
+end;
+
+function  mvwaddnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(waddnstr(win,st,n))
+end;
+
+function  mvwaddstr(win : pwindow;y,x : longint;st : pchar) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(waddnstr(win,st,-1))
+end;
+
+function  mvwdelch(win : pwindow;y,x : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(wdelch(win))
+end;
+
+function  mvwgetch(win : pwindow;y,x : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(wgetch(win))
+end;
+
+function  mvwgetnstr(win : pwindow;y,x : longint;st : pchar;n: longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(wgetnstr(win,st,n))
+end;
+
+function  mvwgetstr(win : pwindow;y,x : longint;st: pchar) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(wgetstr(win,st))
+end;
+
+function  mvwhline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(whline(win,c,n))
+end;
+
+function  mvwinch(win : pwindow;y,x : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winch(win))
+end;
+
+function  mvwinchnstr(win : pwindow;y,x : longint;s : pchar; n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winchnstr(win,s,n))
+end;
+
+function  mvwinchstr(win : pwindow;y,x : longint;s : pchar) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winchstr(win,s))
+end;
+
+function  mvwinnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winnstr(win,s,n))
+end;
+
+function  mvwinsch(win : pwindow;y,x : longint;c : chtype) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winsch(win,c))
+end;
+
+function  mvwinsnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winsnstr(win,s,n))
+end;
+
+function  mvwinsstr(win : pwindow;y,x : longint;s : pchar) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winsstr(win,s))
+end;
+
+function  mvwinstr(win : pwindow;y,x : longint;s : pchar) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(winstr(win,s))
+end;
+
+function  mvwvline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
+begin
+  if wmove (win,y,x)=ERR then
+   exit(ERR)
+  else
+   exit(wvline(win,c,n))
+end;
+
+function color_pair(n : longint): longint;
+begin
+  color_pair:=n shl 8;
+end;
+
+function ACS_ULCORNER : chtype;
+begin
+  ACS_ULCORNER:=acs_map['l'];
+end;
+
+function ACS_LLCORNER : chtype;
+begin
+  ACS_LLCORNER:=acs_map['m'];
+end;
+
+function ACS_URCORNER : chtype;
+begin
+  ACS_URCORNER:=acs_map['k'];
+end;
+
+function ACS_LRCORNER : chtype;
+begin
+  ACS_LRCORNER:=acs_map['j'];
+end;
+
+function ACS_LTEE : chtype;
+begin
+  ACS_LTEE:=acs_map['t'];
+end;
+
+function ACS_RTEE : chtype;
+begin
+  ACS_RTEE:=acs_map['u'];
+end;
+
+function ACS_BTEE : chtype;
+begin
+  ACS_BTEE:=acs_map['v'];
+end;
+
+function ACS_TTEE : chtype;
+begin
+  ACS_TTEE:=acs_map['w'];
+end;
+
+function ACS_HLINE : chtype;
+begin
+  ACS_HLINE:=acs_map['q'];
+end;
+
+function ACS_VLINE : chtype;
+begin
+  ACS_VLINE:=acs_map['x'];
+end;
+
+function ACS_PLUS : chtype;
+begin
+  ACS_PLUS:=acs_map['n'];
+end;
+
+function ACS_S1      : chtype;
+begin
+  ACS_S1    :=acs_map['o'];
+end;
+
+function ACS_S9      : chtype;
+begin
+  ACS_S9    :=acs_map['s'];
+end;
+
+function ACS_DIAMOND : chtype;
+begin
+  ACS_DIAMOND:=acs_map['`'];
+end;
+
+function ACS_CKBOARD : chtype;
+begin
+  ACS_CKBOARD:=acs_map['a'];
+end;
+
+function ACS_DEGREE : chtype;
+begin
+  ACS_DEGREE:=acs_map['f'];
+end;
+
+function ACS_PLMINUS : chtype;
+begin
+  ACS_PLMINUS:=acs_map['g'];
+end;
+
+function ACS_BULLET : chtype;
+begin
+  ACS_BULLET:=acs_map['~'];
+end;
+
+function ACS_LARROW : chtype;
+begin
+  ACS_LARROW:=acs_map[','];
+end;
+
+function ACS_RARROW : chtype;
+begin
+  ACS_RARROW:=acs_map['+'];
+end;
+
+function ACS_DARROW : chtype;
+begin
+  ACS_DARROW:=acs_map['.'];
+end;
+
+function ACS_UARROW : chtype;
+begin
+  ACS_UARROW:=acs_map['-'];
+end;
+
+function ACS_BOARD : chtype;
+begin
+  ACS_BOARD:=acs_map['h'];
+end;
+
+function ACS_LANTERN : chtype;
+begin
+  ACS_LANTERN:=acs_map['i'];
+end;
+
+function ACS_BLOCK : chtype;
+begin
+  ACS_BLOCK:=acs_map['0'];
+end;
+
+function ACS_S3      : chtype;
+begin
+  ACS_S3    :=acs_map['p'];
+end;
+
+function ACS_S7      : chtype;
+begin
+  ACS_S7    :=acs_map['r'];
+end;
+
+function ACS_LEQUAL : chtype;
+begin
+  ACS_LEQUAL:=acs_map['y'];
+end;
+
+function ACS_GEQUAL : chtype;
+begin
+  ACS_GEQUAL:=acs_map['z'];
+end;
+
+function ACS_PI      : chtype;
+begin
+  ACS_PI    :=acs_map['{'];
+end;
+
+function ACS_NEQUAL : chtype;
+begin
+  ACS_NEQUAL:=acs_map['|'];
+end;
+
+function ACS_STERLING : chtype;
+begin
+  ACS_STERLING:=acs_map['}'];
+end;
 
-    function wattr_get(win : pwindow) : longint;
-      begin
-         wattr_get:=win^._attrs;
-      end;
-    function KEY_F(n : longint) : longint;
-      begin
-         KEY_F:=KEY_F0 + n;
-      end;
-    function mcprint(_para1:pchar; _para2:longint):longint;Cdecl; External;
-    function has_key(_para1:longint):longint;Cdecl; External;
-    function derwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW;cdecl; external;
-    function dupwin (_para1:pWINDOW):PWINDOW;cdecl; external;
-    Function getwin (_para1:pFILE):PWINDOW;cdecl; external;
-    function initscr :PWINDOW;cdecl; external;
-    function keyname  (_para1:longint):pchar;cdecl; external;
-    function longname :pchar;cdecl; external;
-    function newpad (_para1:longint; _para2:longint):PWINDOW;cdecl; external;
-    Function newterm (_para1:pchar; _para2:pFILE; _para3:pFILE):PSCREEN;cdecl; external;
-    Function newwin  (_para1:longint; _para2:longint; _para3:longint; _para4:longint):PWINDOW;cdecl; external;
-    Function set_term (_para1:pSCREEN):PSCREEN;cdecl; external;
-    Function slk_label (_para1:longint):pchar;cdecl; external;
-    function subpad (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW;cdecl; external;
-    Function subwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW;cdecl; external;
-    Function termname :pchar;cdecl; external;
-    Function tigetstr (_para1:pchar):pchar;cdecl; external;
-
-    procedure getyx(win : pwindow; var y,x : longint);
-    begin
-      X:=ERR;
-      Y:=ERR;
-      if Win<>Nil then
-        begin
-        Y:=win^._cury;
-        X:=Win^._curx;
-        end;
-    end;
-    procedure getbegyx(win : pwindow; var y,x : longint);
-    begin
-      X:=ERR;
-      Y:=ERR;
-      if Win<>Nil then
-        begin
-        Y:=win^._begy;
-        X:=Win^._begx;
-        end;
-    end;
-    procedure getmaxyx(win : pwindow; var y,x : longint);
-    begin
-      X:=ERR;
-      Y:=ERR;
-      if Win<>Nil then
-        begin
-        Y:=win^._maxy+1;
-        X:=Win^._maxx+1;
-        end;
-    end;
-    procedure getparyx(win : pwindow; var y,x : longint);
-    begin
-      X:=ERR;
-      Y:=ERR;
-      if Win<>Nil then
-        begin
-        Y:=win^._pary;
-        X:=Win^._parx;
-        end;
-    end;
-    function winch (win : PWindow) : longint;
-    begin
-      if win<>nil then
-       winch:=win^._line[win^._cury].text[Win^ ._curx]
-      else
-        winch:=0;
-    end;
-    function wattr_set(win : pwindow; at : longint) : longint;
-    begin
-      If win<>nil then
-        begin
-        win^._attrs := at;
-        wattr_set:=at;
-        end
-      else
-        wattr_set:=0;
-    end;
-    procedure setsyx (y,x : longint);
-    begin
-      stdscr^._cury := y;
-      stdscr^._curx := x;
-    end;
-    function  mvwaddch(win : pwindow;y,x : longint; ch : chtype) : longint;
-    begin
-      if wmove(win,y,x) = ERR then
-        exit(ERR)
-      else
-        exit(waddch(win,ch))
-    end;
-    function  mvwaddchnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(waddchnstr(win,st,n))
-    end;
-    function  mvwaddchstr(win : pwindow;y,x : longint;st : pchar) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(waddchnstr(win,st,-1))
-    end;
-    function  mvwaddnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(waddnstr(win,st,n))
-    end;
-    function  mvwaddstr(win : pwindow;y,x : longint;st : pchar) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(waddnstr(win,st,-1))
-    end;
-    function  mvwdelch(win : pwindow;y,x : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(wdelch(win))
-    end;
-    function  mvwgetch(win : pwindow;y,x : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(wgetch(win))
-    end;
-    function  mvwgetnstr(win : pwindow;y,x : longint;st : pchar;n: longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(wgetnstr(win,st,n))
-    end;
-    function  mvwgetstr(win : pwindow;y,x : longint;st: pchar) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(wgetstr(win,st))
-    end;
-    function  mvwhline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(whline(win,c,n))
-    end;
-    function  mvwinch(win : pwindow;y,x : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winch(win))
-    end;
-    function  mvwinchnstr(win : pwindow;y,x : longint;s : pchar; n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winchnstr(win,s,n))
-    end;
-    function  mvwinchstr(win : pwindow;y,x : longint;s : pchar) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winchstr(win,s))
-    end;
-    function  mvwinnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winnstr(win,s,n))
-    end;
-    function  mvwinsch(win : pwindow;y,x : longint;c : chtype) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winsch(win,c))
-    end;
-    function  mvwinsnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winsnstr(win,s,n))
-    end;
-    function  mvwinsstr(win : pwindow;y,x : longint;s : pchar) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winsstr(win,s))
-    end;
-    function  mvwinstr(win : pwindow;y,x : longint;s : pchar) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(winstr(win,s))
-    end;
-    function  mvwvline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
-    begin
-      if wmove (win,y,x)=ERR then
-        exit(ERR)
-      else
-        exit(wvline(win,c,n))
-    end;
-     function color_pair(n : longint): longint;
-     begin
-       color_pair:=n shl 8;
-     end;
+end.
+{
+  $Log$
+  Revision 1.5  2000-02-27 14:40:41  peter
+    * removed warnings/notes
 
-    function ACS_ULCORNER : chtype;
-    begin
-      ACS_ULCORNER:=acs_map['l'];
-    end;
-    function ACS_LLCORNER : chtype;
-    begin
-      ACS_LLCORNER:=acs_map['m'];
-    end;
-    function ACS_URCORNER : chtype;
-    begin
-      ACS_URCORNER:=acs_map['k'];
-    end;
-    function ACS_LRCORNER : chtype;
-    begin
-      ACS_LRCORNER:=acs_map['j'];
-    end;
-    function ACS_LTEE : chtype;
-    begin
-      ACS_LTEE:=acs_map['t'];
-    end;
-    function ACS_RTEE : chtype;
-    begin
-      ACS_RTEE:=acs_map['u'];
-    end;
-    function ACS_BTEE : chtype;
-    begin
-      ACS_BTEE:=acs_map['v'];
-    end;
-    function ACS_TTEE : chtype;
-    begin
-      ACS_TTEE:=acs_map['w'];
-    end;
-    function ACS_HLINE : chtype;
-    begin
-      ACS_HLINE:=acs_map['q'];
-    end;
-    function ACS_VLINE : chtype;
-    begin
-      ACS_VLINE:=acs_map['x'];
-    end;
-    function ACS_PLUS : chtype;
-    begin
-      ACS_PLUS:=acs_map['n'];
-    end;
-    function ACS_S1      : chtype;
-    begin
-      ACS_S1    :=acs_map['o'];
-    end;
-    function ACS_S9      : chtype;
-    begin
-      ACS_S9    :=acs_map['s'];
-    end;
-    function ACS_DIAMOND : chtype;
-    begin
-      ACS_DIAMOND:=acs_map['`'];
-    end;
-    function ACS_CKBOARD : chtype;
-    begin
-      ACS_CKBOARD:=acs_map['a'];
-    end;
-    function ACS_DEGREE : chtype;
-    begin
-      ACS_DEGREE:=acs_map['f'];
-    end;
-    function ACS_PLMINUS : chtype;
-    begin
-      ACS_PLMINUS:=acs_map['g'];
-    end;
-    function ACS_BULLET : chtype;
-    begin
-      ACS_BULLET:=acs_map['~'];
-    end;
+}
 
-    function ACS_LARROW : chtype;
-    begin
-      ACS_LARROW:=acs_map[','];
-    end;
-    function ACS_RARROW : chtype;
-    begin
-      ACS_RARROW:=acs_map['+'];
-    end;
-    function ACS_DARROW : chtype;
-    begin
-      ACS_DARROW:=acs_map['.'];
-    end;
-    function ACS_UARROW : chtype;
-    begin
-      ACS_UARROW:=acs_map['-'];
-    end;
-    function ACS_BOARD : chtype;
-    begin
-      ACS_BOARD:=acs_map['h'];
-    end;
-    function ACS_LANTERN : chtype;
-    begin
-      ACS_LANTERN:=acs_map['i'];
-    end;
-    function ACS_BLOCK : chtype;
-    begin
-      ACS_BLOCK:=acs_map['0'];
-    end;
-    function ACS_S3      : chtype;
-    begin
-      ACS_S3    :=acs_map['p'];
-    end;
-    function ACS_S7      : chtype;
-    begin
-      ACS_S7    :=acs_map['r'];
-    end;
-    function ACS_LEQUAL : chtype;
-    begin
-      ACS_LEQUAL:=acs_map['y'];
-    end;
-    function ACS_GEQUAL : chtype;
-    begin
-      ACS_GEQUAL:=acs_map['z'];
-    end;
-    function ACS_PI      : chtype;
-    begin
-      ACS_PI    :=acs_map['{'];
-    end;
-    function ACS_NEQUAL : chtype;
-    begin
-      ACS_NEQUAL:=acs_map['|'];
-    end;
-    function ACS_STERLING : chtype;
-    begin
-      ACS_STERLING:=acs_map['}'];
-    end;
-end.

+ 6 - 6
rtl/inc/graph/fills.inc

@@ -46,7 +46,7 @@ type
 var
   nActive, nNextEdge : Longint;
   p0, p1 : pointtype;
-  endy, i, j, gap, x0, x1, y, nEdges : Longint;
+  i, j, gap, x0, x1, y, nEdges : Longint;
   ET : pedgearray;
   GET, AET : ppedgearray;
   t : pedge;
@@ -68,7 +68,7 @@ begin
   ptable := @polypoints;
 
  { check for getmem success }
-  
+
   nEdges := 0;
   for i := 0 to (numpoints-1) do begin
     p0 := ptable[i];
@@ -368,7 +368,6 @@ var
    Cont : Boolean;
    BackupColor : Word;
    x1, x2, prevy: smallint;
-   Index : smallint;
   Begin
     FillChar(DrawnList,sizeof(DrawnList),0);
     { init prevy }
@@ -387,8 +386,6 @@ var
       end;
     If (x<0) Or (y<0) Or
        (x>ViewWidth) Or (y>ViewHeight) then Exit;
-    { Some internal variables }
-    Index := 0;
     { Index of points to check  }
     Buffer.WordIndex:=0;
     PushPoint (x,y);
@@ -482,7 +479,10 @@ var
 
 {
 $Log$
-Revision 1.17  2000-02-12 13:39:19  jonas
+Revision 1.18  2000-02-27 14:41:25  peter
+  * removed warnings/notes
+
+Revision 1.17  2000/02/12 13:39:19  jonas
   + new, faster fillpoly from Thomas Schatzl
   * some logging commands in vesa.inc disabled
 

+ 26 - 73
rtl/inc/graph/graph.pp

@@ -2099,55 +2099,28 @@ end;
   Begin
     { All default hooks procedures }
 
-{$ifdef fpc}
     { required...}
-    DirectPutPixel := @DirectPutPixelDefault;
-    PutPixel := @PutPixelDefault;
-    GetPixel := @GetPixelDefault;
-    SetRGBPalette := @SetRGBPaletteDefault;
-    GetRGBPalette := @GetRGBPaletteDefault;
-
+    DirectPutPixel := {$ifdef fpc}@{$endif}DirectPutPixelDefault;
+    PutPixel := {$ifdef fpc}@{$endif}PutPixelDefault;
+    GetPixel := {$ifdef fpc}@{$endif}GetPixelDefault;
+    SetRGBPalette := {$ifdef fpc}@{$endif}SetRGBPaletteDefault;
+    GetRGBPalette := {$ifdef fpc}@{$endif}GetRGBPaletteDefault;
 
     { optional...}
-    SetActivePage := @SetActivePageDefault;
-    SetVisualPage := @SetVisualPageDefault;
-    ClearViewPort := @ClearViewportDefault;
-    PutImage := @DefaultPutImage;
-    GetImage := @DefaultGetImage;
-    ImageSize := @DefaultImageSize;
-{$else fpc}
-    { required...}
-    DirectPutPixel := DirectPutPixelDefault;
-    PutPixel := PutPixelDefault;
-    GetPixel := GetPixelDefault;
-    SetRGBPalette := SetRGBPaletteDefault;
-    GetRGBPalette := GetRGBPaletteDefault;
-
-    { optional...}
-    SetActivePage := SetActivePageDefault;
-    SetVisualPage := SetVisualPageDefault;
-    ClearViewPort := ClearViewportDefault;
-    PutImage := DefaultPutImage;
-    GetImage := DefaultGetImage;
-    ImageSize := DefaultImageSize;
-{$endif fpc}
+    SetActivePage := {$ifdef fpc}@{$endif}SetActivePageDefault;
+    SetVisualPage := {$ifdef fpc}@{$endif}SetVisualPageDefault;
+    ClearViewPort := {$ifdef fpc}@{$endif}ClearViewportDefault;
+    PutImage := {$ifdef fpc}@{$endif}DefaultPutImage;
+    GetImage := {$ifdef fpc}@{$endif}DefaultGetImage;
+    ImageSize := {$ifdef fpc}@{$endif}DefaultImageSize;
     GraphFreeMemPtr := nil;
     GraphGetMemPtr := nil;
-{$ifdef fpc}
-    GetScanLine := @GetScanLineDefault;
-    Line := @LineDefault;
-    InternalEllipse := @InternalEllipseDefault;
-    PatternLine := @PatternLineDefault;
-    HLine := @HLineDefault;
-    VLine := @VLineDefault;
-{$else fpc}
-    GetScanLine := GetScanLineDefault;
-    Line := LineDefault;
-    InternalEllipse := InternalEllipseDefault;
-    PatternLine := PatternLineDefault;
-    HLine := HLineDefault;
-    VLine := VLineDefault;
-{$endif fpc}
+    GetScanLine := {$ifdef fpc}@{$endif}GetScanLineDefault;
+    Line := {$ifdef fpc}@{$endif}LineDefault;
+    InternalEllipse := {$ifdef fpc}@{$endif}InternalEllipseDefault;
+    PatternLine := {$ifdef fpc}@{$endif}PatternLineDefault;
+    HLine := {$ifdef fpc}@{$endif}HLineDefault;
+    VLine := {$ifdef fpc}@{$endif}VLineDefault;
   end;
 
   Procedure InitVars;
@@ -2176,6 +2149,7 @@ end;
     PaletteSize := 0;
     DirectColor := FALSE;
     HardwarePages := 0;
+    if hardwarepages=0 then; { remove note }
     DefaultHooks;
   end;
 
@@ -2212,22 +2186,14 @@ end;
 {     OldWriteMode := CurrentWriteMode;
      if (LineInfo.Thickness = NormWidth) then
        CurrentWriteMode := NormalPut;}
-{$ifdef fpc}
-     InternalEllipse(X,Y,Radius,Radius,StAngle,Endangle,@DummyPatternLine);
-{$else fpc}
-     InternalEllipse(X,Y,Radius,Radius,StAngle,Endangle,DummyPatternLine);
-{$endif fpc}
+     InternalEllipse(X,Y,Radius,Radius,StAngle,Endangle,{$ifdef fpc}@{$endif}DummyPatternLine);
 {     CurrentWriteMode := OldWriteMode;}
    end;
 
 
  procedure Ellipse(X,Y : smallint; stAngle, EndAngle: word; XRadius,YRadius: word);
   Begin
-{$ifdef fpc}
-     InternalEllipse(X,Y,XRadius,YRadius,StAngle,Endangle,@DummyPatternLine);
-{$else fpc}
-     InternalEllipse(X,Y,XRadius,YRadius,StAngle,Endangle,DummyPatternLine);
-{$endif fpc}
+    InternalEllipse(X,Y,XRadius,YRadius,StAngle,Endangle,{$ifdef fpc}@{$endif}DummyPatternLine);
   end;
 
 
@@ -2278,11 +2244,7 @@ end;
              OldWriteMode := CurrentWriteMode;
              CurrentWriteMode := CopyPut;
        end;
-{$ifdef fpc}
-     InternalEllipse(X,Y,Radius,Radius,0,360,@DummyPatternLine);
-{$else fpc}
-     InternalEllipse(X,Y,Radius,Radius,0,360,DummyPatternLine);
-{$endif fpc}
+     InternalEllipse(X,Y,Radius,Radius,0,360,{$ifdef fpc}@{$endif}DummyPatternLine);
      if LineInfo.Thickness = Normwidth then
          CurrentWriteMode := OldWriteMode;
      { restore arc information }
@@ -2455,14 +2417,8 @@ end;
  end;
 
  procedure Sector(x, y: smallint; StAngle,EndAngle, XRadius, YRadius: Word);
-(*  var angle : graph_float;
-      writemode : word; *)
   begin
-{$ifdef fpc}
-     internalellipse(x,y,XRadius, YRadius, StAngle, EndAngle, @SectorPL);
-{$else fpc}
-     internalellipse(x,y,XRadius, YRadius, StAngle, EndAngle, SectorPL);
-{$endif fpc}
+     internalellipse(x,y,XRadius, YRadius, StAngle, EndAngle, {$ifdef fpc}@{$endif}SectorPL);
      Line(ArcCall.XStart, ArcCall.YStart, x,y);
      Line(x,y,ArcCall.Xend,ArcCall.YEnd);
   end;
@@ -3010,7 +2966,6 @@ begin
  ModeList := nil;
  SaveVideoState := nil;
  RestoreVideoState := nil;
- SavePtr := Nil;
 {$ifdef oldfont}
 {$ifdef go32v2}
  LoadFont8x8;
@@ -3045,14 +3000,12 @@ begin
  charmessagehandler:=nil;
 {$endif win32}
 end.
-
-
-SetGraphBufSize
-
-
 {
   $Log$
-  Revision 1.56  2000-02-06 01:47:15  sg
+  Revision 1.57  2000-02-27 14:41:25  peter
+    * removed warnings/notes
+
+  Revision 1.56  2000/02/06 01:47:15  sg
   * For Linux, "/" is added to the bgipath instead of "\" if this character
     isn't already there.
 

+ 4 - 11
rtl/inc/graph/gtext.inc

@@ -368,7 +368,6 @@
          cnt3,cnt4     : smallint;
          charsize      : word;
          WriteMode     : word;
-         CurX, CurY    : smallint;
          curX2, curY2, xpos2, ypos2, x2, y2: graph_float;
          oldvalues     : linesettingstype;
          chr           : char;
@@ -591,7 +590,6 @@
          Prefix: array[0..Prefix_Size-1] of char; {* File Prefix Holder         *}
          Length, Current: longint;
          FontData: Pchar;
-         Base: longint;
          hp  : pchar;
          i   : longint;
       begin
@@ -685,22 +683,14 @@
               move(hp[i+1],fonts[font].PHeader,sizeof(TFHeader));
               (* Read in the Header file  *)
               BlockRead(F,fonts[font].Header,Sizeof(THeader));
-              Base := FilePos(F);     {* Remember the address of table*}
-
               BlockRead(F,Fonts[font].Offsets[Fonts[font].Header.First_Char],Fonts[font].Header.Nr_chars*sizeof(smallint));
-
               {*        Load the character width table into memory.                     *}
-
-              base := filePos( f );
               BlockRead(F,Fonts[font].Widths[Fonts[font].Header.First_Char],Fonts[font].Header.Nr_chars*sizeof(byte));
-
               {*        Determine the length of the stroke database.                    *}
-
               current := FilePos( f );          {* Current file location        *}
               Seek( f, FileSize(F));            {* Go to the end of the file    *}
               length := FilePos( f );           {* Get the file length          *}
               Seek( f, current);        {* Restore old file location    *}
-
               {*        Load the stroke database.                                       *}
               { also allocate space for Null character   }
               Getmem(FontData, Length+1);          {* Create space for font data        *}
@@ -737,7 +727,10 @@
 
 {
 $Log$
-Revision 1.14  2000-01-07 16:41:38  daniel
+Revision 1.15  2000-02-27 14:41:25  peter
+  * removed warnings/notes
+
+Revision 1.14  2000/01/07 16:41:38  daniel
   * copyright 2000
 
 Revision 1.13  2000/01/07 16:32:26  daniel

+ 5 - 2
rtl/inc/real2str.inc

@@ -89,7 +89,7 @@ var
   procedure getIntPart(d: extended);
   var
     intPartStack: TIntPartStack;
-    count, stackPtr, endStackPtr, digits: longint;
+    stackPtr, endStackPtr, digits: longint;
     overflow: boolean;
   begin
     { position in the stack (gets increased before first write) }
@@ -376,7 +376,10 @@ end;
 
 {
   $Log$
-  Revision 1.24  2000-02-26 18:53:11  jonas
+  Revision 1.25  2000-02-27 14:41:25  peter
+    * removed warnings/notes
+
+  Revision 1.24  2000/02/26 18:53:11  jonas
     * fix for lost precision because sometimes the correction value was
       larger than the number to be corrected
     * incompatibility with TP's output fixed

+ 38 - 41
rtl/linux/ggigraph.inc

@@ -20,9 +20,6 @@
 const
   InternalDriverName = 'LinuxGGI';
 
-var
-  SavePtr: Pointer;
-
 { ---------------------------------------------------------------------
    GGI bindings  [(c) 1999 Sebastian Guenther]
   ---------------------------------------------------------------------}
@@ -433,43 +430,43 @@ begin
     end;
   end;
 end;
-
-
 {
-$Log$
-Revision 1.8  2000-01-07 16:41:40  daniel
-  * copyright 2000
-
-Revision 1.7  1999/12/20 11:22:38  peter
-  * modes moved to interface
-  * integer -> smallint
-
-Revision 1.6  1999/12/11 23:41:39  jonas
-  * changed definition of getscanlineproc to "getscanline(x1,x2,y:
-    smallint; var data);" so it can be used by getimage too
-  * changed getimage so it uses getscanline
-  * changed floodfill, getscanline16 and definitions in Linux
-    include files so they use this new format
-  + getscanlineVESA256 for 256 color VESA modes (banked)
-
-Revision 1.5  1999/11/12 02:13:01  carl
-  * Bugfix if getimage / putimage, format was not standard with FPC
-    graph.
-
-Revision 1.4  1999/11/10 10:54:24  sg
-* Fixed a LOT of bugs:
-* - Default mode should be determined by GGI now
-* - Colors are working (only the 16 standard VGA colors, though)
-
-Revision 1.3  1999/11/08 20:04:55  sg
-* GGI programs must link to libc, or ggiOpen will fail!
-* Changed max length of ModeNames string from 18 to 20 chars
-
-Revision 1.2  1999/11/08 00:08:43  michael
-* Fist working version of svgalib new graph unit
-* Initial implementation of ggi new graph unit
-
-Revision 1.1  1999/11/07 16:57:26  michael
-+ Start of common graph implementation
-
+  $Log$
+  Revision 1.9  2000-02-27 14:41:25  peter
+    * removed warnings/notes
+
+  Revision 1.8  2000/01/07 16:41:40  daniel
+    * copyright 2000
+
+  Revision 1.7  1999/12/20 11:22:38  peter
+    * modes moved to interface
+    * integer -> smallint
+
+  Revision 1.6  1999/12/11 23:41:39  jonas
+    * changed definition of getscanlineproc to "getscanline(x1,x2,y:
+      smallint; var data);" so it can be used by getimage too
+    * changed getimage so it uses getscanline
+    * changed floodfill, getscanline16 and definitions in Linux
+      include files so they use this new format
+    + getscanlineVESA256 for 256 color VESA modes (banked)
+
+  Revision 1.5  1999/11/12 02:13:01  carl
+    * Bugfix if getimage / putimage, format was not standard with FPC
+      graph.
+
+  Revision 1.4  1999/11/10 10:54:24  sg
+  * Fixed a LOT of bugs:
+  * - Default mode should be determined by GGI now
+  * - Colors are working (only the 16 standard VGA colors, though)
+
+  Revision 1.3  1999/11/08 20:04:55  sg
+  * GGI programs must link to libc, or ggiOpen will fail!
+  * Changed max length of ModeNames string from 18 to 20 chars
+
+  Revision 1.2  1999/11/08 00:08:43  michael
+  * Fist working version of svgalib new graph unit
+  * Initial implementation of ggi new graph unit
+
+  Revision 1.1  1999/11/07 16:57:26  michael
+  + Start of common graph implementation
 }

+ 20 - 22
rtl/linux/vgagraph.inc

@@ -17,8 +17,6 @@
   const
    InternalDriverName = 'LinuxVGA';
 
-  var SavePtr : Pointer;
-
 { ---------------------------------------------------------------------
    SVGA bindings.
 
@@ -161,12 +159,10 @@ var
   ---------------------------------------------------------------------}
 
 procedure libvga_savevideostate;
-
 begin
 end;
 
 procedure libvga_restorevideostate;
-
 begin
   vga_setmode(0);
 end;
@@ -449,26 +445,29 @@ end;
    end;
 
 {
-$Log$
-Revision 1.8  2000-02-06 11:26:45  sg
-* Fixed SetRGBPalette and GetRGBPalette (hopefully; not tested)
+  $Log$
+  Revision 1.9  2000-02-27 14:41:25  peter
+    * removed warnings/notes
 
-Revision 1.7  2000/02/06 01:48:55  sg
-* Fixed the default palette. libsvga works with a RGB range from 0-63, not
-  0-255!
-* PutPixel fixed (pixels didn't get drawn before)
+  Revision 1.8  2000/02/06 11:26:45  sg
+  * Fixed SetRGBPalette and GetRGBPalette (hopefully; not tested)
 
-Revision 1.6  2000/02/03 20:39:58  michael
-+ Version using only vgalib
+  Revision 1.7  2000/02/06 01:48:55  sg
+  * Fixed the default palette. libsvga works with a RGB range from 0-63, not
+    0-255!
+  * PutPixel fixed (pixels didn't get drawn before)
 
-Revision 1.5  2000/01/07 16:41:42  daniel
+  Revision 1.6  2000/02/03 20:39:58  michael
+  + Version using only vgalib
+
+  Revision 1.5  2000/01/07 16:41:42  daniel
   * copyright 2000
 
-Revision 1.4  1999/12/20 11:22:38  peter
+  Revision 1.4  1999/12/20 11:22:38  peter
   * modes moved to interface
   * integer -> smallint
 
-Revision 1.3  1999/12/11 23:41:39  jonas
+  Revision 1.3  1999/12/11 23:41:39  jonas
   * changed definition of getscanlineproc to "getscanline(x1,x2,y:
     integer; var data);" so it can be used by getimage too
   * changed getimage so it uses getscanline
@@ -476,11 +475,10 @@ Revision 1.3  1999/12/11 23:41:39  jonas
     include files so they use this new format
   + getscanlineVESA256 for 256 color VESA modes (banked)
 
-Revision 1.2  1999/11/08 00:08:43  michael
-* Fist working version of svgalib new graph unit
-* Initial implementation of ggi new graph unit
-
-Revision 1.1  1999/11/07 16:57:26  michael
-+ Start of common graph implementation
+  Revision 1.2  1999/11/08 00:08:43  michael
+  * Fist working version of svgalib new graph unit
+  * Initial implementation of ggi new graph unit
 
+  Revision 1.1  1999/11/07 16:57:26  michael
+  + Start of common graph implementation
 }

+ 5 - 2
rtl/objpas/dati.inc

@@ -87,7 +87,7 @@ end ;
 function MSecsToTimeStamp(MSecs: comp): TTimeStamp;
 begin
   result.Date := trunc(msecs / msecsperday);
-  msecs:= msecs - comp(result.date) * comp(msecsperday);
+  msecs:= comp(msecs-result.date*msecsperday);
   result.Time := Trunc(MSecs);
 end ;
 
@@ -680,7 +680,10 @@ end;
 
 {
   $Log$
-  Revision 1.20  2000-02-09 16:59:32  peter
+  Revision 1.21  2000-02-27 14:41:25  peter
+    * removed warnings/notes
+
+  Revision 1.20  2000/02/09 16:59:32  peter
     * truncated log
 
   Revision 1.19  1999/11/29 16:59:27  pierre

Some files were not shown because too many files changed in this diff