APPLICATIONSDIVERS ★ RSX-Befehle ohne »@« ★

RSX Befehle ohne »@«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 ★ 

Befehlserweiterung mit RSX ist eine nützliche Sache Die Übergabe von Strings mittels Variablen ist dabei aber sehr umständlich.

Die Schneider-Computer erlauben es. Befehlserweiterungen sehr Komfortabel in das Betriebssystem einzubinden. Muß man allerdings beim Aufruf eines RSX-Befehls einen String mit übergeben, so ist diese Übergabe sehr umständlich. Der String muß nämlich zuerst einer Variablen zugeordnet werden. Will man unter AMSDOS beispielsweise eine Datei auf der Diskette umbenennen, so geht das mit folgenden drei Befehlen: »a$="NAMENEU.BAS"« , »b$="NAMEALT.BAS" »|REN, a$, b$«

Hier finden Sie nun eine nur 27 Byte lange Maachinencode-Routine. die diesen Fehler behebt. Sie läuft auf allen drei Heimcomputern von Schneider. Das Betriebssystem wird so geändert. daß Strings im RSX-Befehl direkt angegeben werden dürfen. Folgende Anweisung ersetzt dann die drei Befehle von oben: »|REN, "NAMENEU.BAS", "NAMEALT.BAS"«

Platzhalter sind erlaubt, so daß mit »|ERA *.*« die ganze Diskette gelöscht wird.

Mit der hier beschriebenen Routine kann jeder RSX-Befehl. der mit Strings arbeitet, verändert werden. Das Programm kann in dem zentralen Speicherbereich zwischen den Adressen 4000 und C000 hex frei verschoben werden.
Das Prinzip der Routine ist sehr einfach. Jedesmal wenn das BotriobGoyotom oinon Fehler ausgibt, wird der Speicherbereich ab Adresse 44036 im RAM aufgerufen. NormaJerweise steht hier nur ein einfaches Return. Das abgedruckte Listing schreibt nun an diese Adresse einen Jump-Befehl, der zu einer Routine verzweigt, die den Fehler auf ERROR 13 überprüft.

Dieser Fehler tritt nämlich auf, wenn man ohne Systemerweiterung die Befehle von oben benutzt. Jeder andere Fehler führt zurück zur normalen Fehlerbehandlung. In der Routine wird zuerst geprüft ob gerade eine RSX-(oder CALL-)Routine bearbeitet wird. Wenn ja. dann übergibt das Maschinencode-Programm die Adresse des Stringdescriptors an die CALL-Routine und diese wird korrekt ausgeführt.

Christoph Müller/hg, HAPPY COMPUTER

★ PUBLISHER: HAPPY COMPUTER
★ YEAR: 1985
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: HAPPY COMPUTER 1985
★ AUTHOR: Christoph Müller
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» RSX-Befehle  Ohne    (Happy  Computer)    GERMANDATE: 2017-02-12
DL: 232
TYPE: PDF
SiZE: 40Ko
NOTE: Uploaded by hERMOL ; 1 page/PDFlib v1.6

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

Lien(s):
» Coding Src's » Graphic - Advanced Art Studio screen loader (Attack)
» Coding » RSX - Define - Place (Popular Computing Weekly)
» Coding Src's » Disassembly of Firmware ROM
» Coding Src's » Hymn of Joy (Schneider Aktiv)
» Coding Src's » Graphic - Bigscroll
» Coding Src's » Kaleidoscope (CPC Infos)
Je participe au site:
» Pour ce titre nous ne disposons de fichier executable sur CPC (Dump, Saisie du listing) , alors si vous avez ça dans vos cartons ou vous désirez usé vos petit doigts boudinés sur votre clavier faites le nous savoir.
» 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/c
Page créée en 708 millisecondes et consultée 1288 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.