home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / compuserve / Basic / PROGRM.CKR < prev    next >
Text File  |  2006-10-19  |  3KB  |  74 lines

  1.  
  2. 100 REM PROG/CHKR COPYRIGHT (C) 1983 BY B.A. TRAVER
  3. 110 REM EXTENDED BASIC
  4. 120 REM PROGRAM CHECKER COPYRIGHT (C) 1983 BY B.A. TRAVER - ALL RIGHTS RESERVED
  5. 130 REM FOR FURTHER INFORMATION, SEND S.A.S.E. TO B.A. TRAVER, 552 SEVILLE ST., 
  6. PHILA., PA 19128
  7. 140 REM THIS PROGRAM IS USEFUL IN CHECKING WHETHER TWO PROGRAMS ARE IDENTICAL OR
  8.  DIFFERENT AND--IF DIFFERENT--WHAT LINES ARE DIFFERENT.
  9. 150 REM DID YOU EVER WONDER WHY YOUR TYPED-IN VERSION OF A MAGAZINE PROGRAM RUNS
  10.  AND YOUR FRIEND'S WON'T (OR VICE VERSA)?
  11. 160 REM USE THIS PROGRAM TO TRACK DOWN WHICH LINE CONTAINS THE BUG!
  12. 170 REM OR DID YOU LOSE TRACK--IN YOUR OWN PROGRAMMING EFFORTS--OF WHICH OF YOUR
  13.  DRAFTS ARE IDENTICAL OR EXACTLY WHERE THEY DIFFER?
  14. 180 REM ONCE AGAIN, USE THIS PROGRAM TO TRACK DOWN THE ANSWER!
  15. 190 REM CAUTION: THIS PROGRAM WILL BE MOST USEFUL TO THOSE WHO DO NOT OVERUSE TH
  16. E RESEQUENCE COMMAND.
  17. 200 PRINT :" PROGRAM CHECKER": :" PROGRAMS TO BE COMPARED     MUST BE IN MERGE F
  18. ORMAT."
  19. 210 PRINT :" (IF YOU ARE USING ONLY ONE  DISK DRIVE, THEY MUST ALSO  HAVE DIFFER
  20. ENT NAMES AND BE ON THE SAME DISK.)"
  21. 220 OPTION BASE 1 :: DIM XM(100),YM(100),XYD(100)
  22. 230 FLAG,LNX,LNY=0
  23. 240 XMN,YMN,XYDN=1
  24. 250 FOR I=1 TO 2
  25. 260 PRINT :" FILE #"&STR$(I):"  EXAMPLE: DSK"&STR$(I)&".PROGRAM"&STR$(I): : :: I
  26. NPUT F$(I)
  27. 270 IF SEG$(F$(I),1,3)<>"DSK" OR SEG$(F$(I),5,1)<>"." THEN 260
  28. 280 OPEN #I:F$(I),DISPLAY ,INPUT ,VARIABLE 163
  29. 290 NEXT I
  30. 300 PRINT
  31. 310 GOSUB 550
  32. 320 GOSUB 610
  33. 330 IF LNX<LNY THEN PRINT :LNX;"IS MISSING FROM ";F$(2): : :: FLAG=1 :: YM(YMN)=
  34. LNX :: YMN=YMN+1 :: GOSUB 550 :: GOTO 330
  35. 340 IF LNY<LNX THEN PRINT :LNY;"IS MISSING FROM ";F$(1): : :: FLAG=1 :: XM(XMN)=
  36. LNY :: XMN=XMN+1 :: GOSUB 610 :: GOTO 330
  37. 350 IF LNX=65535 AND LNY=65535 THEN 380
  38. 360 IF X$=Y$ THEN PRINT LNX;"IS THE SAME IN BOTH" ELSE PRINT :LNX;"IS DIFFERENT"
  39. : : :: FLAG=1 :: XYD(XYDN)=LNX :: XYDN=XYDN+1
  40. 370 GOTO 310
  41. 380 CLOSE #1
  42. 390 CLOSE #2
  43. 400 IF FLAG=0 THEN PRINT :" THE PROGRAMS ARE THE SAME." :: STOP ELSE PRINT :" TH
  44. E PROGRAMS ARE DIFFERENT."
  45. 410 IF XMN=1 THEN PRINT :" NO LINES ARE ";ELSE IF XMN=2 THEN PRINT :" THIS LINE 
  46. IS ";ELSE PRINT :" THESE LINES ARE ";
  47. 420 PRINT "MISSING";" FROM";" "&F$(1);
  48. 430 IF XMN=1 THEN 450 ELSE PRINT ": ";
  49. 440 FOR I=1 TO XMN-1 :: PRINT XM(I);:: NEXT I
  50. 450 IF YMN=1 THEN PRINT : :" NO LINES ARE ";ELSE IF YMN=2 THEN PRINT : :" THIS L
  51. INE IS ";ELSE PRINT : :" THESE LINES ARE ";
  52. 460 PRINT "MISSING";" FROM";" "&F$(2);
  53. 470 IF YMN=1 THEN 490 ELSE PRINT ": ";
  54. 480 FOR I=1 TO YMN-1 :: PRINT YM(I);:: NEXT I
  55. 490 IF XYDN=1 THEN PRINT : :" NO LINES ARE ";ELSE IF XYDN=2 THEN PRINT : :" THIS
  56.  LINE IS ";ELSE PRINT : :" THESE LINES ARE ";
  57. 500 PRINT "DIFFERENT";
  58. 510 IF XYDN=1 THEN 540 ELSE PRINT ": ";
  59. 520 FOR I=1 TO XYDN-1 :: PRINT XYD(I);:: NEXT I
  60. 530 PRINT
  61. 540 END
  62. 550 IF LNX<>65535 THEN LINPUT #1:X$ ELSE 600
  63. 560 XB1=ASC(SEG$(X$,1,1))
  64. 570 XB2=ASC(SEG$(X$,2,1))
  65. 580 LNX=XB1*256+XB2
  66. 590 IF LNX=65535 THEN PRINT :" END OF ";F$(1);" FILE": :
  67. 600 RETURN
  68. 610 IF LNY<>65535 THEN LINPUT #2:Y$ ELSE 660
  69. 620 YB1=ASC(SEG$(Y$,1,1))
  70. 630 YB2=ASC(SEG$(Y$,2,1))
  71. 640 LNY=YB1*256+YB2
  72. 650 IF LNY=65535 THEN PRINT :" END OF ";F$(2);" FILE": :
  73. 660 RETURN
  74.