Listing des Monats: Q-Bernd
Listing des Monats sollen nicht nur sehr lange Programme werden. Auch kleinere Programme haben eine Chance. Q-Bernd ist eine sehr hübsche Version eines bekannten Spielhallenhits.

An seinem Foto können Sie schon erkennen, daß der Autor Bernd Pape eine Menge Witz und Phantasie besitzt. Auch in seinem »Lebenslauf« und seiner Spielbeschreibung kommt das ganz klar zum Ausdruck. Dochlesen sie selbst:
Anleitung für das Spielprogramm »Q Bernd«.
Was Sie hier erleben, ist der ebenso heldenhafte wie qualvolle Untergang des letzten Menschen der Erde: Q Bernd. Auf einem hyperwasserstoffbombenfesten Teil des Verwaltungsgebäudes der Antiwurgkommission ist es ihm gelungen, die Explosion zu überleben, die ein jähzorniger Erdkundelehrer in einem Wutausbruch durch seine übermächtigen Gehirnwellen erzeugt hat. Q Bernd hat sich auf dem folgenden langen Flug durch den Weltraum auf den leider nur sehr spärlich vorhandenen Sauerstoff einstellen können, was allerdings nicht ohne bleibende Schäden abgegangen ist, wie man an seiner dunklen Hautfarbe und seinen O-Beinen erkennen kann. Aber leider schwebt Q-Bernd mit seinem hyperwasserstoffbombenfesten Fetzen nicht allein durch die unendlichen Weiten des Weltraums. Als er ungefähr 765.854.863.654.392 Q-Berndsche Lichtmonate hinter sich gelegt hat, was nur dadurch möglich war, daß er sich jegliche Ernährung seines schon damals O-beinigen und sehr dunklen Körpers abgewöhnt hatte, näherte sich ihm ein Wesen, das einen derartigen Hunger entwickeln kann, daß es sogar Scheusale wie Q-Bernd frißt. Sie haben mit Ihrem Commodore 64 nun die Möglichkeit, das Leben Q-Bernds durch schnelle Reaktion und gute Taktik um wertvolle Sekunden zu verlängern. Sagen Sie ihm wahlweise per Tastendruck oder Joystickbewegung, wie er diesem Scheusal ausweichen kann. Jeder Sprung auf eine Stelle des hyperwasserstoffbombenfesten Fetzens, den er auf seiner langen Reise noch nicht erreicht hat, dankt er Ihnen in seiner Todesangst durch Punkte.

Wenn er auf diese Weise den ganzen Fetzen erforscht hat, hat ihr Commodore 64 durch die Punkte genügend Kraft, um Q Bernd einen neuen noch hyperwasserstoffbombenfesteren Fetzen zu geben, was Ihnen Q Bernd durch Zusatzpunkte dankt. Doch — Oh Schreck! — mit jedem Fetzen erhöht sich die Anzahl der gefräßigen Wesen. Erst wenn ihre Anzahl auf die runde Zahl 10 gestiegen ist, hört diese erschreckende Fortpflanzung auf (die Wesen haben Angst vor Überbevölkerung). Doch der Untergang Q Bernds läßt sich nur hinauszögern — nicht verhindern. Irgendwann werden ihn die Wesen packen und Sie können in Ihrem Mitleid nur noch die Geräusche der gestörten Verdauung der widerlichen Scheusale wahrnehmen, ehe Sie das Spiel wieder mit einem Druck auf die Taste »F1« neu starten.
Und nun das Gleiche für Praktiker:
Steuern Sie ihr Männchen wahlweise mit Joystick oder Tastatur so, daß alle 49 Felder gefärbt werden, um in die nächste Phase zu gelangen. In jeder Phase bis zur Phase 10 erhöht sich die Anzahl der Figuren, deren Berührung mit Ihrem Männchen tödlich ist. Danach wird das Spiel nicht mehr schwieriger. Mit Druck auf die Taste »fl« können Sie das Spiel neu starten. (Bernd Pape)
Lebenslauf

Am 6.12.1968 wurde ich als angeblich gewolltes Kind meiner Eltern versehentlich im Ruhrgebiet geboren und wenig später in Stade, einer sehr schönen Stadt zwischen Hamburg und Cuxhaven auf den Namen Bernd getauft. Bernd Pape war also der Name, der von nun an meine Umwelt in Schrecken versetzen sollte. Ungefähr 6½ Jahre später gelang meinen Eltern ein kaltblütiges Attentat: Sie schulten mich in Bochum, wo ich auch jetzt noch meine Residenz habe, gegen meine schärfsten Proteste ein. Als ich nach 4 Jahren meinte, dieses Übel überstanden zu haben und ich gerade das Wort »arbeiten« aus meinem Vokabular streichen wollte, gelang es der Bürokratie, einen entscheidenden Sieg über mich zu erlangen: Ich wurde zum Gymnasiasten erklärt. All diese Mißhandlungen konnten mich aber nicht davon abhalten, meinem Protest durch ausgiebige Freizeitnutzung Nachdruck zu verleihen. Zunächst hatte ich nur die Möglichkeit, meine Eltern und die Nachbarschaft durch falsches, aber lautes Akkordeonspielen zu ärgern. Mit meinen ersten Elektronikkästen konnte ich dann aber mein Waffenlager erweitern: Ich erging mich in den herrlichsten und lautesten Sirenenschaltungen des 19. Jahrhunderts — oder des zwanzigsten? Geldgeschenke zur Konfirmation (weitere Spenden nehme ich gerne entgegen!) ermöglichten es mir, alle Leser dieser Zeitung aufzufordern, den Kampf um möglichst viel Freizeit nicht aufzugeben! Denn von diesem Geld holte ich mir den Commodore 64, auf dem ich den »Q Bernd« unter besonders, erschwerten Bedingungen geschrieben habe. Nach einer Lateinarbeit, deren Zensur nicht genau den Vorstellungen meiner Eltern entsprach, erhielt ich »Computer-Verbot«. Gott sei Dank sah ich dies schon beim Schreiben der Arbeit voraus, was dazu führte, daß ich meine Diskette mit dem schon angefangenen Programm vor der liebenden Umsicht meiner Eltern retten konnte. So entstand der Rest des Programms durch mein heimliches Programmieren in verschiedenen Computerläden Bochums. Hier ist es nun, das Programm, für das Bernd Pape seinen Hausfrieden geopfert hat: Q Bernd!
(Bernd Pape)1 rem********************* 2 rem* * 3 rem* copyright by : * 4 rem* bernd pape * 5 rem* unterm schrick 11 * 6 rem* 4630 bochum 1 * 7 rem* * 8 rem********************* 10 print"{clr}":poke53281,0:poke53280,2 20 print:print"{wht} {rvon}{SHIFT-POUND} {rvof}{SHIFT-POUND}{CBM-H}" 30 print" {rvon}{SHIFT-POUND} {red} {wht}{SHIFT-POUND} {rvof}{SHIFT-POUND}{CBM-H}" 40 print" {rvon}{SHIFT-POUND}{red} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H}" 50 print" {rvon}{SHIFT-POUND}{red} {rvof}{wht}N {red}{rvon} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H}" 60 print" {rvon}{SHIFT-POUND}{red} {rvof}{wht}N {red}{rvon} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H}" 70 fori=0to1:print" {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}":nexti 80 print" {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}{yel} {$e6}{$e6}{$e6}{CBM--} {$e6}{$e6}{$e6}{$e6} {$e6}{$e6}{$e6}{CBM--} {$e6}{$e6} {$e6} {$e6}{$e6}{$e6}{CBM--}" 90 print"{up} {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}{yel} {$e6} {$e6} {$e6} {$e6} {$e6} {$e6}{$e6} {$e6} {$e6} {$e6}" 100 print"{up} {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}{yel} {$e6}{$e8}{$e6}{CBM--} {$e6}{$e6}{$e6} {$e6}{$e6}{$e6}{CBM--} {$e6}{$e6} {$e6} {$e6} {$e6}" 110 print"{up} {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}{yel} {$e6} {$e6}{CBM--} {$e6}{$e6}{$e6} {$e6}{$e6} {$e6} {$e6}{$e6} {$e6} {$e6}" 120 print"{up} {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}{yel} {$e6} {$e6} {$e6} {$e6} {$e6} {$e6} {$e6}{$e6} {$e6} {$e6}" 130 print"{up} {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}{yel} {$e6}{$e6}{$e6}{CBM--} {$e6}{$e6}{$e6}{$e6} {$e6} {$e6} {$e6} {$e6}{$e6} {$e6}{$e6}{$e6}{CBM--}" 140 print"{up} {red}{rvon} {rvof}{wht} {CBM-H} {red}{rvon} {rvof}{wht} {CBM-H}" 150 print" {red}{rvon} {rvof}{wht} {CBM-H} {rvon}{SHIFT-POUND} {rvof}{SHIFT-POUND}{CBM-H}{red}{rvon} {rvof}{wht} {CBM-H}" 160 print" {red}{rvon} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H} {red}{rvon} {wht}{SHIFT-POUND} {red} {rvof}{wht}N" 170 print" {red}{rvon} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H} {red}{rvon} {rvof}{wht}N" 180 print" {red}{rvon} {wht}{SHIFT-POUND} {red} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H} {lblu}(c) by bernd pape 1984" 190 print" {red}{rvon} {wht}{SHIFT-POUND}{rvof}{SHIFT-POUND}{CBM-H}" 200 print" {red}{rvon} {rvof}{wht}N {red}{rvon} {wht}{SHIFT-POUND} {rvof}{SHIFT-POUND}{CBM-H}" 210 print"{up} {red}{rvon} {rvof}{wht}N" 220 gosub1130 230 si=54272:fori=5to19step7:pokesi+i,15:pokesi+i+1,255:nexti:pokesi+24,15 240 poke53280,2:print"{clr}":fori=1to8:print:next 250 print"{wht}{rght}moechten sie mit":print 260 print"{rght}{lblu}j{wht}oystick(port1) oder {lblu}t{wht}astatur":print 270 print"{rght}spielen ?":b$="" 280 ifpeek(203)=22thenpoke198,0:goto320 290 ifpeek(203)=34orpeek(203)=60thenb$="j":goto380 300 d=d+1:ifd>500thend=0:goto10 310 goto280 320 print"{clr}" 330 print:print"{wht}welche taste soll heissen :":print 340 input"-links oben";lo$:print 350 input"-rechts oben";ro$:print 360 input"-links unten";lu$:print 370 input"-rechts unten";ru$ 380 print"{clr}":l=0:fa=3:p=0:ru=48 390 b=1160:f=55432:fora=0to6:goto1030 400 fora1=0to6:h=a*79+a1*42 410 fori=0to2:pokef+h+i,1:nexti:pokeb+h,233:pokeb+h+1,224:pokeb+h+2,105 420 fori=0to1:pokeb+h+i+40,224:pokef+h+i+40,2:nexti:nexta1:nexta 430 fori=4to18step7:pokesi+i,0:nexti:restore 440 print"punkte:",p,"rekord:",re 450 b=1163:f=55435:fora=0to6:pokef+a*42,1:pokeb+a*42,101:nexta 460 b=1454:f=55726:fora=0to6:pokef+a*79,1:pokeb+a*79,78:nexta 470 b=1494:f=55766:fora=0to5:pokef+a*79,1:pokeb+a*79,101:nexta 480 a=int(rnd(ti)*7):a1=int(rnd(ti)*7):s=1161+a*79+a1*42:q=a:q1=a1 490 pokes,222:pokes-40,170:ifa=0thenpokes-40,101 500 sf=s-1024+55296 510 fori=sf-1tosf+1:pokei,fa:nexti 520 poke53280,fa 530 l=l+1:ifl>10thenl=10 540 fori=1tol 550 l0(i)=int(rnd(ti)*7):l1(i)=int(rnd(ti)*7):l(i)=1161+l0(i)*79+l1(i)*42 560 ifpeek(l(i))<>224then550 570 pokel(i),209:p0(i)=l0(i):p1(i)=l1(i):nexti 580 ifb$="j"then1050 590 geta$:ifa$=""then640 600 ifa$=lo$thena1=a1-1:goto800 610 ifa$=ru$thena1=a1+1:goto800 620 ifa$=ro$thena=a-1:goto800 630 ifa$=lu$thena=a+1:goto800 640 i=i+1:ifi>ltheni=1 650 ifp0(i)=0thenz=3:goto700 660 ifp0(i)=6thenz=2:goto700 670 ifp1(i)=0thenz=1:goto700 680 ifp1(i)=6thenz=0:goto700 690 z=int(rnd(ti)*4) 700 ifz=3thenl0(i)=l0(i)+1:goto740 710 ifz=2thenl0(i)=l0(i)-1:goto740 720 ifz=1thenl1(i)=l1(i)+1:goto740 730 l1(i)=l1(i)-1 740 pokesi,207:pokesi+1,34:pokesi+6,80:pokesi+5,0:pokesi+4,17 750 l(i)=l0(i)*79+l1(i)*42+1161:ifpeek(l(i))=209then650 760 p(i)=p0(i)*79+p1(i)*42+1161:pokep(i),224:p0(i)=l0(i):p1(i)=l1(i) 770 pokesi+4,0 780 ifpeek(l(i))=222thenpokel(i),209:pokel(i)-40,224:goto920 790 pokel(i),209:goto580 800 pokesi+7,103:pokesi+8,17:pokesi+13,240:pokesi+12,0:pokesi+11,33 810 s=q*79+q1*42+1161:pokes,224:pokes-40,224:ifq=0thenpokes-40,101 820 q=a:q1=a1:s=a*79+a1*42+1161:ifpeek(s)<>224thenpokesi+11,0:goto930 830 pokes,222:pokes-40,170:ifa=0thenpokes-40,101 840 pokesi+11,0:sf=s-1024+55296:if(peek(sf)and15)=1then860 850 goto640 860 forw=sf-1tosf+1:pokew,fa:nextw:p=p+1:ifp>rethenre=p 870 print"{home}{down}",p,,re:ifp=ruthen890 880 goto640 890 fa=fa+1:iffa>15thenfa=3 900 poke53280,fa:ru=ru+48+10*l:a$="":p=p+10*l:ifp>rethenre=p 910 print"{clr}":goto390 920 ifa=0thenpokes-40,101 930 fori=0to8:print:nexti 940 fori=180to130step-1 950 pokesi+24,15:pokesi,207:pokesi+1,i:pokesi+6,143 960 pokesi+5,15::pokesi+4,17:nexti:pokesi+4,0 970 pokesi,90:pokesi+1,4:pokesi+6,255:pokesi+5,15 980 pokesi,50:pokesi+1,17:pokesi+6,32:pokesi+5,0:pokesi+4,17 990 fort=1to180:nextt:pokesi+4,0 1000 print"<<<<<<<< s p i e l - e n d e >>>>>>>>>" 1010 print:print"{yel} f1 fuer ein neues spiel druecken !" 1020 poke198,0:wait198,1:goto240 1030 readk:readkl:readkh 1040 pokesi+k,kl:pokesi+k+1,kh:pokesi+k+4,17:goto400 1050 r=(255-peek(56321))and15 1060 ifr=0then640 1070 ifr=4thena1=a1-1:goto800 1080 ifr=8thena1=a1+1:goto800 1090 ifr=1thena=a-1:goto800 1100 ifr=2thena=a+1:goto800 1110 goto640 1120 data0,180,8,7,247,10,7,10,13,7,103,17,14,237,21,14,20,26,14,207,34 1130 poke56,48:fori=1to21:reada:next 1140 fori=828to870:readq:pokei,q:next 1150 data120,169,49,133,1,169,0,133,98,133,100,169,208,133,99,169,48,133,101 1160 data162,16,160,0,177,98,145,100,200,208,249,230,99,230,101,202,208,242 1170 data169,55,133,1,88,96 1180 sys828:poke53272,(peek(53272)and240)or12 1190 reada:ifa<0thenrestore:return 1200 forj=0to7:readb:poke12288+a*8+j,b:next:goto1190 1210 data160,255,255,255,255,255,255,255,255 1220 data170,255,255,231,195,195,129,0,0 1230 data222,129,195,219,189,219,24,255,255 1240 data209,195,129,36,0,0,60,153,195,-1