home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / rbbs / rbbsqb45.lzh / RBBSQB45.FIX
Text File  |  1989-01-12  |  10KB  |  246 lines

  1. The following marked 'PE QB45 FIX are changes I made to solve a COMM port
  2. problem I was having when running the Maple version of RBBS 17C
  3. It appears to me that QB 45 closes the Comm Port on a Shell to a different
  4. program...If the program that you shell to does NOT access the Com port 
  5. when you return to rbbs you will find the local screen works correctly
  6. but the user on the other end can do nothing to make the BBS work other then
  7. drop carrier....what appears to be happening is the COM port never gets opened
  8. after the SHELL and RBBS will recieve NO input from the Comm port.
  9.  
  10. These changes are in the process of being tested and I don't know if there
  11. are any other un seen problems using QB45.. if you have access to a patched
  12. version of QB3.0 I recommend using it since none of the above problems
  13. ever occured using QB3.0...If you must use QB45 and are having problems
  14. try these changes and see if it solves at least this problem
  15.  
  16.     Pete Eibl < Maple Street BBS 1-414-771-2805 PCP Node WIMIL >
  17.  
  18.  
  19. Changes to RBBSSUB1.BAS..............
  20.  
  21. '
  22. ' $SUBTITLE: 'VIEWTXT - Subroutine to display ASCII file from ARC file'
  23. ' $PAGE
  24. '
  25.   SUB VIEWTXT STATIC
  26.   ON ERROR GOTO 65000
  27. 60148 SUBROUTINE.PARAMETER = 1
  28.       A$ = "Would you like to view an ASCII file from this ARC (Y/[N])"
  29. TURBo.KEY = -TURBO.KEY.USER
  30.       CALL TGET
  31. IF SUBROUTINE.PARAMETER = -1 THEN_   'Pe 11/29/88
  32.    EXIT SUB                          'Pe 11/29/88
  33.        IF NOT YES THEN _
  34.        EXIT SUB 
  35. 60149  A$ = "What file(s) to view, [ENTER] quits"                       'DMOD1
  36.      CALL TGET
  37.        B = 1                                                            'DMOD1
  38.        IF Q = 0 THEN _                                                  'DMOD1
  39.           EXIT SUB                                                      'DMOD1
  40.        LAST.ARC = Q                                                     'DMOD1
  41.        FIRST.ARC = B                                                    'DMOD1
  42.        FOR ARC.INDEX = FIRST.ARC TO LAST.ARC                            'DMOD1
  43.  Z$ = B$(ARC.INDEX)                                                     'DMOD1
  44.       CALL ALLCAPS (Z$)  
  45.       CALL PETER2                                                       'PEMOD1
  46.      IF OK = FALSE THEN 60149                                           'PEMOD1
  47.       CALL BRKFNAME (Z$,DRV$,PREFIX$,EXT$,FALSE)                        'DMOD1
  48.  IF EXT$ = "ARC" OR EXT$ = "COM" OR EXT$ = "EXE" OR EXT$ = "BAS" OR _   'DMOD1
  49.          EXT$ = "BIN" OR EXT$ = "LIB" OR EXT$ = "OBJ" OR EXT$ = "PIC" THEN _ 
  50.          CALL QTPUT ("Sorry, only ASCII files can be viewed",1) :_      'DMOD1
  51.          GOTO 60149                                                     'DMOD1
  52.       CALL QTPUT ("Please stand by while I extract that file....",1)    'DMOD1
  53. ' make mods here for ARC A program ******
  54.  IF MID$(LIBRARY.ARCHIVE.PROGRAM$,1,2) ="PK" THEN _
  55.       SHOWME$ = "PKXARC -R " + FILE.NAME$ + " " + Z$ + " "+ARKVIEW.PATH$
  56.  IF MID$(LIBRARY.ARCHIVE.PROGRAM$,1,2) ="AR" THEN _
  57.       SHOWME$ = "ARCE " + FILE.NAME$ + " " + Z$ + " "+ARKVIEW.PATH$ + " /R"
  58.       SHELL SHOWME$                                                     'PEMOD1
  59. PRIVATE.DOOR = TRUE       'PE QB45 FIX
  60. CALL XFRETURN             'PE QB45 FIX
  61. PRIVATE.DOOR = FALSE      'PE QB45 FIX
  62.       Z$ = ARKVIEW.PATH$ +"\"+ Z$     'Added \ to fix error 63
  63.       TEMP$ = Z$    
  64. '
  65.       CALL BUFFILE (Z$,X)                                             'PEMOD2
  66.         IF NOT OK THEN _
  67.          CALL QTPUT(CHR$(7)+"File NOT found or bad Spelling",1) :_
  68.         GOTO 60149
  69.       CALL KILLWORK(TEMP$)   'get rid of the files that were xtracted   PEMOD1
  70.        NEXT                                                             'DMOD1
  71. 60152 END SUB
  72. '
  73. '*******************************
  74. '*  Subroutine for Viewarc txt *
  75. '*******************************
  76. ' SUBTITLE: 'PETER2
  77. ' $PAGE
  78.   SUB PETER2 STATIC
  79.   OK = TRUE
  80.   IF INSTR(Z$,"*") OR INSTR(Z$,"?") THEN _
  81.   OK = FALSE : _
  82.   CALL QTPUT ("Sorry Widcars NOT allowed !!",1)
  83.    END SUB
  84. '******************** INSERTED DLVIEWARC HERE ******************
  85. '
  86. ' $SUBTITLE: 'DLVIEWARC - Subroutine to  DL a file from ARC file'
  87. ' $PAGE
  88. '
  89.   SUB DLVIEWARC STATIC
  90.   ON ERROR GOTO 65000
  91. 60168 DLARC = 0
  92.       SUBROUTINE.PARAMETER = 1
  93.       CALL SKIPLINE (1)
  94.       A$ = "Would you like to DOWNLOAD a file from this ARC (Y/[N])"  'DMOD1
  95.       TURBO.KEY = -TURBO.KEY.USER
  96.       CALL TGET
  97. IF SUBROUTINE.PARAMETER = -1 THEN _     'Pe 11/29/88
  98.    EXIT SUB                             'Pe 11/29/88
  99.        IF NOT YES THEN _
  100.        EXIT SUB 
  101. 60169  DLARC=1
  102.   CALL QTPUT(FG.4$+FILE.NAME.HOLD$ +FG.2$+ " Contains the following Files"+EMPHASIZE.OFF$,1)
  103.    CALL VIEWARC
  104.    SUBROUTINE.PARAMETER = 1
  105.    CALL SKIPLINE (1)
  106.    A$ = "What file(s) to download, [ENTER] quits"+EMPHASIZE.OFF$ 
  107.     CALL TGET
  108. IF SUBROUTINE.PARAMETER = -1 THEN _      'Pe 11/29/88
  109.    EXIT SUB                              'Pe 11/29/88
  110.       B = 1                                                            'DMOD1
  111.       IF Q = 0 THEN _                                                  'DMOD1
  112.        EXIT SUB                                                        'DMOD1
  113.        LAST.ARC = Q                                                    'DMOD1
  114.        FIRST.ARC = B                                                   'DMOD1
  115.        FOR ARC.INDEX = FIRST.ARC TO LAST.ARC                           'DMOD1
  116.   Z$ = B$(ARC.INDEX)                                                   'DMOD1
  117.      CALL ALLCAPS (Z$)  
  118.      CALL PETER2                                                       'PEMOD1
  119.      IF OK = FALSE THEN 60169                                          'PEMOD1
  120.      CALL BRKFNAME (Z$,DRV$,PREFIX$,EXT$,FALSE)                        'DMOD1
  121.      CALL QTPUT ("Please stand by while I extract that file....",1)    'DMOD1
  122.  IF MID$(LIBRARY.ARCHIVE.PROGRAM$,1,2) ="PK" THEN _
  123.       SHOWME$ = "PKXARC -R " + FILE.NAME$ + " " + Z$ + " "+ARKVIEW.PATH$
  124.  IF MID$(LIBRARY.ARCHIVE.PROGRAM$,1,2) ="AR" THEN _
  125.       SHOWME$ = "ARCE " + FILE.NAME$ + " " + Z$ + " "+ARKVIEW.PATH$+" /R"
  126.      SHELL SHOWME$
  127. PRIVATE.DOOR = TRUE       'PE QB45 FIX
  128. CALL XFRETURN             'PE QB45 FIX
  129. PRIVATE.DOOR = FALSE      'PE QB45 FIX
  130.      IF DLARC = 1 THEN _
  131.     CALL QTPUT(Z$+" Is now  Extracted ...",2)
  132. NEXT ARC.INDEX
  133. CALL QTPUT ("One Moment while I ARC the file for you........",1)
  134. '
  135. '********** ARC all files in the ARKVIEW.PATH$ into VIEWARC.ARC **********
  136. '
  137.  IF MID$(LIBRARY.ARCHIVE.PROGRAM$,1,2) ="PK"  THEN _
  138.   SHELL "PKARC A " + ARKVIEW.PATH$ + "\VIEW.ARC " + ARKVIEW.PATH$ + "\*.*"
  139.  IF MID$(LIBRARY.ARCHIVE.PROGRAM$,1,2) ="AR" THEN _
  140.   SHELL "ARC A " + ARKVIEW.PATH$ + "\VIEW.ARC " + ARKVIEW.PATH$ + "\*.*"
  141. '
  142. '********** Deletes the files that were just ARCED into VIEWARC.ARC **********
  143. '
  144.   FOR ARC.INDEX = FIRST.ARC TO LAST.ARC
  145.       Z$ = B$(ARC.INDEX)
  146.       KILL ARKVIEW.PATH$ + "\" + Z$
  147.   NEXT ARC.INDEX
  148. ' **** Check to see if ARC was successfull if NOT the Exit sub*****
  149. PRIVATE.DOOR = TRUE   'PE QB45 FIX
  150. CALL XFRETURN         'PE QB45 FIX
  151. PRIVATE.DOOR = FALSE      'PE QB45 FIX
  152. VIEW.FILE.NAME$ = ARKVIEW.PATH$ + "\VIEW.ARC"
  153. CALL FINDIT (VIEW.FILE.NAME$)
  154. IF NOT OK THEN _
  155. EXIT SUB
  156. '
  157. '
  158. '********** Tells the caller the name of the file to download **********
  159. '
  160. CALL QTPUT (CHR$(7)+"File has been ARCHIVED ...and named... VIEW.ARC....",2)
  161. CALL QTPUT (CHR$(7)+"To Download this file You MUST enter VIEW.ARC as the file name",2)
  162. CALL DELAYIT (5)
  163.  60172 END SUB
  164. '
  165. '
  166. ' $SUBTITLE:  'VOTE   -- subroutine for voting'
  167.  
  168. 'end of changes to RBBSSUB1.BAS
  169. '
  170. '
  171. '
  172. 'RBBSSUB4.BAS ..........
  173. '
  174. '
  175. '
  176. 62630 PARITY$ = MID$(",N,8,1,E,7,1",7 + 6 * EIGHT.BIT,6)
  177.       IF LOCAL.USER THEN _
  178.          GOTO 62631
  179.       IF FOSSIL THEN _
  180.          CALL SETBAUD _
  181.       ELSE CALL OPENCOM(TALK.TO.MODEM.AT$,PARITY$)
  182.       IF PRIVATE.DOOR THEN _
  183.          CALL DELAYIT (7 + BPS) : _
  184.          CALL QTPUT ("WAIT...............",0)   'PE QB45 FIX
  185. 62631 CALL SKIPLINE (2)
  186.       LOCATE 24,1
  187. 62632 END SUB
  188. '
  189. ' Skip to next ......
  190. '
  191. 64510 CHAT.AVAILABLE = (INSTR("MUF",ACTIVE.MENU$) > 0)
  192.       END SUB
  193. ' $SUBTITLE: 'VIEWARC - subroutine to display .ARC contents'
  194. ' $PAGE
  195. '
  196. '  SUBROUTINE NAME    --  VIEWARC  (Written by Jon Martin)
  197. '
  198. '  INPUT PARAMETERS   --  PARAMETER                   MEANING
  199. '                         FILE.NAME$           NAME OF THE ARC FILE TO BE
  200. '                                              VIEWED.
  201. '
  202. '  OUTPUT PARAMETERS  --  NONE
  203. '
  204. '  SUBROUTINE PURPOSE --  PROVIDES A MECHANISM TO PROVIDE USERS WITH THE
  205. '                         CONTENTS OF AN ARC FILE PRIOR TO DOWNLOADING.
  206.       SUB VIEWARC STATIC
  207.  64600  CLOSE 2 
  208.          IF TURBO.RBBS THEN _
  209.           RETCODE% = 0
  210.  ' ***** MODS to ARCVIEW to Allow ZOO / PAK / DCW files to be viewd ****
  211.  FILNAME$ = "ARCVIEW.COM"
  212.  CALL FINDIT (FILNAME$)
  213.  IF NOT OK THEN _
  214.   CALL QTPUT(" Missing Viewarc Utility...Please tell Sysop " ,1) : _
  215.  EXIT SUB
  216.  SHOWARC$ = "ARCVIEW.COM "+FILE.NAME$ + ">" + ARC.WORK$
  217.  SHELL SHOWARC$
  218. '
  219. PRIVATE.DOOR = TRUE   'PE QB45 FIX
  220. CALL XFRETURN         'PE QB45 FIX
  221. PRIVATE.DOOR = FALSE      'PE QB45 FIX
  222. '
  223.  CALL BUFFILE (ARC.WORK$,X)
  224.  EXIT SUB
  225. ' *** Code Below is orig RBBS 17C ***********
  226. '64600  CLOSE 2
  227. '        IF TURBO.RBBS THEN _
  228. '         RETCODE% = 0 : _
  229. '         CALL ARCV (ARC.WORK$,FILE.NAME$,RETCODE%) : _
  230. '         CALL BUFFILE (ARC.WORK$,X) : _
  231. '         EXIT SUB
  232. '************ end of ASM routines for VIEWARC ****************
  233.       IF SHARE.IT THEN _                                             ' KG102402
  234.          OPEN FILE.NAME$ FOR RANDOM SHARED AS #2 LEN=1 _             ' KG102402
  235.       ELSE OPEN "R",2,FILE.NAME$,1                                   ' KG102402
  236.       FIELD 2,1 AS CHAR$
  237.       BYTE.POINTER! = 1
  238.       ARC.END! = LOF(2)
  239. 64605 IF BYTE.POINTER! > ARC.END! THEN _
  240. '
  241. 'rest is the same.....
  242. '
  243. 'End of QB45 Changes............
  244.  
  245. Pete Eibl
  246.