Autor Wątek: SPECTRA - coś fajnego.  (Przeczytany 15523 razy)

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
SPECTRA - coś fajnego.
« dnia: 2012.08.26, 17:27:19 »
Chyba nie było, więc donoszę:

http://www.fruitcake.plus.com/Sinclair/Spectrum/Spectra/SpectraInterface.htm

Podoba mi się myk z nowymi trybami graficznymi, choć trochę brak specyfikacji, a już na pewno - software'u.

Duddie

  • ****
  • Wiadomości: 402
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #1 dnia: 2012.08.27, 09:24:45 »
Od dłuższego czasu myślę o czymś takim i mam już jakieś koncepcje. Z tym, że zamiast Scarta chciałem dać złącze VGA. Ale skoro już ktoś to zrobił, to ja chyba odpuszczę :(
ZX Spectrum 48K, ZX Spectrum+, ZX Spectrum 128K, ZX Spectrum +2/+3, Timex 2048, Unipolbrit 2086, FDD3000, Timex Terminal 3000, PlusD, Multiface 128, Multiface +3, divIDE Plus, IF1+microdrive

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: SPECTRA - coś fajnego.
« Odpowiedź #2 dnia: 2012.08.27, 09:40:02 »
Hyh... ciekawostka... podpinamy wielgaśne CPLD, zapinamy się na szynę i w FPGA robimy rozszerzoną wersję ULA z której wyjmujemy porządnej jakości sygnał video. Fajny pomysł tylko pytanie ile to ma kosztować, dlaczego tak drogo i kto za te pieniądze to kupi, żeby pisać nowy soft ;) No i oczywiście na ile takie rozwiązanie psuje zgodność z istniejącym softem - czy da się całe te dodatkowe bajery wyłączyć (ok. sprawdziłem w manualu - da się jednym ze switchy).

I oczywiście zawsze pozostaje kwestia tego, że działa to tylko z ZXS 16/48 - rozpoznawanie bankowania i rozszerzeń 128 pewnie by im się w tym CPLD nie zmieściło ;)

Tygrys

  • Administrator
  • *****
  • Wiadomości: 4540
  • Miejsce pobytu:
    Warszawa
  • mistrz ceremonii
Odp: SPECTRA - coś fajnego.
« Odpowiedź #3 dnia: 2012.08.27, 09:48:48 »
W innym temacie podałem link do projektu ULA+ : http://www.speccy.pl/forum/index.php/topic,610.0.html

Tutaj oprócz lepszego obrazu mamy RS-232, możliwość podłączenia cartów z IF2 (opcjonalnie), kempstona itp.
Jeżeli to ma własny ROM, to podłączenie do tego np divide jest już niemożliwe. Nie podłączymy również innych 'mass storage', oprócz magnetofonu.

Co do obrazu dla 128.. na szynie krawędziowej nie ma wszystkich niezbędnych sygnałów potrzebnych do poprawnego odczytania i interpretacji trybów. Niezbędna jest integracja z elektroniką w środku komputera.

Widziałem że to potrafi wygenerować nowe kolory, ale nie przyjrzałem się, w jaki sposób jest to realizowane.

No i zapewniam cię, że są tacy, co to kupią za ciężkie pieniądze, zaczną oprogramowywać i reklamować w ramach realizacji swoich przekonań misyjnych.


trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #4 dnia: 2012.08.27, 10:19:05 »
Przeczytałem cały wątek na WOS-ie i gość gdzieś tam napomknął, że z divide działa. Nie rozumiem, czemu inne urządzenia z własnym ROM-em miałyby nie działać? Przypomnę, że na szynie występuje sygnał ROMCS, który - zgodnie z filozofią Spectrum - powinien być propagowany dalej na zasadzie odłączania ROM-u interfejsu, jeśli następny interfejs w "pociągu" sobie tego zażyczy. Innymi słowy - najwyższy priorytet ma interfejs na końcu, np. divide lub od FDD.
W Spectrze rozczarowuje brak VGA, to by wnosiło nową jakość, choć pewnie miłośnicy dem i multikolorów byliby rozczarowani.
W sumie od jakiegoś czasu chodził mi po głowie pomysł dołożenia trybów grafiki, jednak mi by bardziej zależało na dobrej jakości obrazie tekstu w 80 kolumnach. Plus VGA. I nawet znalazłem fajne rozwiązanie tymczasowe - praktycznie gotowiec do wzięcia: moduł teleVGA dla ardiuno. Wystarczy dorobić interfejs SPI najlepiej z kawałkiem ROM-u do obsługi basicowych komend i zyskujemy ciekawą zabawkę z wyjściem na VGA, co pozwoliłoby na w miarę przyjemną deweloperkę bez męczenia oczu. Na dodatek można uzyskać wtedy obraz na dwóch monitorach, edytor kodu na VGA i podgląd działania na standardowym ekranie Spectrum.
A czym jest teleVGA? Oto znow mamy FPGA w akcji... Może by po prostu zrobić jeden uniwersalny interfejs z FPGA lub CPLD, własnym busem na wyjścia/wejścia, plus kawałek RAM-u i wymieniać tylko kod w chipie? W zależności od potrzeb - nowe tryby graficzne, ula plus, ramdysk itp. A do SPI można podpiąć więcej fajnych zabawek, za parę złotych można np. kupić RTC :), są też rozmaite wyświetlacze alfanumeryczne, przekaźniki, karty sieciowe, USB itp.

Gryzor

  • *****
  • Wiadomości: 2010
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #5 dnia: 2012.08.27, 11:07:09 »
Ciekawe - jakos mi to umknelo na WoS.
Czy ta SPECTRA jest juz dostepna i za ile ? Ktos wie ?
Zastanawiam sie jak to dziala - byly juz takie pomysly za czasow rynkowych ZXa i zawsze konkluzja byla, ze bez ingerencji
w srodku nie da sie zrobic nowej karty graficznej dla ZXa, bo nie mozna odlaczyc RAMu.
 




trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #6 dnia: 2012.08.27, 11:13:54 »
Jest dostępna, ale o cenę musisz uderzyć do autora. Publicznie nic nie podaje.
Trick z trybami graficznymi polega na tym, że interfejs ma własny wideo RAM, który sobie mirroruje z 16 KB od adresu $4000. Działa to tylko w jedną stronę, bo generalnie Z80 nie ma dostępu do pamięci interfejsu. Na tym mirrorze interfejs może sobie robić, co chce - np. inaczej interpretować dane o pikselach, niż robi to ULA.

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: SPECTRA - coś fajnego.
« Odpowiedź #7 dnia: 2012.08.27, 11:16:46 »
Działa (po przeczytaniu instrukcji) dokładnie tak jak myślałem - łapie zapisy do pamięci, przerzuca do swojego bufora i emuluje ULA z extrasami. Do tego synchronizuje się do przerwania i luminancji z szyny, żeby wszystko chodziło tak samo jak na prawdziwym Spectrumie. Nie radzi sobie tylko ze "śniegiem" - wg manuala coś tam robi, ale nie wygląda to identycznie jak w oryginale.

Gryzor

  • *****
  • Wiadomości: 2010
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #8 dnia: 2012.08.27, 15:16:24 »
A jak czytam cos z VRAMu to jak ?

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #9 dnia: 2012.08.27, 15:24:24 »
Nijak. To co zapiszesz, to dostaniesz - działasz na standardowej pamięci ekranu od adresu $4000. Interfejs sam sobie z tego robi kopię na potrzeby wyświetlania obrazu. W drugą stronę nic nie zapisuje.

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: SPECTRA - coś fajnego.
« Odpowiedź #10 dnia: 2012.08.27, 15:34:16 »
Jedyny problem - jak rozumiem - będzie wtedy jak będziesz próbował używać przełączanych ekranów i czytać z tego, co zapisałeś, bo tego się zrobić nie da. Zapis na drugi ekran trafi do bufora Spectry tam gdzie trzeba, ale nadpisze poprzednią zawartość w głównym RAMie.

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #11 dnia: 2012.08.27, 15:44:44 »
To jest generalnie do modelu 48.

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: SPECTRA - coś fajnego.
« Odpowiedź #12 dnia: 2012.08.27, 17:26:43 »
Ale mnie chodzi o podwójne buforowanie ekranu, które Spectra ma wbudowane.

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: SPECTRA - coś fajnego.
« Odpowiedź #13 dnia: 2012.08.27, 18:45:29 »
AFAIK dokumentacja jest do wersji pierwotnej, która nie ma double bufferingu. Czyli ask the author :)

matofesi

  • *****
  • Wiadomości: 2049
  • Miejsce pobytu:
    Toruń/Poland
Odp: SPECTRA - coś fajnego.
« Odpowiedź #14 dnia: 2012.08.27, 21:56:44 »
Wiesz... Nie specjalnie jest o co pytać... Spectrum nie ma linii RAMCS co oznacza, że nie da się bez modyfikacji sprzętu podpiąć z zewnątrz pamięci w zakres powyżej ROMu. A to oznacza, że podwójne buforowanie ekranu pod 4000 przy odczycie da zawsze ostatnią pisaną wartość niezależnie od tego, do której części bufora Spectry trafił zapis.

Ale to jest oczywiście wyjątkowo wydumana sytuacja, która w praktycznych zastosowaniach nie powinna mieć strategicznego znaczenia - nie ma programów, które dałoby się sportować na taki rodzaj podwójnego buforowania a nowe pisane programy po prostu muszą się pogodzić z taką a nie inną konstrukcją :)