Auf der Rennstrecke
Das erste Autorennen für den C 16 ist da. »Turbo-Racer«, ein Spielprogramm mit Gangschaltung.
Turbo-Racer« ist vollständig in Maschinensprache geschrieben und natürlich entsprechend flott. Wenn Sie das Programm (Listings 1 und 2) mit Hilfe des eingebauten Maschinensprachemonitors eingetippt haben, speichern Sie es am besten sofort (eingeben: S "TURBO-RACER",1,2000,3E68 für Datasette; S "TURBO-RACER",8,2000,3E68 für Floppy). Das hat auch seinen Grund, denn schon beim geringsten Tippfehler kann das Programm in der Speicherwüste Ihres Computers verschwinden, oder das vorhandene Programm wird gar zerstört. In der Tabelle 1 haben wir Ihnen die einzelnen Routinen des Programms aufgelistet.
| ADRESSE | VARIABLE/ROUTINE |
|---|---|
| $2000-$2048 | JOY/KEY-Abfrage + CRASH CHECK |
| $2049-$209F | Hindernisse erzeugen + SCORE und neue Parameter setzen |
| $20A0-$20E3 | Initialisierung |
| $20E4-$2139 | Fahrbahn erzeugen |
| $201C-$202E | Spielfigur löschen |
| $2034-$203C | Spielfigur POKEn |
| $2247-$225F | Zufallsgenerator/Zahl |
| $2260 | Zahl von Zufallsgenerator |
| $2267-$2275 | Filtert Werte von Zufallsgenerator aus. Zufallszahl muß < =($2266) sein |
| $2266 | Grenze für Zufallszahlen |
| $2191-$21CE | Routine zum SCORE setzen |
| $24FB-$2521 | JOYSTICK-Abfrage von PORT 1/Wert in Y-Register |
| $24C7-$24F8 | KEYBOARD-Abfrage und Ausführung |
| $2522-$2590 | Anfangsbild PRINTen + KEY/JOY OPTION wählen |
| $2441-$2462 | Neuen Zeichensatz einschalten und zu Spielstart springen |
| $22E5 | Beginn der Hauptschleife (Spielanfang) |
| $DA5E | SCROLL-Routine (aus Betriebssystem) |
| $D88D | CLEARSCREEN-Routine |
| $21FF | Position von Spielfigur (1 bis 40) |
| $21FE | CRASH-FLAG |
| $21FC | Anzahl der Hindernisse/Zeile |
| $21F4 | Fahrbahnbreite |
| $21F3 | FLAG für Richtung der Spielfigur (LI/MI/RE) |
| $21F2 | Kurvenhäufigkeit |
| $2200/$2201 | SCORE/LOW-HIGH |
| $220E | Wert für Verzögerung/geringer Wert – hohe Ablaufgeschwindigkeit |
| $C6 | KEYBOARD-Buffer |
| $E3CE | Fragt STOP-Taste ab |
| $EBD9 | GET-Routine/ASCII-Wert in Akku |
| $2385-$23EF | Tonerzeugen (Kopie von Betriebssystem) |
| $B8BD | Lautstärke setzen/davor Lautstärke in X-Register laden |
| $03/$04 | Tonlänge (LOW-HIGH) |
| $3BE3 | SOUND-Generator (1 bis 3) |
| $3BE4/$3BE5 | Tonhöhe (LOW-HIGH) |
| $FFD2 | Zeichenausgabe/ASCII-Wert in Akku |
| $0C00 | Start des Bildschirmspeichers (Text) |
Starten Sie »Turbo-Racer« mit SYS 9506, und ein Menü empfängt Sie, um Ihnen die freie Wahl zwischen Tastatur und Joystick zu lassen. Nachdem Sie der Computer darüber in Kenntnis gesetzt hat, wie die Gänge zu schalten sind (Tabelle 2), können Sie durch einen beliebigen Tastendruck mit dem Spiel beginnen.
| Joystick: | Gang 1: | Feuer + Hebel nach hinten |
| Gang 2: | Feuer | |
| Gang 3: | Feuer + Hebel nach vorne | |
| Tastatur: | Gang 1: | A-Taste |
| Gang 2: | S-Taste | |
| Gang 3: | D-Taste | |
| Steuerung: | < = links | |
| > = rechts |
Ziel des Spiels ist es, mit Ihrem Fahrzeug so weit wie möglich zu kommen, ohne ein entgegenkommendes Auto oder die Leitplanke zu rammen. Mit der Zeit wird es immer schwieriger, diese Aufgabe zu bewältigen, da die Fahrbahn immer schmaler wird, die Hindernisse zunehmen und die Spielgeschwindigkeit steigt. Zuletzt sind nur noch wenige Hindernisse auf dem Bildschirm, denn die Fahrbahn ist gerade noch so breit, daß Ihr Fahrzeug hindurchfahren kann. Aber probieren Sie es doch selbst.
(Eduard Chen/kn)PROGRAMM : TEIL1 2000 2598 ----------------------------------- 2000 : AE FF 21 AD FD 3F C9 01 AF 2008 : F0 03 4C 0D 24 4C 82 24 26 2010 : A9 20 9D C0 0F CA 10 01 D2 2018 : E8 4C 27 20 A9 20 9D C0 88 2020 : 0F E8 E0 28 D0 01 CA BD 9C 2028 : C0 0F C9 20 F0 06 4C 3D D1 2030 : 20 EA EA 60 A9 00 9D C0 1F 2038 : 0F 8E FF 21 60 4C 82 23 6B 2040 : 60 EA EA EA EA EA EA EA B5 2048 : EA A2 00 A9 02 AC FB 21 70 2050 : E8 99 28 0C 98 69 07 A8 D3 2058 : A9 02 EC FC 21 D0 F1 AC 97 2060 : 01 22 AE 00 22 E8 8E 00 C2 2068 : 22 E0 FF D0 04 C8 8C 01 CF 2070 : 22 C0 00 D0 04 E0 C8 F0 59 2078 : 19 C0 01 D0 04 E0 90 F0 B7 2080 : 14 C0 03 D0 04 E0 20 F0 79 2088 : 0F C0 04 D0 04 E0 B0 F0 FE 2090 : 0A 60 4C 4F 21 4C 5C 21 F0 2098 : 4C 69 21 4C 76 21 EA EA 5D 20A0 : A9 07 8D 08 22 A9 11 8D 00 20A8 : 09 22 A9 00 8D FE 21 A9 D5 20B0 : 14 8D FF 21 A9 01 8D FC 82 20B8 : 21 A9 00 8D 00 22 A9 28 68 20C0 : 38 ED 09 22 18 69 01 8D 61 20C8 : 0B 22 A9 02 8D 0A 22 A9 94 20D0 : 90 8D 04 22 A9 01 8D 05 4F 20D8 : 22 A9 20 8D 06 22 A9 03 A7 20E0 : 8D 07 22 60 AD 02 22 38 69 20E8 : ED 08 22 30 38 AE 03 22 B1 20F0 : AD 0A 22 C9 00 D0 0D E8 F1 20F8 : EC 0B 22 D0 01 CA 8E 03 B3 2100 : 22 4C 0D 21 CA E0 00 D0 05 2108 : 01 E8 8E 03 22 A9 01 9D 30 2110 : 27 0C AD 09 22 18 6D 03 68 2118 : 22 8D 0C 22 A9 01 AE 0C BE 2120 : 22 9D 27 0C 60 AD 0A 22 3C 2128 : C9 00 D0 08 A9 01 8D 0A 13 2130 : 22 4C ED 20 A9 00 8D 0A DD 2138 : 22 4C ED 20 A5 C6 C9 38 28 2140 : D0 09 A9 14 A2 08 A0 01 71 2148 : 4C 7F 21 C9 3B D0 09 A9 87 2150 : 0F A2 0B A0 02 4C 7F 21 4A 2158 : C9 08 D0 09 A9 0B A2 0F 16 2160 : A0 02 4C 7F 21 C9 0B D0 33 2168 : 09 A9 08 A2 14 A0 03 4C 87 2170 : 7F 21 C9 10 D0 C6 A9 04 E6 2178 : A2 1B A0 01 8C 0E 22 8D CD 2180 : 09 22 8E 08 22 8C FC 21 FC 2188 : A9 29 38 ED 09 22 8D 0B 80 2190 : 22 AD 09 22 C9 0F D0 07 76 2198 : A0 00 A2 C8 4C C8 21 C9 1D 21A0 : 0B D0 07 A2 90 A0 01 4C D4 21A8 : C8 21 C9 08 D0 07 A2 20 84 21B0 : A0 03 4C C8 21 C9 04 D0 10 21B8 : 07 A0 04 A2 B0 4C C8 21 38 21C0 : C9 14 D0 0A A2 00 A0 00 B5 21C8 : 8E 00 22 8C 01 22 AD 01 4A 21D0 : 22 60 EA 8D 0B 22 60 AD 2D 21D8 : 60 22 8D 03 22 20 67 22 12 21E0 : AD 60 22 8D FB 21 A9 64 30 21E8 : 8D 66 22 20 67 22 AD 60 34 21F0 : 22 8D 02 22 20 49 20 20 AB 21F8 : 5E DA EA CB 01 EA 00 1A 93 2200 : 26 00 10 0E 90 01 20 03 84 2208 : 07 11 00 18 1F EA EA EA 66 2210 : AD 01 22 C9 05 F0 01 60 9C 2218 : A9 14 CD 00 22 D0 F8 A2 11 2220 : 00 A9 01 EC 03 22 F0 07 E6 2228 : 9D 27 0C E8 4C 23 22 A2 25 2230 : 28 EC 0C 22 F0 07 9D 27 22 2238 : 0C CA 4C 31 22 A9 FF 8D 6D 2240 : FE 21 60 EA EA EA EA 38 66 2248 : AD 61 22 6D 64 22 6D 65 B4 2250 : 22 8D 60 22 A2 04 BD 60 97 2258 : 22 9D 61 22 CA 10 F7 60 B3 2260 : 10 10 CB 5B F9 78 64 20 0C 2268 : 47 22 AD 60 22 18 69 01 C2 2270 : ED 66 22 10 F2 60 EA EA CF 2278 : EA A9 27 8D 66 22 20 67 79 2280 : 22 AD 60 22 8D 03 22 20 8F 2288 : 67 22 AD 60 22 8D FB 21 38 2290 : A9 64 8D 66 22 20 67 22 A1 2298 : AD 60 22 8D FA 22 20 49 83 22A0 : 20 20 5E DA 20 00 20 20 86 22A8 : E4 20 20 10 22 A9 27 8D CE 22B0 : 66 22 A2 20 A0 FF 88 C0 82 22B8 : 00 D0 FB E0 00 CA D0 F4 BF 22C0 : 4C 87 22 A9 0A 8D 66 22 79 22C8 : 20 67 22 AD 60 00 8D CD B2 22D0 : 22 EA EA EA EA EA EA A9 84 22D8 : 16 8D 66 22 20 67 22 AD B4 22E0 : 60 22 8D 03 22 20 67 22 1A 22E8 : AD 60 22 8D FB 21 A9 64 38 22F0 : 8D 66 22 20 67 22 AD 60 3C 22F8 : 22 8D 02 22 20 E4 20 20 90 2300 : 5E DA 20 00 20 20 49 20 3C 2308 : 20 10 22 20 62 20 A9 27 D9 2310 : 8D 66 22 AE FE 3F A0 FF 9B 2318 : 88 C0 00 D0 FB CA E0 00 B4 2320 : D0 F4 AC FE 3F C0 15 D0 65 2328 : 1A 20 00 24 A9 0F A0 F4 56 2330 : 20 84 3B 20 85 23 20 FA 4D 2338 : 23 A9 08 A0 00 20 84 3B D0 2340 : 20 85 23 C0 30 D0 1A 20 36 2348 : 00 24 A9 0F A0 A4 20 84 5F 2350 : 3B 20 85 23 20 FA 23 A9 1B 2358 : 02 A0 30 20 84 3B 20 85 68 2360 : 23 C0 80 D0 1A 20 00 24 08 2368 : A9 0F A0 F4 20 84 3B 20 B3 2370 : 85 23 20 FA 23 A9 02 A0 B7 2378 : 20 20 84 3B 20 85 23 4C 84 2380 : E5 22 4C 55 25 AE E3 3B 02 2388 : CA E0 03 B0 10 86 80 AC 2A 2390 : E4 3B AD E5 3B 84 7E 85 17 2398 : 7F A4 03 A6 80 A5 04 E0 06 23A0 : 02 D0 01 CA 48 C0 00 D0 D0 23A8 : 07 C9 00 D0 03 C8 D0 0F 86 23B0 : 98 48 20 C0 8C BD FE 04 47 23B8 : 1D FC 04 D0 F6 68 A8 98 F5 23C0 : 49 FF 18 69 01 EA 9D FC 14 23C8 : 04 68 49 FF 69 00 9D FE 5E 23D0 : 04 A5 7E 9D 0E FF BD B8 43 23D8 : B8 AA BD 10 FF 29 FC 05 9E 23E0 : 7F 9D 10 FF A6 80 BD BA 0D 23E8 : B8 0D 11 FF 8D 11 FF 60 8D 23F0 : EA A9 02 85 03 A9 00 85 69 23F8 : 04 60 A9 01 8D E3 3B 60 5C 2400 : A9 03 8D E3 3B 60 8D E5 C3 2408 : 3B 8C E4 3B 60 A5 C6 C9 0C 2410 : 2F D0 03 4C 10 20 C9 2C 73 2418 : D0 03 4C 1C 20 C9 0A D0 1B 2420 : 08 A9 80 8D FE 3F 4C 27 38 2428 : 20 C9 0D D0 08 A9 30 8D 34 2430 : FE 3F 4C 27 20 C9 12 D0 00 2438 : 05 A9 15 8D FE 3F 4C 27 72 2440 : 20 20 8B D8 20 A0 20 A9 49 2448 : 00 8D 01 22 A9 80 8D FE 66 2450 : 3F A2 08 20 C0 B8 20 6F 18 2458 : 3B A9 00 85 37 8D 12 FF 41 2460 : A9 32 85 38 A9 3C 8D 13 64 2468 : FF 4C E5 22 F8 A9 3C 8D 34 2470 : 13 FF A9 00 8D 12 FF A9 AA 2478 : 00 85 33 A9 20 85 34 4C D4 2480 : E5 22 20 FB 24 AE FF 21 F8 2488 : C0 07 D0 03 4C 10 20 C0 A8 2490 : 03 D0 03 4C 1C 20 C0 81 0F 2498 : D0 08 A9 15 8D FE 3F 4C E0 24A0 : 27 20 C0 85 D0 05 A9 80 95 24A8 : 8D FE 3F C0 80 D0 05 A9 92 24B0 : 30 8D FE 3F C0 04 F0 DB F6 24B8 : C0 06 F0 D0 C0 02 F0 D3 59 24C0 : C0 08 F0 C8 4C 27 20 A5 A3 24C8 : C6 C9 2F D0 03 4C 10 20 6C 24D0 : C9 2C D0 03 4C 1C 20 C9 FE 24D8 : 0A D0 08 A9 80 8D FE 3F 70 24E0 : 4C 27 20 C9 0D D0 08 A9 CC 24E8 : 30 8D FE 3F 4C 27 20 C9 98 24F0 : 12 D0 05 A9 15 8D FE 3F 19 24F8 : 4C 27 20 A2 00 BD FB BF 92 2500 : AA 78 8E 08 FF AD 08 FF 18 2508 : 8E 08 FF CD 08 FF D0 F2 FD 2510 : 58 49 FF A8 29 0F AA BD 53 2518 : F0 BF C0 0F 90 02 09 80 38 2520 : A8 60 A2 00 8A 48 BD 09 95 2528 : 3D C9 FF F0 09 20 D2 FF 45 2530 : 68 AA E8 4C 24 25 20 D9 51 2538 : EB C9 00 F0 F9 C9 31 D0 7A 2540 : 08 A9 01 8D FD 3F 4C 62 DF 2548 : 25 C9 32 D0 E9 A9 00 8D FF 2550 : FD 3F 4C 6D 25 A9 FF 8D 68 2558 : 12 FF A9 D0 8D 13 FF 4C F8 2560 : 22 25 A9 00 85 30 A9 3E 7C 2568 : 85 31 4C 75 25 A9 33 85 BF 2570 : 30 A9 3E 85 31 A0 00 B1 31 2578 : 30 C9 FF F0 07 20 D2 FF 67 2580 : C8 4C 77 25 20 D9 EB C9 05 2588 : 00 F0 F9 A9 10 8D 03 22 72 2590 : 4C 41 24 00 FF FF FF FF 86
PROGRAMM : TEIL2 3B00 3E68 ----------------------------------- 3B00 : 00 00 00 00 00 00 00 00 01 3B08 : 00 00 00 00 00 00 00 00 09 3B10 : 00 00 00 00 00 00 00 00 11 3B18 : 00 00 00 00 00 00 00 00 19 3B20 : 01 CA 48 C0 00 D0 07 C9 E7 3B28 : 00 D0 03 C8 D0 0F 98 48 E3 3B30 : 20 C0 8C BD FE 04 1D FC 0A 3B38 : 04 D0 F6 68 A8 98 49 FF E3 3B40 : 18 69 01 EA 9D FC 04 68 4D 3B48 : 49 FF 69 00 9D FE 04 A5 18 3B50 : 7E 9D 0E FF BD B8 B8 AA FA 3B58 : BD 10 FF 29 FC 05 7F 9D 73 3B60 : 10 FF A6 80 BD BA B8 0D D8 3B68 : 11 FF 8D 11 FF EA 60 A9 2A 3B70 : 02 85 03 A9 00 85 04 60 28 3B78 : A9 01 8D E3 3B 60 A9 03 E5 3B80 : 8D E3 3B 60 8D E5 3B 8C E8 3B88 : E4 3B 60 A5 C6 C9 2F D0 F0 3B90 : 03 4C 10 20 C9 2C D0 03 09 3B98 : 4C 1C 20 C9 0A D0 08 A9 CE 3BA0 : 80 8D FE 3F 4C 27 20 C9 A0 3BA8 : 0D D0 08 A9 30 8D FE 3F 3E 3BB0 : 4C 27 20 C9 12 D0 05 A9 E0 3BB8 : 15 8D FE 3F 4C 27 20 FF BA 3BC0 : FF FF FF FF FF FF FF FF BF 3BC8 : FF FF FF FF FF FF FF FF C7 3BD0 : FF FF FF FF FF FF FF FF CF 3BD8 : FF FF FF FF FF FF FF FF D7 3BE0 : FF FF FF 01 20 02 FF FF 11 3BE8 : FF FF FF FF FF FF FF FF E7 3BF0 : FF FF FF FF FF FF FF FF EF 3BF8 : FF FF FF FF FF FF FF FF F7 3C00 : 3C 99 FF 99 18 99 FF C3 12 3C08 : FF 24 FF 92 FF 24 FF 92 B2 3C10 : 3C 42 C3 FF DB FF E7 3C 34 3C18 : 3C 00 00 00 00 00 00 00 55 3C20 : 00 00 00 00 00 00 00 00 21 3C28 : 00 00 00 00 00 00 00 00 29 3C30 : 00 00 00 00 00 00 00 00 31 3C38 : 00 00 00 00 00 00 00 00 39 3C40 : 00 00 00 00 00 00 00 00 41 3C48 : 00 00 00 00 00 00 00 00 49 3C50 : 00 00 00 00 00 00 00 00 51 3C58 : 00 00 00 00 00 00 00 00 59 3C60 : 00 00 00 00 00 00 00 00 61 3C68 : 00 00 00 00 00 00 00 00 69 3C70 : 00 00 00 00 00 00 00 00 71 3C78 : 00 00 00 00 00 00 00 00 79 3C80 : FF FF FF FF FF FF FF FF 7F 3C88 : FF FF FF FF FF FF FF FF 87 3C90 : FF FF FF FF FF FF FF FF 8F 3C98 : FF FF FF FF FF FF FF FF 97 3CA0 : FF FF FF FF FF FF FF FF 9F 3CA8 : FF FF FF FF FF FF FF FF A7 3CB0 : FF FF FF FF FF FF FF FF AF 3CB8 : FF FF FF FF FF FF FF FF B7 3CC0 : FF FF FF FF FF FF FF FF BF 3CC8 : FF FF FF FF FF FF FF FF C7 3CD0 : FF FF FF FF FF FF FF FF CF 3CD8 : FF FF FF FF FF FF FF FF D7 3CE0 : FF FF FF FF FF FF FF FF DF 3CE8 : FF FF FF FF FF FF FF FF E7 3CF0 : FF FF FF FF FF FF FF FF EF 3CF8 : FF FF FF FF FF FF FF FF F7 3D00 : 00 00 00 00 00 00 00 00 01 3D08 : 00 93 11 12 2A 2A 2A 2A 49 3D10 : 2A 2A 2A 2A 2A 2A 2A 2A 10 3D18 : 2A 20 20 54 55 52 42 4F 75 3D20 : 2D 52 41 43 45 52 20 20 D7 3D28 : 2A 2A 2A 2A 2A 2A 2A 2A 28 3D30 : 2A 2A 2A 2A 92 11 20 20 B2 3D38 : 20 20 20 20 20 20 20 20 38 3D40 : 20 42 59 20 45 44 57 41 32 3D48 : 52 44 20 43 48 45 4E 20 55 3D50 : 31 39 38 35 20 20 20 20 96 3D58 : 20 20 20 20 20 20 20 20 58 3D60 : 20 20 20 20 20 20 20 20 60 3D68 : 20 20 20 20 20 20 20 20 68 3D70 : 20 20 20 20 20 20 20 20 70 3D78 : 20 20 20 20 20 20 20 20 78 3D80 : 20 20 20 20 20 20 11 11 26 3D88 : 20 20 20 20 20 20 20 20 88 3D90 : 20 20 12 20 42 49 54 54 B1 3D98 : 45 20 57 41 45 48 4C 45 3E 3DA0 : 4E 20 53 49 45 3A 20 92 C8 3DA8 : 11 11 9D 9D 9D 9D 9D 9D D5 3DB0 : 9D 9D 9D 9D 9D 9D 9D 9D AF 3DB8 : 9D 9D 9D 9D 9D 9D 12 20 8E 3DC0 : 31 20 92 20 2E 2E 2E 2E 13 3DC8 : 2E 2E 2E 4A 4F 59 53 54 98 3DD0 : 49 43 4B 20 20 20 20 20 56 3DD8 : 20 20 20 20 20 20 20 20 D8 3DE0 : 20 20 20 20 20 20 20 20 E0 3DE8 : 11 12 20 32 20 92 20 2E C4 3DF0 : 2E 2E 2E 2E 2E 2E 4B 45 93 3DF8 : 59 42 4F 41 52 44 FF 00 B6 3E00 : 11 20 20 20 20 20 20 20 F1 3E08 : 20 20 20 20 20 20 20 47 57 3E10 : 41 45 4E 47 45 3A 12 46 6B 3E18 : 45 55 45 52 92 2F 12 46 1B 3E20 : 92 2B 56 4F 52 4E 45 2F D2 3E28 : 12 46 92 2B 48 49 4E 54 18 3E30 : 45 4E FF 11 20 20 20 20 82 3E38 : 20 20 20 20 20 20 20 20 38 3E40 : 12 53 54 45 55 45 52 55 2D 3E48 : 4E 47 92 3A 20 3C 20 3E 07 3E50 : 20 2D 54 41 53 54 45 4E CE 3E58 : 2F 12 47 41 45 4E 47 45 F9 3E60 : 92 3A 41 2F 53 2F 44 FF 05