home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / MISC / PBAPI10.ZIP / PBAPI10.INC < prev    next >
Text File  |  1998-02-21  |  66KB  |  1,573 lines

  1. 'Revised: 02/21/98 for PowerBasic v3.5
  2. '
  3. ' ** Gobal Dimention for TriBBS Main Node's Directory String **
  4. '
  5. DIM TBNode1sMainDirectory AS SHARED STRING  ' Main Node's directory
  6. '
  7. PUBLIC TBNode1sMainDirectory ' Sets TriBBS Node 1's Main variable to be
  8.                              ' gobal between units and main program.
  9.  
  10. '===========================================================================
  11. ' ** Sub Type Structure for 10 byte BitFields **
  12. ' Many of the Main Data Structures share this Sub Type BitFields Structure
  13. '
  14.  TYPE BitFields
  15.     bit1  AS BYTE
  16.     bit2  AS BYTE
  17.     bit3  AS BYTE
  18.     bit4  AS BYTE
  19.     bit5  AS BYTE
  20.     bit6  AS BYTE
  21.     bit7  AS BYTE
  22.     bit8  AS BYTE
  23.     bit9  AS BYTE
  24.     bit10 AS BYTE
  25.  END TYPE
  26. '
  27. '===========================================================================
  28. ' USERS.DAT & MCONF.DAT Data Structures both share this Sub Type Structure
  29. '
  30. ' NetworkBit.bit1 & NetworkBit.bit2 BIT Assignments:
  31. ' TriBBS allows a sysop to add up to 16 different Networks.
  32. ' Depending on the bit position 0 or 1, means that a certain Message
  33. ' Conference belongs to a certain network.
  34. '
  35. ' NetworkBit.bit1 BIT Assignment:
  36. '  0 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  37. '  1 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  38. '  2 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  39. '  3 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  40. '  4 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  41. '  5 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  42. '  6 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  43. '  7 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  44. ' NetworkBit.bit2 BIT Assignment:
  45. '  0 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  46. '  1 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  47. '  2 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  48. '  3 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  49. '  4 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  50. '  5 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  51. '  6 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  52. '  7 = Points to network name defined in Network.dat  0 = No, 1 = Yes
  53.  
  54. ' Sub Type Structure for Network Flag BitFields
  55.  TYPE NetworkBit
  56.     bit1  AS BYTE
  57.     bit2  AS BYTE
  58.  END TYPE
  59.  
  60.  DIM NetworkBit AS NetworkBit
  61. '
  62. '===========================================================================
  63. ' ** SYSDAT1 File Structures and Declarations for SYSDAT1.DAT File **
  64. '
  65. 'Sysdat1.dat BitFields breakdown
  66.  
  67. ' SysDat1Bit.bit1 BIT Assignment
  68. '    0 = PhoneNumberFlag                          0 = Non-US, 1 = US Format
  69. '    1 = TestUploadsFlag                          0 = No, 1 = Yes
  70. '    2 = AutoANSIDetectFlag                       0 = No, 1 = Yes
  71. '    3 = CheckForWaitingMessagesFlag              0 = No, 1 = Yes
  72. '    4 = ULDLRatioTypeFlag                        0 = Sec. Level, 1 = Download
  73. '    5 = PhoneOnHookDuringMaintenanceFlag         0 = Off Hook, 1 = On Hook
  74. '    6 = NoOneWordNamesFlag                       0 = Yes, 1 = No
  75. '    7 = NoBulletinMenuAtLogonFlag                0 = Yes, 1 = No
  76.  
  77. ' SysDat1Bit.bit2 BIT Assignment
  78. '    0 = AllowAliasesFlag                         0 = No, 1 = Yes
  79. '    1 = ClearScreenBeforeMenusFlag               0 = No, 1 = Yes
  80. '    2 = ExactFileNameMatchingForDupesFlag        0 = No, 1 = Yes
  81. '    3 = DisableNewUserBirthdayPromptFlag         0 = No, 1 = Yes
  82. '    4 = DisableDetailedCallersLogFlag            0 = No, 1 = Yes
  83. '    5 = EnableRIPscripEmulationFlag              0 = No, 1 = Yes
  84. '    6 = UseAliasOrRealNamesFlag                  0 = Aliases, 1 = Real Names
  85. '    7 = ClearUploadsAndDownloadsFlag             0 = No, 1 = Yes
  86.     
  87. ' SysDat1Bit.bit3 BIT Assignment
  88. '    0 = ClearPrivateMessageAreasFlag             0 = No, 1 = Yes
  89. '    1 = ClearPrivateFileAreasFlag                0 = No, 1 = Yes
  90. '    2 = DisableUploadedByFlag                    0 = No, 1 = Yes
  91. '    3 to 7 = 0 (Reserved)
  92.  
  93. ' SysDat1Bit.bit4 to SysDat1Bit.bit10 - All bits are set to 0 (Reserved)
  94. '
  95. '
  96. '---------------------------------------------------------------------------
  97. '
  98. 'File Name: "SYSDAT1.DAT"
  99.  TYPE SYSDAT1
  100.     RegistrationCode                   AS STRING * 81
  101.     BoardName                          AS STRING * 41
  102.     SysopName                          AS STRING * 61
  103.     DefaultArchiveExtension            AS STRING * 4
  104.     SystemPassword                     AS STRING * 16
  105.     VirusCheckerCommandLine            AS STRING * 81
  106.     ZIPCompressCommandLine             AS STRING * 81
  107.     ZIPUnCompressCommandLine           AS STRING * 81
  108.     ARJCompressCommandLine             AS STRING * 81
  109.     ARJUnCompressCommandLine           AS STRING * 81
  110.     LZHCompressCommandLine             AS STRING * 81
  111.     LZHUnCompressCommandLine           AS STRING * 81
  112.     ARCCompressCommandLine             AS STRING * 81
  113.     ARCUnCompressCommandLine           AS STRING * 81
  114.     PAKCompressCommandLine             AS STRING * 81
  115.     PAKUnCompressCommandLine           AS STRING * 81
  116.     SDNCompressCommandLine             AS STRING * 81
  117.     SDNUnCompressCommandLine           AS STRING * 81
  118.     RARCompressCommandLine             AS STRING * 81
  119.     RARUnCompressCommandLine           AS STRING * 81
  120.     BoardStartDate                     AS STRING * 9
  121.     TotalNodes                         AS INTEGER
  122.     CallsToday                         AS INTEGER
  123.     MessagesToday                      AS INTEGER
  124.     UploadsToday                       AS INTEGER
  125.     DownloadsToday                     AS INTEGER
  126.     DefaultDailyTimeLimit              AS INTEGER
  127.     DefaultDailyLogons                 AS INTEGER
  128.     DefaultTimePerLogon                AS INTEGER
  129.     MinimumSysopSecurityLevel          AS INTEGER
  130.     NewUserSecurityLevel               AS INTEGER
  131.     NewUserTimeLimit                   AS INTEGER
  132.     UploadTimeCompensationRatio        AS INTEGER
  133.     MinimumFileAttachmentSecurityLevel AS INTEGER
  134.     MinimumAtVariableSecurityLevel     AS INTEGER
  135.     FastLogonSecurityLevel             AS INTEGER
  136.     TotalCalls                         AS LONG
  137.     SysDat1BitFields                   AS BitFields
  138.     ReservedDataArea                   AS STRING * 2625
  139.  END TYPE
  140.  
  141.  DIM SysDat1Bit AS BitFields
  142.  DIM SYSDAT1    AS SHARED SYSDAT1
  143.  DIM sys1       AS SHARED SYSDAT1 PTR
  144.  
  145.  sys1 = VARPTR32(SYSDAT1)
  146.  LSET SYSDAT1 = SYSDAT1
  147. '
  148. '---------------------------------------------------------------------------
  149. '
  150. 'Declare's used by the SYSDAT1.PBU API
  151. '
  152. ' These DECLAREd FUNCTION's below are from the SYSDAT1.PBU Unit
  153. '
  154. DECLARE FUNCTION SYSDAT1_DAT_Open()
  155. DECLARE FUNCTION SYSDAT1_DAT_Close()
  156. DECLARE FUNCTION SYSDAT1_DAT_Read()
  157. DECLARE FUNCTION SYSDAT1_DAT_Write()
  158. DECLARE FUNCTION SYSDAT1_DAT_OpenRead()
  159. DECLARE FUNCTION SYSDAT1_DAT_WriteClose()
  160. DECLARE FUNCTION SYSDAT1_DAT_OpenReadClose()
  161. DECLARE FUNCTION SYSDAT1_DAT_OpenWriteClose()
  162. DECLARE FUNCTION SYSDAT1_DAT_ClearIt()
  163. DECLARE FUNCTION SYSDAT1_DAT_Initialize()
  164.  
  165. DECLARE FUNCTION SYSDAT1_DAT_GetRC() AS STRING
  166. DECLARE FUNCTION SYSDAT1_DAT_PutRC(s AS STRING)
  167. DECLARE FUNCTION SYSDAT1_DAT_GetBN() AS STRING
  168. DECLARE FUNCTION SYSDAT1_DAT_PutBN(s AS STRING)
  169. DECLARE FUNCTION SYSDAT1_DAT_GetSN() AS STRING
  170. DECLARE FUNCTION SYSDAT1_DAT_PutSN(s AS STRING)
  171. DECLARE FUNCTION SYSDAT1_DAT_GetDAE() AS STRING
  172. DECLARE FUNCTION SYSDAT1_DAT_PutDAE(s AS STRING)
  173. DECLARE FUNCTION SYSDAT1_DAT_GetSP() AS STRING
  174. DECLARE FUNCTION SYSDAT1_DAT_PutSP(s AS STRING)
  175. DECLARE FUNCTION SYSDAT1_DAT_GetVCCL() AS STRING
  176. DECLARE FUNCTION SYSDAT1_DAT_PutVCCL(s AS STRING)
  177. DECLARE FUNCTION SYSDAT1_DAT_GetZIPCCL() AS STRING
  178. DECLARE FUNCTION SYSDAT1_DAT_PutZIPCCL(s AS STRING)
  179. DECLARE FUNCTION SYSDAT1_DAT_GetZIPUCCL() AS STRING
  180. DECLARE FUNCTION SYSDAT1_DAT_PutZIPUCCL(s AS STRING)
  181. DECLARE FUNCTION SYSDAT1_DAT_GetARJCCL() AS STRING
  182. DECLARE FUNCTION SYSDAT1_DAT_PutARJCCL(s AS STRING)
  183. DECLARE FUNCTION SYSDAT1_DAT_GetARJUCCL() AS STRING
  184. DECLARE FUNCTION SYSDAT1_DAT_PutARJUCCL(s AS STRING)
  185. DECLARE FUNCTION SYSDAT1_DAT_GetLZHCCL() AS STRING
  186. DECLARE FUNCTION SYSDAT1_DAT_PutLZHCCL(s AS STRING)
  187. DECLARE FUNCTION SYSDAT1_DAT_GetLZHUCCL() AS STRING
  188. DECLARE FUNCTION SYSDAT1_DAT_PutLZHUCCL(s AS STRING)
  189. DECLARE FUNCTION SYSDAT1_DAT_GetARCCCL() AS STRING
  190. DECLARE FUNCTION SYSDAT1_DAT_PutARCCCL(s AS STRING)
  191. DECLARE FUNCTION SYSDAT1_DAT_GetARCUCCL() AS STRING
  192. DECLARE FUNCTION SYSDAT1_DAT_PutARCUCCL(s AS STRING)
  193. DECLARE FUNCTION SYSDAT1_DAT_GetPAKCCL() AS STRING
  194. DECLARE FUNCTION SYSDAT1_DAT_PutPAKCCL(s AS STRING)
  195. DECLARE FUNCTION SYSDAT1_DAT_GetPAKUCCL() AS STRING
  196. DECLARE FUNCTION SYSDAT1_DAT_PutPAKUCCL(s AS STRING)
  197. DECLARE FUNCTION SYSDAT1_DAT_GetSDNCCL() AS STRING
  198. DECLARE FUNCTION SYSDAT1_DAT_PutSDNCCL(s AS STRING)
  199. DECLARE FUNCTION SYSDAT1_DAT_GetSDNUCCL() AS STRING
  200. DECLARE FUNCTION SYSDAT1_DAT_PutSDNUCCL(s AS STRING)
  201. DECLARE FUNCTION SYSDAT1_DAT_GetRARCCL() AS STRING
  202. DECLARE FUNCTION SYSDAT1_DAT_PutRARCCL(s AS STRING)
  203. DECLARE FUNCTION SYSDAT1_DAT_GetRARUCCL() AS STRING
  204. DECLARE FUNCTION SYSDAT1_DAT_PutRARUCCL(s AS STRING)
  205. DECLARE FUNCTION SYSDAT1_DAT_GetBSD() AS STRING
  206. DECLARE FUNCTION SYSDAT1_DAT_PutBSD(s AS STRING)
  207. DECLARE FUNCTION SYSDAT1_DAT_GetTN() AS INTEGER
  208. DECLARE FUNCTION SYSDAT1_DAT_PutTN(n AS INTEGER)
  209. DECLARE FUNCTION SYSDAT1_DAT_GetCT() AS INTEGER
  210. DECLARE FUNCTION SYSDAT1_DAT_PutCT(n AS INTEGER)
  211. DECLARE FUNCTION SYSDAT1_DAT_GetMT() AS INTEGER
  212. DECLARE FUNCTION SYSDAT1_DAT_PutMT(n AS INTEGER)
  213. DECLARE FUNCTION SYSDAT1_DAT_GetUT() AS INTEGER
  214. DECLARE FUNCTION SYSDAT1_DAT_PutUT(n AS INTEGER)
  215. DECLARE FUNCTION SYSDAT1_DAT_GetDT() AS INTEGER
  216. DECLARE FUNCTION SYSDAT1_DAT_PutDT(n AS INTEGER)
  217. DECLARE FUNCTION SYSDAT1_DAT_GetDDTL() AS INTEGER
  218. DECLARE FUNCTION SYSDAT1_DAT_PutDDTL(n AS INTEGER)
  219. DECLARE FUNCTION SYSDAT1_DAT_GetDDL() AS INTEGER
  220. DECLARE FUNCTION SYSDAT1_DAT_PutDDL(n AS INTEGER)
  221. DECLARE FUNCTION SYSDAT1_DAT_GetDTPL() AS INTEGER
  222. DECLARE FUNCTION SYSDAT1_DAT_PutDTPL(n AS INTEGER)
  223. DECLARE FUNCTION SYSDAT1_DAT_GetMSSL() AS INTEGER
  224. DECLARE FUNCTION SYSDAT1_DAT_PutMSSL(n AS INTEGER)
  225. DECLARE FUNCTION SYSDAT1_DAT_GetNUSL() AS INTEGER
  226. DECLARE FUNCTION SYSDAT1_DAT_PutNUSL(n AS INTEGER)
  227. DECLARE FUNCTION SYSDAT1_DAT_GetNUTL() AS INTEGER
  228. DECLARE FUNCTION SYSDAT1_DAT_PutNUTL(n AS INTEGER)
  229. DECLARE FUNCTION SYSDAT1_DAT_GetUTCR() AS INTEGER
  230. DECLARE FUNCTION SYSDAT1_DAT_PutUTCR(n AS INTEGER)
  231. DECLARE FUNCTION SYSDAT1_DAT_GetMFASL() AS INTEGER
  232. DECLARE FUNCTION SYSDAT1_DAT_PutMFASL(n AS INTEGER)
  233. DECLARE FUNCTION SYSDAT1_DAT_GetMAVSL() AS INTEGER
  234. DECLARE FUNCTION SYSDAT1_DAT_PutMAVSL(n AS INTEGER)
  235. DECLARE FUNCTION SYSDAT1_DAT_GetFLSL() AS INTEGER
  236. DECLARE FUNCTION SYSDAT1_DAT_PutFLSL(n AS INTEGER)
  237. DECLARE FUNCTION SYSDAT1_DAT_GetTC() AS LONG
  238. DECLARE FUNCTION SYSDAT1_DAT_PutTC(n AS LONG)
  239.  
  240. DECLARE FUNCTION SYSDAT1_DAT_GetPNSF() AS INTEGER
  241. DECLARE FUNCTION SYSDAT1_DAT_PutPNSF(n AS INTEGER)
  242. DECLARE FUNCTION SYSDAT1_DAT_GetTUF() AS INTEGER
  243. DECLARE FUNCTION SYSDAT1_DAT_PutTUF(n AS INTEGER)
  244. DECLARE FUNCTION SYSDAT1_DAT_GetAADF() AS INTEGER
  245. DECLARE FUNCTION SYSDAT1_DAT_PutAADF(n AS INTEGER)
  246. DECLARE FUNCTION SYSDAT1_DAT_GetCFWMF() AS INTEGER 
  247. DECLARE FUNCTION SYSDAT1_DAT_PutCFWMF(n AS INTEGER)
  248. DECLARE FUNCTION SYSDAT1_DAT_GetUDRTF() AS INTEGER
  249. DECLARE FUNCTION SYSDAT1_DAT_PutUDRTF(n AS INTEGER)
  250. DECLARE FUNCTION SYSDAT1_DAT_GetPOHDMF() AS INTEGER
  251. DECLARE FUNCTION SYSDAT1_DAT_PutPOHDMF(n AS INTEGER)
  252. DECLARE FUNCTION SYSDAT1_DAT_GetNOWNF() AS INTEGER 
  253. DECLARE FUNCTION SYSDAT1_DAT_PutNOWNF(n AS INTEGER)
  254. DECLARE FUNCTION SYSDAT1_DAT_GetNBMALF() AS INTEGER
  255. DECLARE FUNCTION SYSDAT1_DAT_PutNBMALF(n AS INTEGER)
  256. DECLARE FUNCTION SYSDAT1_DAT_GetAAF() AS INTEGER
  257. DECLARE FUNCTION SYSDAT1_DAT_PutAAF(n AS INTEGER)
  258. DECLARE FUNCTION SYSDAT1_DAT_GetCSBMF() AS INTEGER
  259. DECLARE FUNCTION SYSDAT1_DAT_PutCSBMF(n AS INTEGER)
  260. DECLARE FUNCTION SYSDAT1_DAT_GetEFNMFDF() AS INTEGER
  261. DECLARE FUNCTION SYSDAT1_DAT_PutEFNMFDF(n AS INTEGER)
  262. DECLARE FUNCTION SYSDAT1_DAT_GetDNUBPF() AS INTEGER
  263. DECLARE FUNCTION SYSDAT1_DAT_PutDNUBPF(n AS INTEGER)
  264. DECLARE FUNCTION SYSDAT1_DAT_GetDDCLF() AS INTEGER
  265. DECLARE FUNCTION SYSDAT1_DAT_PutDDCLF(n AS INTEGER)
  266. DECLARE FUNCTION SYSDAT1_DAT_GetEREF() AS INTEGER
  267. DECLARE FUNCTION SYSDAT1_DAT_PutEREF(n AS INTEGER)
  268. DECLARE FUNCTION SYSDAT1_DAT_GetUAORNF() AS INTEGER
  269. DECLARE FUNCTION SYSDAT1_DAT_PutUAORNF(n AS INTEGER)
  270. DECLARE FUNCTION SYSDAT1_DAT_GetCUADF() AS INTEGER
  271. DECLARE FUNCTION SYSDAT1_DAT_PutCUADF(n AS INTEGER)
  272. DECLARE FUNCTION SYSDAT1_DAT_GetCPMAF() AS INTEGER
  273. DECLARE FUNCTION SYSDAT1_DAT_PutCPMAF(n AS INTEGER)
  274. DECLARE FUNCTION SYSDAT1_DAT_GetCPFAF() AS INTEGER
  275. DECLARE FUNCTION SYSDAT1_DAT_PutCPFAF(n AS INTEGER)
  276. DECLARE FUNCTION SYSDAT1_DAT_GetDUBF() AS INTEGER
  277. DECLARE FUNCTION SYSDAT1_DAT_PutDUBF(n AS INTEGER)
  278. '
  279. '===========================================================================
  280. ' ** SYSDAT2 File Structures and Declarations for SYSDAT2.DAT File **
  281. '
  282. 'File Name: "SYSDAT2.DAT"
  283. '
  284.  TYPE SYSDAT2
  285.     Node1sMainDirectory AS STRING * 81
  286.     ReservedDataArea    AS STRING * 175
  287.  END TYPE
  288.  
  289.  DIM SYSDAT2    AS SHARED SYSDAT2
  290.  DIM sys2       AS SHARED SYSDAT2 PTR
  291.  
  292.  sys2 = VARPTR32(SYSDAT2)
  293.  LSET SYSDAT2 = SYSDAT2
  294. '
  295. '---------------------------------------------------------------------------
  296. '
  297. 'Declare's used by the SYSDAT2.PBU API
  298. '
  299. ' These DECLAREd FUNCTION's below are from the SYSDAT2.PBU Unit
  300. '
  301. DECLARE FUNCTION SYSDAT2_DAT_Open()
  302. DECLARE FUNCTION SYSDAT2_DAT_Close()
  303. DECLARE FUNCTION SYSDAT2_DAT_Read()
  304. DECLARE FUNCTION SYSDAT2_DAT_Write()
  305. DECLARE FUNCTION SYSDAT2_DAT_OpenRead()
  306. DECLARE FUNCTION SYSDAT2_DAT_WriteClose()
  307. DECLARE FUNCTION SYSDAT2_DAT_OpenReadClose()
  308. DECLARE FUNCTION SYSDAT2_DAT_OpenWriteClose()
  309. DECLARE FUNCTION SYSDAT2_DAT_ClearIt()
  310. DECLARE FUNCTION SYSDAT2_DAT_Initialize()
  311.  
  312. DECLARE FUNCTION SYSDAT2_DAT_GetN1MD() AS STRING
  313. DECLARE FUNCTION SYSDAT2_DAT_PutN1MD(s AS STRING)
  314. '
  315. '===========================================================================
  316. ' ** NODEDAT File Structures and Declarations for NODE.DAT File **
  317. '
  318. 'Node.dat BitFields Breakdown
  319.  
  320. ' NodeDatBit.bit1 BIT Assignment
  321. '    0 = No300BaudCallersFlag                     0 = Yes, 1 = No
  322. '    1 = No1200BaudCallersFlag                    0 = Yes, 1 = No
  323. '    2 = No2400BaudCallersFlag                    0 = Yes, 1 = No
  324. '    3 = RTSCTSHandshakingFlag                    0 = No,  1 = Yes
  325. '    4 = LockSerialPortFlag                       0 = No,  1 = Yes
  326. '    5 = DirectScreenWriteFlag                    0 = No,  1 = Yes
  327. '    6 = PageBellOnFlag                           0 = Off, 1 = On
  328. '    7 = UseNodeDISPLAYDirectoryFlag              0 = No,  1 = Yes
  329.  
  330. ' NodeDatBit.bit2 BIT Assignment
  331. '    0 = PhoneOffHookDuringEventsFlag             0 = No, 1 = Yes
  332. '    1 = EnableLocalRIPscripEmulationFlag         0 = No, 1 = Yes
  333. '    2 = UseFossilDriverFlag                      0 = No, 1 = Yes
  334. '    3 = EnableCallerIDFlag                          0 = No, 1 = Yes
  335. '    4 = BumpNoInfoCallsFlag                      0 = No, 1 = Yes
  336. '    5 = BumpBlockedCallsFlag                      0 = No, 1 = Yes
  337. '    6 = BumpOutOfAreaCallsFlag                   0 = No, 1 = Yes
  338. '    7 = 0 (Reserved)
  339.  
  340. ' NodeDatBit.bit3 to NodeDatBit.bit10 - All bits are set to 0  (Reserved)
  341.  
  342. '---------------------------------------------------------------------------
  343. '
  344. 'File Name: "NODE.DAT"
  345.  TYPE NODEDAT
  346.     InitializationString             AS STRING * 81
  347.     ErrorCorrectingConnectionMessage AS STRING * 5
  348.     ATZString                        AS STRING * 16
  349.     ATAString                        AS STRING * 16
  350.     ATH0String                       AS STRING * 16
  351.     ATH1String                       AS STRING * 16
  352.     DateOfLastCall                   AS STRING * 9
  353.     NodeNumber                       AS INTEGER
  354.     SerialPort                       AS INTEGER
  355.     DelayBeforeATA                   AS INTEGER
  356.     NumberOfRings                    AS INTEGER
  357.     NodeSecurityLevel                AS INTEGER
  358.     MaximumKeyboardIdleTime          AS INTEGER
  359.     NonStandardIRQNumber             AS INTEGER
  360.     DelayAfterCONNECT                AS INTEGER
  361.     MaximumBaudRate                  AS LONG
  362.     NodeDatBitFields                 AS BitFields
  363.     ReservedDataArea                 AS STRING * 3907
  364.  END TYPE
  365.  
  366.  DIM NodeDatBit AS BitFields
  367.  DIM NODEDAT    AS SHARED NODEDAT
  368.  DIM nd         AS SHARED NODEDAT PTR
  369.  
  370.  nd = VARPTR32(NODEDAT)
  371.  LSET NODEDAT = NODEDAT
  372. '---------------------------------------------------------------------------
  373. '
  374. 'FUNCTION's below are from the NODEDAT.PBU Unit and DECLAREd in PBAPI10.INC.
  375.  
  376. DECLARE FUNCTION NODE_DAT_Open()
  377. DECLARE FUNCTION NODE_DAT_Close()
  378. DECLARE FUNCTION NODE_DAT_Read()
  379. DECLARE FUNCTION NODE_DAT_Write()
  380. DECLARE FUNCTION NODE_DAT_OpenRead()
  381. DECLARE FUNCTION NODE_DAT_WriteClose()
  382. DECLARE FUNCTION NODE_DAT_OpenReadClose()
  383. DECLARE FUNCTION NODE_DAT_OpenWriteClose()
  384. DECLARE FUNCTION NODE_DAT_ClearIt()
  385. DECLARE FUNCTION NODE_DAT_Initialize()
  386.  
  387. DECLARE FUNCTION NODE_DAT_GetIS() AS STRING
  388. DECLARE FUNCTION NODE_DAT_PutIS(s AS STRING)
  389. DECLARE FUNCTION NODE_DAT_GetECCM() AS STRING
  390. DECLARE FUNCTION NODE_DAT_PutECCM(s AS STRING)
  391. DECLARE FUNCTION NODE_DAT_GetATZS() AS STRING
  392. DECLARE FUNCTION NODE_DAT_PutATZS(s AS STRING)
  393. DECLARE FUNCTION NODE_DAT_GetATAS() AS STRING
  394. DECLARE FUNCTION NODE_DAT_PutATAS(s AS STRING)
  395. DECLARE FUNCTION NODE_DAT_GetATH0S() AS STRING
  396. DECLARE FUNCTION NODE_DAT_PutATH0S(s AS STRING)
  397. DECLARE FUNCTION NODE_DAT_GetATH1S() AS STRING
  398. DECLARE FUNCTION NODE_DAT_PutATH1S(s AS STRING)
  399. DECLARE FUNCTION NODE_DAT_GetDOLC() AS STRING
  400. DECLARE FUNCTION NODE_DAT_PutDOLC(s AS STRING)
  401. DECLARE FUNCTION NODE_DAT_GetNN() AS INTEGER
  402. DECLARE FUNCTION NODE_DAT_PutNN(n AS INTEGER)
  403. DECLARE FUNCTION NODE_DAT_GetSP() AS INTEGER
  404. DECLARE FUNCTION NODE_DAT_PutSP(n AS INTEGER)
  405. DECLARE FUNCTION NODE_DAT_GetDBATA() AS INTEGER
  406. DECLARE FUNCTION NODE_DAT_PutDBATA(n AS INTEGER)
  407. DECLARE FUNCTION NODE_DAT_GetDAC() AS INTEGER
  408. DECLARE FUNCTION NODE_DAT_PutDAC(n AS INTEGER)
  409. DECLARE FUNCTION NODE_DAT_GetNOR() AS INTEGER
  410. DECLARE FUNCTION NODE_DAT_PutNOR(n AS INTEGER)
  411. DECLARE FUNCTION NODE_DAT_GetNSL() AS INTEGER
  412. DECLARE FUNCTION NODE_DAT_PutNSL(n AS INTEGER)
  413. DECLARE FUNCTION NODE_DAT_GetMKIT() AS INTEGER
  414. DECLARE FUNCTION NODE_DAT_PutMKIT(n AS INTEGER)
  415. DECLARE FUNCTION NODE_DAT_GetNSIRQN() AS INTEGER
  416. DECLARE FUNCTION NODE_DAT_PutNSIRQN(n AS INTEGER)
  417. DECLARE FUNCTION NODE_DAT_GetMBR() AS LONG
  418. DECLARE FUNCTION NODE_DAT_PutMBR(n AS LONG)
  419.  
  420. DECLARE FUNCTION NODE_DAT_GetN300BCF() AS INTEGER
  421. DECLARE FUNCTION NODE_DAT_PutN300BCF(n AS INTEGER)
  422. DECLARE FUNCTION NODE_DAT_GetN1200BCF() AS INTEGER
  423. DECLARE FUNCTION NODE_DAT_PutN1200BCF(n AS INTEGER)
  424. DECLARE FUNCTION NODE_DAT_GetN2400BCF() AS INTEGER
  425. DECLARE FUNCTION NODE_DAT_PutN2400BCF(n AS INTEGER)
  426. DECLARE FUNCTION NODE_DAT_GetRTSCTSHF() AS INTEGER
  427. DECLARE FUNCTION NODE_DAT_PutRTSCTSHF(n AS INTEGER)
  428. DECLARE FUNCTION NODE_DAT_GetLSPF() AS INTEGER
  429. DECLARE FUNCTION NODE_DAT_PutLSPF(n AS INTEGER)
  430. DECLARE FUNCTION NODE_DAT_GetDSWF() AS INTEGER
  431. DECLARE FUNCTION NODE_DAT_PutDSWF(n AS INTEGER)
  432. DECLARE FUNCTION NODE_DAT_GetPBOF() AS INTEGER
  433. DECLARE FUNCTION NODE_DAT_PutPBOF(n AS INTEGER)
  434. DECLARE FUNCTION NODE_DAT_GetUNDDF() AS INTEGER
  435. DECLARE FUNCTION NODE_DAT_PutUNDDF(n AS INTEGER)
  436. DECLARE FUNCTION NODE_DAT_GetPOHDEF() AS INTEGER
  437. DECLARE FUNCTION NODE_DAT_PutPOHDEF(n AS INTEGER)
  438. DECLARE FUNCTION NODE_DAT_GetELRIPEF() AS INTEGER
  439. DECLARE FUNCTION NODE_DAT_PutELRIPEF(n AS INTEGER)
  440. DECLARE FUNCTION NODE_DAT_GetUFDF() AS INTEGER
  441. DECLARE FUNCTION NODE_DAT_PutUFDF(n AS INTEGER)
  442. DECLARE FUNCTION NODE_DAT_GetECIDF() AS INTEGER
  443. DECLARE FUNCTION NODE_DAT_PutECIDF(n AS INTEGER)
  444. DECLARE FUNCTION NODE_DAT_GetBNICF() AS INTEGER
  445. DECLARE FUNCTION NODE_DAT_PutBNICF(n AS INTEGER)
  446. DECLARE FUNCTION NODE_DAT_GetBBCF() AS INTEGER
  447. DECLARE FUNCTION NODE_DAT_PutBBCF(n AS INTEGER)
  448. DECLARE FUNCTION NODE_DAT_GetBOOACF() AS INTEGER
  449. DECLARE FUNCTION NODE_DAT_PutBOOACF(n AS INTEGER)
  450. '
  451. '===========================================================================
  452. ' ** USERSDAT File Structures and Declarations for USERS.DAT File **
  453.  
  454. ' Users.dat BitFields Breadown
  455.  
  456. ' UserDatBit.bit1 BIT Assignment
  457. '  0 = LockedOutFlag                            0 = No, 1 = Yes
  458. '  1 = MarkedForDeletionFlag                    0 = No, 1 = Yes
  459. '  2 = IncludeLOGON1InQWKFlag                   0 = No, 1 = Yes
  460. '  3 = IncludeGOODBYEInQWKFlag                  0 = No, 1 = Yes
  461. '  4 = IncludeBulletinsInQWKFlag                0 = No, 1 = Yes
  462. '  5 = IncludeNewFilesInQWKFlag                 0 = No, 1 = Yes
  463. '  6 = IncludeNewsletterInQWKFlag               0 = No, 1 = Yes
  464. '  7 = CheckWaitingMessagesFlag                 0 = Yes, 1 = No
  465.  
  466. ' UserDatBit.bit2 BIT Assignment
  467. '  0 = GoodbyeAfterUploadFlag                   0 = No, 1 = Yes
  468. '  1 = AttachedFilesInQWKFlag                   0 = No, 1 = Yes
  469. '  2 to 7 = 0 (Reserved)
  470.  
  471. ' UserDatBit.bit3 to UserDatBit.bit10 - All bits are set to 0  (Reserved)
  472. '
  473. '---------------------------------------------------------------------------
  474. '
  475. 'File Name: "USERS.DAT"
  476.  TYPE USERSDAT
  477.     UserName                     AS STRING * 61
  478.     Alias                        AS STRING * 61
  479.     Password                     AS STRING * 16
  480.     StreetAddress1               AS STRING * 41
  481.     StreetAddress2               AS STRING * 41
  482.     City                         AS STRING * 31
  483.     State                        AS STRING * 31
  484.     Country                      AS STRING * 31
  485.     ZipCode                      AS STRING * 11
  486.     PhoneNumber                  AS STRING * 31
  487.     Birthday                     AS STRING * 9
  488.     DateOfFirstCall              AS STRING * 9
  489.     DateOfLastFileCheck          AS STRING * 9
  490.     SubscriptionExpirationDate   AS STRING * 9
  491.     DateAndTimeOfLastCall        AS STRING * 15
  492.     ExpertMode                   AS INTEGER
  493.     SecurityLevel                AS INTEGER
  494.     NumberOfCalls                AS INTEGER
  495.     TimeLeftForToday             AS INTEGER
  496.     LastMessageConference        AS INTEGER
  497.     LastFileArea                 AS INTEGER
  498.     DefaultProtocol              AS INTEGER
  499.     NumberOfCallsToday           AS INTEGER
  500.     QWKNetworkNode               AS INTEGER
  501.     DefaultEditor                AS INTEGER
  502.     InitialChatStatus            AS INTEGER
  503.     NumberOfFilesDownloadedToday AS INTEGER
  504.     ArchiveUsedInQWK             AS INTEGER
  505.     NumberOfFilesUploaded        AS LONG
  506.     NumberOfFilesDownloaded      AS LONG
  507.     NumberOfKBytesUploaded       AS LONG
  508.     NumberOfKBytesDownloaded     AS LONG
  509.     NumberOfMessagesPosted       AS LONG
  510.     NumberOfBytesDownloadedToday AS LONG
  511.     NetworkBitFields             AS NetworkBit
  512.     UserDatBitFields             AS BitFields
  513.     ReservedDataArea             AS STRING * 556
  514.  END TYPE
  515.  
  516.  DIM UserDatBit AS BitFields
  517.  DIM USERSDAT   AS SHARED USERSDAT
  518.  DIM ud         AS SHARED USERSDAT PTR
  519.  
  520.  ud = VARPTR32(USERSDAT)
  521.  LSET USERSDAT = USERSDAT
  522. '
  523. '---------------------------------------------------------------------------
  524. '
  525. 'Declare's used by the USERSDAT.PBU API
  526. '
  527. ' These function's below are from the USERSDAT.PBU Unit
  528. '
  529. DECLARE FUNCTION USERS_DAT_OPEN()
  530. DECLARE FUNCTION USERS_DAT_CLOSE()
  531. DECLARE FUNCTION USERS_DAT_READ(n AS WORD)
  532. DECLARE FUNCTION USERS_DAT_WRITE(n AS WORD)
  533. DECLARE FUNCTION USERS_DAT_Length() AS LONG
  534. DECLARE FUNCTION USERS_DAT_OpenRead(n AS WORD)
  535. DECLARE FUNCTION USERS_DAT_WriteClose(n AS WORD)
  536. DECLARE FUNCTION USERS_DAT_OpenReadClose(n AS WORD)
  537. DECLARE FUNCTION USERS_DAT_OpenWriteClose(n AS WORD)
  538. DECLARE FUNCTION USERS_DAT_Clearit(n AS WORD)
  539.  
  540. DECLARE FUNCTION USERS_DAT_GetUN() AS STRING
  541. DECLARE FUNCTION USERS_DAT_PutUN(s AS STRING)
  542. DECLARE FUNCTION USERS_DAT_GetAN() AS STRING
  543. DECLARE FUNCTION USERS_DAT_PutAN(s AS STRING)
  544. DECLARE FUNCTION USERS_DAT_GetUP() AS STRING
  545. DECLARE FUNCTION USERS_DAT_PutUP(s AS STRING)
  546. DECLARE FUNCTION USERS_DAT_GetSA1() AS STRING
  547. DECLARE FUNCTION USERS_DAT_PutSA1(s AS STRING)
  548. DECLARE FUNCTION USERS_DAT_GetSA2() AS STRING
  549. DECLARE FUNCTION USERS_DAT_PutSA2(s AS STRING)
  550. DECLARE FUNCTION USERS_DAT_GetCity() AS STRING
  551. DECLARE FUNCTION USERS_DAT_PutCity(s AS STRING)
  552. DECLARE FUNCTION USERS_DAT_GetUS() AS STRING
  553. DECLARE FUNCTION USERS_DAT_PutUS(s AS STRING)
  554. DECLARE FUNCTION USERS_DAT_GetUC() AS STRING
  555. DECLARE FUNCTION USERS_DAT_PutUC(s AS STRING)
  556. DECLARE FUNCTION USERS_DAT_GetUZ() AS STRING
  557. DECLARE FUNCTION USERS_DAT_PutUZ(s AS STRING)
  558. DECLARE FUNCTION USERS_DAT_GetUPN() AS STRING
  559. DECLARE FUNCTION USERS_DAT_PutUPN(s AS STRING)
  560. DECLARE FUNCTION USERS_DAT_GetUBD() AS STRING
  561. DECLARE FUNCTION USERS_DAT_PutUBD(s AS STRING)
  562. DECLARE FUNCTION USERS_DAT_GetDOFC() AS STRING
  563. DECLARE FUNCTION USERS_DAT_PutDOFC(s AS STRING)
  564. DECLARE FUNCTION USERS_DAT_GetDOLFC() AS STRING
  565. DECLARE FUNCTION USERS_DAT_PutDOLFC(s AS STRING)
  566. DECLARE FUNCTION USERS_DAT_GetSED() AS STRING
  567. DECLARE FUNCTION USERS_DAT_PutSED(s AS STRING)
  568. DECLARE FUNCTION USERS_DAT_GetDATOLC() AS STRING
  569. DECLARE FUNCTION USERS_DAT_PutDATOLC(s AS STRING)
  570.  
  571. DECLARE FUNCTION USERS_DAT_PutEM(n AS INTEGER)
  572. DECLARE FUNCTION USERS_DAT_GetEM() AS INTEGER
  573. DECLARE FUNCTION USERS_DAT_PutSL(n AS INTEGER)
  574. DECLARE FUNCTION USERS_DAT_GetSL() AS INTEGER
  575. DECLARE FUNCTION USERS_DAT_PutNOC(n AS INTEGER)
  576. DECLARE FUNCTION USERS_DAT_GetNOC() AS INTEGER
  577. DECLARE FUNCTION USERS_DAT_PutTLFT(n AS INTEGER)
  578. DECLARE FUNCTION USERS_DAT_GetTLFT() AS INTEGER
  579. DECLARE FUNCTION USERS_DAT_PutLMC(n AS INTEGER)
  580. DECLARE FUNCTION USERS_DAT_GetLMC() AS INTEGER
  581. DECLARE FUNCTION USERS_DAT_PutLFA(n AS INTEGER)
  582. DECLARE FUNCTION USERS_DAT_GetLFA() AS INTEGER
  583. DECLARE FUNCTION USERS_DAT_PutDP(n AS INTEGER)
  584. DECLARE FUNCTION USERS_DAT_GetDP() AS INTEGER
  585. DECLARE FUNCTION USERS_DAT_PutNOCT(n AS INTEGER)
  586. DECLARE FUNCTION USERS_DAT_GetNOCT() AS INTEGER
  587. DECLARE FUNCTION USERS_DAT_PutQWKNN(n AS INTEGER)
  588. DECLARE FUNCTION USERS_DAT_GetQWKNN() AS INTEGER
  589. DECLARE FUNCTION USERS_DAT_PutDE(n AS INTEGER)
  590. DECLARE FUNCTION USERS_DAT_GetDE() AS INTEGER
  591. DECLARE FUNCTION USERS_DAT_PutICS(n AS INTEGER)
  592. DECLARE FUNCTION USERS_DAT_GetICS() AS INTEGER
  593. DECLARE FUNCTION USERS_DAT_PutNOFDT(n AS INTEGER)
  594. DECLARE FUNCTION USERS_DAT_GetNOFDT() AS INTEGER
  595. DECLARE FUNCTION USERS_DAT_PutAUIQ(n AS INTEGER)
  596. DECLARE FUNCTION USERS_DAT_GetAUIQ() AS INTEGER
  597. DECLARE FUNCTION USERS_DAT_PutSL(n AS INTEGER)
  598. DECLARE FUNCTION USERS_DAT_GetSL() AS INTEGER
  599.  
  600. DECLARE FUNCTION USERS_DAT_GetNOFU() AS LONG
  601. DECLARE FUNCTION USERS_DAT_PutNOFU(n AS LONG)
  602. DECLARE FUNCTION USERS_DAT_GetNOFD() AS LONG
  603. DECLARE FUNCTION USERS_DAT_PutNOFD(n AS LONG)
  604. DECLARE FUNCTION USERS_DAT_GetNOKBU() AS LONG
  605. DECLARE FUNCTION USERS_DAT_PutNOKBU(n AS LONG)
  606. DECLARE FUNCTION USERS_DAT_GetNOKBD() AS LONG
  607. DECLARE FUNCTION USERS_DAT_PutNOKBD(n AS LONG)
  608. DECLARE FUNCTION USERS_DAT_GetNOMP() AS LONG
  609. DECLARE FUNCTION USERS_DAT_PutNOMP(n AS LONG)
  610. DECLARE FUNCTION USERS_DAT_GetNOBDT() AS LONG
  611. DECLARE FUNCTION USERS_DAT_PutNOBDT(n AS LONG)
  612.  
  613. DECLARE FUNCTION USERS_DAT_GetNWN() AS STRING
  614. DECLARE FUNCTION USERS_DAT_GetNWF(nw AS INTEGER) AS INTEGER
  615. DECLARE FUNCTION USERS_DAT_PutNWF(nw AS INTEGER, n AS INTEGER)
  616.  
  617. DECLARE FUNCTION USERS_DAT_GetLOF() AS INTEGER
  618. DECLARE FUNCTION USERS_DAT_PutLOF(n AS INTEGER)
  619. DECLARE FUNCTION USERS_DAT_GetMFDF() AS INTEGER
  620. DECLARE FUNCTION USERS_DAT_PutMFDF(n AS INTEGER)
  621. DECLARE FUNCTION USERS_DAT_GetILIQF() AS INTEGER
  622. DECLARE FUNCTION USERS_DAT_PutILIQF(n AS INTEGER)
  623. DECLARE FUNCTION USERS_DAT_GetIGIQF() AS INTEGER
  624. DECLARE FUNCTION USERS_DAT_PutIGIQF(n AS INTEGER)
  625. DECLARE FUNCTION USERS_DAT_GetIBIQF() AS INTEGER
  626. DECLARE FUNCTION USERS_DAT_PutIBIQF(n AS INTEGER)
  627. DECLARE FUNCTION USERS_DAT_GetINFIQF() AS INTEGER
  628. DECLARE FUNCTION USERS_DAT_PutINFIQF(n AS INTEGER)
  629. DECLARE FUNCTION USERS_DAT_GetINLIQF() AS INTEGER
  630. DECLARE FUNCTION USERS_DAT_PutINLIQF(n AS INTEGER)
  631. DECLARE FUNCTION USERS_DAT_GetCWMF() AS INTEGER
  632. DECLARE FUNCTION USERS_DAT_PutCWMF(n AS INTEGER)
  633. DECLARE FUNCTION USERS_DAT_GetGAUF() AS INTEGER
  634. DECLARE FUNCTION USERS_DAT_PutGAUF(n AS INTEGER)
  635. DECLARE FUNCTION USERS_DAT_GetAFIQF() AS INTEGER
  636. DECLARE FUNCTION USERS_DAT_PutAFIQF(n AS INTEGER)
  637. '
  638. '===========================================================================
  639. ' ** USERS_SPM File Structures and Declarations for USERS.SPM File **
  640.  
  641. ' Users.spm BitField Breakdown
  642.  
  643. '  BIT Assignment
  644. '  0 = AccessPrivateConferenceFlag      0 = No, 1 = Yes
  645. '  1 = CoSysopStatusFlag                0 = No, 1 = Yes
  646. '  2 to 7 = 0 (Reserved)
  647.  
  648. 'Sub Type Structure for 1 byte BitFields
  649.   TYPE UserSpmBit
  650.     bit1 AS BYTE
  651.   END TYPE
  652. '
  653. '-----------------------------------------------------------------------------
  654. '
  655. ' File Name: "USERS.SPM"
  656.  TYPE USERSSPM
  657.     LastMessageRead        AS LONG
  658.     LastWaitingMessageRead AS LONG
  659.     WaitingMessageCounter  AS INTEGER
  660.     QueuedConference       AS INTEGER
  661.     UserSpmBitFields       AS UserSpmBit
  662.  END TYPE
  663.  
  664.  DIM UserSpmBit AS UserSpmBit
  665.  DIM USERSSPM   AS SHARED USERSSPM
  666.  DIM uspm       AS SHARED USERSSPM PTR
  667.  
  668.  uspm = VARPTR32(USERSSPM)
  669.  LSET USERSSPM = USERSSPM
  670. '
  671. '---------------------------------------------------------------------------
  672. '
  673. 'Declare's used by the USERSSPM.PBU API
  674. '
  675. ' These function's below are from the USERSSPM.PBU Unit
  676. '
  677. DECLARE FUNCTION USERS_SPM_OPEN()
  678. DECLARE FUNCTION USERS_SPM_CLOSE()
  679. DECLARE FUNCTION USERS_SPM_READ(u AS WORD, n AS INTEGER)
  680. DECLARE FUNCTION USERS_SPM_WRITE(u AS WORD, n AS INTEGER)
  681. DECLARE FUNCTION USERS_SPM_OpenRead(u AS WORD, n AS INTEGER)
  682. DECLARE FUNCTION USERS_SPM_WriteClose(u AS WORD, n AS INTEGER)
  683. DECLARE FUNCTION USERS_SPM_OpenReadClose(u AS WORD, n AS INTEGER)
  684. DECLARE FUNCTION USERS_SPM_OpenWriteClose(u AS WORD, n AS INTEGER)
  685. DECLARE FUNCTION USERS_SPM_Clearit(n AS WORD)
  686. DECLARE FUNCTION USERS_SPM_TotalRecords() AS WORD
  687.  
  688. DECLARE FUNCTION USERS_SPM_GetLMR() AS LONG
  689. DECLARE FUNCTION USERS_SPM_PutLMR(n AS LONG)
  690. DECLARE FUNCTION USERS_SPM_GetLWMR() AS LONG
  691. DECLARE FUNCTION USERS_SPM_PutLWMR(n AS LONG)
  692. DECLARE FUNCTION USERS_SPM_GetWMC() AS INTEGER
  693. DECLARE FUNCTION USERS_SPM_PutWMC(n AS INTEGER)
  694. DECLARE FUNCTION USERS_SPM_GetQC() AS INTEGER
  695. DECLARE FUNCTION USERS_SPM_PutQC(n AS INTEGER)
  696. DECLARE FUNCTION USERS_SPM_GetAPCF() AS INTEGER
  697. DECLARE FUNCTION USERS_SPM_PutAPCF(n AS INTEGER)
  698. DECLARE FUNCTION USERS_SPM_GetCSSF() AS INTEGER
  699. DECLARE FUNCTION USERS_SPM_PutCSSF(n AS INTEGER)
  700. '
  701. '===========================================================================
  702. ' ** USERS_SPF File Structures and Declarations for USERS.SPF File **
  703. '
  704. ' Users.spf BitField Breakdown
  705.  
  706. ' BIT Assignment
  707. '    0 = AccessPrivateAreaFlag                    0 = No, 1 = Yes
  708. '    1 to 7 = 0 (Reserved)
  709.  
  710. 'File Name: "USERS.SPF"
  711.  TYPE USERSSPF
  712.     AccessPrivateAreaFlag AS BYTE
  713.  END TYPE
  714.  
  715.  DIM USERSSPF AS USERSSPF
  716.  DIM uspf     AS USERSSPF PTR
  717.  
  718.  uspf = VARPTR32(USERSSPF)
  719.  LSET USERSSPF = USERSSPF
  720. '
  721. '---------------------------------------------------------------------------
  722. '
  723. 'Declare's used by the USERSSPF.PBU API
  724. '
  725. ' These function's below are from the USERSSPF.PBU Unit
  726. '
  727. DECLARE FUNCTION USERS_SPF_OPEN()
  728. DECLARE FUNCTION USERS_SPF_CLOSE()
  729. DECLARE FUNCTION USERS_SPF_READ(u AS WORD, n AS INTEGER)
  730. DECLARE FUNCTION USERS_SPF_WRITE(u AS WORD, n AS INTEGER)
  731. DECLARE FUNCTION USERS_SPF_OpenRead(u AS WORD, n AS INTEGER)
  732. DECLARE FUNCTION USERS_SPF_WriteClose(u AS WORD, n AS INTEGER)
  733. DECLARE FUNCTION USERS_SPF_OpenReadClose(u AS WORD, n AS INTEGER)
  734. DECLARE FUNCTION USERS_SPF_OpenWriteClose(u AS WORD, n AS INTEGER)
  735. DECLARE FUNCTION USERS_SPF_Clearit(n AS WORD)
  736. DECLARE FUNCTION USERS_SPF_TotalRecords() AS WORD
  737.  
  738. DECLARE FUNCTION USERS_SPF_GetAPAF() AS INTEGER
  739. DECLARE FUNCTION USERS_SPF_PutAPAF(n AS INTEGER)
  740. '
  741. '===========================================================================
  742. ' ** USERS_IDX File Structures and Declarations for USERS.IDX File **
  743. '
  744. 'File Name: "USERS.IDX"
  745.  TYPE USERSIDX
  746.     UserName     AS STRING * 61
  747.     RecordNumber AS LONG
  748.  END TYPE
  749.  
  750.  DIM USERSIDX AS SHARED USERSIDX
  751.  DIM ui       AS SHARED USERSIDX PTR
  752.  
  753.  ui = VARPTR32(USERSIDX)
  754.  LSET USERSIDX = USERSIDX
  755. '
  756. '---------------------------------------------------------------------------
  757. '
  758. 'Declare's used by the USERSIDX.PBU API
  759. '
  760. ' These function's below are from the USERSIDX.PBU Unit
  761. '
  762. DECLARE FUNCTION USERS_IDX_OPEN()
  763. DECLARE FUNCTION USERS_IDX_CLOSE()
  764. DECLARE FUNCTION USERS_IDX_READ(n AS WORD)
  765. DECLARE FUNCTION USERS_IDX_WRITE(n AS WORD)
  766. DECLARE FUNCTION USERS_IDX_Length() AS LONG
  767. DECLARE FUNCTION USERS_IDX_OpenRead(n AS WORD)
  768. DECLARE FUNCTION USERS_IDX_WriteClose(n AS WORD)
  769. DECLARE FUNCTION USERS_IDX_OpenReadClose(n AS WORD)
  770. DECLARE FUNCTION USERS_IDX_OpenWriteClose(n AS WORD)
  771. DECLARE FUNCTION USERS_IDX_Clearit(n AS WORD)
  772.  
  773. DECLARE FUNCTION USERS_IDX_Search(s AS STRING) AS LONG
  774. DECLARE FUNCTION USERS_IDX_Insert(s AS STRING, n AS LONG) AS LONG
  775. DECLARE FUNCTION USERS_IDX_Replace(os AS STRING, ns AS STRING)
  776.  
  777. DECLARE FUNCTION USERS_IDX_GetUN() AS STRING
  778. DECLARE FUNCTION USERS_IDX_PutUN(s AS STRING)
  779. DECLARE FUNCTION USERS_IDX_GetRN() AS WORD
  780. DECLARE FUNCTION USERS_IDX_PutRN(n AS WORD)
  781. '
  782. '===========================================================================
  783. ' ** ALIAS_IDX File Structures and Declarations for ALAIS.IDX File **
  784. '
  785. 'File Name: "ALIAS.IDX"
  786.  TYPE ALIASIDX
  787.     UserName     AS STRING * 61
  788.     RecordNumber AS LONG
  789.  END TYPE
  790.  
  791.  DIM ALIASIDX AS SHARED ALIASIDX 
  792.  DIM ai       AS SHARED ALIASIDX PTR
  793.  
  794.  ai = VARPTR32(ALIASIDX)
  795.  LSET ALIASIDX = ALIASIDX
  796. '
  797. '---------------------------------------------------------------------------
  798. '
  799. 'Declare's used by the ALIASIDX.PBU API
  800. '
  801. ' These function's below are from the ALIASIDX.PBU Unit
  802. '
  803. DECLARE FUNCTION ALIAS_IDX_OPEN()
  804. DECLARE FUNCTION ALIAS_IDX_CLOSE()
  805. DECLARE FUNCTION ALIAS_IDX_READ(n AS WORD)
  806. DECLARE FUNCTION ALIAS_IDX_WRITE(n AS WORD)
  807. DECLARE FUNCTION ALIAS_IDX_Length() AS LONG
  808. DECLARE FUNCTION ALIAS_IDX_OpenRead(n AS WORD)
  809. DECLARE FUNCTION ALIAS_IDX_WriteClose(n AS WORD)
  810. DECLARE FUNCTION ALIAS_IDX_OpenReadClose(n AS WORD)
  811. DECLARE FUNCTION ALIAS_IDX_OpenWriteClose(n AS WORD)
  812. DECLARE FUNCTION ALIAS_IDX_Clearit(n AS WORD)
  813.  
  814. DECLARE FUNCTION ALIAS_IDX_Search(s AS STRING) AS LONG
  815. DECLARE FUNCTION ALIAS_IDX_Insert(s AS STRING, n AS LONG) AS LONG
  816. DECLARE FUNCTION ALIAS_IDX_Replace(os AS STRING, ns AS STRING)
  817.  
  818. DECLARE FUNCTION ALIAS_IDX_GetUN() AS STRING
  819. DECLARE FUNCTION ALIAS_IDX_PutUN(s AS STRING)
  820. DECLARE FUNCTION ALIAS_IDX_GetRN() AS WORD
  821. DECLARE FUNCTION ALIAS_IDX_PutRN(n AS WORD)
  822. '
  823. '===========================================================================
  824. ' ** NETWORK_DAT File Structures and Declarations for NETWORK.DAT File **
  825.  
  826. 'File Name: "NETWORK.DAT"
  827.  TYPE NETWORK
  828.     NetworkName      AS STRING * 41
  829.     ReservedDataArea AS STRING * 215
  830.  END TYPE
  831.  
  832.  DIM NETWORK AS SHARED NETWORK
  833.  DIM netwk   AS SHARED NETWORK PTR
  834.  
  835.  netwk = VARPTR32(NETWORK)
  836.  LSET NETWORK = NETWORK    
  837. '
  838. '---------------------------------------------------------------------------
  839. '
  840. ' Declare's used by the NETWORK.PBU API
  841.  
  842. 'These FUNCTION's below are from the NETWORK.PBU Unit
  843. DECLARE FUNCTION NETWORK_DAT_OPEN()
  844. DECLARE FUNCTION NETWORK_DAT_CLOSE()
  845. DECLARE FUNCTION NETWORK_DAT_READ(n AS INTEGER)
  846. DECLARE FUNCTION NETWORK_DAT_WRITE(n AS INTEGER)
  847. DECLARE FUNCTION NETWORK_DAT_Length() AS LONG
  848. DECLARE FUNCTION NETWORK_DAT_OpenRead(n AS INTEGER)
  849. DECLARE FUNCTION NETWORK_DAT_WriteClose(n AS INTEGER)
  850. DECLARE FUNCTION NETWORK_DAT_OpenReadClose(n AS INTEGER)
  851. DECLARE FUNCTION NETWORK_DAT_OpenWriteClose(n AS INTEGER)
  852. DECLARE FUNCTION NETWORK_DAT_Clearit(n AS INTEGER)
  853.  
  854. DECLARE FUNCTION NETWORK_DAT_GetNWN() AS STRING
  855. DECLARE FUNCTION NETWORK_DAT_PutNWN(s AS STRING)
  856. '
  857. '===========================================================================
  858. ' ** MCONF_DAT File Structures and Declarations for MCONF.DAT File **
  859. '
  860. ' Mconf.dat BitFields Breakdown
  861. '
  862. ' MconfBit.bit1 BIT Assignment
  863. '  0 = NetworkedConferenceFlag                  0 = No, 1 = Yes
  864. '  1 = PrivateConferenceFlag                    0 = No, 1 = Yes
  865. '  2 = FidoStyleNetMailFlag                     0 = No, 1 = Yes
  866. '  3 = AliasConferenceFlag                      0 = No, 1 = Yes
  867. '  4 = UserDeleteFlag                           0 = Not Allowed, 1 = Allowed
  868. '  5 = TriPackBackupFlag                        0 = No, 1 = Yes
  869. '  6 = DisablePrivateMessagesFlag               0 = Yes, 1 = No
  870. '  7 = DisablePublicMessagesFlag                0 = Yes, 1 = No
  871. '
  872. ' NOTE!
  873. ' MconfBit.bit6 & MconfBit.bit7 both can be set to Yes, but only one may be
  874. ' set to No, with the other set to Yes.
  875.  
  876. ' MconfBit.bit2 to MconfBit.bit10 - All bits are set to 0  (Reserved)
  877. '
  878. '---------------------------------------------------------------------------
  879. '
  880. 'File Name: "MCONF.DAT"
  881.  TYPE MCONF
  882.     ConfName                  AS STRING * 41
  883.     ReadSecurityLevel         AS INTEGER
  884.     PostSecurityLevel         AS INTEGER
  885.     TriPackNumberOfDaysToSave AS INTEGER
  886.     HighestMessageNumber      AS LONG
  887.     NetworkBitFields          AS NetworkBit
  888.     MconfBitFields            AS BitFields
  889.     ReservedDataArea          AS STRING * 961
  890.  END TYPE
  891.  
  892.  DIM MconfBit AS BitFields
  893.  DIM MCONF    AS SHARED MCONF
  894.  DIM mc       AS SHARED MCONF PTR
  895.  
  896.  mc = VARPTR32(MCONF)
  897.  LSET MCONF = MCONF  
  898. '
  899. '---------------------------------------------------------------------------
  900. '
  901. 'Declare's used by the MCONF.PBU API
  902. '
  903. ' These function's below are from the MCONF.PBU Unit
  904. '
  905. DECLARE FUNCTION MCONF_DAT_OPEN()
  906. DECLARE FUNCTION MCONF_DAT_CLOSE()
  907. DECLARE FUNCTION MCONF_DAT_READ(n AS INTEGER)
  908. DECLARE FUNCTION MCONF_DAT_WRITE(n AS INTEGER)
  909. DECLARE FUNCTION MCONF_DAT_Length() AS LONG
  910. DECLARE FUNCTION MCONF_DAT_OpenRead(n AS INTEGER)
  911. DECLARE FUNCTION MCONF_DAT_WriteClose(n AS INTEGER)
  912. DECLARE FUNCTION MCONF_DAT_OpenReadClose(n AS INTEGER)
  913. DECLARE FUNCTION MCONF_DAT_OpenWriteClose(n AS INTEGER)
  914. DECLARE FUNCTION MCONF_DAT_Clearit(n AS INTEGER)
  915.  
  916. DECLARE FUNCTION MCONF_DAT_GetMCN() AS STRING
  917. DECLARE FUNCTION MCONF_DAT_PutMCN(s AS STRING)
  918. DECLARE FUNCTION MCONF_DAT_GetNWCN() AS STRING
  919. DECLARE FUNCTION MCONF_DAT_GetRSL() AS INTEGER
  920. DECLARE FUNCTION MCONF_DAT_PutRSL(n AS INTEGER)
  921. DECLARE FUNCTION MCONF_DAT_GetPSL() AS INTEGER
  922. DECLARE FUNCTION MCONF_DAT_PutPSL(n AS INTEGER)
  923. DECLARE FUNCTION MCONF_DAT_GetTPNODTS() AS INTEGER
  924. DECLARE FUNCTION MCONF_DAT_PutTPNODTS(n AS INTEGER)
  925. DECLARE FUNCTION MCONF_DAT_GetHMN() AS LONG
  926. DECLARE FUNCTION MCONF_DAT_PutHMN(n AS LONG)
  927. DECLARE FUNCTION MCONF_DAT_GetNWF(nw AS INTEGER) AS INTEGER
  928. DECLARE FUNCTION MCONF_DAT_PutNWF(nw AS INTEGER, n AS INTEGER)
  929.  
  930. DECLARE FUNCTION MCONF_DAT_GetNWCF() AS INTEGER
  931. DECLARE FUNCTION MCONF_DAT_PutNWCF(n AS INTEGER)
  932. DECLARE FUNCTION MCONF_DAT_GetPCF() AS INTEGER
  933. DECLARE FUNCTION MCONF_DAT_PutPCF(n AS INTEGER)
  934. DECLARE FUNCTION MCONF_DAT_GetFSNM() AS INTEGER
  935. DECLARE FUNCTION MCONF_DAT_PutFSNM(n AS INTEGER)
  936. DECLARE FUNCTION MCONF_DAT_GetACF() AS INTEGER
  937. DECLARE FUNCTION MCONF_DAT_PutACF(n AS INTEGER)
  938. DECLARE FUNCTION MCONF_DAT_GetUDF() AS INTEGER
  939. DECLARE FUNCTION MCONF_DAT_PutUDF(n AS INTEGER)
  940. DECLARE FUNCTION MCONF_DAT_GetTPBF() AS INTEGER
  941. DECLARE FUNCTION MCONF_DAT_PutTPBF(n AS INTEGER)
  942. DECLARE FUNCTION MCONF_DAT_GetDPriM() AS INTEGER
  943. DECLARE FUNCTION MCONF_DAT_PutDPriM(n AS INTEGER)
  944. DECLARE FUNCTION MCONF_DAT_GetDPubM() AS INTEGER
  945. DECLARE FUNCTION MCONF_DAT_PutDPubM(n AS INTEGER)
  946. '
  947. '============================================================================
  948. ' ** MNNNN File Structures and Declarations for MNNNN.HDR File **
  949. '
  950. ' Mnnnn.hdr BitFields Breakdown
  951.  
  952. ' MnnnnBit.bit1 BIT Assignment
  953. '  0 = EchoMessageFlag
  954. '  1 = ThreadedMessageFlag
  955. '  2 = PrivateMessageFlag
  956. '  3 = DeletedMessageFlag
  957. '  4 = ReceivedMessageFlag
  958. '  5 = PermanentMessageFlag
  959. '  6 = TriTossEchoMessageFlag
  960. '  7 = CrashMailFlag
  961.  
  962. ' Mnnnn.bit2 to Mnnnn.bit10 - All bits are set to 0  (Reserved)
  963. '
  964. '---------------------------------------------------------------------------
  965. ' File Name: "Mnnnn.HDR"  where "nnnn" is the Conf Number
  966. ' Example: M0001.HDR to M9999.HDR
  967. '
  968.  TYPE MNNNN
  969.     FromUser                     AS STRING * 61
  970.     ToUser                       AS STRING * 61
  971.     Subject                      AS STRING * 61
  972.     NameOfAttachedFile           AS STRING * 81
  973.     DateAndTime                  AS STRING * 15
  974.     NetMailFromZone              AS INTEGER
  975.     NetMailFromNet               AS INTEGER
  976.     NetMailFromNode              AS INTEGER
  977.     NetMailFromPoint             AS INTEGER
  978.     NetMailToZone                AS INTEGER
  979.     NetMailToNet                 AS INTEGER
  980.     NetMailToNode                AS INTEGER
  981.     NetMailToPoint               AS INTEGER
  982.     OffsetIntoTextFile           AS LONG
  983.     MessageLength                AS LONG
  984.     Number                       AS LONG
  985.     NumberOfMessageThisRepliesTo AS LONG
  986.     FromHash                     AS LONG
  987.     ToHash                       AS LONG
  988.     MnnnnBitFields               AS BitFields
  989.     ReservedDataArea             AS STRING * 695
  990.  END TYPE
  991.  
  992.  DIM MnnnnBit AS BitFields
  993.  DIM MNNNN    AS SHARED MNNNN
  994.  DIM mch      AS SHARED MNNNN PTR
  995.  
  996.  mch = VARPTR32(MNNNN)
  997.  LSET MNNNN = MNNNN  
  998. '
  999. '---------------------------------------------------------------------------
  1000. '
  1001. 'Declare's used by the MNNNNH.PBU API
  1002. '
  1003. ' These function's below are from the MNNNN.PBU Unit
  1004. '
  1005. DECLARE FUNCTION MNNNN_HDR_OPEN(c AS INTEGER) AS INTEGER
  1006. DECLARE FUNCTION MNNNN_HDR_CLOSE()
  1007. DECLARE FUNCTION MNNNN_HDR_READ(mn AS LONG)
  1008. DECLARE FUNCTION MNNNN_HDR_WRITE(mn AS LONG)
  1009. DECLARE FUNCTION MNNNN_HDR_Length() AS LONG
  1010. DECLARE FUNCTION MNNNN_HDR_OpenRead(c AS INTEGER, mn AS LONG) AS INTEGER
  1011. DECLARE FUNCTION MNNNN_HDR_WriteClose(mn AS LONG)
  1012. DECLARE FUNCTION MNNNN_HDR_OpenReadClose(c AS INTEGER, mn AS LONG) AS INTEGER
  1013. DECLARE FUNCTION MNNNN_HDR_OpenWriteClose(c AS INTEGER, mn AS LONG) AS INTEGER
  1014. DECLARE FUNCTION MNNNN_HDR_Clearit(c AS INTEGER)
  1015.  
  1016. DECLARE FUNCTION MNNNN_HDR_Search(mn AS LONG) AS INTEGER
  1017. DECLARE FUNCTION MNNNN_HDR_GetNext(mn AS LONG) AS INTEGER
  1018. DECLARE FUNCTION MNNNN_HDR_GetYourNext(h AS LONG, mn AS LONG) AS INTEGER
  1019.  
  1020. DECLARE FUNCTION MNNNN_HDR_GetFU() AS STRING
  1021. DECLARE FUNCTION MNNNN_HDR_PutFU(s AS STRING)
  1022. DECLARE FUNCTION MNNNN_HDR_GetTU() AS STRING
  1023. DECLARE FUNCTION MNNNN_HDR_PutTU(s AS STRING)
  1024. DECLARE FUNCTION MNNNN_HDR_GetMS() AS STRING
  1025. DECLARE FUNCTION MNNNN_HDR_PutMS(s AS STRING)
  1026. DECLARE FUNCTION MNNNN_HDR_GetNOAF() AS STRING
  1027. DECLARE FUNCTION MNNNN_HDR_PutNOAF(s AS STRING)
  1028. DECLARE FUNCTION MNNNN_HDR_GetDAT() AS STRING
  1029. DECLARE FUNCTION MNNNN_HDR_PutDAT(s AS STRING)
  1030.  
  1031. DECLARE FUNCTION MNNNN_HDR_GetNMFZ() AS INTEGER
  1032. DECLARE FUNCTION MNNNN_HDR_PutNMFZ(n AS INTEGER)
  1033. DECLARE FUNCTION MNNNN_HDR_GetNMFNet() AS INTEGER
  1034. DECLARE FUNCTION MNNNN_HDR_PutNMFNet(n AS INTEGER)
  1035. DECLARE FUNCTION MNNNN_HDR_GetNMFNode() AS INTEGER
  1036. DECLARE FUNCTION MNNNN_HDR_PutNMFNode(n AS INTEGER)
  1037. DECLARE FUNCTION MNNNN_HDR_GetNMFP() AS INTEGER
  1038. DECLARE FUNCTION MNNNN_HDR_PutNMFP(n AS INTEGER)
  1039. DECLARE FUNCTION MNNNN_HDR_GetNMTZ() AS INTEGER
  1040. DECLARE FUNCTION MNNNN_HDR_PutNMTZ(n AS INTEGER)
  1041. DECLARE FUNCTION MNNNN_HDR_GetNMTNet() AS INTEGER
  1042. DECLARE FUNCTION MNNNN_HDR_PutNMTNet(n AS INTEGER)
  1043. DECLARE FUNCTION MNNNN_HDR_GetNMTNode() AS INTEGER
  1044. DECLARE FUNCTION MNNNN_HDR_PutNMTNode(n AS INTEGER)
  1045. DECLARE FUNCTION MNNNN_HDR_GetNMTP() AS INTEGER
  1046. DECLARE FUNCTION MNNNN_HDR_PutNMTP(n AS INTEGER)
  1047. DECLARE FUNCTION MNNNN_HDR_GetOITF() AS LONG
  1048. DECLARE FUNCTION MNNNN_HDR_PutOITF(n AS LONG)
  1049. DECLARE FUNCTION MNNNN_HDR_GetML() AS LONG
  1050. DECLARE FUNCTION MNNNN_HDR_PutML(n AS LONG)
  1051. DECLARE FUNCTION MNNNN_HDR_GetMN() AS LONG
  1052. DECLARE FUNCTION MNNNN_HDR_PutMN(mn AS LONG)
  1053. DECLARE FUNCTION MNNNN_HDR_GetNOMTRT() AS LONG
  1054. DECLARE FUNCTION MNNNN_HDR_PutNOMTRT(n AS LONG)
  1055. DECLARE FUNCTION MNNNN_HDR_GetFH() AS LONG
  1056. DECLARE FUNCTION MNNNN_HDR_PutFH(n AS LONG)
  1057. DECLARE FUNCTION MNNNN_HDR_GetTH() AS LONG
  1058. DECLARE FUNCTION MNNNN_HDR_PutTH(n AS LONG)
  1059.  
  1060. DECLARE FUNCTION MNNNN_HDR_GetEMF() AS INTEGER
  1061. DECLARE FUNCTION MNNNN_HDR_PutEMF(n AS INTEGER)
  1062. DECLARE FUNCTION MNNNN_HDR_GetTMF() AS INTEGER
  1063. DECLARE FUNCTION MNNNN_HDR_PutTMF(n AS INTEGER)
  1064. DECLARE FUNCTION MNNNN_HDR_GetPriMF() AS INTEGER
  1065. DECLARE FUNCTION MNNNN_HDR_PutPriMF(n AS INTEGER)
  1066. DECLARE FUNCTION MNNNN_HDR_GetDMF() AS INTEGER
  1067. DECLARE FUNCTION MNNNN_HDR_PutDMF(n AS INTEGER)
  1068. DECLARE FUNCTION MNNNN_HDR_GetRMF() AS INTEGER
  1069. DECLARE FUNCTION MNNNN_HDR_PutRMF(n AS INTEGER)
  1070. DECLARE FUNCTION MNNNN_HDR_GetPerMF() AS INTEGER
  1071. DECLARE FUNCTION MNNNN_HDR_PutPerMF(n AS INTEGER)
  1072. DECLARE FUNCTION MNNNN_HDR_GetTTEMF() AS INTEGER
  1073. DECLARE FUNCTION MNNNN_HDR_PutTTEMF(n AS INTEGER)
  1074. DECLARE FUNCTION MNNNN_HDR_GetCMF() AS INTEGER
  1075. DECLARE FUNCTION MNNNN_HDR_PutCMF(n AS INTEGER)
  1076. '
  1077. '============================================================================
  1078. ' ** Declarations for MNNNN.TXT File **
  1079. '
  1080. 'Declare's used by the MNNNNT.PBU API
  1081. '
  1082. ' These sub's below are from the MNNNNT.PBU Unit
  1083. '
  1084. DECLARE FUNCTION MNNNN_TXT_Open(c AS INTEGER)
  1085. DECLARE FUNCTION MNNNN_TXT_CLOSE()
  1086. DECLARE FUNCTION MNNNN_TXT_READ() AS STRING
  1087. DECLARE FUNCTION MNNNN_TXT_Length() AS LONG
  1088.  
  1089. '============================================================================
  1090. ' ** FAREA_DAT File Structures and Declarations for FAREA.DAT File **
  1091. '
  1092. ' Farea.dat BitFields Breakdown
  1093. '
  1094. ' FareaBit.bit1 BIT Assignment
  1095. '  0 = PrivateAreaFlag
  1096. '  1 = CDROMFileAreaFlag
  1097. '  2 = AliasAreaFlag
  1098. '  3 = OfflineFileAreaFlag
  1099. '  4 = MasterIndexFlag
  1100. '  5 to 7 Reserved, set to all 0's
  1101. '
  1102. ' FareaBit.bit2 to FareaBit.bit10, Reserved and all bit's set to 0
  1103. '
  1104. '---------------------------------------------------------------------------
  1105. '
  1106. 'Sub Type Structure for 10 Additional File Area Paths BitFields
  1107.  TYPE AFAP
  1108.     FP1  AS STRING * 81
  1109.     FP2  AS STRING * 81
  1110.     FP3  AS STRING * 81
  1111.     FP4  AS STRING * 81
  1112.     FP5  AS STRING * 81
  1113.     FP6  AS STRING * 81
  1114.     FP7  AS STRING * 81
  1115.     FP8  AS STRING * 81
  1116.     FP9  AS STRING * 81
  1117.     FP10 AS STRING * 81
  1118.  END TYPE
  1119. '
  1120. '---------------------------------------------------------------------------
  1121. '
  1122. 'File Name: Main Type Structure for "FAERA.DAT" file
  1123.  TYPE FAREA
  1124.     FareaName               AS STRING * 41
  1125.     FileAreaPath            AS STRING * 81
  1126.     FileAreaUploadPath      AS STRING * 81
  1127.     FileAreaFileList        AS STRING * 81
  1128.     FileAreaUploadList      AS STRING * 81
  1129.     FileAreaIndexFile       AS STRING * 81
  1130.     AdditionalFileAreaPaths AS AFAP
  1131.     SecurityLevel           AS INTEGER
  1132.     ViewSecurityLevel       AS INTEGER
  1133.     FileSortType            AS INTEGER
  1134.     FileBitFields           AS BitFields
  1135.     OfflineDiscNumber       AS INTEGER
  1136.     ReservedDataArea        AS STRING * 2822
  1137.  END TYPE
  1138.  
  1139.  DIM FareaBit AS BitFields
  1140.  DIM AFAP     AS AFAP
  1141.  DIM FAREA    AS SHARED FAREA
  1142.  DIM fa       AS SHARED FAREA PTR
  1143.  
  1144.  fa = VARPTR32(FAREA)
  1145.  LSET FAREA = FAREA
  1146. '
  1147. '---------------------------------------------------------------------------
  1148. '
  1149. 'Declare's used by the FAREA.PBU API
  1150. '
  1151. 'These function's below are from the FAREA.PBU Unit
  1152. DECLARE FUNCTION FAREA_DAT_OPEN()
  1153. DECLARE FUNCTION FAREA_DAT_CLOSE()
  1154. DECLARE FUNCTION FAREA_DAT_READ(n AS INTEGER)
  1155. DECLARE FUNCTION FAREA_DAT_WRITE(n AS INTEGER)
  1156. DECLARE FUNCTION FAREA_DAT_Length() AS LONG
  1157. DECLARE FUNCTION FAREA_DAT_OpenRead(n AS INTEGER)
  1158. DECLARE FUNCTION FAREA_DAT_WriteClose(n AS INTEGER)
  1159. DECLARE FUNCTION FAREA_DAT_OpenReadClose(n AS INTEGER)
  1160. DECLARE FUNCTION FAREA_DAT_OpenWriteClose(n AS INTEGER)
  1161. DECLARE FUNCTION FAREA_DAT_Clearit(n AS INTEGER)
  1162.  
  1163. DECLARE FUNCTION FAREA_DAT_GetFAN() AS STRING
  1164. DECLARE FUNCTION FAREA_DAT_PutFAN(s AS STRING)
  1165. DECLARE FUNCTION FAREA_DAT_GetFAP() AS STRING
  1166. DECLARE FUNCTION FAREA_DAT_PutFAP(s AS STRING)
  1167. DECLARE FUNCTION FAREA_DAT_GetFAUP() AS STRING
  1168. DECLARE FUNCTION FAREA_DAT_PutFAUP(s AS STRING)
  1169. DECLARE FUNCTION FAREA_DAT_GetFAFL() AS STRING
  1170. DECLARE FUNCTION FAREA_DAT_PutFAFL(s AS STRING)
  1171. DECLARE FUNCTION FAREA_DAT_GetFAUL() AS STRING
  1172. DECLARE FUNCTION FAREA_DAT_PutFAUL(s AS STRING)
  1173. DECLARE FUNCTION FAREA_DAT_GetFAIF() AS STRING
  1174. DECLARE FUNCTION FAREA_DAT_PutFAIF(s AS STRING)
  1175. DECLARE FUNCTION FAREA_DAT_GetAFAP(n AS INTEGER) AS STRING
  1176. DECLARE FUNCTION FAREA_DAT_PutAFAP(n AS INTEGER, s AS STRING)
  1177.  
  1178. DECLARE FUNCTION FAREA_DAT_GetSL() AS INTEGER
  1179. DECLARE FUNCTION FAREA_DAT_PutSL(s AS INTEGER)
  1180. DECLARE FUNCTION FAREA_DAT_GetVSL() AS INTEGER
  1181. DECLARE FUNCTION FAREA_DAT_PutVSL(s AS INTEGER)
  1182. DECLARE FUNCTION FAREA_DAT_GetODN() AS INTEGER
  1183. DECLARE FUNCTION FAREA_DAT_PutODN(s AS INTEGER)
  1184. DECLARE FUNCTION FAREA_DAT_GetFST() AS INTEGER
  1185. DECLARE FUNCTION FAREA_DAT_PutFST(n AS INTEGER)
  1186.  
  1187. DECLARE FUNCTION FAREA_DAT_GetPFAF() AS INTEGER
  1188. DECLARE FUNCTION FAREA_DAT_PutPFAF(n AS INTEGER)
  1189. DECLARE FUNCTION FAREA_DAT_GetCDFAF() AS INTEGER
  1190. DECLARE FUNCTION FAREA_DAT_PutCDFAF(n AS INTEGER)
  1191. DECLARE FUNCTION FAREA_DAT_GetAFAF() AS INTEGER
  1192. DECLARE FUNCTION FAREA_DAT_PutAFAF(n AS INTEGER)
  1193. DECLARE FUNCTION FAREA_DAT_GetOFAF() AS INTEGER
  1194. DECLARE FUNCTION FAREA_DAT_PutOFAF(n AS INTEGER)
  1195. DECLARE FUNCTION FAREA_DAT_GetMIFAF() AS INTEGER
  1196. DECLARE FUNCTION FAREA_DAT_PutMIFAF(n AS INTEGER)
  1197. '
  1198. '============================================================================
  1199. ' ** DOORS_TMP File Structures and Declarations for DOORS.TMP File **
  1200. '
  1201. ' Doors.tmp BitFields Breakdown
  1202. '
  1203. ' DoorTmpBit.bit1 BIT Assignment
  1204. '  0 = ANSIFlag
  1205. '  1 = FrontEndFlag
  1206. '  2 = FrontEndHangUpFlag
  1207. '  3 = UserWindowFlag
  1208. '  4 = ChatRequestedFlag
  1209. '  5 = EventPendingFlag
  1210. '  6 = GoodbyeFromDoorFlag
  1211. '  7 = ForceBoardDownAfterCallFlag
  1212. '
  1213. ' DoorTmpBit.bit2 Assignment
  1214. '  0 = RIPscripFlag
  1215. '  1 = DOORSYSFlag
  1216. '  2 = ErrorCorrectingConnectionFlag
  1217. '  3 to 7 Reserved, set to all 0's
  1218. '
  1219. ' DoorTmpBit.bit3 to DoorTmpBit.bit10, Reserved and all bit's set to 0
  1220. '
  1221. '---------------------------------------------------------------------------
  1222. '
  1223. 'File Name: "DOORS.TMP"
  1224.  TYPE DOORTMP
  1225.     TimeLeftAtLogon           AS INTEGER
  1226.     CurrentFileArea           AS INTEGER
  1227.     CurrentMessageConference  AS INTEGER
  1228.     FrontEndTime              AS INTEGER
  1229.     WhereTheDoorWasCalledFrom AS INTEGER
  1230.     LanguageNumber            AS INTEGER
  1231.     NumberOfFilesFlagged      AS INTEGER
  1232.     TimeInDOORSYS             AS INTEGER
  1233.     UserRecordNumber          AS LONG
  1234.     BaudRate                  AS LONG
  1235.     FrontEndBaudRate          AS LONG
  1236.     TimeWhenUserLoggedOn      AS LONG
  1237.     DoorTmpBitFields          AS BitFields
  1238.  END TYPE
  1239.  
  1240.  DIM DoorTmpBit AS BitFields
  1241.  DIM DOORTMP    AS SHARED DOORTMP
  1242.  DIM dt         AS SHARED DOORTMP PTR
  1243.  
  1244.  dt = VARPTR32(DOORTMP)
  1245.  LSET DOORTMP = DOORTMP
  1246. '
  1247. '---------------------------------------------------------------------------
  1248. '
  1249. ' Declare's used by the DOORTMP.PBU API
  1250. '
  1251. ' These function's below are from the DOORTMP.PBU Unit
  1252. '
  1253. DECLARE FUNCTION DOORS_TMP_OPEN() AS INTEGER
  1254. DECLARE FUNCTION DOORS_TMP_CLOSE()
  1255. DECLARE FUNCTION DOORS_TMP_READ()
  1256. DECLARE FUNCTION DOORS_TMP_WRITE()
  1257. DECLARE FUNCTION DOORS_TMP_OpenRead() AS INTEGER
  1258. DECLARE FUNCTION DOORS_TMP_WriteClose()
  1259. DECLARE FUNCTION DOORS_TMP_OpenReadClose() AS INTEGER
  1260. DECLARE FUNCTION DOORS_TMP_OpenWriteClose() AS INTEGER
  1261. DECLARE FUNCTION DOORS_TMP_Clearit() AS INTEGER
  1262.  
  1263. DECLARE FUNCTION DOORS_TMP_GetTLAL() AS INTEGER
  1264. DECLARE FUNCTION DOORS_TMP_PutTLAL(n AS INTEGER)
  1265. DECLARE FUNCTION DOORS_TMP_GetCFA() AS INTEGER
  1266. DECLARE FUNCTION DOORS_TMP_PutCFA(n AS INTEGER)
  1267. DECLARE FUNCTION DOORS_TMP_GetCMC() AS INTEGER
  1268. DECLARE FUNCTION DOORS_TMP_PutCMC(n AS INTEGER)
  1269. DECLARE FUNCTION DOORS_TMP_GetFET() AS INTEGER
  1270. DECLARE FUNCTION DOORS_TMP_PutFET(n AS INTEGER)
  1271. DECLARE FUNCTION DOORS_TMP_GetWTDWCF() AS INTEGER
  1272. DECLARE FUNCTION DOORS_TMP_PutWTDWCF(n AS INTEGER)
  1273. DECLARE FUNCTION DOORS_TMP_GetLN() AS INTEGER
  1274. DECLARE FUNCTION DOORS_TMP_PutLN(n AS INTEGER)
  1275. DECLARE FUNCTION DOORS_TMP_GetNOFF() AS INTEGER
  1276. DECLARE FUNCTION DOORS_TMP_PutNOFF(n AS INTEGER)
  1277. DECLARE FUNCTION DOORS_TMP_GetTIDSys() AS INTEGER
  1278. DECLARE FUNCTION DOORS_TMP_PutTIDSys(n AS INTEGER)
  1279. DECLARE FUNCTION DOORS_TMP_GetURN() AS LONG
  1280. DECLARE FUNCTION DOORS_TMP_PutURN(n AS LONG)
  1281. DECLARE FUNCTION DOORS_TMP_GetBR() AS LONG
  1282. DECLARE FUNCTION DOORS_TMP_PutBR(n AS LONG)
  1283. DECLARE FUNCTION DOORS_TMP_GetFEBR() AS LONG
  1284. DECLARE FUNCTION DOORS_TMP_PutFEBR(n AS LONG)
  1285. DECLARE FUNCTION DOORS_TMP_GetTWULO() AS LONG
  1286. DECLARE FUNCTION DOORS_TMP_PutTWULO(n AS LONG)
  1287.  
  1288. DECLARE FUNCTION DOORS_TMP_GetAF() AS INTEGER
  1289. DECLARE FUNCTION DOORS_TMP_PutAF(n AS INTEGER)
  1290. DECLARE FUNCTION DOORS_TMP_GetFEF() AS INTEGER
  1291. DECLARE FUNCTION DOORS_TMP_PutFEF(n AS INTEGER)
  1292. DECLARE FUNCTION DOORS_TMP_GetFEHU() AS INTEGER
  1293. DECLARE FUNCTION DOORS_TMP_PutFEHU(n AS INTEGER)
  1294. DECLARE FUNCTION DOORS_TMP_GetUWF() AS INTEGER
  1295. DECLARE FUNCTION DOORS_TMP_PutUWF(n AS INTEGER)
  1296. DECLARE FUNCTION DOORS_TMP_GetCRF() AS INTEGER
  1297. DECLARE FUNCTION DOORS_TMP_PutCRF(n AS INTEGER)
  1298. DECLARE FUNCTION DOORS_TMP_GetEPF() AS INTEGER
  1299. DECLARE FUNCTION DOORS_TMP_PutEPF(n AS INTEGER)
  1300. DECLARE FUNCTION DOORS_TMP_GetGFD() AS INTEGER
  1301. DECLARE FUNCTION DOORS_TMP_PutGFD(n AS INTEGER)
  1302. DECLARE FUNCTION DOORS_TMP_GetFBDAC() AS INTEGER
  1303. DECLARE FUNCTION DOORS_TMP_PutFBDAC(n AS INTEGER)
  1304. DECLARE FUNCTION DOORS_TMP_GetRIP() AS INTEGER
  1305. DECLARE FUNCTION DOORS_TMP_PutRIP(n AS INTEGER)
  1306. DECLARE FUNCTION DOORS_TMP_GetDSF() AS INTEGER
  1307. DECLARE FUNCTION DOORS_TMP_PutDSF(n AS INTEGER)
  1308. DECLARE FUNCTION DOORS_TMP_GetECC() AS INTEGER
  1309. DECLARE FUNCTION DOORS_TMP_PutECC(n AS INTEGER)
  1310. '
  1311. '============================================================================
  1312. ' ** EVENTS_DAT File Structures and Declarations for EVENTS.DAT File **
  1313. '
  1314. ' Events.dat EventsDatBitFields Breakdown
  1315.  
  1316. ' EventsDatBitFields.bit1 BIT Assignment
  1317. '  0 = EventExecutedTodayFlag
  1318. '  1 = SlidingEventFlag 
  1319. '  2 to 7 Reserved, set to all 0's
  1320.  
  1321. ' EventsDatBitFields.bit2 to EventsDatBitFields.bit10, Reserved and all
  1322. ' bit's set to 0.
  1323.  
  1324. 'Sub Type Structure for 1 byte BitFields
  1325.   TYPE EventsDatBit
  1326.     bit1 AS BYTE
  1327.   END TYPE
  1328.  
  1329. 'File Name: "EVENTS.DAT"
  1330.   TYPE EVENTSDAT
  1331.     Time               AS STRING * 6
  1332.     File               AS STRING * 13
  1333.     Day                AS INTEGER
  1334.     EventsDatBitFields AS EventsDatBit
  1335.     ReservedDataArea   AS STRING * 234
  1336.   END TYPE
  1337.  
  1338.   DIM EventsDatBit AS EventsDatBit
  1339.   DIM EVENTSDAT    AS SHARED EVENTSDAT
  1340.   DIM ed           AS SHARED EVENTSDAT PTR
  1341.  
  1342.   ed = VARPTR32(EVENTSDAT)
  1343.   LSET EVENTSDAT = EVENTSDAT
  1344. '
  1345. '---------------------------------------------------------------------------
  1346. '
  1347. 'FUNCTION's below are from the EVENTSDAT.PBU Unit and DECLAREd in PBAPI10.INC.
  1348.  
  1349. DECLARE FUNCTION EVENTS_DAT_Open()
  1350. DECLARE FUNCTION EVENTS_DAT_Close()
  1351. DECLARE FUNCTION EVENTS_DAT_Read(n AS INTEGER)
  1352. DECLARE FUNCTION EVENTS_DAT_Write(n AS INTEGER)
  1353. DECLARE FUNCTION EVENTS_DAT_OpenRead(n AS INTEGER)
  1354. DECLARE FUNCTION EVENTS_DAT_WriteClose(n AS INTEGER)
  1355. DECLARE FUNCTION EVENTS_DAT_OpenReadClose(n AS INTEGER)
  1356. DECLARE FUNCTION EVENTS_DAT_OpenWriteClose(n AS INTEGER)
  1357. DECLARE FUNCTION EVENTS_DAT_Length() AS LONG
  1358. DECLARE FUNCTION EVENTS_DAT_ClearIt(n AS INTEGER)
  1359.  
  1360. DECLARE FUNCTION EVENTS_DAT_GetTime() AS STRING
  1361. DECLARE FUNCTION EVENTS_DAT_PutTime(s AS STRING)
  1362. DECLARE FUNCTION EVENTS_DAT_GetFile() AS STRING
  1363. DECLARE FUNCTION EVENTS_DAT_PutFile(s AS STRING)
  1364. DECLARE FUNCTION EVENTS_DAT_GetDay() AS INTEGER
  1365. DECLARE FUNCTION EVENTS_DAT_PutDay(n AS INTEGER)
  1366.  
  1367. DECLARE FUNCTION EVENTS_DAT_GetEETF() AS INTEGER
  1368. DECLARE FUNCTION EVENTS_DAT_PutEETF(n AS INTEGER)
  1369. DECLARE FUNCTION EVENTS_DAT_GetSEF() AS INTEGER
  1370. DECLARE FUNCTION EVENTS_DAT_PutSEF(n AS INTEGER)
  1371. '
  1372. '============================================================================
  1373. ' ** WHOSON_DAT File Structures and Declarations for WHOSON.DAT File **
  1374. '
  1375. 'File Name: "WHOSON.DAT"
  1376.  TYPE WHOSONDAT
  1377.     WhoName          AS STRING * 61
  1378.     ChatBuffer       AS STRING * 1024
  1379.     ChatStatus       AS INTEGER
  1380.     NodeChattingWith AS INTEGER
  1381.     Head             AS INTEGER
  1382.     Tail             AS INTEGER
  1383.     ReservedDataArea AS STRING * 3003
  1384.  END TYPE
  1385.  
  1386.  DIM WHOSONDAT AS SHARED WHOSONDAT
  1387.  DIM wd        AS SHARED WHOSONDAT PTR
  1388.  
  1389.  wd = VARPTR32(WHOSONDAT)
  1390.  LSET WHOSONDAT = WHOSONDAT
  1391. '
  1392. '---------------------------------------------------------------------------
  1393. '
  1394. 'FUNCTION's below are from the WHOSON.PBU Unit and DECLAREd in PBAPI10.INC.
  1395.  
  1396. DECLARE FUNCTION WHOSON_DAT_Open()
  1397. DECLARE FUNCTION WHOSON_DAT_Close()
  1398. DECLARE FUNCTION WHOSON_DAT_Read(n AS INTEGER)
  1399. DECLARE FUNCTION WHOSON_DAT_Write(n AS INTEGER)
  1400. DECLARE FUNCTION WHOSON_DAT_OpenRead(n AS INTEGER)
  1401. DECLARE FUNCTION WHOSON_DAT_WriteClose(n AS INTEGER)
  1402. DECLARE FUNCTION WHOSON_DAT_OpenReadClose(n AS INTEGER)
  1403. DECLARE FUNCTION WHOSON_DAT_OpenWriteClose(n AS INTEGER)
  1404. DECLARE FUNCTION WHOSON_DAT_Length() AS LONG
  1405. DECLARE FUNCTION WHOSON_DAT_ClearIt(n AS INTEGER)
  1406.  
  1407. DECLARE FUNCTION WHOSON_DAT_GetWN() AS STRING
  1408. DECLARE FUNCTION WHOSON_DAT_PutWN(s AS STRING)
  1409. DECLARE FUNCTION WHOSON_DAT_GetCS() AS INTEGER
  1410. DECLARE FUNCTION WHOSON_DAT_PutCS(n AS INTEGER)
  1411. DECLARE FUNCTION WHOSON_DAT_GetNCW() AS INTEGER
  1412. DECLARE FUNCTION WHOSON_DAT_PutNCW(n AS INTEGER)
  1413. '
  1414. '============================================================================
  1415. ' ** Declare's used by the DIRUNIT.PBU API **
  1416. '
  1417. DECLARE FUNCTION DtaAttrib() AS INTEGER
  1418. DECLARE FUNCTION DtaDate() AS STRING
  1419. DECLARE FUNCTION DtaTime() AS STRING
  1420. DECLARE FUNCTION DtaSize() AS LONG
  1421. DECLARE FUNCTION Dos2Date(BYVAL Fd AS INTEGER) AS STRING
  1422. DECLARE FUNCTION Dos2Time(BYVAL Ft AS INTEGER) AS STRING
  1423. DECLARE SUB GetDTA(DtaSeg AS INTEGER, DtaOfs AS INTEGER)
  1424. '
  1425. '============================================================================
  1426. ' ** Declare's used by the DOSUNIT.PBU API **
  1427. '
  1428. DECLARE FUNCTION AddFileHandles(BYVAL NumHandles AS INTEGER) AS INTEGER
  1429. DECLARE FUNCTION ArgC(BYVAL Cmd AS STRING) AS INTEGER
  1430. DECLARE FUNCTION ArgV(BYVAL Which AS INTEGER, BYVAL Cmd AS STRING) AS STRING
  1431. DECLARE FUNCTION CopyFile(BYVAL Source AS STRING, BYVAL Target AS STRING) AS INTEGER
  1432. DECLARE FUNCTION Date2DOS(BYVAL TempDate AS STRING) AS WORD
  1433. DECLARE FUNCTION DiskFree(BYVAL Drive AS STRING) AS DWORD
  1434. DECLARE FUNCTION ExeName() AS STRING
  1435. DECLARE FUNCTION Exist(BYVAL Filename AS STRING) AS INTEGER
  1436. DECLARE FUNCTION FileSize(BYVAL Filename AS STRING) AS LONG
  1437. DECLARE FUNCTION IsShareLoaded() AS INTEGER
  1438. DECLARE FUNCTION MakeBAK(BYVAL Filename AS STRING) AS STRING
  1439. DECLARE FUNCTION SetFileDateTime(BYVAL FileName AS STRING, BYVAL FileDate AS STRING, BYVAL FileTime AS STRING) AS INTEGER
  1440. DECLARE FUNCTION Time2DOS(BYVAL TempTime AS STRING) AS WORD
  1441. DECLARE FUNCTION WildMatchFile(BYVAL FileName AS STRING, BYVAL WildCard AS STRING) AS INTEGER
  1442. DECLARE SUB SplitPath(BYVAL Source AS STRING, Fldrive AS STRING, Flpath AS STRING, Flname AS STRING)
  1443. DECLARE SUB SplitPath2(FilePath$, Path$, FileName$)
  1444. '
  1445. '============================================================================
  1446. ' ** Declare's used by the DATEUNIT.PBU API **
  1447. '
  1448. DECLARE FUNCTION CDOW(BYVAL string) AS string
  1449. DECLARE FUNCTION DOW(BYVAL string) AS integer
  1450. DECLARE FUNCTION DOY(BYVAL string) AS integer
  1451. DECLARE FUNCTION DateMath(BYVAL string, BYVAL integer) AS string
  1452. DECLARE FUNCTION DateToDays(string) AS word
  1453. DECLARE FUNCTION Days(BYVAL string, BYVAL string) AS integer
  1454. DECLARE FUNCTION DaysInMonth(BYVAL integer) AS integer
  1455. DECLARE FUNCTION DaysToDate(BYVAL word) AS string
  1456. DECLARE FUNCTION Elapsed(BYVAL string, BYVAL string) AS long
  1457. DECLARE FUNCTION Leap(BYVAL integer) AS integer
  1458. DECLARE FUNCTION MakeDate(BYVAL integer, BYVAL integer, BYVAL integer) AS string
  1459. DECLARE FUNCTION MakeTime(BYVAL integer, BYVAL integer, BYVAL integer) AS string
  1460. DECLARE FUNCTION MakeTime12(BYVAL integer, BYVAL integer) AS string
  1461. DECLARE FUNCTION MonthName(BYVAL integer) AS string
  1462. DECLARE FUNCTION SecondsToTime(BYVAL long) AS string
  1463. DECLARE FUNCTION TimeToSeconds(BYVAL string) AS long
  1464. DECLARE FUNCTION ValidDate(BYVAL string) AS integer
  1465. DECLARE SUB SplitDate(BYVAL string, integer, integer, integer)
  1466. DECLARE SUB SplitTime(BYVAL string, integer, integer, integer)
  1467. '
  1468. '============================================================================
  1469. ' ** Declare's used by the UTIL.PBU API **
  1470. '
  1471. DECLARE FUNCTION InitialCaps(s AS STRING) AS STRING
  1472. DECLARE FUNCTION TrimString(s AS STRING) AS STRING
  1473. DECLARE FUNCTION HashIt(s AS STRING) AS LONG
  1474. DECLARE FUNCTION MenuBox(x1 AS INTEGER, y1 AS INTEGER, x2 AS INTEGER, y2 AS _
  1475.         INTEGER, FColor AS INTEGER, BColor AS INTEGER, HeaderText AS STRING)
  1476. DECLARE FUNCTION LineInput(HideChar AS STRING, CharAllow AS STRING, PromptLine _
  1477.         AS STRING, Row AS INTEGER, MaxLen AS INTEGER) AS STRING
  1478. DECLARE FUNCTION PhoneNumberInput(PromptLine AS STRING, Row AS INTEGER) _
  1479.         AS STRING
  1480. DECLARE FUNCTION DateInput(PromptLine AS STRING, Row AS INTEGER) AS STRING
  1481. DECLARE FUNCTION YesNo(PromptString AS STRING, Row AS INTEGER, ResponseKey _
  1482.         AS INTEGER) AS INTEGER
  1483. DECLARE SUB CalcByte(Attr AS INTEGER, LowByte AS INTEGER, HiByte AS INTEGER) 
  1484. DECLARE SUB MakeByte(Attr AS INTEGER, LowByte AS INTEGER, HiByte AS INTEGER) 
  1485. DECLARE SUB CheckBits(Attr AS INTEGER, BitOne AS INTEGER, BitTwo AS INTEGER, _
  1486.             BitThree AS INTEGER, BitFour AS INTEGER, BitFive  AS INTEGER, _
  1487.             BitSix AS INTEGER, BitSeven AS INTEGER, BitEight AS INTEGER) 
  1488. DECLARE FUNCTION VideoSeg()  AS LONG
  1489. DECLARE SUB Browse(FileName AS STRING, Mouse AS INTEGER, TextColor AS INTEGER, _
  1490.         TopRow AS INTEGER, LeftColumn AS INTEGER, BottomRow AS INTEGER, _
  1491.         RightColumn AS INTEGER, Attr AS INTEGER, Shadow AS INTEGER, _
  1492.         Border AS INTEGER) 
  1493. DECLARE SUB HiPrint(Text AS STRING, HiAttr AS INTEGER, Attr AS INTEGER) 
  1494. DECLARE SUB LinePrint(Text AS STRING, Row AS INTEGER, Col AS INTEGER, Wide AS INTEGER, _
  1495.             Fill AS INTEGER, Attr AS INTEGER) 
  1496. DECLARE SUB CenterPrint(Text AS STRING, Row AS INTEGER, Wide AS INTEGER, Fill AS INTEGER, _
  1497.             Attr AS INTEGER) 
  1498. '
  1499. '============================================================================
  1500. ' ** Declare's used by the MOUSE.PBU API **
  1501. '
  1502. DECLARE FUNCTION CheckForMouse() AS INTEGER
  1503. DECLARE FUNCTION CentreButtonReleased() AS INTEGER
  1504. DECLARE FUNCTION BothButtonReleased() AS INTEGER
  1505. DECLARE FUNCTION RightButtonReleased() AS INTEGER
  1506. DECLARE FUNCTION LeftButtonReleased() AS INTEGER
  1507. DECLARE SUB Clicked (Rgt AS INTEGER, Lft AS INTEGER, Row AS INTEGER, Col AS INTEGER)
  1508. DECLARE SUB HideCursor()
  1509. DECLARE SUB ShowCursor()
  1510. DECLARE SUB LocateCursor (Row AS INTEGER, Col AS INTEGER)
  1511. DECLARE SUB ScreenPlus(Row AS INTEGER, Col AS INTEGER, TextFound AS STRING)
  1512. DECLARE SUB FindMenu(Row AS INTEGER, Col AS INTEGER, Found AS INTEGER)
  1513. '
  1514. '============================================================================
  1515. ' ** Declare's used by the MENU.PBU API **
  1516. '
  1517. DECLARE SUB HorizontalMenu(Choices() AS STRING, _
  1518.                            BarSave   AS STRING, _
  1519.                            HiLight   AS INTEGER, _
  1520.                            Mouse     AS INTEGER, _
  1521.                            HPointer  AS INTEGER, _
  1522.                            HotKey    AS INTEGER, _
  1523.                            BarAttr   AS INTEGER, _
  1524.                            HiAttr    AS INTEGER, _
  1525.                            MenuRow   AS INTEGER, _
  1526.                            Gap       AS INTEGER, _
  1527.                            Marker    AS INTEGER)
  1528. DECLARE SUB VerticalMenu(Choices()     AS STRING, _
  1529.                          Infoline()    AS STRING, _
  1530.                          Rtrn          AS STRING, _
  1531.                          BarSave       AS STRING, _
  1532.                          Mouse         AS INTEGER, _
  1533.                          HotKey        AS INTEGER, _
  1534.                          HelpTextColor AS INTEGER, _
  1535.                          HelpAttr      AS INTEGER, _
  1536.                          HiAttr        AS INTEGER, _
  1537.                          MenuRow       AS INTEGER, _
  1538.                          Marker        AS INTEGER, _
  1539.                          HPointer      AS INTEGER, _
  1540.                          Attr          AS INTEGER, _
  1541.                          Shadow        AS INTEGER, _
  1542.                          Border        AS INTEGER)
  1543. DECLARE SUB MGInset(TRow AS INTEGER, LCol AS INTEGER, BRow AS INTEGER, _
  1544.             RCol AS INTEGER, Attr AS INTEGER)
  1545. '
  1546. '============================================================================
  1547. ' ** Declare's used by the SCREEN.PBU API **
  1548. '
  1549. DECLARE SUB RestoreScreen(ScreenID AS STRING) 
  1550. DECLARE SUB PutSavedScreen(ScreenID AS STRING, TopRow AS INTEGER, LeftColumn AS INTEGER) 
  1551. DECLARE SUB SaveScreen(ScreenID AS STRING, TopRow AS INTEGER, LeftColumn  AS INTEGER, _
  1552.             BottomRow AS INTEGER, RightColumn AS INTEGER, Shadow AS INTEGER) 
  1553. DECLARE SUB POPWIND (Title AS STRING, Toprow AS INTEGER, Leftcolumn  AS INTEGER, _
  1554.             Bottomrow AS INTEGER, Rightcolumn AS INTEGER, Attr AS INTEGER, _
  1555.             Shadow AS INTEGER, Border AS INTEGER) 
  1556. '
  1557. '============================================================================
  1558. ' ** Declare's for Flags used by the Assembly Routines in the API **
  1559. '
  1560. %FLAGS = 0
  1561. %AX    = 1
  1562. %BX    = 2
  1563. %CX    = 3
  1564. %DX    = 4
  1565. %SI    = 5
  1566. %DI    = 6
  1567. %BP    = 7
  1568. %DS    = 8
  1569. %ES    = 9
  1570.  
  1571. %FALSE = 0
  1572. %TRUE  = NOT %FALSE
  1573.