Erste Interaktionen mit Capri-Z180

Wie alles, fängt auch ein Computer bei Null an. Capri, wenn es eingeschaltet wird hat da auch nicht anderes in Petto, wie bei Null anzufangen. Capri fängt also an, ab Adresse 0 ein Befehl zu suchen, mit dem es etwas anfangen kann.
Da CAPRI "nur" eine Platine ist auf dem der Prozessor, Speicherbausteine und ein Oszillator aufgebracht sind, fehlen für unsereiner Anwender ein Bildschirm, eine Tastatur. Wir haben in gegenwärtigen Zustand und in der gegenwärtigen "Projekt-"/"Entwicklungs"-Phase absolut nichts. Für das KOBA-OS, das spätere darauf laufende Betriebssystem, eine nicht unbedingt ermutigende Ausgangsposition - dafür eine herausfordernde! 
Let's Roll !

Botschaften die die bestückte Platine uns bereits sendet

beim Einschalten kommt kein Rauch –> also keines der Bauteile brennt –> das ist gut.
Ein Spannungsprüfer sagt uns durch das eine Versorgungsspannung von 5V an entsprechenden Pins der genutzten ICs (microchips) tatsächlich anliegen –> kein Kurzschluss besteht –> das ist gut.
ein Oszilloskop misst am Eingang des Prozessors ein Taktsignal von 20 MHz. Das bedeutet dass der externe Oszillator anschwingt und ein Taktsignal für den Prozessor bereitstellt. –> Das ist auch gut.
selbiges Oszilloskop zeigt an einen bestimmten Pin (Anschluss) des Prozessors eine Frequenz von 10 MHz (phi) 
Aus diesem lernen wir, dass der Prozessor irgendetwas macht. Zumindest funktioniert der eingebaute, zusätzliche Frequenzteiler innerhalb des Prozessors. Er macht aus den 20 MHz ,die als Taktsignal von außen anliegen, eine Frequenz von 10MHz die es nutzt um zu arbeiten
Das bedeutet dass dieser eine Pin, der das Signal PHi implementiert, das einzige "visuelle" Ding ist, mit dem wir etwas anfangen können. Laut Anleitung des Mikroprozessor (man nennt das Datenblatt / Programmieranleitung(Programming Guide) ist das das normale Verhalten vom Z180 Prozessor. Hinter dem Eingangspin für das Taktsignal ist in der Standardeinstellung des Prozessor ein aktiver Teiler der um den Faktor zwei das eingehende Taktsignal herunterteilt.

Hello World - oder "turn to max speed"

Da wir kein Bildschirm, keine serielle Schnittstelle in Betrieb haben, können wir mit dem CAPRI-Z180 nicht sprechen oder etwas hören. Wir wissen nur, dass wir eigentlich mit 20 MHz Taktfrequenz arbeiten wollen und nicht mit 10 MHz. Also wäre es doch ein sinnvolles vorgehen, den Prozessor so zu programmieren, dass es den Frequenzteiler deaktiviert und fortan mit 20 MHz läuft. Gelingt das, dann messen wir am PHi Pin 20 MHz. Daraus schliesst sich uns, dass wir in der Lage sind Register zu beschreiben. Der erste Schritt für weitere Schritte.
Das ist also quasi das "Hallo Welt" Programm, wie man es ständig irgendwo wieder findet, wenn jemand etwas neues entwickelt, und sei es nur ein erstes Computerprogramm in einer Programmiersprache ….
Der Mikroprozessor Z180 kann konfiguriert werden. Es kann eingestellt werden, wie der Prozessor, z.B. Energie Sparen soll, oder wie es mit dem eingehenden Taktsignal umzugehen hat.
.CR   Z180                         Z180 Cross-Overlay
.TF   cp-002-jmpConfCPU.hex,INT    Zieldatei: in Intel Hex format                                          
.OR   $0000                
                CCR     .EQ   $1F                          $1F CPU Controler Register (speed, mode...)
start:        IN0     A,(CCR)        OR      $80     OUT0    (CCR),A  
                jp      start  
Hier wird ausschliesslich ein Bit in einem "Steuerregister" innerhalb des Mikroprozessors gesetzt, welches den Eingangs-Frequenzteiler ausser Kraft setzt. Damit beginnt der Mikroprozessor mit voller Geschwindigkeit zu arbeiten.
Auf den Bildern sieht man eine grüne, eine gelbe und eine violette Kurve aufgetragen vom Ozilloskop. Die grüne wandert von 0 VOlt auf 5 V … das ist die Zeit wie die Reset Taste gedrückt worden ist um den Computer zurücksetzen und diesen damit von vorne sein Programm abarbeiten zu lassen.
Die gelbe Kurvenform ist das externe Taktsignal von 20 MHz. Die liegt ständig an. Auch wenn der der Mikroprozessor zurückgesetzt wird
Die violette Kurvenform (man sagt eigentlich "violettes Signal") zeigt die Frequenz wie schnell der Prozessor arbeitet. Im Grundzustand teilt der Prozessor das "gelbe" Signal. ALso nur halb so schnell. Man sieht das daran, dass das gelbe Signal zwei Höcker macht und das violette nur einen in der selben Zeit. Nach einer gewissen Zeit (5.6µs) ist das Programm so weit durchgelaufen, dass es den Prozessor entsprechend "um"-konfiguriert hat. Nämlich so, dass es eben nicht den Frequenzteiler aktiviert läßt. Ab 5.6µs "init-time" läuft der Prozessor mit der maximalen Geschwindigkeit.
Wenn das kein schönes Hello World ist - dann weiß ich auch nicht.
Das bedeutet für uns, dass wir in der Lage sind, den Prozessor zu konfigurieren. Da wir wissen, dass es noch weiter Stellschrauben (Register zur Konfig) gibt, können wir anfangen die serielle Schnittstelle in Betrieb zu nehmen, damit es etwas kommoder wird das Ding zu programmieren.