atarionline.pl Projekt Zenona - przełącznik ROM A1029 - Forum Atarum

Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

  • :
  • :

Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

    • 1:
       
      CommentAuthorKaz
    • CommentTime20 Jun 2022 zmieniony
     
    W czasie spontanicznego spotkania zoomowego na tematy drukarkowe (SSZNTD), które się odbyło po raz trzeci w ciągu jednego weekendu, pan Zenon z chęcią podchwycił pomysł na zrobienie przełącznika ROM-ów w drukarce Atari 1029. I bardzo mnie to cieszy, bo marzyło mi się, by mieć u siebie zarówno ROM zachowujący się jak nie przerobiony oryginał, jak i wersję Karenu z polskimi znaczkami...

    Zenon rozszerzył tu pomysł do możliwości podmiany wielu ROM-ów, ponieważ kostka pamięci będzie miała 64KB, a to oznacza, że zmieści się aż 16 ROM-ów! A to wynika z tego, że oryginalna kostka pamięci w A1029 to 4KB.

    Zenon:

    Wstępny projekt wybierania ROM z czcionkami dla drukarki 1029. EPROM zaprogramować nowymi wzorami czcionek, wyboru przed załączeniem drukarki dokonuje się przełącznikami A, B, C. EPROM zawiera osiem wzorów czcionek. Pojemniejsza EPROM + dodatkowy przełącznik i wzorów będzie 16.


    Sprawy są więc dwie:
    1) można podrzucać pomysły co w tych ROM-ach umieścić (mile widziane nowe kroje czcionek 5x7),
    2) można zdeklarować się wstępnym zainteresowaniem co do takiego przełącznika, który opracuje nasz nieoceniony Zenon! Wiadomo, zainteresowani i chętni to jakiś sposób motywacji :)
    • 2:
       
      CommentAuthorKaz
    • CommentTime20 Jun 2022 zmieniony
     
    To pierwsze z brzegu pomysły na dodatkowe ROM-y:
    a) dodać zestaw znaków CBM ASCII z Commodore MPS-801
    b) dodać zestaw znaków z Seikhosha GP500
    c) dodać 3 zestawy znaków ułożone nie wedle systemu Karen, ale również pozostałych polskich standardów: TOMS, PE, LK Avalon. Wtedy by można z każdego edytora z polskimi znakami drukować bez żadnego dodatkowego softu, specjalnych sterowników.
    • 3: CommentAuthorZenon
    • CommentTime20 Jun 2022
     
    Kto tam jest biegły, popatrzeć jaka na płycie jest pamięć EPROM i podać jej oznaczenie. Sprawa dwa. Jakiś specjalista niech rozszyfruje zawartość pamięci by określić pod jakimi adresami jest zestaw znaków, bo to trzeba tu podmienić.
    Dodatkowo sprawdzić czy jakaś suma kontrolna nie skomplikuje sprawy.
    No i można by jakiś edytor stworzyć do projektowania czcionek z możliwością wygenerowania pliku końcowego który będzie wsadem dla EPROM.
    • 4:
       
      CommentAuthorPeri Noid
    • CommentTime21 Jun 2022
     
    Co do znaków to ja to kiedyś analizowałem. Są kodowane kolumnowo (pierwsza kolumna, druga, aż do 5-tej). Każda kolumna ma 8 bitów ale używanych jest faktycznie 7. Kolumn jest 5. Czyli znak efektywnie zajmuje 40 bitów.

    I teraz trochę trochę mojej analizy, być może błędnej. Znaki w ROM-ie nie są zakodowane tak po prostu jako jedna tablica - jest fluktuacja, co jakiś czas między znakami pojawia się dodatkowe 16 bajtów. Konkretnie to wygląda to tak:
    $500-$5EF - pierwszy kawałek
    16 bajtów przekładki
    $600-$6EF - drugi kawałek
    16 bajtów przekładki
    $700-$7EF - trzeci kawałek
    16 bajtów końcówki.

    Czyli mamy 3x48 znaków przedzielonych... czymś.

    Nie widać, żeby była jakaś suma kontrolna, różnica między ROM-em oryginalnym a tym z polskimi znakami to tylko te polskie znaczki. Także tu jest prosto.
    • 5:
       
      CommentAuthorKaz
    • CommentTime21 Jun 2022 zmieniony
     
    Schemat, z którego można odczytać numery układów, jest u AtariFana:

    ->link<-
    • 6:
       
      CommentAuthorPeri Noid
    • CommentTime21 Jun 2022
     
    Jest przede wszystkim u Jera.
    • 7: CommentAuthorZenon
    • CommentTime21 Jun 2022
     
    EPROM 2732, znaczy się 4kB.
    Niech się wypowiedzą użytkownicy co chcą. Tak czy owak pojemniejsza pamięć mieć będzie 28 pinów, a to oznacza że cztery z nich wychodzić będą poza podstawkę. Ale to nie problem. Przy zastosowaniu EPROM 27512 + 4 przełączniki, do dyspozycji będzie wybór 1 z 16 zestawów znaków.
    Przełączniki jakoś, gdzieś wmontować trzeba w obudowę a to oznacza podziurawienie jej. Masakra.
    Jakieś propozycje..... pomysły....
    • 8:
       
      CommentAuthorPeri Noid
    • CommentTime21 Jun 2022
     
    Tak na prawdę to ROM ma 2KB. Połowa jest nieużywana. Przełącznik można zrobić na takich swichach jak się ustawia np. Numer stacji w LDW2000/CA2001 - miejsca tyle. Co nic, można wstawić pod maską tak, żeby tylko nie przeszkadzało mechanizmowi drukującemu. Przecież nie musi wystawać na zewnątrz.

    Lekarstwem na za dużo nóżek jest wzięcie mniejszej kości. Przecież 27128 też będzie dobre a pomieści 4 wsady.

    PS. Trzeba dołożyć rezystory na połączeniach z VCC coby się nic nie spaliło.
    • 9: CommentAuthorZenon
    • CommentTime21 Jun 2022
     
    Pamięć 27128 też ma 28 nóżek.
    Brak oporników niczego nie upali. Gdy będą zminimalizuje się liczbę przewodów do przełączników do 5, a przełączniki mogą być jednosekcyjne.
    Schemat mam, pora opracować wsad do EPROM.
    • 10:
       
      CommentAuthorPeri Noid
    • CommentTime21 Jun 2022
     
    Dwa wsady są. Pozostałe - najpierw grafik musi zaprojektować zestaw znaków.
    • 11: CommentAuthorZenon
    • CommentTime21 Jun 2022
     
    Takie rozważania w/g schematu w załączniku.
    Nowa pamięć EPROM 27512 włożona do podstawki. Poza nią znajdą się jej piny 1, 2, 27, 28. Pin 26 należy odgiąć by nie wchodził do podstawki (do pinu 24).
    Kawałkiem przewodu połączyć pin 24 podstawki z pinem 28 EPROM. Chodzi o doprowadzenie zasilania Vcc. Do pinów 1, 2, 26, 28 EPROM doprowadzone będą przewody z przełączników.
    Zaleta: wybór 1 z 16 krojów czcionek.
    Wada: trzeba dolutować kawałek przewodu do płyty drukarki.
    Rozwiązanie 2, bez lutowania przewodu.
    Nowa EPROM 27512 włożona do podstawki. Poza nią znajdą się piny 1, 2, 27, 28.
    Do pinów 1, 2, 27 doprowadzone przewody z przełączników. Piny 26, 28 złączone kawałkiem przewodu. Chodzi o doprowadzenie zasilania do EPROM.
    Zaleta: nie trzeba dolutowywać przewodu do płyty drukarki.
    Wada: wybór 1 z 8 krojów czcionek.

    W obydwu rozwiązaniach pomijam fakt że i i tak do EPROM coś trzeba dolutować. W rozwiązaniu 2 gotowy moduł tylko się włoży do podstawki bez lutowania czegokolwiek do płyty drukarki.
    • 12:
       
      CommentAuthorKaz
    • CommentTime23 Jun 2022 zmieniony
     

    Peri Noid:

    Dwa wsady są. Pozostałe - najpierw grafik musi zaprojektować zestaw znaków.


    Zestawy już są gotowe - można skorzystać z czcionek w Commodore, Amstrad i Philips. W tym ostatnim jest sporo alternatywnych wsadów, bo są nawet z czcionkami koreańskimi, japońskimi, brazylijskimi i cyrlicą... :). Z matrycy 5x7 wiele się wydusić nie da, ale skoro mamy gotowe rozwiązania, to czemu nie skorzystać? Potrzeba tylko odczytać zestawy znaków z konkretnych miejsc w EPROMach i przekonwertować je na nasze potrzeby.

    Peri Noid:

    Połowa jest nieużywana.


    Jesteś pewny?

    PS. Przeklejam schemat Zenona jako plik JPG, żeby pokazał się podgląd:
    • 13:
       
      CommentAuthorPeri Noid
    • CommentTime24 Jun 2022
     
    @Kaz: przestrzeń of $800 do $fff jest wypełniona zerami. Wnioskuję, że po prostu dla matrycy znaków 5x7 nie było potrzeby używania większej pamięci. Ale to kwestia FW, pewnie dałoby się wykorzystać 6x7, co by wymagało dodatkowej pamięci na znaki.

    Ciekawi mnie, dlaczego zestaw znaków dla Atari jest tak rozmieszczony jak jest, czyli jest 48 znaków + 16 bajtów przekładki. Potem kolejne 48 znaków i znów 16 bajtów przekładki. I ostatnie 48 znaków + 16 bajtów przekładki.
    • 14: CommentAuthorjakubd
    • CommentTime24 Jun 2022
     
    Jakieś ułatwienie przy adresowaniu?
    Ale to faktycznie dziwne - 3 osobne bloki.
    Dasz radę jakoś zobrazować które znaki są gdzie?
    • 15:
       
      CommentAuthorPeri Noid
    • CommentTime24 Jun 2022 zmieniony
     
    W załączniku jest dump ROM-u PL z "wizualizacją". Zakresy definicji znaków podałem powyżej w którymś wpisie. Nie jestem do końca przekonany czy sam początek $500 to też jakieś znaki bo nie wyglądają więc mogę nie mieć do końca racji.
    • 16:
       
      CommentAuthorjhusak
    • CommentTime24 Jun 2022 zmieniony
     
    Bo 48 * 5 = 240? A następnie 16 bajtów pustych, aby się dobrze alignowało do bajtowego indeksu. Mnożenie przez 5 to 2 asl i 1 adc, więc tablicy pewnie nie ma, więc nie zmienisz szerokości znaków bez przepisywania procedury w procku.
    • 17:
       
      CommentAuthorPeri Noid
    • CommentTime24 Jun 2022
     
    Tak też i sobie już byłem policzyłem, że te 16B to wypełnienie do kompletnej strony. Czyli jest szansa, że te bajty na początku bloku $500 to tylko wypełniacz, który nie jest używany. Jeszcze kwestia procesora w drukarce.

    Co do poszerzania fontów - oczywiście, że wymagałoby to zmiany procedury drukowania znaku. Przy czym rozwaliłoby kompatybilność z już istniejącym softem. Ale jeśli ktoś by chciał...
    • 18:
       
      CommentAuthorCyprian
    • CommentTime24 Jun 2022 zmieniony
     

    Peri Noid:

    Jeszcze kwestia procesora w drukarce


    jest tam 8039 który należy do rodziny Intel 8048
    ->link<-
    • 19:
       
      CommentAuthorKaz
    • CommentTime24 Jun 2022
     
    W każdym przeglądanym przez nas EPROMie (Atari, Commodore, Amstrad) było inne wypełnienie pamięci poza znakami. Więc może jednak jest to znaczący kod. MaW przeglądał to w Omnivore XL, może powie coś więcej.
    • 20:
       
      CommentAuthorPeri Noid
    • CommentTime24 Jun 2022 zmieniony
     
    Zestaw znaków można podpatrzeć na wydruku selftestu. Po zadrukowaniu całej strony można obejrzeć prawie wszystkie znaki. Prawie bo ten drukowany zestaw nie zawiera wszystkich. Nie ma części znaków zapisanych w pamięci o adresach między $537 a $547 (5 znaków) ale i jednego znaku z adresu $5d7-$5db.

    Drukowany zestaw zaczyna się od spacji a kończy strzałkami, czyli umiejscowienie w pamięci jest takie: najpierw obszar $600-$6ef, potem $700-$7ef a potem $550-$5ef (właśnie z pominięciem $5d7-$5db).