
RAM-Karte früher. Der restliche Speicher gehört dem Betriebssystem, wie Display, Schnittstellen und Hauptprogramm!
BASIC-Zeile beginnt jeweils bei &6030 (24624), &4030 (16432), &2030 (8240) (ohne, 8 kB, 16 kB Karte). Man kann diese Position selber einstellen und nach hinten schieben, um Platz für Daten zu machen. Die Speicherstellen &6F01 (28417) und &6F02 (28418) legen diese Position fest: PEEK 28417+256* PEEK 28418 = Startadresse. An dieser
Adresse muss ein
Byte mit dem Wert 255 stehen, danach kommt die erste Zeile.
Pointer bei &6F03 (28419) und &6F04 (28420).
3
Bytes (x,y,z), Datenbytes, Return (Chr 13)
x,y: Zeilennummer = x*256+y
z: Länge des Datenblocks (Return zählt mit!)
Ende des Programms mit 255 markiert
Ein Byte mit dem
ASCII-Code >= 128 im Datenbereich einer Zeile markiert einen Befehl, der durch den Code bestimmt wird!
7 Bytes (a,b,c,d,e,f,g), Daten
In PEEK 28423+256* PEEK 28424 wird die Startadresse der
Variablen gespeichert.
Variablen werden von hinten her definiert, d.h. wenn eine Variable definiert wird, kommt sie an die hinterste Stelle. Jede weitere kommt dann davor. Die Startadresse zeigt auf den
Header der neuesten Variable.
Variablen lassen sich auch per POKE umbenennen!
7 Bytes groß
Beispiel:
G$(5,5)*3
a: 71 = G: Variablenname
b: 160 =
String
c: 0 = 1.Byte * 256
d: 111 = + 2.Byte = Gesamtgröße + 3 (wegen Dimensionierungsangaben)
e: 5 = Dim 5
f: 5 = , 5
g: 3 = * 3
DATEN:71= 1. Zeichen Daten
1-26 = String
array, 2 stellig mit 2. Zeichen CHR (Byte+64)
193-218 = Zahlarray, 2 stellig mit 2. Zeichen CHR (Byte-128)
129-154 = String, 2 stellige Standardvar. (wie NE$="test") immer 16 Zeichen lang
65-90 = Zahl, 2 stellige Standardvar. (wie AA=0) immer 8 Bytes lang
128: einstelliges Zahlarray
160: einstelliges Stringarray
Strings enthalten jedes Zeichen im
ASCII-Format, wobei Chr(0) das Ende des Strings bedeutet. Das Chr(0) fällt weg, wenn der String die als maximal angegebene Länge hat.
Zahlen werden im sog.
BCD-Format codiert, wobei jede Zahl 7 Bytes belegt.
Bei
Feldern folgen die einzelnen Daten ohne Trennzeichen aufeinander. Die Position rechnet das System anhand der
Headerangaben aus.
Wenn ein zweidimensionales Feld angelegt wurde, folgen die Felder ebenfalls nacheinander. Beispiel: DIM B$(1,2)*1: B$(0,0) B$(0,1) B$(0,2) B$(1,0) B$(1,1) B$(1,2)
Die 5 Spalten mit je 30 Pixeln Breite werden in 4 Zeilen á 8 Pixeln dargestellt. Jeder 8 Pixel-Streifen entspricht einen "GPRINT"
Byte, wobei der Wert 1 den obersten Pixel ansteuert und die 128 den untersten!
Der Abstand der Speicherstellen jeder Spalte beträgt 512 Bytes.
![]() |
SHARP POCKET COMPUTER PC-1350
|
Die Sonderzeichen RUN, PRO, SHIFT, SML werden im Byte &783C (30780) angesteuert:
Bit | Symbol |
|---|---|
| 0 | Shift |
| 1 | Def |
| 2 | - |
| 3 | - |
| 4 | Run |
| 5 | Pro |
| 6 | Japan. Zeichen links: Führt zu Fehlfunktion! |
| 7 | Sml |
| - | Systemvariablen (je 8 Byte lang):
Variable ist entweder CHR 245 bei String oder CHR 0 bei Zahlen. Wenn die Variable kürzer als 7 Zeichen ist, markiert ein Chr(0) den Schluss! | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - | Reservemodedaten: &6F6F (28527):A:erster Reserveeintrag, ASC (alphabetische Nummer) markiert (A=1,S=19,D=4,...,' '=27,'='=28), dann Datenblock ohne Endcode Chr(13)! Beispiel: [1,254,34],[19,...],...Reihenfolge:ASDFGHJKL'='' 'MNBVCXZ, leere Einträge werden nicht abgespeichert (auch nicht der Startcode 1-26!) Speicherende: &6FFF (28671) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - | Systemadressen:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - | Das ROM:
Der PC-1350 hat ein ROM, das das Betriebssystem enthält.
Das ROM der CPU liegt bei &0000 bis &1FFF, der Rest von &8000 bis &FFFF.
Wenn man die Systemaufrufe kennt, kann man sie in die eigenen Programme
einbauen!
Der Bytewert ist das interne Byte, das in einer Zeile den Befehl repräsentiert. Einige Befehle haben als CALL die Adresse 2954 oder 4332. Diese Befehle werden intern erkannt! CALL-Adressen
|