APPLICATIONSPROGRAMMATION ★ BREAK KEY (CPC MAGAZIN) ★

Break Key (CPC Magazin)Applications Programmation
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Viele Besitzer eines CPC haben im Handbuch über die Befehle EVERY und AFTER gelesen, können aber nicht so recht damit umgehen. Bei näherer Betrachtung erweisen sich diese aber als äußerst nützlich. Das Programm setzt das EVERY-Kommando zur Tastaturabfrage ein. Es werden alle 15/200 Sekunden einige Tastenkombinationen abgefragt (EVERY 15,0). Das Unterprogramm, in dem dies geschieht, wird vom Interpreter so schnell abgearbeitet, daß das Hauptprogramm kaum beeinflußt wird. Man könnte fast meinen, daß ein Multitasking vorliegt.

Programmbeschreibung

REM-Zeilen werden nicht angesprungen; man kann sie also getrost weglassen. In den Zeilen 130 bis 200 erfolgen die Vorbereitung des Bildschirms und das Setzen der benötigten Variablen. Anschließend gelangen die ständig sichtbaren Meldungen zur Ausgabe (210,220). Das Hauptprogramm dient nur der Demonstration. Es gibt in einer Endlosschleife Zahlen im Window#0 (m%=0) oder auf dem Drucker (m%=8) aus (290-310).

Die Zeilen 340 bis 380 stellen das Unterprogramm dar, in das alle 15/200 Sekunden verzweigt wird (250). Hier werden nun folgende Tastenkombinationen abgefragt:

CTRL + P leitet die Ausgabe auf den Drucker und gibt den neuen Status im Window# 1 an (340). Erneutes CTRL + P leitet sie wieder auf den Bildschirm (350). SPACE hält die Ausgabe an. Dazu wird der regelmäßige Unterprogrammaufruf gestoppt (Dummy%=remain(0)), und es erfolgt die Verzweigung in ein zweites Unterprogramm (400-440). Dieses aktualisiert zunächst die Meldung in Window#2 (400). Dann wird verhindert, daß es sofort wieder verlassen wird, weil man die Leertaste zu lange festgehalten hat (410). Zeile 420 wartet auf eine erneute Betätigung der Leertaste. Jetzt ist der gesperrte Interrupt natürlich wieder einzuschalten (EVERY 15,0 GOSUB in 360).

Ein Druck auf die TAB-Taste hält das Programm an. Dies ist notwendig, da noch ein weiterer Interrupt initialisiert wurde (240). Dadurch erfolgt nach zweimaligem Betätigen von ESC ein Sprung in das Unterprogramm BREAK (460, 470). In Zeile 460 wird der Interrupt ausgeschaltet (wegen flag%=0 in Zeile 190). Ein erneuter Druck auf ESC schaltet ihn wieder ein (Zeile 470, wegen flag%=1 in Zeile 460). Sie werden feststellen, daß die Bildschirmausgabe bei gesperrtem Interrupt nicht sichtbar schneller ist.

Thomas Klinkradt , CPC Magazin

★ PUBLISHER: CPC Magazin
★ YEAR: 1987
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: CPC MAGAZIN 1987
★ AUTHOR: Thomas Klinkradt
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Break  Key    (CPC  Magazin)    GERMANDATE: 2020-06-06
DL: 188
TYPE: ZIP
SiZE: 4Ko
NOTE: 40 Cyls
.HFE: Χ

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Breaker
» Applications » Breakpoints (Computing With the Amstrad)
» Applications » Breakpoint (Amstrad Action)
» Applications » RSX Break-Utility (CPC Magazin)
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 357 millisecondes et consultée 832 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.