APPLICATIONSCREATION GRAPHIQUE ★ Symbols ohne Probleme ★

RSX Symbol (Computer Technik)Applications Creation Graphique
★ 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 ★ 

Ersatz für SYMBOL AFTER beim CPC 464

Fast jeder CPC 464-Benutzer kennt das Problem: setzt man mittels MEMORY den maximalen Speicherbereich für BASIC neu, läßt sich bis zum nächsten Reset kein SYMBOL AFTER mehr ausführen - ein unangenehmer ‘Bug' im Betriebssystem. Wenn man jedoch die Tastatur mit eigenen Zeichen belegen will, braucht man SYMBOL AFTER, da dafür nur die Zeichencodes 160- 238 (bis auf 224 und 225) verwendbar sind. Eine kleine RSX-Erweiterung kann das Problem jedoch lösen.

Mit |SYMBOL.AFTER, wert läßt sich nun jederzeit bei beliebigem HIMEM der Bereich für die benutzereigenen Grafikzeichen festlegen. Um wieder auf die Standardbelegung zurückschalten zu können entsprechend dem SYMBOL AFTER ohne Wert ist auch der RSX-Befehl

|SYMBOL.RESET

eingebaut.

Das Assemblerlisting zeigt, wie es gemacht wird. Zunächst werden in bekannter Manier (siehe Teil 2 ‘Des Schneiders Kern' c't 9/85) die RSXes eingebunden. Nun ‘kennt' das BASIC die beiden zusätzlichen Befehle. Beim Aufruf von |SYMBOL.AFTER wird dann das Maschinenprogramm abdem Label SYMAFT angesprungen.

Dieses schaltet zunächst das BASIC-ROM ein und führt erst einmal eine 'Garbage Collection'. eine ‘Müllabfuhr', durch. Nicht mehr gebrauchte Strings und Speicherbereiche stellen dabei den Müll dar, der unterhalb von HIMEM abgesammelt wird.

Als nächstes merkt sich das Programm den Wert von HIMEM in der Speicherzelle HOLDHI. Dann holl es sich den Werl des RSX-Befehls, auf den (IX+0) und (IX+1) zeigen und speichert ihn erstmal auf dem Stack. Daraus errechnet es, wie viel Speicher unterhalb von HIMEM für neue Symbole reserviert werden muß, wobei acht Bytes pro Symbol anlällen. und bestimmt nun den maximalen freien Speicher für BASIC.

Diesen Wert übergibt es als neues HIMEM an BASIC, das alle Maßnahmen ergreift und die Variablen unter den maximalen Speicherwert verlagert. Schließlich bekommt das Betriebssystem den Startwert der benutzerdefinierbaren Symbole und die Startadresse der zugehörigen Zeichenmatrizen übermittelt.

Bei |SYMBOL. RESET werden diese Werte zunächst gelöscht, dann das BASIC-ROM eingeblendet. ebenfalls eine 'Garbage Collection' durchgeführt und zum Schluß der alte HIMEM-Wert wieder geladen.

Da nicht jeder über einen Assembler verfügt, ist auch ein BASIC-Lader angegeben, der die RSXes in den ausgewählten Speicherbereich (ab 42000) POKE't, aber nur. wenn auch die Prüfsumme stimmt!

C'T 8608

★ PUBLISHER: Computer Technik (c't)
★ YEARE: 1985 , 1986
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ AUTHOR: Martin KOTULLA
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listings:
» RSX-Symbol    (Computer  Technik)    (ASM-SOURCE)    GERMAN    LISTINGDATE: 2024-03-07
DL: 37
TYPE: PDF
SiZE: 85Ko
NOTE: Supplied by archive.org ; 1 page/PDFlib v1.6

» RSX-Symbol    (Computer  Technik)    GERMAN    LISTINGDATE: 2024-03-07
DL: 31
TYPE: PDF
SiZE: 58Ko
NOTE: Supplied by archive.org ; 1 page/PDFlib v1.6

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

Lien(s):
» Applications » Symbol (CPC Infos)
» Applications » NsLookUp for SymbOS
» Applications » Symbol (Amstrad Computer User)
» Applications » SYMBiFACE II ROM Manager for SymbOS
» Applications » Telnet client for SymbOS
» Applications » Symbol Generator (Schneider Aktiv)
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 323 millisecondes et consultée 165 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.