Opisi: -------- (Svet Igara, #2, December 1987, Predrag Bećirić) -------------------------------------------------- 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. (Modificirana verzija, Mladen Popović) ---------------------------------------- Sprite designer 2 SPRITE 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)