Compare commits

..

1 Commits

Author SHA1 Message Date
R. Eric Wheeler a091ba40d4 Updated readme 2016-03-05 11:35:34 -08:00
149 changed files with 724 additions and 4576 deletions

8
.gitignore vendored
View File

@ -1,7 +1,5 @@
*.CFG *.CFG
*.CMD *.CMD
*.cmd
*.cfg
*.old *.old
*.OLD *.OLD
*.TXT *.TXT
@ -11,12 +9,6 @@
*.PPU *.PPU
*.VPI *.VPI
*.vpi *.vpi
*.bak
*.o
SOURCE/ELECOM/ SOURCE/ELECOM/
SOURCE/UNUSED/ SOURCE/UNUSED/
src/elecom/
src/unused/

6
.gitmodules vendored
View File

@ -1,6 +0,0 @@
[submodule "src/3rdparty/fundamentals"]
path = src/3rdparty/fundamentals
url = https://github.com/fundamentalslib/fundamentals5
[submodule "src/3rdparty/crypt/scrypt"]
path = src/3rdparty/crypt/scrypt
url = https://github.com/Tarsnap/scrypt.git

View File

@ -1 +1,7 @@
# Renegade BBS # Renegade BBS v1.20.1
This will be the last update to the DOS version of Renegade BBS.
Moving forward Renegade will only support Win32/64 and Linux/64.

View File

@ -36,7 +36,7 @@ USES
PROCEDURE ArcDeComp(VAR Ok: Boolean; AType: Byte; CONST FileName,FSpec: AStr); PROCEDURE ArcDeComp(VAR Ok: Boolean; AType: Byte; CONST FileName,FSpec: AStr);
VAR VAR
ResultCode: SmallInt; ResultCode: Integer;
BEGIN BEGIN
PurgeDir(TempDir+'ARC\',FALSE); PurgeDir(TempDir+'ARC\',FALSE);
ExecBatch(Ok,TempDir+'ARC\',General.ArcsPath+ ExecBatch(Ok,TempDir+'ARC\',General.ArcsPath+
@ -48,7 +48,7 @@ END;
PROCEDURE ArcComp(VAR Ok: Boolean; AType: Byte; CONST FileName,FSpec: AStr); PROCEDURE ArcComp(VAR Ok: Boolean; AType: Byte; CONST FileName,FSpec: AStr);
VAR VAR
ResultCode: SmallInt; ResultCode: Integer;
BEGIN BEGIN
IF (General.FileArcInfo[AType].ArcLine = '') THEN IF (General.FileArcInfo[AType].ArcLine = '') THEN
Ok := TRUE Ok := TRUE
@ -63,7 +63,7 @@ END;
PROCEDURE ArcComment(VAR Ok: Boolean; AType: Byte; CommentNum: Byte; CONST FileName: AStr); PROCEDURE ArcComment(VAR Ok: Boolean; AType: Byte; CommentNum: Byte; CONST FileName: AStr);
VAR VAR
TempStr: AStr; TempStr: AStr;
ResultCode: SmallInt; ResultCode: Integer;
SaveSwapShell: Boolean; SaveSwapShell: Boolean;
BEGIN BEGIN
IF (CommentNum > 0) AND (General.FileArcComment[CommentNum] <> '') THEN IF (CommentNum > 0) AND (General.FileArcComment[CommentNum] <> '') THEN
@ -80,7 +80,7 @@ END;
PROCEDURE ArcIntegrityTest(VAR Ok: Boolean; AType: Byte; CONST FileName: AStr); PROCEDURE ArcIntegrityTest(VAR Ok: Boolean; AType: Byte; CONST FileName: AStr);
VAR VAR
ResultCode: SmallInt; ResultCode: Integer;
BEGIN BEGIN
IF (General.FileArcInfo[AType].TestLine <> '') THEN IF (General.FileArcInfo[AType].TestLine <> '') THEN
ExecBatch(Ok,TempDir+'ARC\',General.ArcsPath+ ExecBatch(Ok,TempDir+'ARC\',General.ArcsPath+
@ -205,7 +205,7 @@ VAR
ES: ExtStr; ES: ExtStr;
Cmd: Char; Cmd: Char;
AType: Byte; AType: Byte;
ReturnCode: SmallInt; ReturnCode,
DirFileRecNum: Integer; DirFileRecNum: Integer;
DidSomething, DidSomething,
Ok: Boolean; Ok: Boolean;
@ -446,7 +446,7 @@ VAR
Cmd: Char; Cmd: Char;
AType, AType,
SaveNumBatchDLFiles: Byte; SaveNumBatchDLFiles: Byte;
ReturnCode: SmallInt; ReturnCode,
GotPts, GotPts,
SaveFileArea: Integer; SaveFileArea: Integer;
Ok, Ok,

View File

@ -52,7 +52,7 @@ VAR
NumFiles, NumFiles,
RecNum, RecNum,
Counter: Byte; Counter: Byte;
Junk: SmallInt; Junk,
RN, RN,
FArea, FArea,
SaveFileArea, SaveFileArea,

View File

@ -28,7 +28,7 @@ VAR
NS: NameStr; NS: NameStr;
ES: ExtStr; ES: ExtStr;
AType: Byte; AType: Byte;
ReturnCode: SmallInt; ReturnCode,
DirFileRecNum: Integer; DirFileRecNum: Integer;
OldSiz, OldSiz,
NewSiz: LongInt; NewSiz: LongInt;

View File

@ -144,7 +144,7 @@ BEGIN
Next := TRUE; Next := TRUE;
END; END;
PROCEDURE Details(OutR: OutRec; PROCEDURE Details(Out: OutRec;
VAR Level, VAR Level,
NumFiles: Integer; NumFiles: Integer;
VAR TotalCompSize, VAR TotalCompSize,
@ -155,12 +155,12 @@ VAR
DT: DateTime; DT: DateTime;
Ratio: LongInt; Ratio: LongInt;
BEGIN BEGIN
OutR.FileName := AllCaps(OutR.FileName); Out.FileName := AllCaps(Out.FileName);
DT.Day := OutR.Date AND $1f; {* Day = bits 4-0 *} DT.Day := Out.Date AND $1f; {* Day = bits 4-0 *}
DT.Month := (OutR.Date SHR 5) AND $0f; {* Month = bits 8-5 *} DT.Month := (Out.Date SHR 5) AND $0f; {* Month = bits 8-5 *}
DT.Year := ((OutR.Date SHR 9) AND $7f) + 80; {* Year = bits 15-9 *} DT.Year := ((Out.Date SHR 9) AND $7f) + 80; {* Year = bits 15-9 *}
DT.Min := (OutR.Time SHR 5) AND $3f; {* Minute = bits 10-5 *} DT.Min := (Out.Time SHR 5) AND $3f; {* Minute = bits 10-5 *}
DT.Hour := (OutR.Time SHR 11) AND $1f; {* Hour = bits 15-11 *} DT.Hour := (Out.Time SHR 11) AND $1f; {* Hour = bits 15-11 *}
IF (DT.Month > 12) THEN IF (DT.Month > 12) THEN
Dec(DT.Month,12); {* adjust for Month > 12 *} Dec(DT.Month,12); {* adjust for Month > 12 *}
@ -173,17 +173,17 @@ BEGIN
ConvertAmPm(DT.Hour,AmPm); ConvertAmPm(DT.Hour,AmPm);
IF (OutR.USize = 0) THEN IF (Out.USize = 0) THEN
Ratio := 0 Ratio := 0
ELSE {* Ratio is 0% for null-Length file *} ELSE {* Ratio is 0% for null-Length file *}
Ratio := (100 - ((OutR.CSize * 100) DIV OutR.USize)); Ratio := (100 - ((Out.CSize * 100) DIV Out.USize));
IF (Ratio > 99) THEN IF (Ratio > 99) THEN
Ratio := 99; Ratio := 99;
OutP := '^4'+PadRightStr(FormatNumber(OutR.USize),13)+ OutP := '^4'+PadRightStr(FormatNumber(Out.USize),13)+
' '+PadRightStr(FormatNumber(OutR.CSize),13)+ ' '+PadRightStr(FormatNumber(Out.CSize),13)+
' '+PadRightInt(Ratio,2)+'%'+ ' '+PadRightInt(Ratio,2)+'%'+
' ^9'+MethodType[OutR.Method]+ ' ^9'+MethodType[Out.Method]+
' ^7'+ZeroPad(IntToStr(DT.Month))+ ' ^7'+ZeroPad(IntToStr(DT.Month))+
'/'+ZeroPad(IntToStr(DT.Day))+ '/'+ZeroPad(IntToStr(DT.Day))+
'/'+ZeroPad(IntToStr(DT.Year))+ '/'+ZeroPad(IntToStr(DT.Year))+
@ -194,16 +194,16 @@ BEGIN
IF (Level > 0) THEN IF (Level > 0) THEN
OutP := OutP + PadRightStr('',Level); {* spaces for dirs (ARC only)*} OutP := OutP + PadRightStr('',Level); {* spaces for dirs (ARC only)*}
OutP := OutP + OutR.FileName; OutP := OutP + Out.FileName;
PrintACR(OutP); PrintACR(OutP);
IF (OutR.Method = 0) THEN IF (Out.Method = 0) THEN
Inc(Level) {* bump dir Level (ARC only) *} Inc(Level) {* bump dir Level (ARC only) *}
ELSE ELSE
BEGIN BEGIN
Inc(TotalCompSize,OutR.CSize); {* adjust accumulators and counter *} Inc(TotalCompSize,Out.CSize); {* adjust accumulators and counter *}
Inc(TotalUnCompSize,OutR.USize); Inc(TotalUnCompSize,Out.USize);
Inc(NumFiles); Inc(NumFiles);
END; END;
END; END;
@ -659,7 +659,7 @@ VAR
LZH_H_Length, LZH_H_Length,
Counter, Counter,
ArcType: Byte; ArcType: Byte;
RCode: SmallInt; RCode,
FileType, FileType,
Level, Level,
NumFiles: Integer; NumFiles: Integer;

View File

@ -1,4 +1,3 @@
{$MODE TP}
{$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-} {$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-}
@ -248,7 +247,7 @@ BEGIN
BBSList.Port := 23; BBSList.Port := 23;
MPL(SizeOf(BBSList.Port) - 1); MPL(SizeOf(BBSList.Port) - 1);
InputWordWoc(Question,BBSList.Port,[NumbersOnly,InterActiveEdit],1,65535); InputLongIntWoc(Question,BBSList.Port,[NumbersOnly,InterActiveEdit],1,65535);
END END
ELSE IF WhichOne = 'LOCATION' THEN ELSE IF WhichOne = 'LOCATION' THEN
BEGIN BEGIN
@ -312,7 +311,7 @@ BEGIN
BEGIN BEGIN
MPL(SizeOf(BBSList.SDG) - 1); MPL(SizeOf(BBSList.SDG) - 1);
InputWordWoc(Question,BBSList.SDG,[NumbersOnly,InterActiveEdit],1,65535); InputLongIntWoc(Question,BBSList.SDG,[NumbersOnly,InterActiveEdit],1,65535);
{Abort := (BBSList.xE = '');} {Abort := (BBSList.xE = '');}
END END
ELSE IF WhichOne = 'SDH' THEN ELSE IF WhichOne = 'SDH' THEN

View File

@ -54,7 +54,7 @@ VAR
General.ProtPath := StartDir+'\PROT\'; General.ProtPath := StartDir+'\PROT\';
General.ArcsPath := StartDir+'\ARCS\'; General.ArcsPath := StartDir+'\ARCS\';
General.FileAttachPath := StartDir+'\FATTACH\'; General.FileAttachPath := StartDir+'\FATTACH\';
General.MultPath := StartDir+'\STRING\'; General.lMultPath := StartDir+'\STRING\';
SaveGeneral(FALSE); SaveGeneral(FALSE);
Assign(BootFile,StartDir+'1STBOOT'); Assign(BootFile,StartDir+'1STBOOT');
Erase(BootFile); Erase(BootFile);
@ -92,7 +92,7 @@ VAR
END; END;
8 : BEGIN 8 : BEGIN
DirDesc := 'STRING'; DirDesc := 'STRING';
DirName := General.MultPath; DirName := General.lMultPath;
END; END;
END; END;
IF (NOT ExistDir(DirName)) THEN IF (NOT ExistDir(DirName)) THEN
@ -125,7 +125,7 @@ VAR
5 : General.LogsPath := S2; 5 : General.LogsPath := S2;
6 : General.ArcsPath := S2; 6 : General.ArcsPath := S2;
7 : General.ProtPath := S2; 7 : General.ProtPath := S2;
8 : General.MultPath := S2; 8 : General.lMultPath := S2;
END END
ELSE ELSE
BEGIN BEGIN
@ -825,7 +825,7 @@ BEGIN
Mov T_Al,Al Mov T_Al,Al
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
T_Al := $FF; T_Al := $FF;
{$ENDIF} {$ENDIF}
SchareLoaded := (T_Al = $FF); SchareLoaded := (T_Al = $FF);
@ -859,7 +859,7 @@ VAR
END; END;
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
FUNCTION TrueDosVer(VAR WinNTOk: Boolean): Word; FUNCTION TrueDosVer(VAR WinNTOk: Boolean): Word;
BEGIN BEGIN
WinNtOK := TRUE; WinNtOK := TRUE;
@ -886,7 +886,7 @@ VAR
END; END;
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
FUNCTION DosVer(VAR Minor,OS2Ver: Word): Word; FUNCTION DosVer(VAR Minor,OS2Ver: Word): Word;
BEGIN BEGIN
Minor := 0; Minor := 0;
@ -911,7 +911,7 @@ VAR
END; END;
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
FUNCTION Win3_Check_On: Boolean; FUNCTION Win3_Check_On: Boolean;
BEGIN BEGIN
Win3_Check_On := FALSE; Win3_Check_On := FALSE;
@ -937,7 +937,7 @@ VAR
DV_Check_On := TRUE; DV_Check_On := TRUE;
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
FUNCTION DV_Check_On: Boolean; FUNCTION DV_Check_On: Boolean;
BEGIN BEGIN
DV_Check_On := FALSE; DV_Check_On := FALSE;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-} {$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-}
UNIT Bulletin; UNIT Bulletin;
@ -498,7 +498,7 @@ VAR
BEGIN BEGIN
IF (MenuOption = '') THEN IF (MenuOption = '') THEN
Exit; Exit;
Assign(StrPointerFile,General.MultPath+MenuOption+'.PTR'); Assign(StrPointerFile,General.LMultPath+MenuOption+'.PTR');
Reset(StrPointerFile); Reset(StrPointerFile);
TotLoad := FileSize(StrPointerFile); TotLoad := FileSize(StrPointerFile);
IF (TotLoad < 1) THEN IF (TotLoad < 1) THEN
@ -522,7 +522,7 @@ BEGIN
NL; NL;
END; END;
TotLoad := 0; TotLoad := 0;
Assign(RGStrFile,General.MultPath+MenuOption+'.DAT'); Assign(RGStrFile,General.LMultPath+MenuOption+'.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
REPEAT REPEAT
@ -554,16 +554,16 @@ BEGIN
PrintF('QUOTE'); PrintF('QUOTE');
InResponseTo := ''; InResponseTo := '';
MHeader.Status := []; MHeader.Status := [];
IF (InputMessage(TRUE,FALSE,'New Quote',MHeader,General.MultPath+MenuOption+'.TMP',78,500)) then IF (InputMessage(TRUE,FALSE,'New Quote',MHeader,General.LMultPath+MenuOption+'.TMP',78,500)) then
IF Exist(General.MultPath+MenuOption+'.TMP') THEN IF Exist(General.LMultPath+MenuOption+'.TMP') THEN
BEGIN BEGIN
Assign(F,General.MultPath+MenuOption+'.NEW'); Assign(F,General.LMultPath+MenuOption+'.NEW');
Reset(F); Reset(F);
IF (IOResult <> 0) THEN IF (IOResult <> 0) THEN
ReWrite(F) ReWrite(F)
ELSE ELSE
Append(F); Append(F);
Assign(F1,General.MultPath+MenuOption+'.TMP'); Assign(F1,General.LMultPath+MenuOption+'.TMP');
Reset(F1); Reset(F1);
IF (IOResult <> 0) THEN IF (IOResult <> 0) THEN
Exit; Exit;
@ -580,7 +580,7 @@ BEGIN
WriteLn(F); WriteLn(F);
Close(F); Close(F);
Close(F1); Close(F1);
Kill(General.MultPath+MenuOption+'.TMP'); Kill(General.LMultPath+MenuOption+'.TMP');
NL; NL;
Print('^7Your new quote was saved.'); Print('^7Your new quote was saved.');
PauseScr(FALSE); PauseScr(FALSE);

View File

@ -1,9 +1,8 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D-,E-,F+,I-,L-,N+,O-,R-,S-,V-} {$A+,B-,D-,E-,F+,I-,L-,N+,O-,R-,S-,V-}
{$PACKRECORDS c}
UNIT Common; UNIT Common;
@ -20,14 +19,7 @@ USES
CONST CONST
StrLen = 119; StrLen = 119;
Type TYPE
BBSVersion = Packed Record
Major,
Minor,
Patch : Byte;
OS : Astr;
End;
MCIFunctionType = FUNCTION(CONST s: AStr; Data1, Data2: Pointer): STRING; MCIFunctionType = FUNCTION(CONST s: AStr; Data1, Data2: Pointer): STRING;
MemMenuRec = RECORD { Menu Record } MemMenuRec = RECORD { Menu Record }
@ -288,8 +280,8 @@ VAR
DatFilePath: STRING[40]; DatFilePath: STRING[40];
Interrupt14: Pointer; { far ptr TO interrupt 14 } Interrupt14: Pointer; { far ptr TO interrupt 14 }
{$IFDEF LINUX} {$IFDEF MSDOS}
Ticks: LongInt; {ABSOLUTE $0040:$006C;} Ticks: LongInt ABSOLUTE $0040:$006C;
{$ENDIF} {$ENDIF}
IEMSIRec: IEMSIRecord; IEMSIRec: IEMSIRecord;
FossilPort: Word; FossilPort: Word;
@ -490,7 +482,6 @@ VAR
procedure Sound(hz: Word; duration: Word); procedure Sound(hz: Word; duration: Word);
function Ticks: LongInt; function Ticks: LongInt;
{$ENDIF} {$ENDIF}
Function GetBBSVersion : BBSVersion;
FUNCTION GetC(c: Byte): STRING; FUNCTION GetC(c: Byte): STRING;
PROCEDURE ShowColors; PROCEDURE ShowColors;
FUNCTION CheckDriveSpace(S,Path: AStr; MinSpace: Integer): Boolean; FUNCTION CheckDriveSpace(S,Path: AStr; MinSpace: Integer): Boolean;
@ -717,7 +708,7 @@ end;
FUNCTION UpdateCRC32(CRC: LongInt; VAR Buffer; Len: Word): LongInt; EXTERNAL; FUNCTION UpdateCRC32(CRC: LongInt; VAR Buffer; Len: Word): LongInt; EXTERNAL;
{$L CRC32.OBJ } {$L CRC32.OBJ }
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
CONST CONST
CRC_32_TAB : array[0..255] of LongInt = ( CRC_32_TAB : array[0..255] of LongInt = (
$00000000, $77073096, $ee0e612c, $990951ba, $076dc419, $00000000, $77073096, $ee0e612c, $990951ba, $076dc419,
@ -787,27 +778,6 @@ BEGIN
END; END;
{$ENDIF} {$ENDIF}
Function GetBBSVersion : BBSVersion;
Var
OsType :AStr;
TBBSVersionRecord : BBSVersion;
Begin
{$IFDEF UNIX } OsType := 'Unix'; {$ENDIF}
{$IFDEF LINUX} OsType := 'Linux'; {$ENDIF}
{$IFDEF WIN32} OsType := 'Win32'; {$ENDIF}
{$IFDEF WIN64} OsType := 'Win64'; {$ENDIF}
{$IFDEF MSDOS} OsType := 'DOS'; {$ENDIF}
With TBBSVersionRecord Do
Major := 2;
Minor := 0;
Patch := 0;
OS := OsType;
End;
End;
FUNCTION CheckPW: Boolean; FUNCTION CheckPW: Boolean;
BEGIN BEGIN
CheckPW := Common1.CheckPW; CheckPW := Common1.CheckPW;
@ -1216,14 +1186,14 @@ VAR
S: STRING; S: STRING;
TotLoad: LongInt; TotLoad: LongInt;
BEGIN BEGIN
Assign(StrPointerFile,General.MultPath+'RGSCFGPR.DAT'); Assign(StrPointerFile,General.LMultPath+'RGSCFGPR.DAT');
Reset(StrPointerFile); Reset(StrPointerFile);
Seek(StrPointerFile,StrNum); Seek(StrPointerFile,StrNum);
Read(StrPointerFile,StrPointer); Read(StrPointerFile,StrPointer);
Close(StrPointerFile); Close(StrPointerFile);
LastError := IOResult; LastError := IOResult;
TotLoad := 0; TotLoad := 0;
Assign(RGStrFile,General.MultPath+'RGSCFGTX.DAT'); Assign(RGStrFile,General.LMultPath+'RGSCFGTX.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
REPEAT REPEAT
@ -1259,14 +1229,14 @@ VAR
S: STRING; S: STRING;
TotLoad: LongInt; TotLoad: LongInt;
BEGIN BEGIN
Assign(StrPointerFile,General.MultPath+'RGNOTEPR.DAT'); Assign(StrPointerFile,General.LMultPath+'RGNOTEPR.DAT');
Reset(StrPointerFile); Reset(StrPointerFile);
Seek(StrPointerFile,StrNum); Seek(StrPointerFile,StrNum);
Read(StrPointerFile,StrPointer); Read(StrPointerFile,StrPointer);
Close(StrPointerFile); Close(StrPointerFile);
LastError := IOResult; LastError := IOResult;
TotLoad := 0; TotLoad := 0;
Assign(RGStrFile,General.MultPath+'RGNOTETX.DAT'); Assign(RGStrFile,General.LMultPath+'RGNOTETX.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
REPEAT REPEAT
@ -1302,14 +1272,14 @@ VAR
S: STRING; S: STRING;
TotLoad: LongInt; TotLoad: LongInt;
BEGIN BEGIN
Assign(StrPointerFile,General.MultPath+'RGMAINPR.DAT'); Assign(StrPointerFile,General.LMultPath+'RGMAINPR.DAT');
Reset(StrPointerFile); Reset(StrPointerFile);
Seek(StrPointerFile,StrNum); Seek(StrPointerFile,StrNum);
Read(StrPointerFile,StrPointer); Read(StrPointerFile,StrPointer);
Close(StrPointerFile); Close(StrPointerFile);
LastError := IOResult; LastError := IOResult;
TotLoad := 0; TotLoad := 0;
Assign(RGStrFile,General.MultPath+'RGMAINTX.DAT'); Assign(RGStrFile,General.LMultPath+'RGMAINTX.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
REPEAT REPEAT
@ -1345,14 +1315,14 @@ VAR
S: STRING; S: STRING;
TotLoad: LongInt; TotLoad: LongInt;
BEGIN BEGIN
Assign(StrPointerFile,General.MultPath+'RGLNGPR.DAT'); Assign(StrPointerFile,General.LMultPath+'RGLNGPR.DAT');
Reset(StrPointerFile); Reset(StrPointerFile);
Seek(StrPointerFile,StrNum); Seek(StrPointerFile,StrNum);
Read(StrPointerFile,StrPointer); Read(StrPointerFile,StrPointer);
Close(StrPointerFile); Close(StrPointerFile);
LastError := IOResult; LastError := IOResult;
TotLoad := 0; TotLoad := 0;
Assign(RGStrFile,General.MultPath+'RGLNGTX.DAT'); Assign(RGStrFile,General.LMultPath+'RGLNGTX.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
REPEAT REPEAT
@ -2147,12 +2117,7 @@ BEGIN
Com_DeInstall; Com_DeInstall;
{$IFDEF FPC} CursorOn(TRUE);
cursoron;
{$ELSE}
CursorOn(TRUE);
{$ENDIF}
SwapVectors; SwapVectors;
@ -2436,7 +2401,7 @@ BEGIN
Dec(Year); Dec(Year);
AgeUser := Year; AgeUser := Year;
END; END;
{$IFNDEF LINUX}
FUNCTION AllCaps(InString: STRING): STRING; FUNCTION AllCaps(InString: STRING): STRING;
VAR VAR
Counter: Byte; Counter: Byte;
@ -2446,12 +2411,7 @@ BEGIN
InString[Counter] := Chr(Ord(InString[Counter]) - Ord('a')+Ord('A')); InString[Counter] := Chr(Ord(InString[Counter]) - Ord('a')+Ord('A'));
AllCaps := InString; AllCaps := InString;
END; END;
{$ELSE}
Function AllCaps(InString: String): String;
Begin
AllCaps := InString;
End;
{$ENDIF}
FUNCTION Caps(Instring: STRING): STRING; FUNCTION Caps(Instring: STRING): STRING;
VAR VAR
Counter: Integer; { must be Integer } Counter: Integer; { must be Integer }
@ -3152,7 +3112,7 @@ ASM
POP ds POP ds
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
FUNCTION AOnOff(b: Boolean; CONST s1,s2:AStr): STRING; FUNCTION AOnOff(b: Boolean; CONST s1,s2:AStr): STRING;
BEGIN BEGIN
if (b) then if (b) then
@ -3600,7 +3560,7 @@ BEGIN
LIL := 0; LIL := 0;
TempPause := SaveTempPause; TempPause := SaveTempPause;
END; END;
{$IFNDEF LINUX}
FUNCTION BSlash(InString: AStr; b: Boolean): AStr; FUNCTION BSlash(InString: AStr; b: Boolean): AStr;
BEGIN BEGIN
IF (b) THEN IF (b) THEN
@ -3615,22 +3575,6 @@ BEGIN
Dec(InString[0]); Dec(InString[0]);
BSlash := Instring; BSlash := Instring;
END; END;
{$ELSE}
Function BSlash(InString: Astr; b: Boolean): Astr;
Begin
IF (b) THEN
BEGIN
WHILE (Copy(InString,(Length(InString) - 1),2) = '//') DO
InString := Copy(Instring,1,(Length(InString) - 2));
IF (Copy(InString,Length(InString),1) <> '/') THEN
InString := InString + '/';
END
ELSE
WHILE (InString[Length(InString)] = '/') DO
Dec(InString[0]);
BSlash := Instring;
End;
{$ENDIF}
FUNCTION Exist(FileName: AStr): Boolean; FUNCTION Exist(FileName: AStr): Boolean;
VAR VAR
@ -3649,7 +3593,6 @@ BEGIN
ExistDir := (DOSError = 0) AND (DirInfo1.Attr AND $10 = $10); ExistDir := (DOSError = 0) AND (DirInfo1.Attr AND $10 = $10);
END; END;
PROCEDURE PrintFile(FileName: AStr); PROCEDURE PrintFile(FileName: AStr);
VAR VAR
s: AStr; s: AStr;
@ -4244,7 +4187,7 @@ BEGIN
REPEAT REPEAT
TempDirPath := DirPath; TempDirPath := DirPath;
Changed := FALSE; Changed := FALSE;
InputWN1(DisplayStr,TempDirPath,39,[InterActiveEdit],Changed); InputWN1(DisplayStr,TempDirPath,39,[UpperOnly,InterActiveEdit],Changed);
TempDirPath := SQOutSp(TempDirPath); TempDirPath := SQOutSp(TempDirPath);
IF (Length(TempDirPath) = 1) THEN IF (Length(TempDirPath) = 1) THEN
@ -4262,7 +4205,6 @@ BEGIN
NL; NL;
Print('^7A valid path must be specified!^1'); Print('^7A valid path must be specified!^1');
END END
{$IFNDEF LINUX}
ELSE IF (NOT (TempDirPath[1] IN ['A'..'Z'])) OR (Length(TempDirPath) < 3) OR ELSE IF (NOT (TempDirPath[1] IN ['A'..'Z'])) OR (Length(TempDirPath) < 3) OR
(NOT (TempDirPath[2] = ':')) OR (NOT (TempDirPath[3] = '\')) THEN (NOT (TempDirPath[2] = ':')) OR (NOT (TempDirPath[3] = '\')) THEN
BEGIN BEGIN
@ -4270,9 +4212,8 @@ BEGIN
Print('^7Invalid drive specification: "'+Copy(TempDirPath,1,3)+'"^1'); Print('^7Invalid drive specification: "'+Copy(TempDirPath,1,3)+'"^1');
TempDirPath := ''; TempDirPath := '';
END END
{$ENDIF}
ELSE ELSE
BEGIN {$IFNDEF LINUX} BEGIN
GetDir(0,CurDir); GetDir(0,CurDir);
ChDir(TempDirPath[1]+':'); ChDir(TempDirPath[1]+':');
IF (IOResult <> 0) THEN IF (IOResult <> 0) THEN
@ -4282,7 +4223,6 @@ BEGIN
TempDirPath := ''; TempDirPath := '';
END END
ELSE ELSE
{$ENDIF}
BEGIN BEGIN
ChDir(CurDir); ChDir(CurDir);
IF (CreateDir) THEN IF (CreateDir) THEN
@ -4778,21 +4718,11 @@ BEGIN
'T' : Add := CurrentConf; 'T' : Add := CurrentConf;
'+' : BEGIN '+' : BEGIN
Add := ''; Add := '';
{$IFDEF FPC} CursorOn(TRUE);
cursoron;
{$ELSE}
CursorOn(TRUE);
{$ENDIF}
END; END;
'-' : BEGIN '-' : BEGIN
Add := ''; Add := '';
{$IFDEF FPC} CursorOn(FALSE);
cursoroff;
{$ELSE}
CursorOn(TRUE);
{$ENDIF}
END; END;
END; END;
'D' : CASE UpCase(S[Index + 2]) OF 'D' : CASE UpCase(S[Index + 2]) OF
@ -4942,7 +4872,7 @@ BEGIN
'P' : CASE UpCase(S[Index + 2]) OF 'P' : CASE UpCase(S[Index + 2]) OF
'1' : Add := General.MsgPath; '1' : Add := General.MsgPath;
'2' : Add := General.NodePath; '2' : Add := General.NodePath;
'3' : Add := General.MultPath; '3' : Add := General.LMultPath;
'4' : Add := General.SysOpPW; '4' : Add := General.SysOpPW;
'5' : Add := General.NewUserPW; '5' : Add := General.NewUserPW;
'6' : Add := General.MinBaudOverride; '6' : Add := General.MinBaudOverride;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-}
UNIT Common1; UNIT Common1;

View File

@ -162,7 +162,6 @@ CONST
{$IFDEF MSDOS} {$IFDEF MSDOS}
PROCEDURE BiosScroll(up: Boolean); ASSEMBLER; PROCEDURE BiosScroll(up: Boolean); ASSEMBLER;
{$ASMMODE intel}
ASM ASM
Mov cx,0 Mov cx,0
Mov dh,MaxDisplayRows Mov dh,MaxDisplayRows
@ -293,14 +292,17 @@ BEGIN
SecondRow := (FirstRow + 1); SecondRow := (FirstRow + 1);
TextAttr := 120; TextAttr := 120;
LastScreenSwap := 0; LastScreenSwap := 0;
{ CursorOn(FALSE);} CursorOn(FALSE);
Clear_Status_Box; Clear_Status_Box;
IF (WhichScreen < 99) THEN IF (WhichScreen < 99) THEN
General.CurWindow := WhichScreen; General.CurWindow := WhichScreen;
CASE WhichScreen OF CASE WhichScreen OF
1 : WITH ThisUser DO 1 : WITH ThisUser DO
BEGIN BEGIN
{$IFNDEF MSDOS} {$IFDEF MSDOS}
Update_Logo(Win1,ScreenAddr[(FirstRow - 1) * 160],WIN1_LENGTH);
{$ENDIF}
{$IFDEF WIN32}
Update_Logo(Win1, 1, FirstRow, WIN1_LENGTH); Update_Logo(Win1, 1, FirstRow, WIN1_LENGTH);
{$ENDIF} {$ENDIF}
GoToXY(02,FirstRow); GoToXY(02,FirstRow);
@ -526,7 +528,7 @@ BEGIN
Window(1,3,MaxDisplayCols,MaxDisplayRows) Window(1,3,MaxDisplayCols,MaxDisplayRows)
ELSE ELSE
Window(1,1,MaxDisplayCols,MaxDisplayRows - 2); Window(1,1,MaxDisplayCols,MaxDisplayRows - 2);
CursorOn; CursorOn(TRUE);
IF (NOT SaveWindowOn) THEN IF (NOT SaveWindowOn) THEN
ToggleWindow(FALSE); ToggleWindow(FALSE);
GoToXY(SaveWhereX,SaveWhereY); GoToXY(SaveWhereX,SaveWhereY);
@ -547,7 +549,7 @@ VAR
SaveWhereX, SaveWhereX,
SaveWhereY, SaveWhereY,
SaveTextAttr: Byte; SaveTextAttr: Byte;
RetCode: SmallInt; RetCode,
i: Integer; i: Integer;
SaveTimer: LongInt; SaveTimer: LongInt;
SaveInChat: Boolean; SaveInChat: Boolean;
@ -603,19 +605,11 @@ BEGIN
{$IFDEF WIN32} {$IFDEF WIN32}
Update_Logo(SYSKEY, 1, 1, SYSKEY_LENGTH); Update_Logo(SYSKEY, 1, 1, SYSKEY_LENGTH);
{$ENDIF} {$ENDIF}
{$IFDEF FPC} CursorOn(FALSE);
cursoron;
{$ELSE}
CursorOn(FALSE);
{$ENDIF}
C := ReadKey; C := ReadKey;
IF (C = #0) THEN IF (C = #0) THEN
C := ReadKey; C := ReadKey;
{$IFDEF FPC}
cursoron;
{$ELSE}
CursorOn(TRUE); CursorOn(TRUE);
{$ENDIF}
RemoveWindow(Wind); RemoveWindow(Wind);
GoToXY(SaveWhereX,SaveWhereY); GoToXY(SaveWhereX,SaveWhereY);
Update_Screen; Update_Screen;
@ -856,21 +850,12 @@ CursorOn(FALSE);
Window(1,1,MaxDisplayCols,MaxDisplayRows); Window(1,1,MaxDisplayCols,MaxDisplayRows);
ClrScr; ClrScr;
WantOut := FALSE; WantOut := FALSE;
{$IFDEF FPC}
cursoron;
{$ELSE}
CursorOn(FALSE); CursorOn(FALSE);
{$ENDIF}
END END
ELSE ELSE
BEGIN BEGIN
WantOut := TRUE; WantOut := TRUE;
{$IFDEF FPC} CursorOn(TRUE);
cursoron;
{$ELSE}
CursorOn(FALSE);
{$ENDIF}
WriteLn('Local display on.'); WriteLn('Local display on.');
Update_Screen; Update_Screen;
END; END;
@ -1118,13 +1103,7 @@ VAR
END; END;
Write(' '); Write(' ');
TextBackGround(0); TextBackGround(0);
{$IFDEF FPC} CursorOn(i IN [1..4]);
cursoron;
{$ELSE}
CursorOn(i IN [1..4]);
{$ENDIF}
IF (b) THEN IF (b) THEN
BEGIN BEGIN
GoToXY(26,12); GoToXY(26,12);
@ -1148,11 +1127,7 @@ VAR
VAR VAR
Counter: Byte; Counter: Byte;
BEGIN BEGIN
{$IFDEF FPC}
cursoroff;
{$ELSE}
CursorOn(FALSE); CursorOn(FALSE);
{$ENDIF}
TextColor(9); TextColor(9);
Box(1,18,6,68,13); Box(1,18,6,68,13);
Window(19,7,67,12); Window(19,7,67,12);
@ -1329,11 +1304,7 @@ BEGIN
UNTIL (Done); UNTIL (Done);
GoToXY(SaveWhereX,SaveWhereY); GoToXY(SaveWhereX,SaveWhereY);
TextAttr := SaveTextAttr; TextAttr := SaveTextAttr;
{$IFDEF FPC}
cursoron;
{$ELSE}
CursorOn(TRUE); CursorOn(TRUE);
{$ENDIF}
NewCompTables; NewCompTables;
SaveURec(ThisUser,UserNum); SaveURec(ThisUser,UserNum);
END; END;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-,X-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-,X-}
UNIT Common3; UNIT Common3;
@ -345,7 +345,6 @@ VAR
END; END;
{$IFDEF MSDOS} {$IFDEF MSDOS}
PROCEDURE SetCursor(InsertMode: Boolean); ASSEMBLER; PROCEDURE SetCursor(InsertMode: Boolean); ASSEMBLER;
ASM ASM
cmp InsertMode,0 cmp InsertMode,0
@ -361,23 +360,15 @@ VAR
int 10h int 10h
END; END;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
PROCEDURE SetCursor(InsertMode: Boolean); PROCEDURE SetCursor(InsertMode: Boolean);
BEGIN BEGIN
if (InsertMode) then if (InsertMode) then
begin begin
{$IFDEF FPC}
cursoron;
{$ELSE}
RPInsertCursor; RPInsertCursor;
{$ENDIF}
end else end else
begin begin
{$IFDEF FPC}
cursorbig;
{$ELSE}
RPBlockCursor; RPBlockCursor;
{$ENDIF}
end; end;
END; END;
{$ENDIF} {$ENDIF}

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-}
(* (*
@ -353,7 +353,7 @@ IMPLEMENTATION
USES USES
Crt, Crt,
Common Common
{$IFDEF WINDOWS} {$IFDEF WIN32}
,EleNorm ,EleNorm
{$ENDIF} {$ENDIF}
; ;
@ -377,8 +377,7 @@ PROCEDURE Com_Flush_Recv;
BEGIN BEGIN
IF (NOT LocalIOOnly) THEN IF (NOT LocalIOOnly) THEN
BEGIN BEGIN
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Cmp InWfcMenu,1 Cmp InWfcMenu,1
Je @TheEnd Je @TheEnd
@ -419,9 +418,8 @@ the output buffer (not transmitted yet) is discarded.
PROCEDURE Com_Purge_Send; PROCEDURE Com_Purge_Send;
BEGIN BEGIN
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel} ASM
ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
Je @TheEnd Je @TheEnd
Mov AH,09h Mov AH,09h
@ -466,8 +464,7 @@ VAR
Dummy: Byte; Dummy: Byte;
BEGIN BEGIN
Dummy := 0; (* New *) Dummy := 0; (* New *)
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
Je @TheEnd Je @TheEnd
@ -521,8 +518,7 @@ VAR
BEGIN BEGIN
Com_Recv := #0; Com_Recv := #0;
T_RecvChar := FALSE; T_RecvChar := FALSE;
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
Je @TheEnd Je @TheEnd
@ -595,8 +591,7 @@ VAR
Dummy: Byte; Dummy: Byte;
BEGIN BEGIN
Dummy := 0; (* New *) Dummy := 0; (* New *)
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
Je @TheEnd Je @TheEnd
@ -648,8 +643,7 @@ VAR
{$ENDIF} {$ENDIF}
BEGIN BEGIN
Dummy := 0; (* New *) Dummy := 0; (* New *)
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
Je @TheEnd Je @TheEnd
@ -686,8 +680,7 @@ value of 0000h is returned in AX. If the driver accepts the character
PROCEDURE Com_Send(C: Char); PROCEDURE Com_Send(C: Char);
BEGIN BEGIN
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
Je @TheEnd Je @TheEnd
@ -780,8 +773,7 @@ BEGIN
T_AL := 32; T_AL := 32;
END; END;
Inc(T_AL,3); Inc(T_AL,3);
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Mov AH,00h Mov AH,00h
Mov AL,T_AL Mov AL,T_AL
@ -809,8 +801,7 @@ PROCEDURE Com_DeInstall;
BEGIN BEGIN
IF (NOT LocalIOOnly) THEN IF (NOT LocalIOOnly) THEN
BEGIN BEGIN
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Mov AH,05h Mov AH,05h
Mov DX,FossilPort Mov DX,FossilPort
@ -831,8 +822,7 @@ END;
PROCEDURE Com_Install; PROCEDURE Com_Install;
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
FUNCTION DriverInstalled: Word; ASSEMBLER; FUNCTION DriverInstalled: Word; ASSEMBLER;
ASM ASM
Mov AH,5 Mov AH,5
@ -855,8 +845,7 @@ BEGIN
FossilPort := (Liner.Comport - 1); FossilPort := (Liner.Comport - 1);
IF (LocalIOOnly) THEN IF (LocalIOOnly) THEN
Exit; Exit;
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
IF (DriverInstalled <> $1954) THEN IF (DriverInstalled <> $1954) THEN
BEGIN BEGIN
ClrScr; ClrScr;
@ -892,8 +881,7 @@ BEGIN
Com_Set_Speed(Liner.InitBaud); Com_Set_Speed(Liner.InitBaud);
END; END;
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
PROCEDURE CheckHangup; ASSEMBLER; PROCEDURE CheckHangup; ASSEMBLER;
ASM ASM
Cmp LocalIOOnly,1 Cmp LocalIOOnly,1
@ -947,8 +935,7 @@ VAR
BEGIN BEGIN
IF (OutCom) THEN IF (OutCom) THEN
BEGIN BEGIN
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
REPEAT REPEAT
T_DI := OFS(S[1]); T_DI := OFS(S[1]);
T_CX := Length(S); T_CX := Length(S);
@ -1004,8 +991,7 @@ BEGIN
Empty := NOT KeyPressed; Empty := NOT KeyPressed;
IF (InCom) AND (NOT KeyPressed) THEN IF (InCom) AND (NOT KeyPressed) THEN
BEGIN BEGIN
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Mov DX,FossilPort Mov DX,FossilPort
Mov AH,03h Mov AH,03h
@ -1041,8 +1027,7 @@ BEGIN
IF (NOT LocalIOOnly) THEN IF (NOT LocalIOOnly) THEN
BEGIN BEGIN
T_AL := Byte(Status); T_AL := Byte(Status);
{$IFDEF LINUX} {$IFDEF MSDOS}
{$ASMMODE intel}
ASM ASM
Mov AH,06h Mov AH,06h
Mov DX,FossilPort Mov DX,FossilPort

View File

@ -26,7 +26,7 @@ VAR
PROCEDURE CStuff(Which,How: Byte; VAR User: UserRecordType); PROCEDURE CStuff(Which,How: Byte; VAR User: UserRecordType);
VAR VAR
Trys: Byte; Try: Byte;
Done, Done,
Done1: Boolean; Done1: Boolean;
@ -336,10 +336,10 @@ VAR
BEGIN BEGIN
NL; NL;
Print(^G'^7Sorry, can''t use that name.^1'); Print(^G'^7Sorry, can''t use that name.^1');
Inc(Trys); Inc(Try);
sl1('Unacceptable Name : '+s); sl1('Unacceptable Name : '+s);
END; END;
IF (Trys >= 3) AND (How = 1) THEN IF (Try >= 3) AND (How = 1) THEN
HangUp := TRUE; HangUp := TRUE;
IF ((Done) AND (How = 1) AND (NOT General.AllowAlias)) THEN IF ((Done) AND (How = 1) AND (NOT General.AllowAlias)) THEN
@ -1011,7 +1011,7 @@ VAR
END; END;
BEGIN BEGIN
Trys := 0; Try := 0;
Done1 := FALSE; Done1 := FALSE;
CASE How OF CASE How OF
1 : REPEAT 1 : REPEAT

View File

@ -689,7 +689,7 @@ END;
PROCEDURE DoDoorFunc(DropFileType: Char; MenuOption: Str50); PROCEDURE DoDoorFunc(DropFileType: Char; MenuOption: Str50);
VAR VAR
Answer: AStr; Answer: AStr;
ReturnCode: SmallInt; ReturnCode: Integer;
DoorTime: LongInt; DoorTime: LongInt;
UseRealName: Boolean; UseRealName: Boolean;
BEGIN BEGIN

View File

@ -16,12 +16,12 @@ PROCEDURE ExecWindow(VAR Ok: Boolean;
CONST Dir, CONST Dir,
BatLine: AStr; BatLine: AStr;
OkLevel: Integer; OkLevel: Integer;
VAR RCode: SmallInt); VAR RCode: Integer);
PROCEDURE ExecBatch(VAR Ok: Boolean; PROCEDURE ExecBatch(VAR Ok: Boolean;
Dir, Dir,
BatLine: AStr; BatLine: AStr;
OkLevel: Integer; OkLevel: Integer;
VAR RCode: SmallInt; VAR RCode: Integer;
Windowed: Boolean); Windowed: Boolean);
PROCEDURE Shel(CONST s: AStr); PROCEDURE Shel(CONST s: AStr);
PROCEDURE Shel2(x: Boolean); PROCEDURE Shel2(x: Boolean);
@ -54,7 +54,7 @@ PROCEDURE ExecWindow(VAR Ok: Boolean;
CONST Dir, CONST Dir,
BatLine: AStr; BatLine: AStr;
OkLevel: Integer; OkLevel: Integer;
VAR RCode: SmallInt); VAR RCode: Integer);
VAR VAR
SaveWindowOn: Boolean; SaveWindowOn: Boolean;
SaveCurWindow: Byte; SaveCurWindow: Byte;
@ -156,7 +156,7 @@ PROCEDURE ExecBatch(VAR Ok: Boolean; { result }
Dir: AStr; { directory takes place in } Dir: AStr; { directory takes place in }
BatLine: AStr; { .BAT file line to execute } BatLine: AStr; { .BAT file line to execute }
OkLevel: Integer; { DOS errorlevel for success } OkLevel: Integer; { DOS errorlevel for success }
VAR RCode: SmallInt; { errorlevel returned } VAR RCode: Integer; { errorlevel returned }
Windowed: Boolean); { Windowed? } Windowed: Boolean); { Windowed? }
VAR VAR
BatchFile: Text; BatchFile: Text;

View File

@ -229,7 +229,7 @@ BEGIN
BEGIN BEGIN
NL; NL;
IF (NOT CopyMoveFile(NOT (IsFileAttach IN TransferFlags), IF (NOT CopyMoveFile(NOT (IsFileAttach IN TransferFlags),
AOnOff(IsFileAttach IN TransferFlags,'^1Moving ... ','^1Copying ... '), +AOnOff(IsFileAttach IN TransferFlags,'^1Moving ... ','^1Copying ... '),
DownloadPath+SQOutSp(FileInfo.FileName), DownloadPath+SQOutSp(FileInfo.FileName),
CopyPath+SQOutSp(FileInfo.FileName),TRUE)) THEN CopyPath+SQOutSp(FileInfo.FileName),TRUE)) THEN
Include(TransferFlags,IsPaused); Include(TransferFlags,IsPaused);
@ -1470,7 +1470,7 @@ BEGIN
END; END;
TempStr := TempStr + AOnOff(ShowScan AND NewScanFileArea,'0'+ScanChar[1],' ')+ TempStr := TempStr + AOnOff(ShowScan AND NewScanFileArea,'0'+ScanChar[1],' ')+
PadLeftStr(PadRightStr('1'+IntToStr(CompFileArea(FArea,0)),5) PadLeftStr(PadRightStr('1'+IntToStr(CompFileArea(FArea,0)),5)+
+'2 '+MemFileArea.AreaName,37)+' '; +'2 '+MemFileArea.AreaName,37)+' ';
Inc(NumOnline); Inc(NumOnline);
IF (NumOnLine = 2) THEN IF (NumOnLine = 2) THEN

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT File11; UNIT File11;
@ -648,7 +648,7 @@ END;
PROCEDURE SearchFileAreaSpec(FArea: Integer; FName: Str12; VAR FArrayRecNum: Byte); PROCEDURE SearchFileAreaSpec(FArea: Integer; FName: Str12; VAR FArrayRecNum: Byte);
VAR VAR
DirFileRecNum: LongInt; DirFileRecNum: Integer;
Found: Boolean; Found: Boolean;
BEGIN BEGIN
IF (FileArea <> FArea) THEN IF (FileArea <> FArea) THEN
@ -776,7 +776,7 @@ PROCEDURE SearchFileAreaDescription(FArea: Integer; SearchString: Str20; VAR FAr
VAR VAR
LineNum, LineNum,
NumExtDesc: Byte; NumExtDesc: Byte;
DirFileRecNum: LongInt; DirFileRecNum: Integer;
SearchStringFound, SearchStringFound,
Found: Boolean; Found: Boolean;
BEGIN BEGIN
@ -902,7 +902,7 @@ END;
PROCEDURE NewFileScan(FArea: Integer; Global: Boolean; VAR FArrayRecNum: Byte); PROCEDURE NewFileScan(FArea: Integer; Global: Boolean; VAR FArrayRecNum: Byte);
VAR VAR
DirFileRecNum: LongInt; DirFileRecNum: Integer;
Found: Boolean; Found: Boolean;
BEGIN BEGIN
IF (FileArea <> FArea) THEN IF (FileArea <> FArea) THEN
@ -1014,9 +1014,9 @@ PROCEDURE FileAreaChange(VAR Done: Boolean; CONST MenuOption: Str50);
VAR VAR
InputStr: Str5; InputStr: Str5;
Cmd: Char; Cmd: Char;
SaveFArea: Integer;
FArea, FArea,
NumFAreas: LongInt; SaveFArea,
NumFAreas: Integer;
SaveTempPause: Boolean; SaveTempPause: Boolean;
BEGIN BEGIN
IF (MenuOption <> '') THEN IF (MenuOption <> '') THEN

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT File12; UNIT File12;
@ -370,9 +370,9 @@ VAR
ProtocolNumber, ProtocolNumber,
SaveFArea, SaveFArea,
SaveFileArea, SaveFileArea,
TempBULVTextSize: Integer;
NumFAreas, NumFAreas,
FArea, FArea,
TempBULVTextSize: Integer;
TempVPointer, TempVPointer,
RecNum, RecNum,
RecNum1, RecNum1,
@ -387,7 +387,7 @@ VAR
PROCEDURE UpFile; PROCEDURE UpFile;
VAR VAR
GotPts: LongInt; GotPts: Integer;
ConversionTime: LongInt; ConversionTime: LongInt;
ArcOk, ArcOk,
Convt: Boolean; Convt: Boolean;

View File

@ -15,7 +15,7 @@ PROCEDURE ExecProtocol(TextFN,
Dir, Dir,
BatLine: AStr; BatLine: AStr;
OKLevel: Integer; OKLevel: Integer;
VAR ReturnCode: SmallInt; VAR ReturnCode: Integer;
VAR TransferTime: LongInt); VAR TransferTime: LongInt);
FUNCTION FindReturnCode(ProtCode: ProtocolCodeType; XBStat: PRFlagSet; ReturnCode: AStr): Boolean; FUNCTION FindReturnCode(ProtCode: ProtocolCodeType; XBStat: PRFlagSet; ReturnCode: AStr): Boolean;
FUNCTION DoProtocol(VAR Protocol: ProtocolRecordType; UL,DL,Batch,Resume: Boolean): Integer; FUNCTION DoProtocol(VAR Protocol: ProtocolRecordType; UL,DL,Batch,Resume: Boolean): Integer;
@ -48,7 +48,7 @@ PROCEDURE ExecProtocol(TextFN,
Dir, Dir,
BatLine: AStr; BatLine: AStr;
OKLevel: Integer; OKLevel: Integer;
VAR ReturnCode: SmallInt; VAR ReturnCode: Integer;
VAR TransferTime: LongInt); VAR TransferTime: LongInt);
VAR VAR
SaveSwapShell, SaveSwapShell,

View File

@ -106,7 +106,7 @@ VAR
TSiz: LongInt; TSiz: LongInt;
i, i,
j: Byte; j: Byte;
RetLevel: SmallInt; RetLevel: Integer;
b, b,
Ok: Boolean; Ok: Boolean;
BEGIN BEGIN

View File

@ -99,12 +99,12 @@ VAR
NumExtDesc, NumExtDesc,
Counter, Counter,
Counter1: BYTE; Counter1: BYTE;
ReturnCode,
SaveFileArea, SaveFileArea,
DirFileRecNum, DirFileRecNum,
ProtocolNumber, ProtocolNumber,
SaveLastDirFileRecNum, SaveLastDirFileRecNum,
ToXfer: Integer; ToXfer: Integer;
ReturnCode: SmallInt;
RecNum, RecNum,
RecNum1, RecNum1,
TransferTime: LongInt; TransferTime: LongInt;

View File

@ -333,7 +333,7 @@ TYPE
END; END;
VAR VAR
Totals: TotalsRecordType; Totals: TotalsRecordType;
ReturnCode: SmallInt; ReturnCode,
ProtocolNumber: Integer; ProtocolNumber: Integer;
TransferTime: LongInt; TransferTime: LongInt;
BEGIN BEGIN
@ -549,7 +549,7 @@ PROCEDURE Receive(FileName: Str12;
AddULBatch: Boolean; AddULBatch: Boolean;
VAR TransferTime: LongInt); VAR TransferTime: LongInt);
VAR VAR
ReturnCode: SmallInt; ReturnCode,
ProtocolNumber: Integer; ProtocolNumber: Integer;
BEGIN BEGIN
UploadOk := TRUE; UploadOk := TRUE;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT File9; UNIT File9;
@ -222,10 +222,10 @@ VAR
InputStr: Str11; InputStr: Str11;
FirstFArea, FirstFArea,
LastFArea, LastFArea,
FArea,
NumFAreas,
SaveFArea, SaveFArea,
SaveFileArea: Integer; SaveFileArea: Integer;
FArea,
NumFAreas: LongInt;
SaveConfSystem, SaveConfSystem,
SaveTempPause: Boolean; SaveTempPause: Boolean;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT LineChat; UNIT LineChat;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT Logon; UNIT Logon;
@ -602,7 +602,6 @@ VAR
RecNum1, RecNum1,
I: Integer; I: Integer;
Done,Loggedon,Ok,CmdNotHid,CmdExists: Boolean; Done,Loggedon,Ok,CmdNotHid,CmdExists: Boolean;
UserNum :LongInt;
BEGIN BEGIN
PrintF('PRESHUTL'); PrintF('PRESHUTL');
GotName := FALSE; GotName := FALSE;
@ -757,7 +756,6 @@ VAR
Ok, Ok,
TooMuch, TooMuch,
ACSUser: Boolean; ACSUser: Boolean;
UserNum: LongInt;
BEGIN BEGIN
WasNewUser := FALSE; WasNewUser := FALSE;
UserNum := -1; UserNum := -1;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT Mail0; UNIT Mail0;
@ -855,11 +855,11 @@ VAR
FSize: LongInt; FSize: LongInt;
BEGIN BEGIN
TagLine := ''; TagLine := '';
IF (NOT Exist(General.MultPath+'TAGLINE.PTR')) OR (NOT Exist(General.MultPath+'TAGLINE.DAT')) THEN IF (NOT Exist(General.lMultPath+'TAGLINE.PTR')) OR (NOT Exist(General.LMultPath+'TAGLINE.DAT')) THEN
SL1('* TAGLINE.PTR or TAGLINE.DAT file(s) do not exist!') SL1('* TAGLINE.PTR or TAGLINE.DAT file(s) do not exist!')
ELSE ELSE
BEGIN BEGIN
Assign(StrPointerFile,General.MultPath+'TAGLINE.PTR'); Assign(StrPointerFile,General.LMultPath+'TAGLINE.PTR');
Reset(StrPointerFile); Reset(StrPointerFile);
FSize := FileSize(StrPointerFile); FSize := FileSize(StrPointerFile);
IF (FSize < 1) THEN IF (FSize < 1) THEN
@ -877,7 +877,7 @@ BEGIN
Read(StrPointerFile,StrPointer); Read(StrPointerFile,StrPointer);
Close(StrPointerFile); Close(StrPointerFile);
LastError := IOResult; LastError := IOResult;
Assign(RGStrFile,General.MultPath+'TAGLINE.DAT'); Assign(RGStrFile,General.LMultPath+'TAGLINE.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
TempTextSize := 0; TempTextSize := 0;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT Mail1; UNIT Mail1;
@ -34,7 +34,6 @@ VAR
InportFile: Text; InportFile: Text;
InportFileOpen: Boolean; InportFileOpen: Boolean;
Escp: Boolean; Escp: Boolean;
MaxAvail: Integer;
PROCEDURE Anonymous(Offline: Boolean; VAR MHeader: MHeaderRec); PROCEDURE Anonymous(Offline: Boolean; VAR MHeader: MHeaderRec);
VAR VAR

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT Mail2; UNIT Mail2;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT Mail3; UNIT Mail3;
@ -126,8 +126,8 @@ VAR
MHeader: MHeaderRec; MHeader: MHeaderRec;
MsgTempStr: STRING; MsgTempStr: STRING;
SaveReadMsgArea, SaveReadMsgArea,
Unum: Integer;
TempTextSize: Word; TempTextSize: Word;
Unum,
TempPtr, TempPtr,
TempPtr1: LongInt; TempPtr1: LongInt;
ForwardOk, ForwardOk,
@ -312,11 +312,11 @@ VAR
MHeader: MHeaderRec; MHeader: MHeaderRec;
MsgTxtStr: STRING; MsgTxtStr: STRING;
InputStr: Str5; InputStr: Str5;
MArea,
NumMAreas,
SaveMArea, SaveMArea,
NewMsgArea, NewMsgArea,
SaveReadMsgArea: Integer; SaveReadMsgArea: Integer;
MArea,
NumMAreas: LongInt;
TempTextSize: Word; TempTextSize: Word;
SaveConfSystem: Boolean; SaveConfSystem: Boolean;
BEGIN BEGIN

View File

@ -82,7 +82,7 @@ BEGIN
END; END;
TempStr := TempStr + AOnOff(ShowScan AND LastReadRecord.NewScan,':'+ScanChar[1],' ')+ TempStr := TempStr + AOnOff(ShowScan AND LastReadRecord.NewScan,':'+ScanChar[1],' ')+
PadLeftStr(PadRightStr(';'+IntToStr(CompMsgArea(MArea,0)),5) PadLeftStr(PadRightStr(';'+IntToStr(CompMsgArea(MArea,0)),5)+
+'< '+MemMsgArea.Name,37)+' '; +'< '+MemMsgArea.Name,37)+' ';
Inc(NumOnline); Inc(NumOnline);
IF (NumOnline = 2) THEN IF (NumOnline = 2) THEN

View File

@ -83,8 +83,7 @@ USES
TimeBank, TimeBank,
TimeFunc, TimeFunc,
Vote, Vote,
OneLiner, OneLiner;
Crt;
(* (*
@ -393,11 +392,8 @@ BEGIN
UserColor(6); UserColor(6);
UNTIL ((GotCmd) OR (HangUp)); UNTIL ((GotCmd) OR (HangUp));
{$IFDEF FPC}
CursorOn;
{$ELSE}
CursorOn(TRUE); CursorOn(TRUE);
{$ENDIF}
UserColor(1); UserColor(1);

View File

@ -136,7 +136,7 @@ BEGIN
Update_Screen; Update_Screen;
END; END;
PROCEDURE FindUser(VAR UserNum: LongInt); PROCEDURE FindUser(VAR UserNum: Integer);
VAR VAR
User: UserRecordType; User: UserRecordType;
TempUserName: Str36; TempUserName: Str36;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-} {$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-}
UNIT Multnode; UNIT Multnode;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R+,S-,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R+,S-,V-}
UNIT MyIO; UNIT MyIO;
@ -13,17 +13,6 @@ TYPE
WindowRec = ARRAY[0..8000] OF Byte; WindowRec = ARRAY[0..8000] OF Byte;
ScreenType = ARRAY [0..3999] OF Byte; ScreenType = ARRAY [0..3999] OF Byte;
Infield_Special_Function_Proc_Rec = PROCEDURE(c: Char); Infield_Special_Function_Proc_Rec = PROCEDURE(c: Char);
{$IFDEF LINUX}
PChar = ^Char;
SmallWord = System.Word;
TscrCell = packed record
Chr: Char;
Att: Byte;
end;
TScrBuffer = array[0..$8000] of TScrCell;
PScrBuffer = ^TScrBuffer;
{$ENDIF}
CONST CONST
Infield_Seperators: SET OF Char = [' ','\','.']; Infield_Seperators: SET OF Char = [' ','\','.'];
@ -36,19 +25,13 @@ CONST
Infield_Arrow_Exit_TypeDefs: BOOLEAN = FALSE; Infield_Arrow_Exit_TypeDefs: BOOLEAN = FALSE;
Infield_Normal_Exit_Keydefs: BOOLEAN = FALSE; Infield_Normal_Exit_Keydefs: BOOLEAN = FALSE;
Infield_Normal_Exited: BOOLEAN = FALSE; Infield_Normal_Exited: BOOLEAN = FALSE;
{$IFDEF LINUX}
MonitorType: Byte = 3; // REENOTE 3=CO80, a safe assumption I think
{ScreenAddr: ScreenType ABSOLUTE $B800:$0000;}
ScreenAddr: Byte = 3;
{ Video modes }
MON1 = $FE; { Monochrome, ASCII chars only }
MON2 = $FD; { Monochrome, graphics chars }
COL1 = $FC; { Color, ASCII chars only }
COL2 = $FB; { Color, graphics chars }
{$ENDIF}
VAR VAR
Wind: WindowRec; Wind: WindowRec;
{$IFDEF MSDOS}
MonitorType: Byte ABSOLUTE $0000:$0449;
ScreenAddr: ScreenType ABSOLUTE $B800:$0000;
{$ENDIF}
{$IFDEF WIN32} {$IFDEF WIN32}
MonitorType: Byte = 3; // REENOTE 3=CO80, a safe assumption I think MonitorType: Byte = 3; // REENOTE 3=CO80, a safe assumption I think
{$ENDIF} {$ENDIF}
@ -66,17 +49,14 @@ VAR
Infield_Special_Function_Keys, Infield_Special_Function_Keys,
Infield_Arrow_Exit_Types, Infield_Arrow_Exit_Types,
Infield_Normal_Exit_Keys: STRING; Infield_Normal_Exit_Keys: STRING;
{$IFDEF LINUX}
ScreenBuffer: PScrBuffer; {$IFDEF MSDOS}
ScrGraphs: array[#00..#31] of Char; PROCEDURE Update_Logo(VAR Addr1,Addr2; BlkLen: Integer);
ScrMode: Integer;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
PROCEDURE Update_Logo(Data: Array of Char; OriginX, OriginY, DataLength: integer); procedure Update_Logo(Data: Array of Char; OriginX, OriginY, DataLength: integer);
{$ENDIF} {$ENDIF}
{$IFNDEF FPC}
PROCEDURE CursorOn(b: BOOLEAN); PROCEDURE CursorOn(b: BOOLEAN);
{$ENDIF}
PROCEDURE infield1(x,y: Byte; VAR s: AStr; Len: Byte); PROCEDURE infield1(x,y: Byte; VAR s: AStr; Len: Byte);
PROCEDURE Infielde(VAR s: AStr; Len: Byte); PROCEDURE Infielde(VAR s: AStr; Len: Byte);
PROCEDURE Infield(VAR s: AStr; Len: Byte); PROCEDURE Infield(VAR s: AStr; Len: Byte);
@ -90,12 +70,7 @@ PROCEDURE Box(LineType,TLX,TLY,BRX,BRY: Integer);
PROCEDURE SaveScreen(VAR Wind: WindowRec); PROCEDURE SaveScreen(VAR Wind: WindowRec);
PROCEDURE RemoveWindow(VAR Wind: WindowRec); PROCEDURE RemoveWindow(VAR Wind: WindowRec);
PROCEDURE SetWindow(VAR Wind: WindowRec; TLX,TLY,BRX,BRY,TColr,BColr,BoxType: Integer); PROCEDURE SetWindow(VAR Wind: WindowRec; TLX,TLY,BRX,BRY,TColr,BColr,BoxType: Integer);
{$IFDEF LINUX}
procedure SysWrtCharStrAtt(CharStr: Pointer; Len, X, Y: SmallWord; var Attr: Byte);
procedure SysTVShowBuf(Pos,Size: Integer);
procedure TrmWriteString( Const InString : String );
function ColorSequence(Attr,LastAttr:word):string;
{$ENDIF}
IMPLEMENTATION IMPLEMENTATION
USES USES
@ -104,63 +79,13 @@ USES
,RPScreen ,RPScreen
,VpSysLow ,VpSysLow
{$ENDIF} {$ENDIF}
{$IFDEF LINUX}
,Unix
,SysUtils
{$ENDIF}
; ;
{$IFDEF WIN32} {$IFDEF WIN32}
VAR VAR
SavedScreen: TScreenBuf; SavedScreen: TScreenBuf;
{$ENDIF} {$ENDIF}
{$IFDEF LINUX}
Procedure TrmWriteString( Const InString : String );
Begin
WriteLn(Trim(InString));
End;
function ColorSequence(Attr,LastAttr:word):string;
const
// Color table
ScrPalette: array[0..7] of Char = '04261537';
Var
Result: String;
begin
if Attr=LastAttr then
Result:=''
else
begin
Result:=#27'[';
if ((Attr xor LastAttr) and $80)<>0 then
if Attr and $80=$80 then
// + blink
Result:=Result+'5;'
else
// - blink
Result:=Result+'25;';
if ((Attr xor LastAttr) and $08)<>0 then
if (Attr and $08)=$08 then
// + bold
Result:=Result+'1;'
else
// - bold
Result:=Result+'22;';
// + foreground
if ((Attr xor LastAttr) and $07)<>0 then
Result:=Result+'3'+ScrPalette[Attr and $07]+';';
// + background
if ((Attr xor LastAttr) and $70)<>0 then
Result:=Result+'4'+ScrPalette[(Attr and $70) shr 4]+';';
Result[Length(Result)]:='m';
end;
end;
{$ENDIF}
{$IFDEF MSDOS} {$IFDEF MSDOS}
PROCEDURE CursorOn(b: BOOLEAN); ASSEMBLER; PROCEDURE CursorOn(b: BOOLEAN); ASSEMBLER;
ASM ASM
@ -725,215 +650,7 @@ BEGIN
$1F); $1F);
END; END;
{$ENDIF} {$ENDIF}
{$IFDEF LINUX} {$IFDEF WIN32}
procedure SysWrtCharStrAtt(CharStr: Pointer; Len, X, Y: SmallWord; var Attr: Byte);
var
Src: PChar;
Dst, I: LongInt;
begin
Src := CharStr;
Dst := Y * ScreenWidth + X;
for I := 0 to Len - 1 do
begin
ScreenBuffer^[Dst + I].Chr := Src[I];
ScreenBuffer^[Dst + I].Att := Attr;
end;
SysTVShowBuf(Dst * 2, Len * 2);
end;
procedure SysTVShowBuf(Pos,Size: Integer);
var
Attr, LastAttr: Byte;
Mode: Boolean;
Reset_Wrap,
Ctrl, Data: string;
J, X, Y, X_STOP, Y_STOP, XLimit: Integer;
NextLimit: Integer;
NeedGotoXY: Boolean;
ScrCursor: Boolean;
begin
if Odd(Pos) then
begin
Dec(Pos);
Inc(Size);
end;
if Odd(Size) then
Inc(Size);
Pos:=Pos shr 1;
Size:=Size shr 1;
if Size<=0 then Exit;
if Pos+Size>ScreenWidth*ScreenHeight then
Size:=ScreenWidth*ScreenHeight-Pos;
{$IFDEF FPC}
cursoron;
{$ELSE}
CursorOn(true);
{$ENDIF}
ScrCursor := true;
if ScrCursor then
TrmWriteString(#27'[?25l'#27'7') (* hide cursor, save state *)
else
TrmWriteString( #27'7'); (* save state *)
Y := Pos div ScreenWidth;
X := Pos mod ScreenWidth;
Y_STOP := (Pos+Size) div ScreenWidth;
X_STOP := (Pos+Size) mod ScreenWidth;
Mode := False;
Data := '';
Reset_Wrap := '';
J := Pos;
NeedGotoXY := True;
repeat
if (X=X_STOP) and (Y=Y_STOP) then Break;
if NeedGotoXY then
begin
if Data<>'' then
begin
TrmWriteString(Data);
Data:='';
end;
NeedGotoXY := False;
// move Corsor to upper left start position
Ctrl := #27'[' + IntToStr(Y + 1) + ';' + IntToStr(X + 1) + 'H';
TrmWriteString(Ctrl);
LastAttr := ScreenBuffer^[J].Att xor $ff;
end;
if Y=Y_STOP then
XLimit := X_STOP
else
XLimit := ScreenWidth;
while X < XLimit do
begin
with ScreenBuffer^[J] do
begin
(*** Attribute *****************************************)
Attr := Att;
if Attr<>LastAttr then
begin
TrmWriteString(Data);
Data:='';
TrmWriteString(ColorSequence(Attr, LastAttr));
LastAttr:=Attr;
end; (* Attr<>LastAttr *)
if J = NextLimit - 1 then
if J =ScreenWidth*ScreenHeight-1 then
begin
Data := Data + #27'[7l'; (* autowrap off *)
Reset_Wrap := #27'[7h'; (* autowrap on *)
end;
(*** Character *****************************************)
case Chr of
#1..#6:
begin
if Mode then
begin
Data := Data + #27'(B'; (* select ISO-8859-1 *)
Mode := False;
end;
Data := Data + ScrGraphs[Chr];
end;
#7..#31:
begin
if not (Mode or (ScrMode in [MON1,COL1])) then
begin
Data := Data + #27'(0'; (* select vt100 graphics *)
Mode := True;
end;
Data := Data + ScrGraphs[Chr];
end;
#0, #$7f..#$9f:
Data := Data + ' ';
else
if Mode then
begin
Data := Data + #27'(B'; (* select ISO-8859-1 *)
Mode := False;
end;
Data := Data + Chr;
end; (* case Chr *)
if Length(Data) > 127 then
begin
TrmWriteString(Data);
Data := '';
end;
end; (* with ScrBuffer^[J] *)
Inc(J);
Inc(X);
end; (* while J < NextLimit *)
(* next line reached ? *)
if X=ScreenWidth then
begin
X:=0;
Inc(Y);
end;
(* optimize blank line ends *)
if (Length(Data)>3) and (X=0) then
if (Data[Length(Data)]=' ') and (Data[Length(Data)-1]=' ') and (Data[Length(Data)-2]=' ') then
begin
while (Data<>'') and (Data[Length(Data)]=' ') do
Dec(Data[0]);
Data := Data + #27'[K'; (* erase up to end of line *)
NeedGotoXY:=True;
end;
until false; (* main lines loop *)
if Mode then
Data := Data + #27'(B'; (* select ISO-8859-1 *)
TrmWriteString(Data);
if ScrCursor then
TrmWriteString(#27'[?25h'#27'8') (* show cursor, restore state *)
else
TrmWriteString( #27'8'); (* restore state *)
if Reset_Wrap<>'' then
TrmWriteString(Reset_Wrap);
end;
{$ENDIF}
{$IFNDEF MSDOS}
procedure Update_Logo(Data: Array of Char; OriginX, OriginY, DataLength: integer); procedure Update_Logo(Data: Array of Char; OriginX, OriginY, DataLength: integer);
var var
i, x, y, count, counter: Integer; i, x, y, count, counter: Integer;
@ -987,4 +704,5 @@ begin
end; end;
end; end;
{$ENDIF} {$ENDIF}
END. END.

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT NewUsers; UNIT NewUsers;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-} {$A+,B-,D-,E-,F+,I-,L-,N-,O+,R-,S+,V-}
UNIT Nodelist; UNIT Nodelist;
@ -190,7 +190,7 @@ VAR
Key: NodeType ABSOLUTE ALine; Key: NodeType ABSOLUTE ALine;
Desired: NodeType ABSOLUTE Desire; Desired: NodeType ABSOLUTE Desire;
Count: Byte; Count: Byte;
K: Word; K: Integer;
BEGIN BEGIN
Count := 0; Count := 0;
REPEAT REPEAT

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S-,V-}
UNIT OffLine; UNIT OffLine;

View File

@ -1,4 +1,3 @@
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
Unit OneLiner; Unit OneLiner;

View File

@ -172,7 +172,7 @@ TYPE
SecurityRangeType = ARRAY [0..255] OF LongInt; { Access tables } SecurityRangeType = ARRAY [0..255] OF LongInt; { Access tables }
UserIDXRec = { USERS.IDX : Sorted names listing } UserIDXRec = { USERS.IDX : Sorted names listing }
PACKED RECORD {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Name: STRING[36]; { the user's name } Name: STRING[36]; { the user's name }
Number, { user number } Number, { user number }
Left, { Left node } Left, { Left node }
@ -182,7 +182,7 @@ TYPE
END; END;
UserRecordType = { USERS.DAT : User records } UserRecordType = { USERS.DAT : User records }
PACKED RECORD {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Name, { system name } Name, { system name }
RealName: STRING[36]; { real name } RealName: STRING[36]; { real name }
@ -292,7 +292,7 @@ TYPE
Junked); Junked);
FromToInfo = { from/to information for mheaderrec } FromToInfo = { from/to information for mheaderrec }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Anon: Byte; Anon: Byte;
UserNum: SmallWord; { user number } UserNum: SmallWord; { user number }
A1S: STRING[36]; { posted as } A1S: STRING[36]; { posted as }
@ -305,7 +305,7 @@ Packed Record
END; END;
MHeaderRec = MHeaderRec =
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
From, From,
MTO: FromToInfo; { message from/to info } MTO: FromToInfo; { message from/to info }
Pointer: LongInt; { starting record OF text } Pointer: LongInt; { starting record OF text }
@ -323,7 +323,7 @@ Packed Record
END; END;
HistoryRecordType = { HISTORY.DAT : Summary logs } HistoryRecordType = { HISTORY.DAT : Summary logs }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Date: UniXTime; Date: UniXTime;
Active, Active,
Callers, Callers,
@ -340,7 +340,7 @@ Packed Record
END; END;
FileArcInfoRecordType = { Archive configuration records } FileArcInfoRecordType = { Archive configuration records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Active: Boolean; { active or not } Active: Boolean; { active or not }
Ext: STRING[3]; { file extension } Ext: STRING[3]; { file extension }
ListLine, { /x for internal; x: 1=ZIP, 2=ARC/PAK, 3=ZOO, 4=LZH } ListLine, { /x for internal; x: 1=ZIP, 2=ARC/PAK, 3=ZOO, 4=LZH }
@ -359,7 +359,7 @@ Packed Record
MFlagSet = SET OF ModemFlagType; MFlagSet = SET OF ModemFlagType;
LineRec = LineRec =
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
InitBaud: LongInt; { initialization baud } InitBaud: LongInt; { initialization baud }
ComPort: Byte; { COM port number } ComPort: Byte; { COM port number }
MFlags: MFlagSet; { status flags } MFlags: MFlagSet; { status flags }
@ -394,7 +394,7 @@ Packed Record
END; END;
ValidationRecordType = ValidationRecordType =
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Key, { Key '!' to '~' } Key, { Key '!' to '~' }
ExpireTo: Char; { validation level to expire to } ExpireTo: Char; { validation level to expire to }
Description: STRING[30]; { description } Description: STRING[30]; { description }
@ -412,7 +412,7 @@ Packed Record
END; END;
GeneralRecordType = GeneralRecordType =
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
ForgotPWQuestion: STRING[70]; ForgotPWQuestion: STRING[70];
QWKWelcome, { QWK welcome file name } QWKWelcome, { QWK welcome file name }
@ -428,7 +428,7 @@ Packed Record
TempPath, { TEMP path } TempPath, { TEMP path }
ProtPath, { PROT path } ProtPath, { PROT path }
ArcsPath, { ARCS path } ArcsPath, { ARCS path }
MultPath, { MULT path } lMultPath, { MULT path }
FileAttachPath, { directory for file attaches } FileAttachPath, { directory for file attaches }
QWKLocalPath, { QWK path for local usage } QWKLocalPath, { QWK path for local usage }
DefEchoPath, { default echomail path } DefEchoPath, { default echomail path }
@ -621,7 +621,7 @@ Packed Record
ARRAY [1..3] OF STRING[40]; { BBS comment files for archives } ARRAY [1..3] OF STRING[40]; { BBS comment files for archives }
Aka: ARRAY [0..20] OF Aka: ARRAY [0..20] OF
Packed Record { 20 Addresses } {$IFDEF WIN32} PACKED {$ENDIF} RECORD { 20 Addresses }
Zone, { 21st is for UUCP address } Zone, { 21st is for UUCP address }
Net, Net,
Node, Node,
@ -644,13 +644,13 @@ Packed Record
END; END;
ShortMessageRecordType = { SHORTMSG.DAT : One-line messages } ShortMessageRecordType = { SHORTMSG.DAT : One-line messages }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Msg: AStr; Msg: AStr;
Destin: SmallInt; Destin: SmallInt;
END; END;
VotingRecordType = { VOTING.DAT : Voting records } VotingRecordType = { VOTING.DAT : Voting records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Question1, { Voting Question 1 } Question1, { Voting Question 1 }
Question2: STRING[60]; { Voting Question 2 } Question2: STRING[60]; { Voting Question 2 }
ACS: ACString; { ACS required to vote on this } ACS: ACString; { ACS required to vote on this }
@ -659,7 +659,7 @@ Packed Record
CreatedBy: STRING[36]; { who created it } CreatedBy: STRING[36]; { who created it }
AddAnswersACS: ACString; { ACS required to add choices } AddAnswersACS: ACString; { ACS required to add choices }
Answers: ARRAY [1..25] OF Answers: ARRAY [1..25] OF
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Answer1, { answer description } Answer1, { answer description }
Answer2: STRING[65]; { answer description #2 } Answer2: STRING[65]; { answer description #2 }
NumVotedAnswer: SmallInt; { # user's who picked this answer } NumVotedAnswer: SmallInt; { # user's who picked this answer }
@ -683,7 +683,7 @@ Packed Record
MAFlagSet = SET OF MessageAreaFlagType; MAFlagSet = SET OF MessageAreaFlagType;
MessageAreaRecordType = { MBASES.DAT : Message area records } MessageAreaRecordType = { MBASES.DAT : Message area records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Name: STRING[40]; { message area description } Name: STRING[40]; { message area description }
FileName: STRING[8]; { HDR/DAT data filename } FileName: STRING[8]; { HDR/DAT data filename }
MsgPath: STRING[40]; {Not Used} { messages pathname } MsgPath: STRING[40]; {Not Used} { messages pathname }
@ -722,7 +722,7 @@ Packed Record
FAFlagSet = SET OF FileAreaFlagType; FAFlagSet = SET OF FileAreaFlagType;
FileAreaRecordType = { FBASES.DAT : File area records } FileAreaRecordType = { FBASES.DAT : File area records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
AreaName: STRING[40]; { area description } AreaName: STRING[40]; { area description }
FileName: STRING[8]; { filename + ".DIR" } FileName: STRING[8]; { filename + ".DIR" }
DLPath, { download path } DLPath, { download path }
@ -750,7 +750,7 @@ Packed Record
FIFlagSet = SET OF FileInfoFlagType; FIFlagSet = SET OF FileInfoFlagType;
FileInfoRecordType = { *.DIR : File records } FileInfoRecordType = { *.DIR : File records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
FileName: STRING[12]; { Filename } FileName: STRING[12]; { Filename }
Description: STRING[50]; { File description } Description: STRING[50]; { File description }
FilePoints: SmallInt; { File points } FilePoints: SmallInt; { File points }
@ -765,7 +765,7 @@ Packed Record
END; END;
LastCallerRec = { LASTON.DAT : Last few callers records } LastCallerRec = { LASTON.DAT : Last few callers records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Node: Byte; { Node number } Node: Byte; { Node number }
UserName: STRING[36]; { User name OF caller } UserName: STRING[36]; { User name OF caller }
Location: STRING[30]; { Location OF caller } Location: STRING[30]; { Location OF caller }
@ -815,7 +815,7 @@ Packed Record
EventDaysType = SET OF 0..6; {Set of event days} EventDaysType = SET OF 0..6; {Set of event days}
EventRecordType = {Events - EVENTS.DAT} EventRecordType = {Events - EVENTS.DAT}
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
EventDescription: STRING[30]; {Description of the Event} EventDescription: STRING[30]; {Description of the Event}
EventDayOfMonth: BYTE; {If monthly, the Day of Month} EventDayOfMonth: BYTE; {If monthly, the Day of Month}
EventDays: EventDaysType; {If Daily, the Days Active} EventDays: EventDaysType; {If Daily, the Days Active}
@ -850,7 +850,7 @@ Packed Record
ProtocolCodeType = ARRAY [1..6] OF STRING[6]; ProtocolCodeType = ARRAY [1..6] OF STRING[6];
ProtocolRecordType = { PROTOCOL.DAT records } ProtocolRecordType = { PROTOCOL.DAT records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
PRFlags: PRFlagSet; { Protocol Flags } PRFlags: PRFlagSet; { Protocol Flags }
CKeys: STRING[14]; { Command Keys } CKeys: STRING[14]; { Command Keys }
Description: STRING[40]; { Description } Description: STRING[40]; { Description }
@ -870,7 +870,7 @@ Packed Record
END; END;
ConferenceRecordType = { CONFRENC.DAT : Conference data } ConferenceRecordType = { CONFRENC.DAT : Conference data }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Key: Char; { key '@' to 'Z' } Key: Char; { key '@' to 'Z' }
Name: STRING[30]; { name of conference } Name: STRING[30]; { name of conference }
ACS: ACString; { access requirement } ACS: ACString; { access requirement }
@ -887,7 +887,7 @@ Packed Record
NodeFlagSet = SET OF NodeFlagType; NodeFlagSet = SET OF NodeFlagType;
NodeRecordType = { MULTNODE.DAT } NodeRecordType = { MULTNODE.DAT }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
User: SmallWord; { What user number } User: SmallWord; { What user number }
UserName: STRING[36]; { User's name } UserName: STRING[36]; { User's name }
CityState: STRING[30]; { User's location } CityState: STRING[30]; { User's location }
@ -905,7 +905,7 @@ Packed Record
END; END;
RoomRec = { ROOM.DAT } RoomRec = { ROOM.DAT }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Topic: STRING[40]; { Topic OF this room } Topic: STRING[40]; { Topic OF this room }
Anonymous: Boolean; { Is Room anonymous ? } Anonymous: Boolean; { Is Room anonymous ? }
Private: Boolean; { Is Room private ? } Private: Boolean; { Is Room private ? }
@ -914,13 +914,13 @@ Packed Record
END; END;
ScanRec = { *.SCN files / MESSAGES } ScanRec = { *.SCN files / MESSAGES }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
NewScan: Boolean; { Scan this area? } NewScan: Boolean; { Scan this area? }
LastRead: UnixTime; { Last date read } LastRead: UnixTime; { Last date read }
END; END;
SchemeRec = { Scheme.dat } SchemeRec = { Scheme.dat }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
Description: STRING[30]; { Description OF the color scheme } Description: STRING[30]; { Description OF the color scheme }
Color: ARRAY [1..200] OF Byte; { Colors in scheme } Color: ARRAY [1..200] OF Byte; { Colors in scheme }
END; END;
@ -938,7 +938,7 @@ Packed Record
} }
BBSListRecordType = { *.BBS file records } BBSListRecordType = { *.BBS file records }
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
RecordNum, { Number OF the Record For Edit } RecordNum, { Number OF the Record For Edit }
UserID, { User ID OF person adding this } UserID, { User ID OF person adding this }
MaxNodes : LongInt; { Maximum Number Of Nodes } MaxNodes : LongInt; { Maximum Number Of Nodes }
@ -994,7 +994,7 @@ Packed Record
CmdFlagSet = SET OF CmdFlagType; CmdFlagSet = SET OF CmdFlagType;
MenuRec = MenuRec =
Packed Record {$IFDEF WIN32} PACKED {$ENDIF} RECORD
LDesc: ARRAY [1..3] OF STRING[100]; { Menu Or Command Long Description ARRAY } LDesc: ARRAY [1..3] OF STRING[100]; { Menu Or Command Long Description ARRAY }
ACS: ACString; { Access Requirements } ACS: ACString; { Access Requirements }
NodeActivityDesc: STRING[50]; NodeActivityDesc: STRING[50];

View File

@ -7,25 +7,18 @@
{$IFDEF MSDOS} {$IFDEF MSDOS}
{$M 35500,0,131072} {$M 35500,0,131072}
{$ENDIF} {$ENDIF}
{$MODE TP}
{ }
{ _______ __ }
{ | _ .-----.-----.-----.-----.---.-.--| .-----. }
{ |. l | -__| | -__| _ | _ | _ | -__| }
{ |. _ |_____|__|__|_____|___ |___._|_____|_____| }
{ |: | | |_____| }
{ |::.|:. | }
{ `--- ---' }
{ }
{ R E N E G A D E }
{ =============== }
{$A+} { Align Data for faster execution } {$A+} { Align Data for faster execution }
{$B-} { Shortcut Boolean eval } {$B-} { Shortcut Boolean eval }
{$D+} { No Debug Info } {$D+} { No Debug Info }
{$IFNDEF UNIX}
{$E-} { No Math-Co library } {$E-} { No Math-Co library }
{$ENDIF} {$F+} { Force Far Calls }
{$I-} { Disable I/O check } {$I-} { Disable I/O check }
{$L+} { Local Symbols, Ignored IF D-, don't need cause of D- }
{$N-} { No Math-Co use }
{$P+} { Allow OpenString } {$P+} { Allow OpenString }
{$O+} { Use Overlays? } {$O+} { Use Overlays? }
{$Q-} { No overflow check } {$Q-} { No overflow check }
@ -37,6 +30,8 @@
PROGRAM Renegade; PROGRAM Renegade;
USES USES
OverLay,
{ OvrUMB,}
Crt, Crt,
Dos, Dos,
Boot, Boot,
@ -56,7 +51,7 @@ USES
NewUsers, NewUsers,
OffLine, OffLine,
TimeFunc, TimeFunc,
WfCMenu, rpport; WfCMenu;
{$O MsgPack } {$O Common1 } {$O Common2 } {$O Common3 } {$O Boot } {$O MsgPack } {$O Common1 } {$O Common2 } {$O Common3 } {$O Boot }
{$O WfcMenu } {$O Timefunc } {$O Sysop1 } {$O Sysop2 } {$O Offline } {$O WfcMenu } {$O Timefunc } {$O Sysop1 } {$O Sysop2 } {$O Offline }
@ -78,8 +73,11 @@ USES
CONST CONST
NeedToHangUp: Boolean = FALSE; NeedToHangUp: Boolean = FALSE;
BBSVersion: Astr = '1.20.1/'
{$IFDEF LINUX} + 'Linux'; {$ENDIF}
{$IFDEF WIN32} + 'Win32'; {$ENDIF}
{$IFDEF WIN64} + 'Win64'; {$ENDIF}
{$IFDEF MSDOS} + 'Dos16'; {$ENDIF}
VAR VAR
ExitSave: Pointer; ExitSave: Pointer;
@ -89,7 +87,7 @@ VAR
S: Astr; S: Astr;
Counter: Byte; Counter: Byte;
Counter1: Integer; Counter1: Integer;
BBSVersion: Astr;
PROCEDURE ErrorHandle; PROCEDURE ErrorHandle;
VAR VAR

View File

@ -5,22 +5,13 @@ unit RPScreen;
interface interface
{$IFDEF WIN32}
uses uses
{$IFDEF WINDOWS}
Windows; Windows;
{$ELSE}
Unix, SysUtils, Crt;
{$ENDIF}
type
{$IFDEF FPC}
TCharInfo = packed record
Ch: char;
Attr: byte;
end;
{$ENDIF}
TScreenBuf = Array[1..25, 1..80] of TCharInfo; // REETODO Don't hardcode to 80x25
type
TScreenBuf = Array[1..25, 1..80] of TCharInfo; // REETODO Don't hardcode to 80x25
{$ENDIF}
procedure RPBlockCursor; procedure RPBlockCursor;
procedure RPGotoXY(xy: Word); procedure RPGotoXY(xy: Word);
@ -41,9 +32,8 @@ var
StdOut: THandle; StdOut: THandle;
{$ENDIF} {$ENDIF}
{$IFNDEF MSDOS} {$IFDEF WIN32}
procedure RPBlockCursor; procedure RPBlockCursor;
{$IFDEF WINDOWS}
var var
CCI: TConsoleCursorInfo; CCI: TConsoleCursorInfo;
begin begin
@ -51,12 +41,6 @@ begin
CCI.dwSize := 15; CCI.dwSize := 15;
SetConsoleCursorInfo(StdOut, CCI); SetConsoleCursorInfo(StdOut, CCI);
end; end;
{$ELSE}
begin
cursorbig;
end;
{$ENDIF}
procedure RPGotoXY(xy: Word); procedure RPGotoXY(xy: Word);
var var

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT STATS; UNIT STATS;
@ -172,7 +172,7 @@ END;
PROCEDURE SearchTop20AreaFileSpec(FArea: Integer; VAR Top20File: Top20FileArray); PROCEDURE SearchTop20AreaFileSpec(FArea: Integer; VAR Top20File: Top20FileArray);
VAR VAR
F: FileInfoRecordType; F: FileInfoRecordType;
DirFileRecNum: LongInt; DirFileRecNum: Integer;
BEGIN BEGIN
IF (FileArea <> FArea) THEN IF (FileArea <> FArea) THEN
ChangeFileArea(FArea); ChangeFileArea(FArea);

427
SOURCE/SYSOP2A.PAS Normal file
View File

@ -0,0 +1,427 @@
{$IFDEF WIN32}
{$I DEFINES.INC}
{$ENDIF}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT SysOp2A;
INTERFACE
PROCEDURE MainBBSConfiguration;
IMPLEMENTATION
USES
Crt,
Common,
SysOp7,
TimeFunc;
{
RGSysCfgStr(1,FALSE)
$Main_BBS_Configuration
%CL^5Main BBS Configuration:^1
^1A. BBS name/number : ^5%BN ^1(^5%BP^1)
^1B. Telnet Url : ^5%TN
^1C. SysOp's name : ^5%SN{15 ^1D. Renegade Version : ^5%VR
^1E. SysOp chat hours : ^5%CS ^1F. Minimum baud hours : ^5%BL
^1G. Regular DL hours : ^5%DH ^1H. Minimum baud DL hrs: ^5%BM
^1I. BBS Passwords : ^1J. Pre-event warning : ^5%ET seconds
^1K. System Menus : ^1L. Bulletin Prefix : ^5%PB
^1M. MultiNode support: ^5%MN ^1N. Network mode : ^5%NM
^10. Main data files dir. : ^5%PD
^11. Miscellaneous Files dir.: ^5%PM
^12. Message file storage dir: ^5%P1
^13. Nodelist (Version 7) dir: ^5%P2
^14. Log files/trap files dir: ^5%PL
^15. Temporary directory : ^5%PT
^16. Protocols directory : ^5%PP
^17. Archivers directory : ^5%P7
^18. File attach directory : ^5%PF
^19. RAM drive/MultiNode path: ^5%P3
Enter selection [^5A^4-^5N^4,^50^4-^59^4,^5Q^4=^5Quit^4]: @
$
RGSysCfgStr(2,TRUE)
$Main_BBS_Configuration_BBS_Name
%LFNew BBS name: @
$
RGSysCfgStr(3,TRUE)
$Main_BBS_Configuration_BBS_Phone
%LFNew BBS phone number: @
$
RGSysCfgStr(4,TRUE)
$Main_BBS_Configuration_Telnet_URL
%LF^4New Telnet Url:%LF^4: @
$
RGSysCfgStr(5,TRUE)
$Main_BBS_Configuration_SysOp_Name
%LFNew SysOp name: @
$
RGNoteStr(0,FALSE)
$Internal_Use_Only
%LF^7This is for internal use only.
%PA
$
RGNoteStr(1,FALSE)
$Only_Change_Locally
%LF^7This can only be changed locally.
%PA
$
RGSysCfgStr(6,TRUE)
$Main_BBS_Configuration_SysOp_Chat_Hours
%LFDo you want to declare sysop chat hours? @
$
RGSysCfgStr(7,TRUE)
$Main_BBS_Configuration_Minimum_Baud_Hours
%LFDo you want to declare hours people at the minimum baud can logon? @
$
RGSysCfgStr(8,TRUE)
$Main_BBS_Configuration_Download_Hours
%LFDo you want to declare download hours? @
$
RGSysCfgStr(9,TRUE)
$Main_BBS_Configuration_Minimum_Baud_Download_Hours
%LFDo you want to declare hours people at minimum baud can download? @
$
RGSysCfgStr(10,FALSE)
$Main_BBS_Configuration_SysOp_Password_Menu
%CL^5System Passwords:^1
^1A. SysOp password : ^5%P4
^1B. New user password : ^5%P5
^1C. Baud override password: ^5%P6
Enter selection [^5A^4-^5C^4,^5Q^4=^5Quit^4]: @
$
RGSysCfgStr(11,TRUE)
$Main_BBS_Configuration_SysOp_Password
%LFNew SysOp password: @
$
RGSysCfgStr(12,TRUE)
$Main_BBS_Configuration_New_User_Password
%LFNew new-user password: @
$
RGSysCfgStr(13,TRUE)
$Main_BBS_Configuration_Baud_Override_Password
%LFNew minimum baud rate override password: @
$
RGSysCfgStr(14,TRUE)
$Main_BBS_Configuration_Pre_Event_Time
%LFNew pre-event warning time@
$
RGSysCfgStr(15,FALSE)
$Main_BBS_Configuration_System_Menus
%CL^5System Menus:^1
^11. Global : ^5%M1
^12. All Start : ^5%M2
^13. Shutle logon : ^5%M3
^14. New user info: ^5%M4
^15. Message Read : ^5%M5
^16. File List : ^5%M6
Enter selection [^51^4-^56^4,^5Q^4=^5Quit^4]: @
$
RGSysCfgStr(16,TRUE)
$Main_BBS_Configuration_System_Menus_Global
%LFMenu for global commands (0=None)@
$
RGSysCfgStr(17,TRUE)
$Main_BBS_Configuration_System_Menus_Start
%LFMenu to start all users at@
$
RGSysCfgStr(18,TRUE)
$Main_BBS_Configuration_System_Menus_Shuttle
%LFMenu for shuttle logon (0=None)@
$
RGSysCfgStr(19,TRUE)
$Main_BBS_Configuration_System_Menus_New_User
%LFMenu for new user information@
$
RGSysCfgStr(20,TRUE)
$Main_BBS_Configuration_System_Menus_Message_Read
%LFMenu for message read@
$
RGSysCfgStr(21,TRUE)
$Main_BBS_Configuration_System_Menus_File_Listing
%LFMenu for file listing@
$
RGNoteStr(2,FALSE)
$Invalid_Menu_Number
%LF^7Invalid menu number.
%PA
$
RGSysCfgStr(22,TRUE)
$Main_BBS_Configuration_Bulletin_Prefix
%LFDefault bulletin prefix: @
$
RGNoteStr(1,FALSE)
$Only_Change_Locally
%LF^7This can only be changed locally.
%PA
$
RGSysCfgStr(23,TRUE)
$Main_BBS_Configuration_Local_Security
%LFDo you want local security to remain on? @
$
RGSysCfgStr(24,TRUE)
$Main_BBS_Configuration_Data_Path
%LF^4New data files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(25,TRUE)
$Main_BBS_Configuration_Misc_Path
%LF^4New miscellaneous files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(26,TRUE)
$Main_BBS_Configuration_Msg_Path
%LF^4New message files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(27,TRUE)
$Main_BBS_Configuration_NodeList_Path
%LF^4New nodelist files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(28,TRUE)
$Main_BBS_Configuration_Log_Path
%LF^4New sysop log files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(29,TRUE)
$Main_BBS_Configuration_Temp_Path
%LF^4New temporary files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(30,TRUE)
$Main_BBS_Configuration_Protocol_Path
%LF^4New protocol files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(31,TRUE)
$Main_BBS_Configuration_Archive_Path
%LF^4New archive files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(32,TRUE)
$Main_BBS_Configuration_Attach_Path
%LF^4New file attach files path (^5End with a ^4"^5\^4"):%LF^4: @
$
RGSysCfgStr(33,TRUE)
$Main_BBS_Configuration_MultNode_Path
%LF^4New multi-node files path (^5End with a ^4"^5\^4"):%LF^4: @
$
}
PROCEDURE GetTimeRange(CONST RGStrNum: LongInt; VAR LoTime,HiTime: SmallInt);
VAR
TempStr: Str5;
LowTime,
HighTime: Integer;
BEGIN
IF (NOT (PYNQ(RGSysCfgStr(RGStrNum,TRUE),0,FALSE))) THEN
BEGIN
LowTime := 0;
HighTime := 0;
END
ELSE
BEGIN
NL;
Print('All entries in 24 hour time. Hour: (0-23), Minute: (0-59)');
NL;
Prt('Starting time: ');
MPL(5);
InputFormatted('',TempStr,'##:##',TRUE);
IF (StrToInt(Copy(TempStr,1,2)) IN [0..23]) AND (StrToInt(Copy(TempStr,4,2)) IN [0..59]) THEN
LowTime := ((StrToInt(Copy(TempStr,1,2)) * 60) + StrToInt(Copy(TempStr,4,2)))
ELSE
LowTime := 0;
NL;
Prt('Ending time: ');
MPL(5);
InputFormatted('',TempStr,'##:##',TRUE);
IF (StrToInt(Copy(TempStr,1,2)) IN [0..23]) AND (StrToInt(Copy(TempStr,4,2)) IN [0..59]) THEN
HighTime := ((StrToInt(Copy(TempStr,1,2)) * 60) + StrToInt(Copy(TempStr,4,2)))
ELSE
HighTime := 0;
END;
NL;
Print('Hours: '+PHours('Always allowed',LowTime,HighTime));
NL;
IF PYNQ('Are you sure this is what you want? ',0,FALSE) THEN
BEGIN
LoTime := LowTime;
HiTime := HighTime;
END;
END;
PROCEDURE MainBBSConfiguration;
VAR
LineFile: FILE OF LineRec;
Cmd: Char;
Changed: Boolean;
BEGIN
Assign(LineFile,General.DataPath+'NODE'+IntToStr(ThisNode)+'.DAT');
Reset(LineFile);
Seek(LineFile,0);
Read(LineFile,Liner);
REPEAT
WITH General DO
BEGIN
Abort := FALSE;
Next := FALSE;
RGSysCfgStr(1,FALSE);
OneK(Cmd,'QABCDEFGHIJKLMN0123456789'^M,TRUE,TRUE);
CASE Cmd OF
'A' : BEGIN
InputWNWC(RGSysCfgStr(2,TRUE),BBSName,(SizeOf(BBSName) - 1),Changed);
InputFormatted(RGSysCfgStr(3,TRUE),BBSPhone,'###-###-####',FALSE);
END;
'B' : InputWN1(RGSysCfgStr(4,TRUE),Liner.NodeTelnetURL,(SizeOf(Liner.NodeTelnetURL) - 1),[InteractiveEdit],Changed);
'C' : InputWN1(RGSysCfgStr(5,TRUE),SysOpName,(SizeOf(SysOpName) - 1),[InterActiveEdit],Changed);
'D' : RGNoteStr(0,FALSE);
'E' : IF (InCom) THEN
RGNoteStr(1,FALSE)
ELSE
GetTimeRange(6,lLowTime,HiTime);
'F' : GetTimeRange(7,MinBaudLowTime,MinBaudHiTime);
'G' : GetTimeRange(8,DLLowTime,DLHiTime);
'H' : GetTimeRange(9,MinBaudDLLowTime,MinBaudDLHiTime);
'I' : BEGIN
REPEAT
RGSysCfgStr(10,FALSE);
OneK(Cmd,^M'ABC',TRUE,TRUE);
CASE Cmd OF
'A' : InputWN1(RGSysCfgStr(11,TRUE),SysOpPw,(SizeOf(SysOpPW) - 1),[InterActiveEdit,UpperOnly],Changed);
'B' : InputWN1(RGSysCfgStr(12,TRUE),NewUserPW,(SizeOf(SysOpPW) - 1),[InterActiveEdit,UpperOnly],Changed);
'C' : InputWN1(RGSysCfgStr(13,TRUE),MinBaudOverride,(SizeOf(SysOpPW) - 1),
[InterActiveEdit,UpperOnly],Changed);
END;
UNTIL (Cmd = ^M) OR (HangUp);
Cmd := #0;
END;
'J' : InputByteWOC(RGSysCfgStr(14,TRUE),EventWarningTime,[DisplayValue,NumbersOnly],0,255);
'K' : BEGIN
REPEAT
RGSysCfgStr(15,FALSE);
OneK(Cmd,^M'123456Q',TRUE,TRUE);
CASE Cmd OF
'1' : FindMenu(RGSysCfgStr(16,TRUE),GlobalMenu,0,NumMenus,Changed);
'2' : FindMenu(RGSysCfgStr(17,TRUE),AllStartMenu,1,NumMenus,Changed);
'3' : FindMenu(RGSysCfgStr(18,TRUE),ShuttleLogonMenu,0,NumMenus,Changed);
'4' : FindMenu(RGSysCfgStr(19,TRUE),NewUserInformationMenu,1,NumMenus,Changed);
'5' : FindMenu(RGSysCfgStr(20,TRUE),MessageReadMenu,1,NumMenus,Changed);
'6' : FindMenu(RGSysCfgStr(21,TRUE),FileListingMenu,1,NumMenus,Changed);
END;
UNTIL (Cmd IN [^M,'Q']) OR (HangUp);
Cmd := #0;
END;
'L' : InputWN1(RGSysCfgStr(22,TRUE),BulletPrefix,(SizeOf(BulletPrefix) - 1),[InterActiveEdit,UpperOnly],Changed);
'M' : IF (InCom) THEN
RGNoteStr(1,FALSE)
ELSE
BEGIN
MultiNode := (NOT MultiNode);
SaveGeneral(FALSE);
ClrScr;
Writeln('Please restart Renegade.');
Halt;
END;
'N' : BEGIN
NetworkMode := (NOT NetworkMode);
IF (NetworkMode) THEN
LocalSec := TRUE
ELSE
LocalSec := PYNQ(RGSysCfgStr(23,TRUE),0,FALSE);
END;
'0' : InputPath(RGSysCfgStr(24,TRUE),DataPath,TRUE,FALSE,Changed);
'1' : InputPath(RGSysCfgStr(25,TRUE),MiscPath,TRUE,FALSE,Changed);
'2' : InputPath(RGSysCfgStr(26,TRUE),MsgPath,TRUE,FALSE,Changed);
'3' : InputPath(RGSysCfgStr(27,TRUE),NodePath,TRUE,FALSE,Changed);
'4' : InputPath(RGSysCfgStr(28,TRUE),LogsPath,TRUE,FALSE,Changed);
'5' : InputPath(RGSysCfgStr(29,TRUE),TempPath,FALSE,FALSE,Changed);
'6' : InputPath(RGSysCfgStr(30,TRUE),ProtPath,TRUE,FALSE,Changed);
'7' : InputPath(RGSysCfgStr(31,TRUE),ArcsPath,TRUE,FALSE,Changed);
'8' : InputPath(RGSysCfgStr(32,TRUE),FileAttachPath,TRUE,FALSE,Changed);
'9' : InputPath(RGSysCfgStr(33,TRUE),lMultPath,TRUE,FALSE,Changed);
END;
END;
UNTIL (Cmd = 'Q') OR (HangUp);
Seek(LineFile,0);
Write(LineFile,Liner);
Close(LineFile);
LastError := IOResult;
END;
END.

View File

@ -481,7 +481,7 @@ VAR
CmdStr := '12345678' CmdStr := '12345678'
ELSE ELSE
CmdStr := '12345678[]FJL'; CmdStr := '12345678[]FJL';
LOneK('%LFModify menu [^5?^4=^5Help^4]: ',Cmd1,'Q?'+CmdStr+^M,TRUE,TRUE); LOneK('%LFModify menu [^5?^4=^5Help^4]: ',Cmd1,'Q?'+CmdStr++^M,TRUE,TRUE);
CASE Cmd1 OF CASE Cmd1 OF
'1' : REPEAT '1' : REPEAT
TempScheme1.Description := Description; TempScheme1.Description := Description;

View File

@ -159,7 +159,7 @@ VAR
PrintACR('^15. Decompression cmdline : ^5'+DisplayArcStr(UnArcLine)); PrintACR('^15. Decompression cmdline : ^5'+DisplayArcStr(UnArcLine));
PrintACR('^16. File testing cmdline : ^5'+DisplayArcStr(TestLine)); PrintACR('^16. File testing cmdline : ^5'+DisplayArcStr(TestLine));
PrintACR('^17. Add comment cmdline : ^5'+DisplayArcStr(CmtLine)); PrintACR('^17. Add comment cmdline : ^5'+DisplayArcStr(CmtLine));
PrintACR('^18. Errorlevel for success : ^5'+AOnOff(SuccLevel <> - 1,IntToStr(SuccLevel),'-1 (ignores)')); PrintACR('^18. Errorlevel for success : ^5'++AOnOff(SuccLevel <> - 1,IntToStr(SuccLevel),'-1 (ignores)'));
END; END;
IF (NOT Editing) THEN IF (NOT Editing) THEN
CmdStr := '12345678' CmdStr := '12345678'

View File

@ -17,11 +17,7 @@ PROCEDURE TEdit(CONST FSpec: AStr);
IMPLEMENTATION IMPLEMENTATION
USES USES
Dos Dos;
{$IFDEF LINUX}
,Linux
{$ENDIF}
;
PROCEDURE TEdit1; PROCEDURE TEdit1;
VAR VAR
@ -72,7 +68,6 @@ VAR
I: Integer; I: Integer;
Done, Done,
AllRead: Boolean; AllRead: Boolean;
MemAvail: Integer;
PROCEDURE InLi(VAR S1: AStr); PROCEDURE InLi(VAR S1: AStr);
VAR VAR
@ -182,10 +177,7 @@ VAR
END; END;
FUNCTION NewPtr(VAR x: StrPtr): Boolean; FUNCTION NewPtr(VAR x: StrPtr): Boolean;
Var
MaxAvail : Integer;
BEGIN BEGIN
MaxAvail := 2048;
IF (Used <> NIL) THEN IF (Used <> NIL) THEN
BEGIN BEGIN
x := Used; x := Used;

View File

@ -1,7 +1,7 @@
{$IFDEF WIN32} {$IFDEF WIN32}
{$I DEFINES.INC} {$I DEFINES.INC}
{$ENDIF} {$ENDIF}
{$MODE TP}
{$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-} {$A+,B-,D+,E-,F+,I-,L+,N-,O+,R-,S+,V-}
UNIT SysOp9; UNIT SysOp9;
@ -119,7 +119,7 @@ VAR
'T' : Add := AOnOff((MemFileArea.ArcType = 0),'*None*',General.FileArcInfo[MemFileArea.ArcType].Ext); 'T' : Add := AOnOff((MemFileArea.ArcType = 0),'*None*',General.FileArcInfo[MemFileArea.ArcType].Ext);
END; END;
'C' : CASE UpCase(S[Index + 2]) OF 'C' : CASE UpCase(S[Index + 2]) OF
'T' : Add := AOnOff((MemFileArea.CmtType = 0),'*None*',IntToStr(MemFileArea.CmtType)); 'T' : Add := +AOnOff((MemFileArea.CmtType = 0),'*None*',IntToStr(MemFileArea.CmtType));
END; END;
'D' : CASE UpCase(S[Index + 2]) OF 'D' : CASE UpCase(S[Index + 2]) OF
'D' : Add := MCIVars1.Drive; 'D' : Add := MCIVars1.Drive;
@ -178,14 +178,14 @@ VAR
TotLoad: LongInt; TotLoad: LongInt;
Found: Boolean; Found: Boolean;
BEGIN BEGIN
Assign(StrPointerFile,General.MultPath+'FAEPR.DAT'); Assign(StrPointerFile,General.LMultPath+'FAEPR.DAT');
Reset(StrPointerFile); Reset(StrPointerFile);
Seek(StrPointerFile,StrNum); Seek(StrPointerFile,StrNum);
Read(StrPointerFile,StrPointer); Read(StrPointerFile,StrPointer);
Close(StrPointerFile); Close(StrPointerFile);
LastError := IOResult; LastError := IOResult;
TotLoad := 0; TotLoad := 0;
Assign(RGStrFile,General.MultPath+'FAETX.DAT'); Assign(RGStrFile,General.LMultPath+'FAETX.DAT');
Reset(RGStrFile,1); Reset(RGStrFile,1);
Seek(RGStrFile,(StrPointer.Pointer - 1)); Seek(RGStrFile,(StrPointer.Pointer - 1));
REPEAT REPEAT

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