Opisi:
Svet Kompjutera, #5, Maj 1989, Spectrum Intro Servis, Ranko Lazić
Ludorije u borderu
U nekoliko prethodnih brojeva prosto smo vas zatrpali raznim rutinama vezanim
za border na računaru YX Spectrum. Kao što vam je poznato, na ovom računaru je,
legalno, moguće menjati samo boju bordera. Koristeći naše rutine omogućili smo
vam da na borderu dobijete prilično zanimljive efekte, a takođe i da skrolujete
tekst neke vaše propagandne poruke.
Za ovaj broj smo vam, za razliku od prošlog, spremili dva intro mejkera.
Jump Intro Maker
Ovaj program poslao nam je Ranko Lazić iz Beograda. Dajemo mu reč:
Jump Intro Maker se dosta razlikuje od sličnih programa koji su do sada
objavljivani. Prvo što se uočava jeste to da je deo programa napisan u bejziku.
Taj deo, naravno, ne predstavlja sam intro, već je bejziku povereno da radi
ostatak posla, a to je unošenje teksta koji se skroluje, snimanje introa i
gledanje introa. Što se tiče koda samog introa, njega bejzik po stanovanju
učitava, i zatim nastavlja sa radom.
Kako napraviti gotov intro program koristeći J.I.M.?
Kada se program učita, boje ekrana će se promeniti u belo na crnoj pozadini.
Kada se nagledate demonstracionog prikaza pritisnite već tradicionalno (SPACE)
i na ekranu će se pojaviti glavni meni:
1. ENTER TEXT
2. SAVE INTRO
3. VIEW INTRO
Prva opcija nudi vam da unesete tekst koji će se šetati po ekranu. Za razliku
Od prethodnih Intro Makera, ovde nije potrebno uneti "®" niti bilo kakav drugi
znak kao indikator kraja teksta, već jednostavno pritisnite (ENTER) po
završetku kucanja. Sledeće pitanje na koje treba odgovoriti je da li hoćete Ink
ili Paper skrol (skrol pozadine ili slova). Posle pritiska na "p" ili "i",
vratićete se u glavni meni.
Druga opcija služi za snimanje introa. Svaki put kada želite da ga ponovo
pogledate, učitajte ga sa LOAD""CODE i startujte sa RANDOMIZE USR 50000:
RANDOMIZE USR 50100. Treba obratiti pažnju na to da program nije relokatibilan
(ako vam to smeta, lako ga možete modifikovati koristeći izdanje Hakerskog
bukvara koje se bavilo tom temom).
Treća opcija vam omogućava da svoj intro pogledate na licu mesta (ne morate
da resetujete kompjuter i ponovo učitavate). Za povratak u glavni meni
pritisnite (SPACE).
Kakve efekte u sebi sadrži novi Intro? Jump Intro ima dosta sličnosti sa Big
Intro-om. U pitanju su, dakle, slova veličine 8x8 karaktera (jedan piksel
odgovara jednom karakteru) koja se pri dnu ekrana skroluju nalevo, a sve se to
odigrava u okolini začinjenoj raznobojnim atributima. Ali, zašto bi onda naziv
novog introa počinjao sa Jump? Zato što za vreme skrolovanja ceo pojas u kome
se skrolovanje odigrava (pojas je visine jedne trećine, tj. 64 piksela) skakuće
gore-dole. To skakutanje je veoma prirodno: dok "padaju", slova se sve brže
kreću, a posle udarca u podlogu (za vreme kretanja nagore) brzina penjanja se
polako smanjuje, do potpunog zaustavljanja. Posle toga ponovo počinje padanje,
pa opet dizanje, itd. Zbog toga Paper skrol mnogo bolje izgleda nego Ink skrol,
jer se jasno uočavaju ivice pojasa koji skakuće.
Kako je napravljen Jump Intro?
Analizirajući priloženi bejzik, vidi se da se program koji čini intro sastoji
iz dve rutine, koje počinju od adresa 50000 i 50100. Prva rutina (ORG 50000)
obavlja pripremni deo posla. Njena funkcija je da podesi boju bordera i
atributa za glavni deo introa. Atributi donjeg dela ekrana će biti raznobojni,
da bi efekat bio lepši. Posle podešavanja atributa, rutina pravi tablicu koja
počinje od adrese 60000 i sadrži adrese početnih bajtova horizontalnih linija
video memorije koje čine donje dve trećine ekrana (redni brojevi linija su 64
do 191). Tablica će, prema tome, biti dugačka 64*2*2 = 256 bajtova, što i nije
mnogo.
Rutina koja počinje od adrese 51000 je, u suštini, veoma slična Big introu.
Umesto da se skrol nalevo vrši u okviru jedne linije (HL i DE ukazuje na istu
horizontalnu liniju), DE ukazuje na drugu liniju, onu koja se nalazi iznad ili
ispod one na koju ukazuje HL (u zavisnosti od toga da li je u pitanju padanje
ili spuštanje). Vrednosti za HL i DE se dobijaju iz tablice, preko IX i IY
registara. Posle završenog pomaranja jedne linije IX i IY se smanjuju ili
povećavaju za dva, da bi ukazivali na adrese sledećih odgovarajućih linija u
tablici. Posle obavljenog skrola broj linija za koliko treba pomeriti ceo pojas
pri sledećem skrolu se povećava (smanjuje) za jedan, pa se na taj način menja
brzina skakutanja.
Ako se odlučite da program modifikujete u relokatibilan, trebalo bi da i
adresa tablice bude promenjiva. Za to će vam biti potrebna malo detaljnija
analiza programa (treba uočiti na kojim se sve mestima tablica koristi)."
Jump intro maker se unosi na identičan način kao i NoName intro maker. Znači,
prvo ćemo uneti program dat kao listing 1. Zatim ćemo pažljivo prekucati
podatke sa listinga 4. Na kraju ukucavanja otkucaćemo QUIT i snimiti program na
kasetu. Sada je preostalo još samo da unesemo BASIC program dat kao listing 5.
Njega je potrebno snimiti ispred upravo ukucanog mašinskog programa i na ovaj
način ste dobili još jedan intro program za Spectrum.
|