Sprite designer
Pisanje programa (naravno, pod ovim pretežno podrazumevamo igre) izuzetno je
težak i mukotrpan posao. Potrebno je smisliti dobar scenario, napraviti
program, a takođe i definisati sve sprajtove. Ovaj poslednji problem lako ćemo
rešiti uz pomoć programa, čiji listing objavljujemo.
Piše Predrag Bećirić
Program je dat u obliku source fajla za GENS, a unosi se na standardni način.
Pošto se program Sprite Designer asemblira od adrese 16384, potrebno je
primeniti mali trik. Prvo se vratimo u BASIC, zatim obrišemo ekran, a nakon
toga, ponovo startujemo GENS. Tek sada ćemo moći da pravilno asembriramo
program. Finalni program Sprite Designer snima se opcijom O"Spr Des odmah nakon
asembriranja, dok se ne obriše ekran.
Izgled
Nakon startovanja programa,na ekranu će vam se pojaviti nekoliko prozora.Prvi
prozor zauzima gornju trećinu ekrana, i predstavlja sam program. Naravno
atributi su tako određeni da INK i PAPER imaju iste vrednosti, tj. nulu, tako
da se sadržaj prozora ne vidi i tako ne šteti estetskom izgledu. Sledeći prozor
zauzima levu polovinu srednje trećine, tj. 8 * 16 karaktera. U okviru ovog
prozora vršimo razne manipulacije nad sprajtovima. Sprajt se u ovom prozoru
vidi u prirodnoj veličini, kao u igri. Treći prozor zauzima desnu polovinu
donjih dveju trećina ekrana, odnosno, 16 * 16 karaktera. Ovaj prozor je
rezervisan za opciju LUPA, koja će kasnije biti objašnjena. U donjoj trećini
ekrana još se nalazi i prozor, koji služi za brojčano prikazivanje parametara.
Parametri su: način iscrtavanja sprajtova, X kordinata, Y kordinate, veličina
memorije potrebna za smeštanje podataka o sprajtu i memorijski pokazivač.
Komande
Što se tiče rada s programom,on je izuzetno jednostavan,ali da bismo ga mogli
detaljno opisati, prvo vam dajemo opis svih komandi koje SPRITE DESIGNER
sadrži.
1 - Prebacuje se u mod pri kome se sprajtovi iscrtavaju red po red. Ovaj mod
se obično koristi za definisanje novog seta karaktera. Tako, ako želimo
da pronađemo gde se nalazi karakter set nekog programa, koristićemo ovaj mod.
2 - Prebacuje se u mod pri kome se sprajtovi iscrtavaju liniju po liniju.Ovaj
mod je u igrama zastupljeniji jer se na ovaj način dobija veća brzina pri
iscrtavanju sprajtova.
Sledećih nekoliko komandi omogućavaju menjanje veličine samog sprajta. Naime,
svi sprajtovi u igrama nisu iste veličine, već se to razlikuje od igre do igre.
Zbog toga prvo učitajte igru i od oka ocenite kolika je veličina sprajta. Važno
je da zapamtite da se X kordinata meri u karakterima, a Y u linijama. X
kordinata predstavlja širinu sprajta, a Y kordinata njegovu dubinu.
6 - Smanjuje veličinu sprajta po X kordinati.
7 - Povećava veličinu sprajta po X kordinati. Vrednost X kordinate se kreće u
granicama od 1 do 16.
8 - Povećava veličinu sprajta po Y kordinati.
9 - Smanjuje veličinu sprajta po Y kordinati. Vrednost Y kordinate se kreće u
granicama od 1 do 64.
O - Briše zadržaj video memorije, tj. prozora definisanog za rad sa
sprajtovima.
Q - Smanjuje pokazivač memorije za 256.Ovako je ostvareno ubrzano kretanje po
memoriji.
W - Smanjuje pokazivač memorije za 1. Komanda omogućava preciznije pomeranje.
E - Povećava pokazivač memorije za 256.
R - Povećava pokazivač memorije za 1.
T - Snima sprajt na način na koji je definisan. Početna adresa je memorijski
pokazivač, a dužinu predstavlja memorija potrebna za njegovo definisanje.
Y - Ovo je jedna od moćnijih komandi ovog programa.Po startovanju ove komande
potrebno je učitati skrin, a sprajt, koji se nalazi na tom skrinu biće
automatski prebačen u memoriju, od adrese memorijskog pokazivača. Naravno, pre
toga je potrebno i podesiti mod po kome će se sprajt zapamtiti, kao i njegovu
veličinu, tj. njegove X i Y koordinate, odnosno memoriju potrebnu za njegovo
definisanje.
S - Ova opcija omogućava da se snimi trenutno stanje srednje trećine, tj.
pronađeni sprajt. Snimanje se obavlja od adrese 18432 u dužini od 2048 bajtova.
Ovako ćemo ovaj sprajt moći da učitamo u neki profesionalni program za crtanje
i da ga, koristeći sve po godnosti koje nam taj program pruža, merijamo.
Najlakše bi bilo koristiti Art Studio, zbog jednostavnosti upotrebe, a u isto
vreme i zbog velikog broja opcija. Izmenjeni sprajt kasnije ćemo učitati
koristeći opciju Y, na kon čega će biti automatski prebačen u memoriju.
H - Nakon startovanja ove opcije,u prozoru koji je predviđen za LUPU,pojaviće
se uveličan sprajt. Uveličanje će biti dvostruko, ali i to je sasvim dovoljno
za rad. U gornjem levom uglu prozora pojaviće vam se kurzor, koji je
predstavljen naizmeničnim paljenjem i gašenjem dijagonalnih tačaka kurzora. U
okviru ove opcije na raspolaganju su vam sledeće komande, koje služe za promenu
izgleda samog sprajta:
6 - Pomera kurzor ulevo za dve tačke, tj. za jedno polje.
7 - Pomera kurzor udesno za dve tačke.
8 - Pomera kurzor nadole za dve tačke.
9 - Pomera kurzor nagore za dve tačke.
0 - Pali,odnosno gasi tačku na poziciji kurzora.Ako je tačka bila osvetljena,
sada će biti ugašena i obrnuto, ako je bila ugašena, sada će biti osvetljena.
Kada završimo sa menjanjem sprajta, pritiskom na A vršimo povratak u glavnu
petlju programa. Sve promene koje smo vršili na sprajtu biće zapamćene.
Ukoliko ne želimo da se promene memorišu, povratak ćemo izvršiti pritiskom ha
taster F.
Ovo bi bile sve komande koje se koriste u okviru opcije LUPA.Ali da nastavimo
sa opisom komandi u glavnoj petlji programa.
K - Snima gotov program, sa svim izmenama na kasetu.
L - Učitava program, koji želimo da menjamo, od adrese 23296.Na ovoj lokaciji
će biti učitan fleg, a zatim i ceo program. Dužina programa će automatski biti
memorisana.
Z - Smanjuje memorijski pokazivač za dužinu sprajta.Ovako možemo da ostvarimo
izuzetno brzo kretanje kroz memoriju.
X - Povećava memorijski pokazivač za dužinu sp'rajta.
B - Ukoliko nakon ovog tastera pritisnete N doći će do resetovanja kompjutera
(PRINTUSR 0). Ukoliko ste pogrešili, tj. slučajno pritisnuli B, povratak u
program se vrši pritiskom na SPACE. Budite oprezni sa ovom komandom.
Ovo bi bile sve komande koje ovaj program poseduje, pa možemo da pređemo i na
praktičan rad sa programom.
Kako raditi?
Resetovaćemo kompjuter, a zatim učitati program Sprite Designer. Zatim ćemo
opcijom L učitati neku igru, na primer COSMIC VVARTOAD i početi sa njenom
analizom, tj. tražnjem definicije sprajtova po memoriji. Prebacićemo se u mod
2. Po učitavanju igre memorijski pokazivač će biti postavljen na adresu 23296.
Na toj adresi će biti učitan fleg bajt, tako da ćemo zbog toga povećati
memorijski pokazivač za 1. To postižemo komandom E. Prvo ćemo komandama 6, 7, 8
i 9 odrediti veličinu sprajta. Neka X kordinata iznosi 4, a za Y uzimite
vrednost 64. Memorija potrebna za smeštanje sprajta je 4 bajta * 64 linije, a
to je 256 bajtova. Komandom X povećavaćemo memorijski pokazivač za broj bajtova
koje sprajt zauzima, što u našem slučaju iznosi 256. Taj postupak ćemo
ponavljati sve dok ne počnu da se na ekranu pojavljuju definicije likova koji
se pojavljuju u igri. Prvo će vam se na adresi 50193 pojaviti maska prvog
sprajta. Na adresi 50321 pojaviće nam se definicija prvog sprajta. Sada ćemo
komandama Q, W, E i R „nacentrirati" sprajt na početak prozora. Komandom H
uveličaćemo sprajt, a zatim početi sa njegovom izmeriom. U desnom prozoru
pojaviće se uveličan sprajt, a u njegovom gornjem levom uglu nalaziće se
kurzor. Kurzor se pomera tasterima 6,7, 8 i 9. Pritiskom na 0 tačka koja se
nalazi na poziciji kurzora će biti invertovana, tj. upaljena ukoliko je bila
ugašena i obrnuto. Po završetku izmene sprajta u glavnu petlju programa
vratićemo se komandom A ukoliko želimo da se izmene memorišu, ili komandom F
ako ne želimo. Ovim postupkom možemo promeniti izgled sprajta, kao i tzv.
maske. Promenu izgleda sprajta ne moramo da vršimo direktno u programu Sprite
Designer. Opcijom S možemo snimiti sadržaj ekrana na kasetu, a zatim ga učitati
u neki program za crtanje. Sada će nam rad na izmeni sprajta biti mnogo lakši,
jer nam je na raspolaganju mnogo više komandi. Kasnije, izmenjenu sliku možemo
ponovo da učitamo u program SD. Naravno, parametri moraju da budu isti kao i
pri snimanju sprajta.
Uz pomoć ovog programa moguće je tražiti i definicije karakter seta. Da bi to
bilo moguće, mod moramo postaviti na 1, X kordinatu na 8, a Y na 16. U
programu COSMIC WARTOAD definicija karakter seta je na adresi 26657. Karakter
set možemo snimiti komandom T.
Po završetku rada, igru možemo snimiti u novoj verziji komandom K.
I tu je KRAJ.
Sprite designer 2SPRITE EDITOR
(modified by Mladen Popović)
Added :
OPTIONS: 3 - change to mod 3 (for easiest searching and showing sprites with
mask, if you must change booth)
C - decreasing memory for 32 bytes
V - increasing memory for 32 bytes
H - magnifying sprite to 4x4 and transition to "EDIT" mode
EDIT mode: G - grid on/off
0 - toggle pixel O - reset pixel P - set pixel
H,J,K,L - scrolling edit window
ENTER - restore this window at start position (upper left corner)