-
Data: 2024-06-07 16:18:49
Temat: Re: Procesor NMOS i karta CF
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 7.06.2024 11:45, J.F wrote:
> To może być kwestia Twojego podejscia do programu.
> Masz przeczytać 512 bajtów, to odbieraj 512, z zabezpieczeniem
> czasowym, a nie wysyłaj komendę odczytu, a potem odbieraj póki są
> dane.
Prawdę mówiąc nie bardzo rozumiem co mi da takie podejście. Karta
otrzymuje komendę wysłania określonej liczby sektorów i wysyła je
ustawiając flagi. Jeśli w pewnym momencie to się rozjedzie i karta z
jakiegoś powodu wyśle więcej (lub mniej) danych niż ją o to poproszono,
to i tak jest unrecoverable error. A już na pewno CP/M nie jest na tyle
inteligentny, żeby z takiej sytuacji się wywinąć i jedynym rozwiązaniem
będzie reset. Tak więc tak czy inaczej, niezależnie od podejścia mamy
ten sam wynik - niedziałający system.
Wyjście jest jedno - trzeba będzie namierzyć przyczyną i ją usunąć. Przy
czym na chwilę obecną nie jestem nawet pewien czy oryginalny problem z
przeskakiwaniem bajtów faktycznie jest przyczyną obecnych kłopotów ze
stabilnością.
Te nowe problemy pojawiły się dopiero wtedy, gdy zacząłem dodawać do
BIOS-a procedury odpowiedzialne za operacje dyskowe. Gdy początkowo w
ich miejscu były tylko podstawowe stuby (za sprawą których system
myślał, że ma do czynienia z pustym, niesformatowanym dyskiem) wszystko
działało poprawnie i stabilnie, chociaż oczywiście niewiele dało się w
takim systemie zrobić. ;)
Teraz dzieją się rzeczy dziwne - system czasem wylistuje zawartość
dysku, czasem pokaże tylko część plików, a czasem się zawiesi podczas
tej operacji. Dodałem trochę printów debugowych, ale to wprowadziło
kolejne problemy. Bo teraz na przykład widzę, że podczas wstępnego
sprawdzania dysku ładowane są kolejne sektory, ale z jakiegoś powodu po
ukończeniu tej operacji system zawiesza się zaraz po wyświetleniu
prompta i przestaje reagować na klawiaturę - ale tylko jeśli włączę te
debugi.
Oczywiście możliwe, że jest to winą tego oryginalnego problemu z kartą
(bo np. dodatkowy kod zwiększa prawdopodobieństwo, że gdzieś jednak
przeskoczy ten bajt) ale równie dobrze może to być coś zupełnie
niezwiązanego, np. przepełnienie stosu.
Więc chyba najlepiej byłoby faktycznie zrobić moduł z buforami i
zobaczyć czy ogólnie poprawi to sytuację. Jeśli dotychczas niedziałające
karty nagle zaczną działać będę wiedział, że przyczyna leży gdzie
indziej. Bo faktycznie dość dziwnie wygląda fakt, że tylko na jednej
karcie CP/M w ogóle chce się bootować i nijak nie daje mi to gwarancji,
że jej działanie jest w 100% poprawne.
> Oscyloskp by się przydał, i to szybki, 2 czy więcej kanałowy, żeby
> zobaczyc co się tam na pinach karty wyrabia, łącznie z masą i
> zasilaniem ...
W wolnej chwili spróbuję się podpiąć i zobaczę.
Następne wpisy z tego wątku
- 07.06.24 19:00 Atlantis
- 25.06.24 09:26 Atlantis
- 03.07.24 08:10 Atlantis
- 04.07.24 08:13 MKi
- 05.07.24 12:13 J.F
Najnowsze wątki z tej grupy
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
Najnowsze wątki
- 2025-03-03 a Ty jak się zachowasz w godzinie próby?
- 2025-03-03 nie naprawiam więcej telewizorów
- 2025-03-03 Białystok => Gen AI Engineer <=
- 2025-03-03 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-03-03 Olsztyn => Sales Specialist <=
- 2025-03-03 Gdy ministrowie sa golodupcami
- 2025-03-03 Pruszków => Specjalista ds. public relations <=
- 2025-03-03 Białystok => System Architect (Java background) <=
- 2025-03-03 Białystok => System Architect (background deweloperski w Java) <=
- 2025-03-03 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-03 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-03 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-03 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-03-03 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-03 Mińsk Mazowiecki => Area Sales Manager OZE <=