0 REM creates BASIC loader from CO file 1 REM by Tracy Allen 76670-326 2 REM get file info 3 CLEAR256,MAXRAM-1000:BF=MAXRAM-999 5 CLS:INPUT"create BA loader filename";F$ 10 INPUT"from CO file (upr case, w/o .CO)";I$ 15 IF LEN(I$)>6 THEN BEEP:GOTO10 20 I$=LEFT$(I$+" ",6) 25 I=-1 30 I=I+1:IF I>23 THEN PRINT"no such .CO file":GOTO10 35 AD=63842+I*11:IF PEEK(AD)<>160 THEN30 40 J$="":FOR J=3TO8:J$=J$+CHR$(PEEK(AD+J)):NEXTJ 45 IFJ$<>I$THEN30 50 AF=PEEK(AD+1)+256*PEEK(AD+2) 55 A=PEEK(AF)+256*PEEK(AF+1) 60 N=PEEK(AF+2)+256*PEEK(AF+3) 65 B=N+A-1 70 C=PEEK(AF+4)+256*PEEK(AF+5) 75 PRINT"top adrs";A 80 PRINT"# bytes";N 85 PRINT"end adrs";B 90 PRINT"exe adrs";C 100 REM move file 105 IF N>MAXRAM-BF-1THENBEEP:PRINT"clear more in line 3!":END 110 CS=0:FORI=0TON-1 115 D%=PEEK(AF+6+I):CS=CS+D%:POKEBF+I,D%:IF(IMOD10=0)THENPRINT"."; 120 NEXT I 200 OPEN F$ FOR OUTPUT AS 1 205 PRINT#1,"1 REM loader ";F$ 210 PRINT#1,"5 REM clear";A-1;"?" 215 PRINT#1,"10 CS=0:FOR AD=";A;"TO";B 220 PRINT#1,"15 READ D%:POKE AD,D%:CS=CS+D%" 225 PRINT#1,"20 NEXT AD" 230 PRINT#1,"25 IF CS<>";CS;"THEN BEEP :PRINT";CHR$(34);"Typo in data!!?";CHR$(34);":END" 235 PRINT#1,"30 END" 240 PRINT#1,"31 REM RETURN" 245 PRINT#1,"32 REM SAVEM";CHR$(34);F$;CHR$(34);",";A;",";B;",";C 300 FORI=0TON-1 305 IF (I MOD 10=0) THEN PRINT#1,USING"#### DATA ";50+I/10;:PRINT"*"; 315 D%=PEEK(BF+I) 320 IFD%<10THENFT$="#"ELSEIFD%<100THENFT$="##"ELSEFT$="###" 325 PRINT#1,USINGFT$;D%; 330 IF ((I+1)MOD10=0)OR(I=N-1) THEN PRINT#1,:ELSE PRINT#1,","; 335 NEXT I 340 END