Source:BugLog
Jump to navigation
Jump to search
This page is a verbatim reproduction of original source material and should not be edited except for maintenance. | |
Description |
The Applesoft BASIC source code of the Eamon utility program BugLog. |
---|---|
Source | |
Date |
c. 1984 |
Author | |
License |
The use of this item is permitted on the grounds that it's free or in the public domain. |
1 REM EAMON BUG LIST
2 REM BY JOHN NELSON
3 REM
10 D$ = CHR$ (4): PRINT D$"OPEN EAMON.ADVLOG,L64": PRINT D$"READ EAMON.ADVLOG,R0": INPUT NA: PRINT D$
15 PRINT D$"OPEN EAMON.BUGLOG,L256": PRINT D$"READ EAMON.BUGLOG,R0": INPUT NB: PRINT D$: IF NB > 0 THEN GOSUB 12000
20 HOME : HTAB 14: INVERSE : PRINT "EAMON BUG LOG": NORMAL : VTAB 6: HTAB 10: PRINT "<";: FLASH : PRINT "L";: NORMAL : PRINT ">IST BUGS": PRINT
30 HTAB 10: PRINT "<";: FLASH : PRINT "A";: NORMAL : PRINT ">DD BUGS TO FILE": PRINT
40 HTAB 10: PRINT "<";: FLASH : PRINT "D";: NORMAL : PRINT ">ELETE BUG (FIX)": PRINT
50 HTAB 10: PRINT "<";: FLASH : PRINT "I";: NORMAL : PRINT ">NDEX BY ADVENTURE": PRINT
60 HTAB 10: PRINT "<";: FLASH : PRINT "B";: NORMAL : PRINT ">UG DETAILS": PRINT
70 HTAB 10: PRINT "<";: FLASH : PRINT "U";: NORMAL : PRINT ">PDATE BUG DATA": PRINT
80 HTAB 10: PRINT "<";: FLASH : PRINT "G";: NORMAL : PRINT ">O BACK TO MASTER": PRINT
90 GOSUB 8000: PRINT "G";: HTAB 22
100 GET A$: IF A$ = CHR$ (13) THEN A$ = "G"
110 FOR X = 1 TO 7: IF A$ < > MID$ ("LADIBUG",X,1) THEN NEXT : GOTO 90
115 S = X:X = 7: NEXT
120 PRINT : ON S GOTO 1000,2000,3000,4000,5000,6000,7000
1000 REM >> LIST BUGS
1010 HOME :LP = 0
1030 FOR X = 1 TO NB: PRINT X;" ADV# ";ADV%(X); TAB( 13);BN$(X)
1080 LP = LP + 1: IF LP > 20 THEN PRINT : PRINT "PRESS ANY KEY TO CONTINUE";: GET A$: PRINT : HOME :LP = 0
1090 NEXT : PRINT : PRINT "PRESS ANY KEY TO CONTINUE";: GET A$: PRINT : GOTO 20
1999 PRINT "LIST BUGS": GOTO 20
2000 REM >> ADD A BUG
2010 HOME :ADD = 1:NB = NB + 1: INPUT "ADVENTURE #:";ADV%(NB): INPUT "BUG NAME:";BN$(NB)
2020 PRINT "BUG DESCRIPTION:": INPUT "";BD$(NB): INPUT "DATE:";DT$(NB)
2030 GOTO 20
2999 PRINT "ADD A BUG": GOTO 20
3000 REM >> DELETE A BUG
3010 HOME : PRINT "BUG NUMBER TO DELETE :";BD$: IF VAL (BD$) < 1 OR VAL (BD$) > NB THEN 20
3020 BN$( VAL (BD$)) = "DELETED"
3030 GOTO 20
3999 PRINT "DELETE A BUG": GOTO 20
4000 REM >> INDEX BUGS
4010 HOME :LP = 0: FOR ADV = 1 TO NA: FOR BUG = 1 TO NB: IF ADV%(X) = AD THEN CNT = CNT + 1
4020 NEXT BUG: PRINT CNT;" BUGS IN ADVENTURE #";AD:LP = LP + 1: IF LP > 20 THEN PRINT : PRINT "PRESS ANY KEY TO CONTINUE";: GET A$: PRINT :LP = 0: HOME
4030 CNT = 0: NEXT ADV: PRINT : PRINT "PRESS ANY KEY TO CONTINUE";: GET A$: PRINT
4090 GOTO 20
4999 PRINT "INDEX BUGS": GOTO 20
5000 REM >> BUG LIST BY ADV
5010 HOME : INPUT "ADVENTURE #:";ADV: IF ADV > NA OR ADV < 1 THEN 20
5020 FOR X = 1 TO NB: IF ADV%(X) = ADV THEN PRINT BN$(X)
5030 NEXT : PRINT : PRINT "PRESS ANY KEY TO CONTINUE";: GET A$: PRINT : GOTO 20
5999 PRINT "BUG LIST BY ADV": GOTO 20
6000 REM >> UPDATE
6010 HOME : INPUT "BUG # TO UPDATE:";BUG: IF BUG > NB OR BUG < 1 THEN 20
6020 PRINT "SELECT FIELD TO UPDATE:": PRINT " 1. ADVENTURE #": PRINT " 2. BUG NAME": PRINT " 3. DATE": PRINT "INPUT YOUR CHOICE (1-3):";
6030 GET A$: IF A$ < > "1" AND A$ < > "2" AND A$ < > "3" THEN 6030
6040 PRINT A$: ON VAL (A$) GOTO 6100,6200,6300
6100 INPUT "NEW ADVENTURE #";ADV%(BUG): GOTO 20
6200 INPUT "NEW BUG NAME:";BN$(BUG): GOTO 20
6300 INPUT "NEW DATE:";DT$(BUG): GOTO 20
6999 PRINT "UPDATE ROUTINE": GOTO 20
7000 REM >> GO BACK
7010 PRINT D$"RUN EAMON MASTER"
7900 PRINT D$"RUN EAMON MASTER"
8000 PRINT : PRINT : VTAB 20: HTAB 15: PRINT "SELECT:";: FOR BUZ = 1 TO 2: FOR CLICK = 1 TO 10:S = PEEK ( - 16336): NEXT CLICK: FOR TIME = 1 TO 10: NEXT TIME: NEXT BUZ: RETURN
10000 D$ = CHR$ (4): PRINT D$"OPEN EAMON.BUGLOG,L256": PRINT D$"WRITE EAMON.BUGLOG,R0": PRINT 0: PRINT D$"CLOSE"
12000 REM >> LOAD BUGS
12010 FOR R = 1 TO NB: PRINT D$"READ EAMON.BUGLOG,R";R: INPUT ADV%(R),BN$(R),BD$(R),DT$(R)
12020 NEXT
12030 PRINT D$: RETURN