home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Beijing Paradise BBS Backup
/
PARADISE.ISO
/
software
/
BBSDOORW
/
AFIX_416.ARJ
/
STRUCT.416
< prev
next >
Wrap
Text File
|
1993-01-16
|
13KB
|
381 lines
(*****************************************************************************
* ALLFIX 4.16 Structure files *
* Copyright (C) 92,1993 Harald Harms, all rights reserved *
* *
* Information in this document is subject to change *
* without prior notice. *
*****************************************************************************)
Const CR = #$0D;
CtrlA = #$01;
SoftCR = #$8D;
LF = #$0A;
BoolType : Array[False..True] of String[3] = ('Yes','No ');
_announce = $0001; (* Used for Attrib in File echo *)
_replace = $0002; (* setup *)
_convertall = $0004;
_passthru = $0008;
_dupecheck = $0010;
_fileid = $0020;
_visible = $0040;
_tinysb = $0080;
_NoTouch = $0200;
_SendOnly = $0001; (* Used for Export Arrays *)
_ReceiveOnly = $0002;
_Both = $0004;
_Passive = $0008;
_AdoptFile = 1; (* Used for Attrib in magic file *)
_ExecCommand = 2; (* name setup *)
_ForwardTo = 3;
_MoveToArea = 4;
_NoForward = 5;
_OtherPath = 6;
_UpdateAlias = 7;
_CopyFile = 8;
_KeepNum = 9;
_HatchNew = 10;
_PickUpFile = 11;
ExportSize = 255; (* Size of the export array *)
Type NetAddress = record
Zone,
Net,
Node,
Point : Word;
End;
PathStr = String[60];
ZoneNet = Record
Zone,
Net: word
End;
ExportEntry = Record
Address: NetAddress;
Status: byte;
End;
ExportArray = Array[1..ExportSize] of ExportEntry;
ArcRec = Record
Arc : String[12];
ArcCmd : String[20];
UnArc : String[12];
UnArcCmd: String[20];
End;
UplinkRec = Record
Aka : NetAddress;
MgrProgram : String[8];
MgrPassword : String[16];
Attrib : word;
(* bit 0 - add prefix
bit 1 - unconditional
bit 2 - direct *)
Groups : String[26];
AreasFile : String[12];
UseAka : Byte;
End;
ALLFIXcfg = Record
Crc : Longint; (* Not used anymore *)
Extra61, (* 61 bytes of unused space *)
NETmail,
MSGpath,
Inbound,
LOGfile : PathStr;
Extra2 : Byte;
SysOp : String[30];
RKey : String[24];
FileAreas : array[1..200] of boolean;
ListPath : PathStr;
BBSname : String[30];
Baud : String[5];
Flags : String[30];
Location : String[30];
Aka : Array[0..10] of NetAddress;
Origin : Array[1..20] of String[60];
Days : Array[1..7] of string[20];
Months : Array[1..12] of string[20];
Comment : String[60];
Mode1Line1,
Mode1Line2 : String[75];
GroupNames : Array[1..26] of String[20];
Pline1,
Pline2,
Pline3 : String[30];
TicPath,
Alias,
Semaphore : PathStr;
KeepDate : Boolean;
Rescan : Byte;
(* 0 - None
1 - FrontDoor
2 - InterMail
3 - D'Bridge *)
KeepNet,
KeepRec : Boolean;
Swap : Byte;
Exclude : Array[1..20] of String[12];
RcvdPath : PathStr;
DefaultAdd : PathStr;
FileCnt : String[5];
Arc : Array[1..10] of ArcRec;
PktPath : PathStr;
FakeAka : NetAddress;
PktOut : PathStr;
Queue : PathStr;
GroupsDef : Record
Header,
Footer : string[60];
From,
Too : String[30];
Subject: String[60];
Extra : Array[1..255] of byte;
End;
FareasDef : Record
Group : Char;
Message: String[12];
Keep : byte;
Include: Boolean;
Convert: byte;
ConvertAll: Boolean;
AllRep : Boolean;
CheckDupe,
FileID : Boolean;
Visible : Boolean;
TinySB : Boolean;
Extra : Array[1..508] of byte;
End;
MagicDef : Record (* This record is not used anymore *)
Group : Char;
Message: String[12];
Keep : byte;
days : byte;
Extra : Array[1..512] of byte;
End;
NodesDef : Record
Groups : String[26];
Useaka : Byte;
MailStat: Byte;
Direct : Boolean;
TicFile : Byte;
Message : Boolean;
Notify : Boolean;
Archiver : Byte;
Extra : Array[1..255] of byte;
End;
LogStyle : byte;
Mode2Line1,
Mode2Line2 : String[75];
BadPath : PathStr;
AreaLog : PathStr;
LocalRep : Boolean;
LogOptions : Longint;
AkaMatch : Array[1..20] of record
Zn: ZoneNet;
Aka: byte;
End;
HMB : Boolean;
ReplaceExt : Boolean;
KeepMgr : Boolean;
AreaMgrOpts : Word;
AutoAddNodes: Boolean;
PublicGroups: String[26];
Uplink : Array[1..10] of UplinkRec;
UseXEMS : Boolean;
BinkleyMode : Boolean;
DaysToKeepHis: Byte;
MaxSizeOfHis : Byte;
OutBound : PathStr;
ResetFuture : Boolean;
ExtendedChar: Char;
Extra : Array[1..951] of byte;
End;
AreaMGRRec = Record (* AREAS.FIX *)
Comment: string[55];
Name: string[40];
RName: String[40];
Origin: byte;
Board: byte;
RBoard: byte;
Aka: byte;
Extra: Array[1..256] of byte;
End;
AreaMgrIdx = Record (* AREAS.IDX *)
Comment: String[55];
Offset : Word;
End;
NewFileMgrRec = Record (* NEWFILES.FIX *)
Comment : string[55];
Group : Char;
FileBrd : Byte;
end;
NewFileMgrIdx = Record (* NEWFILES.IDX *)
FileBrd: byte;
Offset : Word;
End;
FileMGRrec = Record (* FAREAS.FIX *)
Name : String[12];
Message : String[12];
Comment : String[55];
Group : Char;
Attrib : word; (* See table at begining *)
KeepLate : Byte;
Convert : 0..6;
UplinkNum : Byte;
DestDir : PathStr;
TotalFiles,
TotalKb : Word;
Byear,
Bmonth : Byte;
Extra : Array[1..14] of Byte;
Export : ExportArray;
End;
FileMGRidx = Record (* FAREAS.IDX *)
Name : String[12];
Offset : word;
End;
NodeMGRrec = Record (* NODEFILE.FIX *)
Aka : NetAddress;
Sysop : String[35];
Password : String[20];
Groups : String[26];
MailStat : Byte;
Direct : Boolean;
TicFile : Byte;
Extra1 : Byte;
Message : Boolean;
Notify : Boolean;
Archiver : Byte;
Forward : Boolean;
Extra : Array[1..1] of byte;
End;
NodeMGRidx = Record (* NODEFILE.IDX *)
Aka : NetAddress;
Offset: word;
end;
GroupMgrRec = Record (* GROUPS.FIX *)
Group : String[26];
Name : String[40];
Board : Byte;
Aka : byte;
Origin: byte;
Header,
Footer: String[60];
From,
Too : String[35];
Subject : String[60];
Mode : Byte;
Extra : Array[1..5] of byte;
Export: ExportArray;
end;
GroupMGRidx = Record (* GROUPS.IDX *)
Group: String[26];
Offset: Word;
end;
MagicFileMgrRec = Record (* MGICFILE.FIX *)
Attrib : Byte;
FileMask,
FromArea,
ToArea : String[12];
Directory: String[60];
Command : String[60];
Extra : Array[1..43] of byte;
Export : ExportArray;
end;
MagicMGRidx = Record (* MGICFILE.IDX *)
FileMask : String[12];
Offset : Word;
end;
HatchMGRrec= Record (* HATCH.FIX *)
Name : String[12];
Spec : String[79];
Replace: String[12];
Magic : String[20];
Desc : String[80];
Days : Byte;
Extra : Array[1..5] of byte;
end;
HatchMgrIdx = Record (* HATCH.IDX *)
Name: String[12];
Offset: word;
end;
FileAreaRecord = Record (* FILEAREA.FIX *)
Path: PathStr;
Name: string[60];
List: string[60];
Fnum: string[9]; (* 'Number' for Maximus file areas *)
Fbrd: Word; (* Real file area number *)
end;
FileAreaHeader = Record (* FILEAREA.FIX *)
BBStype : byte;
(* 0 - RemoteAccess
1 - SuperBBS
2 - QuickBBS
3 - Maximus
4 - Ezycom *)
Extra : Array[1..255] of byte;
end;
(* FILEAREA.FIX file is a file with a header, and then followed by *)
(* up to 255 FileAreaRecords *)
(* *)
(* Example on how to read FILEAREA.FIX: *)
(* *)
(* Var f: file; *)
(* Header: FileAreaHeader; *)
(* FileArea: FileAreaRecord; *)
(* NumRead : word; *)
(* *)
(* Begin *)
(* Assign(f,'FILEAREA.FIX'); *)
(* {$I-} Reset(f,1); {$I+} *)
(* *)
(* IF Ioresult <> 0 then *)
(* Begin *)
(* Writeln('FILEAREA.FIX not found'); *)
(* Halt(1); *)
(* End; *)
(* *)
(* Blockread(f,Header,Sizeof(Header),NumRead); *)
(* Blockread(f,FileArea,Sizeof(FileArea),NumRead); *)
(* While NumRead > 0 do *)
(* Begin *)
(* Writeln(FileArea.name); *)
(* Blockread(f,FileArea,Sizeof(FileArea),NumRead); *)
(* End; *)
(* *)
(* Close(f); *)
(* End. *)
FileHistory = Record (* FILEHIST.FIX *)
EchoCRC : Longint; (* 32 bit CRC of the file echo name *)
FileCRC : Longint; (* 32 bit CRC of the file name *)
Year,
Doy : Word; (* Time the file was added to the list *)
end;