home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / bbs_ra / ra2fls.arj / STRUCT.110 < prev   
Text File  |  1991-11-05  |  18KB  |  516 lines

  1. (* File "STRUCT.110" *)
  2.  
  3. (* Structures document for RemoteAccess 1.10/Noncommercial. *)
  4. (* May be freely distributed in unmodified form and used    *)
  5. (* by third-party developers. This document is Copyright    *)
  6. (* (C) 1991 Andrew Milner and Continental Software.         *)
  7.  
  8.  
  9. type
  10.   AskType        = (Yes, No, Ask, Only);
  11.   VideoType      = (Auto, Short, Long);
  12.   MsgType        = (LocalMail, NetMail, EchoMail);
  13.   MsgKindsType   = (Both, Private, Public, ROnly);
  14.   OrphanType     = (Ignore, Create, Kill);
  15.   FlagType       = array[1..4] of Byte;
  16.   Time           = String[5];
  17.   Date           = String[8];
  18.   LongDate       = String[9];
  19.  
  20.   NetAddress     = record
  21.                      Zone,
  22.                      Net,
  23.                      Node,
  24.                      Point          : Word;
  25.                    end;
  26.  
  27.   LANGUAGErecord = record
  28.                      Name           : String[20];
  29.                      Attribute      : Byte;
  30.                      DefName,
  31.                      MenuPath,
  32.                      TextPath,
  33.                      QuesPath       : String[60];
  34.                      FreeSpace      : Array[1..200] of Byte;
  35.                    end;
  36.  
  37.   MSGINFOrecord  = record
  38.                      LowMsg,
  39.                      HighMsg,
  40.                      TotalMsgs      : Word;
  41.                      TotalOnBoard   : array[1..200] of Word;
  42.                    end;
  43.  
  44.   MSGIDXrecord   = record
  45.                      MsgNum         : Integer;
  46.                      Board          : Byte;
  47.                    end;
  48.  
  49.   MSGTOIDXrecord = String[35];
  50.  
  51.   MSGHDRrecord   = record
  52.                      MsgNum         : Integer;
  53.                      PrevReply,
  54.                      NextReply,
  55.                      TimesRead      : Word;
  56.                      StartBlock     : Word;
  57.                      NumBlocks,
  58.                      DestNet,
  59.                      DestNode,
  60.                      OrigNet,
  61.                      OrigNode       : Word;
  62.                      DestZone,
  63.                      OrigZone       : Byte;
  64.                      Cost           : Word;
  65.                      MsgAttr,
  66.                      NetAttr,
  67.                      Board          : Byte;
  68.                      PostTime       : Time;
  69.                      PostDate       : Date;
  70.                      WhoTo,
  71.                      WhoFrom        : MSGTOIDXrecord;
  72.                      Subject        : String[72];
  73.                    end;
  74.  
  75.   MSGTXTrecord   = String[255];
  76.  
  77.   USERONrecord   = record
  78.                      Name,
  79.                      Handle         : MSGTOIDXrecord;
  80.                      Line           : Byte;
  81.                      Baud           : Word;
  82.                      City           : String[25];
  83.                      DoNotDisturb   : Boolean;
  84.                      Status         : Byte;
  85.                      Attribute      : Byte;
  86.                    end;
  87.  
  88.                    { Status byte - 0 : Browsing (in a menu)
  89.                                    1 : Uploading/downloading
  90.                                    2 : Reading/posting messages
  91.                                    3 : In a door/external utility
  92.                                    4 : Chatting with sysop
  93.                                    5 : Answering questionnaire 
  94.                                    6 : System ready (0=busy)
  95.  
  96.                      Attribute   - Bit 0 : Hidden }
  97.  
  98.   LASTCALLrecord = record
  99.                      Line           : Byte;
  100.                      Name,
  101.                      Handle         : MSGTOIDXrecord;
  102.                      City           : String[25];
  103.                      Baud           : Word;
  104.                      Times          : LongInt;
  105.                      LogOn          : String[5];
  106.                      LogOff         : String[5];
  107.                      Attribute      : Byte;
  108.                    end;
  109.  
  110.                 { Attribute - Bit 0 : Hidden }
  111.  
  112.   LASTREADrecord = array[1..200] of Word;
  113.  
  114.   COMBINEDrecord = array[1..25] of Byte;
  115.  
  116.   USERSIDXrecord = record
  117.                      NameCRC32,
  118.                      HandleCRC32    : LongInt;
  119.                    end;
  120.  
  121.   USERSXIrecord  = record
  122.                      Handle         : String[35];
  123.                      Comment        : String[80];
  124.                      FirstDate      : Date;
  125.                      CombinedInfo   : COMBINEDrecord;
  126.                      BirthDate,
  127.                      SubDate        : Date;
  128.                      ScreenWidth,
  129.                      MsgArea,
  130.                      FileArea,
  131.                      Language,
  132.                      DateFormat     : Byte;      
  133.                      ForwardTo      : String[35];
  134.                      ExtraSpace     : Array[1..43] of Byte;
  135.                    end;
  136.  
  137.   USERSrecord    = record
  138.                      Name           : MSGTOIDXrecord;
  139.                      Location       : String[25];
  140.                      Password       : String[15];
  141.                      DataPhone,
  142.                      VoicePhone     : String[12];
  143.                      LastTime       : Time;
  144.                      LastDate       : Date;
  145.                      Attribute      : Byte;
  146.  
  147.                       { Bit 0 : Deleted
  148.                             1 : Clear screen
  149.                             2 : More prompt
  150.                             3 : ANSI
  151.                             4 : No-kill
  152.                             5 : Xfer priority
  153.                             6 : Full screen msg editor
  154.                             7 : Quiet mode }
  155.  
  156.                      Flags          : FlagType;
  157.                      Credit,
  158.                      Pending        : Word;
  159.                      MsgsPosted,
  160.                      LastRead,
  161.                      Security,
  162.                      NoCalls,
  163.                      Uploads,
  164.                      Downloads,
  165.                      UploadsK,
  166.                      DownloadsK     : Word;
  167.                      TodayK,
  168.                      Elapsed        : Integer;
  169.                      ScreenLength   : Word;
  170.                      LastPwdChange,
  171.                      Attribute2,
  172.  
  173.                       { Bit 0 : Hot-keys
  174.                             1 : AVT/0
  175.                             2 : Full screen message viewer
  176.                             3 : Hidden from userlist }
  177.  
  178.  
  179.                      Group          : Byte;
  180.                      XIrecord       : Word;
  181.                      ExtraSpace     : array[1..3] of Byte;
  182.                    end;
  183.  
  184.   SYSINFOrecord  = record
  185.                      TotalCalls     : LongInt;
  186.                      LastCaller     : MSGTOIDXrecord;
  187.                      ExtraSpace     : array[1..128] of Byte;
  188.                    end;
  189.  
  190.   TIMELOGrecord  = record
  191.                      StartDate      : Date;
  192.                      BusyPerHour    : array[0..23] of Word;
  193.                      BusyPerDay     : array[0..6] of Word;
  194.                    end;
  195.  
  196.   MNUrecord      = record
  197.                      Typ            : Byte;
  198.                      Security       : Word;
  199.                      Flags          : FlagType;
  200.                      Display        : String[75];
  201.                      HotKey         : Char;
  202.                      MiscData       : String[80];
  203.                      Foreground,
  204.                      Background     : Byte;
  205.                    end;
  206.  
  207.   EVENTrecord    = record
  208.                      Status         : Byte; { 0=Deleted 1=Enabled 2=Disabled }
  209.                      StartTime      : Time;
  210.                      ErrorLevel     : Byte;
  211.                      Days           : Byte;
  212.                      Forced         : Boolean;
  213.                      LastTimeRun    : Date;
  214.                    end;
  215.  
  216.   EVENTrecordArray = array[1..20] of EVENTrecord;
  217.  
  218.   MESSAGErecord  = record
  219.                      Name           : String[40];
  220.                      Typ            : MsgType;
  221.                      MsgKinds       : MsgKindsType;
  222.                      Attribute      : Byte;
  223.  
  224.                       { Bit 0 : Enable EchoInfo
  225.                             1 : Combined access
  226.                             2 : File attaches
  227.                             3 : Allow aliases
  228.                             4 : Use SoftCRs as characters
  229.                             5 : Force handle     
  230.                             6 : Allow deletes }
  231.  
  232.                      DaysKill,    { Kill older than 'x' days }
  233.                      RecvKill       : Byte; { Kill recv msgs, recv for more than 'x' days }
  234.                      CountKill      : Word;
  235.  
  236.                      ReadSecurity   : Word;
  237.                      ReadFlags      : FlagType;
  238.  
  239.                      WriteSecurity  : Word;
  240.                      WriteFlags     : FlagType;
  241.  
  242.                      SysopSecurity  : Word;
  243.                      SysopFlags     : FlagType;
  244.  
  245.                      OriginLine     : String[60];
  246.                      AkaAddress     : Byte;
  247.                    end;
  248.  
  249.   FILESrecord    = record
  250.                      Name           : String[30];
  251.                      Attrib         : Byte;
  252.  
  253.                       { Bit 0 : Include in new files scan
  254.                             1 : Include in upload dupe scan
  255.                             2 : Permit long descriptions }
  256.  
  257.                      FilePath       : String[40];
  258.                      FreeSpace      : Array[1..35] of Byte;
  259.                      UploadSecurity : Word;
  260.                      UploadFlags    : FlagType;
  261.                      Security       : Word;
  262.                      Flags          : FlagType;
  263.                      ListSecurity   : Word;
  264.                      ListFlags      : FlagType;
  265.                    end;
  266.  
  267.   CONFIGrecord = record
  268.     VersionID           : Word;
  269.     CommPort            : Byte;
  270.     Baud                : LongInt;
  271.     InitTries           : Byte;
  272.     InitStr,
  273.     BusyStr             : String[70];
  274.     InitResp,
  275.     BusyResp,
  276.     Connect300,
  277.     Connect1200,
  278.     Connect2400,
  279.     Connect4800,
  280.     Connect9600,
  281.     Connect19k,
  282.     Connect38k          : String[40];
  283.     AnswerPhone         : Boolean;
  284.     Ring,
  285.     AnswerStr           : String[20];
  286.     FlushBuffer         : Boolean;
  287.     ModemDelay          : Integer;
  288.  
  289.     MinimumBaud,
  290.     GraphicsBaud,
  291.     TransferBaud        : Integer;
  292.     SlowBaudTimeStart,
  293.     SlowBaudTimeEnd,
  294.     DownloadTimeStart,
  295.     DownloadTimeEnd     : Time;
  296.  
  297.     PageStart           : Array[0..6] of Time;
  298.     PageEnd             : Array[0..6] of Time;
  299.  
  300. {}  FreeSpace1          : Array[1..70] of Byte;
  301.     PwdExpiry           : Word;
  302.  
  303.     MenuPath,
  304.     TextPath,
  305.     AttachPath,
  306.     NodelistPath,
  307.     MsgBasePath,
  308.     SysPath,
  309.     ExternalEdCmd       : String[60];
  310.  
  311.     Address             : Array[0..9] of NetAddress;
  312.     SystemName          : String[30];
  313.  
  314.     NewSecurity         : Word;
  315.     NewCredit           : Word;
  316.     NewFlags            : FlagType;
  317.  
  318.     OriginLine          : String[60];
  319.     QuoteString         : String[15];
  320.     Sysop               : String[35];
  321.     LogFileName         : String[60];
  322.     FastLogon,
  323.     AllowSysRem,
  324.     MonoMode,
  325.     StrictPwdChecking,
  326.     DirectWrite,
  327.     SnowCheck           : Boolean;
  328.     CreditFactor        : Integer;
  329.  
  330.     UserTimeOut,
  331.     LogonTime,
  332.     PasswordTries,
  333.     MaxPage,
  334.     PageLength          : Word;
  335.     CheckForMultiLogon,
  336.     ExcludeSysopFromList,
  337.     OneWordNames        : Boolean;
  338.     CheckMail           : AskType;
  339.     AskVoicePhone,
  340.     AskDataPhone,
  341.     DoFullMailCheck,
  342.     AllowFileShells,
  343.     FixUploadDates,
  344.     FreezeChat          : Boolean;
  345.     ANSI,                       { ANSI: Yes, no, or ask new users     }
  346.     ClearScreen,                { Clear:        "                     }
  347.     MorePrompt          : AskType;    { More:         "                     }
  348.     UploadMsgs          : Boolean;
  349.     KillSent            : AskType;    { Kill/Sent     "                     }
  350.  
  351.     CrashAskSec         : Word;       { Min sec# to ask 'Crash Mail ?'      }
  352.     CrashAskFlags       : FlagType;
  353.     CrashSec            : Word;       { Min sec# to always send crash mail. }
  354.     CrashFlags          : FlagType;
  355.     FAttachSec          : Word;       {        "    ask 'File Attach ?'     }
  356.     FAttachFlags        : FlagType;
  357.  
  358.     NormFore,
  359.     NormBack,
  360.     StatFore,
  361.     StatBack,
  362.     HiBack,
  363.     HiFore,
  364.     WindFore,
  365.     WindBack,
  366.     ExitLocal,
  367.     Exit300,
  368.     Exit1200,
  369.     Exit2400,
  370.     Exit4800,
  371.     Exit9600,
  372.     Exit19k,
  373.     Exit38k             : Byte;
  374.  
  375.     MultiLine           : Boolean;
  376.     MinPwdLen           : Byte;
  377.     MinUpSpace          : Word;
  378.     HotKeys             : AskType;
  379.     BorderFore,
  380.     BorderBack,
  381.     BarFore,
  382.     BarBack,
  383.     LogStyle,
  384.     MultiTasker,
  385.     PwdBoard            : Byte;
  386.     BufferSize          : Word;
  387.     FKeys               : Array[1..10] of String[60];
  388.  
  389.     WhyPage             : Boolean;
  390.     LeaveMsg            : Byte;
  391.     ShowMissingFiles    : Boolean;
  392. {}  FreeSpace2          : Array[1..11] of Byte;
  393.     AllowNetmailReplies : Boolean;
  394.     LogonPrompt         : String[40];
  395.     CheckNewFiles       : AskType;
  396.     ReplyHeader         : String[60];
  397.     BlankSecs           : byte;
  398.     ProtocolAttrib      : Array[1..6] of Byte;
  399.     ErrorFreeString     : String[15];
  400.     DefaultCombined     : COMBINEDrecord;
  401.     RenumThreshold      : Word;
  402.     LeftBracket,
  403.     RightBracket        : Char;
  404.     AskForHandle        : Boolean;
  405.     AskForBirthDate     : Boolean;
  406.  
  407.     GroupMailSec        : Word;
  408.  
  409.     ConfirmMsgDeletes   : Boolean;
  410.     FreeSpace3          : Array[1..163] of Byte;
  411.     NewUserGroup        : Byte;
  412.     AVATAR              : AskType;
  413.     BadPwdArea          : Byte;
  414.     Location            : String[40];
  415.     DoAfterAction       : Byte; {0 = wait for CR, > 0 = wait for x seconds}
  416.     FileLine            : String[40];
  417.     CRfore,
  418.     CRback              : Byte;
  419.     LangHdr             : String[40];
  420.     SendBreak           : Boolean;
  421.     ListPath            : String[60];
  422.     FullMsgView         : AskType;
  423.     EMSI_Enable         : AskType;
  424.     EMSI_NewUser        : Boolean;
  425.  
  426.     EchoChar            : String[1];
  427.     Connect7200,
  428.     Connect12000,
  429.     Connect14400        : String[40];
  430.     Exit7200,
  431.     Exit12000,
  432.     Exit14400           : Byte;
  433.     ChatCommand         : String[60];
  434.     ExtEd               : AskType;
  435.     NewuserLanguage     : Byte;
  436.     LanguagePrompt      : String[40];
  437.     VideoMode           : VideoType;
  438.     AutoDetectANSI      : Boolean;
  439.     OffHook             : Boolean;
  440.     NewUserDateFormat   : Byte;
  441.     KeyboardPwd         : String[15];
  442.     CapLocation         : Boolean;
  443.     NewuserSub          : Byte;
  444.     PrinterName         : String[4];
  445.     HilitePromptFore,
  446.     HiLitePromptBack    : Byte;
  447.     InitStr2            : String[70];
  448.     AltJSwap            : Boolean;
  449.     SemPath             : String[60];
  450.     AutoChatCapture     : Boolean;
  451.  
  452.     FutureExpansion : Array[1..97] of Byte;
  453.   end;
  454.  
  455.   EXITINFOrecord = record
  456.                      Baud             : Word;
  457.                      SysInfo          : SYSINFOrecord;
  458.                      TimeLogInfo      : TIMELOGrecord;
  459.                      UserInfo         : USERSrecord;
  460.                      EventInfo        : EVENTrecord;
  461.                      NetMailEntered,
  462.                      EchoMailEntered  : Boolean;
  463.                      LoginTime        : Time;
  464.                      LoginDate        : Date;
  465.                      TimeLimit        : Word;
  466.                      LoginSec,
  467.                      Credit           : LongInt;
  468.                      UserRecord       : Integer;
  469.                      ReadThru,
  470.                      NumberPages,
  471.                      DownloadLimit    : Word;
  472.                      TimeOfCreation   : Time;
  473.                      LogonPassword    : String[15];
  474.                      WantChat         : Boolean;
  475.  
  476.                      DeductedTime     : Integer;
  477.                      MenuStack        : Array[1..50] of String[8];
  478.                      MenuStackPointer : Byte;
  479.                      UserXIinfo       : USERSXIrecord;
  480.                      ErrorFreeConnect,
  481.                      SysopNext        : Boolean;
  482.  
  483.                      EMSI_Session     : Boolean;        { These fields hold  }
  484.                      EMSI_Crtdef,                       { data related to an }
  485.                      EMSI_Protocols,                    { EMSI session       }
  486.                      EMSI_Capabilities,
  487.                      EMSI_Requests,
  488.                      EMSI_Software    : String[40];
  489.                      Hold_Attr1,
  490.                      Hold_Attr2,
  491.                      Hold_Len         : Byte;
  492.  
  493.                      ExtraSpace       : Array[1..100] of Byte;
  494.                  end;
  495.  
  496.   PROTOCOLrecord = record
  497.                      Name           : String[15];
  498.                      ActiveKey      : Char;
  499.                      OpusTypeCtlFile,
  500.                      BatchAvailable : Boolean;
  501.                      Attribute      : Byte; { 0=Disabled, 1=Enabled }
  502.                      LogFileName,
  503.                      CtlFileName,
  504.                      DnCmdString,
  505.                      DnCtlString,
  506.                      UpCmdString,
  507.                      UpCtlString    : String[80];
  508.                      UpLogKeyword,
  509.                      DnLogKeyword   : String[20];
  510.                      XferDescWordNum,
  511.                      XferNameWordNum : Byte;
  512.                    end;
  513.  
  514. (* End of file "STRUCT.110" *)
  515.  
  516.