home *** CD-ROM | disk | FTP | other *** search
-
- ████████████████████████████████████████ ██████▄
- ▐█▌ ▄▄ ▄▄ ▄▄▄▄▄▄ ▄▄▄▄▄▄ ▄▄▄▄▄ ██▄▄▄█▀ ▄▄▄▄▄ ▄▄▄▄▄ ▄▄ ▄▄▄
- ▐█▌ ██ ██ ██▀▀▀██ ██▀▀▀██ ██▀▀▀██ ██▀▀▀██ ██▀▀▀██ ██▀▀▀██ ██▄██▀▀
- ▐█▌ ██ ██ ██████ ██▀▀▀█▄ ██ ██ ██ ██ ███████ ██ ██ ██▀██▄
- ▐█▌ ▀█████▀ ██ ▀██ ██████▀ ▀█████▀ ██████▀ ██ ██ ██ ██ ██ ▀██
- ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
-
- External Module Information
- By Mikerosoft Productions ■ Steve Blinch & Michael Helliker
-
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
-
- Contents
- ───══════════════════════════════════════════════───
-
- 1. Modules - What are they?
- 2. "Quick, I just gimme the specs, dammit! :-)"
- 3. Less important stuff...
- 4. Sources & Structures...
- 5. Need Comm Routines?
-
- ───══════════════════════════════════════════════───
-
-
-
- 1. Modules - What are they?
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
- External Modules are the equivalent of BBS doors, specifically
- designed to work with TurboBANK. They eliminate the need to release a
- new version of TurboBANK every time a casino game is created, and they
- allow other programmers to create their own casino games as well.
-
-
- 2. "Quick, I just gimme the specs, dammit! :-)"
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
- Here's everything you need to know to make an external module...
-
- Getting TurboBANK to recognize your module
- ───══════════════════════════════════════════════───
-
- TurboBANK keeps track of all available modules
- in the file MODULES.IDX. This file contains:
-
- - The name of the module, as shown to the user
- - The 12 letter filename (i.e. 12345678.EXE)
- - The letter 'N'
-
- The above 3-line information sequence is re-
- peated for each module, with NO blank lines or
- other separators between each entry. Just add
- your info to the end of this file and your
- module will be available to the users.
-
-
- Getting your module to recognize TurboBANK
- ───══════════════════════════════════════════════───
-
- Just before the execution of the module,
- TurboBANK creates the file TBINFO.DAT, which
- contains:
-
- - The user's name
- - The user's record number in the userfile
- - The com port being used
- - The baud rate being used
- - The user's time left, in minutes
- - The user's KB left
- - The user's security
- - The user's location (City/Province/Whatever)
- - "TRUE" or "FALSE": User has robbing enabled
- - The user's insurance, days left
- - The number of minutes the user deposited
- today
- - The number of kilobytes the user deposited
- today
- - The number of minutes the user withdrew
- today
- - The number of kilobytes the user withdrew
- today
- - The number of minutes the user has banked
- - The number of kilobytes the user has banked
- - The number of minutes the user has loaned
- - The number of kilobytes the user has loaned
- - The "Text Color" - Default is the CRT unit's
- "White" (15)
- - The "Bar Color" - Default is the CRT unit's
- "Blue" (01)
- - The "Prompt Color" - Default is the CRT
- unit's "LightBlue" (09)
- - The "Hilight Color" - Default is the CRT
- unit's "LightCyan" (11)
- - The status bar foreground color - Default is
- the CRT unit's "White" (15)
- - The status bar background color - Default is
- the CRT unit's "Blue" (1)
-
- TurboBANK also reads this file back in upon
- returning, so PLEASE write all the information
- BACK to it before your module exits. Also,
- TurboBANK does not deduct the amount of time
- the user spent in the module upon returning,
- so please have your module do that itself.
-
-
- ****** Module Requirement Thingies! ******
- ****** PLEASE READ THIS!! ******
- ───══════════════════════════════════════════════───
-
- We're not putting many restrictions on module-
- making, but there ARE a couple of things that
- we've gotta say... :-)
-
- - PLEASE adhere to the color scheme written to
- TBINFO.DAT, which is configured by the SysOp
- in TBSETUP.EXE -- We want to keep SOME color
- coordination! :-)
-
- - If at all possible, please try to use the
- same status bar style as TurboBANK. We know
- that this is not always possible (some TPU's
- have built-in unchangeable status bars), but
- for those of you with your own routines, try
- to come somewhere close to TurboBANK's... If
- you want our routines, see below.
-
- - PLEASE keep the top 4 lines of the screen
- untouched. If you can't manage to do this
- (some TPU's automatically clear the screen
- upon initialization), please either redraw
- these top 4 lines as soon as possible, or
- contact us at Mikerosoft BBS to get a new
- TPU package (see below for more info).
-
- - If you REALLY want to charge registration
- fees for your modules, go ahead, but PLEASE
- do not make your registration nags any more
- annoying than ours are :-)
- A simple "UNREGISTERED" will usually do, and
- maybe a cripple or two.. hehe..
-
- - Try to keep your modules fairly small and
- try not to hog memory -- TurboBANK will only
- swap itself out of memory if it absolutely
- HAS to, as this slows loading down a lot...
-
- - MOST IMPORTANTLY!!!!! PLEASE!!!!!!! Upload
- your module to us! :-) We like to see what
- kinda things people have made... Heck, we
- might even distribute it with the next
- version of TurboBANK if we like it.. :-) If
- nothing else, we can put it online for
- people to download straight from Mikerosoft
- BBS.
-
-
- 3. Less important stuff...
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
-
- Providing the SysOp with Easy Setup!
- ───══════════════════════════════════════════════───
-
- If you really want to, you can write your own
- setup program, but if you want to quickly and
- easily let the SysOp do it through TBSETUP.EXE
- (TurboBANK's setup program), this is how you'd
- go about doing it.
-
- TBSetup reads from the file TBMODCFG.CTL. This
- file contains specific instructions regarding
- program setup. Here's how it works:
-
- Add the name of your program, in []'s, to the
- file, i.e.
-
- [Joe's BlackJack Game]
-
- Add the string "cfgfile=" followed by the name
- of your configuration file, i.e.
-
- cfgfile=JOEBLACK.CFG
-
- Then, for each question you want TurboBANK to
- ask the SysOp, add the following lines:
-
- valuetype=<integer|string>
- maximum=<max integer|max length of string>
- default=<default integer|default string>
- question=<literal question text>
-
- For example, to ask the SysOp his age:
-
- valuetype=integer
- maximum=99
- default=30
- question=Enter your age
-
- Refer to TBMODCFG.CTL for examples.
-
-
- 4. Sources & Structures...
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
- Constants, Structures, Etc.
- ───══════════════════════════════════════════════───
-
- ------------------------------- Cut Here -------------------------------
- Const
- TBCfgName = 'TBANK.CFG'; { PLEASE do not write to this file!! }
- TBPbkName = 'PASSBOOK.DAT'; { Passbook file, see below }
- TBHdrName = 'TBMSGHDR.DAT'; { TBMsg header file, see below }
- TBTxtName = 'TBMSGTXT.DAT'; { TBMsg literal text file, see below }
- TBDrpName = 'TBINFO.DAT'; { Text file containing drop info }
- TBModName = 'MODULES.IDX'; { Text file containing module info }
- TBCtlName = 'TBMODCFG.CTL'; { Text file containing module setup cmds }
-
- BaudDef : Array[1..6] Of String[14] = { Used in config }
- ('Below 2400 ',
- '02400 - 09599',
- '09600 - 14399',
- '14400 - 21599',
- '21600 - 28800',
- 'Above 28800 ');
-
- TBLockout = 001; { Used in BankRobPenalty and }
- DeductBankedTime = 002; { UserRobPenalty above }
- DeductBankedKB = 004;
- DeductBBSTime = 008;
- DeductBBSKB = 016;
-
-
- Type
- Items = (NWU, { Newuser } { Used in passbook }
- ROB, { Theft Penalty }
- CHQ, { Cheque }
- COR, { Correction }
- DEP, { Deposit }
- INT, { Interest }
- INS, { Insurance Payment }
- INV, { Investment Return }
- LNP, { Loan Payment }
- ODI, { Overdraft Interest }
- SC, { Service Charge }
- UPD, { Passbook Update }
- WD, { Withdrawal }
- MEM { Memo Sent Via BBS }
- );
- PassbookType = Record { PASSBOOK.DAT, Passbook information }
- Username : String[30];
- Date : LongInt;
- Item : Items;
- KBW,KBD,
- TimeW,TimeD,
- KBBal,TimeBal : LongInt;
- End;
-
- BaudLongInt = Array[1..6] Of LongInt; { Used in ConfigType }
-
- ConfigType = Record { TBANK.CFG - TurboBANK Configuration }
- Hdr : String[35];
-
- BBSSoftware : Byte; { 1=RemoteAccess, 2=SuperBBS, 3=Concord }
-
- LogStyle : Byte; { 1=SBBS, 2=RAExp, 3=RACom, 4=Concord }
- LogName : String[99]; { Full path/filename }
- CorrectANSI : Boolean; { er.. Force ANSI }
-
- LocalBaud : Byte; { Use which restrictions (1..6) for local
- logins }
-
- DelaySecs : Real; { Seconds to delay after messages }
-
- InvestRate,
-
- InsurancePercentT, { % of time taken daily for insurance (*100) }
- InsurancePercentK, { % of KB taken daily for insurance (*100) }
-
- DailyTimeInt, { Daily interest on time (*100) }
- DailyKBInt, { Daily interest on KB (*100) }
- DailyTimeLoanInt, { Daily interest on time loan (*100) }
- DailyKBLoanInt : Real; { Daily interest on KB loan (*100) }
-
- KBCoverage, { Max insurance coverage for KB theft }
- TimeCoverage, { Max insurance coverage for time theft }
-
- InsuranceCostTime, { One-time cost of insurance in mins }
- InsuranceCostKB, { One-time cost of insurance in KB }
-
- TimeToKBCost, { Cost to convert Time -> KB }
- KBToTimeCost, { Cost to convert KB -> Time }
-
- MaxTimePurchase, { In minutes }
- MaxKBPurchase, { In kilobytes }
-
- MaxTimeTransfer, { In minutes }
- MaxKBTransfer, { In kilobytes }
-
- MaxKBInvestAmt, { Can't invest more KB than this at a time }
- MaxKBInvestDays, { Can't invest KB for more than this # of days }
- MaxKBInvestNum, { Can't have more than this # of KB investments }
- MaxTimeInvestAmt, { Can't invest more time than this at a time }
- MaxTimeInvestDays, { Can't invest time for more than this # of days }
- MaxTimeInvestNum, { Can't have more than this # of time investments }
-
- MaxTimeLoan, { In minutes }
- MaxKBLoan, { In kilobytes }
-
- MaxKBWithdraw, { In kilobytes }
- MaxKBDeposit, { In kilobytes }
- MaxTimeWithdraw, { In minutes }
- MaxTimeDeposit : BaudLongint; { In minutes }
-
- BankRobWinTimePct, { % of ALL users' banked time recvd when rob succeeds }
- BankRobWinKBPct, { % of ALL users' banked KB recvd when rob succeeds }
- UserRobWinTimePct, { % of victim's time recvd when rob succeeds }
- UserRobWinKBPct : Real; { % of victim's KB recvd when rob succeeds }
- RobPenaltyData : Array[0..10] Of RobPenaltyType; { Element 0 = Default }
-
- BankRobPenalty, { These two are bitmapped, }
- UserRobPenalty : Integer; { see the constants below }
-
- Location, { of BBS (city/prov) }
- BBSName,
- SysOpName,
- ExtModulePath : String[99]; { Path to external modules, DIR ONLY }
-
- KBLoanDeductPct, { % KB deducted daily towards KB loan }
- TimeLoanDeductPct: Real; { % Time deducted daily towards time loan }
-
- BC,NC,PC,HC,SF,SB: Byte; { SysOp-configured colors }
-
- GarnishLoans : Boolean; { Should loans be garnished nightly? }
-
- ForceTimeLoanTake, { If garnishing disabled, take this at loadup }
- ForceKBLoanTake : Real; { If garnishing disabled, take this at loadup }
-
- Unused : Array[1..4065] Of Char;
- End;
-
- HdrType = Record { TBMSGHDR.DAT, internal TurboBANK messagebase hdr }
-
- ToUser, { Recipient }
- FrUser : String[35]; { Sender }
-
- Date : DateTime; { Date/time, why bother packing? :-) }
-
- Subject : String[35]; { Take a wild guess.. :-) }
- Del : Boolean; { Delete in maintenance? }
-
- TxtPtr, { Where text starts in TBMSGTXT.DAT }
- TxtLen : LongInt; { How many bytes text are there? }
- End;
- ------------------------------- Cut Here -------------------------------
-
-
- 5. Need Comm Routines?
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
- Some of you may not have communications routines for Turbo Pascal,
- or may have routines that are difficult to use or do not work well
- in modules (i.e., if your comm routines require a DORINFO1.DEF, they
- probably won't work in any modules, as there *IS* no DORINFO1.DEF!)
- To assist those interested in making modules who are having these
- problems, we are making the routines that we use for modules available
- upon request (TPU's only, no source :-)) COMPLETELY FREE. All you
- have to do is ask for them. These routines are for Turbo Pascal
- version 7.0 (Borland Int'l, Inc) and are designed specifically for
- use with TurboBANK. They are very easy to use, and do most of the
- work for you. No specific knowledge of modeming is required -- if you
- can write a program, you can make it a module with these routines.
-
-
- Getting the Mikerosoft Module Routines
- ───══════════════════════════════════════════════════════───
-
- Call...
-
- ╔════════════════════════════════╗
- ║ Mikerosoft BBS (604) 864-8160 ║
- ║ Abbotsford, BC 2400-14400 BPS ║
- ╚════════════════════════════════╝
-
- (the routines are not available at our
- support sites or via FTP, so you MUST
- call here to get them. Login with the
- name MIKEROSOFT for quicker service.)
-
-
- End of MODMAKE.DOC
- ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-
-
-
-
-
-