APPLICATIONSPROGRAMMATION ★ Prozeduren unter BASIC auf dem CPC 6128|CPC Amstrad International) ★

Relocator v1.0 (CPC Amstrad International)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 ★ 

Unterprogramme kommen wohl in allen BASIC- Programmen vor, zudem meisten noch in artenreicher Vielfalt. Dem Programmierer bleibt bei solchen Programmen eigentlich nur eins übrig, er muß sich alle Zeilennummern, in denen ein solches Unterprogramm beginnt, merken oder aufschreiben, falls die Routine mehrmals angesprungen werden soll. Wie oft sieht man da neidisch zu seinen Kollegen von der PASCAL- Programmierung, wenn diese ihre Prozeduren einfach mit dem Namen aufm len.

Um den Unterprogramm-Freaks unter Ihnen etwas unter die Arme zu greifen, wurde dieses Hilfsprogramm zum Benennen von Unterroutinen geschrieben. Es ermöglicht Ihnen Unterprogramme, ähnlich wie in PASCAL, mit einem Namen zu versehen und innerhalb des BASIC-Programmes mit diesem Namen aufzurufen.

Die Programmbeschreibung

Mit dem Befehl |PROCEDUR , " < name > " definieren Sie eine Prozedur, also ein Unterprogramm, mit dem Namen < name >. Hierbei wird zwischen Groß- und Kleinschreibung unterschieden. Nach dem PROCEDUR- Befehl programmieren Sie normal Ihr Unterprogramm und beenden dieses mit RETURN. Als nächstes geben Sie eine Zeile mit einem Hochkomma ' und dem Befehlswon END in Großschrift ein, die die Routine abschließt. Aufgerufen wird diese Routine mit |CALL,"< name > " , wobei Sie bitte auf Groß- und Kleinschreibung achten. Der letzte neue Befehl heißt |CLEAR Er löscht sämtliche Prozedurdefinitionen, jedoch nicht die Prozeduren selbst.

Ein Beispiel

Damit Sie etwas Übung mit den neuen Befehlen bekommen, hier nun ein Beispiel. Das Ausrufezeichen steht wieder für den RSX-Strich:

Wichtig ist, wie Sie auch aus dem Beispielprogramm ersehen können, daß die Prozeduren am Anfang des Programmes stehen, sie müssen vor dem ersten Aufruf definiert werden.

Begrenzte Anzahl von Prozeduren

Mit dieser BASIC-Erweiterung läßt sich allerdings nur eine bestimmte Anzahl von Prozeduren definieren und verwalten, dies hängt von der Länge der jeweiligen Prozedurnamen ab. In diesem Falle bricht das Programm mit der Meldung MEMORY OVERFLOW. CAN'T DEFINE PROCEDURE < name > ab. Um Platz für mehr Prozeduren zu schaffen, müssen Sie das Assem-blerlisting abtippen und mit einer kleineren Startadresse assem-blieren. Die BASIC-Erweiterung verwendet den Bereich zwischen! dem Ende des Maschinenprogrammes und &A600 als Tabelle, in der die Namen und Adressen aller definierten Prozeduren abgelegt werden. Wenn dieser Bereich nicht vollständig zur Verfügung steht, muß die Anweisung “ENDMEM EQU #A600” entsprechend geändert werden. Wenn zu einer |PROCEDURE-Anweisung kein END gefunden wird, bricht der Computer das Programm ebenfalls mit einer Fehlermeldung namens CAN'T FIND END OF PROCEDURE < name > ab. Die letzte Fehlermöglichkeit wäre, daß eine mit |CALL," < name>“ aufgerufene Prozedur nicht vorhanden oder noch nicht definiert ist. In diesem Fall wird mit der Meldung CAN'T FIND PROCEDURE < name > das Programm abgebrochen.

D. Höhmann/JB , CPCAI

★ PUBLISHER: CPC Amstrad International
★ YEARE: 1987 , 1988
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: CPC AMSTRAD INTERNATIONAL 1988
★ AUTHOR: Hans-Georg Eßer
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» MC-Relocator    (CPC  Amstrad  International)    GERMANDATE: 2020-07-11
DL: 250
TYPE: ZIP
SiZE: 5Ko
NOTE: 40 Cyls
.HFE: Χ

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

Lien(s):
» Applications » Code Relocator
» Applications » Turbo - Relocator (CPC Amstrad International)
» Applications » Z80 Relocator (Moj Micro)
» Applications » Relocate Code Laser Genius
» Applications » MC-Relocator (Schneider 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 279 millisecondes et consultée 1502 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.