# Grixel - Retro Tools

>Toto je aplikace pro tvorbu bitmapových struktur určených k programování na 8bitových počítačích Atari.
Program předpokládá, že uživatel ví, co dělá, takže nekontroluje nastavení, která nedávají smysl.
Můžeme vytvářet struktury o velikosti jedné obrazovky nebo větší. Šířka se vždy přizpůsobí násobku datového bytu.
Můžeme tvořit v HiRes nebo LoRes s jednoduchou nebo dvojitou výškou pixelu v zobrazovacích řádcích.
Program umožňuje vybarvení pomocí Atari sprite systému (pouze hráči, střely ještě nejsou začleněny).
Je možné změnit barvu libovolného registru přes přerušení DLI. DLI navíc podporuje změnu šířky spritů.
Program podporuje vytvoření více projektů současně.

---

##### # Projekt
>
>Projekt lze vytvořit/načíst z menu nebo výběrového pruhu:
![](Assets/Image/cs-CZ/grixel_1.png)
`Název projektu` je informativní, aby se uživatel neztratil.
`TV Systém` určuje, jakou paletu barev budeme používat.
`Pixel Mód` určuje mód pro Antic.
`Šířka` pro HiRes je násobkem 8 a pro LoRes je násobkem 4.
`Výška` je "libovolná".

---

##### # Editor

>1. Levá část, výběr, paleta a nástroje:
![](Assets/Image/cs-CZ/grixel_2.png)
`Výběr` zobrazuje, jaký registr je přiřazen tlačítkům myši.
`Paleta` jsou registry, kterými kreslíme do obrazu. Kliknutí myší přiřadí registr k odpovídajícímu poli `Výběr`. Dvojklik otevře výběr barvy, která bude přiřazena k registru jako počáteční barva (od horného řádku obrazu). Registry BG (pozadí), PF1, PF2 odpovídají grafickým datům, zatímco PM0, PM1, PM2 a PM3 jsou sprity. PM01 je barva vzniklá prolnutím PM0 a PM1, podobně PM23 z PM2 a PM3. Změna barvy spritu se vždy děje v párech. Malá tlačítka 1, 2 a 4 pod konkrétním spritem určují jeho počáteční šířku.
`Nástroje` je sada nástrojů k usnadnění kreslení:
 => Tužka, kreslení po pixelech, můžeme zvětšit tloušťku a tvar tužky.
 => Čára, kreslení čar, začneme stiskem tlačítka myši a skončíme jeho uvolněním. Můžeme zvětšit tloušťku čáry a tvar konců.
 => Výplň, vyplníme oblast (ne barvou, ale registrem) výběrem vzoru. Bílá barva na vzoru odpovídá levému (LMB) a černá pravému tlačítku myši (RMB).
 => Tvar, kreslíme jeden ze tří tvarů: čtverec, kruh nebo elipsu. Můžeme vybrat tři varianty: pouze rám (barva LMB), pouze výplň (LMB) nebo rám s výplní (LMB, RMB).
 => Text, můžeme vložit text z pole pro obsah, vybrat jakýkoli systémový font a velikost. Barva bude zvolena podle použitého barevného tlačítka. Podržením tlačítka můžeme provést změnu pozice, kterou potvrdíme uvolněním tlačítka.
 => Výběr, můžeme jej posouvat a kopírovat. Potvrdíme kliknutím mimo oblast výběru nebo stiknutím "Enter".

---

##### # Okno výběru barvy
>
> 1. Jednoduchá barva.
![](Assets/Image/cs-CZ/grixel_3.png)
Zde vybíráme jednoduchou barvu, zobrazenou ukazatelem v levém dolním rohu okna. Výběr se provádí levým tlačítkem myši.
> 2. Barva spritů.
![](Assets/Image/cs-CZ/grixel_4.png)
Zde vybíráme barvy pro sprite 0, 1 nebo 2,3. 0 nebo 2 vybíráme levým tlačítkem myši a 1 nebo 3 pravým. Barva MIX se aktualizuje v reálném čase.

---

##### # Vrstvy
>
>Program podporuje vrstvy.
![](Assets/Image/cs-CZ/grixel_5.png)
Kreslíme na aktivní vrstvu. Můžeme je přidávat, odebírat, přesouvat a slučovat.
Můžete použít referenční vrstvu. Bude viditelná jako pozadí obrázku. Nachází se v dolní části panelu vrstev. Její viditelnost lze přepínat mezerníkem.

---

##### # Ovládací pruhy obrazu
>
>![](Assets/Image/cs-CZ/grixel_6.png)

1. DLI Pruh ukazuje změny barev pro aktivní registr ve volbě LMB. Pro změnu barvy klikněte levým tlačítkem na tento pruh do požadovaného místa. Otevře se okno pro výběr barvy. První barva začínající shora je odvozena z nastavení na levé straně okna přes nástroj "Paleta".
Pokud požadujeme změnit rozsah barvy nebo ho posunout na jinou řádku, umístíme kurzor na tento pruh v daném rozsahu a použijeme kolečko na myši. Přeslechy ovlivňují zejména počáteční pozice.
Stisknutím středního tlačítka dojde k odstranění daného modifikátoru ve stejném pruhu.
Naopak stiskem pravého tlačítka dojde k opětovné změně konkrétního odstímu rozsahu.
2. Pruh Šířky zobrazuje nastavené rozteče příslušných registrů spritů jako pár (PM0 a PM1 či PM2 a PM3). Pro zobrazení musí být příslušně nastaveno na volbě LMB. Tento navíc nabízí tři vertikální rysky ke každému z registrů: Zelená detekuje jednotnou tloušťku zvoleného spritu v obraze. Žlutá určuje jeho zdvojenou profilaci a červená symbolizuje čtyřnásobnou strukturu. Je možné tento modifikátor stiskem měnit díky čemuž hodnota neustále obíhá po spirále s možností "1, 2, 4, 1, 2...". Zkuste ale nezapomínat, že tím docílíte setrvalé změny do konce konkrétní stránky vizualizačního pohledu.
3. Pruh Detekcí (Validace). Užití spritů nutí tvůrce podvolit se hardwarovým kritériím grafického ovladače Atari. Jejich nerespektování se ihned zobrazí coby rudá nebo i žlutá horizontální zpráva na tom daném řádku, ve kterém došlo k takovému omylu. Čtyři pixely tohoto grafu náležejí individuálním registrům. Výrazná červená znamená hrubé pochybení vůči přednastaveným regulím. Trefením LMB na pruh můžeme jednodušeji najít a poté posoudit inkriminovaná místa.

---

##### # Pravidla spritů

1. V normální šíři je velikost stanovená coby 8 pixelů v LoRes struktuře. Jinými slovy, maximální tloušťka odpovídající jednomu registru mezi spritovými pozicemi ve stejném řádku dává rozestup osm obrazových elementů. Podobné je to napříč všemi dalšími obrazovými stopami. Jenom pozice užití je teoreticky vždy odlišná. Při konečném zpracování se do generování pro DLI kód vše propíše podle skutečnosti.
2. S dvojitou tloušťkou se šířka spritů zdvojnásobuje na 2 obvyklé LoRes objekty na každý z osmi předvolitelných "bodových zón", z čehož na obrazovce rázem zastíní plochu definovanou šestnácti objekty. Pokus o nákres izolovaného subprojektu povede jenom k vygenerování grafické chyby.
3. Obdobná logika probíhá na čtvrtinásobné hodnotě s výsledkem 4 LoRes teček na plošný punkt (tím zakrývá plochu o parametrech 32 LoRes polohy), akorát se objevuje narůstající obtíž ve sloučení kompaktnějších tečkovaných forem v homogennější formace celku.
4. Situace je diametrálně odlišná před uplatnění ve variaci na HighResolution, kde základní obraz nabývá titěrnější mřížkové dimenze zatímco modifikátory spritů uplatňují základnu normovaného LoRes. Ty zbývající poučky nemění strukturu chápání.

---

##### # HiRes
>
>Od LoRes varianty, kde jsme nabádáni nakreslit na cokoliv stiskem libovolného zástupce registru, v této se do volby dostávají z palety akorát registry PF1 nesoucí zprávu na stínování společně do sdílení s modelem pro PF2 starajícím se ohledně barvy a profilace stínování - určením konkrétní barvy pak uplatňujeme sjednocení pro celou matici. Ale nastavení světelného indexu je zapotřebí ladit zcela nezávisle.

---

##### # Export
>
>Celostránkový formát bez přesahu za logickou osu bude rovnou doprovázet nezbytný kód sestavující ukázku hotového souboru do provozuschopného znění kompilátoru u Atari. Soubory pod jiné nároky ale proženou do výstupu čirá data.
