Sophia
From Atariki
Wersja z dnia 17:54, 15 sie 2023 Mono (Dyskusja | wkład) (→Sophia 2 - $53) ← Previous diff |
Wersja z dnia 11:42, 16 sie 2023 Mono (Dyskusja | wkład) (→Sophia 2 - osobny artykul o detekcji) Next diff → |
||
Linia 44: | Linia 44: | ||
* programową konfigurację trybu RGB/YPbrPr, | * programową konfigurację trybu RGB/YPbrPr, | ||
* zapis ustawień do pamięci nieulotnej. | * zapis ustawień do pamięci nieulotnej. | ||
- | Dodatkowo dostępny jest program SCONF.EXE pozwalający na skonfigurowanie ustawień Zosi. | + | Dostępny jest napisany przez autora program SCONF.EXE pozwalający na skonfigurowanie ustawień Zosi. |
- | Ponadto możliwa jest programowa detekcja urządzenia w komputerze: | + | Ponadto możliwa jest [[Wykrycie Sophii|programowa detekcja]] urządzenia w komputerze. |
- | <pre> | + | |
- | ;zachowane zostaną aktualne ustawienia (ale bez zapisu do pamięci nieulotnej) w przypadku gdyby bank rejestrów Sophia był aktywny | + | |
- | lda GRACTL ;$D01D | + | |
- | and #%01111110 | + | |
- | sta GRACTL ;$D01D | + | |
- | + | ||
- | ;uaktywniamy rejestry Sophia a przy okazji resetujemy ustawienia GRACTL w GTIA | + | |
- | lda #%10000000 | + | |
- | sta GRACTL ;$D01D | + | |
- | + | ||
- | ;czytamy sygnaturę i rewizję | + | |
- | ldx SOPHIA ;$D01E | + | |
- | ldy REV ;$D015 | + | |
- | + | ||
- | ;deaktywujemy rejestry zachowując ustawienia (bez zapisu do NVRAM) | + | |
- | lda GRACTL ;$D01D | + | |
- | and #%01111110 | + | |
- | sta GRACTL ;$D01D | + | |
- | + | ||
- | ;resetujemy ustawienia GRACTL w GTIA | + | |
- | lda #%00000000 | + | |
- | sta GRACTL | + | |
- | + | ||
- | ;sprawdzamy czy jest Sophia 2 | + | |
- | cpx #'S' ;$53 | + | |
- | beq ?sophia2 | + | |
- | </pre> | + | |
- | Włączenie banku rejestrów Sophia odbywa się kiedy SPCEN=1 (bit 7 GRACTL). Jednakże to, gdzie trafią pozostałe bity zależy od tego czy <b>przed zapisem</b> aktywny był obszar rejestrów GTIA czy bank rejestrów Sophia. | + | |
==Zobacz też== | ==Zobacz też== |
Wersja z dnia 11:42, 16 sie 2023
Karta sprzętowej emulacji układu GTIA do 8-bitowego Atari. Ma formę płytki o wymiarach 50x45mm, montowanej pomiędzy układem GTIA i płytą główną. Sercem urządzenia jest układ CPLD typu MAX II firmy Altera.
Spis treści |
Wersje
Urządzenie występuje w trzech wersjach: Rev. A, B i C, pokazanych na zdjęciach w tejże kolejności:
Wersje A i B generują obraz w standardzie RGB lub YPbPr z przeplotem lub bez (wybór za pomocą dwóch jumperów). Różnica między nimi polega na zastosowaniu innego układu DAC, odmiennej pinologii gniazda wyjściowego i obecności dodatkowego, wydzielonego sygnału synchronizacji pionowej w wersji B.
Wersja C generuje obraz w standardzie DVI-D, w jednej z czterech rozdzielczości: 1536x960, 1600x900, 1280x1024 lub 1280x960, programowanej w rdzeniu.
Wszystkie wersje zawierają te same dwie palety barw, odmienne dla systemów PAL i NTSC, automatycznie przełączane w zależności od systemu (de facto - układu ANTIC) zainstalowanego w komputerze. Urządzenie nie wpływa na żadne funkcje realizowane przez GTIA i nie zawiera żadnych rejestrów do odczytu. W szczególności - kolizje między obiektami Player-Missile, klawisze konsoli i przyciski joysticków obsługiwane są przez oryginalny układ.
Różnice w stosunku do obrazu generowanego oryginalnie przez GTIA
- Rejestry koloru są 8- a nie 7-bitowe, co oznacza, że w każdym trybie graficznym dostępna jest paleta 256 a nie 128 kolorów. Dla zachowania kompatybilności, dodatkowy, najmłodszy bit luminancji jest włączany normalnie niewykorzystanym bitem 3 rejestru PMCNTL ($D01D).
- Kolor pikseli grafiki wysokiej rozdzielczości może być, niezależnie od koloru tła, ustawiany w rejestrze COLPF1. Dla zachowania kompatybilności, funkcja ta jest włączana bitem 4 rejestru PMCNTL
- Piksele w trybie graficznym GR.10 nie są przesunięte o cykl koloru w stosunku do innych trybów graficznych
- Maska ograniczająca wyświetlany obraz do szerokości odpowiadającej 336 pikselom grafiki wysokiej rozdzielczości. Umożliwia wygaszenie ewentualnych niepożądanych efektów występujących w tzw. overscanie. Funkcja jest włączana bitem 5 rejestru PMCNTL. Dla zachowania odporności na RESET, zmiana zawartości tego bitu jest możliwa tylko wtedy, kiedy ustawiony jest bit 3 tego samego rejestru. Występuje wyłącznie w wersji C, przy rozdzielczościach poziomych większych od 1280 pikseli.
Sophia 2
W 2020 roku Simius opracował drugą wersję urządzenia rozszerzając je o dodatkowe możliwości:
- blokowanie detekcji kolizji,
- obsługę 16 palet kolorów (15 modyfikowanych programowo),
- wyjście VGA (480p/576p),
- obsługę wysokich rozdzielczości obrazu,
Resolution | Aspect Ratio |
---|---|
480p/576p | 3:2/5:4 |
1280x960 | 4:3 |
1280x1024 | 5:4 |
1344x960 | 14:10 |
1440x900 | 16:10 |
1536x960 | 16:10 |
1600x900 | 16:9 |
1704x960 | 16:9 |
- tryb RGB TTL,
- obsługę trybów interlace,
- programową konfigurację trybu RGB/YPbrPr,
- zapis ustawień do pamięci nieulotnej.
Dostępny jest napisany przez autora program SCONF.EXE pozwalający na skonfigurowanie ustawień Zosi.
Ponadto możliwa jest programowa detekcja urządzenia w komputerze.
Zobacz też
- wątek na forum Atari.area
- wątek na forum AtariAge
- Wpis na AtariArea z dokumentacją do Sophia 1
- Wpis na AtariArea z dokumentacją do Sophia 2
- Wpis na AtariArea do oprogramowania konfigurującego SCONF.EXE