<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
	<id>https://mirror.atariki.pl/w/index.php?action=history&amp;feed=atom&amp;title=Rejestry_Sophia</id>
	<title>Rejestry Sophia - Historia wersji</title>
	<link rel="self" type="application/atom+xml" href="https://mirror.atariki.pl/w/index.php?action=history&amp;feed=atom&amp;title=Rejestry_Sophia"/>
	<link rel="alternate" type="text/html" href="https://mirror.atariki.pl/w/index.php?title=Rejestry_Sophia&amp;action=history"/>
	<updated>2026-10-02T17:03:40Z</updated>
	<subtitle>Historia wersji tej strony wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://mirror.atariki.pl/w/index.php?title=Rejestry_Sophia&amp;diff=3438&amp;oldid=prev</id>
		<title>imported&gt;Atariki recovery: Reconstructed from archived HTML; see provenance manifest</title>
		<link rel="alternate" type="text/html" href="https://mirror.atariki.pl/w/index.php?title=Rejestry_Sophia&amp;diff=3438&amp;oldid=prev"/>
		<updated>2026-10-01T08:51:48Z</updated>

		<summary type="html">&lt;p&gt;Reconstructed from archived HTML; see provenance manifest&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nowa strona&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Sophia]] to rozszerzenie Atari XL/XE emulujące układ [[GTIA]] i umożliwiające wyświetlanie obrazu przez złącza RGB, YPbPr, VGA, DVI-D.&lt;br /&gt;
&lt;br /&gt;
Urządzenie istnieje w dwóch wersjach różniących się nieco od siebie.&lt;br /&gt;
&lt;br /&gt;
=== Lista rejestrów Sophia1 ===&lt;br /&gt;
&lt;br /&gt;
W pierwszej wersji Sophii nieużywane bity rejestru układu [[GTIA]] wykorzystano do konfiguracji funkcji rozszerzenia.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Adres&lt;br /&gt;
! Etykieta&lt;br /&gt;
! Opis&lt;br /&gt;
|-&lt;br /&gt;
| $D01D (W)&lt;br /&gt;
| PMCNTL, GRACTL&lt;br /&gt;
| Funkcje bitów:&lt;br /&gt;
&lt;br /&gt;
* bit 7 - niewykorzystany&lt;br /&gt;
* bit 6 - niewykorzystany&lt;br /&gt;
* bit 5 - w układzie [[Sophia|Sophia1]]: redukcja szerokości ekranu do 336 pikseli hires (1 - włączony)&lt;br /&gt;
* bit 4 - w układzie [[Sophia|Sophia1]]: aktywacja dodatkowego koloru w [[Tryby wysokiej rozdzielczości|trybach wysokiej rozdzielczości]] (1 - włączony)&lt;br /&gt;
* bit 3 - w układzie [[Sophia|Sophia1]]: aktywacja najmłodszego bitu luminancji (1 - włączony)&lt;br /&gt;
* bit 2 - odczyt przycisków joysticków (1 - zatrzask)&lt;br /&gt;
* bit 1 - DMA graczy (1 - włączone)&lt;br /&gt;
* bit 0 - DMA pocisków (1 - włączone)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Lista rejestrów Sophia2 ===&lt;br /&gt;
&lt;br /&gt;
Tu wykorzystano tylko jeden nieużywany bit w rejestrze układu [[GTIA]] i przełącza on bank rejestrów Sophii.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Adres&lt;br /&gt;
! Etykieta&lt;br /&gt;
! Opis&lt;br /&gt;
|-&lt;br /&gt;
| $D01D (W)&lt;br /&gt;
| PMCNTL, GRACTL&lt;br /&gt;
| Funkcje bitów:&lt;br /&gt;
&lt;br /&gt;
* bit 7 - w układzie [[Sophia|Sophia2]]: włączenie rejestrów rozszerzenia (1 - włączone)&lt;br /&gt;
* bit 6 - niewykorzystany&lt;br /&gt;
* bit 5 - niewykorzystany&lt;br /&gt;
* bit 4 - niewykorzystany&lt;br /&gt;
* bit 3 - niewykorzystany&lt;br /&gt;
* bit 2 - odczyt przycisków joysticków (1 - zatrzask)&lt;br /&gt;
* bit 1 - DMA graczy (1 - włączone)&lt;br /&gt;
* bit 0 - DMA pocisków (1 - włączone)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Bank rejestrów Sophii2 znajduje się w podstawowym obszarze rejestrów GTIA czyli $D000-$D01F.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Adres&lt;br /&gt;
! Etykieta&lt;br /&gt;
! Opis&lt;br /&gt;
|-&lt;br /&gt;
| $D000 (R/W)&lt;br /&gt;
| DISM0PF&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 0 z polem gry.&lt;br /&gt;
Bity 0-3 oznaczają kolizje z polem gry 0-3 (COLPF0-COLPF3). Blokada jest aktywna kiedy bit jest ustawiony.&lt;br /&gt;
&lt;br /&gt;
* bit 0: COLPF0&lt;br /&gt;
* bit 1: COLPF1&lt;br /&gt;
* bit 2: COLPF2&lt;br /&gt;
* bit 3: COLPF3&lt;br /&gt;
* bity 4-7: zawsze 0&lt;br /&gt;
|-&lt;br /&gt;
| $D001 (R/W)&lt;br /&gt;
| DISM1PF&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 1 z polem gry. Patrz [[#DISM0PF|DISM0PF]].&lt;br /&gt;
|-&lt;br /&gt;
| $D002 (R/W)&lt;br /&gt;
| DISM2PF&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 2 z polem gry. Patrz [[#DISM0PF|DISM0PF]].&lt;br /&gt;
|-&lt;br /&gt;
| $D003 (R/W)&lt;br /&gt;
| DISM3PF&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 3 z polem gry. Patrz [[#DISM0PF|DISM0PF]].&lt;br /&gt;
|-&lt;br /&gt;
| $D004 (R/W)&lt;br /&gt;
| DISP0PF&lt;br /&gt;
| Blokuje testowanie kolizji gracza 0 z polem gry.&lt;br /&gt;
Bity 0-3 oznaczają kolizje z polem gry 0-3 (COLPF0-COLPF3). Blokada jest aktywna kiedy bit jest ustawiony.&lt;br /&gt;
&lt;br /&gt;
* bit 0: COLPF0&lt;br /&gt;
* bit 1: COLPF1&lt;br /&gt;
* bit 2: COLPF2&lt;br /&gt;
* bit 3: COLPF3&lt;br /&gt;
* bity 4-7: zawsze 0&lt;br /&gt;
|-&lt;br /&gt;
| $D005 (R/W)&lt;br /&gt;
| DISP1PF&lt;br /&gt;
| Blokuje testowanie kolizji gracza 1 z polem gry. Patrz [[#DISP0PF|DISP0PF]].&lt;br /&gt;
|-&lt;br /&gt;
| $D006 (R/W)&lt;br /&gt;
| DISP2PF&lt;br /&gt;
| Blokuje testowanie kolizji gracza 2 z polem gry. Patrz [[#DISP0PF|DISP0PF]].&lt;br /&gt;
|-&lt;br /&gt;
| $D007 (R/W)&lt;br /&gt;
| DISP3PF&lt;br /&gt;
| Blokuje testowanie kolizji gracza 3 z polem gry. Patrz [[#DISP0PF|DISP0PF]].&lt;br /&gt;
|-&lt;br /&gt;
| $D008 (R/W)&lt;br /&gt;
| DISM0P&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 0 z graczem.&lt;br /&gt;
Bity 0-3 oznaczają kolizje z graczem 0-3 (COLPM0-COLPM3). Blokada jest aktywna kiedy bit jest ustawiony.&lt;br /&gt;
&lt;br /&gt;
* bit 0: COLPM0&lt;br /&gt;
* bit 1: COLPM1&lt;br /&gt;
* bit 2: COLPM2&lt;br /&gt;
* bit 3: COLPM3&lt;br /&gt;
* bity 4-7: zawsze 0&lt;br /&gt;
|-&lt;br /&gt;
| $D009 (R/W)&lt;br /&gt;
| DISM1P&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 1 z graczem. Patrz [[#DISM0P|DISM0P]].&lt;br /&gt;
|-&lt;br /&gt;
| $D00A (R/W)&lt;br /&gt;
| DISM2P&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 2 z graczem. Patrz [[#DISM0P|DISM0P]].&lt;br /&gt;
|-&lt;br /&gt;
| $D00B (R/W)&lt;br /&gt;
| DISM3P&lt;br /&gt;
| Blokuje testowanie kolizji pocisku 3 z graczem. Patrz [[#DISM0P|DISM0P]].&lt;br /&gt;
|-&lt;br /&gt;
| $D00C (R/W)&lt;br /&gt;
| DISP0P&lt;br /&gt;
| Blokuje testowanie kolizji gracza 0 z graczem.&lt;br /&gt;
Bity 0-3 oznaczają kolizje z graczem 0-3 (COLPM0-COLPM3). Blokada jest aktywna kiedy bit jest ustawiony.&lt;br /&gt;
&lt;br /&gt;
* bit 0: COLPM0&lt;br /&gt;
* bit 1: COLPM1&lt;br /&gt;
* bit 2: COLPM2&lt;br /&gt;
* bit 3: COLPM3&lt;br /&gt;
* bity 4-7: zawsze 0&lt;br /&gt;
|-&lt;br /&gt;
| $D00D (R/W)&lt;br /&gt;
| DISP1P&lt;br /&gt;
| Blokuje testowanie kolizji gracza 1 z graczem. Patrz [[#DISP0P|DISP0P]].&lt;br /&gt;
|-&lt;br /&gt;
| $D00E (R/W)&lt;br /&gt;
| DISP2P&lt;br /&gt;
| Blokuje testowanie kolizji gracza 2 z graczem. Patrz [[#DISP0P|DISP0P]].&lt;br /&gt;
|-&lt;br /&gt;
| $D00F (R/W)&lt;br /&gt;
| DISP3P&lt;br /&gt;
| Blokuje testowanie kolizji gracza 3 z graczem. Patrz [[#DISP0P|DISP0P]].&lt;br /&gt;
|-&lt;br /&gt;
| $D010&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D011&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D012&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D013&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D014&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D015 (R)&lt;br /&gt;
| REV&lt;br /&gt;
| Rewizja rdzenia.&lt;br /&gt;
|-&lt;br /&gt;
| $D016&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D017&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D018&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D019&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D01A&lt;br /&gt;
| -&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $D01B (R/W)&lt;br /&gt;
| PRIOR&lt;br /&gt;
| Rejestr konfiguracji rozdzielczości i palety.&lt;br /&gt;
Znaczenie bitów:&lt;br /&gt;
&lt;br /&gt;
* bit 7: VGA - ustawia wyjście analogowe RGB jako VGA (H:31kHz; V:60/50Hz); dostępny jest tylko tryb graficzny 480p/576p&lt;br /&gt;
* bity 6-4: RESolution - wybór rozdzielczości ekranu&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| wartość&lt;br /&gt;
| rozdzielczość&lt;br /&gt;
| aspect-ratio&lt;br /&gt;
|-&lt;br /&gt;
| %000&lt;br /&gt;
| 480p&amp;lt;br /&amp;gt;576p&lt;br /&gt;
| 3:2&amp;lt;br /&amp;gt;5:4&lt;br /&gt;
|-&lt;br /&gt;
| %001&lt;br /&gt;
| 1280x960&lt;br /&gt;
| 4:3&lt;br /&gt;
|-&lt;br /&gt;
| %010&lt;br /&gt;
| 1280x1024&lt;br /&gt;
| 5:4&lt;br /&gt;
|-&lt;br /&gt;
| %011&lt;br /&gt;
| 1344x960&lt;br /&gt;
| 14:10&lt;br /&gt;
|-&lt;br /&gt;
| %100&lt;br /&gt;
| 1440x900&lt;br /&gt;
| 16:10&lt;br /&gt;
|-&lt;br /&gt;
| %101&lt;br /&gt;
| 1536x960&lt;br /&gt;
| 16:10&lt;br /&gt;
|-&lt;br /&gt;
| %110&lt;br /&gt;
| 1600x900&lt;br /&gt;
| 16:9&lt;br /&gt;
|-&lt;br /&gt;
| %111&lt;br /&gt;
| 1704x960&lt;br /&gt;
| 16:9&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* bity 3-0: PALEtte - wybór aktywnej palety; po resecie urządzenia ustawiana jest wbudowana paleta 0 (PAL lub NTSC zależnie od systemu TV); palety 1-15 są programowane przez użytkownika (patrz rejestr PALDATA); nie jest zapisywany do pamięci nieulotnej&lt;br /&gt;
|-&lt;br /&gt;
| $D01C (R)&lt;br /&gt;
| FIELD&lt;br /&gt;
| Znacznik parzystości ramki w trybie z przeplotem.&lt;br /&gt;
Funkcje bitów:&lt;br /&gt;
&lt;br /&gt;
* bit 7 - 1: ramka nieparzysta&lt;br /&gt;
* bit 6-0 - niewykorzystane&lt;br /&gt;
|-&lt;br /&gt;
| $D01D (R/W)&lt;br /&gt;
| GRACTL&lt;br /&gt;
| Rejestr konfiguracji.&lt;br /&gt;
Znaczenie bitów:&lt;br /&gt;
&lt;br /&gt;
* bit 7: SPECial features ENable - 1: aktywuje rejestry układu Sophia2, 0: aktywuje rejestry układu GTIA i zeruje adres pamięci palety&lt;br /&gt;
* bit 6: SYNC conTroL - ustawia wyjścia analogowych sygnałów synchronizacji&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| tryb&lt;br /&gt;
| wartość&lt;br /&gt;
| H&lt;br /&gt;
| V&lt;br /&gt;
|-&lt;br /&gt;
| RGB&lt;br /&gt;
| 0&lt;br /&gt;
| CSYNC 0.3Vpp@75Ω&lt;br /&gt;
| RGB Blanking&lt;br /&gt;
|-&lt;br /&gt;
| RGB&lt;br /&gt;
| 1&lt;br /&gt;
| HSYNC TTL&lt;br /&gt;
| VSYNC TTL&lt;br /&gt;
|-&lt;br /&gt;
| VGA&lt;br /&gt;
| x&lt;br /&gt;
| HSYNC TTL&lt;br /&gt;
| VSYNC TTL&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* bit 5: Visible playfield GATE - 1: ogranicza wyświetlany obraz do 336 pikseli na ekranie&lt;br /&gt;
* bit 4: HIRES Bi-Color - 1: powoduje że w trybach wysokiej rozdzielczości kolor punktu zgaszonego brany jest z COLPF2 a punktu zapalonego z COLPF1&lt;br /&gt;
* bit 3: LUM0 bit ENable - 1: uaktywnia najmłodszy bit luminancji w rejestrze koloru&lt;br /&gt;
* bit 2: INTERLACE - 1: włącza tryb z przeplotem&lt;br /&gt;
* bit 1: YUVRGB - 1: kontroluje przestrzeń kolorów wyjścia analogowego 0: YPbPr, 1: RGB&lt;br /&gt;
* bit 0: NonVolatile ENable: - 1: aktywuje zapis ustawień do pamięci nieulotnej; następujący w ciągu 4 cykli zapis wartości do rejestru GRACTL lub PRIOR Sophii zostanie utrwalony&lt;br /&gt;
|-&lt;br /&gt;
| $D01E (R)&lt;br /&gt;
| SOPHIA&lt;br /&gt;
| Identyfikator urządzenia - zawiera wartość $53 czyli &amp;#039;S&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| $D01E (W)&lt;br /&gt;
| HITCLR&lt;br /&gt;
| Zapis dowolnej wartości pod ten adres zeruje ustawienia wszystkich rejestrów [[#DISM0PF|DISM0PF]]-DISM3PD, DISM0P-DISM3P, DISP0PF-DISP3PF oraz DISP0P-DISP3P.&lt;br /&gt;
|-&lt;br /&gt;
| $D01F (W)&lt;br /&gt;
| PALDATA&lt;br /&gt;
| Kolejne wpisy do tego rejestru zapisują odpowiednio składowe R, G i B koloru palety.&lt;br /&gt;
Dostępnych jest 16 palet, z czego ostatnia jest nieużywana. Na początku pamięci znajduje się paleta nr 1, potem 2, itd. Nie ma dostępu do wbudowanej palety nr 0.&lt;br /&gt;
&lt;br /&gt;
Każda paleta zawiera 256 kolorów definiowanych za pomocą 6-bitowych składowych (najstarsze bity w bajcie).&lt;br /&gt;
&lt;br /&gt;
Wewnętrzny adres wpisu palety resetowany jest w momencie wyzerowania bitu SPECEN rejestru GRACTL (czyli &amp;#039;&amp;#039;&amp;#039;wyłączenia&amp;#039;&amp;#039;&amp;#039; banku rejestrów Sophii).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Zobacz też ==&lt;br /&gt;
&lt;br /&gt;
* [[Rejestry GTIA]]&lt;br /&gt;
&lt;br /&gt;
[[Kategoria:Programowanie Atari 8-bit]]&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Atariki recovery</name></author>
	</entry>
</feed>