Die Casio CFX Memory Map
Dieses Kapitel beschreibt die interne Struktur des 32KB Casio CFX RAMs, also an welcher Adresse welche Daten in welchem Speicherformat zu finden sind. Die Informationen sind wirklich sehr detailliert und lassen eigentlich kaum noch Fragen offen, bevor du dich nun aber voller Inbrunst in die Memory Map stürzt solltest du noch folgendes wissen:
- Zahlen werden im Zuge der Memory Map grundsätzlich hexadezimal angegeben, also z.B. 88 nicht verwechseln mit 88, denn 88=136!
- Der 32KB RAM wird im Adressraum 0000..7FFF angegeben und das Casio CFX Betriebssystem speichert Pointer (Zeiger auf bestimmte Speicherinhalte, also RAM Adressen) dementsprechend immer mit 16Bit = 2 Byte
- Der Casio CFX verwaltet den Speicher fast ausschließlich dynamisch; Variablen, Programme, Listen, Funktionen, Bilddaten, ..., nichts hat im Speicher seinen festen Platz (es gibt z.B. keine feste Speicheradresse X, an der man IMMER den Inhalt der Variablen A findet usw.)
- Statt dessen verwendet der Rechner 16 Bit Pointertabellen, die für alle Daten angeben, ob und an welcher Speicheradresse diese zu finden sind
- Im RAM des Casio CFX existieren nur sehr wenige fixe Daten, also Daten, die an einer festen Adresse zu finden sind. Zu diesen gehören eigentlich nur: die oben genannten Pointertabellen, diverse Kennungscodes im RAM, die das Image als gültig markieren, Matrizenheader und die Kontrastdaten des Displays
- Die Memory Map listet diese fixen Daten im Adressbereich 0000..7FFF durchweg auf, was letztendlich auch den Zugriff auf nicht fixe Daten gestattet, da die fixen Pointertabellen ja beschrieben werden. Außerdem wird in der Memory Map der Aufbau der Datentypen aller nicht fixen Daten detailliert erklärt (z.B. das FP Format, in dem Variablen gespeichert werden, das Format für Grafikdaten usw.)
- Die Memory Map beschreibt den Aufbau des RAMs für ZX933 (Casio CFX 9850G) - und GY359 (Casio CFX 9850GB Plus) Systeme. Für andere Systeme weicht dieser ggf. geringfügig ab was die Adressen einiger fixer Daten im RAM angeht, bleibt im Wesentlichen aber das selbe. So z.B. weist auch ein GY359 - Image einige kleinere Unterschiede gegenüber einen ZX933 - Image auf (darauf wird später noch einmal genauer eingegangen), was dazu führt, das GY359 Rechner sich nicht mit dem Backup eines ZX933 betreiben lassen (ich hab´s ausprobiert: der Rechner stürtzt bei bestimmten Operationen einfach ab, weil die Pointertabellen nicht 100% identisch sind).
Weiter mit
Copyright (C) 2004 by Marco Kaufmann