eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProcesor NMOS i karta CFRe: Procesor NMOS i karta CF
  • 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ę.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: