AI_PASSIVE

  • 422 Posts
  • 20 Comments
Joined 4 years ago
cake
Cake day: May 3rd, 2022

help-circle














  • LPT/ECP Covox na DMA.

    W trybie ECP można przesyłać dane przez LPT za pomocą kanału DMA. Tylko nie można tego robić automatycznie w określonych interwałach. Trzeba używać protokołu handshake tego portu.

    pin 1 to w tym trybie HostClk - sygnał, że dane są gotowe. pin 10 to w tym trybie PeriphAck - sygnał, że dane zostały odebrane

    Pomyślałem, że można użyć NE555 do wysyłania sygnału ACK z częstotliwością próbkowania.
    Gemini zaproponowało, żeby dodać jeszcze bufor 74HC574, żeby zatrzaskiwać go zgodnie z częstotliwością próbkowania, żeby uniknąć Jittera, bo nie ma gwarancji, że dane na porcie będą się pojawiać dokładnie w tych samych odstępach.

    Wadą jest to, że NE555 zapewnia stałą częstotliwość próbkowania. Starałem się by taka wersja była tania w produkcji jak oryginał.

    Z ciekawostek:

    • Oryginalnie ten standard był wyjściem magistrali komputerów, dlatego ma takie sygnały jak Select.
    • SPP na karcie w IBN 5150 było zbudowane na kilku dyskretnych układach 74.
    • ECP/EPP dodało adresowanie urządzeń.
    • Dodano dwukierunkowa transmisję danych
    • W ECP kontroler portu ma nawet bufor FIFO na jedną linię pamięci.
    • w EPP dodano sprzętową obsługę handshake - wysyłasz tylko dane do jednego portu, a reszta (czekanie na drukarkę i wysyłanie kiedy jest gotowa) dzieje się sama.

    Jakby kogoś ciekawiło, to dowiedziałem się nawet jakie techniki były używane w programowej obsłudze covox. Ale pewnie sami się możecie domyślić.

    Tu macie materiały po polsku szczegóły o rozwoju LPT:

















  • Ja lubię prostotę. Uważam, że prostota nie jest dzisiaj dziedziną Linuksa na desktopie. No chyba, że się nie chce mieć połowy funkcjonalności komputera. Bo wszystko jest napisane pod jedną konfigurację dystrybucji (Linux/glibc/systemd/pipewire, a niedługo Wayland). Nikt nie słuchał Sosa w sprawie self-sustainable software.

    Przynajmniej ja nie mam takich umiejętności do konfiguracji systemu.

    Alpine umie się bootować, więc uznałem, że to bardziej powszechne.







  • Mi wytłumaczono, że karty w przeglądarce to zobowiązania i są obciążeniem dla umysłu. Więc nie powinno ich być. Nie powinno się ich kolekcjonować. Powinno się oczyszczać środowisko z takich rzeczy. Powinny być przywoływane, kiedy będą potrzebne. Najlepiej jest myśleć, że jeśli jest ważne, to wróci/znajdę to ponownie.


  • Jest jeszcze rozwijany następca tytułowego o nazwie QB64. Gdzieś też widziałem współczesną wariację na temat tego języka. Autor chyba nawet starał się, żeby bootowało z Pendrive z podkładka w postaci BSD. Ze względu na lekkość i dobre wsparcie dla FB. Działało tez w przeglądarce. W Japonii jest Basic dla RPi bare metal. Do nauki programowania dla dzieci. Nie widziałem nigdzie odpowiednika Dark Basic. Który był chyba najbardziej rozwiniętym, w sensie miał duże możliwości.