VC 20 + 16 KByte
Underground
6/84, S. 120-126

In den Untergrund mit dem VC 20

Underground, so der Originalitel, ist nicht irgend ein Spiel, sondern eine Kombination aus Action- und Abenteuerspiel. Für den VC 20 mit mindestens 16 KByte Erweiterung geschrieben ist Underground mit einigen überraschenden Eigenschaften ausgestattet.

Das Ziel des Spiels ist es, in möglichst kurzer Zeit aus dem Untergrundsystem von New York zu entkommen und dabei alle gestellten Aufgaben richtig zu lösen.

Das Spiel besteht aus insgesamt fünf verschiedenen Spielszenen und einer kleinen Vorgeschichte, in deren Verlauf man durch einen offenen Schacht in das unterirdische System von New York stürzt. Durch Drücken der Feuertaste am Joystick ist es jetzt möglich, in die erste Spielszene zu gelangen.

In dieser ersten Szene (Bild 2) geht es darum, ohne Berührung der Wände von der linken auf die rechte Seite zu gelangen. Um dies zu erreichen, gilt es, die Aufzüge, die sich von unten nach oben bewegen, geschickt zu benutzen.

Bild 2. Nach dem Sturz in den Untergrund steht man vor einer Paternosterkaskade

Die wilden Zahlen

Nach diesem ersten, noch recht einfachen Bild gelangt man in das Labyrinth der wilden Zahlen (Bild 3). Hier geht es darum, in möglichst kurzer Zeit (maximal 1 Minute) die Zahlen des Labyrinthes in ihrer Reihenfolge aufzusammeln. Damit diese Arbeit ein wenig erschwert wird, tauschen die Zahlen alle sieben Schritte ihre Position in zufälliger Folge. Um diese kleine Gemeinheit aber ein wenig auszugleichen, kann auch der Spieler die Position der Zahlen verändern, indem er den Schußknopf betätigt. Auch dann tauschen zwei zufällig ausgewählte Zahlen ihre Position auf dem Spielfeld. Wenn alle Zahlen aufgesammelt sind, muß man sich zum Ausgang auf der rechten unteren Seite begeben.

Bild 3. Das Labyrinth der wilden Zahlen

Man kann dieses Bild auch verlassen, wenn man nicht alle Zahlen aufgesammelt hat. Dadurch ist es möglich, sich auch die folgenden Spielszenen anzuschauen. Allerdings gelangt man zum Schluß des Spiels leider nicht wieder an die Oberfläche der Stadt, sondern muß nochmal von vorn anfangen.

Die Piplips

In der nächsten Szene (Bild 4) besteht die Aufgabe darin, alle Piplips aufzusammeln, das sind die kleinen schwarzen Wesen, die überall im Bild verteilt sind und danach zum Ausgang rechts unten zu gelangen. Die Schwierigkeit dieses Bildes besteht darin, daß man nur eine bestimmte Anzahl von Schritten zur Verfügung hat, um von einem Pipip zum anderen zu gelangen. Jedesmal, wenn man eines der Wesen aufgesammelt hat, erscheint sofort ein neuer Irrgarten mit anders verteilten Piplips. Tip: 1. Erst in Ruhe das Labyrinth anschauen und dann lossausen. 2. Auch dieses Bild kann man ohne alle Piplips verlassen, allerdings gelten auch hier dieselben Einschränkungen wie bei den Zahlen.

Bild 4. »Piplips« einsammeln - in einem sich ständig verändernden Labyrinth

Aufzüge und Labyrinth

Als nächstes kommt jetzt wieder ein Bild mit Aufzügen, allerdings um einiges schneller und mit kleineren Fahrstühlen. Auch hier muß man möglichst die Nerven behalten und von links nach rechts zum Ausgang gelangen.

Und nun zur letzten Szene (Bild 5): Auf den ersten Blick vielleicht ein simples Labyrinth mit zwei regelmäßig umherfliegenden Objekten (eine Namensgebung sei diesmal jedem selbst überlassen). Die Aufgabe besteht darin, zum Ausgang zu gelangen, ohne mit den fliegenden Objekten zusammenzustoßen. Sollte es aus Versehen doch zu einem Zusammenstoß kommen, wird man leider in das vorletzte Bild zurückgeschleudert und muß erst mal wieder die Aufzüge überwinden.

Bild 5. Dies ist das letzte Hindernis, das es zu überwinden gilt

Die Schwierigkeit bei diesem Bild besteht darin, daß nach einmaligem Losgehen in eine bestimmte Richtung die Bewegung nicht mehr gestoppt werden kann, bis man an einer Wandbegrenzung zum Stillstand kommt. Wer jetzt immer noch glaubt, daß dieses Bild leicht zu schaffen sei, möge bitte das Programm abtippen, zu einem Joystick greifen und anschließend spielen.

Das Eintippen

Um Underground auf möglichst einfache Art und Weise vom Papier in den Computer zu bringen, ist das Programm in drei Teile unterteilt:
Listing 1: Lader.

Dieser dient dazu, den Maschinen- und Basic-Teil von Underground von Kassette/Diskette zu laden. Um dieses Programm benutzen zu können, muß noch der Teil 2 sowie der Teil 3 eingegeben werden.
Listing 2: Maschinensprache/Grafik.

In diesem Teil befinden sich die Maschinenroutinen und die Grafik des Spiels. Nach dem Eintippen sollte man das Programm zwar aus Sicherheitsgründen abspeichern, aber es wird bei der lauffähigen Version nicht mehr gebraucht, da es den notwendigen Programmteil selbst auf Kassette/Diskette ablegt.
Listing 3: Basic.

Hier ist das Hauptprogramm des Spiels in Basic abgelegt.

Vorgehensweise:

(Oliver Joppich)
4864 Joystickabfrage; nach Aufruf dieser Routine kann mit PRINT PEEK(1001) der Schußknopf und mit PRINT PEEK(1000) die Richtung abgefragt werden.
7360 Malt die Aufzüge auf den Bildschirm.
5000 Crattatazong!! Soundroutine 1.
7296 Hyaehh!! Soundroutine 2.
7168 Verschieben der Aufzüge um eine Einheit nach oben.
7224 Labbymaker, die wohl interessanteste Maschinenspracheroutine. Mit ihr wird innerhalb einer Zehntelsekunde ein Labyrinth auf den Bildschirm gemalt.
Benutze Maschinenspracheroutinen (Aufruf mit SYS)
x,y die Koordinaten des Männchens
lo die Geschwindigkeit des Männchens
sc Screenstart (=4096)
co Start des Farb-RAM (=37888)
po Position des Männchens am Bildschirm
fa Position des Männchens im Farb-RAM
jo Adresse der Joystickroutine (=4864)
a(1)...a(5) Position der 5 magischen Zahlen
zq Bildschirmpoke für Piplip
pi Bildschirmpoke für Piplip
we Joystickrichtung
le Level
ze Anzahl der mitgenommenen Zahlen
Wichtige Variable
10-135 Initialisierung
136-190 Titelbild
198-260 Männchen einen Schritt zur Seite
266-290 Titelbild New York, Schrift
298-840 Vorspannszene
846-990 Aufzüge Bild 1
996-1590 Das Zahlenlabyrinth
1596-1790 Piplips fangen
1796-1950 Aufzüge Bild 2
1956-2110 Die Glibberbahn
2120-2440 Ende
2450-2530 da fehlt eine Nummer oder ein Piplip
2580-2690 damit geht’s auf und ab (das Männchen)
2700-2710 Level: = Level + 1
2720-2730 Timeout bei Piplipcatch
2740-2750 Ton langsam aus
2760-2760 just for fun
Die wichtigsten Unterroutinen
5 ifpeek(44)<>32thenprint"{clr}bitte erst eingeben   {down}{down}poke44,32:pO8192,0:new":end
10 clr:fort=0to3151:reada:poke4864+t,a:su=su+a:next
20 ifsu<>222400thenprint"{clr}fehler in daten":end
30 print"{clr}abspeichern"
40 print"{down}auf  (1) tape
50 print"oder (8) disk
60 poke198,0:wait198,1:geta$:a=val(a$):ifa<>1anda<>8then60
70 print"{clr}pO44,19:pO43,0:pO45,0:pO46,32:sA"chr$(34)"ug.data"chr$(34)","a
32000 data162,24,160,127,140,34,145,172,32,145,152,201,119,208,2,162,23,172,31
32001 data145,152,41,4,201,4,208,5,56,138,233,22,170,152,41,8,201,8,208,5,24
32002 data138,105,22,170,152,41,16,201,16,208,5,138,56,233,1,170,142,232,3,152
32003 data162,0,41,32,201,32,240,2,162,1,142,233,3,169,255,141,34,145,96,0,160
32004 data0,132,0,169,148,133,1,162,2,138,145,0,200,145,0,200,200,200,192,24
32005 data208,243,72,169,22,24,101,0,133,0,169,0,101,1,133,1,201,150,240,6,104
32006 data160,0,76,90,19,104,96,0,0,0,0,0,0,0,162,0,134,1,169,0,133,0,162,15
32007 data142,14,144,164,0,140,11,144,166,1,232,208,253,136,132,0,192,127,208
32008 data241,169,0,141,14,144,141,13,144,141,12,144,141,11,144,141,10,144,230
32009 data1,230,1,230,1,230,1,165,1,41,7,77,15,144,141,15,144,165,1,208,191,96
32010 data0,0,0,0,0,0,183,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
32011 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,1,1,1,0,0,192,32,248,80,16
32012 data32,192,192,3,4,7,2,2,2,1,1,128,64,240,160,32,64,128,128,0,0,0,0,3,4
32013 data15,5,0,0,0,0,128,64,240,64,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,1,7,3,2
32014 data49,26,14,6,224,240,96,32,192,32,48,56,0,7,8,8,8,8,8,8,0,255,0,0,4,4
32015 data31,4,24,255,8,8,8,8,15,8,0,0,128,64,32,16,240,16,24,24,36,90,90,153
32016 data129,255,0,0,24,24,36,66,129,255,1,2,2,2,1,1,1,1,32,160,160,32,192,64
32017 data32,224,2,5,6,4,13,18,20,24,64,64,128,192,32,160,144,112,4,4,3,7,4,5
32018 data4,3,64,128,0,128,70,58,130,254,32,120,181,178,160,166,123,33,0,0,192
32019 data32,144,66,33,255,2,3,4,9,10,18,20,60,44,198,32,160,160,160,144,240
32020 data8,8,8,8,7,6,1,0,4,0,0,0,255,76,0,0,8,12,8,8,255,244,17,14,16,16,16
32021 data16,240,224,0,0,173,129,173,173,173,129,173,173,129,171,129,171,129
32022 data171,129,171,0,0,0,0,0,0,0,0,128,64,192,128,128,128,0,0,3,4,31,10,8
32023 data4,3,3,192,32,224,64,64,64,128,128,1,2,15,5,4,2,1,1,0,0,0,0,192,32,240
32024 data160,0,0,0,0,1,2,15,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,128,224,192,64
32025 data140,88,112,96,7,15,6,4,3,4,12,28,0,224,16,16,16,16,16,16,0,255,0,0
32026 data32,32,248,32,24,255,16,16,16,16,240,16,0,0,1,2,4,8,15,8,24,24,36,90
32027 data90,153,129,255,0,0,24,24,36,66,129,255,128,64,64,64,128,128,128,128
32028 data4,5,5,4,3,2,4,7,64,160,96,32,176,72,40,24,2,2,1,3,4,5,9,14,32,32,192
32029 data224,32,160,32,192,2,1,0,1,98,92,65,127,4,30,173,77,5,101,222,132,0
32030 data0,3,4,201,179,132,255,64,192,32,144,80,72,40,60,52,99,4,5,5,5,9,15
32031 data16,16,16,16,224,96,128,0,85,85,170,170,85,85,170,170,16,48,16,16,255
32032 data47,136,112,8,8,8,8,15,7,0,0,181,129,181,181,181,129,181,0,182,184,202
32033 data84,238,84,190,0,24,52,98,126,98,98,98,0,124,98,98,124,98,98,124,0,28
32034 data50,96,96,96,50,28,0,120,100,98,98,98,100,120,0,126,96,96,120,96,96
32035 data126,0,126,96,96,124,96,96,96,0,28,50,96,110,98,50,28,0,98,98,98,126
32036 data98,98,98,0,12,12,12,12,12,12,12,0,6,6,6,6,6,102,60,0,98,100,104,112
32037 data104,100,98,0,96,96,96,96,96,96,124,0,98,118,106,98,98,98,98,0,66,98
32038 data114,106,102,98,98,0,60,98,98,98,98,98,60,0,124,98,98,124,96,96,96,0
32039 data60,98,98,98,106,100,58,0,124,98,98,124,120,108,102,0,60,102,96,60,6
32040 data102,60,0,126,24,24,24,24,24,24,0,98,98,98,98,98,98,60,0,100,100,100
32041 data100,100,56,16,0,98,98,98,106,106,118,36,0,98,98,52,24,52,98,98,0,49
32042 data49,49,30,12,12,12,0,126,126,12,24,48,126,126,0,219,165,66,153,153,66
32043 data165,219,0,56,84,16,16,84,56,0,127,101,103,61,61,103,101,127,0,126,153
32044 data255,255,153,126,0,0,24,60,90,255,231,126,60,0,0,0,0,0,0,0,0,8,8,8,8
32045 data0,0,8,0,36,36,36,0,0,0,0,0,36,36,126,36,126,36,36,0,24,60,90,36,90
32046 data60,24,0,0,102,102,0,126,0,102,102,124,170,130,124,56,124,238,0,68,170
32047 data108,56,68,124,198,0,7,8,18,16,17,8,7,0,224,16,72,8,136,16,224,0,28
32048 data62,20,8,62,93,28,54,0,8,8,62,8,8,0,0,0,0,0,0,0,8,8,16,0,0,0,126,0,0
32049 data0,0,0,0,0,0,0,24,24,0,0,2,4,8,16,32,64,0,60,98,98,98,98,98,60,0,12
32050 data28,44,12,12,12,12,0,60,6,6,12,24,48,62,0,60,6,6,28,6,6,60,0,48,54,54
32051 data54,63,4,4,0,126,96,120,12,12,76,56,0,28,48,96,124,98,98,60,0,62,2,6
32052 data12,24,24,24,0,60,98,98,60,98,98,60,0,60,98,98,62,6,12,24,0,0,0,8,0
32053 data0,8,0,0,0,0,8,0,0,8,8,16,14,24,48,96,48,24,14,0,0,0,126,0,126,0,0,0
32054 data112,24,12,6,12,78,69,85,45,83,67,72,82,73,70,0,189,90,189,153,153,189
32055 data90,189,192,32,248,80,16,32,192,192,3,4,7,2,2,2,1,1,128,64,240,160,32
32056 data64,128,128,0,0,0,0,3,4,15,5,0,0,0,0,128,64,240,64,0,0,0,0,0,0,0,32
32057 data0,0,0,0,0,0,0,0,1,7,3,2,49,26,14,6,224,240,96,32,192,32,48,56,0,7,8
32058 data8,8,8,8,8,0,255,0,0,4,4,31,4,24,255,8,8,8,8,15,8,0,0,128,64,32,16,240
32059 data16,24,24,36,90,90,153,129,255,0,0,24,24,36,66,129,255,1,2,2,2,1,1,1
32060 data1,32,160,160,32,192,64,32,224,2,5,6,4,13,18,20,24,64,64,128,192,32
32061 data160,144,112,4,4,3,7,4,5,4,3,64,128,0,128,70,58,130,254,32,120,181,178
32062 data160,166,123,33,0,0,192,32,147,205,33,255,2,3,4,9,10,18,20,60,44,198
32063 data32,160,160,160,144,240,8,8,8,8,7,6,1,0,4,0,0,0,255,79,16,224,8,12,8
32064 data8,255,244,17,14,16,16,16,16,240,224,0,0,173,129,173,173,173,129,173
32065 data173,129,171,129,171,129,171,129,171,255,255,255,255,255,255,255,255
32066 data0,3,4,15,6,5,4,3,0,128,64,224,192,64,64,128,3,4,15,6,5,4,3,12,128,64
32067 data224,192,64,64,128,96,48,126,64,64,120,64,64,126,0,126,64,64,120,64
32068 data64,64,0,28,34,64,78,66,34,28,0,66,66,66,126,66,66,66,0,28,8,8,8,8,8
32069 data28,0,14,4,4,4,4,68,56,0,66,68,72,112,72,68,66,0,64,64,64,64,64,64,126
32070 data0,66,102,90,90,66,66,66,0,66,98,82,74,70,66,66,0,24,36,66,66,66,36
32071 data24,0,0,0,0,0,0,0,0,12,28,18,7,6,10,14,0,64,96,112,216,192,160,160,224
32072 data28,52,39,6,10,10,14,0,112,80,128,192,160,224,0,0,0,66,66,66,66,66,66
32073 data60,0,66,66,66,36,36,24,24,0,66,66,66,90,90,102,66,0,66,66,36,24,36
32074 data66,66,0,34,34,34,28,8,8,8,0,126,2,4,24,32,64,126,0,60,32,32,32,32,32
32075 data60,0,12,16,16,60,16,112,110,0,60,4,4,4,4,4,60,0,0,8,28,42,8,8,8,8,0
32076 data86,50,32,83,85,129,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,8,0,0,8,0
32077 data36,36,36,0,0,0,0,0,36,36,126,36,126,36,36,0,8,30,40,28,10,60,8,0,0
32078 data98,100,8,16,38,70,0,48,72,72,48,74,68,58,0,4,8,16,0,0,0,0,0,4,8,16
32079 data16,16,8,4,0,32,16,8,8,8,16,32,0,8,42,28,62,28,42,8,0,0,8,8,62,8,8,0
32080 data0,0,0,0,0,0,8,8,16,0,0,0,126,0,0,0,0,0,0,0,0,0,24,24,0,0,2,4,8,16,32
32081 data64,0,60,66,70,90,98,66,60,0,8,24,40,8,8,8,62,0,60,66,2,12,48,64,126
32082 data0,60,66,2,28,2,66,60,0,4,12,20,36,126,4,4,0,126,64,120,4,2,68,56,0
32083 data28,32,64,124,66,66,60,0,126,66,4,8,16,16,16,0,60,66,66,60,66,66,60
32084 data0,60,66,66,62,2,4,56,0,0,0,8,0,0,8,0,0,0,0,8,0,0,8,8,16,14,24,48,96
32085 data48,24,14,0,0,0,126,0,126,0,0,0,112,24,12,6,12,24,112,0,60,66,2,12,16
32086 data0,16,0,158,160,208,180,189,0,2,16,190,153,253,1,198,123,169,255,133
32087 data122,96,165,43,166,44,160,1,133,95,134,96,177,95,240,31,200,200,165
32088 data21,209,95,144,24,240,3,136,208,9,165,20,136,209,95,144,12,240,10,136
32089 data177,95,170,136,177,95,176,215,24,96,208,253,169,0,168,145,43,200,145
32090 data43,165,43,24,105,2,133,45,165,44,105,0,133,46,32,142,166,169,0,208
32091 data45,32,231,255,165,55,164,56,133,51,132,52,165,45,164,46,133,47,132
32092 data48,133,49,132,50,32,29,168,162,25,134,22,104,168,104,162,250,154,72
32093 data152,72,169,0,133,62,133,16,96,24,165,43,105,255,133,122,165,44,105
32094 data255,133,123,96,144,6,240,4,201,171,208,233,32,107,169,32,19,166,32
32095 data121,0,240,12,201,171,208,142,32,115,0,32,107,169,208,134,104,104,165
32096 data20,5,21,208,6,169,255,133,20,133,21,160,1,132,15,177,95,240,67,32,44
32097 data168,32,215,170,200,177,95,170,200,177,95,197,21,208,0,0,0,0,0,0,0,0
32098 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,16,133,255,133,1,169,2,133,254,169
32099 data24,133,0,160,0,177,254,153,252,17,177,0,145,254,200,177,254,153,252
32100 data17,177,0,145,254,200,200,200,192,20,208,230,165,1,133,255,24,165,0
32101 data133,254,105,22,133,0,169,0,101,1,133,1,201,18,240,21,160,0,177,0,145
32102 data254,200,177,0,145,254,200,200,200,192,20,208,240,76,42,28,120,162,10
32103 data169,15,141,14,144,134,0,198,0,208,252,169,0,141,14,144,134,0,198,0
32104 data208,252,202,208,231,88,96,96,96,96,96,96,96,96,96,96,96,96,96,169,0
32105 data141,13,144,141,12,144,141,11,144,141,10,144,141,14,144,162,255,160
32106 data255,141,14,144,202,208,250,169,255,77,14,144,141,14,144,202,208,253
32107 data136,152,41,240,170,192,64,208,233,96,96,96,96,96,96,96,96,96,96,96
32108 data96,96,96,96,96,96,160,0,169,128,153,0,16,153,0,17,169,4,153,0,148,153
32109 data0,149,200,208,237,76,80,19,96,96,96,96,96,96,96,96,165,0,41,1,73,1
32110 data133,0,160,0,153,134,148,200,208,250,96,96,96,96,96,96,96,96,96,96,96
32111 data96,96,96,96,0,169,160,160,0,153,22,16,153,0,17,153,0,148,153,0,149
32112 data200,208,241,32,160,29,234,234,169,45,133,254,169,16,133,255,32,209
32113 data29,24,133,38,24,41,3,170,32,0,30,160,0,177,2,201,160,208,32,24,165
32114 data2,133,0,165,3,133,1,138,145,2,32,80,30,169,32,160,0,145,2,165,0,133
32115 data254,165,1,133,255,76,32,29,232,138,24,41,3,170,165,38,24,41,3,133,38
32116 data228,38,240,4,138,76,42,29,160,0,177,254,170,169,32,145,254,160,0,138
32117 data224,4,48,1,96,32,0,31,165,3,133,255,165,2,133,254,76,32,29,0,0,0,0
32118 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,16,133,1,169,21,133,0,160
32119 data0,169,91,145,0,24,165,0,105,22,133,0,169,0,101,1,133,1,201,18,208,233
32120 data169,5,141,45,16,169,91,160,0,153,0,16,200,192,22,208,248,96,173,22
32121 data145,77,21,145,77,24,145,77,25,145,96,169,100,96,0,0,0,0,0,0,0,0,0,0
32122 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,208,16,24,169,2,101
32123 data254,133,2,169,0,101,255,133,3,76,73,30,224,3,208,16,24,169,44,101,254
32124 data133,2,169,0,101,255,133,3,76,73,30,224,2,208,16,56,165,254,233,2,133
32125 data2,165,255,233,0,133,3,76,73,30,56,165,254,233,44,133,2,165,255,233
32126 data0,133,3,96,0,0,0,0,0,0,224,0,208,16,24,169,1,101,254,133,2,169,0,101
32127 data255,133,3,76,73,30,224,3,208,16,24,169,22,101,254,133,2,169,0,101,255
32128 data133,3,76,73,30,224,2,208,16,56,165,254,233,1,133,2,165,255,233,0,133
32129 data3,76,73,30,56,165,254,233,22,133,2,165,255,233,0,133,3,96,96,0,0,0
32130 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
32131 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
32132 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,2,208
32133 data16,24,169,2,101,254,133,2,169,0,101,255,133,3,76,73,31,224,1,208,16
32134 data24,169,44,101,254,133,2,169,0,101,255,133,3,76,73,31,224,0,208,16,56
32135 data165,254,233,2,133,2,165,255,233,0,133,3,76,73,31,56,165,254,233,44
32136 data133,2,165,255,233,0,133,3,96,0,0,0,165,254,133
Listing 2. Maschinenspracheroutinen und Grafik für »Underground«
10 rem                 u n d e r g r o u n d
20 rem written by
30 rem oliver joppich
40 rem celler str.52
50 rem 3300 bs
60 :
70 clr:poke36879,8:print"{clr}{wht}":poke36869,205:printchr$(8):co=37888:sc=4096:po=sc:le=0
80 jo=4864:rem joystickroutine
81 lo=60:poke7645,96
90 oj$(0)="{rvof} OJO {CBM-Z} SOFT{$a0}PRESENTS{up}":oj$(1)="{rvof}{up}THE{$a0} ADVENTURE GAME
100 oj$(2)="{rvof}  U{down}N{down}D{down}E{down}R{up}GR{down}OU{up}ND
110 oj$(3)="{rvof}{down}ALL{$a0}RIGHTS{$a0}RESERVED":oj$(4)="{rvof}{down}HAPPY{$a0}PLAYING {CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}
120 am$="jklm{down}{left}{left}{left}{left}z[\]{left}{left}{left}{up}":poke0,0:rem braucht jemand 'nen krankenwagen
130 poke36876,220:poke36877,254:fort=0to500:next:poke36876,0
135 :
136 rem titelbild 1
137 :
140 fory=1to19step4:
150 forx=0to20:poke646,rnd(1)*7+1
160 sysjo:ifpeek(1001)=1then850
170 gosub200:printmid$(oj$(y/4),x+1,1);:poke36878,15:poke36878,0
180 next:print:print"{down}{down} ";:next
190 fort=0to3000:next:goto270
197 :
198 rem bewegung des maennchens
199 :
200 pokepo,32:pokepo+1,32:pokepo+22,32:pokepo+23,32
210 fa=co+x+y*22:a=4:pokefa,a:pokefa+1,a:pokefa+22,a:pokefa+23,a
220 po=sc+x+y*22:pokepo,2:pokepo+1,3:pokepo+22,18:pokepo+23,19
230 fort=0tolo:next
240 po=sc+x+y*22:pokepo,0:pokepo+1,1:pokepo+22,16:pokepo+23,17
250 fort=0tolo:next:
260 return
265 :
266 rem titel 2
267 :
270 print"{clr}{down}{wht}YOU{$a0}ARE{$a0}ON{$a0}HOLIDAY{$a0}IN{$a0}{down}{down}{down}{yel} {CBM-+}{CBM-+}{red} NEW{$a0}YORK{$a0}CITY {yel}{CBM-+}{CBM-+}
275 print"{down}{down}{down}{down}{grn} YOU{$a0}WALK{$a0}THROUGH{$a0}THE{$a0}{$a0}{down}{down}{down}{blu}";
280 TOWN{$a0}WHEN{$a0}IT{$a0}HAPPENS{$a0}{$a0}{$a0}{$a0}{$a0}{$a0}{$a0}{$a0}{down}{down}{down}{cyn}{CBM-S}{CBM-S}{CBM-S}{CBM-S}{CBM-S}{CBM-S}{CBM-S}
290 fort=0to9999:next
297 :
298 rem scene 1 in new york
299 :
300 print"{clr}{blk}   n      n    n n  o
310 print"n o_  n   _ n  ^ _ o_ ";
320 print"^ ^_nn^  o_ ^  ^o_ ^_n";
330 print"^o^__^^no__n^no^^_n^__";
340 print"^_^__^^_^___^^_^^_^^__";
350 print"^_^__^^_^___^^_^^_^^__";
360 foree=37888to37888+22:e1=rnd(1)*7+1:pokeee,e1:pokeee+22,e1:pokeee+44,e1:pokeee+66,e1
370 :pokeee+88,e1:pokeee+110,e1:next
380 print"{home}{wht}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{wht}NEW{wht}{rght}{wht}YORK{rght}{rght}{rght}{rght}{rght}{rght}{rght}{down}{down}{down}{down}{down}";
390 print"{red}{down}{down}<<<<<<<<<<<<<<<<<<<<<<";:fort=0to7:print"<<<<<<<<<<<<<<<<  <<<<";
400 next
410 print"{down}{down}{down}<<<<<<<<<<<<<<<<<<<<<<":rem "22 * <"
420 po=828:forx=0to15:y=6:gosub200:poke36878,15:poke36878,0:next
430 pokepo,32:pokepo+1,32:pokepo+22,32:pokepo+23,32
440 fory=6to15:lo=70:a=0
450 fa=co+x+y*22:a=4:pokefa,a:pokefa+1,a:pokefa+22,a:pokefa+23,a
460 po=sc+x+y*22:pokepo,8:pokepo+1,9:pokepo+22,24:pokepo+23,25
470 ify>8thenpokefa-22,2:pokefa-21,2:pokepo-22,60:pokepo-21,60
480 pokepo,32:pokepo+1,32:pokepo+22,32:pokepo+23,32
490 poke36878,9:foree=240to242:poke36877,ee:next:next
491 print"{up}{up}{up}{left}                 {rvof}";:rem 17 spaces
500 pokefa,2:pokefa+1,2:pokepo,60:pokepo+1,60
510 print"{up}de{left}{left}{down}tu";
520 poke36877,150:fort=15to0step-1:poke36878,t:next
530 pokefa+22,2:pokefa+23,2:pokepo+22,60:pokepo+23,60
540 print"{pur}{up}{left}{left}  {down}{left}{left}vw";
550 :poke36877,220:fort=10to0step-1:poke36878,t:next
560 fort=0to1500:next
570 print"{pur}{up}{left}{left}de{down}{left}{left}tu";
580 fort=0to1499:next
590 print"{pur}{up}{left}{left}  {down}{left}{left}vw";
600 fort=0to1499:next
610 print"{pur}{left}{left}{up}de{down}{left}{left}tu";
620 fort=0to1499:next
630 print"{pur}{left}{left}{up}@a{down}{left}{left}pq";
640 fort=0to999:next
650 print:print"{down}{blu}YOU{$a0}ARE{$a0}IN {$a0}NEW{$a0}YORKS {$a0} UNDERGROUND{$a0}SYSTEM ";
660 fort=0to5000:next
670 print"{up}{up}{rght} TRY{$a0}TO{$a0}ESCAPE{$a0}TO{$a0}THE          CITY        ";
680 y=y+2:po=832:gosub200:poke36878,15:poke36878,0
690 lo=70:fortt=0to3:x=x+1:gosub200:poke36878,15:poke36878,0:next
700 forx=19to0step-1:gosub710:poke36878,15:poke36878,0:next:goto770
710 pokepo,32:pokepo+1,32:pokepo+22,32:pokepo+23,32
720 fa=co+x+y*22:a=4:pokefa,a:pokefa+1,a:pokefa+22,a:pokefa+23,a
730 po=sc+x+y*22:pokepo,36:pokepo+1,35:pokepo+22,52:pokepo+23,51
740 fort=0tolo:next
750 po=sc+x+y*22:pokepo,34:pokepo+1,33:pokepo+22,50:pokepo+23,49
760 fort=0tolo:next:return
770 print"{up}{up}{rght}      PRESS{$a0}FIRE                        ";
780 forx=0to20:gosub200:sys7392:poke36878,15:poke36878,0
790 sysjo:ifpeek(1001)=1thenx=x+1:goto830
800 next:forx=20to0step-1:gosub710:sys7392:poke36878,5:poke36878,0
810 sysjo:ifpeek(1001)=1then830
820 next:goto780
830 if(peek(38228)and1)=0thensys7392
840 lo=10:forx=xto20:gosub200:poke36877,250:poke36878,15:poke36878,0:next
845 :
846 rem jetzt gehts ab in den ersten aufzug
847 :
850 ti$="000100":le=0
860 poke36879,8:poke4953,2:sys7360
870 fort=2to20step2:aa=int(rnd(1)*18):aa=4096+t+aa*22
880 pokeaa,32:pokeaa+1,32:pokeaa+22,32:pokeaa+23,32:pokeaa+44,32:pokeaa+45,32
890 pokeaa+66,32:pokeaa+67,32:next
900 poke36877,0:poke36876,0:poke36875,0:poke36874,0:lo=50
910 y=19:x=0:po=832:gosub200:poke7256,150
920 sysjo:ifpeek(1000)<>22thengosub2540:goto920
930 po=sc+x+y*22:x=x+2
940 ifpeek(po+2)<>32orpeek(po+24)<>32then:x=x-2:goto980
950 x=x-1:gosub200:x=x+1:gosub200:poke36878,15:poke36878,0:poke7256,peek(7256)-6
960 ifx=20then1000
970 goto920
980 print"{clr}":poke36879,8:poke36877,150:fort=15to0step-.3:poke36878,t:next:
990 poke198,0:goto850
995 :
996 rem achtung wilde zahlen !!!!
997 :
1000 gosub2700
1010 poke36879,25:print"{clr}{red}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}";
1020 print"{SHIFT-+}                    {SHIFT-+}";
1030 print"{SHIFT-+}                    {SHIFT-+}";
1040 print"{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}";
1050 print"{SHIFT-+}  {SHIFT-+}              {SHIFT-+}  {SHIFT-+}";
1060 print"{SHIFT-+}  {SHIFT-+}              {SHIFT-+}  {SHIFT-+}";
1070 print"{SHIFT-+}  {SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}  {SHIFT-+}";
1080 print"{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}          {SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}";
1090 print"{SHIFT-+}                    {SHIFT-+}";
1100 print"{SHIFT-+}       {SHIFT-+}{SHIFT-+}  {SHIFT-+}{SHIFT-+}       {SHIFT-+}";
1110 print"{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}      {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}";
1120 print"{SHIFT-+}      {SHIFT-+}      {SHIFT-+}      {SHIFT-+}";
1130 print"{SHIFT-+}      {SHIFT-+}  {SHIFT-+}{SHIFT-+}  {SHIFT-+}      {SHIFT-+}";
1140 print"{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}";
1150 print"{SHIFT-+}     {SHIFT-+}        {SHIFT-+}     {SHIFT-+}";
1160 print"{SHIFT-+}     {SHIFT-+}        {SHIFT-+}     {SHIFT-+}";
1170 print"{SHIFT-+}  {SHIFT-+}  {SHIFT-+}  {SHIFT-+}  {SHIFT-+}  {SHIFT-+}  {SHIFT-+}  {SHIFT-+}";
1180 print"{SHIFT-+}  {SHIFT-+}     {SHIFT-+}  {SHIFT-+}     {SHIFT-+}  {SHIFT-+}";
1190 print"{SHIFT-+}  {SHIFT-+}     {SHIFT-+}  {SHIFT-+}     {SHIFT-+}  {SHIFT-+}";
1200 print"{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}  {SHIFT-+}";
1210 print"                     <";
1220 print"                     <";
1230 print"{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}{SHIFT-+}";:poke4601,91:poke38393,2
1240 x=0:y=20:gosub210:lo=15:a$=ti$:ti$="000000"
1250 ze=1:fort=1to5
1260 a=rnd(1)*70+(t-1)*90+sc:ifpeek(a)<>32then1260
1270 a(t)=a:pokea,112+t:pokea+33792,rnd(1)*5+2:next
1280 poke37898,0:poke37899,0
1290 poke4107,val(right$(ti$,1))+112:poke4106,val(mid$(ti$,5,1))+112
1300 ifti>3600then2720
1310 sysjo:jw=peek(1000):ifpeek(1001)=1then1340
1320 ifjw=23then1290
1330 z5=-notz5and15:ifz5<>0then1390
1340 poke36878,15:poke36876,244:poke36877,0:poke36875,0:poke36874,0
1350 z1=int(rnd(1)*5+1):ifpeek(a(z1))<112orpeek(a(z1))>121then1380
1360 z2=int(rnd(1)*5+1):ifz2=z1orpeek(a(z2))<112orpeek(a(z2))>121then1380
1370 z3=peek(a(z1)):pokea(z1),peek(a(z2)):pokea(z2),z3
1380 poke36878,0:poke36876,0
1390 xx=0:yy=0:p2=0:sp=sc+x+y*22+23-peek(1000):ifjw=22thenp1=1:p2=23:xx=1:ju=1
1400 ifjw=24thenp1=0:p2=22:xx=-1:ju=2
1410 ifjw=1thenp1=22:p2=23:yy=1:ju=3
1420 ifjw=45thenp1=0:p2=1:yy=-1:ju=4
1430 ifp2=0then1290
1440 p3=peek(sp+p1):p4=peek(sp+p2):ifp3=91orp4=91then1290
1450 qw=11:ifp3>91orp4>91thengosub1530
1460 ifqw=0then1290
1470 x=xx+x:y=yy+y:ifx=20thenti$=a$:goto1580
1480 ifx=20thenx=x-1:goto1290
1490 ify<1theny=1:goto1290
1500 onjugosub200,710,2580,2640
1510 poke36878,15:poke36878,0:goto1290
1520 goto1290
1530 qw=0
1540 ifp3=ze+112orp4=ze+112thenze=ze+1:qw=1
1550 ifqw=1thenpoke36878,15:poke36876,220:fort=180to240:poke36876,t:next:poke36876,0:poke36878,0
1560 ifze=9thenqw=2
1570 return
1580 poke36877,234:fort=0to15step.2:poke36878,t:poke38371,t/2:poke38349,t/2:next
1590 fort=0to1000:next:gosub200:fort=0to22:poke4602+t,160:next:po=4140
1595 :
1596 rem catch the piplips !!!
1597 :
1600 le=1:gosub2700:zq=6
1610 poke36878,0:poke36876,0:poke36879,8:sys7424:poke36879,24:poke36877,0
1611 zq=zq-1
1620 cp=4117:ifzq<1then1660
1630 fort=1tozq
1640 pi=sc+rnd(1)*505:ifpeek(pi)<>32then1640
1650 pokepi,103:pokepi+33792,0:next
1660 pokepo,106:pokepo+33792,4:poke36878,15:poke4601,102:poke38393,2:poke4600,32
1670 sysjo:we=peek(1000):ifwe=23then1670
1680 cc=cc+1and3:ifcc=0thenpokecp,160:cp=cp+22:poke36877,240:poke36878,15
1690 ifcp>4579then1770
1700 ifcc=1thenpoke36877,0
1710 pokepo,32:po=po+23-we:ifpeek(po)<>32andpeek(po)<>103andpeek(po)<>102thenpo=po-23+we
1720 ifpeek(po)=103thenpoke36877,0:poke36878,15:fortt=0to5:fort=233to239
1721 poke36876,t
1730 ifpeek(po)=103thenpokepo+33792,rnd(1)*8:next:next:goto1610
1740 ifpeek(po)=102then1800
1750 pokepo,106:pokepo+33792,4:poke36878,15:poke36878,0
1760 fort=0to000:next:goto1670
1770 poke36879,8:print"{clr}{down}{down}{down}{down}{down}{down}{down}{down}{wht}     TIME IS OUT":print"{down}     START AGAIN":le=0
1780 poke36876,220:poke36877,0:poke36878,0:fort=0to224:poke36878,t:next
1781 poke36876,0
1790 fort=0to2000:next:goto1600
1795 :
1796 rem der aufzuege zweiter teil
1797 :
1800 pokepo,106:pokepo+33792,4:sys5000:fort=0to500:next:gosub2700
1810 poke36879,30:poke4953,2:sys7360
1820 fort=2to20step2:aa=int(rnd(1)*18):aa=4096+t+aa*22
1830 pokeaa,32:pokeaa+1,32:pokeaa+22,32:pokeaa+23,32:pokeaa+44,32:pokeaa+45,32
1840 ift/4=int(t/4)thenpokeaa+66,32:pokeaa+67,32
1850 next:poke36877,0:poke36876,0:poke36875,0:poke36874,0:lo=50
1860 y=19:x=0:po=832:gosub200:poke7256,110
1870 sysjo:ifpeek(1000)<>22thengosub2540:goto1870
1880 po=sc+x+y*22:x=x+2
1890 ifpeek(po+2)<>32orpeek(po+24)<>32then:x=x-2:goto1930
1900 x=x-1:gosub200:x=x+1:gosub200:poke36878,15:poke36878,0:poke7256,peek(7256)-10
1910 ifx=20then1950
1920 goto1870
1930 print"{clr}":poke36879,8:poke36877,150:fort=15to0step-.3:poke36878,t:next:
1940 goto1810
1950 fort=0to200:next:gosub2700
1955 :
1956 rem jetzt kommt die glibberbahn
1957 :
1960 poke7645,234:sys7424:poke36879,26:df=4101:poke36877,0:poke36876,0
1961 poke36878,15
1970 print"{home}{pur}                      ":fort=4117to4608step22:poket,32:next:rem 22 spaces
1971 poket-23,32
1980 poke7645,96:po=4140:pokepo,106:pokepo+33792,4:poke36876,0:poke4096,102
1990 poke37888,2:ew=23
2000 ifpeek(df)=106orpeek(8693-df)=106thenpokepo,95:goto2080
2010 poke36877,(df-4096)/8+188:pokedf,95:pokedf-44,32:df=df+44:
2020 poke8737-df,95:poke8781-df,32
2030 ifdf>4629thendf=4101
2040 poke36877,0
2050 ifew=23thensysjo:we=peek(1000):ifwe=23thenwe=ew
2060 ew=we:pokepo,32:po=po+23-we
2070 ifpeek(po)<>32andpeek(po)<>95andpeek(po)<>102thenpo=po-23+we:ew=23
2080 ifpeek(po)=95thenpoke36879,8:poke36877,220:fort=15to0step-.5:poke36878,t
2090 ifpeek(po)=95thennext:le=2:goto1800
2100 ifpeek(po)=102then2120
2110 pokepo,106:pokepo+33792,4:goto2000
2120 gosub2700:print"{clr}":x=20:y=20:gosub710:gosub2740
2130 print"{home}{blu}THE{$a0}END{$a0}IS{$a0}NEAR":gosub2740
2140 print"{down}{down}{down}{yel}YOU HAVE":print"{down}{down}{grn} {CBM-Z}     NUMBERS":poke4255,111+ze:ifze<6then2450
2150 gosub2740:ifzq=6thenprint"{down}{down}{down}{cyn} {CBM-Z}  NO";:goto2490
2160 print"{down}{down}{down}{cyn} {CBM-Z}   ";:fort=1to5-zq:print"{red}{CBM-M}";:next:ifzq<>0then2490
2170 print"{yel} PIPLIPS":gosub2740
2180 fort=0to110:poke36878,15:poke646,rnd(1)*7+1
2181 print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down} YOU{$a0}SOLVED{$a0}THE GAME
2190 poke36874,212+t/3:poke36875,t/2+191:poke36876,127+t:next:poke36878,0
2191 poke36877,0
2200 poke36876,0:poke36875,0:poke36874,0:poke36877,254:fort=15to0step-.2
2201 poke36878,t
2210 next:poke36878,0:poke36877,0
2220 print"{clr}{pur}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}          <<<<<<<<<<<<";
2230 lo=70:y=17:forx=20to10step-1:gosub710:poke36878,15:poke36878,0
2240 pokesc+x+y*22+46,32:next
2250 fortq=0to10:sys7168:fortt=0to100:next:next
2260 print"{home}{wht}{down}{down}{down}{down}{down}{down}{down}{down}<<<<<<<<<<<<<<<<<<<<<<
2270 print"{home}{blk}   n      n    n n  o
2280 print"n o_  n   _ n  ^ _ o_ ";
2290 print"^ ^_nn^  o_ ^  ^o_ ^_n";
2300 print"^o^__^^no__n^no^^_n^__";
2310 print"^_^__^^_^___^^_^^_^^__";
2320 print"^_^__^^_^___^^_^^_^^__";
2330 foree=37888to37888+22:e1=rnd(1)*7+1:pokeee,e1:pokeee+22,e1:pokeee+44,e1
2331 pokeee+66,e1
2340 :pokeee+88,e1:pokeee+110,e1:next
2350 print"{home}{wht}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down} YOU{$a0}ARE{$a0}NOW {$a0}BACK{$a0}IN{$a0}{$a0}{$a0}{$a0}  {$a0}{$a0}{red}{down}{down}NEW{$a0}YORK
2360 print"{down}{down}{grn}YOUR TIME {CBM-Z}{pur}   {grn}";
2370 a$=ti$:fort=3to4:poke4478+t,asc(mid$(a$,t,1))+64:next:print"MINUTES
2380 fort=5to6:poke4498+t,asc(mid$(a$,t,1))+64:next:print"{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}SECONDS
2390 po=828
2400 poke646,rnd(1)*8+1:print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}  FIRE FOR NEW GAME":
2410 sysjo:ifpeek(1001)=1then850
2420 x=x+1:y=6:ifx=21thenx=0
2430 gosub200:poke36878,15:poke36878,0:goto2400
2440 end
2450 print"{down}{down}{down}{down}{down}{wht}THERE ARE MORE NUMBERS{down}{down}{down}{wht}START AGAIN   {CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}"
2460 print"{down}{down}{red}     PRESS{$a0}FIRE"
2470 sysjo:ifpeek(1001)=0then2470
2480 goto850
2490 print" PIPLIPS":gosub2740
2491 print"{down}{down}{down}{wht}THERE{$a0}ARE{$a0}MORE{$a0}PIPLIPS{down}{down}{wht}START{$a0}AGAIN{$a0}  {CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}{CBM-K}"
2500 print"{down}{down}{red}     PRESS{$a0}FIRE"
2510 sysjo:ifpeek(1001)=0then2510
2520 goto850
2530 goto2530
2540 sys7168
2550 ifpeek(sc+x+y*22)<>0theny=y-1
2560 ify<0theny=21
2570 return
2580 pokepo,32:pokepo+1,32:pokepo+22,32:pokepo+23,32
2590 fa=co+x+y*22:a=4:pokefa,a:pokefa+1,a:pokefa+22,a:pokefa+23,a
2600 po=sc+x+y*22:pokepo,163:pokepo+1,164:pokepo+22,179:pokepo+23,180
2610 fort=0tolo:next
2620 po=sc+x+y*22:pokepo,161:pokepo+1,162:pokepo+22,177:pokepo+23,178
2630 return
2640 pokepo,32:pokepo+1,32:pokepo+22,32:pokepo+23,32
2650 fa=co+x+y*22:a=4:pokefa,a:pokefa+1,a:pokefa+22,a:pokefa+23,a
2660 po=sc+x+y*22:pokepo,161:pokepo+1,162:pokepo+22,177:pokepo+23,178
2670 fort=0tolo:next
2680 po=sc+x+y*22:pokepo,163:pokepo+1,164:pokepo+22,179:pokepo+23,180
2690 return
2700 poke36879,8:le=le+1:print"{clr}{down}{down}{down}{down}{down}{down}{down}{down}{down}{red}YOU   HAVE  {$a0}MASTERED {down}{down}{down}LEVEL   ";:fort=1tole
2710 print"{yel}{CBM-+}";:sys7296:next:fort=0to3000:next:return
2720 poke36879,8:print"{clr}{down}{down}{down}{down}{down}{down}{wht}TIME{$a0}IS{$a0}OUT":print"{down}{down}{red}TRY{$a0}AGAIN{$a0}LEVEL {yel}{CBM-+}";:le=0:sys7296
2730 fort=0to3000:next:goto850
2740 poke36876,0:poke36877,0:fort=15to0step-.2:poke36878,t:poke36876,230-t:next
2750 return
2760 goto2760
Listing 3. Das Basicprogramm von »Underground«
PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →