29.10.2013 Aufrufe

CP1 Anleitung (Manual) - 8Bit-Homecomputermuseum

CP1 Anleitung (Manual) - 8Bit-Homecomputermuseum

CP1 Anleitung (Manual) - 8Bit-Homecomputermuseum

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Listing 52: Roulette<br />

Adresse Mnemonics Code Kommentar<br />

001 CO: AKO 040 04.040 lade „40" ...<br />

002 ABS 124 06.124 als Startwert für Verlangsamung speichern<br />

003 AKO 001 04.001 lade „1" ...<br />

004 ABS 125 06.125 als erstes LED-Muster speichern (dual: 00000001)...<br />

005 ABS 126 06.126 als ersten Verlangsamungswert speichern ...<br />

006 ABS 127 06.127 als Schrittweite speichern ...<br />

007 ABS 123 06.123 und als Tastenzustand: „1" = frei (nicht gedrückt)<br />

008 C1: LDA 125 05.125 lade das LED-Muster<br />

009 P2A 000 18.000 gib es aus an Port 2 (LED-Reihe)<br />

010 AKO 129 04.129 Test, ob LED Nr. 8 erreicht: lade „129"<br />

011 SUB 125 08.125 subtrahiere das Muster davon, also maximal<br />

10000000 (dual) = 128 (dezimal)<br />

012 VGR 127 12.127 ist der Rest größer als „1", also ,,128" als Muster noch<br />

nicht erreicht?<br />

013 SPB 016(C2) 11.016 falls ja, weiter in der Bit-Shift-Schleife<br />

014 AKO 001 04.001 sonst neuer Musterstart: lade „1"<br />

015 SPU 018(C3) 09.018 springe zum Speichern als LED-Muster<br />

016 C2: LDA 125 05.125 Multiplikation mit „2": lade das Muster<br />

017 ADD 125 07.125 addiere es noch einmal dazu<br />

018 C3: ABS 125 06.125 speichere es als neues Muster<br />

019 AKO 001 04.001 lade „1"<br />

020 P1A 002 17.002 gib sie aus an Port 1 Klemme 2 (Lautsprecher)<br />

021 VZG 015 03.015 warte kurz (Lautsprecher ist jetzt an)<br />

022 AKO 000 04.000 lade „0"<br />

023 P1A002 17.002 gib sie aus an Port 1 Klemme 2 (Lautsprecher aus)<br />

024 LDA 126 05.126 lade den aktuellen Verlangsamungswert aus dem<br />

Speicher...<br />

025 W1 VZG 003 03.003 und verzögere kurz<br />

026 SUB 127 08.127 verringere die Verlangsamung um „1"<br />

027 VGR 127 12.127 ist sie noch größer als „1", also noch nicht lange genug<br />

gewartet?<br />

028 SPB 025 (W1) 11.025 falls ja, warte weiter in der Schleife<br />

029 P1E001 16.001 sonst lies Port 1 Klemme 1 (Taster)<br />

030 VGL 127 10.127 ist der Wert „1", also nicht gedrückt?<br />

031 SPB 034 (W2) 11.034 falls ja, springe zum „Weiterrollen"<br />

032 ABS 123 06.123 sonst speichere die „0" als Tastenzustand<br />

und Zeichen für das Ausrollenlassen.<br />

033 SPU 037 (W3) 09.037 springe zu 037 (starte die Verlangsamung)<br />

034 W2: AKO 001 04.001 lade „1"<br />

035 VGL 123 10.123 ist der Tastenzustand gleich?<br />

036 SPB 008 (C1) 11.008 falls ja, springe zur Muster-Ausgabe<br />

037 W3: LDA 126 05.126 sonst verlangsame die „Rollbewegung":<br />

038 ADD 127 07.127 erhöhe ihn um „1"<br />

lade den aktuellen Verlangsamungswert<br />

039 ABS 126 06.126 speichere ihn wieder: Die Schleife 025- 028 benötigt jetzt<br />

mehr Zeit („rollt langsamer")<br />

040 ANZ 02.000 Anzeigen des Verlangsamungswertes<br />

041 VKL124 13.124 ist er noch kleiner als der Startwert „40"?<br />

042 SPB 008 (C1) 11.008 falls ja, springe zur Muster-Ausgabe<br />

043 HLT 01.000 sonst HALT - die Kugel liegt fest<br />

044 SPU 001 (CO) 09.001 neuer Start - ein neues Glück bei 001<br />

123<br />

-<br />

-<br />

Tastenzustand: „1" = frei „0" = gedrückt<br />

gleichzeitig Zeichen für das „Ausrollen"<br />

124 00.040 „40" als Schrittzahl bis zum Stillstand<br />

125<br />

126<br />

LED-Muster (Startwert: 00000001 = „1")<br />

aktueller Verlangsamungswert<br />

127 00.001 Zählerschrittweite

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!