home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HAM Radio 1
/
HamRadio.cdr
/
log
/
hamsys
/
hamfix.bas
< prev
next >
Wrap
BASIC Source File
|
1987-01-02
|
3KB
|
52 lines
10 ' HAMFIX - program to manually merge two files
15 'CHANGE DATE - 1/12/85
20 DEF SEG = 64 : POKE 23,64 ' Set caps lock on
30 PRINT : PRINT "What drive do you want the 1st input file on?"
40 O$=INKEY$ : IF O$="" GOTO 40 ' WAIT FOR RESPONSE
50 IF O$ = "A" OR O$="B" THEN DR1$=O$+":" :GOTO 80 'DISKETTE A OR B
60 IF O$ = "C" OR O$="D" THEN DR1$=O$+":" :GOTO 80 'DRIVE C OR D
70 GOTO 40 ' Not valid drive retry
80 PRINT : PRINT "What drive do you want the 2nd input file on?"
90 O$=INKEY$ : IF O$="" GOTO 90 ' WAIT FOR RESPONSE
100 IF O$ = "A" OR O$="B" THEN DR2$=O$+":" :GOTO 130 'DISKETTE A OR B
110 IF O$ = "C" OR O$="D" THEN DR2$=O$+":" :GOTO 130 'DRIVE C OR D
120 GOTO 90 ' Not valid drive retry
130 PRINT : PRINT "What drive do you want the output file on?"
140 O$=INKEY$ : IF O$="" GOTO 140 ' WAIT FOR RESPONSE
150 IF O$ = "A" OR O$="B" THEN DR3$=O$+":" :GOTO 180 'DISKETTE A OR B
160 IF O$ = "C" OR O$="D" THEN DR3$=O$+":" :GOTO 180 'DRIVE C OR D
170 GOTO 140 ' Not valid drive retry
180 OPEN DR1$+"HAMLOG.DAT" AS 1 LEN=72 :' OPEN MAIN FILE TO COPY FROM
190 FIELD 1,72 AS A$
200 OPEN DR2$+"HAMLOG.DAT" AS 2 LEN=72 :' OPEN MERGE FILE TO COPY FROM
210 FIELD 2,72 AS B$
220 OPEN DR3$+"HAMLOG.TMP" AS 3 LEN=72 :' OPEN FILE TO COPY INTO
230 FIELD 3,72 AS C$
240 CLS ' CLEAR SCREEN
250 LOCATE 5,30:PRINT "PRESS SPACE BAR TO WRITE THIS RECORD";
260 LOCATE 8,30:PRINT "PRESS ANY OTHER KEY FOR THIS ONE:";
270 A=1:B=1:C=1 ' SET FIRST RECORDS FOR ALL FILES
280 GET 1,A:GET 2,B ' GET FIRST RECORDS FROM BOTH FILES
290 LOCATE 9,1:PRINT B$ ' PRINT MERGE FILE RECORD
300 LOCATE 6,1:PRINT A$ ' PRINT MAIN FILE RECORD
310 O$=INKEY$:IF O$="" THEN GOTO 310
320 IF ASC(O$)=27 THEN GOTO 370 ' ESCAPE PUSHED TO CLOSE
330 IF O$=" " THEN GOTO 350 ' SPACE BAR PUSHED
340 LSET C$=B$:B=B+1:GET 2,B:GOTO 360 ' GET NEXT RECORD
350 LSET C$=A$:A=A+1:GET 1,A ' GET NEXT RECORD
360 PUT 3,C:C=C+1:GOTO 290 ' NEXT RECORD
370 ' *** ROUTINE TO CLOSE FILES
380 ' ***
390 ' * ROUTINE TO WRITE HEADER RECORD
400 ' ***
410 CLOSE 1
420 Q$=LEFT$(C$,5)
430 GET 3,1 ' GET FIRST RECORD
440 F$=MID$(C$,6,8) ' EXTRACT FIRST DATE FROM IT
450 OPEN DR3$+"HAMHDR.TMP" AS 1 LEN=24
460 FIELD 1,4 AS A$,4 AS B$,8 AS C$,8 AS D$ : GET 3,1 ' SET HEADER RECORD FLD
470 LSET A$=MKS$(C-1):LSET B$=MKS$(VAL(Q$)):LSET D$=" ":LSET C$=F$
480 PUT 1,1 ' WRITE HEADER
490 CLOSE
500 RUN"mmenu