MicroHelp LibraryÎEªU*ÐÉ(Í»º Door Source 2.0 ºº Quick Reference Commander ºº( ºº Select command using + and - keys ºº Use Enter to select command ºº( ºº( ºº( ºº( ºº( ºº( ºº Press ESC to pop down ºÈ(ͼ2ž+ŸžŸž/œšššžœœš›šœžÿž�›� ž5oªUP7ÉNÍ»º Command Name : AllTrun7 ºº Calling Parameters :9 ºº CALL AllTrun(Text$)8 ººN ºº Description :@ ºº AllTrun is a routine to strip all leading AND trailing spaces off of the ºº string to give it. The string passed is returned with the updated ºº striped string.: ººN ººN ººN ººN ºÈNͼ*žRŸ ›ž:Ÿž>›ž‹Ÿ žD›F›ž›Hž›žÿžÇcªUP$ÉNÍ»º Command Name : ANSIMusic5 ºº Calling Parameters :9 ºº CALL ANSIMusic(MusicToPlay$, UserCanMusic) ººN ºº Description :@ ºº ANSIMusic will send music to the remote user, if music is enabled. It ºº will also play the music to the local computer if the page bell is on. ºº To enable music, the last variable needs to equal a YES or 1. You should ºº ask the user if they can support ANSI music, and set a variable to ºº YES or NO, and ANSIMusic will play or not play according to that last ºº variable.@ ººN ºÈNͼ1žRŸ › ž8ŸžA›,žoŸ žF›Hž›Fž ›Iž›Iž›Iž›žÜͪUP”ÉNÍ»º Command Name : BackSpaceOver1 ºº Calling Parameters :9 ºº CALL BackSpaceOver6 ººN ºº Description :@ ºº BackSpaceOver will start from the current position and back space over ºº all the characters back to column number 1. This will add a nice clean ºº effect to any door (Ansi or non-Ansi). It is used in the Press Any Key ºº and More script commands.0 ººN ººN ººN ºÈNͼ+žRŸ › ž4ŸžA›ž‰Ÿ žF›Fž ›Fž ›Fž ›žÿžr8ªUPÉNÍ»º Command Name : BeepSpeaker3 ºº Calling Parameters :9 ºº CALL BeepSpeaker8 ººN ºº Description :@ ºº BeepSpeaker will beep the remote speaker, and if the page bell is on, ºº will also beep the local speaker.( ººN ººN ººN ººN ººN ºÈNͼ%žRŸ › ž6ŸžA›ž‹Ÿ žF›Fž ›!žÿžÿž šªUPeÉNÍ»º Command Name : Center8 ºº Calling Parameters :9 ºº CALL Center(Text$)6 ººN ºº Description :@ ºº Center will set the TabSpace variable for Send or Incomm, so when you ºº call one of those, it will print the space so it will appear centered. ºº Center will NOT print the string itself, only set TabSpace. ººN ººN ººN ººN ºÈNͼ'žRŸ ›ž;ŸžA›ž‰Ÿ žF›Ež ›Fž ›;žÿž ŠªUPUÉNÍ»º Command Name : ClrScrn7 ºº Calling Parameters :9 ºº CALL ClrScrn< ººN ºº Description :@ ºº ClrScrn will clear the local and remote screen. It will also update ºº the status bar at the bottom of the screen. Do NOT ever use CLS in ºº your program unless you want some really big problems. ººN ººN ººN ººN ºÈNͼ'žRŸ ›ž:ŸžA› ž�Ÿ žF›Cž ›Bž›6žÿž¥ÀªUPyÉNÍ»º Command Name : Coder1 and Coder2- ºº Calling Parameters :9 ºº CALL Coder1(Text$, Password$)+ ºº CALL Coder2(Text$, Password$)+ ºº Description :@ ºº The Coder routines will code a string based on a password you supply. ºº To code the string, run it through Coder1 or Coder2 and to decode ºº the string, run it back through the SAME routine with the SAME password. ºº The longer the password, the better the protection. ºº Coder1 will NOT produce graphics characters, for sequential files. ºº Coder2 will produce any character in the ASCII set, and is good for ºº random access files.. ºÈNͼ9žRŸ ›ž0ŸžA›ž3›ž.Ÿ žF›Ež ›Až›Iž›4ž›Bž›Cž›žõªUP¯ÉNÍ»º Command Name : ColorEasy5 ºº Calling Parameters :9 ºº CALL ColorEasy(Text$, Foreground, Enter) ººN ºº Description :@ ººN ººN ººN ººN ººN ººN ººN ºÈNͼ8žRŸ ›ž.Ÿž;›.ž"›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|±ªUPjÉNÍ»º Command Name : ExitDoor6 ºº Calling Parameters :9 ºº CALL ExitDoor; ººN ºº Description :@ ºº ExitDoor is a routine to wrap up all of the communacations handling, ºº hold the DTR, and update the SYS file(s). Do NOT just END your program, ºº will drop the carrier on the user and leave the SYS file(s) hanging. ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›%ž+›'ž*Ÿ žA›Kž›Lž›Nž›9ž›Kž›Hž›#ž|ÕªUPŽÉNÍ»º Command Name : GetTime7 ºº Calling Parameters :9 ºº CALL GetTime(Hours, Minutes, Seconds, SinceMidnight#) ººN ºº Description :@ ºº GetTime will provide you with the current hour, minute, and seconds so ºº you won't have to parse TIME$ yourself. Note that the seconds since ºº midnight is also provided and that its variable type is different. ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›;ž›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|ѪUPŠÉNÍ»º Command Name : HighScores4 ºº Calling Parameters :9 ºº CALL HighScores(ScoreForUser, HighScoreFileName$) ººN ºº Description :@ ºº HighScores is a routine that will take the score for the current user, ºº update the high scores data file, sort it, and print out a high score ºº bulletin WITHOUT a header, so you can custom design your own. ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›7ž›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|ýªUPµÉNÍ»º Command Name : Incomm8 ºº Calling Parameters :9 ºº CALL Incomm(Text$, SendEnter, FieldSize, Color) ººN ºº Description :@ ºº Incomm is a routine to output a line of text and then wait for a ºº response. Use HotKey in the field size to make a hot key. ººN ºº Special Parameters :9 ºº Caps Converts ARG$ before returning it to you to all caps ºº Filter Filters out all high ASCII characters ººN ºÈNͼ:žRŸ ›ž.Ÿž;›5ž›'ž*Ÿ žA›Kž›Kž›Nžœ›$ž›Mž›Hž›#ž|LªUPÉNÍ»º Command Name : MenuManager3 ºº Calling Parameters :9 ºº CALL MenuManager(Menu$(), Center, Color, No.OfSelections, HowToSelect$, ºº ColorOfHowToSelect, WhatWasSelected) ºº Description :@ ºº MenuManager will produce a menu for a ansi OR non-ansi user to use. ºº The method used to select a item is + and - to move the bar and Enter ºº to select, or you can just type the number (what a non-ansi user would ºº have to do).= ººN ºº Special Demo Program : MENUDEMO.BAS% ººN ºÈNͼ=žRŸ ›ž.Ÿž;›Mž›3žŸ žA›Kž›Kž›Nž›9ž›Kž›œ#›ž›#ž|@ªUPõÉNÍ»º Command Name : MoveCursor4 ºº Calling Parameters :9 ºº CALL MoveCursor(X,Y)4 ºº ANSI ONLY COMMAND7 ºº Description :@ ºº MoveCursor works like the locate command and will position the cursor ºº on the remote and local screen. Do NOT use locate or you will cause ºº problems which are unknown. For a Non-Ansi user, you will need to ºº re-draw a screen. Note that this is not part of the send routine ºº so you can be provided with more flexiablity. ººN ººN ºÈNͼ=žRŸ ›ž.Ÿž;›%ž+›œ›ž*Ÿ žA›Kž›Kž›Nž›Fž ›Kž›Hž›#ž|ªUPÑÉNÍ»º Command Name : NL< ºº Calling Parameters :9 ºº CALL NL(NumberOfLines)2 ººN ºº Description :@ ºº NL will send a enter how ever many times you tell it to. ººN ººN ººN ººN ººN ººN ºÈNͼ8žRŸ ›ž.Ÿž;›%ž+›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|8ªUPñÉNÍ»º Command Name : Parser8 ºº Calling Parameters :9 ºº CALL Parser(SearchFor$, SearchIn$, Array$(), ErrorCode) ººN ºº Description :@ ºº Parser will take a string and find every occurance of what you tell ºº it to search for. Then it will take what is inbetween the delimeters ºº and store it in the array you give it. If you have nothing in the ºº string to parse, or don't have enough elements in your array, it will ºº return an error code of 1./ ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›=ž›'ž*Ÿ žA›Kž›Kž›Nž›Jž›Kž›Hž›#ž|»ªUPtÉNÍ»º Command Name : RandNum7 ºº Calling Parameters :9 ºº A = RandNum(LowestNumber, HighestNumber) ººN ºº Description :@ ºº RandNum is a function that will generate a random number within the ºº specified range. This routine will automatically randomize by the ºº timer, so you will get the most random number you can get. ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›.ž"›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|ñªUP¦ÉNÍ»º Command Name : ReadUsers5 ºº Calling Parameters :9 ºº CALL ReadUsers(ErrCode)1 ºº PCBOARD 14.x ONLY7 ºº Description :@ ºº ReadUsers will read from the users file and store the data in some ºº variables. (Look in the Variable Quick Reference section in this ºº program) If you are using PCBoard 14.5, it's recommended that you ºº use ReadUserSYS instead of ReadUsers.$ ººN ººN ººN ºÈNͼ=žRŸ ›ž.Ÿž;›%ž+›œ›ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|ŽªUPGÉNÍ»º Command Name : ReverseBits3 ºº Calling Parameters :9 ºº CALL ReverseBits(Text$)1 ººN ºº Description :@ ºº ReverseBits will take the string you give it and reverse the bits of ºº each character. To decode it, run it back through the routine again ºº and it will be decoded.2 ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›%ž+›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|qªUP*ÉNÍ»º Command Name : ReverseChars2 ºº Calling Parameters :9 ºº CALL ReverseChars7 ººN ºº Description :@ ºº ReverseChars will take the string you give it and reverse the order ºº of the characters in the string. (First is last and last is first, ect.) ººN ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›%ž+›'ž*Ÿ žA›Kž›Mž›Nž›9ž›Kž›Hž›#ž|EªUPþÉNÍ»º Command Name : Send: ºº Calling Parameters :9 ºº CALL Send(Text$, SendABeep, SendAEnter, Color) ººN ºº Description :@ ºº Send is the basic output routine for Door Source. It will print to the ºº local and remote screens. Do NOT use print in your program! It will ºº cause wierd problems.4 ººN ºº To Print Blinking Text:2 ºº Set BlinkText to equal YES and call Send. The text will blink. Send ºº will automatically reset BlinkText to NO for the next thing to send. ºÈNͼ9žRŸ ›ž.Ÿž;›4ž›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Iž›KžT ªUPYÉNÍ»º Command Name : Sorter8 ºº Calling Parameters :9 ºº CALL Sorter(Array$(), HowManyElements)" ººN ºº Description :@ ºº Sorter will sort numbers in a string array in order from highest to ºº lowest. You will need to tell it how many elements to sort and it ºº will start at element 1 and not 0.' ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›,ž$›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|˜ªUPQÉNÍ»º Command Name : SysopPage5 ºº Calling Parameters :9 ºº CALL SysopPage: ººN ºº Description :@ ºº SysopPage will page the sysop (if the page bell is on) and will allow ºº chat in your door. You set Not.Around$ to equal something other than ºº the default for when the page bell is off. ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›%ž+›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|µªUPnÉNÍ»º Command Name : TimeConvert3 ºº Calling Parameters :9 ºº CALL TimeConvert(Hours, Minutes, NewTime$) ººN ºº Description :@ ºº TimeConvert will take the hour and minute you give it and convert it ºº from military time to normal time. It will return the new time (in ºº HH:MM format) to you in the third parameter. ººN ººN ººN ººN ºÈNͼ9žRŸ ›ž.Ÿž;›0ž ›'ž*Ÿ žA›Kž›Kž›Nž›9ž›Kž›Hž›#ž|=ªUPóÉNÍ»º Command Name : ViewFile6 ºº Calling Parameters :9 ºº CALL ViewFile(Filename$, CheckForAnsi, MorePrompts, PressEnterAtEnd) ººN ºº Description :@ ºº ViewFile will display a file (and check for and display a ansi version ºº of a file if you tell it to) and will provide more prompts and a ºº Press Any Key prompt at the end if you tell it to. You can set ºº File.Missing$ to equal something to be displayed when the file isn't ºº found on the disk.7 ººN ººN ºÈNͼ<žRŸ ›ž.Ÿž;›Jž›'ž*Ÿ žA›Kž›Kž›Nž›Jž›ž›Kž›Hž›#ž|ªUPëÉNÍ»º Command Name : WaitASec6 ºº Calling Parameters :9 ºº CALL WaitASec(SecondsToWait), ººN ºº Description :@ ºº WaitASec will wait the specified seconds by using the computer's clock. ººN ººN ººN ººN ººN ººN ºÈNͼ%žRŸ ›ž9ŸžA›žŸ žF›GžžOžÿžßŠªUP@ÉNÍ»º Command Name : Windows7 ºº Calling Parameters :9 ºº CALL Windows(ULR,ULC,LRR,LRC,FORE,BACK,TEXTFORE,TEXTBACK,BORDER,SHADOW, ºº TEXT$())8 ºº Description :@ ºº Windows will draw a window on the screen with a border and shadow. It ºº will also fill it with the text provided, but printing to the window ºº AFTER is has been drawn isn't posible unless you use MoveCursor. ºº Border Type #1: Single Line- ºº Border Type #2: Double Line- ºº Higher than 2 is that character used as a border (219 would be a solid ºº8 block for example) ºÈNͼ<žRŸ ›ž:ŸžA›Gž ž›ž;Ÿ žF›Ež ›Dž ›@ž›ž5›ž5›Fž<›žTªUPâÉNÍ»º Command Name : WriteUsers4 ºº Calling Parameters :9 ºº CALL WriteUsers(ErrCode)0 ººN ºº Description :@ ºº WriteUsers will take the same variables used by ReadUsers and write ºº them back out to the users file. You MUST keep the variables in the ºº correct type and format. For 14.5 users, use WriteUserSYS for a better ºº and safer way to handle user data. Variables are listed in the ºº Variables section of this Quick Reference. ººN ººN ºÈNͼ/žRŸ › ž7ŸžA›žƒŸ žG›Cž ›Cž ›Fž ›Gž ›*žÿž³ªUPÉNÍ»º Script Commands ººN ºº Look in the manual to see examples and how to use script commands. ººN ºº Command Purpose! Parameters ºº LTRIM Strips off leading spaces I1$ and O1$ ºº RTRIM Strips off trailing spaces I1$ and O1$ ºº UPPER Converts entire string to upper case I1$ and O1$ ºº LOWER Converts entire string to lower case I1$ and O1$ ºº MORE Sends a more prompts and gets Y,N,or C O1$ ºº PRESS Sends a press any key prompt None ºº EXIST Checks to see if a file is on the disk I1$ and O1$ ºº DAYOFTHEWEEK Returns a number from 1-7 for the day O1$ ºº NAMECASE Puts a string into proper name case I1$ and O1$ ººN ººN ºº I2$ is used for input ºº O2$ is used for output ººN ººN ººN ºÈNͼ‹žpŸžrž�Bž^š žšžšž š ž›ž ›ž› ž ›ž ›ž› ž ›ž ›$ž› ž ›ž ›$ž› ž ›ž ›+ž›ž ›ž ›ž›ž ›3ž › ž›%ž›ž›ž›#ž› žÃœž;œžÿž^̪UPœÉNÍ»º" Variables# ºº Variable Purpose Variable Purpose ºº ARG$ Input from INCOMM SYSDPATH$ 1st line in CFG ºº BBSNAME$ From CFG file SYSOPNM$ Name of Sysop ºº SYSFIRST$ Sysop's first name SYSLAST$ Sysop last name ºº SYSOP 1=Sysop On 0=User On CALLNAME$ Name of User ºº PROGNAME$ Name of door RELEASE$ Version of door ºº USERF$ User's first name USERL$ User's last name ºº YES Equals 1 to mean yes NO Equals 0 (Or no) ºº Exit.Dor.1$ 1st line printed when Exit.Dor.2$ 2nd line printed ºº exiting. when exiting. ºº Exit.Dor.Clr1 Color of above Exit.Dor.Clr2 Color of above ºº Time.Left Amount of time left Caps 1=Convert input ºº No.Enter.Send 1=Makes incomm not send to caps ºº enter AFTER done File.Missing$ Used for ViewFile ºº HotKey Equals -1 for INCOMM Not.Around Used for SysopPageºº ANSI 1=ANSI user 0=Non-ANSI BAUD& Connect baud rate ºº COMMPORT$ Comm port used PARAM$ From COMMAND$ ºº BlinkText Makes Send text blink TabSpace Tabs over output ºº Network 1=Share Active Node Node number ººN ºÈNͼ"žsŸ ž%›šžšž žš žšž ›ž ›ž› ž›ž››ž› ž › ž› ž › ž›ž› ž›ž ›ž ›!ž› ž › ž› ž ›ž›ž ›ž ›ž›ž ›ž›ž ›ž›ž› ž›%ž›ž›ž › ž › ž›ž› ž›ž › ž›ž›ž ›ž › ž›ž›ž›ž› ž›ž›ž ›ž› ž›ž›ž ›ž ›ž› ž›ž ›ž › žž› ž›ž›ž›ž›ž ›ž ›ž › ž¨žªUPPÉNÍ»º Command Name : DoorBusy6 ºº Calling Parameters :9 ºº CALL DoorBusy()9 ººN ºº Description :@ ºº DoorBusy will keep more than one node at a time from using the same door. ºº DoorBusy will check to see if a file exists on the disk (The name should ºº be put in BUSYFILE$) and if it does, it will tell the user that another ºº node is using the door and will then call ExitDoor for you. If it doesn't ºº fine BUSYFILE$ it will create BUSYFILE$ and return control to you. ºº When you call ExitDoor, BUSYFILE$ will be automatically erased on the disk.ººN ºÈNͼ@žRŸ ›ž.Ÿž;›ž;›'ž*Ÿ žAž›Ižž›Hž›Jž›Lž›Kž›Nž›#ž|þªUP´ÉNÍ»º Command Name : ErrorLevelSet1 ºº Calling Parameters :9 ºº CALL ErrorLevelSet(Error%). ººN ºº Description :@ ºº ErrorLevelSet will allow your program to use the DOS batch sub-command ºº ERRORLEVEL. Just pass an integer number that ranges from 0-255 to this ºº routine and the errorlevel will be set. Control is turned over to you, ºº NOT to ExitDoor in order to give more flexablity. ººN ººN ººN ºÈNͼ<žRŸ ›ž.Ÿž;› ž0›'ž*Ÿ žA›Lžž›Fžž›Fž ›1ž›žž›#ž|£ªUPgÉNÍ»º Command Name : FileExist5 ºº Calling Parameters :9 ºº FileExist(FileName$)4 ººN ºº Description :@ ºº FileExist is the same routine as in the Script Command but made as a ºº function for use in IF...THEN statments. It returns a true (-1) if the ºº file was found and a false (1) if the file was not found. ººN ººN ººN ººN ºÈNͼ.žRŸ › ž8ŸžA›ž‡Ÿ žF›Dž ›Fž ›9žžO›žÿž=žªUPbÉNÍ»º Command Name : DayOfWeek5 ºº Calling Parameters :9 ºº DayOfWeek()= ººN ºº Description :@ ºº DayOfWeek is the same routine as in the Script Commands, but is a ºº function for easier use. It returns a value from 1 to 7 to represent ºº the day of the week that it is. 1=Sunday, 2=Monday,...,7=Saturday. ººN ººN ººN ººN ºÈNͼ.žRŸ › ž8ŸžA› ž�Ÿ žF›Dž ›Dž ›Bž žO›žÿž=»UMAINMENU»UALLTRUN*»U ANSIMUSIC�»U BACKSPACEOVER»U BEEPSPEAKERÕ»UCENTER»UCLRSCRN¯ »UCODER= »U COLOREASY»UEXITDOORú»UGETTIME¯»U HIGHSCORESˆ»UINCOMM]»U MENUMANAGER^»U MOVECURSOR®»UNLò»UPARSER »URANDNUMI»U READUSERS »U REVERSEBITSý!»U REVERSECHARS�#»USEND%»USORTERM'»U SYSOPPAGEñ(»U TIMECONVERT�*»UVIEWFILEF,»UWAITASEC‡.»UWINDOWS©/»U WRITEUSERS72»U SCRIPTCMDZ4»U VARIABLES8»UDOORBUSYá=»U ERRORLEVELSETƒ@»U FILEEXIST…B»U DAYOFWEEK,D