Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: SPTH am 16. February 2005, 08:08

Titel: Root_Directory_Entry bei FAT32
Beitrag von: SPTH am 16. February 2005, 08:08
Hi!
Ich hab ein großes Problem:
Wie kann ich das Root_Directory bei FAT32 finden?

Also: Es ist normal Root_Cluster*SecPerCuster:

BRB_Root_Cust: 0xE9 = 233
SectPerClus: 0x20 = 32
relative Root_Directory: 233*32=7456

Und, die erste Partition startet bei 63.

Also müsste das Root_Directory da sein: 7456+63=7519 Sector

Ist es aber nicht, es ist auf Sektor 19094.

Wie geht das?
Ich habe alle werte getestet:
- Partition, die ich suche, ist auf 63(+1).
- BRB_Root_Cust und SecPerClus haben die richtigen Werte
- Real Root_Directory_Entry IST auf Sector 19094.

Ich hab keine idee, wie man auf diesen Wert (19094) kommt.

Hab auch CHS gerechnet und getestet:

Sector = ((LBA Mod Total Sectors) +1)
CylHead = (LBA Div Total Sectors)
Head = (CylHead Mod (Total Heads + 1))
Cylinder = (CylHead Div (Total Heads + 1))

Das kommt auch zu einem Wert (ungefähr) 7519. Ich hab einen kleinen Fehler bei der Umrechnung in CHS, aber ganz sicher nicht so ein großer.

Hat irgendwer eine Idee??
Ich wär für jede Antwort sehr dankbar.

grüsse,
Mario