home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
89xx
/
8902b.d64
/
ram-font-lader
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-03-30
|
2KB
|
97 lines
100 REM *** RAM-FONT-LADER ***
120 REM ***** 12.5.1988 ******
130 :
1100 GN=PEEK(186):IF GN<8 THEN GN=8
1130 CB=64:CT=66:CI=68:CO=70:EF=72
1200 OPEN 4,4,15:OPEN2,4,0
1210 OPEN 8,GN,15
1220 REM *** FONT-LISTE EINLESEN
1230 OPEN1,GN,2,"FONT-LISTE,S,R"
1240 GOSUB7000:IF A THEN GOSUB7200:RUN
1260 INPUT#1,FA
1300 DIM FT$(FA),FL(FA)
1340 FOR X=1 TO FA
1360 INPUT#1,FL(X),FT$(X) :NEXT
1400 :
1420 REM *** FONT-NR ERFRAGEN
1450 PRINT"":FOR X=1 TO FA
1470 PRINTX"[157].",FT$(X) :NEXT
1500 PRINT"WELCHER FONT SOLL
1530 [133]"GELADEN WERDEN (NR.) ";N$
1550 N[178][197](N$):[139] N[178]0 [167] 1450
1560 AD[178]CT:[141]6600
1570 [139] FL(N)[177]WO[171]2048[171]100 [167] [153]" DIE FONT-DATEI IST ZU LANG !":[137]1500
1590 :
1595 [143] *** FONT LADEN
1600 [158] 57812 (FT$(N)[170]",S"),GN
1620 [151]781,0:[151]782,48
1640 [151]780,0:[158]65493:[141]7000
1660 [139] A [167][141]7220:[137]1600
1680 :
1690 [143] *** EMPTY-FLAG ABFRAGEN
1700 AD[178]EF:[141]6200:[139] BY [167] 1900
1720 [153]" DER DRUCKPUFFER IST NOCH NICHT LEER.
1750 INPUT" SOLL DAS ENDE DES DRUCKVORGANGS ABGE- WARTET WERDEN (J/N) ";A$
1780 IF A$="N" THEN 1900
1800 IF A$<>"J" THEN 1700
1820 AD=EF:GOSUB6200:IF BY=0 THEN1820
1850 :
1890 REM *** PUFFERANFANG AUF $0800
1900 PRINT#4,"U:"
1940 PRINT#4,"P0"
1980 :
1990 REM *** FONT SENDEN
2000 A$="[199][211][198]88-":FOR X=1 TO 6
2020 PRINT#2,MID$(A$,X,1);:NEXT
2030 CMD2
2070 FOR X=3*4096 TO X+FL(N)+4
2100 PRINTCHR$(PEEK(X));:NEXT
2110 PRINT#2:CLOSE2
2130 :
2160 REM *** NEUEN PUFFER-ANFANG SETZEN
2200 AD=CI:GOSUB6600
2230 AD=CB:GOSUB6800
2260 PRINT#4,"C"
2280 PRINT#4,"P1"
2300 PRINT" DER [198]ONT IST UEBERTRAGEN."
2320 INPUT" PROBEAUSDRUCK (J/N) ";A$
2350 IF A$<>"J" THEN 3000
2380 OPEN 6,4,6:PRINT#6,"F00";
2400 FOR X=32 TO 127
2430 PRINT#6,CHR$(X);:NEXT:PRINT#6
2460 CLOSE6
3000 CLOSE4:CLOSE8
3030 END
5900 :
6190 *** BYTE (AD) AUS INTERFACE LESEN
6200 H=INT(AD/256):L=AD-256*H
6230 PRINT#4,"M-R"CHR$(L)CHR$(H)CHR$(1)
6260 GET#4,B$:BY=ASC(B$+CHR$(0))
6290 RETURN
6350 :
6390 *** BYTE (AD) SCHREIBEN
6400 H=INT(AD/256):L=AD-256*H
6430 PRINT#4,"M-W"CHR$(L)CHR$(H)CHR$(1)CHR$(BY):RETURN
6550 :
6590 *** WORT AUSLESEN
6600 GOSUB6200:WO=BY:AD=AD+1
6630 GOSUB6200:WO=WO+256*BY
6650 RETURN
6700 :
6750 *** WORT SCHREIBEN
6800 WH=INT(WO/256):BY=WO-WH*256
6830 GOSUB6400:BY=WH:AD=AD+1
6860 GOTO6400
6900 :
7000 INPUT#8,A,B$,C,D
7030 PRINT ""A;B$;C;D
7060 RETURN
7090 :
7200 A$="FONT-LISTE":GOTO7300
7220 A$="FONT"
7300 PRINT" "A$" NICHT GEFUNDEN !
7330 [153]"BITTE RICHTIGE DISKETTE
7360 PRINT"EINLEGEN & TASTE DRUECKEN.
7380 [151]198,0:[146]203,63:[161]A$
7400 [142]