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 51: Computergesteuerter Modellbahnhof<br />

Adresse Mnemonics Code Kommentar<br />

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

002 ABS 127 06.127 speichere als Signalzustand (offen)...<br />

003 ABS 100 06.100 und als Vergleichszahl<br />

004 ADD 106 07.106<br />

005 ADD 107 07.107 berechne die Zugzahl durch Addition aller „1" in den<br />

006 ADD 108 07.108 Speicherzellen für die Einzelgleise 106- 109<br />

007 ADD 109 07.109<br />

008 ABS 105 06.105 speichere die Gesamtzahl in 105...<br />

009 ANZ 02.000 und zeige sie an<br />

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

011 ABS 101 06.101 und speichere als Schrittweite und Vergleichszahl...<br />

012 ABS 120 06.120 auch für das Kontaktgleis K0 (Einfahrtsgleis)<br />

013 ADD 120 07.120 verdopple auf „2" ...<br />

014 ABS 121 06.121 als Vergleichszahl für Kontaktgleis K1<br />

i 015 ADD 121 07.121 verdopple auf „4" ...<br />

016 ABS 122 06.122 als Vergleichszahl für Kontaktgleis K2<br />

017 ADD 122 07.122 verdopple auf „8" • • •<br />

018 ABS 123 06.123 als Vergleichszahl für Kontaktgleis K3<br />

019 ADD 123 07.123 verdopple auf „16" ...<br />

020 ABS 124 06.124 als Vergleichszahl für Kontaktgleis K4<br />

021 AKO 004 04.004 lade „4" als maximale Zugzahl in Bahnhof<br />

022 VGL 105 10.105 ist die berechnete Zugzahl gleich der „4"?<br />

023 SPB 077 (A6) 11.077 falls ja, springe zur Blockierung<br />

024 A1: P1E000 16.000<br />

Steuerungsanfang:<br />

lies Port 1 (Kontaktgleiszustände) in den Akku<br />

025 VGL 116 10.116 ist er „255", also kein Kontakt geschlossen?<br />

026 SPB 024 (A1) 11.024 falls ja, weiter warten bei 024<br />

027 ABS 102 06.102 sonst speichere den Wert kurz<br />

028 LDA 116 05.116 lade „255" ...<br />

029 SUB 102 08.102 und subtrahiere das Gespeicherte davon<br />

030 ABS 103 06.103 speichere es als Kontaktgleis-Eingabe<br />

031 VZG 250 03.250 warte eine halbe Sekunde<br />

032 VZG 250 03.250 zur Entprellung der Kontakte<br />

033 AKO 000 04.000 lade „0" für das Einfahrtsgleis K0<br />

034 A2: ABS 104 06.104 speichere sie als Kontaktnummer<br />

035 AKO 120 04.120 lade „120" als den Beginn des Vergleichsdatenbereichs<br />

der Kontakte<br />

036 ADD 104 07.104 addiere die zu testende Gleisnummer dazu ...<br />

037 ABS 126 06.126 und speichere dies als indirekte Adresse<br />

038 LIA 126 19.126 lade so die Vergleichszahl für das Gleis<br />

039 VGL 103 10.103 ist die Kontaktgleis-Eingabe gleich?<br />

040 SPB 044 (A3) 11.044 falls ja, ist der richtige Kontakt gefunden<br />

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

042 ADD 104 07.104 und erhöhe so die Kontaktnummer in 104<br />

043 SPU 034 (A2) 09.034 springe zurück zum Speichern und Testen<br />

044 A3: LDA 104 05.104<br />

Auswertung des Kontaktes:<br />

gefunden! Lade die Kontaktnummer, wo der Kontakt<br />

stattfand<br />

045 VGL 100 10.100 ist es „0", also K0, wo der Kontakt erfolgte?<br />

046 SPB 068 (A4) 11.068 falls ja, suche ein freies Gleis (bei 068)<br />

047 ADD 117 07.117 sonst addiere „105" zur Kontaktnummer<br />

Fortsetzung siehe nächste Seite<br />

128

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!