HSG |
|
Das HSG besitzt mit dem Heathkit ET-3400 Mikroprozessor-Trainer ein Stück Computergeschichte. Der Computer verwendet den Motorola 6800 - Prozessor von 1975, der als sehr früher Mikroprozessor gilt.
Der Aufbau des Prozessors wird auf einer eigenen Seite beschrieben.
LDA A 0030 ; A <-- [0030] LDA B 0031 ; B <-- [0031] ABA ; A <-- A+B STA A 0032 ; [0032] <-- A NOP ; no operation 0000 B6 0001 00 0002 30 Motorola: big endian! 0003 F6 0004 00 0005 31 0006 1B 0007 B7 0008 00 0009 32 000A 01 .... 0030 03 (1310 = 0D16) 0031 04 (1710 = 1116) 0032 00 (3010 = 1E16)
Die Befehle werden auf einer eigenen Seite aufgelistet.
S1290000BDFCBC86012007D6F1CB10D7F148BDFE3ACE2F000926FD165D26EC8601DEF08CC10F26EA20DA??
S9030000FC
Man sieht links das Maschinenprogramm, rechts das Assemblerprogramm.
Es folgen Erläuterungen zu den einzelnen Zeilen
OUTCH (FE3A) gibt ein Zeichen zur Anzeige aus. Die Adresse des Displays ist im Speicherplatz DIGADD (00F0,00F1) enthalten. In diese Routine kann bei OUTO (FE3C) eingetreten werden, wenn das Indexregister nicht aufbewahrt werden muss. Der Code für das anzuzeigende Zeichen muss im Akkumulator A vorliegen, wenn in die Routine eingetreten wird. Die Bits D7-D0 des Akkumulators A entsprechen den Segmenten DP,a-g. Das höchstwertige Bit ist der Dezimalpunkt und das niedrigwertigste Bit das Segment g.
Angenommen d. soll dargestellt werden: 1011 11012 = BD16 muss in den Akku, dann REDIS, um Anzeige ganz links zu erreichen, dann OUTCH zur Zeichenausgabe:
0000 86 BD LDA A #$BD 0002 BD FCBC JSR REDIS 0005 BD FE3A JSR OUTCH 0008 20 FE BRA #$FE ; relativer Sprung auf 0008, 000A-0010
Teste das Programm. Verändere das Programm so, dass F dargestellt wird.