Olympia Boss Z80 Fehlersuche

  • Anbei die Definition für 22disk (hat jedenfalls hier so funktioniert )


    BOSSFILE.ZIP


    BEGIN BOSS Olympia-BOSS CP/M 2.2 - DSDD 48 tpi 5.25"

    DENSITY MFM ,LOW CYLINDERS 40 SIDES 2

    SECTORS 9,512

    SKEW 5

    SIDE1 0 1,2,3,4,5,6,7,8,9

    SIDE2 1 1,2,3,4,5,6,7,8,9

    ORDER SIDES

    BSH 4 BLM 15 EXM 1 DSM 165 DRM 127 AL0 0C0H AL1 0 OFS 3

    END



  • Bitte die Laufwerksbezeichnung und Filenamen (in MBASIC) immer in Grossbuchstaben schreiben.

    MBasic wandelt nicht nach Grossbuchstaben und dann hast du eine Datei mit Kleinbuchstaben die in CP/M nicht

    gelöscht werden kann da der CCP nach Grossbuchstaben wandelt und so weitergibt.

  • Hallo,


    Fritz hat mich doch tatsächlich überholt!


    Hier noch die Definition für SAMCONV und das Image auf .DSK umgewandelt.


    OLYMPIA BOSS B Z80.zip


    SamImage.dsk - von BB_ZCPM2.zip


    Ich möchte noch darauf hinweisen, dass das image nur 36 Spuren enthält. Der Rest ist nicht formatiert. Daher gehe ich davon aus, dass die Gesamtkapazität etwas geringer ist, als in 22DISK definiert.


    Zum Arbeiten mit SAMCONV muss die eine Zeile ins Sheet DISKDEF kopiert werden.


    Grüße


    PAW

  • Ich hatte es etwas einfacher....

    und habe PDRIVE.COM zur Eingabe der STAT Angaben genutzt.


    Weiter muss ich den Bürostuhl nur um 90Grad drehen und sitze dann vor meinem Konvertierrechner.

    Das ist sozusagen optimiertes Arbeiten.


    funkenzupfer kann das bestätigen. :sunny:

  • Ich nutze SAMCONV um mir

    einige Parameter zum Format für andere Systeme einfach zu berechnen.


    Ich möchte noch darauf hinweisen, dass das image nur 36 Spuren enthält. Der Rest ist nicht formatiert. Daher gehe ich davon aus, dass die Gesamtkapazität etwas geringer ist, als in 22DISK definiert.


    Das ist richtig.

    Laut dem Formatprogramm können 40 oder 80tr. Laufwerke genutzt werden.

    in wie weit es auch möglich ist 40tr. komplett zu nutzen muss Aquarius testen.

    Die 22disk Definition kann natürlich auf die Anzahl der Tracks 36 oder 40 geändert werden.

  • Wow, danke.


    Jetzt kann ich tatsächlich auf die Dateien der CP/M-Bossdiskette zugreifen! Wie ihr das gemacht habt, da blick ich noch nicht durch.


    Da sich 22disk nicht installiert, werde ich mal samconv und samdisk ausprobieren, um kermit und mprobe auf den Olympia Boss zu bringen.

  • Wow, danke.


    Jetzt kann ich tatsächlich auf die Dateien der CP/M-Bossdiskette zugreifen! Wie ihr das gemacht habt, da blick ich noch nicht durch.


    Da sich 22disk nicht installiert, werde ich mal samconv und samdisk ausprobieren, um kermit und mprobe auf den Olympia Boss zu bringen.


    da musst du nichts installieren.

  • Habe das Handbuch anders verstanden:


    "Installing 22DISK


    22DISK will not run without first being installed. To do this, enter

    the following command at the DOS prompt:


    A:22DINST and press the ENTER key."


    Edit: Ah ,sehe grad die PM von Dir. Dann leg ich das Handbuch beiseite :-)

  • Es tut sich einiges mit dem Datenaustausch von und zum Olympia Boss unter CP/M:


    1. Images schreiben mit dem passenden 360 K -Laufwerk

    Die Einstellungen in IMD müssen von 250 kBps auf 300 kBps geändert werden, damit das Schreiben mit einem 360K Laufwerk klappt. Danke fritzeflink für den Hinweis.


    2. Dateien aus einer Olympia-Boss-Floppy extrahieren

    -> Klappt mit 22Disk und der Definition von fritzeflink


    3. Dateien in ein Olympia-Boss-Floppy hineinkopieren

    klappt mit 22Disk noch nicht richtig.Einmal habe ich Dateien im Directory gesehen und beim nächsten Kopiervorgang war die Disk im Boss nicht lesbar. In 22Disk zeigt er sie aber an.


    PAW Da ich hier kein Excel auf der Maschine habe, muss ich den Test mit SAMConv noch etwas schieben.

  • Ich beneide euch so sehr. Mein BOSS steht leider noch bei einem Freund in München. Aber ich verfolge den Thread mit Spannung.

  • Quote

    1. Images schreiben mit dem passenden 360 K -Laufwerk

    Die Einstellungen in IMD müssen von 250 kBps auf 300 kBps geändert werden, damit das Schreiben mit einem 360K Laufwerk klappt. Danke fritzeflink für den Hinweis.



    Das ist abhängig vom Laufwerk. Siehe IMD 4. tips and tricks


    Es gibt dualspeed drives welche die Drehzahl nach DD/HD Diskette und die 'normalen' welche die Datenrate umschalten.


    Entsprechend werden mit IMD die Datenraten aufgezeichnet un müssen je nach Laufwerk beim Schreiben wieder

    passend gesetzt werden.


    Quote

    3. Dateien in ein Olympia-Boss-Floppy hineinkopieren

    klappt mit 22Disk noch nicht richtig.Einmal habe ich Dateien im Directory gesehen und beim nächsten Kopiervorgang war die Disk im Boss nicht lesbar. In 22Disk zeigt er sie aber an.


    Ich habe das Format als 40tr. definiert. Da aber nur 36tr. beschrieben waren kann es

    vielleicht besser sein das Format als 36tr zu definieren.


    Muss ich noch mal drüber schlafen.



    Kannst du mit dem Formatprogramm mal 'spielen' ?


    Bitte Schreib/Leseköpfe auch zwischendurch reinigen und neue Disketten nehmen..

  • Zurück auf Los :-(


    Ich muss nochmal von vorne anfangen mit meinen Tests, da ich dem Ersatznetzteil nicht traue. Habe nach längerem Betrieb bei einer Überprüfung der Spannung am Prozessor 5,6V als Spitzenwert gesehen auf meinem Digitaloszi.

    Laut Datenblatt dürfen die Speicherchips maximal 5,5 V abbekommen und der Prozessor 7V.


    Was nehme ich als Ersatz?


    Habe festgestellt, dass ich für den Betrieb zwingend +12V und -12 V brauche. Die Speicherchips brauchen tatsächlich drei Spannungen (5V, 12 V und -5V)!


    Gemessen habe ich auf der 5V Schiene 1,4 A, wenn nur das Mainboard dranhängt. Leistung auf der 5V Schiene müssten 2 A also 10 Watt reichen oder habe ich da was nicht beachtet?


    Auf +12V waren es 0,41 A , also müssten da 10W locker reichen.

    Auf -12V waren es 0,11 A, also reichen dort 5 W.


    Mit Grafikkarte, Floppys/Harddisk, Tastatur und Monitor wird es ein vielfaches sein.


    Gibt es irgendeine Reihenfolge mit der man das Board mit den drei Spannungen versorgt?


    Gruß Aquarius

  • Ich bestelle dieses FlexATX Netzteil von Reichelt:


    Die 40 W auf der 5V Leitung reichen hoffentlich für Mainboard, 2xFloppy bzw, 1x HDD + Monitor (der zieht auf der 5V Schiene vermutlich nicht so viel, da am Monitorausgang auf jedenfall zwei Pins mit +12V geroutet sind.)


    Die 3,6 W auf der -12V Schiene müssten auch reichen nach meinen Messungen.


    Die Abmessungen passen (65/85/175mm) und der Preis ist auch gut.

  • Ich trau es mich ja fast nicht zu sagen!

    Ich habe jetzt leider zwei defekte Boards hier. Neben dem aus dem Boss D ist es ein identisches Board aus meinem Boss B. Beide Z80.


    Ursache: Board ohne Peripherie an das bessere alte Netzteil angeschlossen, um mal eben einen Kontrollwert von einem funktionierenden Board zu nehmen. Das wars. :sense:  =O=O=O=O


    Nach dem Schock, jetzt auf ein Neues an diesem zweiten Board:

    Habe drei Labornetzteile als Spannungsversorgung angeschlossen und die 5 V am Oszi kontrolliert.


    Ein einfaches Deadtest Eprom auf Basis von PAW s Programmierung habe ich erstellt. Es soll zwei geschachtelte Schleifen auf 0100h und 0280h abwechselnd anspringen. Leider sehe ich auf der Adressleitung A9 nicht den erwarteten Wechsel im Sekundentakt.


    Also gehe ich noch weiter zurück. Wenn ich das richtig interpretiere, schafft der Prozessor nicht mal diese einfache Aufgabe.


    Schafft er einen Speicherdurchlauf aus A0-A15 mit dem NOP-Generator?


    Hier das Ergebnis:


    NOP-Generator (Wenn Eprom V2 gesteckt ist):


    A15


    A14


    A13


    A12


    A11


    A10


    A9


    A8


    A7


    A6


    A5


    A4


    A3


    A2


    A1


    A0


    Bemerkung


    32768


    16384


    8192


    4096


    2048


    1024


    512


    256


    128


    64


    32


    16


    8


    4


    2


    1




    1


    1


    1


    1


    1


    1


    1


    Meist 1


    +Wechsel


    Meist 1


    +Wechsel


    Rechteck


    7,8 kHz


    Rechteck


    15,6 kHz




    Rechteck


    31,3 kHz


    Rechteck


    62,5 kHz


    Rechteck


    125 kHz


    Rechteck


    250 kHz


    Rechteck


    500 kHz





    Auf A0 bis A6 sehe ich schön die Halbierung der Frequenz. ::heilig::


    Wie frisch gelernt, schaue ich auf den Adressleitungen immer nur die Signale an, wenn M1 auf low wechselt:

    Auf A7 und A8 sehe ich Wechsel von 0 und 1

    Auf A9 bis A15 sehe ich nur high Pegel !!! :nixwiss:


    Ich kann mir das nicht erklären und ziehe den Publikums Joker.

    Bin mir ganz sicher, dass jemand da draußen eine Idee hat...........

  • @Aquarius

    Quote

    Wie frisch gelernt, schaue ich auf den Adressleitungen immer nur die Signale an, wenn M1 auf low wechselt:

    Auf A7 und A8 sehe ich Wechsel von 0 und 1

    Auf A9 bis A15 sehe ich nur high Pegel !!!


    Beim Z80-Timing ist folgendes zu beachten:


    Der Zeitpunkt wenn M1 auf low wechselt ist möglicherweise früher als das Anstehen der Adressen. Ist leider in dem Diagramm falsch eingezeichnet, ergibt sich aber aus den Zeiten gerechnet vom Beginn der Clock. Adressen sind nach max. 160nsec stabil, der Wechsel vom M1 auf low findet nach max. 130nsec statt, also bis zu 30nsec vorher. Daher müssen die Adressen mind. 30nsec nach M1 angesehen werden!


    Die nachfolgenden Skizzen können im Z80-CPU Technical Manual nachgelesen werden. Habe es auch hier gefunden:


    Z80-CPU Technical Manual





    Grüße, PAW

  • Hier das Bild während der Prozessor lauter NOPs ausführt:

    grün: Signal M1

    gelb: A9




    OK, wenn ich das große ganze Bild anschaue, dann sehe ich die NOP-Taktung::tüdeldü:



    :fp: Manchmal sieht man den Wald vor lauter Bäumen nicht.


    Prozessor funktioniert also soweit. :sunny:

  • Diesen Ersatz für das 2716 Eprom hole ich mir auch noch für die Experimente mit dem Deadtest von PAW:


    DS1220AB/AD16k Nonvolatile SRAM


    The devices also match the pinout of the 2716 EPROM and the 2816 EEPROM, allowing direct substitution while enhancing performance.

    NVRAM Chip von Dallas als Ersatz für mein 2716 Eprom funktioniert! Jetzt kann ich beliebig viele Deadtest Routinen zusammenstöpseln und im Rechner testen ohne dass mir die 40 Jahre alten Eproms den Geist aufgeben.


    Kostet zwar ein paar Euro, aber das lohnt.


    Programmierbar z.B. mit dem TL866CS Eprommer.

  • Dank PAW habe ich die ersten Tests am RAM durchführen können und stecke jetzt seit Stunden an folgendem Problem fest:


    Der Speicher unterhalb von 8000h wird vom mehrfach eingeblendeten EPROM belegt und lässt sich so nicht "sehen". Welcher der 51 TTL-Chips ist zuständig für die Umschaltung EPROM/RAM und wie wird diese aktiviert?


    Hier ein Übersichtsbild mit durchnummerierten Chips:


  • WENN BEIM Z80-SYSTEM NICHTS MEHR GEHT ….


    Bootet der Rechner nicht mehr, kommt auch keine Meldung am Bildschirm, was tun?


    Wie Aquarius schon vorgezeigt hat, sind einige Tests an der Hardware nötig, wie Spannungen prüfen, sehen ob der Takt passt, etc. Auch der NOP-Test ist gut. Er zeigt, ob der Adressbus in Ordnung ist. Dazu wird, laut Aquarius, die CPU auf einen Zwischensockel gesteckt, bei dem die Datenleitungen CPU-seitig auf LOW gelegt sind. Dies simuliert der Z80-CPU lauter NOP-Befehle und sie sollten linear von 0000 bis FFFF durchlaufen. Dabei sollte sich die Frequenz auf den Adressleitungen von einem Pin zum anderen jeweils halbieren (beginnend z.B. bei A0). Was dabei nicht geprüft werden kann, sind die Datenleitungen (platinenseitig).


    Für einen weiteren Test habe ich ein kleines Programm für das Boot-ROM geschrieben. Dazu benötigt man aber, neben einem Scope (wie beim NOP-Test) auch ein EPROM-Programmiergerät.


    Das kleine Testprogramm macht nichts anderes, als in einer Endlosschleife zwischen zwei Adressbereichen hin und herzuhüpfen. Es verbringt dabei jeweils ca. 1 Sekunden im Adressbereich ab 180H und eine weitere Sekunde auf 200H in einer Warteschleife.


    Dies ermöglicht es die Funktion mit einem Scope zu überprüfen, indem man die Adressleitungen A7 oder A8 ansieht. Dabei muss man auf den M1-Pin vom Z80 Triggern, sonst bekommt man einen Datensalat, da der Refresh des Z80’ immer weiter läuft. Auf dem Scope sollte nun ein „Blinken“ der genannten Adressleitungen im 2-Sekundenrhytmnus sichtbar sein. Ist das der Fall, dann sind die Chancen auf einen funktionierenden Prozessor gestiegen.


    Dieses Testprogramm ist für alle Z80-Rechner einsetzbar (nicht nur für BOSS).


    HWTEST 002 for IPL Z80.zip


    Das Testprogramm passt in ein mindestens 1KB großes EPROM oder NVRAM, z.B. 2716 für BOSS B Z80. Der Rest der BIN-Datei kann entfallen. Das EPROM muss im Speicherbereich des Z80 ab Adresse 0000 positioniert sein, also nach dem Reset gestartet werden.


    Vielleicht kann Aquarius Näheres über seine Erfahrungen damit berichten!


    Ich wünsche Gutes Gelingen!


    PAW

  • PAW hat mir mit seinem RAM-unabhängigen Z80 Code echt weitergeholfen. Jetzt weiß ich schon einiges mehr über mein exotisches defektes System.


    Der Prozessor arbeitet und auch die Peripheriechips werden angesprochen. Gerade habe ich herausgefunden, dass der Beeper mit


    OUT(32d),A


    aktiviert werden kann!


    Es kommen die Adressleitungen A4, A5, A6 und A7 in Frage für die Ansteuerung der Peripherie. (LS138 #34)


    Es bleibt spannend !


    Aquarius

  • Hallo PAW,


    Du hattest Recht! Auch die Wegblendung des Eproms funktioniert mit dem LS138:


    OUT(96d),A


    Ist das erste Bit gesetzt geht der CE des Eproms auf High also inaktiv!


    Ich kann es noch nicht ganz glauben, aber der Rechner stürzt sofort ab, wenn ich ihm das Eprom wegziehe - ein gutes Zeichen. :sunny:


    Einen wunderschönen Abend wünscht


    Aquarius

  • Jetzetle...das neue Netzteil hängt an meinem ausgebauten Boss B Board und macht genau das was es soll - stabile Spannungen für den Oldie liefern.


    Der Lüfter ist auch noch erstaunlich leise.


    Nur der Anschluß am Board ist eine Frikelei. Da ich das Originalkabel mit Stecker nicht opfern will, habe ich die ganzen Pins des ATX-Steckers vereinzelt. Diese stecken jetzt neu sortiert im Anschluß des Boss. Ist nicht gerade wartungsfreundlich und auch noch sehr fehleranfällig.


    Da die Molexstecker zu nah beieinander sind, muß ich da auch noch etwas passendes basteln für die Floppylaufwerke bzw. die Festplatte.

  • WENN BEIM Z80-SYSTEM NUR WENIG GEHT ….


    Wie Aquarius schon berichtet hat, läuft sein BOSS wieder, was sehr erfreulich ist.


    Nach dem anfänglichen Test, mit HWTEST 002, war es nötig einen Speichertest zu entwickeln, mit dem die 32 RAM-Chips getestet werden konnten, da wir vermuteten, dass dort etwas nicht stimmt. Das war leichter gesagt als getan! Das IPL-EPROM, ein 2716er Baustein mit 2KB Speicher, liegt im Adressbereich des Z80 von 0000H bis 07FFH.


    Da er nicht völlig ausdekodiert ist, spiegelt er sich bis zur Adresse 7FFFH mehrfach. Deshalb kann man auf einfachem Weg nur den RAM-Bereich von 8000H bis FFFFH testen. Dies ist auch geschehen, was aber keine Auffälligkeiten zu Tage brachten.


    Da uns vom BOSS keine technischen Unterlagen zur Verfügung stehen, war es notwendig in mühsamer Kleinarbeit von Aquarius die Platine zu analysieren um den Umschaltmechanismus herauszufinden, mit dem man das EPROM ausblendet und das untere RAM aktiviert. Des Weiteren war es nötig, ein Ausgabemöglichkeit zu finden, da ja auch kein Bildschirm zur Verfügung stand. Die V24-Schnittstelle hat sich angeboten, Aquarius musste aber erst die I/O-Adresse ausfindig machen, was auch gelang.


    Dann konnte ich das Testprogramm entsprechend erweitern. Eine Herausforderung war, wie schon beim vorigen Test, dass der komplette Code ohne RAM auskommen muss, da dieses ja defekt sein konnte. Dies galt zumindest für den ersten Teil des Tests. Zum Umschalten auf das untere RAM musste ein Teil des Programms vom ROM in den oberen RAM-Bereich kopiert werden, da sonst die Umschaltung zu einem Absturz geführt hätte. Um sicher zu gehen, wurde der kopierte Code noch mal mit dem ROM abgeglichen. Dann erfolgte der Sprung in das obere RAM. Die Befehle dafür wurden zuvor im RAM abgelegt, waren aber bereits für die Zieladresse im oberen RAM assembliert. Dies lässt sich im M80 (Makroassembler) mit dem Befehl .PHASE erreichen.


    Eine weitere Herausforderung war, dass ich das Programm  nicht selbst testen konnte, sondern immer eine Version an Aquarius sandte, der diese ausprobierte und mich mit den entsprechenden Rückmeldungen versorgte.


    Um nun anderen BOSS Usern diese Mühe zu Ersparen, stellen wir das Testprogramm zur Verfügung, natürlich auf eigenes Risiko! ACHTUNG! Das Programm läuft nicht auf anderen Z80-Rechnern!


    RAMLOW 007.zip


    Das Testprogramm passt in ein mindestens 2KB großes EPROM oder NVRAM, z.B. 2716 für BOSS B Z80. Der Rest der BIN-Datei kann entfallen.


    Die Kommunikation findet über die serielle Schnittstelle RS232 (V24) statt.

    Die Parameter dafür sind: 9600 Baud asynchron, 1 Startbit, 8 Datenbits, No Parity, 1 Stopbit


    WICHTIG! Damit die Daten gesendet, bzw. empfangen werden können, sind die Eingänge CTS und DCD zu aktivieren (z.B. mit + 8 Volt laut Aquarius)


    Die Funktion: führt diverse Tests mit verschiedenen Testmustern (Pattern) durch. Die Teilschritte werden jeweils über die serielle Schnittstelle angezeigt. Tritt ein Fehler auf, wird ein kurzer Hexdumpgesendet und das Programm geht in eine Endlosschleife.


    Damit man auch die Daten ansehen kann, wenn kein Fehler auftritt, gibt es die Möglichkeit bei den „oberen“ Tests einen Dump mittels Senden eines „D“ anzufordern. Dann wird der komplette Speicher gedumpt. Danach beginnt wieder der erste Test im LOW-RAM. Wird während des Dumps ein „A“ empfangen, dann wartet auf das nächste Zeichen (Pause). Kommt noch mal ein „A“, dann erfolgt ein Abbruch, d.h. als ob am Ende des RAMs angekommen wäre. Ansonst setzt der Dump fort.


    Hier ein Auszug aus dem Protokoll (war noch mit Version 006) bei dem der Fehler im RAM aufgezeigt wurde.


    BOSS SHORT-TEST for RAM Vers.0.06

    RAM 8000H - FFFFH TestPattern: 00H...

    OK   Pattern: FFH... OK   Pattern: 55H... OK   Pattern: AAH... OK   AdrTest... OK  

    Now copy ROM to RAM... OK   Now jump to RAM... OK

    Now enable LOW RAM... OK   Check for RAM exist... OK

    TEST RAM 0000H - F7FFH TestPattern: 00h... OK   Pattern: FFh... OK   Pattern: 55h... OK   Pattern: AAh... OK   AdrTEST...Err at: 0100   RAM = 01   ABORT!

    0000 00 00 02 00 04 00 06 00 08 00 0A 00 0C 00 0E 00

    0010 10 00 12 00 14 00 16 00 18 00 1A 00 1C 00 1E 00

    0020 20 00 22 00 24 00 26 00 28 00 2A 00 2C 00 2E 00

    0030 30 00 32 00 34 00 36 00 38 00 3A 00 3C 00 3E 00

    0040 40 00 42 00 44 00 46 00 48 00 4A 00 4C 00 4E 00

    0050 50 00 52 00 54 00 56 00 58 00 5A 00 5C 00 5E 00

    0060 60 00 62 00 64 00 66 00 68 00 6A 00 6C 00 6E 00

    0070 70 00 72 00 74 00 76 00 78 00 7A 00 7C 00 7E 00

    0080 80 00 82 00 84 00 86 00 88 00 8A 00 8C 00 8E 00

    0090 90 00 92 00 94 00 96 00 98 00 9A 00 9C 00 9E 00

    00A0 A0 00 A2 00 A4 00 A6 00 A8 00 AA 00 AC 00 AE 00

    00B0 B0 00 B2 00 B4 00 B6 00 B8 00 BA 00 BC 00 BE 00

    00C0 C0 00 C2 00 C4 00 C6 00 C8 00 CA 00 CC 00 CE 00

    00D0 D0 00 D2 00 D4 00 D6 00 D8 00 DA 00 DC 00 DE 00

    00E0 E0 00 E2 00 E4 00 E6 00 E8 00 EA 00 EC 00 EE 00

    00F0 F0 00 F2 00 F4 00 F6 00 F8 00 FA 00 FC 00 FE 00

    0100 01 01 03 01 05 01 07 01 09 01 0B 01 0D 01 0F 01

    0110 11 01 13 01 15 01 17 01 19 01 1B 01 1D 01 1F 01

    0120 21 01 23 01 25 01 27 01 29 01 2B 01 2D 01 2F 01

    0130 31 01 33 01 35 01 37 01 39 01 3B 01 3D 01 3F 01


    Beim Adresstest wird die aktuelle Adresse als Daten ins RAM geschrieben. Damit sieht man unter anderem, ob es irgendwelche Spiegelungen gibt.


    Vielleicht kann Aquarius Näheres berichten, was wir aus dem Protokoll lesen konnten und wie der Fehler behoben wurde!


    Ich wünsche Gutes Gelingen!


    PAW