Graph2Font v3.8.5.9
INSTRUKCJA

Aktualizacja: 04.06.2008



Jak to działa ?

Program Graph2Font (G2F) traktuje obraz jak pola o wymiarach 4x8, 2x8, 8x8 pixli. Te pola to znaki, w przypadku powtórzenia pola, jest ono zastępowane odpowiadającym mu znakiem. Jest to więc pewien sposób bezstratnej kompresji obrazu.

Na początku program miał tylko zamieniać grafikę na znaki, jednak obecnie jest to już program do tworzenia mocno kolorowej grafiki na Atari. Konserwatywni użytkownicy Atari nie powinny się oburzać na program, ponieważ jego zadaniem jest stworzenie grafiki, która będzie wyglądać identycznie jak na prawdziwym Atari.

Dla trybu 4x1 sprity wogóle nie są przewidziane. Z trybem 2x1, 1x1 powinny działać bezproblemowo.

Aktualnie dzięki obiektom PMG i znakom, grafiki stworzone w tym programie mogą posiadać do 9 kolorów w linii. Nie jest to wiele w porównaniu do CIN-a ale tutaj obraz nie mruga.

Obecnie G2F pozwala na ustawienie 5-ego gracza, oraz zmiany w rastrze, czyli podobnie jak GED w 1 linii można kilkakrotnie zmienić ten sam rejestr koloru lub inny.

Obiekty PMG mają 4 piorytety (bez 0) w trybie kolorowym, oraz 1 w HiRes, ich zrozumienie pozwoli tworzyć grafikę podkolorowaną przez PMG.

Program Graph2Font umożliwia dowolne ustawianie obiektów PMG, zmian kolorów co linie itp. jednak użytkownik będzie musiał uważać aby nie przekraczać z góry określonego limitu zmian na linie, powyżej tego limitu Atari może się nie wyrobić. Nad tym limitem czuwa opcja Check (Options->Check, CTRL+C).

*- Dlaczego na PC ?

Dlatego że jest prościej obejrzeć obraz, zmieniać rozdzielczość w poziomie, nie mówiąc o tym że na PC widać więcej.


Na co mamy wpływ ?

Na rozdzielczość (Screen) i tryb grafiki (Pixel) Atari.

Rozmiar: 2243 bajtów
32,40,48    - liczba bajtów na linię
1x1,2x1,4x1 - proporcje Atarowskiego Pixla, co odpowiada trybom Basica
              Graphics 8,15,9
Pamiętać należy, że przy najszerszym ekranie TV nie pokaże nam około 2 bajtów z lewej i prawej strony, czyli będziemy widzieć tylko 44 bajty w linii.

Wysokość ekranu to 240 linie, nie w każdej rozdzielczości Atari będzie potrafiło je wyświetlić (HiRes), dlatego należy każdy obrazek sprawdzić na prawdziwym Atari.


Jakie pliki powstaną w wyniku działania programu ?

Po zamianie grafiki na znaki Option -> Standard, Optymizing, Original, JGP

zamiana na znaki (change gfx to chars)

dostajemy możliwość zapisania plików FNT, SCR, TAB, ALL.

zapis plików FNT, SCR, TAB, ALL
FNT - w tym pliku będą zestawy znaków, po 1024 bajtów każdy

SCR - tutaj grafika na znakach, długości 960,1200 lub 1440 bajtów

TAB - tutaj 30-bajtowa tablica z informacją o numerze zestawu znaków 
      
ALL - wszystkie w/w pliki scalone w jeden plik, można tylko zapisać, brak
      możliwości wczytania do programu G2F
      
COL - paleta kolorów dla każdej z linii ekranu (5 * 256 bajtów)

PMG - ten plik zawiera sporą dawke informacji o stworzonych pod programem
      obiektach PMG, nie jest on przydatny dla Atari
      
G2F - format zapisu wszystkich danych dla Graph2Font, zamiast wczytywać
      po kolei w/w pliki, ten plik załatwi wszystko
Istnieje też możliwość zapisania pliku w formacie DOS-a Atari (nagłówek 6 bajtowy). Dotyczy to plików FNT, SCR, TAB. Domyślnie zapis z nagłówkami jest wyłączony. Podczas kompilacji do XEX czy też zapisu do ASM, nagłówki są wyłączane.

nagłówki dla plików

Zapisanie pliku FNT bez nagłówka DOS, z kompresja Standard lub Optymizing umożliwi jego późniejsze wczytanie.


Jakie rozszerzenia plików program akceptuje ?

Program 'trawi' pliki BMP, DAT, MIC, INV, FNT, PIC, JGP.
FNT - zestaw fontów z kompresją Standard lub Optymizing, jeśli zestawów
      jest więcej niż 1, potrzebny jest plik TAB

MIC - 7680 bajtów, dane dla pamięci obrazu ANTIC-a, na końcu pliku 4 bajty
      z wartościami kolorów (712, 708, 709, 710)

PIC - skompresowana grafika w formacie Koali

JGP - 2 zestawy znaków z nagłówkiem DOS, tryb JGP wykorzystywany jest
      najczęściej w grach

DAT - max 240*48 bajtów każdego syfu, dane obrazu jak dla MIC tylko w
      innych rozdzielczościach

INV - mapa inversu, plik analogiczny do SCR tylko, że ten zapisany
      zostanie do innej tablicy w pamięci, w trakcie konwersji
      znaki będą z nim porównywane i jeśli wartość w INV jest >=128
      to w pliku SCR też zostanie ustawiony bit inversu. Możliwe
      długości pliku tak jak dla SCR - 960,120,1440 bajtów.
      Służy to tym, którzy mieli już skonwertowaną grafikę na znaki,
      ale nie chce im się ustawiać tego jeszcze raz :)

BMP - pliki w formacie Windowsowej Bitmapy, zapisane w dowolny sposób.
      Po wczytaniu program zasugeruje zamianę kolorów z palety BMP-y
      na konkretne kolory Atari, użytkownik będzie mógł je także ustawić 
      po swojemu.

Jak się go obsługuje ?

Myślę że intuicyjnie :) z użyciem myszki przedewszystkim, jedynie w przypadku pixlowania pod Zoomem, zmieniamy kolory klawiszami klawiatury Q i W, a włączanie-wyłączanie duszków klawiszami 1-8.

Dlaczego w ten sposób? Ponieważ w niektórych liniach mogliśmy zmienić paletę kolorów i żeby kursor myszki stał nieruchomo i wskazywał właściwą linię, musimy podeprzeć się druga łapką :) Tak więc program skierowany jest dla sprawnych homo-sapiens :D. Program wymaga również myślenia i znajomości grafiki Atari.

. Opis MENU:
file

{File}
New       - rozpoczęcie tworzenia nowej grafiki
Open...   - wczytanie pliku o akceptowanym rozszerzeniu
Save As.. - zapisanie pliku w jednym z n/w formatów
/G2F/     - zapis wszystkich danych w jednym pliku
/ASM/     - generuje plik w formacie X-ASM, dodatkowo zapisuje pliki
            FNT i SCR, które są potrzebne w trakcie kompilacji ASM-a
/BMP/     - zapisuje aktualny obraz jako plik BMP
/XEX/     - zapisuje ASM-a i kompiluje do pliku wykonywalnego XEX
/MIC/     - zapisuje tylko dane obrazu
/COL/     - zapisuje informacje o kolorach grafiki
/PMG/     - zapisuje informacje o obiektach PMG
Exit      - zakończenie pracy programu, wyjście do Windows

edit

{Edit}
Undo      - cofa ostatnią zmianę ekranu
Redo      - przywraca ostatnią zmianę ekranu
Bitmap    - PREVIEW = BMP, mamy dostęp do małego programu graficznego przy pomocy
            którego możemy modyfikować bitmape
Colors    - edycja kolorów obrazu
Charset   - edycja obrazu zamienionego już na znaki oraz samych znaków, możliwość dodania
            piątego koloru itp.
Maps      - edycja map, czyli animacji lub gry komnatowej
PMG       - edycja duchów i pocisków, ustawianie ich kolorów, pozycji, szerokości, piorytetu
Rasters   - edycja zmian kolorów w rastrze

options
            
{Options}
Standard        - zamiana obrazu na znaki bez kompresji
Optymizing      - zamiana obrazu na znaki z użyciem kompresji, w przypadku
                  trybu 1x1, 4x1 procedura sprawdza czy znak jest w inversie
Original        - zamiana znaków na grafikę, zablokowana automatyczna zamiana
                  na znaki, modyfikacja jakiegokolwiek znaku spowoduje że
                  znaki o tym samym kodzie będą wyglądać tak samo
JGP             - zamiana obrazu na znaki z ograniczeniem do dwóch zestawów znaków
Check           - test liczby zmian na linię, jeśli ta liczba jest większa od
                  maksymalnie dopuszczonej dla konkretnej szerokości obrazu
                  i trybu graficznego wówczas wystąpi komunikat błędu
Chars fill      - pokazuje ile znaków zostało użytych w każdym z zestawów znakowych
Chars limit     - pozwala ograniczyć liczbę znaków przypadających na każdy zestaw znakowy,
                  domyślną wartośćią jest 128
Show chars      - pokazuje grafikę jako znaki Atari

screen

Resize BMP          - nie/dokonuje automatycznej operacji "resize" wczytywanej bitmapy (*.BMP)
ASM const labels    - w plikach *.ASM nie/będą występowały deklaracje etykiet
Flashing selections - markery używane do zaznaczania obszarów nie/będą mrugały 
Pack G2F file       - nie/zapisuj plik(u) G2F z kompresją

screen

{Screen}
Clear     - kasowanie obrazu, ustawienie licznika linii na 0 (Height)
Chg Col   - Change Colors, czyli zamiana kolorów obrazka
Chg PMG   - Change Players Missiles Graphics, czyli zamiana kolorów, kształtów duchów i pocisków
MoveXY    - przesuwanie obrazu w pionie, poziomie, oraz kopiowanie bloków grafiki
Negativ   - invers bitmapy, nie znaków
Info      - wyświetla informację na temat liczby kolorów występujących na obrazku

(Refresh) - odświeżenie obrazu

{Zoom}    - powiększenie obrazu, możliwość stawianie pixli na grafice
            i obiektach PMG w proporcjach Atarowskich

{About}   - info o autorach

Okna wyboru:

Trzy okna wyboru (a właściwie ramki) znajdują się po prawej stronie. Możemy zdecydować dla:

Rozmiar: 4880 bajtów
PREVIEW:
PMG - wyświetlać i edytować tylko obiekty PMG (duchy+pociski)
BMP - wyświetlać i edytować tylko bitmapę
All - wyświetlać i edytować bitmapę i obiekty PMG

Dla każdej z w/w opcji możliwa jest edycja pod ZOOMEM.


SCREEN:
32 - wąski ekran, szerokości 32 bajtów (256 pixli w HiRes)
40 - normalna szerokość ekranu, 40 bajtów (320 pixli w HiRes)
48 - szeroki ekran, 48 bajtów w linii (384 pixli w HiRes)

Pod ZOOMEM ekran zawsze jest szeroki.


PIXEL:
1x1 - Graphics 8 Basica, max 384x240 (HiRes), 2 kolory
2x1 - Graphics 15 Basica, max 192x240, 4 kolory + 5 kolor na znakach
4x1 - Graphics 9 Basica (GTIA Mode), max 96x240, 16 odcieni jednego
      koloru

MODE:
GED+ możliwość edycji rastra na znakach, maksymalnie 4 zmiany
     na linie, obraz o szerokości 32 lub 40 bajtów
DLI  zmiany co linię na przerwaniu DLI, wszystkie szerokości obrazu
GED- możliwość edycji rastra na bitmapie, maksymalnie 4 zmiany
     na linie, obraz o szerokości 32 lub 40 bajtów
Po wczytaniu grafiki, możemy dokonać jej podkolorowania. Jak zauważył Dracon, program umożliwia tworzenie grafiki w stylu MCS, czyli 5 kolorów na znakach + sprity. Do programu załączony jest przykład (a nawet więcej przykładów]) właśnie takiej grafiki MCS przerobionej na Graph2Font - DRUID.G2F

Możemy też zamienić na znaki i dodać 5-y kolor w 'Edit Charset'. Pod zoomem (ALT+Z) program pokaże czy w danym obszarze można użyć 5-ego koloru czy nie, nie można pod zoomem robić inversu znaków.


ZOOM (ALT+Z)

Wybranie ZOOMa pozwala edytować grafikę i obiekty PMG. Dostępne są 4 skale powiększenia: 2x, 4x, 8x, 16x.

Prawym klawiszem myszki możemy włączyć "marker" pisaka. Rozmiar pisaka możemy modyfikować tylko gdy PREVIEW=BMP.

Rozmiar: 21589 bajtów

Mamy tutaj do dyspozycji informacje na temat:

  • PMG
    Pokazuje aktywny obiekt PMG i jego kolor nad aktualną pozycją kursora myszki. Klawiszami 1-8 możemy obiekty PMG włączać (czerwony podpis) lub wyłączać (bez czerwonego podpisu).
  • COLORS
    Pokazuje aktualną paletę kolorów w linii nad aktualną pozycją kursora myszki. Klawiszami 'Q' i 'W' możemy zmieniać aktywny kolor pisaka.
  • POSITION
    Współrzędne X,Y kursora myszki.
  • CHARSET USED
    Liczba użytych zestawów znaków.
  • CURRENT CHARSET FILL
    Liczba użytych znaków w aktualnym zestawie nad których znajduje się kursor myszki.
  • FILL SPRITES
    Tryb modyfikacji pixli obiektów PMG:
    • PMG[XOR] - pixle na przemian zapala i gasi (możemy włączyć naciskając klawisz X)
    • PMG[OR] - zapala pixle (możemy włączyć naciskając klawisz O)
    • PMG[AND] - gasi pixle (możemy włączyć naciskając klawisz A)

    Informacja na temat PMG przydaje nam się gdy obiekty się nakładają. Kolejnośc nakładanie określa numer obiektu P0, P1, P2, P3. Razem z Playerem (graczem) występuje Missile (pocisk) M0, M1, M2, M3. Im mniejszy numer ma duszek, tym wyższy ma piorytet. Na samym wierzchu jest P0-M0, potem P1-M1, P2-M2, P3-M3 (czyli z lewej strony są obiekty na wierzchu, z prawej pod spodem). Żeby dostać się do P1, musimy wyłączyć P0 (jeśli przykrywa go P1), naciskamy klawisz który jest w kolorowym kwadraciku (nad podpisem obiektu), ponowne naciśnięcie tego klawisza włączy obiekt.

    Ułatwieniem w modyfikowaniu obiektów PMG, jest PREVIEW=PMG. Wtedy wszystkie obiekty są na czarnym tle, łatwiej zorientować się w sytuacji na ekranie :).

    W przypadku gdy PREVIEW=BMP, pod zoomem dostajemy możliwość zmiany wielkości pisaka za pomocą strzałek z klawiatury numerycznej (klawisz NUMPAD musi być włączony).

    Dodatkowo pod ZOOM-em możemy włączyć siatkę GRID - CTRL+G. Rozmiar siatki możemy modyfikować klawiszami strzałek spoza klawiatury numerycznej. Siatka wyznacza granice znaków.


    EDIT CHARSET (ALT + H)

    Za pomocą strzałek klawiatury numerycznej (NumPad) lub klikając na obrazek możemy przesuwać obszar zaznaczenia, klawiszami kursora spoza klawiatury numerycznej możemy zmieniać rozmiar tego obszaru (maksymalnie 9x9 znaków).

    edit screen, adding 5 color

    Dodatkowo przy pomocy odpowiednich klawiszy możemy wywołać dodatkowe działania w głównym oknie z grafiką:
  • SPACE inwers zaznaczonego obszaru (5-y kolor, COLOR2 zostaje zamieniony na COLOR3 dla trybu PIXEL = 2x1)
  • ENTER skopiowanie zaznaczonego obszaru do bufora
  • RIGHT MOUSE BUTTON wstawienie zawartości bufora na ekran (pojedyńczy znak lub obszar)

    Natomiast w oknie CHARSET możemy użyć klawiszy:

  • ENTER skopiowanie zaznaczonego znaku do bufora
  • Q, W zmiana koloru pisaka


    MOVE XY (SHIFT + M)

    Przyciski Move X oraz Move Y pozwalają na przesuwanie grafiki w poziomie (X) lub pionie (Y). W przypadku (X) wartości oznaczają o ile pixli przesunąć grafikę w poziomie (wartości wyrażone są w szerokości pixla).

    W (Y) oznaczają o ile linii przesuwać w pionie (jeśli ta wartość jest wielokrotnością 8, zostanie też przemieszczony invers znaków).

    Jeśli pozostawimy nieruchomo kursor myszki w obrębie okienka z wartością, pokaże się 'dymek', który podpowie nam w jakim kierunku zostanie przesunięty obrazek.

    Możemy zadecydować który rodzaj danych będzie przesuwany, PMG (grafika graczy i pocisków), BMP (grafika bitmapy), Colors (paleta kolorów i zmiany w rastrze).

    Move XY Move XY Move XY

    Jeśli chcemy skopiować blok grafiki, zaznaczamy go od góry poprzez LINE:RANGE oraz suwakami na dole okienka 'Move XY'.

    Przycisk COPY służy do kopiowania obszarów wyznaczonych przez LINE:RANGE.

    Przyciski PASTE, FLIP, MIRROR służą do wklejania obszaru wcześniej skopiowanego przez COPY.

    Dostęp do przycisków FLIP, MIRROR mamy poprzez kliknięcie prawym klawiszem myszki na przycisku PASTE. Realizują one obracanie wcześniej skopiowanego obszaru przyciskiem COPY.

    Można dokonywać kopiowania pomiędzy różnymi obrazkami, wystarczy dokonać kopiowania obszaru na pierwszym obrazku, następnie wczytać inny i tam wkleić wcześniej skopiowany obszar.


    EDIT COLORS (ALT+C)

    edit colors
    - kolory ustawiamy klikając na kolorowy kwadrat i wybieramy z palety (Select Color ...)
    
    - możemy modyfikować kolor (C-olor) lub tylko jasność koloru (S-aturation), w tym
      celu zaznaczamy lub odznaczamy odpowiedni CheckBox obok aktualnie modyfikowanego koloru
    
    - zmiana koloru z zaznaczonym CheckBox-em LOCK COLOR spowoduje że informacja o kolorze
      będzie umieszczona w każdej linii obrazu (spowoduje to zwiększenie liczby dopuszczalnych zmian
      na linię na całej wysokości dokonanej zmiany)
    
    - w okienku ADD możemy wpisać wartość typu REAL, o tą wartość co linię będzie zwiększany
      kolor lub jasność, uzyskamy dzięki temu efekt tzw. "tęczy"
    
    - w okienku SKIP możemy wpisać wartość typu BYTE, o tą wartość będzie zwiększany licznik
      linii (domyślnie licznik linii zwiększany jest o 1)
    
    - zakres lini ustawiamy w okienku LINE (aktualna linia), oraz w RANGE
      czyli zakres w jakim zmieni się kolor po naciśnięciu FILL COLORS.
      Można użyć myszki aby wskazać pozycję Y dla LINE.
    
    - przycisk GET pozwala na automatyczne ustawienie LINE i RANGE,
      które będą pokazywać zakres w którym występuje aktualnie wskazany kolor
      (obok aktualnego koloru znajduje się znak '*')
      
    - Load i Save Colors dostępne są po wybraniu File->Open... 
    
    - pod Zoomem aktywny kolor zmieniamy klawiszem Q (w lewo) lub W (w prawo) lub kółkiem myszki.
      Kolor 0 (BAK) służy też do modyfikacji obiektów PMG.
    
    

    CHANGE COLORS (SHIFT+C)

    Zamiana kolorów obrazka.

    Zaznaczamy linie (LINE) i zakres (RANGE) w jakim odbędzie się zamiana kolorów.

    change colors

    np. zamiana koloru 709 -> 710 (pixle koloru 709 zostaną zastąpione pixlami koloru 710)

    np. zamiana koloru 710 -> 711 (kolor 710 zastąpi kolor 711 - szybsze wprowadzenie inversu)


    LOCK COLOR

    Do czego służy LOCK COLOR w EDIT COLORS ?

    Jeśli zmieniamy kolory w rastrze (EDIT RASTERS) zachodzi potrzeba przywrócenie poprzednich wartości rejestrów koloru. Możemy to zrobić edytując program rastra w EDIT RASTERS lub przy pomocy LOCK COLOR w oknie EDIT COLORS.

    Otwieramy okno EDIT COLORS (ALT+C), wybieramy jeden z 4 dostępnych rejestrów kolorów, wybieramy dla niego kolor, zaznaczamy zakres linii w jakich chcemy dokonać zmiany (LINE:RANGE), zaznaczamy checkbox LOCK COLOR i naciskamy przycisk FILL COLORS.

    Czyli postępujemy identycznie jak przy każdej innej zmianie kolorów przy użyciu EDIT COLORS, różnica polega tylko na tym że dodatkowo zaznaczamy LOCK COLOR.

    Po takiej zmianie każda nowa linia będzie na początku inicjowana wartością którą wybraliśmy, dla której zaznaczyliśmy LOCK COLOR, dlatego nie potrzebujemy już tego robić w EDIT RASTERS.

    Zaleta:
    Dostajemy do dyspozycji większą możliwość zmian rastra, nie musimy marnować czasu na odświeżenie rejestrów kolorów starymi wartościami w EDIT RASTERS.

    Wada:
    Zmniejsza się nam dopuszczalny limit zmian w danej linii.


    EDIT PMG (ALT+P)

    edit sprites
    - kolory ustawiamy podobnie jak w Edit Colors
    
    - pole X to pozycja pozioma ducha lub pocisku, X=-1 oznacza że obiekt jest niewidoczny,
      znajduje się poza ramką obrazu (do ustawienia pozycji poziomej można także użyć myszki,
      wystarczy wskazać miejsce myszką i kliknąć lewym przyciskiem)
      Aby wpisać wartość '-1' wystarczy wpisać '0'
    
    - pole S to szerokość sprita lub pocisku, S=0 to szerokość pojedyńcza,
      S=2 szerokość podwójna, S=4 szerokość poczwórna
    
    - piorytet to sposób przysłaniania grafiki PMG i PF, który wymaga
      większego wytłumaczenia, jego działanie będzie inne dla trybu 2x1 i 1x1
    
    - 'Multicolor PM' włącza/wyłącza czterokolorowe duchy i pociski	
    
    - 'Player 4' włącza/wyłącza piątego gracza (numeracja w G2F jest od zera 0..4)
    
    - LINE i RANGE działają tak samo jak w "Edit Colors". Naciśnięcie
      FILL COLORS ustawia nowe kolory w zaznaczonym przedziale. Zaś
      zmiana pozycji X, szerokości S, 5-go gracza, piorytetu musi być
      zatwierdzona naciśnięciem przycisku CHANGE.
      Można użyć myszki aby wskazać pozycje X i Y dla LINE.
      
    - mały przycisk między LINE i RANGE to GET, pobiera informacje o
      ustawionych już w linii (LINE) obiektach, kolorze, pozycji X, szerokości
      S. Po jego naciśnięciu, ustawiane są pola LINE, RANGE oraz pionowe
      zaznaczenia zakresu. Ten przycisk przydaje się do sprawdzenia czy obiekt
      PMG, który edytujemy nie był już ustawiony wcześniej.
    
    - pole CLEAR (klikamy prawym klawiszem myszki na przycisku CHANGE) umożliwia
      kasowanie zawartości obiektu PMG po naciśnięciu przycisku CHANGE (wypełnia kształt ducha
      wartościami = $00)
    
    - pole FILL (klikamy prawym klawiszem myszki na przycisku CHANGE) umożliwia
      wypełnienie zawartości obiektu PMG po naciśnięciu przycisku CHANGE (wypełnia kształt ducha
      wartościami = $FF)	
    
    - Load i Save Sprites dostępne są obecnie po wybraniu File->Open... w głównym menu
      
    - pod Zoomem klawiszami 1-8 ustalamy czy edycja obiektu PMG jest dozwolona
      czy też nie (nazwa obiektu na czerwono - modyfikacja dozwolona, brak
      koloru czerwonego - modyfikacja zabroniona), przydaje się to gdy duchy
      przysłaniają się nawzajem, możemy wtedy wyłączyć tego na wierzchu, a
      odwołania zaczną dotyczyć obiektu pod nim. Pamiętać należy że na wierzchu
      jest gracz (player) lub pocisk (missile) o najmniejszym numerze.
    
    Jeśli zmieniamy pozycje X lub szerokość S obiektu PMG, pojawia się znak 'gwiazdki' * który oznacza że właśnie te obiekty modyfikujemy.


    CHANGE PMG (SHIFT+P)

    Zamiana kształtu i koloru obiektu PMG.

    Zaznaczamy linie (LINE) i zakres (RANGE) w jakim odbędzie się zamiana. Z lewej strony okna wyszczególnione są obiekty PMG docelowe, z prawej źródłowe (kierunek kopiowania kształtów obiektów pokazują strzałki).

    change_sprites

    Zamiana dotyczy tylko kształtu i kolorów. Możemy zamieniać pociski na pociski oraz graczy na graczy. Nie można zamieniać pocisku na gracza lub odwrotnie.


    PIORYTETY obiektów PMG

    PMG - Players Missiles Graphics (Grafika graczy i pocisków)

    Kolory pochodzą z PM0(704), PM1(705), PM2(706), PM3(707), dla graczy i pocisków są takie same.

    PF - Playfield (pole gry)

    Kolory pochodzą z PF0(708), PF1(709), PF2(710), PF3(711), BAK(712). Kolor PF3 powstaje tylko gdy kolor PF2 jest w inversie.

    Piorytet będzie określał relacje pomiędzy w/w kolorami.
    piorytet     0     1     2     4     8
                 
    najwyższy>        PM0   PM0   P4    PF0
                      PM1   PM1   PF0   PF1
                      PM2   P4    PF1   PM0
                      PM3   PF0   PF2   PM1
                      P4    PF1   PF3   PM2
                      PF0   PF2   PM0   PM3
                      PF1   PF3   PM1   P4
                      PF2   PM2   PM2   PF2
                      PF3   PM3   PM3   PF3
    najniższy>        BAK   BAK   BAK   BAK
    

    BAK ma zawsze najniższy piorytet, dlatego będzie go przysłaniać każdy inny kolor.

    Najłatwiej z piorytetem =4 możemy stworzyć obrazek, gdzie wszystkie kolory PM są przysłaniane przez kolory PF. Kolor BAK czyli tło nie będzie już tłem, tylko takim kolorem przez który bedą prześwitywały obiekty PMG. Kolorem czarnym bo taki najczęściej występuje jako tło, będzie PF0 lub PF1 lub PF2 lub PF3.

    Nasz obrazek musimy tak przemyśleć, aby kolorem BAK robić "dziury", pod które podkładać będziemy PMG.

    Przykładowy obrazek DRUID jest robiony troche inaczej na prawdziwym Atari, bo piorytetami =0, =4 i =8. 0 gdy piorytet jest ustawiony niejednoznacznie, kolory PM powodują zmianę kolorów PF (przebarwienia). W wersji dla G2F korzystałem jednak z piorytetu =4 i tła w rejestrze PF0 zamiast w BAK. Tam gdzie chciałem aby był kolor sprita, stawiałem pixel z BAK.


    EDIT MAPS (ALT+M)

    Głównym celem edycji mapy, jest złożenie obrazu z dużej ilości ekranów. Każdy ekran może mieć szerokość 32, 40 lub 48 bajtów, wysokość od 1 do 30 wierszy (1 wiersz = 8 linii).

    Kombinacja klawiszy ALT+M spowoduje otwarcie dodatkowego okna, w którym lewa strona zarezerwowana jest na podgląd rozkładu ekranów, a prawa na podgląd ich zawartości.

    Rozmiar: 19738 bajtów

    Width i Height wyznaczają odpowiednio szerokośc i wysokość maksymalną edytowanej mapy. Zmiana tych wartości spowoduje zmianę liczby pól (kwadracików) reprezentujących ekrany nszaej mapy. Jeśli w takim polu znajduje się znak '*' tzn. że jest tam ustawiony ekran.

    Jeśli zaczynamy tworzyć nową mapę, musimy założyć nowy katalog i wskazać go programowi poprzez wybranie opcji New w zakładce File. Pojawi się wówczas okno Select Folder:

    Rozmiar: 10552 bajtów

    Wszystkie ekrany składające się na mapę będą przechowywane właśnie w tym katalogu.

    Aby obejrzeć ekran wystarczy kliknąć na polu ze znakiem '*'. Wówczas zostanie wyświetlony i wycentrowany ekran tam występujący oraz ekrany przyległe do niego (wysokość wszystkich ekranów determinuje liczba kopiowanych wierszy Copy screen from row X to Y) Np. klikamy na pole o współrzędnych (X,Y), wówczas zostaną wyświetlone ekrany o współrzędnych:
                    [X-1,Y-1]  [X,Y-1]  [X+1,Y-1]
    
                      [X-1,Y]   (X,Y)   [X+1,Y]
                
                    [X-1,Y+1]  [X,Y+1]  [X+1,Y+1]
    
    Przycisk INSERT SCREEN pozwala na dodanie ekranu w polu o współrzędnych X,Y.

    Przycisk REMOVE SCREEN usuwa ekran z pola o współrzędnych X,Y.

    Przycisk EDIT SCREEN powoduje wczytanie do głównego okna (pierwsze okienko które pokazuje się po uruchomieniu programu) zaznaczonego ekranu z pozycji X,Y.

    Przycisk EXPORT spowoduje ponowną kompresję wszystkich ekranów i zapisanie plików ASM, FNT, FRM, PAK. Na podstawie tych plików Atari będzie potrafiło wyświetlić konkretny ekran. Maksymalnie może zostać użytych 128 zestawów znaków do zaprezentowania wszystkich ekranów. Taka liczba zestawów jest na wyrost, aby było możliwe ich wykorzystanie należałoby podczas zmiany zestawu znaków w trakcie przerwania DLI zmieniać także bank pamięci. Aktualnie procedura wyświetlania klatek korzysta tylko z pamięci podstawowej.

    Włączony przełącznik SINGLE FRAME powoduje wyświetlenie zaznaczonej klatki, a jeśli jest wyłączony powoduje wyświetlenie klatki zaznaczonej i przyległych do niej.


    Paleta kolorów w Atari800Win i Graph2Font

    Program Graph2Font używa lekko poprawionej palety kolorów JAKUB.ACT

    Aby kolory pod emulatorem były identyczne z tymi z G2F, należy wybrać w emulu opcje View->Palette... i wczytać plik JAKUB.ACT lub G2F.ACT, który jest w katalogu \Palette\

    Zaznaczamy checkbox-a 'Use external palette', a 'Apply adjustment' zostawiamy niezaznaczone.

    W ten oto prosty i cudowny sposób obrazki pod emulem będą wyglądały identycznie jak pod G2F :)

    A dlaczego paleta w G2F nie może być taka jak domyślna w emulu ?

    Bo mogłyby powstać cuda, jak np. kolory >0 podbarwiają całkowicie HiRes, co na prawdziwym Atari jest nieprawdą, lecz pod emulem tak. Emul ma zbyt ciemne domyślne kolory, przez co nie wszystkie szczegóły są widoczne.


    Kolorowe obrazki w HiRes

    Podkolorowanie grafiki w HiRes nie dla wszystkich jest jeszcze zrozumiałe.

    Cały trick opiera się o zależności jakie zachodzą między kolorami duszków, a kolorami grafiki, a właściwie jej jasnościami.

    W HiRes mamy 2-a kolory, które wzajemnie na siebie oddziaływują: PF1(709) i PF2(710).

    PF1 to jasność i tylko jasność grafiki czyli zapalonych pixli.

    PF2 to kolor tła, czyli zgaszonych pixli.

    Jeśli zmienimy PF2(tło), to zapalone pixle przyjmą kolor PF2 o jasności z PF1.

    Jeśli zmienimy PF1 to zmienimy tylko jasność zapalonych pixli grafiki, ich kolor pozostanie bez zmian.

    Kolory duszków PM0...PM3 będą zależeć od jasności zapalonych pixli grafiki, czyli od PF1 i mniej od zgaszonych pixli czyli PF2.
    Duszek znajduje się nad PF1:
    - jeśli jasność z PF1<>jasnośći duszka to duszek przejmuje jasność z PF1,
      grafika PF1 jest niejako podkolorowana kolorem duszka
    - jeśli jasność z PF1=jasności duszka to duszek nie zmienia jasności,
      zakrywa kolor PF1
    
    Duszek znajduje się nad PF2:
    - kolor duszka pozostaje bez zmian, zakrywa tylko kolor PF2
    
    W/w zależności możemy teraz wykorzystać do pokolorowania HiRes, musimy tylko zamienić kolory grafiki miejscami, tzn. PF2(tło) będzie kolorem zapalonych pixli PF1, a PF1 zamienimy na PF2.

    Dzięki takiej zamianie, kolor PF1 staje sie kolorem tła i jego jasność będzie oddziaływać na jasność duszków. Tło przeważnie mamy czarne, a jasność koloru czarnego jest =0 :)

    Tak więc jeśli duszek przysłoni kolor PF1=0 to też przyjmie jasność =0.

    Idąc dalej tym tropem, jeśli kolor duszka =0 i PF1=0, PF2=14, a duszek zakrywa część koloru PF1 i część PF2, to zobaczymy tylko podkolorowany fragment koloru PF2, w miejscu koloru PF1 będzie tylko kolor czarny (duszek koloru =0 przejął jasność PF1 =0).

    Jeśli użyjemy kolorów, musimy liczyć się z tym że tam gdzie PF1=0, tam duszek też przyjmie jasność =0. Na szczęście tak ciemny kolor nie rzuca się w oczy, zresztą sami sprawdzcie tak podkolorowaną grafikę 'TVTEST_HiRes.G2F'

    Kolorując grafikę HiRes za pomocą spritów i zmian w rastrze należy zwrócić uwagę aby sprity zawsze zachodziły na grafikę ze zmienionym kolorem. Okazuje się że Atari w trybie HiRes ma małą przypadłość, której nie pokaże emulator.

    W miejscu w którym styka się zmiana koloru w rastrze ze spritem powstaje dodatkowy kolor (jaśniejszy), widoczny jako pionowy pasek.

    Aby temu zaradzić sprity muszą zawsze zachodzić na obszar ze zmienionym kolorem na 'głębokość' jednego pixla.


    SAVE ASM i kompilacja (CTRL+S)

    Po naciśnięciu Save ASM program zapisze plik *.ASM lub *.ASQ, *.FNT i *.SCR lub *.RAW

    Wygenerowany przez G2F plik ASM możemy zasemblować przy pomocy MADS-a
    http://mads.atari8.info/

    Przykładowy fragment zapisanego programu dla przerwania DLI w asemblerze może wyglądać tak:

     sta $d40a                     ;line=22
     lda >fnt+$400*$01
     sta $d40a                     ;line=23
     sta CHARBASE
     lda #$FA
     ldx #$03
     ldy #$6E
     sta $d40a                     ;line=24
     sta Playfield_Color3_PF3
     stx Player2_Size
     sty Player2_PositionX
     lda #$F2
     sta Player2_Missile2_Color_PM2
     sta $d40a                     ;line=25
    
    W każdej linii z 'STA $D40A' umieszczona jest informacja, która to linia. Informacja ta pomaga zorientować się, gdzie występują zmiany i ewentualnie dokonać poprawek pod G2F.

    Poprawka może być konieczna gdy w 1 linii wystąpiło więcej rozkazów 'STA' niż maksymalnie dopuszczona (więcej na temat sprawdzania limitu dopuszczalnych zmian w linii w rozdziale CHECK). Na Atari zobaczymy wówczas puste linie, albo zwis komputera tzn. że Atari nie zdążyło dokonać zmian w linii.


    SAVE BMP (CTRL+B)

    Zapis aktualnie wyświetlanego w okienku obrazu do pliku Windows BMP. Format zapisu to 24bit per Pixel, obraz zostanie poddany operacji resize, czyli zostaną zachowane proporcje obrazu Atari.

    Ponowne wczytanie takiej BMP-y do G2F może zakończyć się szokiem :) szczególnie gdy na obrazie jest więcej kolorów niż 4.


    EDIT BITMAP

    Rozmiar: 1850 bajtów

    Po wybraniu Preview=BMP lub naciśnięciu klawiszy ALT+B dostajemy możliwość rysowania po ekranie za pomocą odpowiednich opcji:

    Rozmiar: 175 bajtów SELECT PATTERN
    Rozmiar: 175 bajtów DRAW
    Rozmiar: 175 bajtów CIRCLE
    Rozmiar: 175 bajtów RECTANGLE
    Rozmiar: 175 bajtów ROUNDED RECTANGLE
    Rozmiar: 175 bajtów LINE
    Rozmiar: 175 bajtów DROPPER
    Rozmiar: 175 bajtów FILL
    Rozmiar: 175 bajtów FILL PATTERN
    Rozmiar: 175 bajtów SPRAY
    Rozmiar: 175 bajtów LINES
    Rozmiar: 175 bajtów UNDO
    Rozmiar: 175 bajtów REDO

    SELECT PATTERN:

    Za pomocą kursora myszki zaznaczamy obszar (w granicach znaków, a nie co piksel), który chcemy powielić lub którym chcemy wypełnić jakiś ograniczony obszar (Fill Pattern).


    SAVE XEX (CTRL+X)

    Ta operacja spowoduje automatyczną kompilację do pliku *.XEX przy pomocy programu MADS
    http://mads.atari8.info/


    Wczytanie pliku BMP

    Program odczyta dowolnie zapisany plik BMP (najlepiej gdyby miał maksymalnie 16 kolorów).

    Wyświetli 16 pierwszych kolorów z palety BMP-y, posortowanych malejąco wg częstotliwości występowania na ekranie, oraz pokaże na które kolory z palety Atari zostaną zamienione.

    load_bmp

    Użytkownik może sam ustawiać kolory Atari (708-712), poprzez naciskanie klawiszy strzałek (numerycznej nie używamy tutaj) góra-dół na polu w którym znajduje się kursor.

    Zatwierdzenie zmiany i zamiana kolorów BMP-y na Atari według nowej kolejności, nastąpi po naciśnięciu przycisku PREVIEW

    Przełącznik 'Smart Colors' spowoduje automatyczną detekcję kolorów BMP'y co linię i zamianę ich na kolory Atari. Tło pola z kolorem Atari zabarwione kolorem zielonym oznacza, że ten kolor udało się zamienić na całym obrazku, tło koloru czerwonego przeciwnie.


    CHECK (CTRL+C)

    Od wersji 3.5 mamy nową opcję - CHECK. Służy ona do sprawdzenia czy obrazek nie zawiera błędów. Błędy to przekroczony limit zmian na linie.

    Dla każdej szerokości obrazu ten limit jest inny. Tryb grafiki nie ma znaczenia.

    load_bmp

    W przypadku opcji ASM=GED+ lub ASM=GED-, jeśli na obrazku jest więcej niż 3-4 zmiany na linie, program nie pozwoli nam na zapisanie pliku ASM ani XEX.

    Maksymalna liczba zmian na linię:
    ASM=DLI (char mode)
            Pixel=1     Pixel=2
       48b     2           4
       40b     3           4-5
       32b     4           6
      
    ASM=GED+ (char mode)
            Pixel=1     Pixel=2
       40b     4           4
       32b     4           4
       
    ASM=GED- (bitmap mode)
            Pixel=1     Pixel=2
       40b     3           3
       32b     4           4
    


    EDIT RASTERS (ALT+A)

    Aby obrazek miał możliwość edycji rastra należy wybrać Mode=GED+ lub GED-, Pixel=1 lub 2, Screen=32 lub 40.

    Dostępne są 4-y lub 3-y globalne zmiany na linię, tzn. że te zmiany są wykonywane poza ramką obrazu i mogą zmienić całą linię od lewej do prawej krawędzi.

    4-y zmiany dla GED+, a 3-y dla GED- przy szerokości obrazu 40b, zaś przy wąskim ekranie 4-y zmiany.

    Wynika z tego że tryb znakowy jest szybszy od bitmapowego, jest to 1 cykl różnicy dla obrazu 40b w stosunku do obrazu o tej samej szerokości w trybie znakowym.

    Poza tymi zmianami globalnymi, mamy możliwość do 6 zmian w linii (rastrze).

    Edycja rastra to ALT+R, dostępne są 2-a tryby Automatic i Manual.

    Automatic - tutaj teoretycznie mamy możliwość zmiany trzech wartości w rastrze. Teoretycznie bo tak naprawdę zmieniamy jedną wartość lub dwie, a trzecia służy przywróceniu początkowego stanu zmienionego właśnie rejestru.

    Zakres w jakim ustawiamy zmianę jest bardziej ograniczony niż w Manual, w celu wyeliminowania potencjalnych błędów przy wyliczaniu opoźnień w cyklach. Dla szerokości obrazu 40b mogą wystąpić błędy, wtedy należy skorygować je z łapki.

    Edit Rasters - Automatic

    Ustawiamy zakres LINE i RANGE, w którym mamy zamiar przeprowadzić zmianę oraz początek zmiany koloru LEFT EDGE i jego koniec RIGHT EDGE.

    Każda zmiana prawej i lewej krawędzi musi zostać potwierdzona przyciskiem APPLY.

    Rozmiar: 2824 bajtów

    Wartość rejestru możemy przywrócić na początku linii lub na jej końcu. Na początku to wartość w A, na końcu to C.

    Wartość B jest naszą główną zmianą rejestru.

    Jeśli nie ustawimy wartości początkowej rejestru, wówczas jego zmiana przeniesie się na następne linie. Widać to na Atari, program G2F tego nie pokaże.

    Manual - tutaj mamy wpływ na zmiany w rastrze, wręcz z poziomu assemblera :). Jest 12 pól, z których układamy program zmian rastra.

    edit rasters

    lda#, ldx#, ldy# - załadowanie wartością VALUE rejestru A lub X lub Y
    sta, stx, sty    - zapisanie wartości z A lub X lub Y do rejestru REGISTER
    
    GED+ (char mode)
    Dla szerokości obrazu 32, musimy zmieścić się w 68 cyklach (LIMIT=68).
    Dla szerokości obrazu 40, musimy zmieścić się w 60 cyklach (LIMIT=60).

    GED- (bitmap mode)
    Dla szerokości obrazu 32, musimy zmieścić się w 68 cyklach (LIMIT=68).
    Dla szerokości obrazu 40, musimy zmieścić się w 54 cyklach (LIMIT=54).

    Każda zmiana wartości VALUE lub rejestru REGISTER musi być potwierdzona naciśnięciem przycisku APPLY, tylko wtedy zmiana zostanie zapamiętana.

    new value or register

    Wadą tego rozwiązania jest modyfikacja linii w momencie naciśnięcia APPLY, więc nie należy naciskać CHANGE dopóki nie ustawi się wszystkich pól.

    Program sygnalizuje potrzebę naciśnięcia przycisku APPLY, jeśli jego nazwa jest pomiędzy znakiem mniejszości i większości '> APPLY <'.

    Jeśli całkowita liczba cykli w linii, mieści się w LIMICIE, możemy dokonać zmian w zadanym obszarze (LINE i RANGE) obrazu naciskając CHANGE.

    Przycisk DEFAULT VALUES wstawia w aktualnie edytowaną linię wartości domyślne, czyli nic nie robiące rozkazy 'lda #0' 'sta $d01e'. W ten sposób możemy skasować wszystkie zmiany rastra, doprowadzić je do stanu początkowego.

    O zmianie trybu graficznego w rastrze można poczytać w punkcie "Zmiana trybu graficznego w nowym wierszu".

    Trick z trzema różnymi trybami graficznymi, jaki ma miejsce w intrze UNITY grupy 5ourSoft można uzyskać następująco:

    - ekran jest w rozdzielczości HiRes (Pixel=1)
    - gdzieś pośrodku linii ustawiamy tryb 16 odcieniowy ($d01b=$40)
    - pod koniec linii wyłączamy go ($d01b=$00)
    - na ekranie widzimy już 3 różne tryby graficzne, to widocznie taka
      przypadłość GTIA :)
    

    Uwaga #1
    Lewa strona obrazu jest wolniejsza od prawej strony, tzn. że z lewej strony zmiany rastra będą zachodzić w większych obszarach, niż z prawej strony.

    Uwaga #2
    Antic w trybach znakowych zabiera co 8-ą linię dla siebie, tzn. że w co 8-ej linii nie będzie działać zmiana rastra, pojawią się puste linie (bad lines). Aby je ukryć trzeba odpowiednio rysować albo zamaskować je spritami. Puste linie dotyczą każdego zmienianego koloru czy obiektu w GED+.

    Uwaga #3
    Graph2Font wyświetla tylko zmiany kolorów grafiki w rastrze. Zmiany dotyczące obiektów PMG nie są jeszcze oprogramowane, ale to nie znaczy że na Atari nie będą już działać.


    Zmiana trybu graficznego w nowym wierszu

    Aby zmienić tryb graficzny wiersza, musimy wskazać kursorem myszki wiersz w pionowej kolumnie z lewej strony obrazka.

    Możliwość zmiany sygnalizuje kursor myszki w kształcie "rączki".

    Każdorazowe kliknięcie lewym przyciskiem myszki powoduje zmianę trybu z 1 na 2, z 2 na 4, z 4 na 1.

    Change graphics mode in new row

    Tryb graficzny możemy zmienić również w linii, korzystając z 'Edit Rasters'.

    Na rodzaj trybu graficznego mają wpływ dwa najstarsze bity rejestru $d01b.

     $00 (%00000000)   wyłączony tryb GTIA, może spowodować włączenie
                       trybu 4 kolorowego
     $c0 (%11000000)   tryb 16 kolorowy, można tylko zmieniać jasność kolorów
     $80 (%10000000)   tryb 9 kolorowy, mamy wpływ na każdy kolor
     $40 (%01000000)   tryb 16 odcieniowy, tylko 1 kolor w 16 odcieniach
    
    Zmieniając ten rejestr, zmieniamy też piorytety spritów. G2F nie będzie ingerował w wartości jakie zostaną wpisane do $d01b w czasie tworzenia linii. Ingeruje tylko gdy rejestr $d01b (PRIOR_GTIACTL) jest zmieniany na początku tworzenia każdej linii podczas używania EDIT SPRITES.


    Porady, które ułatwią użytkowanie programu

    - Chcesz mieć paletę kolorów G2F także pod emulatorem Atari800Win ?
      Ustaw w emulatorze paletę JAKUB.ACT lub najlepiej G2F.ACT
    
    - Jeśli chcesz aby sprajty prześwitywały przez grafikę, to zamień
      miejscami kolor BAK z kolorem PF0 lub PF1 (Change Colors).
      Zamiana z innymi kolorami PF2, PF3 może okazać się zbyt trudna.
    
    - Gdy używasz spritów, najlepiej zacznij od ostatniego 4-ego, potem 
      używaj coraz wyższych 3-2-1. Dzięki takiej kolejności na końcu sprajt
      pierwszy przykryje pozostałe, a Ty zachowasz nerwy :)
    	
    - z każdego okienka (oprócz głównego i ZOOM-a) można wyjść naciskając klawisz ESC
    
    Porady od użytkowników:

    Tezz

    Dobrą radą dla każdego konwertującego z BMP-y, jest wymusić (wymienić?) nie używany kolor z jednym z innych czterech jako kolor inwersji.

    Konwersja BMP wydaje się polegać na wyborze najmniej używanego koloru na obrazku jako kolor inwersji.

    Ogólnie rozdzielam ekran na 5 kolorowych odcinków i dodaje duże bloki /części/ najczęściej używanych kolorów do pustych obszarów ekranu i wtedy edytuje je później. W ten sposób określam które rejestry kolorów są przydzielone do każdego pojedyńczego koloru wewnątrz BMP. Pozostająca częśc/kolory może być skończona przez sprytne użycie sprajtów (PMG). Wycinanie i wklejanie jest bardzo przydatne aby położyć odcinki razem z powrotem jako że to kopiuje całe DLI i dane sprajtów na wybrany rejon ekranu. To inna świetna cecha, mile wiedziana gdyby była obecna w G2F...


    Emkay (advanced G2F user:))

    Najlepszą metodą edycji obrazków jest używanie rejestrów 708 i 709 jako "filtrów rodzielczości". Tak więc wybieraj kolory z najszerszymi obszarami na ekranie dla rejestrów 708/709...

    710/711 mogą filtrować rozdzielczość grafiki sprajtów. Dla najlepszego użycia tych "bloków" kolorów po prostu próbuj znaleźć te kolory z minimalną odległością...

    Używając sprajtów: zacznij używać playera #4 najpierw... potem P#3...,P#2... i P#1.

    Podczas gdy player#1 ma najwyższy priorytet i ty potrzebujesz przykryć trochę więcej kolorów w tamtych okolicach, możesz prosto kontynuować przez nakładanie playerów. Aby użyć P#4 nad P#1 jest za dużym mieszaniem....


    Heaven

    Szybka konwersja obrazków BMP z wyższych kompów:

    1. zamień obrazek na skale szarości (greyscale)

    2. zredukuj głębie kolorów do 4 lub 5 kolorów (czasem z opcją ditheringu!)

    3. zeskaluj obrazek do 160x200 pikseli.


    TeBe

    Jeśli w danej linii chcemy ustawić sprita o nowej pozycji X, nowej szerokości i nowym kolorze może zabraknąć nam dozwolonej liczby zmian na linię. Aby temu zapobiec możemy dokonać zmiany we wcześniejszych liniach, usuwając tylko zawartość pixli sprita. Sprite zostanie postawiony ale nie będzie go widać bo będzie miał wszystkie pixle opisujące kształt skasowane.
    Jest to trick pozwalający oszukać G2F, bo G2F zapisuje informacje tylko raz, zawsze pamięta jakie były wcześniej i nigdy się nie powtarza.


    Skróty klawiszowe

    ALT+A        - Change Rasters
    ALT+C        - Edit Colors
    ALT+H        - Edit Charset
    ALT+M        - Edit Maps
    ALT+P        - Edit PMG
    ALT+R        - Edit Rasters
    ALT+Z        - Zoom
    
    Shift+C      - Change Colors
    Shift+Del    - Clear Screen
    Shift+N      - Negativ
    Shift+M      - Move XY
    Shift+P      - Change PMG
    Shift+I      - Info
    
    Shift+Ctrl+O - Optymizing
    Shift+Ctrl+R - Original
    Shift+Ctrl+S - Standard
    
    Ctrl+B       - Save BMP
    Ctrl+C       - Check
    Ctrl+F       - Chars fill
    Ctrl+G       - Save G2F
    Ctrl+H       - Show chars
    Ctrl+J       - Save JGP
    Ctrl+L       - Save Colors
    Ctrl+M       - Save MIC
    Ctrl+N       - New
    Ctrl+O       - Open...
    Ctrl+P       - Save PMG
    Ctrl+S       - Save As...
    Ctrl+X       - Save XEX
    
    Ctrl+R       - Resize BMP
    
    Ctrl+Z       - Undo changes
    Shift+Ctrl+Z - Redo changes
    
    Ctrl+Alt+X   - Exit
    
    ZOOM:
    
    Ctrl+G       - Show grid
    Q            - previous color
    W            - next color
    O            - OR sprites pixels
    A            - AND sprites pixels
    X            - XOR sprites pixels
    1..4         - enable/disable sprites
    5..8         - enable/disable missiles
    cursors      - grid size
    
    EDIT CHARSET:
    
    SPACE        - invers char
    0            - invers char
    INS (NumPad) - invers char
    ENTER        - get char/s
    +            - put char/s
    cursors      - yellow cursor size
    


  • Zmiany jakie zaszły w programie

    v3.8.6.0
    - poprawione wyświetlanie kolorów HiRes dla obrazków w stylu 'Our5oft-3GfxMode_Atari_TeBe&Dracon.g2f'
    - przywrócono możliwość uruchomienia dowolnej liczby aplikacji G2F

    v3.8.5.8 - 3.8.5.9
    - nowa uniwersalna wersja wygaszania/zapalania kolorów obrazka (plik *.FAD) którą można stosować z różnymi obrazkami
    - dla opcji BMP2PMG został umożliwiony zapis plików *.DAT i *.ASM z danymi PMG
    - zmieniony sposób ustawiania zaznaczenia dla BMP2PMG (kółko myszki lub metoda drag and drop w oknie BMP2PMG lub klikając na ekranie głównym)
    - dodany nowy sposób kompresji znaków JGP+ od 2..8 zestawów znakowych
    - pod ZOOM-em dodana możliwość włączenia/wyłączenia inwersu znaku klawiszem SPACJI (5-y kolor)
    - pod ZOOM-em dodana możliwość ustawienia pisaka na kolor który wskazuje kursor myszki poprzez klawisz ENTER
    - poprawiony odczyt pliku *.PMG, błąd powodował że wczytane dane grafiki PMG były zawsze przesunięta o pixel w lewo
    - w EDIT RASTERS akceptowane są teraz linie z mniejszą liczbą cykli niż wymaga tego limit, pod warunkiem że CycleLimit-Cycle>1
    - uproszczona i znacznie poprawiona edycja rastra EDIT RASTERS (AUTOMATIC, MANUAL), zlikwidowany przycisk APPLY, zmiany programu rastra potwierdzane są tylko przyciskiem CHANGE
    - naprawione wyświetlanie pierwszej linii w obrazkach wykorzystujących rastry w trybie znakowym
    - naprawione wyświetlanie 5-go gracza w HiRes (np. DalmatianDog, Jaga itp.)
    - zmienione okno wyboru folderu w 'Edit Maps -> New'

    v3.8.5.7
    - usunięte błędy związane z wyświetlaniem różnych trybów graficznych w tej samej linii obrazu
    - dodana reakcja na zmianę rejestru GTICTL ($D01B) w linii (teraz G2F przeniesie ostatnią wartość GTICTL do następnej linii)
    - poprawiony zapis plików MIC, zapisywane są tylko wiersze z ustawionym trybem graficznym, puste wiersze (PIXEL=0) są pomijane
    - poprawiony i skrócony kod realizujący wygaszanie i zapalanie kolorów obrazka

    v3.8.5.6
    - aktualniony assembler Mads do wersji 1.8.0
    - optymalizacja plików ASM, jeśli obrazek nie używa PMG, dane PMG nie są zapisywane
    - zwiększony stopień kompresji plików G2F z 'zcDefault' na 'zcMax'

    v3.8.5.4 - 3.8.5.5
    - dodana możliwość uruchomienia G2F z parametrem podanym w linii komend, np. g2f file.g2f
    - nowy program G2FEXT.EXE (G2F Extractor) umożliwiający dekompresję pliku G2F i zapis wybranych jego fragmentów (SCR, FNT, MIC, COL)
    - dodana nowa zakładka w SPECIAL .. LOAD PMG umożliwiająca określenie które obiekty PMG mają zostać załadowane
    - poprawione wyświetlanie 4 kolorowych duchów, poprzednio nie była poprawnie interpretowana kombinacja duch/pocisk tylko kombinacje duch/duch i pocisk/pocisk

    v3.8.5.3
    - poprawiony przesuw znaków w inwersie (MOVE XY)
    - dodana nowa zakładka EDIT PALETTE która umożliwia edycje kolorów palety obrazka

    v3.8.5.2
    - w programie scrola pionowego dodany został kod realizujący czyszczenie obszaru pamięci PMG
    - inne drobne zmiany w generowanym kodzie ASM
    - pod ZOOM-em dodana możliwość zmiany aktualnego koloru pisaka przy pomocy kółka myszki
    - dodany nowy parametr SKIP w EDIT COLORS

    v3.8.4.8
    - usunięty poważny błąd dla scrolowanych grafik VSC, który powodował zmiane ustawień PMG
    - poprawiony odczyt i zapis plików VSC

    v3.8.4.7
    - poprawiony błąd z wersji 3.8.4.6 który powodował że zmiany kolorów z linii nie były przenoszone do nowych linii podczas zmian rastra
    - usprawnione pokazywanie zmian kolorów w rastrze
    - dodane przykłady ze scrolem pionowym

    v3.8.4.6
    - dodana mozliwosc zmiany koloru siatki pod zoom-em na kolor czerwony
    - przy zapisie MIC-a zapisywane są teraz informacje o kolorach
    - poprawione obrazki Irgendwera oraz edycja inversu znaków w HiRes
    - usprawnione UNDO dla Edit Colors i Edit PMG (oddaje lock color, player4 itd)
    - dodana możliwość załadowania dowolnej palety kolorów oraz jej modyfikacja (View -> Palette...)

    v3.8.4.5
    - dodana aktualizacja palety kolorów po użyciu opcji PASTE w Move XY
    - poprawione działanie Move XY (teraz już nie dojdzie do zamazania pamięci programu)
    - poprawione działanie UNDO w Move XY
    - usprawniona i ułatwiona edycja pozycji poziomej X w EDIT PMG
    - opcje CLEAR, FILL w EDIT PMG zastąpione przez klawisz CHANGE (zmiana opcji po naciśnięciu prawego przycisku myszki)
    - dodana obsługa piorytetu 0 w EDIT PMG dla Pixel = 2
    - dodana obsługa Multicolor PMG w EDIT PMG
    - dodana opcja BMP2PMG w zakładce SCREEN umożliwiająca zamiane grafiki bitmapowej na grafike PMG
    - dodana możliwość przełączania koloru BAK-COL0..15 pod ZOOM-em za pomoca klawisza TAB
    - poprawiono zasygnalizowane błędy m.in. znikające w MOVE XY ograniczenia obszaru oraz błąd który występował gdy pod ZOOM-em wywołaliśmy EDIT CHARSET (ALT+H)
    - dodana możliwość zmiany palety kolorów używanej przez G2F (VIEW -> PALETTE..), aktualnie bez możliwości zmiany parametrów takiej palety
    - poprawiona konwersja na znaki dla grafik ze zmianami trybów graficznych co wiersz, oraz poprawione generowanie plików ASM dla takich grafik (przykłady w katalogu ..G2F\IRGENDWER)
    - poprawiona informacja o zakresie wystapienia rastra w pixlach w EDIT RASTERS
    - dodana wizualizacja zmian kolorów w rastrze, które przechodzą do następnych linii obrazu, np. ..g2f\tebe\FinalBlow_C64_TeBe.g2f
    - dodana możliwość odczytu plików z zestawami znaków C64 (*.64C), http://kofler.dot.at/c64/
    - naprawiony odczyt plików G2F w których występuje zmiana trybów graficznych co wiersz
    - dodana obsługa grafik scrolowanych w pionie VERTICAL SCROLL (pliki VSC), istnieje możliwość wyeksportowania ich do XEX przez EDIT MAPS (Export -> as vscroll)

    v3.8.4.4
    - usprawniona opcja EDIT PMG (uwzględniane są zmiany trybu graficznego co wiersz)
    - przepisane zostały procedury obsługi wypełniania ograniczonego obszaru kolorem i wzorem w EDIT BITMAP, teraz nie występuje już przepełnienie stosu
    - uaktualniona instrukcja

    v3.8.4.3
    - w trybie JGP nie był uwzględniany invers znaków, teraz jest już uwzględniany
    - dodana możliwość kompresji pliku G2F (Special -> Pack G2F file), wykorzystana została biblioteka ZLIB http://www.base2ti.com/zlib.htm
    - dodana kompresja plików w EDIT MAPS
    - usprawniona opcja EDIT COLORS (uwzględniane są zmiany trybu graficznego co wiersz)
    - poprawiona obsługa kursorów (NUMPAD i zwykłe) dla EDIT CHARSET (kursory z NUMPAD-a przesuwają zaznaczenie, zwykłe kursory modyfikują rozmiar zaznaczenia)

    v3.8.4.2
    - opcja EDIT SCREEN zastąpiona została przez EDIT CHARSET
    - dodana możliwość automatycznej naprawy linii w których występuje większa liczba zmian, opcja CHECK -> 'Optymize PMG' lub 'Optymize BMP'

    v3.8.4.1
    - usunięty błąd dotyczący zapisu plików G2F - po UNDO aktualizuje kolory w oknie EDIT PMG, EDIT COLORS
    - poprawiony odczyt BMP w odcieniach szarości (Pixel=4x1)
    - automatyczne porządkowanie palety kolorów Atari dla wczytywanych plików BMP
    - pod ZOOM-em prawym klawiszem myszki możemy włączyć zaznaczanie wielkości kursora którym rysujemy
    - pod ZOOM-em i z włączonym oknem EDIT PMG naciśnięcie klawisza 'G' spowoduje odczytanie parametrów ducha lub pocisku w aktualnej linii
    - pod ZOOM-em i z włączonym oknem EDIT PMG prawy klawisz myszki włączy zaznaczanie wielkości kursora = szerokości aktualnego obiektu PMG
    - poprawiony GRID pod ZOOM-em
    - w CHG COLORS możliwe jest wskazania innego koloru ale bez wyświetlania palety kolorów
    - dodana możliwość zmiany trybu graficznego w linii dla PIXEL=2 gdy GTIA=$40 -> PIXEL=4
    - naprawione tworzenie inversu w HiRes
    - poprawione rysowanie w inversie, poprawiony odczyt plików INV
    - naprawiony zapis plików XEX dla GED-- gdy pierwsze linie są wyłączone
    - dodane resetowanie ustawień CHANGE PMG tak jak ma to miejsce dla CHANGE COLORS
    - dodana możliwość resetowania obiektu PMG za pomocą wartości $FF (FILL)

    v3.8.3.9
    - usprawniona edycja zestawu znaków, edycja ekranu (ALT+S)
    - dodana nowa kompresja znaków JGP
    - plik 'default.set' zastąpiony przez 'g2f.ini'
    - dodane animacje zaznaczeń (Special..Flashing selections)
    - maksymalna optymalizacja programu dla przerwania DLI
    - dla programu DLI dodane płynne zapalanie i wygaszanie kolorów (pod warunkiem, że w pierwszych 8 liniach ekranu nie wystąpiły żadne zmiany)

    v3.8.3.7
    - przesuwanie obrazu w pionie (Move XY) uwzględnia obecnie ograniczenie poprzez Line:Range
    - dodane dwie nowe możliwości wklejania fragmentów grafiki w MoveXY: Flip, Mirror (przełączanie realizowane jest przez kliknięcie prawym klawiszem myszki na przycisku PASTE)
    - poprawione błędy, które powstały po poprawkach w wersji 3.8.3.6

    v3.8.3.6
    - poprawione zapisywanie ostatnio używanej ścieżki, oraz dodana informacja o ostatnio używanych ustawieniach ZOOM-a
    - poprawione kasowanie plików po zakończonej asemblacji (tych które w nazwie miały spacje)
    - poprawione zaznaczanie obszaru dla funkcji Select (Preview=BMP), oraz ponowne jej użycie po naciśnięciu ESC
    - wypełnianie obszarów za pomocą wcześniej zaznaczonego patternu (Select)
    - poprawione ładowanie plików JGP, oraz poprawione operacje na ekranie ze znakami w kompresji ORIGINAL

    v3.8.3.5
    - dodana możliwość włączenia siatki (Grid) pod Zoomem (Ctrl+G), możliwa jest zmiana koloru siatki, rozmiaru za pomoca klawiszy kursora, oraz ustawienie jej przeźroczystości
    - usunięty błąd utrudniający edycję znaków (ALT+S -> CHARSET)
    - dodana nowa zakładka w głównym menu 'Special'
    - dodana możliwość nie używania deklaracji stałych w generowanych plikach ASM (Special -> ASM const labels [check/uncheck]), domyślnie opcja ta jest włączona
    - dodana optymalizacja zapisu danych obiektów PMG, tzn. jeśli duszki nie są używane wówczas dane na ich temat są pomijane
    - w zakładce 'Special' dodana nowa opcja 'Memory location', która pozwala na określenie przez użytkownika adresów umiejscowienia w pamięci RAM zestawów znaków, pamięci obrazu, programu ANTIC-a itp.
    - dodany nowy przełącznik 'Lock color' w okienku 'Edit Colors', umożliwia on zablokowanie detekcji zmian kolorów co linię, przydaje się w celu wymuszenia zmiany kolorów przed zmianami rastra
    - w Preview=GFX dodana została możliwość opuszczenia opcji 'SELECT' za pomocą klawisza ESCape, poprzednio trzeba było wybrać inny tryb rysowania

    v3.8.3.0
    - usunięto zauważone błędy, występujące w wersjach poprzednich

    v3.8.2.8
    - w 'Edit Screen' dodana możliwość zmiany rozmiaru żółtego kursora (strzałki kursora), a więc i zmiana liczby znaków kopiowanych, wklejanych, inwertowanych
    - dodana możliwość wymuszenia zmiany zestawu znaków od nowego wiersza
    - dodana możliwość ustawienia wiersza obrazu jako 8-u pustych linii (PIXEL = 0)
    - zmieniony został sposób zaznaczania obszarów dla Edit Sprite, Colors, Moxe XY
    - naprawione wyświetlanie obrazu dla PIXEL=2 i GTIA=$40, czyli nie włączy się tryb 16 odcieniowy jak miało to miejsce w poprzednich wersjach G2F

    v3.8.2.6
    - w 'Edit Colors' dodana możliwość zmiany tylko koloru (C-olor) lub jasności (S-aturation)
    - w 'Edit Colors' dodana nowa wartość 'ADD' umożliwiająca płynną zmianę koloru
    - usunięte zauważone błędy m.in. problem z pikslowaniem spritów pod Zoomem

    v3.8.2.4
    - dodana możliwość określenia maksymalnej liczby znaków przypadających na zestaw znaków (domyślnie 128)
    - możliwość stosowania długich nazw dla plików FNT, SCR, ALL, RAW, ASM, ASQ, dzięki nowej wersji XASM-a 2.6.0
    - "Chars fill" wyświetla teraz informacje dla 30 zestawów znaków, poprzednio tylko dla 15
    - w plikach *.ASM, *.ASQ dodany został zapis etykiet przed rozkazami modyfikującymi rejestr koloru
    - dodany zapis pliku *.FAD, w którym zawarte są tablice i procedury do płynnego "zapalania" kolorów (przykłady w katalogu ..\examples\)

    v3.8.2.3
    - w generowanych plikach ASM dodany fragment kodu wyłączający BASIC
    - poprawione UNDO, REDO dla "Move XY" oraz UNDO, REDO dla Copy, Paste w "Move XY"
    - poprawione wybieranie koloru z palety dla "Edit PMG"

    v3.8.2.2
    - naprawione rysowanie znakami w "Edit Screen"
    - naprawione działanie Undo, Redo podczas rysowania znakami w "Edit Screen"

    v3.8.2.1
    - w "Edit Rasters" dodana możliwość zamiany miejscami pól edytowanej linii
    - automatyczne odświeżanie obrazu dla "Fill Colors" w oknie "Edit PMG"
    - możliwość używanie klawiszy strzałek podczas edycji ekranu "Edit Screen", poprzednio tylko klawisze strzałek z klawiatury numerycznej