APPLICATIONSDIVERS ★ RSX INTP (CPC AMSTRAD INTERNATIONAL) ★

RSX INTP (CPC Amstrad International)Applications Divers
★ 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 ★ 

Löschen am laufenden Band

Eliminieren von Programmzeilen ohne Programmabbruch

Allen BASIC-Programmierern ist die Tatsache bekannt, daß der Befehl DELETE Zeilennummern löscht. Dieser Befehl kann auch in BASIC-Programmen eingesetzt werden, der Nachteil ist nur, das der Programmablauf unterbrochen wird. Aber mit einer kleinen MC-Routine ist eine Fortsetzung des Programms gewährleistet, ohne daß das Programm neu gestartet werden muß. Der Vorteil ist, das Programmteile abgearbeitet werden können und anschließend gelöscht werden können, um zum Beispiel weitere Programme zu laden.

Wie gehe ich vor...

Das Programm besteht aus einem DATA-Lader (Listing 1), der vor dem Starten mit RUN abgespeichert werden sollte. Das Listing 2 ist ein Demoprogramm, um die Möglichkeiten zu zeigen. Listing 3 ist das Assemblerprogramm, das aber nicht mit abgetippt werden muß.

So wird's gemacht

Das MC-Programm INTP (für Interpreter) installiert das RSX-Kommando |INTP,Zeilennummer. Das Kommando bewirkt, daß aus dem laufenden BASIC-Programm nicht in den READY-Modus, sondern zu der angegebenen Zeilennummer des BASIC-Programms gesprungen wird. Das Kommando entspricht also dem GOTO-Kommando, wenn aus irgendeinem Grund aus dem BASIC-Programm der READY-Modus angesprungen wird. Nach einmaliger Ausführung schaltet es sich automatisch Wiederaus. Erst wenn es im Programmablauf erneut aufgerufen wird, ist es wieder aktiv. Die Durchführung eines DELETE-Kommandos im laufenden BASIC-Programm ist also dann möglich, wenn vorher mit IINTP,Zeilennummer die Fortsetzung des BASIC-Programms bestimmt wurde.

Initialisierung

  1. Möglichkeit: Voranstellen des BASIC-Laders vor das eigentliche BASIC-Programm durch Load"INTP.bas". Das weitere BASIC-Programm kann dann ab der freien Zeilennummer geladen werden. Der BASIC-Lader löscht sich bei Start des Programms dann selbst. Oder man legt einen Zeilenbereich fest in den der BASIC-Lader mit MERGE geladen und aufgerufen wird.
  2. Möglichkeit: Laden des Maschinencodes durch das BASIC-Programm.

Beispiel:

10 SYMBOL AFTER 256 (Zeichensatz löschen)
20 MEMORY &9FFF
30 LOAD"INTP.BIN",&A000
40 CALL &A000
50 SYMBOL AFTER......(nach Wahl)

Nach der Initialisierung steht das Kommando |INTP,Zeilennummer zur Verfügung. Das Programm kann nicht im Speicher verschoben werden, da mit festen Sprungadressen gearbeitet wird.

Wird das MC-Programm nicht auf andere Adressen umgeändert, so folgt ein Einsprang in die Adresse &A000. Im Maschinenprogramm werden Systemadressen benutzt, die nur auf dem CPC 464 lauffähig sind.

Anwendung im BASIC-Programm:

Vor einem BASIC-Kommando, das nach Ausführung in den READY-Modus springt (zum Beispiel DELETE), ist mit IINTP,Zeilennummer die Zeilennummer zu bestimmen, mit der das Programm nach Ausführung des betreffenden Kommandos fortfahren soll (siehe auch Beispielprogramm).

CD, CPCAI

★ PUBLISHER: CPC Amstrad International
★ YEAR: 1989
★ CONFIG: 64K (464)
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: CPC AMSTRAD INTERNATIONAL 1989
★ AUTHOR: Manfred Liebig
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listings:
» RSX-INTP    (CPC  Amstrad  International)    GERMANDATE: 2020-07-07
DL: 177
TYPE: ZIP
SiZE: 5Ko
NOTE: 40 Cyls
.HFE: Χ

» RSX-INTP    (CPC  Amstrad  International)    LISTING    GERMANDATE: 2020-07-09
DL: 303
TYPE: text
SiZE: 3Ko
NOTE: 40 Cyls
.HFE: √

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

Lien(s):
» Applications » Big Characters (Computing with the Amstrad)
» Applications » RSX Fill (Schneider Aktiv Special)
» Applications » ScreenScroll (CPC Amstrad International)
» Applications » RSX Select (Schneider Aktiv)
» Applications » Rsx - Programme zum Erstellen von Befehlen für Den CPC 464 (CPC Amstrad International)
» Applications » RSX-Tricks Screen/mode (Schneider CPC-Welt)
Je participe au site:
» Vous avez des infos personnel ?
» 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
Page créée en 549 millisecondes et consultée 1578 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.