Bastelstunde!

Hallo Leute!

Zwischen Weihnachten und Silvester bleibt die eine oder andere Stunde, die man am Computer zubringt.

Da sitze ich nun verzweifelt an dem Tastenfernseher und baue dem SVGA- Grafikpaket (natürlich in Forth!) endlich einen Cursor ein. Die Sache funzt nicht so richtig, als Fehler immer wieder falsche Flags in Assemblerpassagen.

Das Problem ist folgendes:

Ich habe einen Bildspeicher, der innerhalb des DOS-Speichers fensterweise eingeblendet wird. Es funzt ganz gut, wenn das Fenster 64 KByte groß ist. Nur leider kann man sich darauf nicht verlassen, man muß auch andere Größen berücksichtigen --> seliger VESA-Treiber...

64 KByte ergeben 17 Bit, die Merkzelle ist aber nur 16 Bit groß und demzufolge gleich Null, was die Rechnung aber ungemein beschleunigt. Leider geht der Test auf Fensterüberschreitung nun etwas umständlich, muß ich doch nach dem Berechnen des neuen Fensteroffsets mehrere Tests vornehmen:

Ist das Fenster überschritten, ist nach der Addition Carry-gesetzt. Gut. Fensterüberschreitung erkannt. Ist Carry nicht gesetzt, mal nachsehen, ob die Merkzelle Null ist. Wenn ja, keine Überschreitung. Erst jetzt kann man prüfen, ob die Summe den Wert in der Merkzelle übersteigt. Gott oh Gott......)

Spätestens jetzt wird mir klar, das ich den Quelltext an mindestens xxxxx Stellen ändern muß - ........#@*%+!!!!

Heute nicht mehr!

Da fällt mein Blick auf die alten KCs, die vor mir im Regal ihrer Nutzung harren...

Woll'n mal sehen, ob noch was funktioniert!

Den alten Monitor rausgewühlt... Ein Luxus-Kofferfernser, Modell: Combi-Vision - das Teil ist noch älter als die Computer!!! Aber bestens umgebaut: sogar einen Videoquellen- Umschalter habe ich der Kiste mal verpasst. ;-)

Die beiden Computer aus dem Regal gewühlt (Donnerwetter, was sich da an Drahtverhau angesammelt hat!) und den ersten an den Monitor gestöpselt.

Strom an - und nüscht...

Immerhin wird der Monitor hell. Auch die Bilderzeugung im Computer scheint zu funktionieren.

Aufgeschraubt und nachgeschaut...

Aua, aua, das Teil sieht ja schrecklich aus: Habe ich diesem Gerät vor Jahren mal einen ROM-Ersatz aus SRAMs spendiert. So richtig nach Bastlermanier - einfach auf die ROMs die RAMs gelötet und mit einer Huckepackplatine fliegend verdrahtet. (Was eben so ein "Hardcore-Löter" drauf hat ;-)

Rückbau angesagt!

Alles erst mal rausschmeißen, was dort nicht hineingehört.

Nächster Versuch: AEG

Netzteil: OK.

Oszi angeworfen:

Takt? Hatta...

M1-Zyklen? Hatta nich...

Irgendwas am Adressbus los? Nö...

Reset-Pin? Undefinierbar, irgendwo zwischen 0 und 5V.

Schaltplan rauswühlen. Wo war er gleich? Aaaaaja. Seite, Seite, Seite...

Da: Resetlogik. Na, das wird ein abendfüllendes Programm.

Oder auch nicht! Nächstes Gerät:

Anschließen - geht nicht. Aufschrauben.

Hier sind meine Bastlerspuren noch unübersehbarer, habe ich den Rechner mal mit etlichen Umbauten versehen. Immerhin schön ordentlich auf Lochrasterplatten in meiner unnachahmlichen Cu-Litzen-alte-Isolierung-Methode. (Damit habe ich schon Rechner komplett verdrahtet, ein irrsinniger Aufwand, der aber Unikaten eine sichere Funktion ermöglicht.) Das beste an meinen Umbauten: alles schön einzeln austauschbar. Und vor allem: Dokumentiert!!!!

Erst mal die Schnittstellenplatine herausnehmen. (Für KC-Kenner: Modulschacht C hat seinen Steckverbinder gegen eine Pfostenleiste getauscht, hier hält sich die Platine fest: 1x Centronics, 1x Seriell, eine Busschnittstelle und diverser Zinnober, der mal die Systhemspeicher umschalten sollte.)

Dann die Umschaltung ROM/RAM. Diese ist hier natürlich wesentlich eleganter gelöst. Die beiden ROMs habe ich in einer Nacht- und Nebel- Aktion ausgelötet und durch Fassungen ersetzt. In diesen Fassungen steckt jetzt die Erweiterungsplatine. (Ja, so kann man in zwei Fassungen drei IC's stecken!)

ROM direkt in die Fassung - einschalten, geht. Prima.

Batterie ausmessen. 3 V - stimmt. DIL-Schalter auf ROM und die Platine wieder eingesetzt. Geht auch! Donnerwetter. Auf RAM umschalten - geht nicht mehr. Na ja, müssen wir den RAM erst mal neu laden. (Wo legt man die Diskette ein?) Na soooo einfach ist es nun auch wieder nicht.

Kassettenrecorder, Kassettenrecorder... da issa. Kabel praktischerweise gleich dabei. Wo ist diese verdammte Programmkassette???

Einschalten, wie war doch das Kommando zu Laden mit Offset? Nur gut, das in meiner Wirtschaft auch alte Handbücher ihr Gnadenbrot bekommen.

Es läuft - ein Block nach dem anderen liest das Gerät ein... (und würde ihn auch in den Speicher schreiben, wenn ich den Schreibschutz für die RAMs ausgeschaltet hätte...)

Nochmal. Block um Block und Black-Out...

Absturz auf der ganzen Linie. Reset? Geht nicht. Aus und ein. Geht etwas?

Warum kommt der Rechner nicht über Bildschirmlöschen hinaus? Etwa nicht richtig eingesteckt? Ein Wurstfingerdruck bringt Effekt - nur welchen. Aaaah! Es geht wieder! (Aber nur ein wenig...) Platine raus und - verkantet. Mist! Zwei Stifte verbogen! Justierzange und... Prima: Einen abgebrochen! Lötkolben an, Schaltkreise raus und neuen Stift einlöten. Siehe da, ein loser Draht. Wo geht er denn hin? Ausgangsfreigabe fürs ROM. Alles klar. Gleich mit ersetzen.

System geladen. Und erst mal ausschalten.

Schreibschutz setzen und auf RAM umschalten. Einschalten und -Oh Wunder- es funktioniert! Der Assembler erscheint im Menü. (Besser die Software aus dem Development-Modul, die jetzt im Betriebssystem residiert.)

Nächster Test. Ausschalten und die RAM-Disk einsetzen. Und wieder an, Bootmeldung von der Disk (schön, den eigenen Namen zu lesen) und Menü kommt. In den Editor - dir eingegeben...

Hier schlummern ja Oldtimer!

Bekommt man richtig Lust, wieder mal den alten Rechner durchzuforsten.

Assemblerquellen...

Schau an, einen Speicheroszi hat der mal programmiert. (Mit einem richtigen Oszi im X-Y-Betrieb an zwei DAUs zur Ausgabe. ;-)

Und hier: Ein selbstgebautes Programmiergerät für 512x4 PROM. (Hat aber nie richtig funktioniert.)

Steuersoftware für den Funkamateur-Logikanalysator. Und ein Grafikprogramm. Und ein Vierkanal DVM mit Logiktester.

Geschichte. Aber man hat sooo viel dabei gelernt... ;-)

Kandidat eins erfolgreich wieder zum Leben erweckt!

Bleibt noch das Sorgenkind...

Schluß für heute!

Jetzt hätte ich mal wieder Lust auf etwas 80x86-Assembler auf dem PC. Wie hieß das dämliche File mit den vielen Änderungswünschen?


Aus der © ChatNoir Mailbox: www.chatnoir.de und online unter diesen Rufnummern
Erste Veröffentlichung: 30.12.1998 von Bretti
[Kommentar zu diesem Text in Forum "Z80" schreiben]
[Forum "Z80" lesen]
 
[Forum junger Autoren]
[Home]