Beiträge von Neptun
-
-
Hallo Leute,
und noch zwei Programme:
Liste aller C64-Basic-Befehle:
Code- 10 sys58648:poke53281,0:poke53280,11:r$=chr$(223):n=127:printchr$(30)spc(7)
- 20 fori=1to25:printchr$(164);:next
- 30 print:printspc(7)r$chr$(18)" alle c64-basic-befehle "r$chr$(5):print
- 40 fori=41118toi+254:b=peek(i)
- 50 printchr$(bandn);:ifb>nthenprint,
- 60 next:printchr$(152):sys42115
- 2000 rem 2023 by neptun
Liste aller Assembler-Befehle:
Code- 10 sys58648:poke53281,0:poke53280,12
- 20 printchr$(9)chr$(154)chr$(142)" ";
- 30 fori=1to19:printchr$(164);:next:print
- 40 print" "chr$(146)chr$(223)chr$(18)" assemblerbefehle "chr$(223)
- 50 u=7:z=0:b=0:dimm$(2),l$(1)
- 60 e$=chr$(192):t$=e$+e$+e$:b$=chr$(221)
- 70 fori=0to2:readc:l$(0)=chr$(c)
- 80 forj=1tou:m$(i)=m$(i)+t$+l$(-(j=u)):next:next
- 90 printchr$(129)chr$(176)m$(0)chr$(174)
- 100 readx$:ifx$=""then160
- 110 forj=1tolen(x$)step3
- 120 ifz=0thenprintb$;
- 130 printchr$(158)mid$(x$,j,3)chr$(129)b$;:b=b+1:z=z+1
- 140 ifz=uthenz=0:print:ifb<56thenprintchr$(171)m$(1)chr$(179)
- 150 next:goto100
- 160 printchr$(173)m$(2)chr$(189)chr$(5):print:poke198,0:sys42115:end
- 170 data 178,219,177
- 180 data ldaldxldy,stastxsty,txataxtaytyatxstsx,inxdexinydeyincdec,adcsbc
- 190 data andoraeor,asllsrrolror,clcseccliseicldsedclv,cmpcpxcpybit
- 200 data beqbnebplbmibccbcsbvcbvs,jmpjsrrtsrtibrk,phaplaphpplp,nop,""
- 2000 rem 2023 by neptun
Gruß,
Neptun
-
Hallo Leute,
und weiter geht's:
Zahlensystemwandler
Wandelt eine positive, ganze Zahl zwischen zwei Zahlensystemen
um. Zulässig sind Zahlensysteme von 2 bis 36.
Ist der umzuwandelnden Zahl ein % vorangestellt, wird
sie als binär interpretiert, bei & als oktal und bei
$ als hexadezimal. Wird bei der Frage nach dem Zahlensystem
Enter gedrückt, wird vom Zehnersystem ausgegangen.
Code- 10 v=53248:pokev+33,0:pokev+32,11:print
- 20 z$=chr$(223):printchr$(154)z$chr$(18)" zahlensystemwandler "z$chr$(5)
- 25 print:print"umzuwandelnde zahl?"
- 30 inputa$:ifa$=""then30
- 40 e$=left$(a$,1)
- 50 ife$="-"thenprint"nur positve zahlen":goto30
- 60 ife$>="0"then130
- 70 ife$="%"thens1=2:m$="binaer"
- 80 ife$="$"thens1=16:m$="hexadezimal"
- 90 ife$="&"thens1=8:m$="oktal"
- 100 printm$" erkannt"
- 110 a$=mid$(a$,2)
- 120 goto150
- 130 u$="":input"von system (2-36)";u$:gosub340
- 140 s1=val(u$):ifs1<2ors1>36then130
- 150 u$="":input"in system (2-36)";u$:gosub340
- 160 s2=val(u$):ifs2<2ors2>36then150
- 170 ifs1=10thenw=val(a$):goto230
- 180 w=0
- 190 fori=1tolen(a$)
- 200 a=asc(mid$(a$,i))-48
- 210 w=w*s1+a+7*(a>9)
- 220 next
- 230 ifs2=10thenb$=str$(w):goto280
- 240 b$=""
- 250 g=int(w/s2):a=w-s2*g:w=g
- 260 b$=chr$(48+a-7*(a>9))+b$
- 270 ifwthen250
- 280 v$=""
- 290 ifs2=2thenv$="%"
- 300 ifs2=8thenv$="&"
- 310 ifs2=16thenv$="$"
- 320 printv$b$
- 322 print"weitere umrechnungen? "chr$(18)"j"chr$(146)"/"chr$(18)"n":poke198,0
- 324 getb$:ifb$="j"then25
- 326 ifb$<>"n"then324
- 330 sys42115:end
- 340 ifu$=""thenu$="10":printu$" erkannt"
- 350 return
- 400 rem 2021 by neptun
Gruß,
Neptun
-
Hallo Leute,
wollte euch mal ein paar kleine Basic-Programme von mir
vorstellen. Hier das Erste:
Optische Illusion(1):
Nach dem Start, werden ein paar Kreise und ein Diagonalkreuz
auf den Bildschirm gezeichnet. Die Kreise werden zyklisch
ausgeblendet. Blickt man jetzt starr auf das Kreuz, erscheint
an der Stelle, an der ein Kreis fehlt, ein grüner Kreis der
aber gar nicht existiert.
Code- 1 poke56,160:clr:dimc(2828):clr:poke56,32:clr:goto10
- 2 gosub4:pokevr+x/8+5*(yandd),1:x=x+1
- 4 b=(xandd)+y(y):pokeb,peek(b)ors(xand7):return
- 10 v=53248:gosub800:printchr$(8)"optische illusion":print
- 15 x$="bitte warten...":fori=1tolen(x$):printspc(i)mid$(x$,i,1):next:print
- 16 dim b,y,w,l,g,p,m,x,d,i,h,xm,ym,j,q
- 20 a=8192:d=504:vr=1024:z=0:n=12:t=255:e=v+16:h=.5:u$=chr$(145)
- 30 dim s(7),y(199),xs(n-1),ys(n-1)
- 40 fori=0to7:s(7-i)=2^i:next
- 50 fori=0to24:printi;u$:forj=a+320*itoj+7:y(z)=j:z=z+1:next:next
- 60 printchr$(147):pokev+17,59:pokev+24,24:pokev+32,0
- 70 c=16*4+1:fori=vrtoi+999:pokei,c:next
- 80 r=10:x1=160:y1=1e2:r2=88:pi=4*atn(1):f=2*pi/n
- 90 fork=0ton-1:w=k*f
- 100 xm=x1+r2*cos(w)
- 110 ym=y1-r2*sin(w)
- 115 gosub1000
- 120 xs(k)=xm:ys(k)=ym+50-21
- 130 next
- 140 fori=-4to4:y=y1+i:x=x1+i:gosub2:x=x1-i:gosub2:next
- 610 pokev+32,1:poke2040,15:pokev+39,1:pokev+29,1:pokev+23,1
- 620 fori=15*64toi+62:pokei,t:next
- 625 pokev+21,1:poke198,0
- 630 fori=n-1to0step-1
- 640 x=xs(i):y=ys(i):pokee,-(x>t):pokev,xandt:pokev+1,y
- 650 ifpeek(198)then700
- 655 forw=0to120:next
- 660 next:goto630
- 700 gosub800:poke198,0:end
- 800 sys58648:pokev+33,0:pokev+32,11:printchr$(5):return
- 1000 q=r*r
- 1010 fori=-rto1:j=sqr(q-i*i)
- 2000 x=int(xm-i+h):l=xandd:m=s(xand7):x=int(xm+i+h):g=xandd:p=s(xand7)
- 2010 fory=int(ym-j+h)toint(ym+j+h):w=y(y):b=l+w:pokeb,peek(b)orm
- 2015 b=g+w:pokeb,peek(b)orp:next:next
- 2020 return
- 8000 rem 2022 by neptun
Gruß,
Neptun
-
-
Hi,
meinst du so:
Code -
Hallo Leute,
in letzter Zeit ist mir schon öfters aufgefallen, dass im Vice-Emulator
flackernde Pixel im Rahmen erscheinen. Das betrifft die aktuelle
Version mit englischen Texten, die SuperCpu und die letzte Version
mit deutschen Texten. Fehler bekannt?
Hier mal ein Beispiel, bei dem das passiert:
Gruss,
Neptun
-
Wie hast Du denn die Regentropfen gemacht?
Der Regen wird durch umschalten zwischen mehreren Bitmaps
erzeugt (Speicherzelle $dd00).
Etwas?
Zeit ist relativ. Die meisten Emulatoren haben ja so was wie einen Warp-Modus.
Damit kann man die Berechnung beschleunigen. Es wird aber noch eine schnellere
Version des Programms geben.
Gruss,
Neptun
-
Hallo Leute,
wollte euch mal ein kleines Basic-Programm von mir vorstellen. Die
Berechnung, am Anfang, braucht etwas Zeit und ist erst fertig, wenn
man einen Ballon sieht.
Code- 10 poke56,160:clr:dimc(2828):clr:poke56,32:clr:goto40
- 20 ifpeek(x/8+z(y/8))-gthenreturn
- 30 b=(xandd)+y(y):pokeb,peek(b)ors(xand7):return
- 40 v=53248:x$=" please wait... ":gosub320:printchr$(8)x$
- 50 dim y,c,m,b,l,x,i,j,f1,f2,r,q
- 60 a=8192:d=504:h=.5:vr=1024:t=255:p=16:k=15:u=56576:tp=198
- 70 dim z(24),s(7),c(7),y(199),f(9),b1(k),b2(k),m(t)
- 80 fori=0to9:readf(i):next:s=1:u$=chr$(145)
- 90 fori=0to7:s(7-i)=s:c(7-i)=t-s:s=s+s:next:z=.:print
- 100 fori=atoa+320*24step320:printz;u$:forj=itoi+7:y(z)=j:z=z+1:next:next
- 110 fori=0to24:z(i)=vr+40*i:next:print
- 120 fori=0tok:w=i:s=0
- 130 forj=0to3:s=s+s+(wand1):w=int(w/2):next
- 140 b1(i)=s:b2(i)=p*s:next
- 150 z=.:fori=.tok:printi;u$:w=b1(i):forj=.tok:m(z)=w+b2(j):z=z+1:next:next
- 160 printchr$(147):pokev+17,59:pokev+24,p*1+8
- 170 pokev+32,0:g=p*12+f(0)
- 180 x=20:forj=vrtoj+24*40step40:fori=jtoj+19:pokei,g:pokei+x,9:next:next
- 190 gosub620
- 200 xm=159:ym=199:r=158:w=0:vk=0
- 210 fork=0to8
- 220 gosub340
- 230 w=1-w:r=r-10:next:gosub520:gosub450
- 240 xm=290:ym=30:r=25:c=p*7+11:w=0:vk=1:gosub350
- 250 x=11:y=0:c=16*1+6:x$=" up, up, and away! ":gosub630
- 260 gosub970:gosub700:z=rnd(-ti-3*atn(1)):z=1:k=0:y=0
- 270 b=v+17:c=128:d=peek(u)andnot3:e=v+16:poketp,.
- 280 fori=1to0step-1:pokee,i:forj=tto.step-1:pokev,j:pokev+1,y:z=z-1
- 290 ifz=.thenz=7:k=k+1and3:w=dork:waitb,c:pokeu,w:y=y-1andt:ifpeek(tp)then310
- 300 next:next:pokev+21,0:pokev,t:pokee,1:pokev+21,1:y=int(rnd(1)*t):goto280
- 310 pokeu,dor3:gosub320:poketp,0:end
- 320 sys58648:pokev+33,0:pokev+32,11:printchr$(5):return
- 330 rem kreis zeichnen
- 340 c=f(k+w)+p*f(k+1-w)
- 350 q=r*r
- 360 fori=-rtor*vk:j=int(h+sqr(q-i*i))
- 370 x=xm+i:e=xandd:m=int(x/8)
- 380 ifwthen410
- 390 l=s(xand7)
- 400 fory=ym-jtoym+j*vk:pokem+z(y/8),c:b=e+y(y):pokeb,peek(b)orl:next:goto430
- 410 l=c(xand7)
- 420 fory=ym-jtoym:pokem+z(y/8),c:b=e+y(y):pokeb,peek(b)andl:next
- 430 next
- 440 return
- 450 for i=0to24:z=y(8*i):n=vr+40*i:q=z+8*39
- 460 for j=0to19
- 470 poken+39-j,peek(n+j)
- 480 fork=q-8*jtok+7
- 490 pokek,m(peek(z)):z=z+1
- 500 next:next:next
- 510 return
- 520 c=16*11+04
- 530 fory=12to24:n=vr+40*y
- 540 forx=9to19:ifpeek(n+x)-cthen590
- 550 b=y(8*y)+8*x
- 560 fori=btob+7:ifpeek(i)-tthen590
- 570 next
- 580 poken+x,g:fori=btob+7:pokei,.:next
- 590 nextx:next
- 600 return
- 610 rem text in bitmap ausgeben
- 620 x=20:y=24:c=16*0+5
- 630 l=x+40*y:b=a+8*l
- 640 poke56334,0:poke1,51
- 650 fori=.tolen(x$)-1:pokevr+l+i,c
- 660 forj=v+8*(asc(mid$(x$,i+1))and63)toj+7:pokeb,peek(j):b=b+1:next
- 670 next
- 680 poke1,55:poke56334,1
- 690 return
- 700 f1=317:f2=197
- 710 rem bitmap retten
- 720 fori=atoa+7999:pokea+i,peek(i):next
- 730 forj=3to0step-1
- 740 rem bitmap holen
- 750 ifj-3thenfori=atoa+7999:pokei,peek(a+i):next
- 760 rem regen zeichnen
- 770 fori=.to12e2
- 780 x=int(rnd(1)*f1+1):y=int(rnd(1)*f2+1):gosub20
- 790 x=x-1:y=y+1:gosub20:next
- 800 :
- 810 ifj=.then850
- 820 b=j*16384:rem zielblock
- 830 rem bitmap kopieren
- 840 fori=atoa+7999:pokeb+i,peek(i):next
- 850 next
- 860 forj=0to3:pokev+32,3-j:b=16384*j:pokeb+2040,253
- 870 ifj=0then900
- 880 fori=vrtoi+999:pokeb+i,peek(i):next
- 890 fori=253*64toi+62:pokeb+i,peek(i):next
- 900 next
- 910 return
- 920 rem farben
- 930 data 11,2,8,7,13,3,14,6,4,11
- 940 rem spritedef.
- 950 data aaijaagaggaejbjjajgcggagjjjjijggggegjjjjijggggegjjjjijggggegjbjjajgc
- 960 data ggagjajjaicaggaabajjaadadcaadadcaadapmaadappaadappaaaampaa,""
- 970 pokev+23,1:pokev+28,1
- 980 pokev+37,14:pokev+38,9:pokev+39,15
- 990 p=253*64:n=1105:k=16
- 1000 readx$:ifx$=""thenreturn
- 1010 fori=1tolen(x$)step2:pokep,asc(mid$(x$,i))+k*asc(mid$(x$,i+1))-n
- 1020 p=p+1:next:goto1000
- 1030 :
- 1040 rem 2022 by neptun
- 1050 :
Gruss,
Neptun
-
Hallo Leute,
habe das Programm noch mal etwas erweitert. Der "Agent" läuft jetzt in beide Richtungen und
die Animation ist flüssiger. Fehlt nur noch der Sound.
Code- 10 rem sprite-animation
- 20 poke56,50:clr
- 30 sys58784:v=53248:pokev+33,8:pokev+32,0:printchr$(5):t=255
- 40 fori=0to2:readj:pokev+i+i+1,j+136
- 50 pokev+39+i,11+10*(i=0):next
- 60 a=228:u$=chr$(145):gosub290:sys4^7
- 70 rem hintergrund aufbauen
- 80 vr=1024:fr=55296:z=160
- 90 printchr$(31)chr$(147):fori=vrto1423:pokei,z:next
- 100 fori=1664to2023:pokei,z:next
- 110 fori=402to436step8:m=vr+i-1:pokem,124:pokem+4,126:k=fr+i-1
- 120 pokek,12:pokek+4,12:forj=itoi+2:pokevr+j,120:pokefr+j,1:next:next
- 130 e=v+16:d=2040:z=1:i=6:w=0:k=-7:tp=198:x1=0:x2=350
- 140 pokev+21,7:poketp,0
- 150 rem gameloop
- 160 a=2e2:ifx1>x2thena=228
- 170 forx=x1tox2stepsgn(x2-x1):l=xandt
- 185 pokee,k*(x>t):pokev,l:pokev+2,l:pokev+4,l
- 190 z=z-1:ifzthen240
- 200 p=a+4*i:z=4
- 210 poked,p+2+w:poked+1,p+1:poked+2,p
- 220 i=i-1:ifi<.theni=6:w=1-w
- 230 ifpeek(tp)then270
- 240 next
- 250 r=x1:x1=x2:x2=r:goto160
- 260 rem beenden
- 270 sys58648:poketp,0:pokev+33,0:pokev+32,11:printchr$(5):end
- 280 rem daten entpacken + eintragen
- 290 p=a*64:n=1105:z=1:f=57:k=16:u=0
- 300 readx$:ifx$=""thenreturn
- 310 printp;u$
- 320 fori=1tolen(x$):ifuthenu=.:goto380
- 330 b=asc(mid$(x$,i)):ifb>fthen350
- 340 q=val(mid$(x$,i)):forj=ptop+q-1:pokej,.:next:p=p+q:u=-(q>9):goto370
- 350 ifz=1thens=b:z=2:goto380
- 360 pokep,s+k*b-n:p=p+1
- 370 z=1
- 380 next
- 390 goto300
- 400 :
- 410 rem y-pos.
- 420 data 12,21,0
- 430 :
- 440 rem spritedaten
- 450 data 40ao2ad2ab2ab5ih2ih2mh3mh2mh2mh2md2md2od2od2od2ohad1ohih1ppmo1ppai1pp
- 460 data 2oh2ah2ah2ah2ad2ad2ah1baap9am1baao2ao2ah2ad2id2id2id2ib2mb2ma2mm1baii
- 470 data 2ma2ma21am1baao2ao2ah2ad2id2md2mb2ob2oa2md1baip1baai57ao2ad2ab2ab5ih
- 480 data 2ih2mh2mh3mh2mh2md2md2od2oh2op2op2mpmabampoddaonhpdapiaodapiaihaga1ha
- 490 data 2ha2ga2ga2oa2od10am1baao2ao2ah2ad2id2id2kd2lb2lb2kd2ad2ag2am2am21am1ba
- 500 data ao2ao2ah2ad2id2md2ob2pa2ha2oa2md2ip2am54ao2ad2ab2ab5ih2ih2mh2mh2mh3mh
- 510 data 2md2md2od2oh2oh1baop1daop1dapm1hapi1pahampoadaopmabadmma2mb2ib2ib2ad
- 520 data 2ap10am1baao2ao2ad2id2id2id2kd2dd2cp1baao1haai1ga28am1baao2ao2ah2ad2ih
- 530 data 2mh2od2ha1baoi1hamm1gamb2id2ad60ao2ad2ab2ab5ih2ih2mh2mh3mh2mh2md2md2od
- 540 data 2op1daop1haop1paop1pbpa1mbpa1mbhaaombbaapma1mpma1pbma1dama1bamb1baid
- 550 data 13am1baao2ao2ah2ad2eh2ch1madh1pado2co2ca2ca30am1baao2ao2ah2id2md2od1ma
- 560 data pa1pahi2gi2ga2oa2ma60ao2ad2ab2ab5ih2ih2mh2mh3mh2mh2md2md2oh1baop1daop
- 570 data 1happ1papo1pahaaihadiaidabiaobaaiap1amah1aoid1ammb1amoa1aiga2ga2ca2ca
- 580 data 5am1baao2ao2ah2ad2ed1gakd1hall2lp2dh2ca2da30am1baao2ao2ah2md1mapd1oa
- 590 data pbaihabaaidabiai1biai1baai1baai65ao2ad2ab2ab5ih2ih2mh3mh2mh2mh2md2md
- 600 data 2od2op1baop1damp1hamn1pamj1pain1bamo2od2pbai1dbam1baao2ah2ad2ad2ag8am
- 610 data 1baao2ao2ah2ad2id2id1gaid1haip2ap36am1baao2ao2ah2md2od2pb1ibdaaipbbi
- 620 data aihabiai1baai1baai2am59ao2ad2ab2ab5ih2ih2mh3mh2mh2mh2md2md2od2od2mh2jh
- 630 data 2ppai1ppaibaipambaipae1md2mb2oa2ga2da2daai1haai1paai8am1baao2ao2ah2ad
- 640 data 2ad2id2id2id1haip1haip33am1baao2ao2ah2md2od2oa2ha2da1padm1padm2da2ba
- 650 data ai1baai16
- 660 rem asm
- 670 data ck1akjdgilpeimpck1akcdginpeiopjkmbniiohaakodiiacleaebjnpiiac
- 680 data leaeimimbjnpacleaeiiiibjnpiiabiofklpibjgaefilpajcagompfknpibjgaefinp
- 690 data ajcagoopomiohaanlmagbllpapkaficackiagecakckmankpag,""
- 700 :
- 710 rem 2021 by neptun
- 720 :
Gruss,
Neptun
-
Hallo,
habe das Galaxie-Programm mal ein wenig überarbeitet.
Hier das Ergebnis:
Code- 10 goto80
- 20 pokex1/8+yc(y1/8),cc
- 30 b=(x1andd)+y(y1):pokeb,peek(b)ors(x1and7)
- 40 return
- 50 rem *** programm galaxis ***
- 70 rem fuer c-64
- 80 poke56,160:clr:dimc(2828):clr
- 90 poke56,32:clr:rem basic vor ueberschreiben durch grafik schuetzen
- 100 v=53248:gosub510:printchr$(8)
- 110 print"autor: oliver ranke"
- 120 print:print"fuer c-64 umgeschrieben von"
- 130 print"christian schlueter":print
- 140 print"wieviele spiralarme? ";
- 150 poke204,0
- 160 getq$:z1=val(q$):ifz1<2then160
- 170 poke204,1:printz1:print:print
- 180 print"bitte etwas geduld..."
- 190 tp=198:z=rnd(-ti):pi=4*atn(1)
- 200 gosub520:rem grafik einschalten
- 220 forz=1toz1
- 230 w=2*pi/z1*(z-1)
- 240 fora=0to2step.01
- 250 rem * koordinaten eines punktes im spiralarm festlegen *
- 260 r=exp(a*2)
- 270 f=cos(w)*r:x=f*2+xm:y=sin(w)*r/2+ym+f:rem ---- zentrieren ----
- 280 x1=x:y1=y:gosub20:rem --- kernsternzeichnen ---
- 290 rem * sterne in der umgebung einzeichnen *
- 300 ifa<1.75theni0=a*2+1:goto330
- 310 ifa<1.85theni0=2:goto330
- 320 i0=1
- 330 fori=0toi0
- 340 dx=rnd(1)*3:dy=rnd(1)*3
- 350 d1=rnd(1):d2=rnd(1)
- 360 ifd1<.5thendx=-dx
- 370 ifd2<.5thendy=-dy
- 380 x1=x+dx:y1=y+dy:gosub20:rem --- umgebungssterne zeichnen ---
- 390 next
- 400 w1=rnd(1)/5:w=w+w1
- 410 next
- 420 next
- 430 rem * sterne als hintergrund zeichnen *
- 440 xw=320:yw=2e2:fors=1to250
- 450 x1=rnd(1)*xw:y1=rnd(1)*yw:rem --- positionen zufaellig bestimmen
- 460 gosub30:rem stern zeichnen
- 470 next
- 480 gosub780:gosub640
- 490 rem grafik ausschalten
- 500 gosub510:poketp,0:end
- 510 sys58648:pokev+33,0:pokev+32,11:printchr$(5):return
- 520 a1=8192:d=504:vr=1024:xm=160:ym=1e2:u$=chr$(145)
- 530 dimy(199),s(7),yc(24),fl(7)
- 540 fori=0to7:readc:fl(i)=16*c:s(7-i)=2^i:next:print:c=40
- 550 z=0:fori=0to24:printz;u$:forj=a1+320*itoj+7:y(z)=j:z=z+1:next
- 560 yc(i)=vr+c*i:next
- 580 printchr$(147):cc=16
- 590 fori=vrtoi+999:pokei,fl(rnd(1)*8):next
- 600 pokev+24,24:rem grafik beginnt ab adresse 8192
- 610 pokev+17,59:rem hi-res grafik einschalten
- 620 pokev+32,0
- 630 return
- 640 fori=0to3:poke2040+i,14-(iand1):pokev+39+i,6:next
- 650 pokev+38,3:pokev+37,1:pokev+28,15
- 660 fori=832to958:readx:pokei,x:next
- 670 t=255:e=v+16:a=v+1:b=v+3:c=v+2:l=0:k=0:m=24:n=250:h=v+21
- 680 poketp,0
- 690 y=int(rnd(1)*2e2)
- 700 forx=371to.step-8:z=k-(k=.):x2=x-m:ifx2<.thenx2=.
- 710 w=z*(-(x>t)-2*(x2>t)):pokee,w+l:l=w
- 720 pokec+k,x2andt:pokev+k,xandt
- 730 pokeb+k,y+5:pokea+k,y:pokeh,z*3
- 740 y=y+2:ify>ntheny=n
- 750 k=4-k:next:pokeh,.
- 760 fori=.to14e2*(rnd(1)+1):ifpeek(tp)thenreturn
- 770 next:goto690
- 780 x$=" spiralgalaxie ":l=len(x$)
- 790 d=int(20-l/2):b=a1+8*d:c=16*7+6
- 800 poke56334,0:poke1,51
- 810 fori=0tol-1:b2=v+8*(asc(mid$(x$,i+1))and63):pokevr+i+d,c
- 820 forj=b2toj+7:pokeb,peek(j):b=b+1:next
- 830 next
- 840 poke1,55:poke56334,1
- 850 return
- 860 data 1,2,7,8,9,11,12,15
- 870 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,,43,,2,181,,43,215,2,189,122
- 880 data 11,213,224,45,94,128,37,232,,43,128,,10,,,,,,,,,,,,,,,,,,,,,,,,
- 890 data ,,,,,,,,,,,,,,10,,,168,,10,224,2,187,,43,220,,189,224,,87,128,,120
- 900 data ,,224,,,128,,
- 910 :
Gruss,
Neptun
-
Hallo Lynx,
Neptun Du haust echt immer so coole Basic Schnipsel raus, das muss mal gelobt werden!
danke, für das Lob. War eine Weile offline. Werde
demnächst wieder mehr Basic Schnipsel "raushauen".
Gruss,
Neptun
-
Hier mal ein Beispiel für die Umschaltung zwischen zwei Zeichensätzen:
Code- 10 m=49152
- 15 fori=mtom+195:readx:pokei,x:next
- 20 sys m+6:rem zeichensaetze erstellen
- 30 sys m :rem raster-ir ein
- 40 end
- 50 sys 49152+3:rem raster-ir aus
- 55 :
- 60 rem zeichensatz 1 ab 6*2048
- 70 rem zeichensatz 2 ab 7*2048
- 80 :
- 1000 data 76,24,192,76,9,192,76,119,192,169,1,162,49,160,234,32,41,192,169,20
- 1001 data 141,24,208,96,32,58,192,173,17,208,41,127,141,17,208,169,0,162,87
- 1002 data 160,192,120,141,14,220,142,20,3,140,21,3,73,1,141,26,208,88,96,169
- 1003 data 2,141,234,7,169,153,162,28,141,18,208,172,18,208,204,18,208,240,251
- 1004 data 142,24,208,169,11,141,32,208,96,173,25,208,141,25,208,169,2,141,32
- 1005 data 208,206,234,7,208,6,32,58,192,76,49,234,169,251,162,30,32,67,192,76
- 1006 data 188,254,120,169,51,133,1,162,0,160,208,134,251,132,252,160,56,134
- 1007 data 253,132,254,160,48,134,3,132,4,162,8,142,232,7,160,0,177,251,133,2
- 1008 data 74,5,2,73,255,145,253,177,251,133,2,162,8,70,2,42,202,208,250,145
- 1009 data 3,200,208,228,230,252,230,254,230,4,206,232,7,208,217,169,55,133,1
- 1010 data 88,96
- 8999 :
- 9000 rem 2021 by neptun
Gruss,
Neptun
-
Probier' mal dies:
Code- 10 poke56,57:clr
- 20 sys58784:v=53248:pokev+33,8:pokev+32,0:t=255:printchr$(5)
- 30 fori=0to2:read y:pokev+i+i+1,y+208
- 40 pokev+39+i,11+10*(i=0):next
- 50 a=228:u$=chr$(145):gosub180
- 60 e=v+16:d=2040:z=1:i=6:w=0:tp=198:printchr$(147)chr$(31)chr$(18);
- 65 forx=1to4e2:print" ";:next:pokev+21,7:poketp,0
- 70 forx=344to.step-1:l=xandt
- 80 pokee,7*-(x>t):forj=vtov+4step2:pokej,l:next
- 90 z=z-1:ifzthen150
- 100 p=a+4*i:z=4
- 110 poked,p+2+w
- 120 poked+1,p+1
- 130 poked+2,p
- 140 i=i-1:ifi<.theni=6:w=1-w
- 150 ifpeek(tp)then170
- 160 next:goto70
- 170 sys58648:poketp,0:end
- 180 p=a*64:n=1105:z=1:f=90
- 190 readx$:ifx$=""thenreturn
- 200 printp;u$
- 210 fori=1tolen(x$):b=asc(mid$(x$,i))
- 220 ifb=fthenpokep,.:goto250
- 230 ifz=1thens=b:z=2:goto260
- 240 pokep,s+16*b-n
- 250 p=p+1:z=1
- 260 next:goto190
- 270 :
- 280 rem y-pos.
- 290 data 12,21,0
- 300 :
- 310 rem spritedaten
- 320 data zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzaozzadzzabzzabzzzzzihzzihzz
- 330 data mhzlazmhzzmhzzmhzzmdzzmdzzodzzodzzodzzohadzohihzppmozppaizppzzohzzah
- 340 data zzahzzahzzadzzadzzahzbaapzlazzzzzzzamzbaaozzaozzahzzadzzidzzidzzidz
- 350 data zibzzmbzzmazzmmzbaiizzmazzmazzzzzzzzzzzzzlazzzzzzzamzbaaozzaozzahzz
- 360 data adzzidzzmdzzmbzzobzzoazzmdzbaipzbaaizzzzzzzzzzzzzzzzzzzlazzzzzzzzzz
- 370 data zzzzzzzzzzzzzzzzzzzzzzzzzzzaozzadzzabzzabzzzzzihzzihzzmhzzmhzlazmhz
- 380 data zmhzzmdzzmdzzodzzohzzopzzopzzmpmabampoddaonhpdapiaodapiaihagazhazzha
- 390 data zzgazzgazzoazzodzzzzzlazzzzamzbaaozzaozzahzzadzzidzzidzzkdzzlbzzlbz
- 400 data zkdzzadzzagzzamzzamzzzzzzzzzzzzzzzzlazzzzamzbaaozzaozzahzzadzzidzzmd
- 410 data zzobzzpazzhazzoazzmdzzipzzamzzzzzzzzzzzzzzzzzzzlazzzzzzzzzzzzzzzzzz
- 420 data zzzzzzzzzzzzzzzzaozzadzzabzzabzzzzzihzzihzzmhzzmhzzmhzlazmhzzmdzzmd
- 430 data zzodzzohzzohzbaopzdaopzdapmzhapizpahampoadaopmabadmmazzmbzzibzzibzz
- 440 data adzzapzzzzzzzzlazamzbaaozzaozzadzzidzzidzzidzzkdzzddzzcpzbaaozhaaiz
- 450 data gazzzzzzzzzzzzzzzzzzzzzzzzzzlazamzbaaozzaozzahzzadzzihzzmhzzodzzhaz
- 460 data baoizhammzgambzzidzzadzzzzzzzzzzzzzzzzzzzzzzlazzzzzzzzzzzzzzzzzzzzz
- 470 data zzzzzzzzzzzzzzzzaozzadzzabzzabzzzzzihzzihzzmhzzmhzlazmhzzmhzzmdzzmd
- 480 data zzodzzopzdaopzhaopzpaopzpbpazmbpazmbhaaombbaapmazmpmazpbmazdamazbamb
- 490 data zbaidzzzzzzzzlazzzzamzbaaozzaozzahzzadzzehzzchzmadhzpadozzcozzcazzca
- 500 data zzzzzzzzzzzzzzzzzzzzzzzzzlazzzzamzbaaozzaozzahzzidzzmdzzodzmapazpahi
- 510 data zzgizzgazzoazzmazzzzzzzzzzzzzzzzzzzzzzlazzzzzzzzzzzzzzzzzzzzzzzzzzz
- 520 data zzzzzzzzzzaozzadzzabzzabzzzzzihzzihzzmhzzmhzlazmhzzmhzzmdzzmdzzohzba
- 530 data opzdaopzhappzpapozpahaaihadiaidabiaobaaiapzamahzaoidzammbzamoazaiga
- 540 data zzgazzcazzcalazzzzamzbaaozzaozzahzzadzzedzgakdzhallzzlpzzdhzzcazzda
- 550 data zzzzzzzzzzzzzzzzzzzzzzzzzlazzzzamzbaaozzaozzahzzmdzmapdzoapbaihabaai
- 560 data dabiaizbiaizbaaizbaaizzzzzzzzzzzzzzzzzzzzzzzzlazzzzzzzzzzzzzzzzzzzz
- 570 data zzzzzzzzzzzzzzzzzzzzaozzadzzabzzabzzzzzihzzihzzmhzlazmhzzmhzzmhzzmd
- 580 data zzmdzzodzzopzbaopzdampzhamnzpamjzpainzbamozzodzzpbaizdbamzbaaozzahz
- 590 data zadzzadzzaglazzzzzzzamzbaaozzaozzahzzadzzidzzidzgaidzhaipzzapzzzzzz
- 600 data zzzzzzzzzzzzzzzzzzzzzzlazzzzzzzamzbaaozzaozzahzzmdzzodzzpbzibdaaipb
- 610 data biaihabiaizbaaizbaaizzamzzzzzzzzzzzzzzzzzzlazzzzzzzzzzzzzzzzzzzzzzz
- 620 data zzzzzzzzzzzzzzzzzaozzadzzabzzabzzzzzihzzihzzmhzlazmhzzmhzzmhzzmdzzmd
- 630 data zzodzzodzzmhzzjhzzppaizppaibaipambaipaezmdzzmbzzoazzgazzdazzdaaizha
- 640 data aizpaailazzzzzzzamzbaaozzaozzahzzadzzadzzidzzidzzidzhaipzhaipzzzzzz
- 650 data zzzzzzzzzzzzzzzzzzzlazzzzzzzamzbaaozzaozzahzzmdzzodzzoazzhazzdazpadm
- 660 data zpadmzzdazzbaaizbaaizzzzzzzzzzzzzzz,""
- 670 :
- 680 rem 2020 by neptun
- 690 :
Gruss,
Neptun
-
Hallo Leute,
wollte euch mal ein kleines Basicprogramm von mir vorstellen.
Mit dem Print-Befehl kann man Speicherzellen belegen. Das
geht schneller, als mit Poke. Ich habe mich gefragt, ob man
auf diesem Wege auch eine schnelle Spritebewegung hinbekommt.
Und hier das Ergebnis:
Code- 10 goto140
- 20 ifk>athen50
- 30 ifrf=1thena$=a$+e1$:rf=.
- 40 goto60
- 50 ifrf=.thena$=a$+e2$:rf=1
- 60 k=kanda:ifk-uthena$=a$+chr$(l(k)):return
- 70 a$=a$+q$:return
- 80 u=1:s=.:a=.:b=n-1:e=v+18:f=128:tp=198:w=1:poke648,v/256:poketp,.
- 90 forj=.to5:k=sgn(b-a)*(s+1)
- 100 fori=atobstepk:waite,f:printp$(i):next:ifpeek(tp)thenreturn
- 110 ifu<tthenu=u+u+1:pokel,u
- 120 next:w=1-w:ifwthenz=a:a=b:b=z:goto90
- 130 s=s+1and3:goto90
- 140 v=53248:c$=chr$(147):gosub480:print" bitte warten ..."
- 150 dim a$,k,a,rf,x,y,xl,s,l,e,f,q,b,b1,b2,pi
- 160 vr=1024:a=127:b=159:t=255:u=34:pi=4*atn(1):fr=55296:dim l(a),h(7)
- 170 u$=chr$(145):e1$=chr$(146):e2$=chr$(18):h$=chr$(19)
- 180 fori=.to7:h(i)=2^i:readk:pokev+39+i,k:poke51192+i,iand1:next
- 190 fori=32to191:ifi<=aori>bthenprinth$;chr$(i):l(peek(vr))=i
- 200 next:b$=chr$(157):q$=chr$(u)+chr$(u)+b$:printh$" "
- 210 xm=172.5:ym=140.5:r1=140:r2=80:n=int(pi*r1):f=2*pi/n:print:print:printn
- 220 dim p$(n-1),x%(n-1),y%(n-1)
- 230 fori=.ton-1:k=f*i:printi;u$
- 240 x%(i)=xm+r1*sin(k+k)
- 250 y%(i)=ym-r2*cos(k)
- 260 next:e=41:f=95:print
- 270 fori=.ton-1:printi;u$
- 280 rf=.:s=.:z=i:l=i:a$=h$
- 290 forj=.to7:x=x%(z):s=s-h(j)*(x>t)
- 300 k=xandt:gosub20
- 310 k=y%(l):gosub20
- 320 z=z+e:ifz>=nthenz=z-n
- 330 l=l+f:ifl>=nthenl=l-n
- 340 next
- 350 k=s:gosub20
- 360 ifright$(a$,1)=b$thena$=left$(a$,len(a$)-2)
- 370 p$(i)=a$
- 380 next
- 390 gosub490
- 400 p=49152:s1=p:w=1105:forj=.to1:reada$
- 410 fori=1tolen(a$)step2:pokep,asc(mid$(a$,i))+16*asc(mid$(a$,i+1))-w
- 420 p=p+1:next:next:a$="":pokev+32,.
- 430 p=49152+64:fory=ptop+3*20step3:forx=y+2toystep-1:b=peek(s1):s=.
- 440 fori=.to3:s=s*4+(band3):b=int(b/4):next:pokex,s:s1=s1+1:next:next
- 450 pokev+37,9:pokev+38,13:pokev+28,t:pokev+27,222:l=v+21:pokel,1
- 460 gosub80
- 470 pokeq,peek(q)or3:poke648,4:gosub480:poketp,.:list:end
- 480 printchr$(8)chr$(5)c$:sys58784:pokev+33,.:pokev+32,11:return
- 490 vr=50176:zs=512e2:c=40:poke648,vr/256
- 500 f=0or8:poke646,f:pokev+33,f:printc$:pokev+33,6:pokev+34,0:pokev+35,12
- 510 q=56576:pokeq,peek(q)andnot3
- 520 pokev+22,24:pokev+24,16*1+1*2
- 530 w=17:fori=.to7:readx:pokezs+i,t-x
- 540 pokezs+32*8+i,w:w=85-w:next
- 550 fori=vr+12*ctovr+999:pokei,.:next:b1=2:b2=25:f=32
- 560 forx1=20to36step4
- 570 fory=.to1:forx=.to1:pokevr+x1+x+c*(20+y),f:next:next:next
- 580 fory=vr+12*ctovr+22*cstepc:forx=y+b1toy+b2:pokex,f:next
- 590 b1=b1+1:b2=b2-1:next
- 600 a$="basic":b1=zs+8:poke56334,.
- 610 fori=1tolen(a$):b2=v+8*(asc(mid$(a$,i))and63)
- 620 poke1,51:forj=b2toj+7:pokeb1,peek(j):b1=b1+1:next:poke1,55
- 630 pokevr+c+i,i:pokefr+c+i,1:next:poke56334,1
- 640 return
- 650 rem spritefarben
- 660 data 2,4,6,7,8,14,12,0
- 670 rem zeichen
- 680 data 69,69,69,0,84,84,84,0
- 690 rem spritedef.
- 700 data cakkaiaakkakaakcapaalaahaadkppcalkdpkakkapkakkapkakkflcekkajcbkk
- 710 data aieekgakfbigakfeakakebckaicfciaibbbiaifefeaefafeaebabfafaaafaf
- 720 :
- 750 rem 2021 by neptun
- 760 :
Es funktioniert, bedarf aber einiger Vorbereitung. Zum Beenden
eine Taste drücken und kurz warten.
Gruß,
Neptun
-
Vor dem Setzen des Dezimalflags sollte man das Interruptflag mit
SEI setzen, und es nach dem CLD wieder freigeben, sonst wird im
Timerinterrupt auch im Dezimalmodus gerechnet, z.B. beim Weitersetzen
der Zeit. Sollen Interrupts zugelassen bleiben, die Zeiger für den
Interrupt auf eine eigene Routine verbiegen und am Anfang ein CLD
ausführen. Beim Verlassen des Interrupts wird durch RTI der ursprüngliche
Zustand des Dezimalflags wieder hergestellt.
Gruß,
Neptun
-
Hallo Kinzi,
probier doch mal wait53265,128 am Anfang, dann ist die nächste 0
in 53266 oben am Bildschirm.
Hier mal meine Variante:
Gruss,
Neptun
-
Hallo Leute,
vor einiger Zeit habe ich mal die Laufzeiten von Schleifen
gemessen. Dabei fiel auf, dass bei gleicher Anzahl von Durchläufen,
zwei ineinander verschachtelte Schleifen schneller abgearbeitet
werden, als eine Schleife. Ich hätte erwartet, dass zwei Schleifen
langsamer sind, weil die innere Schleife immer wieder neu gesetzt
wird. Hat jemand eine Erklärung dafür?
Hier der Code dazu:
Code----------------------------------------------------------------------
Und wo wir gerade dabei sind. Warum funktioniert das:
und das nicht:
und das auch nicht:
Gruß,
Neptun
-
Hallo LazyJones,
probier' mal das:
Code- 10 poke53281,11:poke53280,0
- 11 readx$:ifx$<>""then11
- 12 m=828:b=m:n=1105
- 14 readx$:ifx$=""then20
- 15 fori=1tolen(x$)step2:pokeb,asc(mid$(x$,i))+16*asc(mid$(x$,i+1))-n
- 16 b=b+1:next:goto14
- 20 u$=chr$(145):printchr$(159)chr$(147):poke214,23:print:restore
- 30 readx$:ifx$=""thenrestore:goto30
- 40 print" "x$u$:sysm
- 43 sysm:rem leerzeile
- 45 gett$:ift$=""then30
- 60 poke53265,27:end
- 7000 data "0 1 2 3 4 5 6 7 8 9"
- 7010 data "the quick","brown fox"
- 7020 data "jumps over","the slowly"
- 7040 data "dog.",""
- 7999 :
- 8000 data jklpnicbannkbbanjcphnibbanjkianijohajkaanikohackiiakdaacfgdankkohaap
- 8001 data lpjkbackbdakkoihnioamnoiebdamifbdajebanikbannkjbannijbanifagnkbbanjc
- 8002 data ahnajohanibbanagnkjbannijbanooiohankiohakeajbeomjohaabjdjkhanijohaac
- 8003 data mhdackioakdagilpeimpckamakdaginpeiopckeaakaebllpbjnpimanjpgompgoopkm
- 8004 data ancpckhcjkacnjamhakmabkpookohaandaacmhdamebdko,""
- 9900 rem 2019 by neptun
Gruß,
Neptun
-
Hier mal ein kleines Demo zu der Blockgrafik:
Code- 1 goto10
- 2 n=x(x)+y(y):poken,z(t%(peek(n))orh(xand1,yand1)):return
- 3 n=x(x)+y(y):poken,z(t%(peek(n))andnoth(xand1,yand1)):return
- 4 pokee,-(x>t):pokev,xandt:pokev+1,y:g=peek(tp):return
- 5 dx=x2-x1:dy=y2-y1:ifabs(dx)<abs(dy)then7
- 6 s=sgn(dx):f=dy/dx*s:y=y1:forx=x1tox2steps:gosub2:y=y+f:next:return
- 7 s=sgn(dy):f=dx/dy*s:x=x1:fory=y1toy2steps:gosub2:x=x+f:next:return
- 10 sys58784:v=53248:c$=chr$(147):d$=chr$(17):gosub400
- 20 printd$" bitte warten ..."d$
- 200 vr=1024:c=40:e=v+16:t=255:z=rnd(-ti):pi=4*atn(1):fr=55296:tp=198
- 205 dim u(3,3),s(3),z(15),x(79),y(49)
- 210 dim h(1,1),t%(t),xs%(399),ys%(399)
- 220 dim xp(4),yp(4),f1(5),x$(7),q$(5)
- 302 j=50:fori=.to79:x(i)=int(i/2):ifi<jtheny(i)=vr+c*x(i)
- 303 next:fori=.to15:read z(i):t%(z(i))=i:next:fori=.to3:h(iand1,x(i))=2^i:next
- 304 fori=.to5:read x$(i):next
- 305 n=1105:k=832:forj=3to.step-1:printj;chr$(145):read a$:fori=1tolen(a$)step2
- 306 pokek,asc(mid$(a$,i))+16*asc(mid$(a$,i+1))-n:k=k+1:next:next:gosub1300
- 307 gosub400:printc$d$chr$(30)" blockgrafik-demo"
- 308 fori=.to5:poke646,1+13*(iand1):b$=mid$(str$(i+1),2):ifi=5thenb$="e"
- 309 printspc(41)chr$(175):print" "chr$(18)b$chr$(146)" "x$(i)
- 310 next
- 320 gosub700:geta$:ifa$="e"then350
- 340 t1=val(a$):ift1<1ort1>5then320
- 341 on t1 gosub 2000,4000,3000,1000,5000
- 342 pokev+21,.:goto307
- 350 sys58648:poketp,.:end
- 400 c1=.:pokev+32,11
- 500 pokev+33,c1:poke646,c2:printc$chr$(5);:return
- 600 poke646,c3:printx$(t1-1):pokev+32,.:return
- 700 poketp,.:waittp,1:return
- 1000 c2=1:gosub500:printchr$(144)
- 1050 fori=.to5:f=f1(i):x$=q$(i):printchr$(19)x$:m=len(x$)-1:ifm>9thenm=9
- 1060 poke56334,.:forj=.tom:a=peek(vr+j):ifa=32then1110
- 1070 b=v+8*a:n=vr+4*j+c*(1+4*i):poke1,51
- 1080 fork=.to3:w1=peek(b):w2=peek(b+1)
- 1090 forl=n+3tonstep-1:pokel,u(w1and3,w2and3):w1=int(w1/4):w2=int(w2/4):next
- 1100 b=b+2:n=n+c:next:poke1,55
- 1110 next:poke56334,1
- 1120 forx=fr+c*(4*i+1)tox+159:pokex,f:next:next:printchr$(19);
- 1130 i=peek(2):poke2,i+1and1:ifithen1160
- 1140 j=peek(fr+c):fori=.to39:pokevr+i,32:pokefr+i,j:next
- 1145 c3=4:gosub600
- 1150 j=128:fori=vrtoi+999:pokei,peek(i)+jandt:next
- 1155 gosub700:return
- 1160 n=fr+c:fory=.to23:f=s(yand3):forx=.to39:poken,f:n=n+1:next:next
- 1170 c3=15:gosub600:gosub700:return
- 1300 fori=.to3
- 1310 forj=.to3:read u(i,j):next:next
- 1320 fori=.to3:read s(i):next
- 1330 fori=.to5:read f1(i),q$(i):next
- 1340 return
- 2000 c1=6:c2=1:c3=2:gosub500
- 2005 x=39:fory=.to49:gosub2:next
- 2010 y=24:forx=.to79:gosub2:next
- 2020 r=23:f=2*pi/80*2:m=24.5:y1=24
- 2030 forx=.to79:w=f*x:y2=int(m-r*sin(w))
- 2040 fory=y1toy2stepsgn(y2-y1):gosub2:next:next
- 2050 printchr$(19)" ";:gosub600:gosub700:return
- 3000 c1=0:c2=7:c3=14:gosub500
- 3005 fory=.to49:forx=.to79:ifxandythengosub2
- 3010 next:next:gosub600:gosub700:return
- 4000 c1=0:c2=8:c3=7:gosub500
- 4005 fori=.to50
- 4006 x1=1+int(rnd(1)*78):y1=1+int(rnd(1)*48)
- 4007 x=x1-1:y=y1:gosub3:x=x+2:gosub3
- 4008 x=x1:y=y-1:gosub3:y=y+2:gosub3
- 4009 x=x1:y=y1:gosub2:next
- 4010 xm=39:ym=24:r=20:q=r*r:s=.5
- 4020 fori=-rtor:x=xm+i:k=int(s+sqr(q-i*i)):fory=ym-ktoym+k:gosub2:next:next
- 4040 r1=37:r2=15:p=int(2*pi*r1+1):f=2*pi/p:fori=.top-1:w=f*i
- 4050 x=int(xm+r1*cos(w))
- 4060 y=int(ym-r2*sin(w))
- 4070 ifi>160andi<191thengosub3:goto4080
- 4075 gosub2
- 4080 next:gosub600
- 4081 poke2040,14:pokev+37,11:pokev+38,12:pokev+39,6:pokev+28,1
- 4083 w=.:poketp,.
- 4084 y=2e2:pokev+21,1
- 4085 forx=.to4e2:gosub4:y=y-.3:ifgthenreturn
- 4086 next:pokev+21,.:pokev,.:pokev+16,.:pokev+27,w:w=1-w
- 4087 goto4084
- 5000 c1=2:c2=7:c3=.:gosub500
- 5001 z=5:xm=39.5:ym=24.5:r=24:f=2*pi/z
- 5002 fori=.toz-1:w=f*(i+.5)
- 5003 xp(i)=int(xm+r*sin(w))
- 5004 yp(i)=int(ym-r*cos(w))
- 5005 next
- 5006 i=.:fork=1toz:x1=xp(i):y1=yp(i):i=i+2:ifi>=ztheni=i-z
- 5007 x2=xp(i):y2=yp(i):gosub5:next
- 5008 u=int(2*pi*r)
- 5009 fori=.tou:w=i/r
- 5010 x=int(xm+r*cos(w))
- 5011 y=int(ym-r*sin(w))
- 5012 gosub2:next:printd$" ";:gosub600
- 5028 n=4e2:r=88:xm=172.5:ym=140.5:f=2*pi/n
- 5029 poke2040,13:pokev+39,.:pokev+27,.:pokev+28,.:pokev+21,1:poketp,.
- 5030 fori=.ton-1:w=f*i
- 5040 x=int(xm+r*sin(w+w))
- 5050 y=int(ym-r*cos(w))
- 5060 xs%(i)=x:ys%(i)=y:gosub4:ifgthenreturn
- 5070 next
- 5091 fori=.ton-1:x=xs%(i):y=ys%(i):gosub4:ifgthenreturn
- 5095 next:goto5091
- 7000 data 32,126,124,226,123,97,255,236,108,127,225,251,98,252,254,160
- 7010 data sinuskurve,saturn,fraktal,"4*4-zeichensatz",pentagramm,ende
- 7100 data phmpaapbppaihaplaobakhaaaappaiaaohaeaamddaaaohgadampinhappaghajpaipa
- 7101 data ppaapippamheppaodoppamphjjaiipddaaihggaaaphpaaagjbaiaiaaaacc
- 7200 data fbffefkgjgjkkgjgjkffffffkgjgjkkgjgjkfbffeffaaaafnbnnmnhphhhhnbnn
- 7201 data mnhphhhhnbnnmnfaaaaffbffefkgjgjkkgjgjkffffffkgjgjkkgjgjkfbffef
- 7300 data 32,108,123,98,124,225,255,254,126,127,97,252,226,251,236,160
- 7310 data 1,3,14,6
- 7320 :
- 7330 data 04,"9876543210"
- 7340 data 06,"the quick"
- 7350 data 13,"brown fox"
- 7360 data 07,"jumps over"
- 7370 data 08," the lazy"
- 7380 data 02,"dog. * * *"
- 7999 :
- 9000 rem 2020 by neptun
- 9010 :
Gruß,
Neptun