Da li ste ikada razmišljali o programiranju na starom računaru? Uz korišćenje BASIC programskog jezika i pokretanje simulacije legendarnog Apple II u vašem internet pregledaču, to je izvodljivo! Pruža vam se odličan uvid u to kako je programiranje izgledalo krajem sedamdesetih i početkom osamdesetih godina prošlog veka.
Naravno, ako posedujete originalni Apple II, možete i na njemu pratiti uputstva. U suprotnom, koristićemo praktičan Apple II emulator nazvan apple][js, delo Willa Scullina. Objasnićemo osnove BASIC-a i pokrenuti dva jednostavna programa.
Zašto je Apple II bio toliko značajan
Predstavljen 1977. godine, Apple II je lansiran kao deo grupe malih, jeftinih računara omogućenih mikroprocesorskom tehnologijom. Ovi personalni računari omogućili su ljudima da poseduju i koriste sopstvene mašine sa relativnom lakoćom. Pre toga, većina računara bila je skupa i posedovala su ih (ili delila) isključivo velika preduzeća.
Apple II se isticao svojom niskom cenom i mogućnošću prikaza grafike u boji. Takođe je imao sedam unutrašnjih slotova za proširenje koji su radili sa tada najjeftinijim sistemom disketnih jedinica na svetu, Disk II. Magija dizajniranja kola koju je posedovao suosnivač Apple-a, Steve Wozniak, omogućila je da sve ove funkcije budu smeštene u malu stonu mašinu sa laganim plastičnim kućištem.
Apple II je doživeo veliki uspeh za Apple. Tokom svog približno 16-godišnjeg životnog veka (proizvodnja je prekinuta 1993. godine), platforma Apple II ugostila je sedam verzija originalnog Wozniakovog dizajna računara. Tipičan Apple II računar dolazio je opremljen sa 48 ili 64 KB RAM-a i 6502 CPU-om od 1.022 MHz. Svaki model je mogao biti programiran u BASIC-u.
Osnove BASIC-a
Od kasnih 1970-ih do ranih 1980-ih, većina personalnih računara uključivala je programski jezik poznat kao BASIC, skraćenicu za Beginners’ All-purpose Symbolic Instruction Code. BASIC se pojavio 1964. godine na Dartmouth College Time Sharing System. Brzo je postao popularan obrazovni alat za računarsku nauku zbog svoje jednostavnosti korišćenja.
Apple II je tokom godina isporučivan sa dve glavne verzije BASIC-a: Wozniakov Integer BASIC i Applesoft. Microsoft je kreirao Applesoft mnogo pre nego što je postao poznat po Windows-u.
Za potrebe ovog teksta, koristili smo Applesoft BASIC.
Neki saveti u vezi sa sintaksom
Svaki BASIC program na Apple II sastoji se od linija koda. Svaka linija ima broj i kada se program POKRENE, računar izvršava svaku liniju u numeričkom redosledu, od najmanjeg ka najvećem. Svaka linija se unosi u memoriju računara pritiskom na taster Enter.
Ove tri osnovne BASIC naredbe će vam uvek biti od pomoći.
U bilo kom trenutku tokom programiranja, možete videti sadržaj svog programa kucanjem naredbe LIST.
Da biste započeli novi program (brisanjem trenutnog programa iz memorije), otkucajte NEW.
Da biste očistili ekran, otkucajte HOME.
Ako napravite grešku prilikom kucanja programa, Apple II će vratiti „SINTAKSNU GREŠKU“ prilikom pokretanja programa i prikazaće broj linije gde je došlo do greške. Jednostavno ponovo otkucajte problematičnu liniju, proveravajući moguće greške u kucanju.
Razumete? Hajde da počnemo.
Vaš prvi program
Prvo, napisaćemo vrlo jednostavan program koji broji naviše beskonačno. To je brz način da proverite da li BASIC ispravno radi na bilo kom sistemu.
Ako imate pravi Apple II, uključite ga. Uverite se da koristite mašinu sa Applesoft-om u ROM-u, kao što je Apple II Plus ili noviji, ili originalni Apple II sa odgovarajućom jezičkom karticom.
Ako pratite uputstva bez stvarnog Apple II, otvorite novi prozor pregledača sa Apple ][js emulatorom. Apple ][js koristi JavaScript za simulaciju kola stvarnog Apple II u softveru. U suštini, pokretaćete ceo Apple II sistem u internet pregledaču (najbolje radi u Google Chrome).
Kada prvi put učitate emulator (ili pokrenete Apple II bez sistema disketnih jedinica), videćete ekran sličan onom prikazanom ispod.
Pritisnite ili kliknite na „Reset”.
Čućete zvučni signal, a zatim ćete videti „]” sa trepćućim kursorom.
U komandnoj liniji unesite sledeće i pritisnite Enter (ili Return) na kraju svakog reda:
10 X=X+1 20 PRINT X 30 GOTO 10
Ako napravite grešku, jednostavno koristite taster sa strelicom nalevo na tastaturi da pomerite kursor unazad i izvršite ispravke. Novi znakovi koje unesete će zameniti stare. Takođe, možete ponovo otkucati ceo red.
Svaki put kada unesete liniju koda sa određenim brojem reda, BASIC zamenjuje sve što je prethodno bilo sačuvano na tom broju reda novim unosom.
Kada koristite BASIC na starijem sistemu, kao što je Apple II, uobičajeno je da se redovi numerišu u koracima od 10. Ovo vam daje prostor da kasnije dodate nove linije koda između njih ako je potrebno.
Zatim otkucajte LIST, a zatim pritisnite Enter (ili Return) da biste videli listu svog programa.
Ako slučajno završite sa redovima koji vam nisu potrebni (na primer, ako ste otkucali 32 umesto 30), samo unesite broj reda i pritisnite Enter (ili Return) da biste ga izbrisali.
Ako sve izgleda u redu, vreme je da pokrenete svoj program. Otkucajte RUN u komandnoj liniji ] a zatim pritisnite Enter (Return).
Program zauvek broji naviše za jedan i štampa svaki broj u novom redu na dnu ekrana.
Da biste zaustavili program, pritisnite Ctrl+C. Ovo će PREKINUTI program i prekinuti njegovo izvršavanje.
Dakle, kako ovaj program funkcioniše? Hajde da to analiziramo red po red:
10 X=X+1 20 PRINT X 30 GOTO 10
Red 10: Ovde kažemo programu da je promenljiva pod nazivom „X“ jednaka samoj sebi plus jedan. Na početku programa, „X“ je nula. Dakle, pri prvom prolazu, program dodaje jedan na nulu, što rezultira jedinicom.
Red 20: Program će koristiti naredbu PRINT da prikaže sadržaj promenljive „X“ na ekranu.
Red 30: Koristimo naredbu GOTO da pošaljemo program nazad u red 10 u petlji. Vrednost promenljive „X“ (sada uvećana za jedan) vraća se u red 10. Program zatim zauvek ponavlja ovaj proces, brojeći naviše za jedan, a zatim štampa rezultat u svakoj petlji.
Jednostavan program za unos
Sada kada ste stekli utisak o kucanju, listanju, pokretanju i prekidanju programa, pogledajmo program koji može nešto da uradi sa unosom koji mu date.
Prvo otkucajte NEW i pritisnite Enter (Return). Ovo briše naš prethodni program iz memorije, tako da možemo da počnemo ispočetka.
Otkucajte sledeće red po red, a zatim pritisnite Enter (Return) na kraju svakog:
10 PRINT "WHAT IS YOUR NAME?" 20 INPUT N$ 30 PRINT "HELLO, ";N$
Kada završite, LIST-ujte program da još jednom proverite da li ste ga uneli ispravno.
Zatim otkucajte RUN i pritisnite Enter (Return) da biste ga pokrenuli. Program će od vas tražiti unos sa znakom pitanja (?). Unesite svoje ime i pritisnite Enter (Return) da odgovorite na pitanje.
Kao neka vrsta tajanstvene magije, program je znao vaše ime i odgovorio vam! Kako je to funkcionisalo? Hajde da pogledamo svaki red:
10 PRINT "WHAT IS YOUR NAME?" 20 INPUT N$ 30 PRINT "HELLO, ";N$
Red 10: Program je prikazao liniju teksta na ekranu. Svaka linija teksta koju želite da ODŠTAMPATE mora biti pod navodnicima.
Red 20: Program traži INPUT od vas i skladišti rezultat u promenljivoj koja se zove N$. Znak dolara je skraćenica od „string“. Svaka promenljiva koja uključuje slova mora biti promenljiva tipa string.
Red 30: Program je prikazao Hello, praćen zarezom i razmakom, a zatim odštampao sadržaj promenljive N$. Tačka-zarez je rekla programu da odštampa N$ u istom redu bez umetanja preloma reda.
Grebanje površine
Sada kada ste isprobali BASIC na Apple II, možete reći svim svojim prijateljima da ste programirali stari računar! U stvari, možete čak i Stevu Wozniaku na Twitteru.
Ako želite dublje da zaronite u Applesoft BASIC, preporučujemo ovaj izvanredan onlajn vodič Jurija Jakimenka. On ide u mnogo više detalja nego što smo mi ovde. Takođe, tu je i ova zgodna brza referenca Applesoft BASIC naredbi.
Celokupno skeniranje Apple II Osnovnog priručnika za programiranje iz 1978. takođe je dostupno. On detaljno objašnjava kako da sačuvate i učitate svoje programe.
Hiljade izvanrednih igara i aplikacija programirano je u Applesoft-u tokom protekle 42 godine, tako da je nebo granica onoga što možete da uradite s njim. (U stvari, količina RAM-a u vašoj mašini je granica, ali to je mnogo manje poetično.)
Za sve vas veterane Apple II, voleli bismo da čujemo vaše priče o korišćenju BASIC-a u komentarima. Srećno programiranje!