Originalna navodila --------------------- Uputstvo koje sledi je prvobitno postojalo u papirnom obliku. Minimalne izmene sam izvršio samo kod pravopisnih grešaka. Beograd, 30.01.2000.god.; kompjuterska obrada: Miodrag Stančević --------------------------------------------------------------------- Bejzik loader Bejzik loader se sastoji od jedne jedine linije koja ima sledeće funkcije: određuje da pozadina bude tamna a slova bela, postavlja velika slova (POKE 23658,8), spušta RAMTOP na 45567, i učitava ekranski editor (počev od 45568, dužina 19322). Glomazna naredba USR startuje mašinski program dužine 21 bajt u prvoj naredbi (LET A$="..."), koji ima zadatak da obriše loader iz memorije i startuje editor. Ukoliko vam se izabrana boja pozadine i slova ne dopadaju, možete izmeniti loader, s tim što nijedna naredba koju dodajete ne sme biti ispred LET A$="..." i što se ne sme menjati linijski broj. Ako se u računaru već nalazi neki bejzik program a potrebno je učitati i ekranski editor, postupite ovako: MERGE "": GO TO 1. Editor se može učitati i direktno - bez posredstva bejzik loadera: CLEAR 45567 LOAD "" CODE RANDOMIZE USR 45568 Beograd 1986. Izdaje BIGZ OOUR "Duga" Bulevar vojvode Mišića 17 11000 Beograd --------------------------------------------------------------------- Ekranski editor radi sa 51 znakom u redu,što se odmah primećuje čim se program učita. Na ekranu se prikazuje 20 linija, a sasvim na dnu ekrana se nalazi statusna linija, koja pokazuje sledeće: - u kom modu se nalazi kursor (L, C ili G), - poziciju na ekranu gde se nalazi kursor, - u kom modu se nalazi editor (NORMAL, LIST, LLIST, EDIT, AUTO, LINE, ili FIND), - da li su prve dve linije ekrana zamrznute (FREEZE:0 ili FREEZE:2), - dužinu bejzik programa, i - da li ste u normalnom - "overtype" ili "insert" modu (EDITOR ili INSERT) Na ekranu se nalaze i dva kursora - jedan glavni (koji treperi), i jedan za kopiranje (kada učitate program, u donjem desnom uglu ekrana). Organizacija tastature Sa ekranskim editorom naredbe se kucaju slovo po slovo. (Nijedan ekranski editor na svetu ne bi mogao da radi sa tokenizovanom tastaturom!). Svaki taster ima tri funkcije: - ispisuje slovo ili broj koji na njemu piše, - zajedno sa SYMBOL SHIFT-om ispisuje specijalan znak (odštampan crvenim slovima na tastaturi), i - zajedno sa CAPS SHIFT-om izvršava neku funkciju. Na primer, pomera kursor, briše liniju, uključuje INSERT mod, i slično. Vrlo je važno primetiti da se znaci <=, <> i >= kucaju iz dva dela, a ne pritiskom na jedan taster. Pošto, zahvaljujući tome, tasteri Q, W i E zajedno sa tasterom SYMBOL SHIFT ne ispisuju ništa, izabrani su da budu funkcijski tasteri. Pošto "spektrum plus" ima poboljšan raspored tastera, uvede- na je naredba KB+ (KEYBOARD+). Tasteri koji se odnose na "spektrum plus" (pod uslovom da je otkucana naredba KB+) biće označeni u zagradama. Na primer, ako piše: 1 --------------------------------------------------------------------- CAPS/C (O) CLS to znači da se na "spektrumu" funkcija CLEAR SCREEN poziva pritiskom na CAPS/C, a na "spektrumu plus" sa CAPS/O. Organizacija ekrana Svaki red na ekranu podeljen je na dva dela: - na polje A, koje se proteže od nulte do četvrte pozicije, i koje je rezervisano za broj bejzik linije, i - na polje B, namenjeno za tekst bejzik linije, koje se proteže od pete do pedesete pozicije. Ako je neka bejzik linija suviše dugačka da bi stala u jedan red na ekranu, nastaviće se u sledećem, i to od polja B. Svaka bejzik linija i svaka komanda koju kucate mora obavezno započinjati od polja A, i to od nulte pozicije - dakle, od samog početka reda. Pomeranje kursora levo/desno je "inteligentno", što će reći da on nikada neće preći iz polja B u polje A ako se tu ne nalazi ništa. (Probajte da šetate kursor kroz neku dužu bejzik liniju koja zauzima više od jednag reda!) Ako baš želite da pomerite kursor u polje A, pritisnite CAPS/4 (Z). Kada malo više počnete da radite sa ovim editorom, primetićete da se kursor skoro uvek kada je to potrebno već nalazi na početku polja A - spreman da primi novu bejzik liniju ili naredbu. Osnovni princip rada Osnovni princip rada sa ekranskim editorom je sledeći: - dovedi kursor na mesto greške, - ispravi grešku, i - pritisni ENTER Ovo poslednje je vrlo važno:najčešća greška koja se javlja pri radu sa okranskim editorom je da se ne pritisne ENTER. Nije dovoljno da greška bude ispravljena samo na ekranu; ispravljena bejzik linija treba da uđe i u memoriju. Pošto ste ispravili neku grešku, možete da birate šta ćete dalje: - da ispravite još jednu grešku; jednostavno odšetajte kursor na mesto te druge greške, ili 2 --------------------------------------------------------------------- - da unesete neku novu bejzik liniju ili komandu editoru; tada pritisnite još jednom ENTER (dakle, dva puta uzastopno) i na ekranu će se stvoriti jedan prazan red, a kursor će biti pomeren na njegov početak. Počnite da kucate ono što želite. Naredbe i funkcije Upravljanje ekranskim editorom vrši se pomoću naredbi, koje se kucaju slovo po slovo, i funkcija koje se izvršavaju pritiskom na CAPS i neki taster. Većinu naredbi ne morate da kucate u celini - dovoljno je samo otkucati skraćenicu. Recimo, umesto LIST dovoljno je samo navesti L. Neke naredbe imaju svoje parametre. Parametri daju preciznu informaciju kompjuteru kako da izvrši neku naredbu. Tako, na primer, naredba DELETE, koja briše neki blok bejzik programa, ima dva parametra: od koje i do koje bejzik linije da izvrši brisanje. Parametri se uvek razdvajaju zarezom. Između naredbe i prvog parametra može, ali i ne mora da stoji znak blanko (space). Važno je upamtiti da svaka naredba koju kucate mora da počinje baš od početka reda na ekranu, i da ostatak reda iza naredbe mora da bude prazan. (Za brisanje jednog reda i pomeranje kursora na njegov početak možete koristiti funkcije CAPS/Q(1) ili CAPS/1 (9). Neke naredbe imaju parametre koje ne morate da navedete ako to ne želite, ili ako nisu potrebni. U ovom uputstvu, takvi parametri su označeni uglastim zagradama (te zagrade se ne kucaju!). Naredbe su podeljene u šest osnovnih grupa: - glavne naredbe - naredbe za definisanje funkcijskih tastera - naredbe za podešavanje - screen storeing naredbe - za rad sa mikrodrajvom - razne druge naredbe Za početnike je naročito zgodna i korisna naredba HELP,koja se može koristiti u svakoj prilici. (Za detalje, pogledati HELP u sekciji "Razne naredbe".) 3 --------------------------------------------------------------------- Što se tiče funkcija, njih ima ukupno 47. Da ne biste morali sve da ih učite napamet, i da biste uvek bili u prilici da upotrebite baš onu koja vam treba, uradite sledeće: od tankog kartona izrežite masku za tastaturu i iznad svakog tastera napišite njegovu funkciju. Editor i spektrumov bejzik Dok ste u editoru, možete samo da pišete ili ispravljate bejzik programe. Dok ste u ekranskom editoru, ne možete da startujete bejzik program ili da kucate direktne bejzik naredbe (ne mešajte to sa naredbama editora!) kao što su SAVE, LOAD i slično. Ako želite to da postignete, morate prvo da izađete iz ekranskog editora, a to se vrši pritiskom na SYMBOL/ENTER (na dnu ekrana bi trebalo da se pojavi poruka "Sinclair BASIC ready" - znak da je sve u redu). Sada možete da snimite program,da učitate neki drugi program,ili da startujete svoj program pomoću naredbe RUN. Povratak u ekranski editor može se izvršiti u bilo kom trenutku pritiskom na SYMBOL/ENTER. U stvari, ako želite samo da startujete svoj bejzik program,postoji i jednostavniji način nego procedura SYMBOL/ENTER, RUN, ENTER. Jednostavno, dok ste u ekranskom editoru, otkucaj- te naredbu RUN i ona će vas automatski izvesti iz editora i startovati vaš bejzik program. Naravno, povratak u ekranski editor vrši se pritiskom na SYMB/ENTER u bilo kom trenutku. Početak i kraj bejzik linije U radu sa ekranskim editorom, važno je shvatiti kako on traži početak i kraj bejzik linije na ekranu. To može da spreči mnoge nesporazume na relaciji program-korisnik. Kada pritisnete ENTER, ekranski editor se vraća nazad kroz bejzik liniju i traži njen početak, a on mora uvek da se nalazi u polju A. Sada editor ide od početka prema kraju i traži: - da li postiji negde terminator; ako postoji, on označava da bejzik linija mora da bude primljena baš dotle; terminator se, po želji, postavlja na CAPS/T (videti funkciju CAPS/T, gde piše u kojim slučajevima postavljanje terminatora može da bude korisno). 4 --------------------------------------------------------------------- - da li negde postoji 20 blanko simbola. Ako ih pronađe, ekranski editor smatra da je to kraj bejzik linije. (Naravno. blanko simboli unutar navodnika ne mogu da se smatraju kao kraj linije). Ako nigde nema ni terminatora ni 20 blanko simbola,onda se za kraj, jednostavno, smatra ono mesto gde počinje nova bejzik linija, a ona, naravno, uvek počinje od polja A. Da sve ovo ne bi bilo previše komplikovano, uvedena je funkcija CAPS/ENTER. Ona će sa dve strellce tačno pokazati šta ekranski editor smatra početkom, a šta krajem bejzik linije u kojoj se trenutno nalazi kursor. Slobodno malo eksperimentišite sa tim!Kada jednom shvatite princip, videćete da je sve vrlo jednostavno, pa vam CAPS/ENTER više neće ni trebati. Osnovne naredbe LIST [n] [,m] ili L [n] [,m] Parametri: n - od koje linije početi listanje ako se ne navede vrednost=0 m - do koje linije listati program ako se ne navede vrednost=9999 Lista program od linije n do linije m. Ako se otkuca samo LIST ili LIST sa samo jednim parametrom, onda će na ekranu biti izlistano 16 redova i editor će stati u očekivanju da pritisnete ili bilo koji taster da se listanje nastavi, ili SPACE (BREAK na "spektrumu plus") da se listanje prekine. Pomoću naredbe DEFL moguće je odrediti koliko će redova biti izlistano odjedanput. Ako se otkuca LIST sa dva parametra,ili LIST,m onda neće doći ni do kakvih prekida u listingu - osim ako se ne pritisne SPACE (BREAK). LLIST [n] [,m] ili LL [n] [,m] Parametri: n - od koje linije početi listanje ako se ne navede vrednost=0 5 --------------------------------------------------------------------- m - do koje linije listati program ako se ne navede vrednost=9999 Lista na štampaču program od linije n do linije m. LLIST mod može se prekinuti pritiskom na CAPS/SPACE (BREAK). EDIT [n] [,m] ili E [n] [,m] Parametri: n - prva linija koja se edituje ako se ne naved vrednost=0 m - step (ne sme biti jednak nuli) Edituje jednu ili više linija programa. Ako se otkuca EDIT n, na ekranu će se pojaviti linija n programa, a kursor će biti postavljen na njen početak. Ako se otkuca EDIT n,m ulazi se u EDIT MODE. Na ekranu će se pojaviti linija n programa. Ako želite, možete izvršiti neke izmene, a kada pritisnete ENTER, pojaviće se linija n+m. Kada ponovo budete pritisnuli ENTER, pojaviće se linija n+m+m, i tako redom. Ako, na primer, otkucate EDIT,1 na ekranu će prodefilovati jedna po jedna sve linije u programu. To je izuzetno korisna naredba prilikom debagiranja. Iz EDIT moda se izlazi: - ako se odmah nakon što je bio pritisnut ENTER pritisne SPACE, ili - ako se u bilo kom trenutku pritisne CAPS/SPACE (BREAK). AUTO [n] [,m] ili A [n] [,m] Parametri: n - početni broj linije ako se ne navede vrednost = 10 m - step (ne sme biti jednak nuli) ako se ne navede vrednost=10 Automatski ispisuje brojeve linija prilikom kucanja programa. Iz AUTO moda se izlazi: - ako se dva puta uzastopno pritisne ENTER, ili - ako se u bilo kom trenutku pritisne CAPS/SPACE (BREAK). 6 --------------------------------------------------------------------- LINE ili LN LINE MODE. Posle svakog pritiska na ENTER, stvara dva prazna reda i postavlja kurosor na njihov početak. Kada otkucate neku bejzik liniju i pritisnete ENTER, morate još jednom da pritisnete ENTER da bi se stvorio jedan prazan red i kursor postavio na njegov početak. To što se ne stvara automatski jedan prazan red posle prvog pritiska na ENTER vrlo je korisno u fazi debagiranja, kada se kursor samo šeta od linije do linije na ekranu i ispravljaju greške. Ali, to uopšte nije praktično za vreme kucanja programa. Zato je uvedena naredba AUTO, ali ona ne može da pomogne ako linijski brojevi ne idu u pravilnim koracima. Naredba LINE služi upravo za takve situacije. Iz LINE moda se izlazi: - ako se dva puta uzastopno pritisne ENTER, - ako se odmah nakon što je bio pritisnut ENTER pritisne SPACE, ili - jednostavnim pritskom na CAPS/SPACE (BREAK). FIND n, m, a$ ,b$ ili F n, m, a$ ,b$ Parametri: n - od koje linije početi pretragu m - do koje linije vršiti pretragu a$ - skup alfanumeričkih znakova (string) koji se traži b$ - sa čime zameniti pronađeni string Prolazi kroz program i traži zadati skup znakova a$. Kada editor pronađe neku bejzik liniju koja sadrži skup znakova a$, na ekranu će se pojaviti ta linija. Tada možete da: - pritisnete ENTER da bi editor nastavio svoju pretragu dalje, - pritisnete CAPS/S i skup znakova a$ zamenite sa b$. Ako u FIND naredbi b$ nije bio naveden, onda će skup znakova a$ biti jednostavno izbrisan iz te linije. Po želji možete da - izvršite još neke izmene u bejzik liniji, a zatim pritisnite ENTER da bi novo stanje te linije otišlo u memoriju, i da bi se pretraga nastavila dalje, ili - izvršite neku izmenu, a zatim pritisnite ENTER da bi se novo stanje bejzik linije upisalo u memoriju i da bi se pretraga nastavila dalje. 7 --------------------------------------------------------------------- Iz FIND moda se izlazi jednostavnim pritiskom na CAPS/SPACE(BREAK). Kada editor pronađe neku bejzik liniju koja sadrži skup znakova a$, ako želite da a$ zamenite sa b$, odmah pritisnite CAPS/S. Ako to ne uradite odmah, već prvo pritisnete neki drugi taster (recimo za pomeranje kurzora), onda CAPS/S gubi svoju funkciju SUBSTITUTE i postaje SEARCH NEXT - editor ignoriše liniju u kojoj se trenutno nalazi kursor (bez obzira da li su u njoj vršene neke izmene ili ne) i nastavlja dalje pretragu. Dok editor nije u FIND modu, pritisak na CAPS/S nema nikakvu funkciju. Još nešto: skupove alfanumeričkih znakova a$ i b$ ne treba kucati u navodnicima, osim ako se u njima ne pojavljuje zarez, ili ako je poslednji simbol znak blanko. Kao demonstraciju svega, otkucajte ovo: F 1, 9999, PRINT, LPRINT i svaki put kad editor pronađe PRINT, pritisnite: CAPS/S ENTER i PRINT će svuda biti zamenjeno sa LPRINT. RUN [n] ili R [n] Parametar: n - od koje linije početi izvršavanje programa ako se ne nevede vrednost=0 Prouzrokuje izlazak iz editora i startuje bejzik program od linije n. Povratak u editor vrši se pritiskom na SYMBOL/ENTER. JOIN n,m ili J n,m Na liniju n dodaje liniju m - drugim rečima, spaja sve bejzik linije. Na ekranu će biti prikazano novo stanje linije n (nema potrebe da pritisnete ENTER, to se već nalazi u memoriji), a linija m će biti izbrisana iz programa. DELETE n,m ili DEL n,m Parametri: n - od koje se linije briše 8 --------------------------------------------------------------------- m - do koje se linije briše *m mora da bude veće ili jednako ad n. Briše bejzik program od linije n do linije m. Ova naredba je izuzetno destruktivna, pa je treba oprezno primenjivati. RENUM [n, m, o, p] ili N [n, m, o, p] Parametri: n - od koje linije početi prenumeraciju ako se ne navede vrednost=0 m - do koje linije vršiti prenumeraciju ako se ne navede vrednost=9999 o - novi broj za liniju n ako se ne navede vrednast=10 p - novi step ako se ne navede vrednost=10 Obavlja prenumeraciju celog ili samo jednog dela bejzik programa. Prilikom prenumeracije, u celom programu biće izme- njene sve GOTO, GOSUB, RUN, LIST LLIST, RESTORE i LINE (ako se radi o SAVE LINE) naredbe. Treba paziti na sledeće: naredba RENUM može da prenumeriše program, ali ne i da promeni redosled linija u programu. Samim tim, ako parametri o ili p nisu dobri, dobiće se izveštaj "BAD PARAMETER". Ako u svom programu imate naredbe poput GO TO A, onda treba oprezno primenjivati RENUMBER, inače nećete više moći da se snađete. Pnenumeracija izuzetno dugih programa može da potraje nekoliko sekundi. Za vreme same prenumeracije, na ekranu će se za trenutak pojaviti neke čudne linije - to je sasvim normalno, nema razloga za uzbunu. Definisanje funkcijskih tastera DEFK a$, b$ ili DK a$, b$ Parametri: a$ - funkcijski taster koji se definiše; može biti Q, W ili E; navodnici nisu potrebni. 9 --------------------------------------------------------------------- b$ - skup znakova koji se dadeljuju kao definicija funkcijskom tasteru; navodnici nisu potrebni. Postoje tri funkcijska tastera koji se pozivaju pritiskom na SYMBOL/Q, SYMBOL/W ili SYMBOL/E. Naredba DEFK - DEFI- NE KEY - služi upravo za definisanje funkcijskih tastera. Otkucajte na primer: DEFK Q, ZX SPECTRUM i svaki pritisak na SYMBOL/Q će ispisivati ZX SPECTRUM. Za parametar a$ navodnici nisu potrebni, a za parametar b$ potrebni su samo ako u sebi sadrži znak zarez, ili ako je poslednji simbol znak blanko. Dok radi neki funkcijski taster, pojaviće se jedna mala kockica u status liniji, ispred MODE, da to označi. Naravno, sve dok ne završi sa izvršavanjem funkcijskog tastera, editor neće registrovati nijedan pritisak na tastaturu. *DEFK a$, n ili DK a$, n Parametri: a$ - funkcijski taster koji se definiše; može biti Q, W ili E; navodnici nisu potrebni n - broj pritisaka na tastere koji se dodeljuju kao definicija Naredba *DEFK omogućava da se nekom funkcijskom tasteru naredi da pomera kursor, briše ekran, pritiske na ENTER i slično. Pretpostavimo da želimo da funkcijski taster W uradi sledeće: - dovede kursor na kraj bejzik linije, - otkuca: STOP, - i na kraju pritisne ENTER. Pošto ima sedam pritisaka na tastere,otkucajte DEFK W, 7 pritisnite ENTER, pažljivo kucajte sledeću sekvencu: CAPS/B (M) SYMBOL/Z S T O P ENTER dovedite kursor do neke bejzik linije na ekranu i pritisnite SYMBOL/W. Da demonstracija bude još efektnija, zadajte koman- du EDIT1,1 pritisnite ENTER, a zatim i nekoliko puta SYMBOL/W. 10 --------------------------------------------------------------------- Naredbe za podešavanja FREEZE ili FR Zamrzava dva gornja reda ekrana. To praktično znači da ih listanje programa i slične radnje neće obrisati. Dva gornja zamrznuta reda su izuzetno praktična da u njih upišete, recimo, neku matematičku formulu koju često koristite u programu - kasnije, kad god vam zatreba, možete da je iskopirate. Ta dva reda možete, takođe, da iskoristite kao neku vrstu elektronskog bloka za čuvanje poruka poput "Pazi na liniju 200" ili "DF SZ = 23659". UNFREEZE ili UNFR Odmrzava dva gornja reda ekrana. COLOR n,m ili CL n,m Parametri: n - boja pozadine (paper i border) m - boja slova (ink) Postavlja boju pozadine i slova. REPEAT n,m ili REP n,m Pararnetri: n - brzina za sve tastere osim CAPS/5 i CAPS/8 m - brzina samo za CAPS/5 i CAPS/8 Podešava brzinu automatskog ponavljanja ako je taster stalno pritisnut. Kada se učita editor, n ima vrednost 4, a m=2. Ako vam je to presporo, probajte REP 2,1. S druge strane, ako volite da čekate, otkucajte REP 6,4 ili REP 8,5. Zašto REPEAT naredba ima dva parametra? Jednostavno zato što ekran ima 51 poziciju horizontalno, a samo 20 vertikalno. U takvim uslovima bilo bi vrlo neprirodno da se kursor pomera istom brzinom i vertikalno i horizontalno (otkucajte REP 1,1 pa se i sami uverite). 11 --------------------------------------------------------------------- Funkcijski tasteri na računaru "spektrum" --------------------------------------------------------------------- FTIME [n] ili FT [n] Parametri: n - vreme u sekundama; ako se ne navede vrednost = 60. Definiše vreme posle kojeg kursori počinju da fleširaju, ako se ne pritisne nijedan taster. Kada se učita editor, FLASH TIME je postavljen na 60 - ako jedan minut ne pritisnete nijedan taster, kursori počinju da fleširaju. To je zato da ne biste morali pogledom da tražite kursore po ekranu, jer se pretpostavlja da ceo taj minut niste gledali u ekran (da ste gledali u ekran, sigurno biste i pritisli neki taster). BEEP ili BP Svaki pritisak na neki taster biva propraćen sa jednim "biiip". UNBEEP ili UNBP Poništava BEEP stanje (videti BEEP). KB+ Predefiniše tastaturu da odgovara "spektrumu plus". Da bi se označilo to stanje, u status liniji, sasvim desno, pojaviće se jedno malo +. (Više detalja, na kraju serije, u tekstu "Organizacija tastature") KB- Vraća tastaturu da odgovara običnom spektrumu (videti KB+). ZOP ZERO OPTION.Predefiniše karakter set tako da cifra nula i slovo "O" izgledaju malo drugačije. Autoru se čini da je tako poboljšana čitljivost, naročito linijskih brojeva. 14 --------------------------------------------------------------------- ZOFF Poništava ZERO OPTION. Ako ste iz radoznalosti otkucali ZOP, pa vam se rezultat nije svideo, onda je ovo prava naredba za vas. Naredbe za pamćenje slike STORE ili STO STORE SCREEN. Naredba STORE nalaže editoru da zapamti sliku koja se trenutno nalazi na ekranu. Od tog trenutka, naredba HELP više neće pokazivati "HELP SCREEN" (videti HELP), već tu vašu sliku, a moguće je koristiti i RECALL naredbu. Za šta ovo može da koristi? U mnogim situacijama vrlo je zgodno stalno imati pred očima listing nekog važnog program- skog segmenta ili potprograma. Tada je kombinacija STORE- /HELP zlata vredna. RECALL ili RCL RECALL SCREEN. Vraća na ekran sliku koja je bila sačuvana pomoću STORE naredbe. Naravno, time slika neće biti izbrisana iz memorije. Napomena:RECALL daje grešku "INCORRECT STATEMENT" ako nikakva slika nije bila upisana u memoriju pomoću STORE naredbe. EXCHANGE ili EXC EXCHANGE SCREENS.Slika sa ekrana ide u memoriju,a slika iz memorije se vraća na ekran. Napomena: EXCHANGE DAJE GREŠKU "INCORRECT STATEMENT" ako nikakva slika nije bila upisana u memoriju pomoću STORE naredbe. 15 --------------------------------------------------------------------- Naredbe za rad sa mikrodrajvom MDF n Parametar: n - broj mikrodrajva; ako se ne navede vrednost = 1 Za razliku od svih drugih naredbi, MDF deluje u bejziku, a ne u editoru. Dejstvuje tako što automatski ispisuje zvezdice, navodni - ke, tačka zareze i sve ostalo što ide iza SAVE, LOAD, VERIFY, FORMAT i EARSE naredbe kada se radi sa mikrodrajvom. Otkucati MDF 0 je isto što otkucati MDFOFF - isključuje se MDF stanje. MDFOFF MICRODRIVE FACILITY OFF. Poništava MDF stanje. (Videti naredbu MDF) Pomoćne naredbe CLS ili C CLEAR SCREEN - briše ekran DEFL [n] ili DL [n] Parametar n - broj redova; ako se ne navede vrednost=16. Određuje koliko će linija biti izlistano bez prekida (videti i LIST). Na primer, DL 4 će prouzrokovati da listing stane posle svaka četiri reda na ekranu i čeka da pritisnete neki taster za nastavak ili SPACE (BREAK) za prekid. Postoje dva specijalna slučaja DEFL naredbe: DEFL 0 i DEFL 20. DEFL 0 omogućava da listing stane posle svake izlistane cele bejzik linije (a ne posle svakog reda od 51 karaktera, kao što bi radilo DEFL 1). Lično, autor ovog programa smatra da je DEFL 0 daleko najbolja opcija. DEFL 20 (ili DEFL 18, ako je FREEZE=2) omogućava da listing stane posle izlistanog celog jednog ekrana. Tada nemojte priti- snuti bilo koji taster da se listing nastavi, nego baš taster "C" ("0") - probajte, bićete iznenađeni! To bi moglo da se nazove listanje stranu po stranu. 16 --------------------------------------------------------------------- Primetite da u drugim situacijama, kada DEFL nije 20, taster "C" ("0") deluje sasvim drugačije - briše ekran i listing polazi sa vrha ekrana. FREE Pokazuje na ekranu koliko još ima slobodne memorije. NEW Briše bejzik program i varijable iz memorije. Za razliku od Sinklerovog NEW, ovo u editoru neće biti destruktivno za boju slova i pozadine koju ste izabrali, niti za brzinu AUTO -REPEAT-a. Još nešto, ako otkucate NEW iz Sinklerovog bejzika, moraćete da reaktivirate editor sa RANDOMIZE USR 45568. EXIT Prouzrokuje izlazak iz editora (isto kao da ste otkucali SYMBOL/ENTER). Povratak u editor vrši se pritiskom na SYMBOL/ENTER. BYE Prouzrokuje izlazak iz editora,deaktivira editor i potpuno ga briše iz memorije, kao da nikada nije bio ni učitan. Time dobijate 19 K slobodne memorije, ali morate prvo da podignete RAMTOP sa CLEAR 64889 ili CLEAR 65367 ako niste stavljali nikakve mašinske programe u prazan prostor iza editora. Naravno, posle otkucane komande BYE, nemojte ni slučajno da probate da reaktivirate editor sa RANDOMIZE USR 45568, jer je on nepovratno izbrisan iz memorije - došlo bi do kraha sistema. HELP ili H Kada se otkuca ova naredba, na ekranu se pojavljuje "HELP SCREEN" sastavljen od četiri bloka: - prvi blok uz kratka objašnjenja nabraja sve editorske funkcije - drugi blok vas podseća da su funkcijski tasteri "Q", "W" i "E", odnosno da se pozivaju sa SYMBOL/Q, SIMBOL/W, SYMBOL/E. Takođe, piše i to da se znakovi <=, <> i >= kucaju iz dva dela. 17 --------------------------------------------------------------------- - treći blok donosi spisak svih editorskih komandi i njihovu sintaksu. - najzad, četvrti blok daje spisak svih bejzik naredbi koje se mogu kucati u obliku skraćenice; prvo slovo i tačka. Razlika između funkcije CAPS/H i naredbe HELP je u sledećem: - CAPS/H prikazuje "HELP SCREEN" samo dok držite pritisnuta ta dva tastera - naredba HELP drži "HELP SCREEN" na ekranu sve dok se ne pritisne neki taster Ako imate printer,"HELP SCREEN" možete da odštampate na ovaj način: - oktucajte HELP i pritisnite ENTER - pritisnite CAPS/N (U) Ako se upotrebi naredba STORE, HELP gubi svoju prvobitnu funkciju - više ne pokazuje "HELP SCREEN", već onaj screen koji ste pomoću naredbe STORE naredili editoru da zapamti (videti STORE). UPPER Pretvara sva mala slova u programu u velika.To je kao da ste kucali ceo program sa "C" kursorom. Naravno, sve što je u navodnicima ostaće nepromenjeno. LOWER Deluje suprotno od UPPER - pretvara sva velika slova u programu u mala. Dakle, kao da ste ceo program kucali sa "L" kursorom. Kao i kod UPPER, sve što je u zagradama ostaće nepromenjeno. USR USR MODE. Prouzrokuje to da se u editor više ne ulazi sa SYMBOL/ENTER već s RANDOMIZE USR 45568 Važno je znati sledeće: čak i dok niste u editoru, on uvek ostaje aktivan, jer radi u interupt modu 2 (IM 2). To je zato da bi, dok ste u bejziku, mogao svaki pedeseti deo sekunde da skanira tastaturu i registruje pritisak na SYMBOL/ENTER. Dok se u memoriji nalaze samo editor i vaš bejzik program, sve lepo radi. 18 --------------------------------------------------------------------- Međutim, problemi nastaju ako pokušate da napišete neku svoju mašinsku rutinu koja bi radila u interupt modu 2. Tada bi se dešavale vrlo čudne stvari: vaš program bi deaktivirao editor, editor bi deaktivirao vaš program, i tako u krug. Da se ta glupa situacija ne bi desila, uvedena je naredba USR koja jednostavno čini da se editor više ne petlja sa IM 2. Vaš program će tada savršeno lepo raditi. Jedino ćete stalno morati da kucate RANDOMIZE USR 45568 svaki put kada želite ekranski editor. I još nešto: ako kucate USR, MDF opcija više neće raditi, jer je ostvarena baš pomoću interapt moda 2. Ako ste otkucali USR, a u editor želite da uđete sa SCREEN COPY (videti CAPS/ENTER funkciju), onda otkucajte RANDOMIZE USR 45578. Naravno, ako ne pišete mašinske programe, na USR i INT naredbe slobodno zaboravite. INT INTERRUPT MODE Vraća normalno stanje stvari-dakle, iz bejzika se u editor ulazi sa SYMOBOL/ENTER (videti USR). Funkcijske naredbe (tasteri u zagradama odnose se na spektrum plus) Ulazak/izlazak iz editora SYMBOL/ENTER omogućava ulazak/izlazak u editor CAPS/ENTER dok ste u Sinklerovom bejziku, omogućava ulazak u editor sa SCREEN COPY - ono što je bilo na ekranu biće preneto u editor. (Pazite, dok ste u editoru, CAPS/ENTER ima svoju sasvim drugu funkciju, opisanu nešto dalje). Pomeranje kursora CAPS/5 kursor levo CAPS/8 kursor desno CAPS/6 kursor dole CAPS/7 kursor gore 19 --------------------------------------------------------------------- CAPS/4(Z) pomera kursor sasvim levo - na sam početak polja A. CAPS/9 (X) kursor sasvim desno: - ako se nalazi u polju A, biće pomeren na početak polja B - pozicija 5; - ako se nalazi u polju B, biće pomeren sasvim desno - na poziciju 50 CAPS/V (N) pomera kursor na početak bejzik linije CAPS/B (M) pomera kursor na kraj bejzik linije CAPS/U (B) pomera kursor u gornji levi ugao ekrana (HOME) CAPS/Z (2) uključuje ALT MODE Postoje dva kursora: jedan glavni (koji fleši- ra) i jedan sporedni - kursor za kopiranje. Kursor za kopiranje se pomera samo u ALT modu. Tada CAPS/5, CAPS/6, CAPS/7, CAPS/8, CAPS/4 (Z), CAPS/9 (X), CAPS/V (N), CAPS/B (M) i CAPS/U (B) pomeraju njega, a ne glavni kursor. Izlazak iz ALT moda vrši se ponovnim pritiskom na CAPS/Z (2) ili pritiskom na neki taster koji ne služi za pomeranje kursora CAPS/X (C) COPY - vrši kopiranje sa sporednog na glavni kursor. CAPS/SYMBOL dok držite pritisnuto CAPS/SYMBOL, kursori na ekranu počinju da fleširaju - to je zato da ne biste morali da ih tražite pogledom ako ne znate gde su SYMBOL/SPACE potpuno isto kao CAPS/SYMBOL CURSOR MODE CAPS/K bira između "L" i "C" moda CAPS/G uključuje/isključuje "G" mod Napomena: "K" i "E" modovi kursora ne postoje, jer se sve u ekranskom editoru kuca slovo po slovo. Brisanje CAPS/0 briše znak levo od kursora i pomera kursor za poziciju unazad CAPS/3(Q) briše red, od kursora pa do kraja 20 --------------------------------------------------------------------- CAPS/W briše ceo red u kojem se nalazi kursor INSERT CAPS/I INSERT MODE u INSERT modu, svaki put kada pritisnete neki taster, tekst desno od kursora se pome- ra, a novi znak se ubacuje u nastalu prazninu; iz INSERT moda se izlazi ponovnim pritiskom na CAPS/I ili pomeranjem kursora CAPS/Q (1) INSERT LINE - ubacuje jedan prazan red, a kursor pomera na njen početak CAPS/1 (9) ubacuje dva prazna reda, a kursor pomera na njihov početak; za razliku od CAPS/Q, CAPS/1 stvara dva prazna reda ispod bejzik linije u kojoj se nalazio kursor; idealno je koristiti CAPS/Q kada treba otkucati neku komandu, a CAPS/1 kada treba otkucati bejzik liniju CAPS/Y (V) dodaje jedan prazan red na kraju bejzik linije u kojoj se nalazi kursor. (Dovedite kursor na sredinu neke dugačke bejzik linije, prltisnite par puta CAPS/Y, i biće vam sve jasno.) CAPS/Y je važna funkcija, jer dok kucate bejzik liniju, ceo tekst mora da bude u polju B - ništa osim linijskog broja nema pravo da zalazi u polje A MOVE TEXT CAPS/O (3) pomera tekst na desno. (Dovedito kursor na sredinu neke bejzik linije, pritisnite CAPS/O, i odmah ćete shvatiti dejstvo). Ova izuzetno korisna funkcija mogla bi da se shvati kao neka vrsta INSERT-a - zamena za CAPS/I CAPS/P (4) suprotno od CAPS/O - pomera tekst ulevo; ovo bi moglo da se shvati kao neka vrsta brisanja - zamena za CAPS/0 21 --------------------------------------------------------------------- CAPS/SPACE (BREAK) NORMAL MODE Ova izuzetno važna funkcija uvek vraća editor u NORMAL MODE. Pri tom se stvara jedan prazan red, a kursor pomera na njegov početak. CAPS/SPACE (BREAK) može da se koristi za izlazak iz LIST, LLIST, EDIT, AUTO, LINE ili FIND moda, kao i u mnogim drugim situacijama. CAPS/C (0) CLEAR SCREEN - briše ekran i pomera kursor u gornji levi ugao ekrana. CAPS/2 (P) SCROOL UP - pomera ekran, i to samo onaj deo koji se nalazi ispod kursora, za jedan red nagore. Takođe, pomera kursor sasvim levo, na poziciju 0. Ovo je vrlo korisna funkcija ako greškom pritisnete CAPS/Q (1) ili CAPS/1 (9), a može se zgodno upotrebiti i u mnogim drugim situacijama. CAPS/S SUBSTITUTE - pogledati FIND naredbu. CAPS/H HELP - pogledati HELP naredbu. CAPS/N (U) SCREEN DUMP šalje sadržaj ekrana na štampač. CAPS/T Postavlja graničnik koji određuje editoru dokle da primi bejzik liniju. To može da bude korisno u dve situacije: - ako želite da samo deo neke bejzik linije bude primljen u memoriju, sve što je desno od graničnika biće ignorisano - ako želite da naredite editoru da primi neku liniju koja u sebi sadrži više od 20 blanko simbola (ne računamo, naravno, balnko simbole među navodnicima). CAPS/ENTER pokazuje šta editor smatra za početak i kraj bejzik linije. Ovo je vrlo korisno ako ste u nedoumici odakle će i dokle biti primljena linija koju ste otkucali kada pritisnete ENTER. CAPS/M (Y) ENTER ali bez sintaksne provere. Bejzik linija će biti primljena u memoriju bez ikakve provere da li ono što ste otkucali ima smisla u bejziku ili ne. Ovo može da bude izuzetno korisno ako pomo- ću ekranskog editora pišete program koji će kasnije raditi sa nekim proširenim bejzikom. 22 --------------------------------------------------------------------- Postoje tri funkcijska tastera: "Q", "W" i "E", a pozivaju se sa: SYMBOL/Q funkcijski taster 0 SYMBOL/W funkcijski taster 1 SYMBOL/E funkcijski taster 2 Za više detalja pogledati naredbe DEFK i DEFK. Postoji sedam specijalnih funkcijskih naredbi koje vrše sledeću ulogu: stvaraju jedan prazan red, dovode kursor na njegov početak i ispisuju neku komandu. Vama ostaje još samo da otkucate parametre ako treba i pritisnete ENTER. Te specijalne funkcije su: CAPS/A AUTO CAPS/D DELETE CAPS/E EDIT CAPS/F FIND CAPS/J JOIN CAPS/L LIST CAPS/R RUN Rezervisane reči ABS LINE CAT OR DIM RANDOMIZE ACS LIST CIRCLE OUT DRAW READ AND LLIST CLEAR OVER ERASE REM ASN LN CLS PAPER EXP RESTORE AT LOAD CODE PAUSE FLASH RETURN ATN LPRINT CONTINUE PEEK FN RND ATTR MERGE COPY PI FOR RUN BEEP MOVE COS PLOT FORMAT SAVE BIN NEW DATA POINT GOSUB SGN BORDER NEXT DEFFN POKE GO SUB SIN BRIGHT NOT DEF FN PRINT GOTO SQR U bejzik programima programer ne sme da koristi sledeća imena promenljivih, bez obzira da li ih kucao malim ili velikim slovima. Pored toga,zabranjena su imena promenljivih koja u sebi sadrže znak "blanko" (ASCII kod 32), jer će ga editor eliminisati - kao, uostalom, i sve druge nepotrebne blanko slmbole u bejzik liniji. 23 --------------------------------------------------------------------- Bejzik skraćenice Većina bejzik naredbi može da se kuca u obliku skraćenica ako se iza skraćenice stavi tačka: - naredbe dužine dva ili tri slova (AT, IN, SIN, COS) ne mogu se, po pravilu, skaćivati; - naredbe dužine četiri slova (PEEK, POKE, OVER) mogu se skratiti na dva slova; - naredbe duže od četiri slova (RETURN, CONTINUE, BORDER) imaju skraćenice od tri slova; - GO TO se skraćuje kao GT. ili G.; - GOSUB se skraćuje kao GS.; - LIST i COPY se ne mogu skraćivati. ABS FOR F. ACS FORMAT FOR. PAUSE PAU. AND GOSUB GS. PEEK PE. ASN GOTO GT. G. PI AT GO TO GT. G. PLOT PL. ATN IF POINT POI. ATTR AT. A. IN POKE PO. BEEP BE. B. INK PRINT PRI. P. BIN INKEY$ IN$. RANDOMIZE RAN. BORDER BOR. INPUT INP. I. READ RE. R. BRIGHT BRI. INT REM CAT INVERSE INV. RESTORE RES. CHR$ C$. LEN RETURN RET. CIRCLE CIR. LET L. RND CLEAR CLE. C. LINE LI. RUN CLOSE# CLO. LIST SAVE SA. CLOSE # CLO. LLIST LLI. SCREEN$ SC$. CLS LN SGN CODE CO. LOAD LO. SIN CONTINUE CON. LPRINT LPR. SQR COPY MERGE MER. M. STEP ST. COS MOVE MO. STOP S. DATA DA. D. NEW STR$ S$. DEFFN DEF. NEXT NE. N. TAB DEF FN DEF. NOT TAN DIM OPEN# OP. THEN TH. T. DRAW DR. OPEN # OP. TO ERASE ERA. E. OR USR U. EXP OUT VAL FLASH FLA. OVER OV. O. VAL$ V$. FN PAPER PAP. VERIFY VER. V. 24 --------------------------------------------------------------------- Prebacivanje na mikrodrajv Ekranski editor, razume se, može da radi i sa mikrodrajva (ili, za koji mesec, sa turbodrajva). Za prebacivanje programa na kaseticu (ili disk) potrebno je učitati bejzik loader sa MERGE"" i prepraviti naredbu load u liniji 1 da glasi: LOAD *"M";1;"EDITOR" code 45568, 19322 a zatim ukucati sledeću sekvencu naredbi: SAVE *"M";1;"run"LINE 1 CLEAR 45567: LOAD "" CODE SAVE *"M";1;"EDITOR" CODE 45568, 19322 Organizacija memorije Memorija je organizovana na sledeći način: prostor od 23755 (23813 za vlasnikemikrodrajva) do 45567 stoji na raspolaganju za programe na bejziku, od 45568 do 64889 proteže se ekranski editor, od 64890 do 65367 (478 bajtova) nalazi se prazan prostor koji možete koristiti na proizvoljan način, i od 65368 do 65535 nalaze se, kao što je to i uobičajeno, UDG karakteri. --------------------------------------------------------------------- Pregled naredbi KB- ZOP Osnovne naredbe ZOF L, LIST [n] [,m] Nardedbe za LL, LLIST [n] [,m] pamćenje ekrana E, EDIT [n] [m,] A, AUTO [n] [,m] STO, STORE LN, LINE RCL, RECALL F, FIND n, m, a$, [b$] EXC, EXCHANGE R, RUN [n] J, JOIN n, m Naredbe za rad DEL, DELETE n, m sa mikrodrajvom N, RENUM [n, m, o, p] MDF [n] Funkcijski tasteri MDFOFF DK, DEFK a$, b$ Pomoćne naredbe *DK, DEFK a$, n C, CLS Naredbe podešavanja DL, DEFL [n] FREE FR, FREEZE NEW UNFR, UNFREEZE EXIT CL, COLOUR n, m BYE REP, REPEAT n, m H, HELP FT, FTIME [n] UPPER BP, BEEP LOWER UNBP, UNBEEP USR KB+ INT --------------------------------------------------------------------- Opisi: -------- (Moj Mikro, Oktober 1986, Janez Jaklič) ----------------------------------------- Tip: uporabni program Računalnik: spectrum 48 K Avtor: Vladimir Kostić Založnik: BIGZ OOUR "Duga", Galaksija Cena: 1500 din Če spectrumov basic do sedaj ni bil deležen večje graje, pa je bilo toliko več spotikanja ob njegov editor. Ne bi sicer mogli reči, da je neuporaben (na hišnih računalnikih se najdejo tudi precej slabši "editorji"), vendar pa ni primerljiv z zaslonskimi editorji recimo commodorja, amstrada ali BBC. Ponuja sicer preverbo sintakse ob vnosu vrstice in vtipkavanje ključnih besed s pritiskom na eno samo tipko (kar je pri takšni tipkovnici, kot jo ima, verjetno prednost), je pa počasen in, kar je njegova največja pomanjkljivost, nima ukaza EDIT. Marsikaj od tega je sicer popravil Beta Basic, ki je dodal ukaze EDIT, RENUMBER in DELETE, vendar je šlo v bistvu za isti, počasni spectrumov editor. Sedaj pa, ko spectrumova zvezda že vidno ugaša in vse manj ljudi piše obsežne programe v basicu, se je na domačem trgu pojavil prvi pravi zaslonski editor za spectrumov basic v izdaji beograjskega časopisa Računari. Kdor bere to revijo, je izvedel zanj že novembra lani, lahko pa si ga je tudi sam vtipkal v računalnik, saj je bil program objavljen v šestih nadaljevanjih. Ekranski editor je zelo kompleten, dobro zamišljen in dobro izveden program, ki teče vzporedno s spectrumovim editorjem. Deluje tako, da v obeh lahko editiramo isti program, iz enega v drugega pa prehajamo s pritiskom dveh tipk. Izvajanje programa vedno poteka v normalnem spectrumovem okolju in zato editor, ko je program napisan, ni več potreben. Novi editor dela z 51 znaki v vrtici, vrstic pa je na zaslonu 20, kar je manj kot običajno, zato je tekst bolj razločen. V editorju pišemo tako, kot je v navadi, torej črko za črko, pri tem pa se lahko prosto gibljemo s kurzorji po ekranu in popravljamo program v stilu commodorja. Pri pisanju programskih vrstic lahko ukaze krajšamo, ohranjena pa je tudi dobra stran spectruma, tj. preverba sintakse ob vnosu, ki pa jo po potrebi lahko tudi izključimo. Ukazov editorja je precej, med njimi najdemo vse običajne (LIST, AUTO, FIND ipd.) pa tudi razne druge, kot so FREEZE, STORE in HELP. Med posebno koristnimi naj omenimo *DEFK, s katerim lahko vsaki od treh funkcijskih tipk dodelimo celo sekvenco znakov (tudi kontrolnih znakov in funkcij editorja) in MDF, ki olajša pisanje ukazov za delo z mikrotračnikom. Poleg ukazov pozna editor tudi funkcije, ki jih uporabljamo s pritiskom na CAPS SHIFT in tipko, omogočajo pa razne premike kurzorja, vstavljanje vrstic, brisanja ipd. Pri funkcijah naj omenimo možnost kopiranja teksta z enega mesta na zaslonu na drugo s premikanjem posebnega kurzorja za kopiranje, ki pa ne sledi popolnoma ideji BBC in je z njim zato malce več dela. Dokaj koristni so tudi ukazi za preklapljanje zaslona (editor dela z dvema zaslonoma), saj si v vsakem trenutku lahko prikličemo na zaslon kak važen segment programa.Vseh funkcij in ukazov je zares veliko,očitno je bilo avtorju vodilo,da bi vsakdo našel v editorju nekaj zase in tako so se znašli v njem tudi manj koristni ukazi in funkcije.Listanje na poseben način (DEFL 20,nato LIST in ko se izpis ustavi, pritisk na C) je sicer res nekaj, kar ne vidite na nobenem računalniku, vendar bi veljalo porabljene byte odstopiti uporabniku,ki bi imel od tega več koristi. Isto bi veljalo za ukaze FTIME,ZOP, ZOFF ter deloma REPEAT (hitrost ponavljanja lahko določamo ločeno za horizontalne in vertikalne pomike) - nepotreben luksuz, ki pa zasede svoj del v 19K, kolikor je dolg program. Splošni vtis o programu je zelo dober. Editor je hiter, saj ni stalnega osveževanja ekrana kot pri običajnem editorju, ukazov je na pretek, prav tako funkcij, in v kombinaciji s funkcijskimi tipkami je editor zelo močan. Kakšno stvar bi se morda dalo tudi bolje narediti (ni prav koristno, če padem iz načina INSERT vsakič, ko premaknem kurzor, podobno velja za način ALT,ko začnem s kopiranjem), zelo prav bi prišla možnost listanja naprej in nazaj in pa, da bi se kazalec na vrstico v običajnem editorju vsakič postavil na vrstico, ki sem jo pravkar vpisal z ekranskim editorjem (koristno če želim pogledati obliko vrstice na 32-znakovnem zaslonu). Vendar pa te pripombe že mejijo na pikolovstvo. Morda je edina problematična stvar, ki bi jo veljalo omeniti, dolžina programa. Uporabniku ostane na voljo okroglih 21 K prostora, kar je za marsikako uporabu vendarle premalo in si je treba pomagati z razbijanjem programa na dva dela ki ju na koncu sestavimo z MERGE. Nazadnje dileme pravzaprav ni - ekranski editor je idealen za pisanje basic programov in ne bo vam žal, če ga kupite. Edina škoda pa je, da prihaja program na trg tako pozno. Pred letom, dvema, bi mi prišel še kako prav, tako pa dvomim, da ga bom sam sploh imel priloznost kdaj uporabiti. Pripis uredništva: Poskrbeli bomo da v Mojem mikru v rubriki Mali oglasi ne bo objavljen oglas, s katerim bi morda kak Yu pirat ponujal zgoraj ocenjeni program.