Emulador de MOS KIM-1 con Arduino UNO R3

El MOS KIM-1 es para muchos un desconocido pero, sin embargo, es fundamental en la historia de la informática y lo fue, en su momento, para el liderazgo del 6502 en el mercado de los microprocesadores de 8 bits.

En este artículo vamos a emular un MOS KIM-1 sobre un Arduino UNO R3.

Sobre el MOS KIM-1

El MOS KIM-1 (Keyboard Input Monitor) es uno de los primeros ordenador de placa única de la historia. Se lanzó en 1976 como plataforma de aprendizaje del procesador 6502. Fue la inspiración del Commodore PET y del Apple I.

Su arquitectura hardware era muy sencilla, va en un 6502 a 1MHz, 1 KB de RAM integrada en dos chips 6530 RRIOT, los cuales también llevan ROM, E/S y temporización.

Entorno e instalación del emulador

Elementos

Vamos a necesitar el siguiente elemento:

  • Arduino UNO R3.

No vamos a disponer ni de la pantalla ni del teclado del MOS-1, aunque se podría adaptar, por lo que nos restringiremos a la conexión vía puerto serie.

Instalación

Vamos a descargar el código fuente del emulador KIMuino desde GitHub en nuestro directorio de trabajo:

$ git clone https://github.com/maksimKorzh/kimuino.git

Nos basta con abrirlo en nuestro IDE de Arduino y subirlo.

Emulación

Una vez realizada la subida del emulador, entramos vía terminal al puerto serie de Arduino.

$ minicom -D /dev/ttyUSB0 -b 9600

Vemos el mensaje del sistema con el nombre de la placa, lo que implica que estamos en su monitor ROM.

Monitor ROM

Comenzaremos navegando por la memoria, de modo que escribimos los cuatro dígitos de la dirección correspondiente más espacio y se nos muestra su contenido. Si pulsamos [Intro], nos mostrará el contenido de la siguiente dirección de memoria. Comprobamos que al llegar a $FFFF el contador vuelve a $0000.

BASIC

Podemos cargar el BASIC en ROM, para lo escribiremos la dirección de memoria donde está, 2000, espacio y G. Obtendremos el prompt de BASIC.

Se trata de una versión de TinyBASIC mínima que tan siquiera puede manejar cadenas. Nótese el mensaje de error al intentar pasar una cadena de texto.

No obstante, vamos a introducir un código sencillo.

10 LET X=1 20 PRINT X+0 30 LET X=X+1 40 IF X<6 THEN GOTO 20 50 END

Al ejecutar el programa con RUN, vemos que cumple su cometido.

Subida de programa desde papel

Podemos subir programas vía cinta de papel, correspondiente al formato PTF. Para ello, solo tomamos el archivo PTF de ejemplo y lo subimos vía el siguiente código Python.

import time, sys port = sys.argv[2] if len(sys.argv) > 2 else '/dev/ttyUSB0' paper = open(sys.argv[1], 'r').read() with open(port, 'w') as f: f.write('L\r') time.sleep(0.2) for c in paper: if c == '\n': f.write('\r') else: f.write(c) time.sleep(0.01) time.sleep(0.5) f.write('0200 G\r')

Así, desde línea de comandos ejecutamos este script.

$ python send.py hello.ptf

Veremos en el terminal la salida correspondiente.

Y, sí, era un «Hola mundo».

#1976 #MOS #MOS6502

📢 Travel discount for #ISMP2027 participants

Benefit from a 10% discount on Air France and KLM flights: https://ismp2027.mathopt.nl/img/travel/flyer_ismp2027_flight_discount.pdf

✈️ Reservations: July 25, 2026 – July 30, 2027
✈️ Departures: July 18–30, 2027
✈️ Returns: July 25, 2027 – August 6, 2027

🔗 https://ismp2027.mathopt.nl

#MOS

We are pleased to introduce ESCF as a diamond sponsor of #ISMP2027!

We are grateful for ESCF's support of the 26th International Symposium on Mathematical Programming.

🗓️ July 25–30, 2027
📍Amsterdam
🔗 https://ismp2027.mathopt.nl/

#MathematicalProgramming #OperationsResearch #SupplyChain #Optimization #MOS

I keep returning to exploring the secret life of the mosses. And as much as I love the bright greens and reds of this moss, I also really love it in monochrome. So until next time I share it in colour, here’s the softer secret life in greyscale.

#mosstodon #mossymonday #moss #mos #monochromemonday #monochrome #monochromephotography #bnwphotography #bnw #sorthvid #macromonday #macrophotography #macro #makro #bokeh #bokehlicious #nature #naturephotography #canonphotography #canon #tamron
Article only mentions that Mattell donated just $5K to Roger Sweet, doesn't talk about the $170-200M budget for the live-action He-Man movie coming this summer.
#RogerSweet created the He-Man franchise back in the '80s, now worth billions.
#capitalism #kills #Mattell #HeMan #SheRa #franchise #cartoon #film #comics #books #Filmation #animation #MOS #MastersOfTheUniverse #dementia #HealthCare #bankruptcy #hospital #insurance #coverage #denied #GoFundMe #donations
https://www.yahoo.com/entertainment/celebrity/articles/roger-sweet-creator-man-character-162004453.html
Roger Sweet, Creator of He-Man Character, Dies at 91

The designer died peacefully on April 28, his wife Marlene said

Yahoo Entertainment
The KIM-1 Programmer’s Guide to the MOS 6502
The KIM-1, 50 years old as of 2026, was the first 6502-based home computer, designed by the legendary Chuck Peddle and sold by MOS Technologies themselves. (Well, we're not sure if the Apple I or the KIM-1 was first. Or maybe it was the JOLT? As I've said before, there's always something you've
https://setsideb.com/the-kim-1-programmers-guide-to-the-mos-6502/
#retro #6502 #assembly #KIM1 #MachineCode #mos #ProgrammingManual #retro #tutorials
The KIM-1 Programmer's Guide to the MOS 6502

The KIM-1, 50 years old as of 2026, was the first 6502-based home computer, designed by the legendary Chuck Peddle and sold by MOS Technologies themselves. (Wel

Set Side B