10 REM -- Hex to binary/Binary to hex file converter 20 REM -- Tim Mann 30 CLS:PRINT:PRINT"Hex to binary/Binary to hex" 35 PRINT" file converter":PRINT 40 CLEAR 5000 50 GOSUB 58000 100 PRINT "Type 1 to convert a binary file to hex" 110 PRINT " 2 to convert a hex file to binary" 120 PRINT:INPUT D 130 PRINT 140 ON D GOTO 400,200 150 GOTO 100 200 LINE INPUT "Hex file name: ";HF$ 210 LINE INPUT "Binary file name: ";BF$ 220 OPEN"I",1,HF$ 230 OPEN"O",2,BF$ 240 IF EOF(1) THEN 320 250 LINE INPUT#1,D$ 255 IF D$="" OR D$="OK" THEN 240 260 FOR I=1 TO LEN(D$) STEP 2 270 PRINT#2,CHR$(FND2(MID$(D$,I,2))); 300 NEXT I 310 GOTO 240 320 CLOSE 330 PRINT:PRINT"Done":PRINT 340 GOTO 100 400 LINE INPUT "Binary file name: ";BF$ 410 LINE INPUT "Hex file name: ";HF$ 420 OPEN"RO",1,BF$,1 430 OPEN"O",2,HF$ 440 FIELD 1,1 AS F$ 450 FOR I=1 TO 30 455 IF EOF(1) THEN 505 460 GET 1 470 PRINT#2,FNH2$(ASC(F$)); 480 NEXT I 490 PRINT#2, 500 GOTO 450 505 PRINT#2, 510 CLOSE 520 PRINT:PRINT"Done":PRINT 530 GOTO 100 58000 DEF FNH1$(X)=MID$("0123456789ABCDEF",(X AND 15)+1,1) 58010 DEF FNH2$(X)=FNH1$(X/16)+FNH1$(X) 58040 DEF FND1(X$)=INSTR("123456789ABCDEF",LEFT$(X$,1)) 58050 DEF FND2(X$)=FND1(RIGHT$(X$,1))+16*FND1(RIGHT$(X$,2)) 58070 RETURN 60000 END