Witam!
Mam zgryza technicznego. Znajomemu "uszkodził się" pendrive (pies go odgryzł, czy co). W każdym razie miał wyczucie i podzielił PCB między pamięciami (2x FLASH) a kontroleram (i raczej nie nadaje się do zlutowania - wielowarstwowy PCB i wyprute ścieżki).
Znajomy odlutował mi pamięci, kupiłem w Epsilonie ZIFa do tych chipów, zmajdrowałem na podstawie dokumentacji do chipa czytnik i zassałem zawartość do komputera.
I tu jest problem: dane nie są ułożone sekwencyjnie. Dane wyglądają tak:
Ramka ma 2048+64 bajty. W środku wygląda to tak: 4x struktura (512 bajtów sektor + 8 bajtów krzaczków + 8 bajtów 0xFF )
64 ramki tworzą stronę, stron jest 2048.Są dwa scalaki, już wyczaiłem, że system czyta ramki raz z jednego, raz z drugiego.Zrobiłem program, który wywala śmieci z ramki (te wstawki po 16 bajtów między sektorami) oraz skleja ramki z obu chipów w "superramki" po
4096 bajtów a te w "superstrony" po 64 superramki, czyli po 256kB.Jak popatrzę na superramkę, to mam tam zupełnie sensowne dane - dają się odczytać napisy, widać fragmenty struktury dysku (FAT, MBR, itd). Problem z tym, że superstrony nie są w kolejności... Pierwsze 256kB pena jest w superramce 0x0CD. Kończy się to FATem, więc szukając kontynuacji znalazłem
2 następne superramki: 0x0E2 i 2 następne do wyboru : 0x00D albo 0x0B1.I pytanie moje: czy ktoś ma jakiekolwiek pojęcie (nawet teoretyczne, czy nawet "ciocia mówiła"), jak powiązać ramki??? Widzę dwie możliwości: gdzieś w pamięci jest superramka z mapowaniem numerów sekwencyjnych na superramki bądź te śmieci między sektorami zawierają jakąś formę mapy...
Za jakąkolwiek pomoc będę bardzo wdzięczny