CP/M-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Memberlist || Home || Statistik || Kalender || Staff Willkommen Gast!
[ Unofficial CP/M Website ] [ Z80 Family Support Page ] [ Forum-Regeln ] [ Impressum/Kontakt ]

CP/M-Forum » CP/M 2.2 » Bootsektor sichern? » Threadansicht

Autor Thread - Seiten: -1-
000
21.04.2013, 19:15 Uhr
Robotrontechnik



Ich habe ein unikates CP/M-System auf Festplatte und möchte den Bootsektor der Platte auf Diskette sichern.
Die Platte arbeitet/bootet (noch) fehlerfrei.
Mit POWER READ kann ich zwar auf alle Sektoren ab Spur 2 (dem Directory) zugreifen, aber bei Zugriff auf die Spuren 0 und 1 bekomme ich nur Fehlermeldungen.

Es ist denkbar, dass die ersten beiden Spuren mit einer anderen Sektorlänge formatiert sind als der Datenbereich.
Ich kenne aber weder die Sektorlänge der Bootspuren noch die der Datenspuren (MODX bzw. DENSX funktionieren da nicht).

Gibt es ein Werkzeug, womit man die Sektorlänge eines Datenträgers ermitteln kann?
Oder ein Werkzeug, dass ohne Nutzung von BDOS-Funktionen Sektoren auslesen kann?

Hat jemand eine Idee, was ich sonst noch probieren könnte?
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
001
22.04.2013, 09:22 Uhr
mtx500



Wenn Du mehr Infos gibst kann ich Dir vielleicht Tips geben.

Welche Art von Festplatte ist denn da verbaut? MFM, RLL, SCSI, IDE? Und falls MFM oder RLL, welcher Festplatten-Controller ist eingesetzt? OMTI, WD1003, selbstgestrickt?
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
002
22.04.2013, 13:42 Uhr
Robotrontechnik




Zitat:
mtx500 postete
Welche Art von Festplatte ist denn da verbaut? MFM, RLL, SCSI, IDE?

Die Platte ist eine Microscience HH725, also Interface ST506 (MFM).
Darauf ist ein MFM-nach-SASI-Wandler der Firma Xebec geschraubt und daran hängt der SASI-Controller des Rechners.
Auslesen der Platte in einem anderen Rechner halte ich für nahezu unmöglich.
Von meinem Rechnertyp hat (leider) nur dieses eine Exemplar überlebt.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
003
23.04.2013, 09:50 Uhr
mtx500



OK, also dieser Controller hier: http://www.swtpc.com/mholley/SASI/XEBEC.htm, Handbuch gibt's hier http://bitsavers.informatik.uni-stuttgart.de/pdf/xebec/104524C_S1410Man_Aug83.pdf.

Leider bietet dieser Controller kein Kommando an, um die IDs der Sektoren auf der Platte herauszufinden, wie dies z.B. der OMTI 5510 kann (siehe Handbuch http://bitsavers.trailing-edge.com/pdf/sms/pc/OMTI_5510_Winchester_Controller_Jun85.pdf Seite 7-9 READ ID command).

Andererseits wüsste ich gar nicht wie der Xebec Controller etwas anderes als die Standardformatierung schreiben und lesen kann. Denn die Sektorlänge (256 oder 512 Byte) wird per Jumper eingestellt, und die Cylinder/Head/Sektor-Nummern in den ID Feldern der Sektoren werden unveränderlich durch die Xebec Firmware kontrolliert. Das einzige was per Software einstellbar ist ist der Interleave, der aber beim Sektor-Lesen eigentlich nicht stören sollte.

Kann es sein dass die ersten beiden Spuren des Laufwerks gar nicht formatiert sind?

Oder war das Laufwerk ursprünglich mal mit einem anderen Controller angeschlossen, so dass dieser vielleicht in der Lage war dort etwas anders formatiert hinzuschreiben?
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
004
23.04.2013, 14:34 Uhr
Robotrontechnik




Zitat:
mtx500 postete
OK, also dieser Controller hier: http://www.swtpc.com/mholley/SASI/XEBEC.htm,

Ja.


Zitat:
Kann es sein dass die ersten beiden Spuren des Laufwerks gar nicht formatiert sind?

Schwer zu sagen.
Da ich im Dateisystem kein CP/M in Dateiform finde und auch keins im ROM, bin ich bisher davon ausgegangen, dass das auf den ersten zwei Spuren der Platte, also außerhalb des Dateisystems, liegt.
Bei den zugehörigen Disketten liegt das OS jedenfalls in den Systemspuren (nebenbei ist hier mein ungelöstes Problem, dass dieser Rechner absolut nicht von Floppy booten will).


Zitat:
Oder war das Laufwerk ursprünglich mal mit einem anderen Controller angeschlossen, so dass dieser vielleicht in der Lage war dort etwas anders formatiert hinzuschreiben?

Ich habe den Rechner erst seit 10 Jahren. Über seine Vorgeschichte weiß ich nichts.

Dieser Post wurde am 23.04.2013 um 14:43 Uhr von Rüdiger Kurth editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
005
23.04.2013, 22:31 Uhr
m.haardt



Was sagt denn der DPB, wieviele Systemspuren es gibt? Was steht auf der dritten Spur?

Michael
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
006
24.04.2013, 14:04 Uhr
Robotrontechnik




Zitat:
m.haardt postete
Was sagt denn der DPB, wieviele Systemspuren es gibt?

Wie kann ich den DPB auslesen?
Der DIR-Befehl funktioniert korrekt, also muss der Spur-Offset korrekt eingetragen sein.


Zitat:
Was steht auf der dritten Spur?

Das Directory des CP/M-Dateisystems.

Dieser Post wurde am 24.04.2013 um 14:05 Uhr von Rüdiger Kurth editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
007
24.04.2013, 21:17 Uhr
mtx500




Zitat:
Rüdiger Kurth schriebDa ich im Dateisystem kein CP/M in Dateiform finde und auch keins im ROM, bin ich bisher davon ausgegangen, dass das auf den ersten zwei Spuren der Platte, also außerhalb des Dateisystems, liegt.

Das CP/M im ROM könnte dort auch komprimiert abgelegt sein und beim Start ins das RAM ausgepackt werden. Dann wäre es im ROM nicht so offensichtlich zu finden.
Gibt es vom Boot-ROM einen Datei-Abzug, den Du uns mal zur Analyse geben könntest?
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
008
24.04.2013, 23:19 Uhr
m.haardt




Zitat:
Rüdiger Kurth postete
Wie kann ich den DPB auslesen?

Mit "stat dsk:".

Michael
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
009
30.04.2013, 15:29 Uhr
Robotrontechnik




Zitat:
mtx500 postete
Das CP/M im ROM könnte dort auch komprimiert abgelegt sein und beim Start ins das RAM ausgepackt werden. Dann wäre es im ROM nicht so offensichtlich zu finden.

Der ROM ist 1 KByte groß. Da passt beim besten Willen kein CP/M rein.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
010
03.05.2013, 21:47 Uhr
volkerp

Avatar von volkerp

Hallo Rüdiger, eine Idee hab ich doch:

Vorausgesetzungen:
- im DPH sind Systemspuren angegeben (OFS > 0)
- die Systemspuren haben das gleiche Format wie die CP/M-Spuren. Aber davon würde ich bei einer Festplatte ausgeben.

Dann könnte man mit POWER im Speicher den DPH patchen und OFS auf 0 setzen. Mit der Power-Funktion zum Lesen einzelner Spuren kannst Du nun die ersten Spuren in einen freien RAM-Bereich lesen. Das müssten jetzt wg. fehlendem Offset die Systemspuren sein. Anschließend wieder OFS auf den originalen Wert patchen und Du kannst den Speicherinhalt in eine Datei sichern.

Vielleicht klappt das ja ...
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
011
04.05.2013, 22:32 Uhr
Robotrontechnik




Zitat:
m.haardt postete
Mit "stat dsk:".

Da zeigt mir POWER die Größe der Laufwerke an und den freien Platz, aber mehr nicht. Ich fürchte, das hilft mir nicht weiter.
Oder meinest Du einen anderen Befehl?
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
012
05.05.2013, 14:00 Uhr
m.haardt



Bei mir sieht das so aus:

A0>stat dsk:

A: Drive Characteristics
1944: 128 Byte Record Capacity
243: Kilobyte Drive Capacity
64: 32 Byte Directory Entries
0: Checked Directory Entries
128: Records/ Extent
8: Records/ Block
26: Sectors/ Track
2: Reserved Tracks

C: Drive Characteristics
32768: 128 Byte Record Capacity
4096: Kilobyte Drive Capacity
256: 32 Byte Directory Entries
0: Checked Directory Entries
128: Records/ Extent
16: Records/ Block
32: Sectors/ Track
0: Reserved Tracks

Wie Du siehst, hat A: zwei Systemspuren. Dort wird das System gespeichert.

Michael
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
013
05.05.2013, 22:30 Uhr
HD64180CPM



Hallo Rüdiger,

ist dein CP/M 2.2 ein System mit Z80!

Dann teste doch mal.

du-v89.lbr B 55808 850318 Disk Utility read/write track/sector

http://z80cpu.eu/mirrors/oak.oakland.edu/cpm/dskutl/

http://z80cpu.eu/mirrors/oak.oakland.edu/cpm/dskutl/du-v89.lbr

Gruss Rolf
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
014
07.05.2013, 14:19 Uhr
Robotrontechnik




Zitat:
HD64180CPM postete
ist dein CP/M 2.2 ein System mit Z80!

Na klar doch.
Sonst würde ich nicht in diesem Forum und diesem Board schreiben.


Zitat:
Dann teste doch mal.
du-v89.lbr B 55808 850318 Disk Utility read/write track/sector

Ist das einfach eine unbenannte COM-Datei oder brauche ich ein Programm, um das auszupacken?



Zitat:
m.haardt postete
A0>stat dsk:

Ah, Du benutzt ein Standalone-STAT.
Dieses Programm habe ich nicht, lediglich den im POWER eingebauten STAT-Befehl.

Dieser Post wurde am 07.05.2013 um 14:27 Uhr von Rüdiger Kurth editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
015
07.05.2013, 18:53 Uhr
m.haardt



LBR ist ein Archiver. Normalerweise sind die enthaltenen Dateien noch gepackt, dafür braucht man dann noch den entsprechenden Entpacker.

Was ist "POWER"?

STAT.COM gehört zu CP/M. Wenn Du CP/M hast, musst Du auch STAT haben.

Michael
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
016
12.05.2013, 10:40 Uhr
volkerp

Avatar von volkerp

http://www.z80.eu/power.html

POWER.COM is a CP/M program which is
"a compact package of system housekeeping utilities and
sophisticated memory/disk monitor functions that will replace many
of the separate now cluttering your disk. POWER has been designed
to give maximum freedom to the CP/M user with special features such
as numbered menus and user protection devices...."
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
017
15.05.2013, 21:10 Uhr
maleuma



Detaillierte Laufwerksinformationen kannst Du auch mit PROBE.COM anzeigen lassen.
Das Programm findest Du z.B. unter http://www.znode51.de/vdisks/v073.arj in der Archivdatei PROBE103.PMA.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
018
16.05.2013, 20:11 Uhr
maleuma




Zitat:
Rüdiger Kurth:
Der ROM ist 1 KByte groß. Da passt beim besten Willen kein CP/M rein.

Bei der Größe von 1KByte würde ich übrigens vorschlagen, das eine K zu reassemblieren. Wenn dort der Urlader drin ist, dann könnte man so auch rausfinden wie der das System lädt.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
019
09.06.2013, 17:14 Uhr
Robotrontechnik



Ich habe die Diagnoseprogramme installiert (War nicht ganz einfach, da das Floppylaufwerk nicht läuft).

Die Ausgabe von DU:


Die Ausgabe von STAT:


Die Ausgabe von PROBE103:



A: und B: sind Partitionen der Platte.

Helfen diese Informationen beim Bootspurproblem weiter?




Zitat:
maleuma postete
Wenn dort der Urlader drin ist, dann könnte man so auch rausfinden wie der das System lädt.

Haben wir schon gemacht.
Ist ziemlich verwirrend, was da drin steht, da wir das Verhalten bzw. die Adressen der Hardware nicht kennen.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
020
09.06.2013, 17:34 Uhr
Robotrontechnik



Und hier die Ausgabe von POWER beim Versuch, auf die ersten drei Spuren von A: zuzugreifen:

Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
021
11.06.2013, 22:32 Uhr
m.haardt



Hallo,

die DPBs sehen vernünftig aus. 68 Sektoren zu 128 Byte sind 17 Sektoren zu 512 Byte, was für eine MFM-Platte passt. Die Partitionierung über OFS war bei CP/M 2 normal.

Den Urlader zu disassemblieren könnte in der Tat die einzige Lösung sein. Kannst Du das ROM in das RAM kopieren? Ein Debugger wie Z8E kann sich an einen Speicherbereich Deiner Wahl laden und damit könntest Du dem Bootvorgang zuschauen. (DDT muss man sich wirklich nicht antun)

Typischerweise lädt der Urlader nur den Bootsektor in den Speicher und startet ihn.

Alternativ suchst Du Dir einen alten PC mit MFM Controller und baust die Platte ohne MFM-SASI Interface um. Danach weisst Du, ob die Spuren das normale Format haben oder evtl. andere Sektoradressen.

Michael
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
Seiten: -1-     [ CP/M 2.2 ]  



gaby.de

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek