C 16/116
Spiele

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)
Tabelle 1. Routinen für »Turbo-Racer«

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
Tabelle 2. Bedienung von »Turbo-Racer«

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)
10 a=a+1
20 ifa=1thenload"teil1",8,1
30 ifa=2thenload"teil2",8,1
40 ifa=3thensys9506
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
Listing 1. »Turbo-Racer« (Teil 1). Bitte mit eingebautem Monitor eingeben.
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
Listing 2. »Turbo-Racer« (Teil 2). Bitte mit eingebautem Monitor eingeben.
PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →