"Minidisk" Philips X1250

  • Erste Versuche mit FLUXTEEN ergeben folgendes:


    Ein Fehler in meiner Interface-Belegung ist aufgetaucht: Pin 12 und Pin 14 sind vertauscht!

    Richtig ist:

    Pin 12: Step

    Pin 14: Step Direction


    Ansonsten funktioniert die Kopfansteuerung durch FLUXTEEN problemlos. Spuren können angefahren werden, das Signal Track 0 wird erkannt.

    Die Schrittgeschwindigkeit ist für die Festplatte etwas niedrig, weshalb die Trackwechsel ziemlich laut sind. FLUXTEEN bietet mir zwar ein C<onfig>-Kommando an, aber damit kann ich nur die Konfiguration anzeigen - bisher habe ich es nicht geschafft, dort Parameter zu übergeben.


    Leider hält FLUXTEEN das Laufwerk aufgrund der (im Vergleich zu Floppys) hohen Drehzahl für eine hartsektorierte Diskette, vermisst aber dann das Track-indexloch. Deshalb ist z.B. eine Drehzahlmessung nicht möglich. Ich fürchte, dass deshalb FLUXCOPY auch nichts großartiges machen wird. Darum habe ich jetzt auch noch keinen Windows-Rechner gesucht, um das mal auszuprobieren.


    Ich werde jetzt zunächst mal meinen Teensy auf FLUXTEEN 075 aktualisieren. Mal sehen, ob sich was ändert ...

  • Zitat von Georg

    FLUXTEEN bietet mir zwar ein C<onfig>-Kommando an, aber damit kann ich nur die Konfiguration anzeigen - bisher habe ich es nicht geschafft, dort Parameter zu übergeben.

    Code
    // config drive parameters:  upper case 'C'
    // C=DriveN,MaxTrack,MotorOnTime,UnitSelToStepTime,ChangeStepDirTime,StepToStepTime,HeadSettingTime$
    // no spaces allowed, first nonnumeric char terminates the input (except comma)
    // MaxTrack is highest track number (starting at 0)
    // all timing values in milli seconds        
    
    // e.g.: C=1,39,1000,22,33,44,55 
    
    // display all parameters:  lower case 'c'

    Ein großes C eingeben um die Parameter zu ändern. Ein kleines zeigt nur an.



    Zitat von Georg

    Leider hält FLUXTEEN das Laufwerk aufgrund der (im Vergleich zu Floppys) hohen Drehzahl für eine hartsektorierte Diskette, vermisst aber dann das Track-indexloch.

    Von welchen Umdrehungszeiten reden wir hier? Bitte um Info betreffend Drehzahl.


    FLUXTEEN 075 wird diesbezüglich auch nicht anders reagieren.


    Grüße


    PAW

    • Offizieller Beitrag

    Von welchen Umdrehungszeiten reden wir hier? Bitte um Info betreffend Drehzahl.

    Ca. 170ms pro Umdrehung.

  • Von welchen Umdrehungszeiten reden wir hier? Bitte um Info betreffend Drehzahl.

    Ca. 170ms pro Umdrehung.

    Sicher? Das wären ja rund 6 Drehungen pro Sekunde und damit auch "nur" 360 U/min.


    Ich meine es sind 720 U/min - sowohl mit dem Oszilloskop als auch mittlerweile per Software gemessen. Sollte ich mich so gründlich verguckt/verrechnet haben?


    Ich habe nämlich mittlerweile die FLUXTEEN-Hardware mit eigener Software ausgestattet und versuche damit, die Disk zu vermessen und die Daten zu lesen. Der Teensy ist ja wirklich sauschnell; ich habe den Eindruck, dass ich - auch ganz ohne Optimierung und mit den lahmen Arduino-Portzugriffen - die einzelnen Pulse problemlos erkennen kann.


    Ob das auch noch klappt, wenn ich die Daten verarbeite oder zwischenspeichere wird sich allerdings noch zeigen.


    Aber ich bin noch ganz am Anfang und muss das alles erst noch verifizieren.

  • Zitat von Georg

    FLUXTEEN bietet mir zwar ein C<onfig>-Kommando an, aber damit kann ich nur die Konfiguration anzeigen - bisher habe ich es nicht geschafft, dort Parameter zu übergeben.

    Code
    // config drive parameters:  upper case 'C'
    // C=DriveN,MaxTrack,MotorOnTime,UnitSelToStepTime,ChangeStepDirTime,StepToStepTime,HeadSettingTime$
    // no spaces allowed, first nonnumeric char terminates the input (except comma)
    // MaxTrack is highest track number (starting at 0)
    // all timing values in milli seconds        
    
    // e.g.: C=1,39,1000,22,33,44,55 
    
    // display all parameters:  lower case 'c'

    Ein großes C eingeben um die Parameter zu ändern. Ein kleines zeigt nur an.

    Danke. Ich hatte es auch mit dem großen Zeh ;) mal versucht, aber vemutlich dann ein Leerzeichen dahinter.

  • meine Platte habe ich noch nicht angeschlossen. Dass es einen Schreibschutz über die Stromversorgung gibt, ist nachzuvollziehen. Das Netzteil hat vermutlich ein Power Good Signal geliefert, um zu verhindern, dass bei zusammenbrechender Spannung die Daten auf der Platte verpfuscht werden.

    Vielen Dank für die Detailinfos!

    Ja, das war früher ein Problem! MeinChef hat mir mal erzählt, wie sie bei Bertholt (Photosatzfirma) einen Stromausfall hatten und die Platte in ihrem Todeskrampf zwar noch den Kopf geparkt hatte, dabei aber eine Spirale aus Unheil auf die Scheibe geschrieben hat. Er sei wohl mehrere Wochen beschäftigt gewesen auszurechnen, welche Sektoren wo schadhaft waren und dann mit dem Debugger und an Hand von Kopien der Systemdateien die Bits alle wieder im wahrsten Sinne des Wortes gerade zu biegen. Am Ende war es wohl ein Erfolg und das System konnte weiter genutzt werden.

  • Mittlerweile habe ich der Platte eine Reihe ihrer Geheimnisse entrissen:

    • Die Platte ist mit MFM beschrieben.
    • Die Aufzeichnung erfolgt softsektoriert, obwohl die Platte eigene Sektorkennungen hat, die auch von der Elektronik aufgenommen werden. Wie weiter oben bereits geschrieben wurde steht dieses Signal am Interface aber nicht zur Verfügung. :grübel:
    • Tatsächlich sind 60 Sektoren á 256 Byte formatiert; der Interleave beträgt 6
    • Zur Synchronisation werden zunächst für die Dauer von mindestens 10us lange Pulse (1us) geschrieben, gefolgt von ca. 80us mit kurzen Pulsen (je 0,5us). Zum Abschluss folgt eine Sequenz 1000ns, 750ns, 1000ns, 750ns. Diese Abschlussfolge ist bei MFM-Kodierung nicht möglich und bietet mir damit einen eindeutigen Startpunkt für die folgenden Daten.
    • Der Sektorheader besteht aus 6 Byte: zunächst eine Kennung (0x7F), dann 2 Byte für Spur bzw. Zylinder und Seite (muss ich noch klären, ich arbeite zur Zeit nur mit den Daten der ersten Spur). Als nächstes folgt die Sektornummer und anschließend zwei Byte (vermutlich CRC über den Sektorheader).
    • Der Datenbereich beginnt ebenfalls mit einer Kennung (0xFD), gefolgt von 256 Byte Nutzdaten. Auch hier gibt es noch zwei bis vier Byte, die ich noch nicht geklärt habe - mindestens eine CRC-Prüfsumme erwarte ich dort.
    • Bei der Formatierung wurden übrigens die Datenbereiche der Sektoren nicht angelegt - stattdessen wurde eine überlange Synchronisationsfolge geschrieben (knapp 1300us lange Impulse), die genügend Platz lässt für den Datenbereich. Beim Schreiben der Daten wird dann da drüber eine eigene (kurze) Synchronisationsfolge und dann der Datenbereich geschrieben - der Rest der ursprünglichen Sync.-Folge bleibt erhalten zur Erkennung des nächsten Sektorheaders.

    Zur Erläuterung des letzten Punktes hier eine abstrakte Darstellung:


    Frisch formatiert:

    LLLLLLKKKKX <1. Sektorheader> LLLLLLLLLLLLLLLLLLLLLLLLLLLLL...........LLLLLLLLLLLLLKKKKKX <2. Sektorheader> LLLL......


    Beschrieben:

    LLLLLLKKKKX <1. Sektorheader> LLLLLLLLLLLLKKKKKKKKKKX <Sektordaten> LLLLLLLKKKKKX <2. Sektorheader> LLLL......


    (L = Langer Puls, K = kurzer Puls, X = Abschlussfolge, fett = neu geschrieben)


    Hier ein Dump von zwei Sektoren, die mir zeigen, dass ich mit der Dekodierung und Synchronisierung auf dem richtigen Weg bin:




    Wie man sieht handelte es sich bei dem System mindestens um eine Anlage für die Finanz- und Lohnbuchhaltung. Das passt zu meinen Erinnerungen.


    Leider habe ich noch immer ein paar Probleme mit der korrekten Synchronisierung - es gibt immer noch einige Datenbereiche, bei dem ich um genau ein Bit versetzt lese. Ich hoffe, da in Kürze über weitere Erfolge berichten zu können.

    • Offizieller Beitrag

    Das sind aber viele Erkenntnisse für die kurze Zeit. Toll. :thumbup:

  • Naja, war schon ziemlich mühsam, und ich habe schon einige Sackgassen hinter mir.

    Momentan habe ich viel Zeit, und die stecke ich fast komplett da rein.


    Ein großes Glück war das Vorhandensein der FLUXTEEN-Hardware (großer Dank an PAW); das Messen der Fluxwechsel war mit dem flotten Teensy ein Kinderspiel. Der Rest war langwieriges Forschen und Ausprobieren.


    Mittlerweile habe ich auch den letzten Bitfehler behoben (Programmfehler von mir), und insofern genügend Vertrauen in meine Daten und Programme. Damit kann ich mich nun dran setzen, einen Dump der gesamten Platte zu machen.


    Für zukünftige Einsätze (Schreiben und Lesen der Platte) werde ich dann wohl ein eigenes Format verwenden - insbesondere auch wegen der CRC-Polynome, die ich dann ja selber festlegen kann. Das bestehende Format ist mangels Maschine ja obsolet.


    Im Hinblick auf das Ziel "USB-Platte" wären wohl auch 512 Byte große Sektoren sinnvoll. Btw, hat jemand Ahnung, wie ein Plattentreiber aussehen muss? :tüdeldü:

  • Hier kommen noch ein paar weitere Informationen zur Formatierung der Platte:


    Im Sektorheader steht der Reihe nach

    • die Kennung 0x7F
    • die Seite (0x00 bzw. 0x10)
    • die Spur (0x00 - 0xE4)
    • die Sektornumer (0x01 - 0x3C)
    • die 16 Bit Prüfsumme

    Auch der Datenbereich besteht nur aus der Kennung 0xFD, den 256 Nutzdaten und einer 16-Bit Prüfsumme.


    Es sind tatsächlich 229 Spuren formatiert, d.h. die Kapazität der Platte beträgt 6,7 MB (7034880 Byte) netto. Allerdings ist die letzte Spur komplett leer, während die vorletzte vollständig gefüllt ist. Ich gehe deshalb davon aus, dass die Software absichtlich nur 228 Spuren verwendet hat.


    Ich habe inzwischen beide Seiten vollständig ausgelesen; dummerweise ist die von mir empirisch gewählte Grenze zwischen kurzen und mittleren Fluxwechseln für die zweite Seite offenbar nicht ideal; dort finden sich mit meinen Werten in den Synchronsequenzen eine ganze Reihe mittlere Impulslängen, wo es kurze sein müssten. Da muss ich noch etwas tunen.


    Um solche Fehler in den Daten aufzuspüren müsste ich den CRC-Algorithmus knacken - da werde ich demnächst mal ein paar bekannte CRC Polynome durchtesten. Vielleicht findet sich ja etwas passendes.

  • Vielleicht eine besonders doofe Idee, aber vielleicht ist die letzte Spur ja sowas wie eine Remap-Spur? Auch wenn sie nicht umgesetzt wurde?

    ::solder::Ich "darf" beruflich basteln...

  • Guten Morgen

    Georg

    mikemcbike


    Anhand den bisherigen Infos tippen wir das die Magnetplatte ggf.in einem P4000 eingesetzt war, Baujahr ab 81, 82


    nach den zusätzlichen Stichworten,

    Philips Data Systems und

    umfangreiche Sucanfragen ist wahrscheinlich auf der Platte das oder Teile des Datenbanksystem PHIDAS drauf,


    Unter phidas liefen z. B CAD, oder wie in deinem Falle ein Textsysten,


    Anbei noch ein paar Links,


    https://www.sciencedirect.com/…/abs/pii/001044857990174X


    https://www.google.com/url?sa=…Vaw2GDls3TQvPgzhT6YgVbUmh


    https://www.computerwoche.de/a…austein-geometrie,1193867


    https://www.computerwoche.de/a…are-bunt-gemischt,1187591

  • Zitat von Georg

    Um solche Fehler in den Daten aufzuspüren müsste ich den CRC-Algorithmus knacken - da werde ich demnächst mal ein paar bekannte CRC Polynome durchtesten. Vielleicht findet sich ja etwas passendes.

    Du hast ja schon sehr viel rausgefunden!:thumbup:


    Wie wär's, wenn Du ein paar Datensätze hochladen würdest, damit wir auch ein wenig mit dem CRC experimentieren können. Eventuell ein paar Sektorheader. Dort ist der CRC vermutlich am leichtesten rauszufinden, da nur wenige Bytes zu prüfen sind.


    Grüße PAW

  • Guten Morgen

    mikemcbike


    Deinen Ausschnitt über tekatext fand ich, so wie du wohl auch in der Funktechnik von 81, leider wird in dem Bericht nicht auf das Datenbanksystem eingegangen,


    Was auch interessant ist, das es wohl unterschiedliche Philips-Zweige gab, welche aber die selbige ähnliche Hardware verwendet haben,


    So gab wohl damals im Deutsch sprachigen Raum es z. B

    Philips Data Systems

    Philips Kommunikations System


    Wegen dem P4000 /vermutlich kann man dann eher von einem Server / Inhaltsvolumen Serverraum ausgehen, hab ich mal Kontakt mit einem früheren holländischem stämmigen ASP aufgenommen, welcher sich damals auf mit der Reparatur von Philips CNC Steuerung sich befasste,

  • Hier die ersten Header:


    7F 00 00 01 02 7A

    7F 00 00 1B B1 01

    7F 00 00 0A B3 11

    7F 00 00 35 74 AD

    7F 00 00 24 76 BD


    Die beiden letzten Byte sind jeweils die CRC-Ergebnisse.

    Nach meinen bisherigen Recherchen müsste es sich um das CRC16-CCITT Polynom 0x1021 handeln.


    Anhand den bisherigen Infos tippen wir das die Magnetplatte ggf.in einem P4000 eingesetzt war, Baujahr ab 81, 82

    Zu der P4000 habe ich wenig gefunden, aber die Bilder von der P330, die u.a. vor einem halben Jahr hier im Forum auftauchte, kommen mir bekannt vor. Ich bin ziemlich sicher, dass sich dieses Leuchtdiodenpanel oberhalb der Tastatur und das Panel mit den beiden Schlüsselschaltern noch irgendwo bei mir im Keller befinden - das waren einige der Teile, die ich damals ausgebaut habe.


    Weiß eigentlich jemand, was aus dieser P330 geworden ist?

  • Zitat von Georg

    Nach meinen bisherigen Recherchen müsste es sich um das CRC16-CCITT Polynom 0x1021 handeln.


    Der CRC-Calculator kommt zum gleichen Eergebnis: CRC-CCITT (0xFFFF)


    Ich nehme an, dass bei den Datenbereichen der gleiche CRC verwendet wird.

  • Denke ich auch, aber um das zu prüfen werde ich den wohl programmieren müssen. Muss ich wohl sowieso, wenn ich meinen Dump auf Fehlerfreiheit prüfen will. Mal sehen, ob ich heute Abend Zeit dazu finde.

  • Philips P4500 (Büromaschinenlexikon 1982/ 1983)


    -------------------------------------------------------------------------------
    Suche Rechentechnik aus Deutschland, bzw. Computer Deutscher Hersteller - z.B.

    ANKER, AKKORD, CTM (CTM 70, CTM 9000, CTM 9032), DIEHL/ DDS, DIETZ, FEILER, ISE,
    HOHNER GDC, KIENZLE, KRANTZ, NIXDORF, OLYMPIA, PCS/CADMUS, RUF, SALOTA, S.E.I.,
    SIEMAG, SIEMENS, TAYLORIX, TRIUMPH ADLER - TA, WAGNER, WALTHER, WANDERER,...

    -------------------------------------------------------------------------------

  • Philips P4700 (Netz...?)



    Dass hat ein wenig Ähnlichkeit mit unseren P3800, gell Toshi ?

    -------------------------------------------------------------------------------
    Suche Rechentechnik aus Deutschland, bzw. Computer Deutscher Hersteller - z.B.

    ANKER, AKKORD, CTM (CTM 70, CTM 9000, CTM 9032), DIEHL/ DDS, DIETZ, FEILER, ISE,
    HOHNER GDC, KIENZLE, KRANTZ, NIXDORF, OLYMPIA, PCS/CADMUS, RUF, SALOTA, S.E.I.,
    SIEMAG, SIEMENS, TAYLORIX, TRIUMPH ADLER - TA, WAGNER, WALTHER, WANDERER,...

    -------------------------------------------------------------------------------

    Einmal editiert, zuletzt von horniger ()

  • Guten Morgen

    horniger


    Über den P4530, hab ich auch darüber gelesen,

    wenn man sich dann auch alte Berichte durchliest, wie z.b. dies

    https://www.google.com/amp/s/w…anne-in-der-penne,1186194


    wird alles immer stimmiger,


    Erschwerend kommt meiner Meinung nach aber hinzu, manchmal wird nur die Hardware, oder nur die Software erwähnt,


    auch muss Philips ein eigenes entwickeltes Betriebssystem,

    eine eigene Programmiersprache,

    eigene Applikationen angeboten haben,


    zu den Applikationen gab es wohl auch noch unabhängige agierende Firmen, welche Dienstleistungen (Hardware Modifikationen, Software Anpassungen durchgeführt haben,

  • Im Binarium in Dortmund hatte ich bei meinem Besuch 2019 auch als nicht ganz in die Sammlung passend einen P4500 entdeckt:


    -------------------------------------------------------------------------------
    Suche Rechentechnik aus Deutschland, bzw. Computer Deutscher Hersteller - z.B.

    ANKER, AKKORD, CTM (CTM 70, CTM 9000, CTM 9032), DIEHL/ DDS, DIETZ, FEILER, ISE,
    HOHNER GDC, KIENZLE, KRANTZ, NIXDORF, OLYMPIA, PCS/CADMUS, RUF, SALOTA, S.E.I.,
    SIEMAG, SIEMENS, TAYLORIX, TRIUMPH ADLER - TA, WAGNER, WALTHER, WANDERER,...

    -------------------------------------------------------------------------------

  • Sehr

    einen P4500

    Sehr schön.


    So einen hatte ich gegen 91/92 mal aus der Eifel (Daun) geholt und dann im Keller stehen.


    Das System stand als Warenwirtschaftsystem (Cobol) in einer Schreinerei mit Sägewerk.

    In wie weit ein eigenständiges OS vorhanden war kann ich nicht mehr sagen, die Kiste wurde 1994 abgegeben.


    Verbaut waren eine Masterplatine für gemeinsamen Drucker und 6 Slaveplatinen mit Terminalanschluss. CPU war 8080/85

    5 Terminals waren auch dabei. Transportiert wurde das Teil in einem Audi Avant, leider war kaum Dokumentation dabei.


    Es entsprach nicht wirklich meinem Sammelmuster.


    https://oldcomputers-ddns.org/…p4500_masterboard_010.jpg

    Mit freundlichen Grüßen


    fritz

  • Das Gerät ganz rechts sieht mit seinem 5,25" Laufwerk ja fast modern aus.

    Schön, was man hier so erfährt und mit welcher "Liebe" so eine Festplatte ans Laufen gebracht wird, Danke dafür.

    ::solder::Ich "darf" beruflich basteln...

  • Anhand den bisherigen Infos tippen wir das die Magnetplatte ggf.in einem P4000 eingesetzt war, Baujahr ab 81, 82

    Zu der P4000 habe ich wenig gefunden, aber die Bilder von der P330, die u.a. vor einem halben Jahr hier im Forum auftauchte, kommen mir bekannt vor. Ich bin ziemlich sicher, dass sich dieses Leuchtdiodenpanel oberhalb der Tastatur und das Panel mit den beiden Schlüsselschaltern noch irgendwo bei mir im Keller befinden - das waren einige der Teile, die ich damals ausgebaut habe.

    Puh, in der letzten Ecke habe ich es jetzt gefunden:



    Inklusive Original Kaffee-/Cola-/??-Flecken aus den späten 80ern - Saubermachen habe ich damals nicht für nötig gehalten.


    Zum Vergleich nochmal die Ansicht einer P330:



    Meine Festplatte stammt definitiv aus so einem Teil.


    Den CRC-Algorithmus habe ich mittlerweile auch implementiert und festgestellt, dass ich doch noch den einen oder anderen Lesefehler habe.

    Ich habe mal eine statistische Analyse über alle Fluxwechsel auf der Platte gemacht und dabei festgestellt, dass die von mir gewählten Grenzen zwischen lang/mittel/kurz theoretisch ganz ok sind.

    In der Praxis ist es aber möglicherweise sinnvoll, die Grenzen doch noch etwas zu verschieben. Für solche Versuche muss ich aber zunächst mal meine Software noch etwas konsolidieren.

  • Guten Abend,

    dann muss ich jetzt wohl korrieren, und da wohl das System P4000 später als das System P4500 erwähnt wird umschwenken,


    Zu der P330 fand ich noch dies gestern Abend,


    https://www.old-computers.com/museum/doc.asp?c=354


    dort wird eine Floppy mit 220V erwähnt