30.12.2012 Aufrufe

Untitled

Untitled

Untitled

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Adresse<br />

hex. dez.<br />

$CFFF 53247<br />

$CFFE 53246<br />

$CFFD 53245<br />

$CFFC 53244<br />

$CFFB 53243<br />

$CFFA 53242<br />

Ta be/le 8.1: Ausgaberegister der Abfrageroutine<br />

8.3 Eine universelle Joystickund<br />

Paddle-Abfrage<br />

Das Assemblerprogramm CONTROL­<br />

PORT.ASM wurde fUr den Kassettenpuffer<br />

ab $033C (dezimal 828) geschrieben.<br />

Wird es aufgerufen, dann ermittelt es aile<br />

Paddle- und Joystick-Zustande und stellt<br />

sie in den sechs obersten Adressen des<br />

$C-Bereiches ($COOO bis $CFFF) zur Verfi.igung.<br />

Eine genaue Aufstellung enthalt<br />

Tabelle 8.1.<br />

Wahrend des Maschinenprogramms wird<br />

mit CLI der Systeminterrupt (IRQ) und<br />

damit die Ta staturabfrage aul3er Gefecht<br />

gesetzt. Das funktioniert, weil die Ports<br />

nur wahrend der Interrupt-Routine beeinflul3t<br />

werden. Mit dem Unterprogramm<br />

LIES erfolgt die Umschaltung des jeweiligen<br />

Control-Port auf die Analogeingange<br />

und nach Abwarten der Wandlungszeit<br />

die Ubernahme der ermittelten Werte ins<br />

X- und Y-Register. Anschliel3end werden<br />

sie in die endgi.iltigen Register geschrieben<br />

und noch jeweils das aktuelle Joystick­<br />

Byte geholt. Der Ri.icksprung erfolgt,<br />

nachdem aile Leitungen wieder in ihren<br />

urspri.inglichen Zustand zuri.ickversetzt<br />

wurden.<br />

Eine universelle Joystick- und Paddle-A bfrage 241<br />

Inhalt<br />

Port 1, X-Wert<br />

Port 1, Y-Wert<br />

Joystick Port 1<br />

Port 2, X-Wert<br />

Port 2, Y-Wert<br />

Joystick Port 2<br />

Die beschriebene Routine lal3t sich auch<br />

von BASIC aus benutzen. Wie dabei vorzugehen<br />

ist, zeigt das Demoprogramm<br />

CONTROLPORT.BAS. Gleich nach dem<br />

Start sollte zunachst das Unterprogramm<br />

ab Zeile 10 000 aufgerufen werden. Es installiert<br />

die Abfrageroutine im Kassettenpuffer.<br />

Soli im Programmverlauf dann ein<br />

Joystick- oder Paddle-Wert eingelesen<br />

werden, ruft man mit<br />

SYS 828<br />

diese Maschinenroutine auf und kann auf<br />

die ermittelten Werte nach Tabelle 8.l zu­<br />

greifen. Bild 8.2 zeigt die entstehenden<br />

links<br />

oben<br />

unten<br />

rechts<br />

Bild 8.2: Abfragewerte bei den erreichbaren Joystick­<br />

Richtungen. Untere Zahlen bei gedrticktem Feuerknopf.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!