home *** CD-ROM | disk | FTP | other *** search
/ The First Hungarian Family / The_First_Hungarian_Family_CD-ROM.bin / internet / offlread / 1st200 / a / install.mdl < prev    next >
Text File  |  1995-07-19  |  34KB  |  786 lines

  1.         SPARKWARE
  2.  
  3.     ASSIGN(Default$,2)
  4.         SAVER 180
  5.  
  6.         DISPLAY OFF
  7.         CLS
  8.         CURSOR OFF
  9.         BLINK OFF
  10.         FILLSCRN(1,1,25,80,32,48,112)
  11.         IF COLOR THEN
  12.                 BOX(3,5,23,75,143,7,1,1)
  13.                 ASSIGN(Logo$,"142")
  14.         ELSE
  15.                 BOX(3,5,23,76,143,7,1,1)
  16.                 ASSIGN(Logo$,"15")
  17.         END IF
  18.         CLEAR_BOXES
  19.         SCREEN(1,SAVE)
  20.         GOSUB LOGO
  21.         SCREEN(2,SAVE)
  22.         QPRINT("You are about to install the most powerful QWK offline mail reader",13,8,143,7)
  23.         QPRINT("available today.  @READER@ isn't just powerful, it is also very")
  24.         QPRINT("easy to use.  Just follow the prompts displayed on the screens and")
  25.         QPRINT("you will be using @READER@ in no time!")
  26.         QPRINT("")
  27.         QPRINT("...and, as always, thanks for your support!"
  28.         CLEAR_BOXES
  29.         DIALOG_BOX(1,0,27,1,"  Press [ENTER] to continue  ",20,39,112,112,1,116,15)
  30.         DISPLAY ON
  31.         GET(Choice$,1)
  32.         ASSIGN(InsDir$,_Current$)
  33.  
  34. :TOP
  35.         DISPLAY OFF
  36.         SCREEN(1,RESTORE)
  37.         CLEAR_BOXES
  38.         DIALOG_BOX(1,0,0,1,"      About      ",4,51,112,112,1,116,15)
  39.         DIALOG_BOX(2,0,0,2,"   Install New   ",9,51,112,112,1,116,15)
  40.         DIALOG_BOX(3,0,0,3,"      Update     ",14,51,112,112,1,116,15)
  41.         DIALOG_BOX(4,0,27,4,"      Quit       ",19,51,112,112,1,116,15)
  42.         QPRINT("Thank you for trying @READER@!",5,7,143,15)
  43.         QPRINT("Select 'INSTALL NEW' to install a new",9,7,142,7)
  44.         QPRINT("copy of @READER@ onto your computer.")
  45.         QPRINT("Select 'UPDATE' to update your copy of",14,7)
  46.         QPRINT("@READER@ to this 2.00 release.")
  47.         APRINT("Press the @X00@XF0 ESC @XFF key to quit.",20,7,143)
  48.         DISPLAY ON
  49.         GET(Choice$,Default$)
  50.         ASSIGN(Default$,4)
  51.         CLEAR_BOXES
  52.         ON Choice$ GOTO ABOUT,INSTALL,UPDATE,QUIT
  53.  
  54. :QUIT
  55.         DISPLAY OFF
  56.         CLS(7)
  57.         BOX(1,1,15,80,112,112,1,0)
  58.         ASSIGN(Logo$,"112")
  59.         GOSUB LOGO
  60.         QPRINT("BBS: (615) 230-8822",11,40,True)
  61.         IF COMPARE(InstallOk$,True) THEN
  62.                 QPRINT("Type '1ST' to run @READER@",13,40,True)
  63.                 QPRINT(" 1ST ",13,45,15,15)
  64.         END IF
  65.         LOCATE 22,1
  66.         DISPLAY ON
  67.         CURSOR ON
  68.         EXIT
  69.  
  70. :ABOUT
  71.         DISPLAY OFF
  72.         BOX(3,5,23,75,240,7,1,1)
  73.         QPRINT("@READER@ Install",5,True,True)
  74.         QPRINT("─────────────────")
  75.         QPRINT("Copyright 1995 by Mark Herring",9)
  76.         QPRINT("All Rights Reserved")
  77.         QPRINT("Sparkware",12)
  78.         QPRINT("Post Office Box 386")
  79.         QPRINT("Hendersonville, Tennessee   37077")
  80.         QPRINT("(615) 230-8822 (BBS)",16)
  81.         QPRINT("(615) 230-MAIL (Voice)")
  82.         QPRINT("Press any key to continue",21,0,241,15)
  83.         DISPLAY ON
  84.         PAUSE
  85.         GOTO TOP
  86.  
  87. :INSTALL
  88.         ASSIGN(Install$,"Install")
  89.         SCREEN(1,RESTORE)
  90.         QPRINT("Installing @READER@",5,10,142,15)
  91.         QPRINT("Before we can begin you will need to tell @READER@",9,10,True)
  92.         QPRINT("where you wish to install the program on your computer.")
  93.         QPRINT("")
  94.         QPRINT("We recommend that you press the [ENTER] key to accept")
  95.         QPRINT("the default location suggested below unless you wish")
  96.         QPRINT("to install @READER@ in another location on your system.")
  97.         QPRINT("Location to install @READER@:",17,10,143,15)
  98.         ASSIGN(Target$,"@DRIVE@:\1ST\")
  99.         ASK(Target$,17,41,30,112,112,UPPER)
  100.         IF LASTKEY=27 THEN GOTO TOP
  101.         IF COMPARE(Target$,"") THEN GOTO TOP
  102.         DCHECK Target$
  103.     ASSIGN(Scripts$,Target$+"SCRIPTS\")
  104.     ASSIGN(Packets$,Target$+"PACKETS\")
  105.         ASSIGN(Mme$,Target$+"MME\")
  106.     ASSIGN(QRip$,Target$+"\QRIP\")
  107.         ASSIGN(BBSDir$,Target$+"\BBS\SPARKY\")
  108.  
  109.         MKDIR Target$
  110.         MKDIR Scripts$
  111.         MKDIR Packets$
  112.         MKDIR Mme$
  113.         MKDIR QRip$
  114.         MKDIR BBSDir$
  115.  
  116.         GOTO SETUP
  117.  
  118. :UPDATE
  119.         ASSIGN(Install$,"Update")
  120.         SCREEN(1,RESTORE)
  121.         QPRINT("Updating @READER@",5,10,142,15)
  122.         QPRINT("Before we can begin you will need to tell @READER@",12,10,True)
  123.         QPRINT("where your @READER@ subdirectory is located.")
  124.         QPRINT("@READER@ subdirectory location:",17,10,143,15)
  125.         ASSIGN(Target$,"@DRIVE@:\1ST\")
  126.         ASK(Target$,17,43,30,112,112,UPPER)
  127.         IF LASTKEY=27 THEN GOTO TOP
  128.         IF COMPARE(Target$,"") THEN GOTO TOP
  129.         DCHECK Target$
  130.     ASSIGN(Scripts$,Target$+"SCRIPTS\")
  131.         ASSIGN(Mme$,Target$+"MME\")
  132.     ASSIGN(QRip$,Target$+"\QRIP\")
  133.  
  134.         MKDIR Scripts$
  135.         MKDIR Mme$
  136.         MKDIR QRip$
  137.  
  138. :SETUP
  139.         SCREEN(1,RESTORE)
  140.         QPRINT("Installing main system files",6,True,True)
  141.         IF COMPARE(Install$,"Install") THEN
  142.                 LIST_MOVE("FILES1.LST",Target$)
  143.                 COPY("SYSTEMS.DAT",Target$)
  144.                 GET_BBS
  145.         ELSE
  146.                 LIST_MOVE("UPDATE.LST",Target$)
  147.         END IF
  148.         IF EXIST FILES2.LST THEN
  149.                 LIST_MOVE("FILES2.LST",Target$)
  150.         ELSE
  151.                 UNPACK "1ST-200B.ZIP" TO Target$ "*.*"
  152.         END IF
  153.         QPRINT("Copying installation programs...",7,True,True)
  154.         COPY("*.KEY",Target$)
  155.         COPY("INSTALL.EXE",Target$)
  156.         COPY("MODULE.EXE",Target$)
  157.         COPY("QUNZIP.EXE",Target$)
  158.         COPY("WHATS.NEW",Target$)
  159.         COPY("*.TXT",Target$)
  160.  
  161.         CHDIR Target$
  162.         QPRINT("Installing script files",8,True,True)
  163.         LIST_MOVE("SCRIPTS.LST",Scripts$)
  164.         LIST_MOVE("MME.LST",Mme$)
  165.         IF EXIST "QRIP.LST" THEN
  166.                 QPRINT("Installing QRip files",9,True,True)
  167.                 LIST_MOVE("QRIP.LST",QRip$)
  168.         END IF
  169.  
  170.         IF COMPARE(Install$,"Update") THEN
  171.                 ASSIGN(User$,"ON")
  172.                 GOTO WINDOWS
  173.         END IF
  174.  
  175.         DISPLAY OFF
  176.         SCREEN(1,RESTORE)
  177.         QPRINT("Question #1",5,8,143,15)
  178.         QPRINT("Would you consider yourself a novice user?",5,25,142,15)
  179.         DIALOG_BOX(1,0,89,"OFF","  Yes  ",8,8,112,112,1,116,15)
  180.         QPRINT("Select 'YES' and @READER@ will configure itself",8,25,143,15)
  181.         QPRINT("to present an easy-to-use menu system.")
  182.         DIALOG_BOX(2,0,78,"ON","  No   ",14,8,112,112,1,116,15)
  183.         QPRINT("Select 'NO' and @READER@ will configure itself",14,25,143,15)
  184.         QPRINT("to present a 'power user' interface.  It gives")
  185.         QPRINT("you access to advanced features in @READER@.")
  186.         QPRINT("Please select your choice...",21,8,142,15)
  187.         DISPLAY ON
  188.         GET(User$,1)
  189.         CLEAR_BOXES
  190.  
  191.         DISPLAY OFF
  192.         SCREEN(1,RESTORE)
  193.         ASSIGN(Value$,2)
  194.         IF COLOR THEN ASSIGN(Value$,1)
  195.         QPRINT("Question #2",5,8,143,15)
  196.         QPRINT("Do you use a color monitor?",5,25,142,15)
  197.         DIALOG_BOX(1,0,89,"ON","  Yes  ",8,8,112,112,1,116,15)
  198.         QPRINT("Select 'YES' to use color screens in @READER@.",8,25,143,15)
  199.         DIALOG_BOX(2,0,78,"OFF","  No   ",14,8,112,112,1,116,15)
  200.         QPRINT("Select 'NO' if you are using a black and white",14,25,143,15)
  201.         QPRINT("monitor or you are using a laptop with an LCD")
  202.         QPRINT("display.")
  203.         QPRINT("Please select your choice...",21,8,142,15)
  204.         DISPLAY ON
  205.         GET(Display$,Value$)
  206.         CLEAR_BOXES
  207.  
  208.         DISPLAY OFF
  209.         SCREEN(1,RESTORE)
  210.         ASSIGN(Value$,2)
  211.         IF COMPARE(_Mouse$,True) THEN ASSIGN(Value$,1)
  212.         QPRINT("Question #3",5,8,143,15)
  213.         QPRINT("Do you use a mouse?",5,25,142,15)
  214.         DIALOG_BOX(1,0,89,"ON","  Yes  ",8,8,112,112,1,116,15)
  215.         QPRINT("Select 'YES' and @READER@ will let you use a",8,25,143,15)
  216.         QPRINT("mouse to navigate through the screens and menus")
  217.         QPRINT("as well as your keyboard.")
  218.         DIALOG_BOX(2,0,78,"OFF","  No   ",14,8,112,112,1,116,15)
  219.         QPRINT("Select 'NO' and @READER@ will only use your",14,25,143,15)
  220.         QPRINT("keyboard.")
  221.         QPRINT("Please select your choice...",21,8,142,15)
  222.         DISPLAY ON
  223.         GET(Mouse$,Value$)
  224.         CLEAR_BOXES
  225.  
  226.         DISPLAY OFF
  227.         SCREEN(1,RESTORE)
  228.         QPRINT("Question #4",5,8,143,15)
  229.         QPRINT("Signatures",5,25,142,15)
  230.         QPRINT("Messages written with @READER@ can automatically have your name",10,8,True)
  231.         QPRINT("appended to your messages.  If you would like to have @READER@")
  232.         QPRINT("do this for you, please enter your FIRST name using both upper")
  233.         QPRINT("and lower case letters below.  Otherwise, just press the [ENTER]")
  234.         QPRINT("key to continue with the installation process.")
  235.         QPRINT("Your first name is: ",18,8,142,15)
  236.         DISPLAY ON
  237.         ASK(Signature$,18,28,40,112,112)
  238.  
  239. :WINDOWS
  240.         DISPLAY OFF
  241.         SCREEN(1,RESTORE)
  242.         ASSIGN(Value$,2)
  243.         QPRINT("Question #5",5,8,143,15)
  244.         QPRINT("Do you plan to use @READER@ with Windows?",5,25,142,15)
  245.         DIALOG_BOX(1,0,89,"ON","  Yes  ",8,8,112,112,1,116,15)
  246.         QPRINT("Select 'YES' if you intend to use @READER@",8,25,143,15)
  247.         QPRINT("with Microsoft Windows")
  248.         DIALOG_BOX(2,0,78,"OFF","  No   ",14,8,112,112,1,116,15)
  249.         QPRINT("Select 'NO' if you will not be using @READER@",14,25,143,15)
  250.         QPRINT("with Microsoft Windows")
  251.         QPRINT("Please select your choice...",21,8,142,15)
  252.         DISPLAY ON
  253.         GET(Windows$,Value$)
  254.         CLEAR_BOXES
  255.  
  256.         IF COMPARE(Windows$,"ON") THEN
  257.                 DISPLAY OFF
  258.                 FILLSCRN(1,1,2,80,32,112)
  259.                 FILLSCRN(3,1,25,80,32,48,15)
  260.                 QPRINT(" - ",1,1,143,112)
  261.                 QPRINT("▐",1,4,113,112)
  262.                 QPRINT("                            Program Manager                                 ",1,5,31,15)
  263.                 QPRINT(" File  Options  Window  Help",2,1,True)
  264.                 SCREEN(3,SAVE)
  265.                 BOX(6,10,21,70,31,112,1,1)
  266.                 FILLSCRN(7,11,20,69,32,30,112)
  267.                 QPRINT("The following screens show you how to install @READER@",8,13,True)
  268.                 QPRINT("into Windows.")
  269.                 QPRINT("")
  270.                 QPRINT("It might be a good idea to get a pad and pen to write")
  271.                 QPRINT("these steps down so you can use them later when inside")
  272.                 QPRINT("Microsoft Windows.")
  273.                 DIALOG_BOX(1,0,27,1,"         Continue...         ",16,24,112,15,1,116,15)
  274.                 DISPLAY ON
  275.                 GET (Value$,1)
  276.                 CLEAR_BOXES
  277.                 DISPLAY OFF
  278.                 SCREEN(3,RESTORE)
  279.                 BOX(16,10,23,70,31,112,1,1)
  280.                 FILLSCRN(20,11,22,69,32,30,112)
  281.                 QPRINT("To install @READER@ under Windows perform these steps:",18,13,True)
  282.                 SCREEN(3,SAVE)
  283.                 QPRINT(" File ",2,1,31,15)
  284.                 BOX(3,1,12,25,112,112,1,1)
  285.                 QPRINT(" New...                ",4,2,31,15)
  286.                 QPRINT(" Open",5,2,True)
  287.                 QPRINT(" Move...",6,2,True)
  288.                 QPRINT(" Copy...",7,2,True)
  289.                 QPRINT(" Delete",8,2,True)
  290.                 QPRINT(" Properties...",9,2,True)
  291.                 QPRINT(" Run...",10,2,True)
  292.                 QPRINT(" Exit Windows",11,2,True)
  293.                 QPRINT("1) From the Windows 'Program Manager' click on 'File'",20,13,True)
  294.                 QPRINT("2) Select 'New...' from the 'File' menu",21,13,True)
  295.                 DISPLAY ON
  296.                 BEEP
  297.                 PAUSE
  298.                 DISPLAY OFF
  299.                 SCREEN(3,RESTORE)
  300.                 BOX(4,5,10,41,112,112,1,1)
  301.                 QPRINT(" - ",5,6,143,15)
  302.                 QPRINT("▐",5,9,113,7)
  303.                 QPRINT("      New Program Object       ",5,10,31,15)
  304.                 BOX(6,7,9,30,112,112,1,False)
  305.                 QPRINT("New",6,8,True)
  306.                 QPRINT("■ Program Group",7,9,True)
  307.                 QPRINT("■ Program Item",8,9,True)
  308.                 QPRINT("▄▄▄▄▄▄▄▄",6,32,120,True)
  309.                 QPRINT("▄▄▄▄▄▄▄▄",7,32,120,True)
  310.                 QPRINT("▄▄▄▄▄▄▄▄",8,32,120,True)
  311.                 QPRINT("3) Select 'Program Item' from 'New Program Object' menu",20,13,True)
  312.                 QPRINT("4) Select the 'OK' button on your screen",21,13,True)
  313.                 DISPLAY ON
  314.                 BEEP
  315.                 PAUSE
  316.                 ASSIGN(_Default$,Target$)
  317.                 ASSIGN(_Default$,"C:\1ST\")
  318.                 DISPLAY OFF
  319.                 SCREEN(3,RESTORE)
  320.                 BOX(4,5,13,70,112,112,1,1)
  321.                 QPRINT(" - ",5,6,143,15)
  322.                 QPRINT("▐",5,9,113,7)
  323.                 QPRINT("                   Program Item Properties                  ",5,10,31,15)
  324.                 QPRINT("Description:       @READER@",7,7,True)
  325.                 QPRINT("Command Line:      @DEFAULT@1ST.EXE",8,7,True)
  326.                 QPRINT("Working Directory: @DEFAULT@",9,7,True)
  327.                 QPRINT("Shortcut Key:      None",10,7,True)
  328.                 QPRINT("▄▄▄▄▄▄▄▄",7,61,120,True)
  329.                 QPRINT("▄▄▄▄▄▄▄▄",8,61,120,True)
  330.                 QPRINT("▄▄▄▄▄▄▄▄",9,61,120,True)
  331.                 QPRINT("▄▄▄▄▄▄▄▄",10,61,120,True)
  332.                 QPRINT("▄▄▄▄▄▄▄▄",11,61,120,True)
  333.                 QPRINT("5) Fill out your entry box to match this screen",20,13,True)
  334.                 QPRINT("6) Select the 'OK' button to save your changes",21,13,True)
  335.                 DISPLAY ON
  336.                 BEEP
  337.                 PAUSE
  338.                 IF COMPARE(User$,"ON") THEN
  339.                         DISPLAY OFF
  340.                         SCREEN(3,RESTORE)
  341.                         FILLSCRN(3,1,25,80,32,48,15)
  342.                         BOX(6,10,21,70,31,112,1,1)
  343.                         FILLSCRN(7,11,20,69,32,30,112)
  344.                         QPRINT("Note that if you intend to set your serial port at",9,15,True)
  345.                         QPRINT("speeds greater than 9600 baud you will need to use")
  346.                         QPRINT("Windows 'Control Panel' program located in the MAIN")
  347.                         QPRINT("window.  Select 'Ports' from CONTROL PANEL and set")
  348.                         QPRINT("Microsoft Windows to the new baud rate.")
  349.                         DIALOG_BOX(1,0,27,1,"         Continue...         ",16,24,112,15,1,116,15)
  350.                         DISPLAY ON
  351.                         GET (Value$,1)
  352.                         CLEAR_BOXES
  353.                 END IF
  354.         END IF
  355.  
  356.         IF COMPARE(User$,"ON") THEN
  357.                 DISPLAY OFF
  358.                 SCREEN(1,RESTORE)
  359.                 ASSIGN(Value$,2)
  360.                 QPRINT("Question #6",5,8,143,15)
  361.                 QPRINT("Do you own or operate a bulletin board system?",5,25,142,15)
  362.                 DIALOG_BOX(1,0,89,"ON","  Yes  ",8,8,112,112,1,116,15)
  363.                 QPRINT("Select 'YES' if you own or operate your",8,25,143,15)
  364.                 QPRINT("own bulletin board system (BBS)")
  365.                 DIALOG_BOX(2,0,78,"OFF","  No   ",14,8,112,112,1,116,15)
  366.                 QPRINT("Select 'NO' if you do not own or operate",14,25,143,15)
  367.                 QPRINT("a bulletin board system")
  368.                 QPRINT("Please select your choice...",21,8,142,15)
  369.                 DISPLAY ON
  370.                 GET(Sysop$,Value$)
  371.                 CLEAR_BOXES
  372.                 IF COMPARE(Sysop$,"ON") THEN
  373.                         DISPLAY OFF
  374.                         BOX(1,1,25,80,11,15,5,False)
  375.                         FILLSCRN(2,3,24,78,32,31,112)
  376.                         QPRINT("Join the @READER@ Sysop Incentive Program!",3,True,30,112)
  377.                         QPRINT("We have long recognized that sysops are who help make our products",5,7,True)
  378.                         QPRINT("succeed.  And we've always looked for a way for you, the sysop, to")
  379.                         QPRINT("earn a bit of financial return for your efforts to help promote our")
  380.                         QPRINT("software.")
  381.                         QPRINT("")
  382.                         QPRINT("If you are a sysop running a bulletin board system located in either")
  383.                         QPRINT("The United States or Canada then you qualify for our Sysop Incentive")
  384.                         QPRINT("Program.")
  385.                         QPRINT("")
  386.                         QPRINT("What is it?  It gives you the ability to make $5.00 (US) on each")
  387.                         QPRINT("copy of @READER@ that is downloaded by your callers and registered")
  388.                         QPRINT("with Sparkware via our tollfree online order system.")
  389.                         QPRINT("")
  390.                         QPRINT("Call our customer support BBS system at (615) 230-8822 and use the")
  391.                         QPRINT("'DEALER' command from our main menu to find out more!")
  392.                         DIALOG_BOX(1,0,27,1,"         Continue...         ",21,24,112,15,1,116,15)
  393.                         DISPLAY ON
  394.                         GET (Value$,1)
  395.                         CLEAR_BOXES
  396.                 END IF
  397.         END IF
  398.  
  399.         IF COMPARE(Install$,"Update") THEN GOTO UPDATING
  400.  
  401.         MOVE("$$CALL.B1N",BBSDir$)
  402.  
  403.         DISPLAY OFF
  404.         SCREEN(2,RESTORE)
  405.         QPRINT("@READER@ now needs to know the serial port used by your",14,10,True)
  406.         QPRINT("computer to connect to your modem.  If you already know the")
  407.         QPRINT("serial port number used by your computer you may enter its")
  408.         QPRINT("number below.  Otherwise, press [ENTER] without entering")
  409.         QPRINT("a number and @READER@ will try to find the correct serial")
  410.         QPRINT("port for you.")
  411.         QPRINT("Serial port number?",21,10)
  412.         DISPLAY ON
  413.         ASK(Serial$,21,30,6,112,112,UPPER)
  414.         IF NOT COMPARE(Serial$,"") THEN GOTO MAX_SPEED
  415.  
  416.         DISPLAY OFF
  417.         SCREEN(2,RESTORE)
  418.         QPRINT("@READER@ will check your system in an attempt to locate",14,10,True)
  419.         QPRINT("your modem.  Please make sure that your modem is turned")
  420.         QPRINT("ON and is ready to use.")
  421.         CLEAR_BOXES
  422.         DIALOG_BOX(1,0,27,1,"  Press [ENTER] to continue  ",19,25,112,112,1,116,15)
  423.         DISPLAY ON
  424.         GET(Choice$,1)
  425.  
  426.         SCREEN(2,RESTORE)
  427.         QPRINT("Serial port found at:",21,10,True)
  428.         SCREEN(3,SAVE)
  429.         ASSIGN(Serial$,"")
  430.         QPRINT("Testing COM1 now...",14,10,143,15)
  431.         IF FIND_PORT(3F8,4) THEN
  432.                 ASSIGN(Value$,"COM1")
  433.                 ASSIGN(Serial$,"1")
  434.         ELSE
  435.                 BEEP(1000,1)
  436.                 BEEP(500,1)
  437.                 QPRINT("Testing COM2 now...")
  438.                 IF FIND_PORT(2F8,3) THEN
  439.                         ASSIGN(Value$,"COM2")
  440.                         ASSIGN(Serial$,"2")
  441.                 ELSE
  442.                         BEEP(1000,1)
  443.                         BEEP(500,1)
  444.                         QPRINT("Testing COM3 now...")
  445.                         IF FIND_PORT(3E8,4) THEN
  446.                                 ASSIGN(Value$,"COM3")
  447.                                 ASSIGN(Serial$,"3")
  448.                         ELSE
  449.                                 BEEP(1000,1)
  450.                                 BEEP(500,1)
  451.                                 QPRINT("Testing COM4 now...")
  452.                                 IF FIND_PORT(2E8,3) THEN
  453.                                         ASSIGN(Value$,"COM4")
  454.                                         ASSIGN(Serial$,"4")
  455.                                 ELSE
  456.                                         SCREEN(3,RESTORE)
  457.                                         QPRINT("Testing COM1 (IRQ5) now...",14,10,143,15)
  458.                                         IF FIND_PORT(3F8,5) THEN
  459.                                                 ASSIGN(Value$,"COM1")
  460.                                                 ASSIGN(Serial$,"3F8,5")
  461.                                         ELSE
  462.                                                 BEEP(1000,1)
  463.                                                 BEEP(500,1)
  464.                                                 QPRINT("Testing COM2 (IRQ5) now...")
  465.                                                 IF FIND_PORT(2F8,5) THEN
  466.                                                         ASSIGN(Value$,"COM2")
  467.                                                         ASSIGN(Serial$,"2F8,5")
  468.                                                 ELSE
  469.                                                         BEEP(1000,1)
  470.                                                         BEEP(500,1)
  471.                                                         QPRINT("Testing COM3 (IRQ5) now...")
  472.                                                         IF FIND_PORT(3E8,5) THEN
  473.                                                                 ASSIGN(Value$,"COM3")
  474.                                                                 ASSIGN(Serial$,"3E8,5")
  475.                                                         ELSE
  476.                                                                 BEEP(1000,1)
  477.                                                                 BEEP(500,1)
  478.                                                                 QPRINT("Testing COM4 (IRQ5) now...")
  479.                                                                 IF FIND_PORT(2E8,5) THEN
  480.                                                                         ASSIGN(Value$,"COM4")
  481.                                                                         ASSIGN(Serial$,"2E8,5")
  482.                                                                 ELSE
  483.                                                                         ASSIGN(Value$,"No modem found")
  484.                                                                         ASSIGN(Serial$,"")
  485.                                                                 END IF
  486.                                                         END IF
  487.                                                 END IF
  488.                                         END IF
  489.                                 END IF
  490.                         END IF
  491.                 END IF
  492.         END IF
  493.  
  494.         IF COMPARE(Serial$,"") THEN
  495.                 DISPLAY OFF
  496.                 SCREEN(1,RESTORE)
  497.                 QPRINT("Sorry, but @READER@ could not",5,9,142,15)
  498.                 QPRINT("locate your modem.")
  499.                 QPRINT("Before you can run @READER@ we first",11,9,True)
  500.                 QPRINT("need to know a bit about your computer")
  501.                 QPRINT("system.  You need to tell us which")
  502.                 QPRINT("serial port is used to connect your")
  503.                 QPRINT("system to your modem.")
  504.                 QPRINT("Please make your selection now...",21,9,142,15)
  505.                 DIALOG_BOX(1,0,142,"1","     Port 1      ",4,51,112,112,0,116,15)
  506.                 DIALOG_BOX(2,0,50,"2","     Port 2      ",8,51,112,112,0,116,15)
  507.                 DIALOG_BOX(3,0,51,"3","     Port 3      ",12,51,112,112,0,116,15)
  508.                 DIALOG_BOX(4,0,52,"4","     Port 4      ",16,51,112,112,0,116,15)
  509.                 DIALOG_BOX(5,0,27,"0","    No modem     ",20,51,112,112,0,116,15)
  510.                 DISPLAY ON
  511.                 GET(Serial$,1)
  512.                 CLEAR_BOXES
  513.         ELSE
  514.                 QPRINT(Value$,21,32,142,15)
  515.                 BEEP(2000,1)
  516.                 BEEP(2500,1)
  517.                 PAUSE 3
  518.         END IF
  519.  
  520. :MAX_SPEED
  521.         IF COMPARE(Serial$,"0") THEN GOTO UPDATING
  522.         DISPLAY OFF
  523.         SCREEN(2,RESTORE)
  524.         QPRINT("@READER@ needs to know the maximum",14,9,True)
  525.         QPRINT("speed your modem supports.  If you")
  526.         QPRINT("are unsure about just how fast your")
  527.         QPRINT("modem will transmit data over the")
  528.         QPRINT("telephone line we recommend you use")
  529.         IF COMPARE(User$,"OFF") THEN
  530.                 QPRINT("'Low speed' for your modem.")
  531.                 QPRINT("")
  532.                 QPRINT("'High speed' modems can transmit data")
  533.                 QPRINT("at speeds of 9600 baud or higher.")
  534.                 CLEAR_BOXES
  535.                 DIALOG_BOX(1,0,0,"2400","  Low speed   ",14,54,112,112,1,116,15)
  536.                 DIALOG_BOX(2,0,0,"9600","  High speed  ",19,54,112,112,1,116,15)
  537.                 DISPLAY ON
  538.                 GET(Baud$,1)
  539.         ELSE
  540.                 'FILLSCRN(5,40,10,70,32,143,15)
  541.                 CLEAR_BOXES
  542.                 DIALOG_BOX(1,1,0,"1200"," A)  1200 baud  ",13,52,112,112,1,116,15)
  543.                 DIALOG_BOX(2,1,0,"2400"," B)  2400 baud  ",15,52,112,112,1,116,15)
  544.                 DIALOG_BOX(3,1,0,"9600"," C)  9600 baud  ",17,52,112,112,1,116,15)
  545.                 DIALOG_BOX(4,1,0,"19200"," D) 19200 baud  ",19,52,112,112,1,116,15)
  546.                 DIALOG_BOX(5,1,0,"38400"," E) 38400 baud  ",21,52,112,112,1,116,15)
  547.                 QPRINT("Please select your choice (A-E)?",21,9,142,15)
  548.                 DISPLAY ON
  549.                 GET(Baud$,2)
  550.         END IF
  551.         CLEAR_BOXES
  552.  
  553.         ASSIGN(ModemInit$,"ATZ")
  554.  
  555.         DISPLAY OFF
  556.         SCREEN(1,RESTORE)
  557.         QPRINT("Which type of telephone service do you have?",5,9,142,15)
  558.         QPRINT("I have touch tone service",9,19,True)
  559.         QPRINT("Touch tone service but I must dial '9' to 'get out'",13,19,True)
  560.         QPRINT("I have rotary service",17,19,True)
  561.         QPRINT("Rotary service but I must dial '9' to 'get out'",21,19,True)
  562.         DIALOG_BOX(1,0,0,"ATDT"," 1 ",8,9,112,112,0,116,15)
  563.         DIALOG_BOX(2,0,0,"ATDT 9,"," 2 ",12,9,112,112,0,116,15)
  564.         DIALOG_BOX(3,0,0,"ATDP"," 3 ",16,9,112,112,0,116,15)
  565.         DIALOG_BOX(4,0,0,"ATDP 9,"," 4 ",20,9,112,112,0,116,15)
  566.         DISPLAY ON
  567.         GET(DialString$,1)
  568.         CLEAR_BOXES
  569.  
  570.         IF COMPARE(DialString$,"ATDT 9,") THEN GOTO UPDATING
  571.         IF COMPARE(DialString$,"ATDP 9,") THEN GOTO UPDATING
  572.  
  573.         DISPLAY OFF
  574.         SCREEN(1,RESTORE)
  575.         QPRINT("Do you have 'Call Waiting'?",5,8,142,15)
  576.         DIALOG_BOX(1,0,89,"ON","  Yes  ",8,8,112,112,1,116,15)
  577.         QPRINT("Select 'YES' and @READER@ will disable call",8,25,143,15)
  578.         QPRINT("waiting when attempting to connect to a BBS.")
  579.         DIALOG_BOX(2,0,78,"OFF","  No   ",14,8,112,112,1,116,15)
  580.         QPRINT("Select 'NO' if you do not have call waiting.",14,25,143,15)
  581.         QPRINT("Please select your choice...",21,8,142,15)
  582.         DISPLAY ON
  583.         GET(CallWait$,2)
  584.         IF COMPARE(CallWait$,"ON") THEN
  585.                 IF COMPARE(DialString$,"ATDT") THEN
  586.                         ASSIGN(DialString$,"ATDT *70,")
  587.                 ELSE
  588.                         ASSIGN(DialString$,"ATDP 1170,")
  589.                 END IF
  590.         END IF
  591.         CLEAR_BOXES
  592.  
  593. :UPDATING
  594.         SCREEN(1,RESTORE)
  595.         BOX(10,20,14,60,112,112,1,1,"Updating files...")
  596.         SET_LOAD "1ST.SET"
  597.         IF COMPARE(Install$,"Update") THEN
  598.                 IF NOT EXIST 1ST.NEW THEN COLOR_FIX
  599.         ELSE
  600.                 SET(NewUser,"XX")
  601.                 SET(SerialPort,Serial$)
  602.                 SET(MaxBaudRate,Baud$)
  603.                 SET(Init,"ATZ")
  604.                 SET(PreFix1,DialString$)
  605.                 SET(PacketDir,Target$+"PACKETS")
  606.                 SET(RepDir,Target$+"PACKETS")
  607.                 SET(DownLoads,Target$+"DOWNLOAD")
  608.                 SET(Programs,Target$+"PROGRAMS")
  609.                 SET(WorkDir,Target$+"WORKDIR")
  610.                 SET(Phonebook,Target$+"SYSTEMS.DAT")
  611.                 SET(Signature,Signature$)
  612.                 SWITCH(1,User$)
  613.                 SWITCH(4,Display$)
  614.                 SWITCH(11,Mouse$)
  615.                 COPY("SPARKY.QTU",Packets$)
  616.         END IF
  617.         SET_SAVE "1ST.SET"
  618.     ASSIGN(InstallOk$,True)
  619.  
  620. :MANUALS
  621.         CHDIR Target$
  622.         IF NOT EXIST NOVICE.EXE THEN GOTO MANUALS_DONE
  623.         DISPLAY OFF
  624.         SCREEN(1,RESTORE)
  625.         QPRINT("Please select which manuals you wish to print...",5,True,142,15)
  626.         DIALOG_BOX(1,0,78,1,"         New User's guide         ",8,20,112,112,1,116,15)
  627.         DIALOG_BOX(2,0,49,2,"         @READER@ manual         ",13,20,112,112,1,116,15)
  628.         DIALOG_BOX(3,0,27,3,"            Continue...           ",18,20,112,112,1,116,15)
  629.         DISPLAY ON
  630.         GET (Value$,3)
  631.         CLEAR_BOXES
  632.         ON Value$ GOTO NOVICE,ADVANCED,MANUALS_DONE
  633.  
  634. :NOVICE
  635.         SCREEN(3,SAVE)
  636.         CLS(7)
  637.         BOX(10,20,14,60,112,112,1,1,"One moment please...")
  638.         SHELL "NOVICE /PRINT /SS,SCRNSAVE"
  639.         SCREEN(3,RESTORE)
  640.         GOTO MANUALS
  641.  
  642. :ADVANCED
  643.         SCREEN(3,SAVE)
  644.         CLS(7)
  645.         BOX(10,20,14,60,112,112,1,1,"One moment please...")
  646.         SHELL "MANUAL /PRINT /SS,SCRNSAVE"
  647.         SCREEN(3,RESTORE)
  648.         GOTO MANUALS
  649.  
  650. :MANUALS_DONE
  651.         CLEAR_BOXES
  652.         CHDIR InsDir$
  653.         CALL "INS-EDIT.MDL"
  654.         CALL "INS-MME.MDL"
  655.         CALL "INS-PROG.MDL"
  656.         CALL "INS-386.MDL"
  657.         CHDIR Target$
  658.  
  659.     ASSIGN(Default$,4)
  660.         DISPLAY OFF
  661.         SCREEN(2,RESTORE)
  662.         QPRINT("You are now ready to begin using @READER@ 2.00",14,8,142,15)
  663.         IF EXIST "1ST.KEY" THEN
  664.                 QPRINT("If you have any questions or problems using @READER@ you can",16,8,143,7)
  665.                 QPRINT("call our 24 hour customer support bulletin board system at")
  666.                 QPRINT("(615) 230-8822.  Or you can reach us via the Internet by sending")
  667.                 QPRINT("email to 'help@sparkware.com'.")
  668.         ELSE
  669.                 QPRINT("This copy of @READER@ 2.00 is limited to reading 20 messages",16,8,143,7)
  670.                 QPRINT("per conference area.  Once registered (for only $25), @READER@")
  671.                 QPRINT("can read 400 messages per conference area (up to 32,766 messages")
  672.                 QPRINT("per area if your system uses expanded memory).")
  673.         END IF
  674.         QPRINT("")
  675.         QPRINT("Press any key to continue...")
  676.         DISPLAY ON
  677.         BEEP
  678.         PAUSE
  679.         CHDIR InsDir$
  680.         IF NOT COMPARE(InsDir$,Target$) THEN
  681.                 KILL "*.*"
  682.         ELSE
  683.                 KILL "FILES?.LST"
  684.                 KILL "MME.LST"
  685.                 KILL "QRIP.LST"
  686.                 KILL "SCRIPTS.LST"
  687.                 KILL "UPDATE.LST"
  688.                 KILL "INSTALL.MDL"
  689.                 KILL "INS-1ST2.MDL"
  690.                 KILL "1ST-200*.ZIP"
  691.         END IF
  692.         CHDIR Target$
  693.         GOTO QUIT
  694.  
  695. :LOGO
  696.         BOX(5,8,10,30,29,15,1,1)
  697.         QPRINT("═════════════════",5,11,29,15)
  698.         QPRINT(" ▄▄▄",6,10,30,15)
  699.         QPRINT("█  █",7,10)
  700.         QPRINT("█▄▄▀",8,10)
  701.         QPRINT("    ▀",9,10)
  702.         QPRINT("mail",8,15,26,15)
  703.         QPRINT("@READER@",8,20,31,15)
  704.         QPRINT("2.00",9,25,27,15)
  705.         QPRINT("Copyright 1995 by Mark Herring",5,40,Logo$,Logo$)
  706.         QPRINT("All Rights Reserved",6,40)
  707.         QPRINT("Sparkware",8,40)
  708.         QPRINT("Post Office Box 386",9,40)
  709.         QPRINT("Hendersonville, TN  37077-0386",10,40)
  710.         RETURN
  711.  
  712. :SHOW
  713.         IF NOT EXIST(FileSpec$) THEN RETURN
  714.         SCREEN(3,SAVE)
  715.         DISPLAY OFF
  716.         OPEN("I",1,FileSpec$)
  717.         FILLSCRN(1,1,25,80,32,31,112)
  718.         BOX(4,5,19,76,7,7,1,0)
  719.         QPRINT(Title$,2,True,True)
  720.         BLINK ON
  721.         DISPLAY ON
  722.         SET_WINDOW(5,7,18,74)
  723.         ATTRIBUTE(7)
  724.  
  725. :SHOW_LOOP
  726.         DISPLAY OFF
  727.         MREAD(1,14)
  728.         SCREEN(2,SAVE)
  729.         BOX(21,5,23,76,112,15,1,1,"Press any key to continue or [ESC] to quit")
  730.         DISPLAY ON
  731.         PAUSE
  732.         SCREEN(2,RESTORE)
  733.         IF LASTKEY=27 THEN GOTO SHOW_DONE
  734.         IF NOT EOF(1) THEN GOTO SHOW_LOOP
  735.  
  736. :SHOW_DONE
  737.         CLOSE 1
  738.         SET_WINDOW(1,1,25,80)
  739.         SCREEN(3,RESTORE)
  740.         RETURN
  741.  
  742.         SCREEN(1,RESTORE)
  743.         QPRINT("Installing @READER@",5,10,142,15)
  744.         QPRINT("Before we can begin you will need to tell @READER@",9,10,True)
  745.         QPRINT("where you wish to install the program on your computer.")
  746.         QPRINT("")
  747.         QPRINT("We recommend that you press the [ENTER] key to accept")
  748.         QPRINT("the default location suggested below unless you wish")
  749.         QPRINT("to install @READER@ in another location on your system.")
  750.         QPRINT("Location to install @READER@:",17,10,143,15)
  751.         ASSIGN(Target$,"@DRIVE@:\1ST\")
  752.         ASK(Target$,17,41,30,112,112,UPPER)
  753.         IF LASTKEY=27 THEN RETURN TOP
  754.         IF COMPARE(Target$,"") THEN RETURN TOP
  755.         DCHECK Target$
  756.     ASSIGN(Scripts$,Target$+"SCRIPTS\")
  757.     ASSIGN(Packets$,Target$+"PACKETS\")
  758.         ASSIGN(Mme$,Target$+"MME\")
  759.     ASSIGN(QRip$,Target$+"\QRIP\")
  760.         ASSIGN(BBSDir$,Target$+"\BBS\SPARKY\")
  761.         RETURN
  762.  
  763. :FILE_CHECK
  764.     ASSIGN(Flag$,True)
  765.     ASSIGN(Value$,Temp$+".ZIP")
  766.         IF EXIST Value$ THEN RETURN
  767.  
  768. :FILE_CHECK1
  769.         DISPLAY OFF
  770.         BOX(5,10,21,70,7,7,1,0)
  771.         QPRINT(Value$,7,True,True)
  772.         QPRINT("INSTALL could not locate this archive in the current",10,14,True)
  773.         QPRINT("subdirectory.  You might need to download this file")
  774.         QPRINT("from the same bulletin board system where the @READER@")
  775.         QPRINT("archives are located.")
  776.         QPRINT("")
  777.         QPRINT("If you need help please ask your sysop to locate this")
  778.         QPRINT("file for you.")
  779.         QPRINT("Press any key to continue...",19,True,True)
  780.         DISPLAY ON
  781.         BEEP
  782.         PAUSE
  783.     ASSIGN(Flag$,False)
  784.         RETURN
  785.  
  786.