Jak napisać program Apple II BASIC w przeglądarce internetowej

Czy kiedykolwiek chciałeś zaprogramować stary komputer? Jeśli używasz języka programowania BASIC i uruchamiasz symulację legendarnego Apple II w swojej przeglądarce, to proste! Dowiesz się, jak wyglądało programowanie w późnych latach siedemdziesiątych i wczesnych osiemdziesiątych.

Oczywiście, jeśli masz prawdziwego Apple II, możesz również śledzić. W przeciwnym razie użyjemy wygodnego emulatora Apple II o nazwie Jabłko ][js created by Will Scullin. We’ll cover the basics of BASIC and run two simple programs.

Why the Apple II Was So Important

A man at a desk typing on the very large Apple II keyboard in a 1977 advertisement.

Introduced in 1977, the Apple II was launched as part of a class of small, inexpensive computers made possible by microprocessor technology. These personal computers allowed people to own and operate their own machines with relative ease. Prior to this, most computers were expensive and only owned (or shared) by large organizations.

The Apple II stood out because of its low cost and color graphics. It also had seven internal expansion slots that worked with the world’s least expensive floppy disk system at that time, the Disk II. Apple co-founder, Steve Wozniak’s, wizardry with circuit design allowed all these features to fit into a small desktop machine with a lightweight plastic case.

The Apple II was a stunning breakout success for Apple. Over the course of its approximate 16-year lifespan (it was discontinued in 1993), the Apple II platform hosted seven versions of Wozniak’s original computer design. A typical Apple II computer came equipped with 48 or 64 KB of RAM, and a 1.022 MHz 6502 CPU. You could program every model in BASIC.

The Basics of BASIC

Faint lines of code on a blue background (an artist's interpretation of Applesoft BASIC).

From the late 1970s through the early ’80s, most personal computers included a programming language known as BASIC, an acronym for Beginners’ All-purpose Symbolic Instruction Code. BASIC emerged in 1964 on the Dartmouth College Time Sharing System. It quickly became a popular educational tool for computer science due to its ease of use.

The Apple II shipped with two major versions of BASIC over the years: Wozniak’s Integer BASIC, and Applesoft. Microsoft created Applesoft long before it became famous for Windows.

For this article, we used Applesoft BASIC.

Some Syntax Tips

Every BASIC program on the Apple II is composed of lines of code. Each line has a number, and when a program is RUN, the computer executes each line in numerical order from least to greatest. Each line is entered into computer memory by hitting the Return key.

These three fundamental BASIC commands will always come in handy.

At any time while programming, you can see the contents of your program by typing the LIST command.
To start a new program (erasing the current program from memory), type NEW.
To clear the screen, type HOME.

If you make a mistake while typing in the program, the Apple II will return a “SYNTAX ERROR” upon running the program, and it will include a line number where the error occurred. Simply re-type the offending line, double-checking for possible typos.

Got it? Let’s get started.

Your First Program

First, we’re going to write a very simple program that counts upward forever. It’s a quick way to test if BASIC is working properly on any system.

If you have a real Apple II, power it up. Make sure you use a machine with Applesoft in ROM, such as the Apple II Plus or later, or an original Apple II with the proper language card.

If you’re following along without a real Apple II, open a new browser window to the Apple ][js emulator. Apple ][js uses JavaScript to simulate the circuitry of a real Apple II in software. Basically, you’ll be running an entire Apple II system in a web browser (it works best in Google Chrome).

When you first load the emulator (or boot an Apple II without a floppy disk system), you see a screen like the one shown below.

The startup screen in Apple ][js.

Press or click “Reset.”

Press

You hear a beep, and then see a “]”Z migającym kursorem.

Jabłko II

W monicie wpisz następujące polecenie i naciśnij klawisz Enter (lub Return) na końcu każdego wiersza:

10 X=X+1
20 PRINT X
30 GOTO 10

Jeśli popełnisz błąd, po prostu użyj klawisza strzałki w lewo na klawiaturze, aby przesunąć kursor do tyłu i wprowadzić poprawki. Nowe znaki, które wpiszesz, zastąpią stare. Możesz również ponownie wpisać całą linię.

Za każdym razem, gdy wpisujesz linię kodu z określonym numerem linii, BASIC zastępuje wszystko, co było wcześniej zapisane w tym numerze linii, nowym wejściem.

Plik

Kiedy używasz BASICa w starszym systemie, takim jak Apple II, często linie są numerowane jako wielokrotności 10. Daje to miejsce na późniejsze dodawanie nowych linii kodu, jeśli zajdzie taka potrzeba.

Następnie wpisz LISTA, a następnie naciśnij klawisz Enter (lub Return), aby wyświetlić listę programu.

Plik

Jeśli przypadkowo skończysz z wierszami, których nie potrzebujesz (na przykład, jeśli wpisałeś 32 zamiast 30), po prostu wpisz numer wiersza i naciśnij Enter (lub Return), aby go usunąć.

Jeśli wszystko wygląda dobrze, czas uruchomić program. Wpisz RUN po znaku zachęty]a następnie naciśnij klawisz Enter (Return).

Wyjście z programu liczącego w Apple II.

Program odlicza w górę o jeden na zawsze i wypisuje każdą liczbę w nowym wierszu na dole ekranu.

Aby zatrzymać program, naciśnij Ctrl + C. Spowoduje to przerwanie programu, przerywając jego wykonywanie.

ZA

Jak więc działa ten program? Podzielmy to linijka po linii:

10 X=X+1
20 PRINT X
30 GOTO 10

Wiersz 10: Tutaj mówimy programowi, że zmienna o nazwie „X” jest sobie równa plus jeden. Na początku programu „X” równa się zero. Tak więc przy pierwszym przebiegu program dodaje jedynkę do zera, uzyskując jedynkę.
Wiersz 20: Program użyje polecenia PRINT do wyświetlenia zawartości zmiennej „X” na ekranie.
Linia 30: Używamy polecenia GOTO, aby odesłać program z powrotem do linii 10 w pętli. Wartość zmiennej „X” (teraz zwiększona o jeden) jest podawana z powrotem do linii 10. Następnie program powtarza ten proces w nieskończoność, licząc w górę o jeden, a następnie wypisuje wynik w każdej pętli.

Prosty program wejściowy

Teraz, gdy masz już ochotę pisać, wyświetlać, uruchamiać i łamać program, przyjrzyjmy się temu, który może coś zrobić z danymi wejściowymi, które mu podasz.

Najpierw wpisz NEW i naciśnij Enter (Return). To usuwa nasz ostatni program z pamięci, więc możemy zacząć od nowa.

Wpisz następujący wiersz po wierszu, a następnie naciśnij klawisz Enter (Return) na końcu każdego:

10 PRINT "WHAT IS YOUR NAME?"
20 INPUT N$
30 PRINT "HELLO, ";N$

Kiedy skończysz, WYKAZUJ program, aby dokładnie sprawdzić, czy wpisałeś go poprawnie.

Plik

Następnie wpisz RUN i naciśnij Enter (Return), aby go uruchomić. Program poprosi o wpisanie znaku zapytania (?). Wpisz swoje imię i nazwisko i naciśnij Enter (Return), aby odpowiedzieć na pytanie.

Nazwa programu działającego w języku BASIC na Apple II.

Jak jakiś rodzaj tajemnej czarnej magii, program znał twoje imię i oddzwonił! Jak to działało? Przyjrzyjmy się każdej linii:

10 PRINT "WHAT IS YOUR NAME?"
20 INPUT N$
30 PRINT "HELLO, ";N$

Linia 10: Program wyświetlał linię tekstu na ekranie. Każdy wiersz tekstu, który chcesz WYDRUKOWAĆ, musi być umieszczony w cudzysłowie.
Linia 20: Program prosi o INPUT od Ciebie i zapisuje wynik w zmiennej o nazwie N $. Znak dolara to skrót od „string”. Każda zmienna zawierająca litery musi być zmienną typu łańcuchowego.
Wiersz 30: program wyświetlił Hello, po którym następował przecinek i spacja, a następnie wydrukował zawartość zmiennej N $. Średnik powiedział programowi, aby wypisał N $ w tym samym wierszu bez wstawiania znaku końca wiersza.

Zarysowania powierzchni

Ilustracja osób używających komputerów Apple II z platformy

Teraz, gdy posmakowałeś języka BASIC na Apple II, możesz powiedzieć wszystkim swoim znajomym, że zaprogramowałeś stary komputer! W rzeczywistości możesz nawet powiedzieć Steve Wozniak na Twitterze.

Jeśli chcesz zagłębić się w Applesoft BASIC, polecamy ten wspaniały poradnik online autorstwa Yuri Yakimenko. Zawiera dużo więcej szczegółów niż tutaj. Jest też to przydatne szybkie odniesienie poleceń Applesoft BASIC.

Pełne skanowanie Podręcznik programowania podstawowego Apple II od 1978 roku jest również dostępna. Zawiera szczegółowe informacje na temat zapisywania i ładowania programów.

Tysiące niesamowitych gier i aplikacji zostało zaprogramowanych w Applesoft w ciągu ostatnich 42 lat, więc nieograniczone możliwości to, co możesz z tym zrobić. (W rzeczywistości ilość pamięci RAM w twoim komputerze jest limitem, ale to o wiele mniej poetyckie.)

Wszystkim weteranom Apple II chcielibyśmy usłyszeć w komentarzach Wasze historie o używaniu BASIC. Miłego programowania!