home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
sh2x
/
sh25.d64
/
univ.lader.init
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-03-30
|
3KB
|
103 lines
10 REM *************************
20 REM * *
30 REM * UNIVERSAL LADER *
40 REM * *
50 REM * INITIALISIERUNG *
60 REM * *
70 REM * *
80 REM * VON UWE GERLACH *
85 REM * *
90 REM *************************
95 REM
200 PRINT"[147]"CHR$(14): POKE 53280,0: POKE 53281,0
210 PRINT"[154] [213]NIVERSALLADER [201]NITIALISIERUNG"
220 PRINT:PRINT"[152][196]IESES [208]ROGRAMM ERGAENZT DEN [213]NIVERSAL-"
222 PRINT"LADER, DER EIN AUTOMATISCHES [193]USWAHL-"
224 PRINT"MENUE JEDER [196]ISKETTE ERSTELLT."
226 PRINT"[197]R SOLLTE IMMER AN ERSTER [211]TELLE DES"
227 PRINT"[196]IRECTORYS STEHEN, UM LEICHT AUFGERUFEN"
228 PRINT"WERDEN ZU KOENNEN."
229 PRINT"[194]EIDE [208]ROGRAMME WURDEN GESCHRIEBEN VON:"
230 PRINT:PRINT," [213]WE [199]ERLACH",,," [194]RUEHLSTR. 23",,," 6440 [194]EBRA 1[152]"
240 PRINT:PRINT"[196]IESER [212]EIL DIENT ZUM EINMALIGEN [198]ESTLE-";
250 PRINT"GEN DER [197]INTRAEGE, DIE BEIM [211]TARTEN DES"
260 PRINT"[213]NIVERSALLADERS AUFGEFUEHRT WERDEN SOL-"
270 PRINT"LEN. ([205]IT [202][152], [206][152] UND [211][152] AUSWAEHLEN."
280 PRINT"<[210]ET.>[152] FUER ALTEN [218]USTAND, ^[152] GEHT ZU-"
290 PRINT"RUECK UND [209][152] BRICHT AB.)"
300 DIM N(144)
310 POKE 649,1: REM TASTATURPUFFER
320 POKE 650,128: REM TASTATURPUFFER
400 PRINT:PRINT"[154][194]ITTE [196]ISK EINLEGEN UND [212]ASTE DRUECKEN ![152]"
500 GET A$: IF A$="" THEN 500
510 PRINT: PRINT CHR$(142);"[147]TITEL DIESER DISKETTE: ";: REM REVERSE ON
1000 OPEN 1,8,15 : REM KOMMANDOS
1010 OPEN 2,8,2,"#" : REM PUFFER
1020 PRINT#1, "U1 2 0 18 0"
1030 PRINT#1, "B-P 2 144"
1040 FOR J=1 TO 16
1050 : GET#2, A$
1060 : IF A$=CHR$(160) THEN 2000
1070 : PRINT A$;
1080 NEXT J
2000 PRINT:PRINT"[146][152]": REM REVERSE OFF
2020 T=18 : REM TRACK
2030 S=1 : REM SECTOR
3000 PRINT#1, "U1: 2 0";T;S: REM LESEN
3010 FOR J=0 TO 224 STEP 32
3011 : PRINT#1, "B-P:"2,STR$(J+2)
3014 : GET#2, A$: REM FILETYP HOLEN
3016 : IF A$="" THEN 3690
3020 : PRINT#1, "B-P:"2,STR$(J+24)
3030 : GET#2, A$: REM MARKIERUNG HOLEN
3035 : M$=" JA ": V$="J"
3040 : IF A$=CHR$(128) THEN M$="NEIN": V$=A$
3042 : IF A$="N" THEN M$="SKIP": V$="N"
3045 : M$=""+M$+"[157][157][157][157][146][152]"
3050 : PRINT#1, "B-P:"2,STR$(J+5)
3060 : N$=""
3070 : FOR K=1 TO 16
3080 : GET#2, A$: REM FILENAMEN HOLEN
3090 : IF A$=CHR$(160) THEN 3300
3100 : N$=N$+A$
3110 : NEXT K
3300 : PRINT "[154]";N$; TAB(18); "(J/N/S)[146] ";
3330 : GET A$
3332 : IF J<>0 THEN IF A$="^" THEN J=J-32: PRINT" [145][145]" : GOTO 3011
3335 : IF A$="Q" THEN 5000
3337 : Z=Z+1: IF Z>6 THEN PRINT"";
3339 : PRINT M$;: IF Z>12 THEN Z=0
3345 : IF A$="J" OR A$="Y" THEN 7050
3347 : IF A$="" THEN GOTO 3330
3350 : IF A$="S" THEN V$="N": PRINT"SKIP": GOTO 3400: REM UEBERSPRINGEN
3360 : IF A$=CHR$(13) THEN PRINT M$: GOTO 3400: BEI RETURN
3370 : V$=CHR$(128): PRINT"NEIN"
3400 : PRINT#1, "B-P:"2,STR$(J+24)
3410 : PRINT#2, V$;: REM MARKIEREN
3690 NEXT J
3700 PRINT#1, "U2 2 0" T;S
4000 PRINT#1, "B-P: 2 0"
4010 GET#2, A$, B$
4020 T=ASC(A$+CHR$(0))
4030 S=ASC(B$+CHR$(0))
4040 IF T<>0 THEN 3000: REM NEXT BLOCK
5000 CLOSE 1: CLOSE 2
6000 PRINT:PRINT:PRINT"NOCH EINE DISKETTE?"
6010 GET A$: IF A$="" THEN 6010
6020 IF A$="J" THEN PRINT"[147]";CHR$(14): GOTO 400
6050 END
7000 :
7010 REM ** STARTADRESSE FESTSTELLEN **
7020 :
7050 PRINT" JA ";
7070 OPEN 3,8,3,N$: REM FILE ZUM LESEN OEFFNEN
7100 GET#3,SL$: SL=ASC(SL$+CHR$(0)): REM STARTBYTE LOW
7110 GET#3,SH$: SH=ASC(SH$+CHR$(0)): REM STARTBYTE HIGH
7190 CLOSE 3
7210 PRINT"SA "; LEFT$(STR$(SH*256+SL)+" ",6);
7220 INPUT"[157][157][157][157][157][157][157]";SA: REM STARTADRESSE
7250 SH=INT(SA/256): REM HIGHBYTE
7260 SL=SA-SH*256: REM LOWBYTE
7900 V$=CHR$(0)+CHR$(SL)+CHR$(SH): REM MARKIERUNG VORBEREITEN
7990 GOTO 3400