home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1989 Janurary
/
64er_Magazin_89-01_1989_Markt__Technik_de_Side_B.d64
/
grafikklau
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
7KB
|
200 lines
10 :gosub 1680:poke 2053,143:load"vdc-tools",8,1
20 gosub 1620
30 if a<>0 then poke2053,asc(":"):goto10
39 poke808,225
40 rem ********************************
50 rem * grafikklau fuer den vdc-chip *
60 rem *------------------------------*
70 rem * written in 1988 by : *
80 rem * *
90 rem * christian eiglmeier *
100 rem * kattowitzer weg 5 *
110 rem * 3057 neustadt 1 *
120 rem * tel.: 05032-62223 *
130 rem ********************************
140 rem !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
150 rem ! nur fuer c128pc im c64-mode !
160 rem !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
170 rem
180 poke53280,0:poke53281,0:poke650,128:printchr$(14)chr$(8);:m=0
190 rem
200 rem **** hauptmenue ****
210 rem
220 restore:forx=1to32:ready:readz:poke54784,y:poke54785,z:nextx
230 data 0,126,1,80,2,102,3,73,4,32,5,0,6,25,7,29,8,0,9,7,10,32,11,7,12,0,13,0
240 data 14,0,15,0,20,8,21,0,23,8,24,32,25,64,26,240,27,0,28,32,29,7,34,125
250 data 35,100,36,5,22,120,25,71,4,39,7,32
260 print"[147][153] [199]rafik-[203]lau fuer den [195]ommodore 128 [208][195] [146]";
270 print"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
280 print"[158]- 1 - [212]ext-[211]creen waehlen"
290 print"- 2 - [214][196][195]-[199]rafik (640*176)"
300 print"- 3 - [214][196][195]-[199]rafik (640*200)"
310 print"- 4 - [199]rafik speichern"
320 print"- 5 - [199]rafik laden"
330 print"- 6 - [199]rafik drucken"
340 print"- 7 - [196]irectory zeigen"
350 print"- 8 - [208]rogramm verlassen"
360 print"[153][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]";
370 print" (c) 25/09/1988 - all rights reserved";
380 geta$:ifa$<"1"ora$>"8"then380
390 mn=val(a$):on mn goto 400,610,740,860,1130,1380,1740,1900
400 rem ******************************
410 rem *** text-screen auswaehlen ***
420 rem ******************************
430 sys 49152: rem window loeschen
440 print"[158][211]chalten [211]ie auf den [210][199][194]-[193]usgang um und"
450 print" waehlen [211]ie mit"
460 print" <[195][210][211][210] [196][207][215][206]>[146]"
470 print" <[195][210][211][210] [213][208]> [146]"
480 print"[201]hre [211]tartadresse des [214]ideo-[210][193][205]'s mit"
490 print" <[210][197][212][213][210][206]>[146]"chr$(13)" aus"
500 print"[203]eine [193]uswahl: _ [146]"
510 print"[211]tartadresse :";
520 poke54784,12:poke54785,int(ad/256)
530 poke54784,13:poke54785,ad-256*int(ad/256)
540 print" [157][157][157][157][157][157][157]";ad;chr$(13)"[145]";
550 getts$:ifts$<>"" and ts$<>"[145]" and ts$<>chr$(13)andts$<>"_"then 550
560 ifts$="[145]"thenad=ad-2000:ifad<0thenad=14000
570 ifts$=""thenad=ad+2000:ifad>14000thenad=0
580 if ts$<>chr$(13)andts$<>"_"then520
590 ifts$=chr$(13)thenm=1
600 goto 200
610 rem *******************************
620 rem *** vdc-grafik (640*176 p.) ***
630 rem *******************************
640 sys 49152: rem window loeschen
650 print"[158][211]chalten [211]ie auf den [210][199][194]-[193]usgang um und"
660 print"betaetigen [211]ie <[210][197][212][213][210][206]>[146], um die [205]ulti-"
670 print"color-[199]rafik zu uebernehmen."
680 print"[203]eine [213]ebernahme : _ [146]"
690 poke54784,25:poke54785,199:poke54784,20:poke54785,56:poke54784,21:poke54785,0
700 poke54784,6:poke54785,22
710 getts$:ifts$<>"_"andts$<>chr$(13) then 710
720 if ts$=chr$(13)thenm=2:ad=0
730 goto200
740 rem *******************************
750 rem *** vdc-grafik (640*200 p.) ***
760 rem *******************************
770 sys 49152:rem window loeschen
780 print"[158][211]chalten [211]ie bitte auf den [210][199][194]-[193]usgang"
790 print"um und betaetigen [211]ie zur [213]ebernahme die"
800 print"<[210][197][212][213][210][206]>[146] [212]aste."
810 print"[203]eine [213]ebernahme : _ [146]"
820 poke54784,25:poke54785,135
830 getts$:ifts$<>chr$(13)andts$<>"_"then830
840 ifts$=chr$(13)thenm=3:ad=0
850 goto 200
860 rem *******************************
870 rem *** grafik/bild speichern ***
880 rem *******************************
890 if m=0 then 260
900 sys 49152:rem window loeschen
910 dt$="":input"[158][199]rafik/[194]ild-[206]ame";dt$
920 if dt$="" then 260
930 dt$=left$(dt$,12)+".pic"
940 ifm=2orm=3thenad=0
950 forx=1 to len(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
960 poke851,int(ad/256):poke850,ad-256*int(ad/256)
970 ifm=1thened=ad+1999
980 ifm=2orm=3thened=16383
990 poke 853,int(ed/256):poke852,ed-256*int(ed/256)
1000 poke 854,m
1010 gosub1680:sys 49185:rem bereich abspeichern
1020 gosub1620:ifa<>0thenpoke198,0:wait198,1:goto260
1030 ifm>1then1120
1040 poke850,0:poke851,32:poke852,255:poke853,63:poke854,1
1050 dt$=left$(dt$,x-5)+".zes"
1060 forx=1 to len(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
1070 gosub1680:sys 49185:rem zeichensatz speichern
1080 gosub1620:ifa<>0thenpoke198,0:wait198,1:goto260
1090 poke850,0:poke851,8:poke852,207:poke853,15:poke854,1:dt$=left$(dt$,x-5)+".att"
1100 forx=1 to len(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
1110 gosub1680:sys49185:gosub1620:ifa<>0thenpoke198,0:wait198,1:goto260
1120 goto 260
1130 rem ******************************
1140 rem *** bild/grafik nachladen ***
1150 rem ******************************
1160 sys 49152:rem window loeschen
1170 dt$="":input"[199]rafik/[194]ild-[206]ame";dt$
1180 if dt$="" then 260
1190 dt$=left$(dt$,12)+".pic"
1200 forx=1tolen(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0:poke850,0
1210 poke851,0:gosub1680:sys 49336:rem bild/grafik laden
1220 gosub1620:ifa<>0then1360
1230 m=peek(854):ad=0
1240 ifm>1then1310
1250 poke850,0:poke851,32:dt$=left$(dt$,x-5)+".zes"
1260 forx=1tolen(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
1270 gosub1680:sys49336:gosub1620:ifa<>0then1360
1280 poke850,0:poke851,8:dt$=left$(dt$,x-5)+".att"
1290 forx=1tolen(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
1300 gosub1680:sys49336:gosub1620:ifa<>0then1360
1310 ifm=1thenm$="[212]ext-[211]creen"
1320 ifm=2thenm$="[214][196][195]-[199]rafik (640*176)"
1330 ifm=3thenm$="[214][196][195]-[199]rafik (640*200)"
1340 print"[194]ild/[199]rafik-[193]rt: ";m$;"[146]"
1350 print"<[212][193][211][212][197]>[146]"
1360 getts$:ifts$=""then1360
1370 goto 260
1380 rem *****************************
1390 rem *** hardcopy-aufrufe ***
1400 rem *****************************
1410 sys 49152:rem window loeschen
1420 if m=0 then260
1430 gosub 1710
1440 if m<>1then 1520
1450 poke829,int(ad/256):poke828,ad-256*int(ad/256):ed=ad+1999
1460 poke831,int(ed/256):poke830,ed-256*int(ed/256):at=2048
1470 poke833,int(at/256):poke832,at-256*int(at/256)
1480 poke53265,peek(53265)and111:poke53296,1: rem 2 mhz-modus
1490 sys 49471: rem text-hardcopy
1500 poke53296,0:poke53265,peek(53265)and127or16: rem 1 mhz-modus
1510 goto260
1520 poke53265,peek(53265)and111:poke53296,1: rem 2 mhz-modus
1530 if m=2 then poke850,22
1540 if m=2 then poke850,22
1550 if m=3 then poke850,25
1560 sys 49901
1570 poke53296,0:poke53265,peek(53265)and127or16: rem 1 mhz-modus
1580 goto260
1590 rem *****************************
1600 rem *** hilfs-unterprogramme ***
1610 rem *****************************
1620 open1,8,15
1630 input#1,a,b$,c,d
1640 if a=0 or a=1 then 1660
1650 print"";a;"[157],";b$;",";c;"[157],";d;"[146]"
1660 close 1:return
1670 rem
1680 open 1,8,15:close1
1690 if st<>0 then print"[198]loppy einschalten[146]":poke198,0:wait198,1:goto1680
1700 return
1710 open 1,4,1:close 1
1720 if st<>0 thenprint"[196]rucker einschalten[146]":poke198,0:wait198,1:goto1710
1730 return
1740 rem ******************************
1750 rem *** directory einlesen ***
1760 rem ******************************
1770 sys 49152:rem window loeschen
1780 gosub 1680:rem floppy ein
1790 a=0:open1,8,0,"$":print"[158]";:poke781,1:sys65478:geta$,a$:e$=chr$(0)
1800 geta$,a$,h$,l$:ifstthensys65484:close1:gosub1620:poke198,0:wait198,1:goto260
1810 a=a+1:ifa>18 then gosub 1850
1820 printasc(h$+e$)+256*asc(l$+e$);
1830 geta$,b$:ifa$thenprinta$b$;:goto1830
1840 printa$:goto1800
1850 rem ******************************
1860 rem *** screen ueberlauf ***
1870 rem ******************************
1880 printchr$(13)"<<[212][193][211][212][197]>>[146]"
1890 poke 198,0:wait198,1:sys 49152:print"";:a=1:return
1900 rem ******************************
1910 rem *** programm verlassen ***
1920 rem ******************************
1930 sys 49152:rem window loeschen
1940 print"[158][208]rogramm verlassen[146]"
1950 print"[211]ind [211]ie sicher (j/n) ?"
1960 getx$:if x$<>"j" and x$<>"n" then 1960
1970 if x$<>"n" then sys 64738
1980 goto 260