wyjście z karty MDA (PC) - jak wyświetli

Użytkownik "John Smith" snipped-for-privacy@buziaczek.pl napisał w wiadomości news:nh8bsq$52g$ snipped-for-privacy@node2.news.atman.pl...

Chyba kogoś oczadziło z tą ceną... Na jebaju jest za niecałe 50 ojro... A i tak uważam, że drogo, za drogo. (hehm, to ja się mogę wzbogacić, bo chyba kilka ISA'owych SVGA mam... Tylko muszę najpierw porządnie oczadzieć...)

Reply to
ACMM-033
Loading thread data ...

Jak pisałem w pierwotnej wiadomości - tu nie chodzi o praktyczne rozwiązanie problemu, a raczej o challenge wykorzystania istniejącego (i działającego) sprzętu.

Zgadza się, ja sam mam z dobry kilogram wszelakich kart VGA ISA, ale to nie o to chodzi.

Zależy mi na tym by problem potraktować z czysto elektronicznego punktu widzenia, stąd zapytanie na tą grupę, a nie inną. Mam nieokreśloną czarną (ok, beżową) skrzynkę która wypuszcza 4 sygnały TTL:

  • VSYNC 50 Hz (wiki mówi że to TTL 'negative', czyli chyba -5V?)
  • HSYNC 18 KHz
  • Video ~14 MHz
  • Color ~14 MHz ('intensity')

Pytanie jakim elektronicznym cudem to potraktować, by pozbierać, poskładać i namalować w jakimś bardziej współczesnym formacie (typu VGA, HDMI, composite, inne)...?

Póki co, Jarosław zasugerował że niektóre starsze monitory multisync mogłyby sobie poradzić z tak niskim HSYNC, to może być trop.

Janusz_K wspomniał iż gotowiec na bazie GBS8200 lub GBS8220 ma szanse zadziałać, a te są ogólnodostępne w bardzo przystępnych cenach, więc to też warte sprawdzenia (w przeciwieństwie do układów GBS8219, które mają gwarantowaną kompatybilność z MDA, ale przy koszcie rzędu 170-500 EUR).

A mój własny - i zapewne naiwny - pomysł polega na podpięciu wyjść MDA do pinów GPIO RPi (po zbiciu poziomów TTL do 3V3), i składać to wszystko w software, malując odpowiednio pixele na wyjściu HDMI.

Ciekawi mnie jednak, jak tego typu rzeczy robi się "prawidłowo", wszak moje doświadczenie w tej sferze jest żadne.

Mateusz

Reply to
Mateusz Viste

Też oglądałem ebay, ceny podobne. Linka którego podałem dotyczy kart

8 bitowych. Informację którą raczyłeś wyciąć podawała, że karty 16 bitowe ISA są tańsze. K.
Reply to
John Smith

NEC V20 to był klon 8088... Miałem taki w Mazovii.

Reply to
RoMan Mandziejewicz

Dnia Sat, 14 May 2016 13:12:09 +0200, Mateusz Viste napisał(a):

Stary lub nowy telewizor z wejsciem monotorowym lub Euro/SCART. Czestotliwosci o ile pamietam prawie pasuja, a konwerter cyfra-analog zrobisz na paru opornikach.

Ciekaw jestem czy jakis nowoczesny TV LCD sobie z tym poradzi ... jesli nie, to zwykly TV mozna nieco podkrecic, a w karcie zmienic kwarc - i zejsc np do 16kHz

Mimo ze procki coraz szybsze, to raczej nie jest dla nich zadanie - tylko dla FPGA. Zlapac wychodzaca linie - i dwa razy wyslac ja do monitora. Wyjdzie

36kHz, z tym sobie wspolczesne monitory radza.

A swoja droga ... te nowoczesne LCD nie poradza sobie z video 18kHz na wejsciu VGA ? One i tak maja konwerter obrazu w srodku, to moze lapie?

Jest jeszcze masa kosci, ktore przerabiaja rozdzielczosc do woli, ale to raczej specjalistyczne i dostepnosc tez specjalistyczna.

O ile dobrze pamietam, to ten 6845 pracuje na znacznie mniejszej czesotliwosci, odczytuje z pamieci po calym znaku, rejestr rownoleglo-szeregowy zamienia na piksele. Ale chyba nie chcesz wiazki kabli prowadzic gdzies z karty ?

J.

Reply to
J.F.

Użytkownik "John Smith" snipped-for-privacy@buziaczek.pl napisał w wiadomości news:nh9gtg$65q$ snipped-for-privacy@node2.news.atman.pl...

Tyle, że ja znalazłem identyczną kartę, co w tym alledrogo. Chyba, że ma oznaczenia identyczne, identycznie wygląda, ale różni się bitami... a to się wycofuję, nie było pytania.

Reply to
ACMM-033

Pan Mateusz Viste napisał:

"Composite" to ja bym nie nazwał "współczesnym formatem". Najbardzej oldskulowy jak tylko może być. Composite robi się z tego za pomocą pięciu oporników. Z dodatkiem tranzystorów lub bramek, jeśli trzeba zmienić polaryzację impulsów synchronizujących (nie pamiętam jaka jest). Oczywiście composite o parametrach częstotliwościowych MDA.

Mogę jeszcze zasugerować, że niektóre LCD też być może sobie poradzą. Tak wnioskuję z tego, co piszą na forach od Amigi, Atari ST czy innego rolnictwa.

Jeśli chodzi o 14 MHz na GPIO w RPi, to ja to czarno widzę. Dopiero co miałem do czynienia z GPIO na płycie z Atomem -- obsługa napisana głęboko w kernelu, a szybkością nie powala.

Sterowniki w monitorach LCD robią to sprzętowo, czyli "prawidłowo". Jeśli nawet monitor z urodzenia nie toleruje częstotliwości MDA, to doktoryzując się z dejtaszitów użytych w nim scalaków, powinno udać się go do tego skłonić. A potem nic tylko roztworzyć seryjną produkcję i sprzedawać za 500+ (dolarów) -- bo po tyle chodzą monitory LCD z wejściem TTL do starych maszyn z kartą MDA.

Reply to
invalid unparseable

Pan John Smith napisał:

Też mnie ta cena uderzyła. Mam ze dwie podobme (8 bit), jak kto chętny, moge tanio sprzedzć, za 650 powiedzmy. Potem zajrzałem na ebay -- i zacząłem podliczać majątek. Jakieś dyski twarde, stare, ale nie tak bardzo stare. Do śmieci wyrzucać nie wolno, a ja zbyt leniwy, by nosić to do "punktu zbiórki selektywnej". Leżą więc tego dziesiątki w garażu. Chodzą za cenę nówki sztuki SSD albo i lepiej.

Reply to
invalid unparseable

W 1988 roku, gdy zaprojektowałem i zbudowałem swojego PC-ta, w _emulacji_ karty MDA na wyjściu sygnału wizji użyłem 3 rezystorów:

o +5V | - | | | | 120 | | - video | -------------------* | HSYNC ------ | -------| 10 |----* ------ | | VSYNC ------ | -------| 27 |----*---------o Composite ------ GND -----------------------------o GND

Ważne uwagi:

  1. sygnały video, HSYNC, VSYNC były sterowane z układu typu Open Collector UCY7407. Jeśli takich nie ma, trzeba użyć diód np. 1N4148
  2. zakładane pasmo 14MHz jest zdecydowanie za szerokie, ja pamiętam, że już przy 6MHz uzyskiwało się obraz ostry jak brzytwa w kartach MDA.
  3. sygnał "Composite" szedł na nieco przerobiony układ wzmacniacza wizji telewizora Neptun 150, schematu już nie pamiętam. W typowych monitorach, trzeba by jeszcze dać dzielnik napięcia dla Composite.

Zakładając, że znajdziesz monitor który będzie pracował przy tak niskich częstotliwościach, trzy sygnały można by podać przez rezystory zabezpieczające na złącze monitora. Są monitory razem z tunerem TV, one mogą mieć możliwość wyświetlania obrazu przy niskich częstotliwościach. Może będą takie z wejściem Composite lub Euro.

Jakością obrazu możesz być rozczarowany, teoria mówi, że na czas trwania jednego piksela musisz mieć co najmniej 2 próbki stanu. W praktyce więcej.

Baw się. Ja mam zupełnie inne podejście do technologii, bez procesora i7 nie wyobrażam sobie sensownej pracy, pomimo naszego podobnego wieku. Z uszanowaniem, K.

Reply to
John Smith

On 2016-05-15 12:23, Jarosław Sokołowski wrote: (ciap)

Kluczowe pytanie, czy i ile takich transakcji kończy się pomyślnie dla sprzedawcy?

Włodek

Reply to
invalid unparseable

W dniu 2016-05-14 o 15:55, Jarosław Sokołowski pisze:

Dokładnie o tym pisałem, masz do zdekodowania w na każdym ekranie 2000 bajtów, jeśli je zdekodujesz to możesz je wysłać do PC poprzez łącze szeregowe i wyświetlić na konsoli szeregowej (putty, hyper terminal) z ustawioną stroną kodową 437 i uzyskasz dokładnie to samo co miałbyś na ekranie monitora podłączonego do tej karty graficznej. Dlatego nadal upieram się, że do dekodowania MDA nie potrzeba kontrolera z wyjściem graficznym.

Reply to
Andrzej W.

Dnia Sun, 15 May 2016 13:35:21 +0200, Andrzej W. napisał(a):

Czy Tobie sie nie pomylilo z jakim Unixem ?

Jakiego dekodowania ? Karta ma na pokladzie pamiec. Do tej pamieci komputer przez magistrale wpisuje dane. Karta te dane cyklicznie odczytuje, i do monitora, piksel po pikselu wysyla. A - gdzies po drodze "dekoduje", czyli zamienia kody znakow w pamieci na piksele.

Komputer stawia do dyspozycji odpowiednia funkcje BIOS, za pomoca ktorej mozna wpisac dane do tej pamieci, ale nikt z niej nie korzysta, tylko wpisuje sam do pamieci.

No i teraz pytanie, co sugerujesz zrobic - wlasna karte, falszywy "driver" programowy ?

J.

Reply to
J.F.

W dniu 2016-05-15 o 14:40, J.F. pisze:

Nie pomyliło mi się, MDA posiada tylko tryb tekstowy, nie ma graficznego, nie jesteś w stanie zapalić piksela na ekranie a jedynie wyświetlić jeden z 255 znaków strony kodowej 437 w jednej z 2000 pozycji (80x25). Wystarczy buforować jedynie 14 linii (80 znaków) by móc odczytać i wyświetlać to co jest wysyłane przez MDA.

Reply to
Andrzej W.

A gdzie chciałbyś "buforować" te znaki? K.

Reply to
John Smith

Nie wiem, czy czytałeś mój pierwszy mail...

Zacznijmy od początku. Pytający szuka:

  1. procesora na tyle szybkiego by odczytał mu dwa sygnał cyfrowe, które mogą zmieniać się co 80ns, nie mając zegara z którym te sygnały wygenerowano,
  2. procesora posiadającego wyjście graficzne.

Pierwszy warunek wskazuje na bare metal lub FPGA, drugi zaś jest raczej domeną środowisk opartych o OS. Połączenie obu warunków może być albo kosztowne albo zawodne (RPI z Linuxem).

Moja teza jest taka, iż wyjście graficzne można zastąpić połączeniem szeregowym z dowolnym komputerem i temu komputerowi powierzyć wyświetlanie obrazu.

Dalej zakładam, że dekodujemy tylko znaki bez jasności (jasność to drugi identyczny układ). Na MDA można spojrzeć jako 720×350x50 (12 600 000) pikseli na sekundę lub jako 80x25x8x50 (800 000) bitów na sekundę. O ile pierwsze trudno czymś przepchnąć to drugie już się da. Robimy więc antyMDA, czyli coś co nam dekoduje ciąg pikseli na ciąg znaków i te znaki wysyłamy do wyświetlenia gdzieś dalej.

Jeśli uwzględnić jasność to potrzebujemy przepustowości 80x25x10x50 (1

000 000) bps.
Reply to
Andrzej W.

W dniu 15.05.2016 o 16:51, Andrzej W. pisze:

A nie da się użyć karty telewizyjnej (przechwytującej) na bt878 lub czymś podobnym?

Reply to
Mirek

On 15/05/2016 14:58, Andrzej W. wrote: > Nie pomyliło mi się, MDA posiada tylko tryb tekstowy, nie ma > graficznego, nie jesteś w stanie zapalić piksela na ekranie a jedynie > wyświetlić jeden z 255 znaków strony kodowej 437 w jednej z 2000 > pozycji (80x25).

Zgadza się, ale monitor nic o tym nie wie... Od strony programowej MDA to zaiste tylko tablica 80x50 bajtów, jednak na wyjściu wysyła do monitora faktyczne piksele w 720x350 w trzech możliwych jasnościach (zgaszony / zapalony / mocno zapalony).

Oczywiście na pewno da się przekonwertować to z powrotem na tekst i wrzucać na jakiś ekranik LCD, ale to znacząco bardziej skomplikowana sprawa niż sama konwersja sygnałów MDA->VGA... To co sugerujesz wymagałoby złapania 14 linii pixeli (1080 punktów) i wrzucenie w czasie rzeczywistym do jakiegoś OCR który to przetłumaczy na 80 znaków... Nie mówiąc o tym że nie każda karta MDA-compatible korzystała z tej samej czcionki lub tego samego zestawu znaków (istniały np. modele Pravetz z grażdanką na pokładzie).

Tak, twoja propozycja wygląda na jak najbardziej możliwą w teorii, ale to poziom komplikacji który jest zdecydowanie wyższy niż konwersja gołych pikseli :)

Mateusz

Reply to
Mateusz Viste

tu

formatting link
piszą ze wystarczy wymienc kwarc na kracie i zrobic prostą przejściowke

Reply to
cezar

Pan Andrzej W. napisał:

To jednak oznacza robienie OCR. Prowadzonego we względnie dobrych warunkach, ale jednak OCR. Zupełnie inne zagadznie, bo z konwertera sygnałów wideo zrobiła nam się sztuczna inteligencja. Druga rzecz, to przepchnięcie wyniku przez terminal VT. Trzeba porównać kolejne wyniki rozpoznania, znaleźć siedem szszegółów któymi różnia się dwa obrazki i różnicę zamienić na sekwecje ANSI. Też wcale nie tak trywialna rzecz. Ale może właśnie w tym momencie problem i jego rozwiązywanie robi się ciekawe.

Reply to
invalid unparseable

W dniu 2016-05-15 o 16:51, Andrzej W. pisze:

Jakby tak przypomnieć sobie jak się różne rzeczy robiło... Programik rezydentny przeglądający pamięć obrazu i wysyłający zmiany na RS-a? A może i całą pamięć obrazu, bo w końcu parę ramek na sekundę powinno wystarczyć dla całkiem sprawnego efektu wizualnego. W sumie to nawet zbyt mocnego procka by nie trzeba było do tego. To chyba by było do zrobienia bez większego wysiłku.

Pozdrawiam

DD

Reply to
Dariusz Dorochowicz

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.