10 '***********************
20 '*      COL-DUMP       *
30 '*   All Rights by     *
40 '*     A.Grosche       *
50 '*         &           *
60 '*  PC-International   *
70 '***********************
80 '
100 res$=CHR$(27)+"à"   '* Druckerreset
110 ff$=CHR$(12)        '* Form Feed
120 bk$=CHR$(27)+"j"    '* Papierrueck-
130                     '  schub n/216"
140 col$=CHR$(27)+"r"   '* Farbwahl:
150 '
160 'Falls die Codes     >>   4=gelb
170 'fuer die einzelnen  >>   1=rot
180 'Farben nicht mit    >>   2=blau
190 'dieser Tabelle      >>   0=schwarz
200 'uebereinstimmen,so ist in den
210 'Zeilen 590-620  (C=...) jeweils
220 'der Wert von  C  abzuaendern !!!
230 '
240 '* Fuer einfarbige Drucker:
250 '* In Zeile 720 den Befehl
260 'PRINT#8,col$;CHR$(c)
270 '* durch 
280 'SOUND 2,1800,400,15:CALL &BB06
290 '* ersetzen und das Farbband laut
300 '* Tabelle in 160-190 beim Brummton
310 '* auswechseln,dann Taste druecken
320 '
330 '* Fuer Drucker ohne Papierrueck-
340 '* schub:Zeile 710 ersetzen durch
350 'CALL &BC06,&C0:SOUND 2,1800,400,15:     CALL &BB06
360 '* und beim Brummton das Papier an
370 '* den Anfang der Seite zurueck-
380 '* drehen,dann Taste druecken
390 '
400 CALL &BC02:MODE 1:PAPER 0:PEN 1
410 PRINT CHR$(7)"* T E N  -  S O F T
420 PRINT
430 PRINT"* COL-DUMP
440 PRINT
450 PRINT"* Colourhardcopy
460 PRINT"* MODE 0,1,2
470 PRINT
480 PRINT"* written by Andreas Grosche
490 PRINT"* 21/11/1990
500 PRINT CHR$(7)
510 '
520 '*** Main program
530 '
540 MEMORY &3FFF:DEFINT a-z:DIM d(16):GOSUB 850:GOSUB 1030:CALL &BBBA
550 PRINT:PRINT CHR$(24)"Please insert data disc"CHR$(24):CALL &BB06:MODE 2:KEY 139,STRING$(12,CHR$(224))+CHR$(13):PRINT CHR$(7):CAT:PRINT CHR$(7):PRINT CHR$(24)"Type name or move cursor to first letter of name to copy , press LITTLE ENTER : "CHR$(24)
560 INPUT"",file$:LOAD file$,&4000:PRINT CHR$(7):KEY 139,CHR$(13):LOCATE 1,20:INPUT"Mode : ",m:MODE m:a=15+12*(m=1)+14*(m=2):POKE &A21D,-27*(m<1):POKE &A21E,-27*(m<1):POKE &A21F,-27*(m<2):FOR p=0 TO a:PRINT"INK "p;CHR$(8)",";:INPUT "",i
570 IF p>1 THEN INK p,i
580 d(p)=i:NEXT:MODE m:INK 0,d(0):INK 1,d(1):CALL &BC06,&40
590 FOR p=0 TO a:GOSUB 760:NEXT:c=4:GOSUB 700:'*** yellow
600 FOR p=0 TO a:GOSUB 780:NEXT:c=1:GOSUB 700 '*** red
610 FOR p=0 TO a:GOSUB 800:NEXT:c=2:GOSUB 700 '*** blue
620 FOR p=0 TO a:GOSUB 820:NEXT:c=0:GOSUB 700 '*** black
630 '
640 '*** End
650 '
660 CALL &BC06,&C0:CALL &BC02:MODE 0:PRINT CHR$(7)" "CHR$(10)CHR$(24)"COL-DUMP is done !"CHR$(24)CHR$(7):PRINT:PRINT:PRINT#8,res$:PRINT#8:PRINT#8:PRINT#8,"C O L  -  D U M P  by  T E N  -  S O F T  written by Andreas Grosche":PRINT#8,ff$:END
670 '
680 '*** Print
690 '
700 IF cn=0 THEN RETURN ELSE cn=0:l=l+1
710 CALL &BC06,&C0:IF l>1 THEN FOR t=1 TO 6:PRINT#8,bk$;CHR$(100);:NEXT:PRINT#8,bk$;CHR$(81);
720 PRINT#8,res$:PRINT#8,col$;CHR$(c):CALL &A000:MODE m:CALL &BC06,&40:RETURN
730 '
740 '*** Test colour
750 '
760 i=d(p):POKE &A228,p:IF (i=9 OR i=10 OR i=12 OR i=15 OR i=16 OR (i>17 AND i<26)) THEN GOSUB 1240
770 RETURN '* yellow
780 i=d(p):POKE &A228,p:IF ((i>2 AND i<9) OR (i>14 AND i<18)) THEN GOSUB 1240
790 RETURN '* red
800 i=d(p):POKE &A228,p:IF (i=1 OR i=2 OR i=5 OR (i>8 AND i<12) OR i=14 OR (i>17 AND i<24)) THEN GOSUB 1240
810 RETURN '* blue
820 i=d(p):POKE &A228,p:IF i=0 THEN GOSUB 1240
830 RETURN '* black
840 '
850 '*** MC:
860 '*** DISPLOT 40C0
870 '*** Fr.,17.08.1990
880 '*** by TEN-Soft
890 '
900 FOR adr=&A200 TO &A242:READ a$:POKE adr,VAL("&"+a$):NEXT:RETURN
910 DATA F3,CD,BA,BB,3E,01,CD,DE
920 DATA BB,21,90,01,2B,2B,E5,11
930 DATA 80,02,CD,1C,A2,E1,7D,B4
940 DATA 20,F2,FB,C9,E5,1B,1B,1B
950 DATA 1B,E1,E5,D5,CD,F0,BB,FE
960 DATA 01,20,11,3E,C0,CD,06,BC
970 DATA D1,E1,E5,D5,CD,EA,BB,3E
980 DATA 40,CD,06,BC,D1,7A,B3,20
990 DATA DC,E1,C9
1000 '
1010 '*** Hardcopyroutine
1020 '
1030 FOR adr=&A000 TO &A098:READ a$:POKE adr,VAL("&"+a$):NEXT:RETURN
1040 DATA ED,73,97,A0,CD,BA,BB,3E
1050 DATA 1B,CD,72,A0,3E,31,CD,72
1060 DATA A0,21,8E,01,06,1D,C5,3E
1070 DATA 0D,CD,72,A0,3E,0A,CD,72
1080 DATA A0,3E,1B,CD,72,A0,3E,4C
1090 DATA CD,72,A0,3E,00,CD,72,A0
1100 DATA 3E,03,CD,72,A0,06,80,3E
1110 DATA 00,CD,72,A0,10,F9,11,00
1120 DATA 00,06,07,0E,00,E5,CD,83
1130 DATA A0,CB,11,2B,2B,10,F7,B7
1140 DATA 79,E1,E5,01,08,00,ED,42
1150 DATA 30,02,E6,78,E1,CD,72,A0
1160 DATA 13,E5,21,80,02,ED,52,E1
1170 DATA 30,D7,01,F2,FF,09,C1,10
1180 DATA A5,C9,4F,CD,09,BB,FE,FC
1190 DATA 28,18,CD,2E,BD,38,F4,79
1200 DATA C3,2B,BD,E5,D5,C5,CD,F0
1210 DATA BB,FE,00,28,01,37,C1,D1
1220 DATA E1,C9,ED,7B,97,A0,C9,00
1230 DATA 00
1240 CALL &A200:cn=cn+1:RETURN