Cómo escribir un programa básico de Apple II en su navegador web

Una manzana II flotando en Wozniakspace

¿Alguna vez has querido programar una computadora antigua? Si usa el lenguaje de programación BASIC y ejecuta una simulación del legendario Apple II en su navegador, ¡es fácil! Obtendrá una excelente idea de cómo era la programación a fines de la década de 1970 y principios de la de 1980.

Por supuesto, si tienes un Apple II real, también puedes seguirlo. De lo contrario, usaremos un práctico emulador de Apple II llamado Manzana ][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 "Reset."

You hear a beep, and then see a “]”Con un cursor parpadeante.

Un Apple II "]" y un cursor.

Cuando se le solicite, escriba lo siguiente y presione Entrar (o Retorno) al final de cada línea:

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

Si comete un error, simplemente use la tecla de flecha izquierda en su teclado para mover el cursor hacia atrás y hacer correcciones. Los nuevos caracteres que escriba sobrescribirán a los antiguos. También puede volver a escribir toda la línea.

Cada vez que escribe una línea de código con un cierto número de línea, BASIC reemplaza lo que estaba almacenado previamente en ese número de línea con la nueva entrada.

El programa BÁSICO "10 X = X + 1", "20 PRINT X" y "30 GOTO 10" en Apple II.

Cuando usa BASIC en un sistema más antiguo, como Apple II, es común numerar las líneas en múltiplos de 10. Esto le da espacio para agregar nuevas líneas de código entre ellas más adelante si es necesario.

A continuación, escriba LISTy luego presione Entrar (o Retorno) para ver una lista de su programa.

La "Lista" del programa BÁSICO "10 X = X + 1", "20 PRINT X" y "30 GOTO 10" en Apple II.

Si accidentalmente termina con líneas que no necesita (por ejemplo, si escribió 32 en lugar de 30), simplemente escriba el número de línea y presione Entrar (o Retorno) para eliminarlo.

Si todo parece estar bien, es hora de ejecutar su programa. Tipo RUN en el indicador]y, a continuación, presione Entrar (Retorno).

Salida del programa de conteo en Apple II.

El programa cuenta hacia arriba de uno en uno para siempre e imprime cada número en una nueva línea en la parte inferior de la pantalla.

Para detener el programa, presione Ctrl + C. Esta voluntad BREAK el programa, interrumpiendo su ejecución.

Un comando "Break" en el programa de conteo en Apple II.

Entonces, ¿cómo funciona este programa? Vamos a dividirlo línea por línea:

10 X=X+1
20 PRINT X
30 GOTO 10
  • Línea 10: Aquí, le decimos al programa que una variable llamada «X» es igual a sí misma más uno. Al comienzo del programa, «X» es igual a cero. Entonces, en su primera pasada, el programa agrega uno a cero, resultando en uno.
  • Línea 20: El programa utilizará el PRINT comando para mostrar el contenido de la variable «X» en la pantalla.
  • Línea 30: Usamos el GOTO comando para enviar el programa de vuelta a la línea 10 en un bucle. El valor de la variable «X» (ahora incrementado en uno) se retroalimenta en la línea 10. El programa luego repite este proceso para siempre, contando hacia arriba de uno en uno y luego imprime el resultado en cada ciclo.

Un programa de entrada simple

Ahora que ha probado escribir, enumerar, ejecutar y romper un programa, echemos un vistazo a uno que puede hacer algo con la entrada que le da.

Primero, escriba NEW y presione Entrar (Retorno). Esto borra nuestro último programa de la memoria, para que podamos empezar de nuevo.

Escriba lo siguiente línea por línea y luego presione Entrar (Retorno) al final de cada uno:

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

Cuando termines, LIST el programa para verificar que lo haya escrito correctamente.

los "10 IMPRIMA '¿CUAL ES SU NOMBRE?'," "20 ENTRADA N $," y "30 IMPRESIÓN "HOLA, "; N $" comandos emitidos por el "LISTA" comando en Apple II.

Siguiente tipo RUN y presione Enter (Retorno) para ejecutarlo. El programa le pedirá información con un signo de interrogación ( ? ). Escriba su nombre y presione Entrar (Retorno) para responder la pregunta.

El programa de nombres que se ejecuta en BASIC en Apple II.

Como una especie de magia oscura arcana, ¡el programa sabía tu nombre y te respondió! ¿Cómo funcionó? Echemos un vistazo a cada línea:

10 PRINT "WHAT IS YOUR NAME?"
20 INPUT N$
30 PRINT "HELLO, ";N$
  • Línea 10: El programa mostró una línea de texto en la pantalla. Cada línea de texto que quieras PRINT debe estar entre comillas.
  • Línea 20: El programa pide INPUT de usted y almacena el resultado en una variable llamada N$. El signo de dólar es la abreviatura de «cadena». Cada variable que incluye letras debe ser una variable de tipo cadena.
  • Línea 30: El programa mostrado Hello, seguido de una coma y un espacio, y luego imprimió el contenido de la variable N$. El punto y coma le dijo al programa que imprimiera N$ en la misma línea sin insertar un salto de línea.

Raspando la superficie

Una ilustración de personas que utilizan computadoras Apple II del "Applesoft BASIC Manual" publicado en 1978.

Ahora que ha probado BASIC en el Apple II, puede decirles a todos sus amigos que ha programado una computadora antigua. De hecho, incluso puedes decir Steve Wozniak en Twitter.

Si desea profundizar más en Applesoft BASIC, le recomendamos este maravilloso tutorial en línea de Yuri Yakimenko. Entra en muchos más detalles de los que tenemos aquí. Tambien esta esto práctica referencia rápida de los comandos de Applesoft BASIC.

Un escaneo completo del Manual de programación básica de Apple II a partir de 1978 también está disponible. Entra en detalles sobre cómo guardar y cargar sus programas.

Se han programado miles de juegos y aplicaciones increíbles en Applesoft durante los últimos 42 años, por lo que el cielo es el límite de lo que puede hacer con él. (En realidad, la cantidad de RAM en su máquina es el límite, pero eso es mucho menos poético).

Para todos los veteranos de Apple II, nos encantaría escuchar sus historias sobre el uso de BASIC en los comentarios. ¡Feliz programación!

Artículos Recientes

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir arriba