https://create.arduino.cc/projecthub/da ... tor-3594a6
Usando un Arduino Mega o Due (mejor este último), es fácil montarse un Altair 8800 con todas estas características:
Highlights
Accurately reproduces the behavior of the Altair's front panel elements.
Runs at about the same speed as the original Altair 8800 (when using Arduino Due) or 25% original speed when using Arduino Mega.
Emulated RAM size is 64KB (Due) or 6K (Mega)
A number of Altair programs are included and can easily be loaded into the emulator, including Pong, Altair 4K BASIC (the first Microsoft product), Altair extended BASIC, MITS Programming System II (Due only), Altair Time Sharing BASIC (allows multiple users to use BASIC at the same time).
BASIC and Assembler example programs are included in the emulator software and can easily be loaded into BASIC/Assembler.
Emulates one 88-SIO, 88-2SIO and 88-ACR (audio cassette recorder interface) board. Each simulated serial device can be mapped to an Arduino's serial interface. By default, the two most common (88-SIO and 88-2SIO port 1) are mapped to the Arduino's main serial port at 115200 baud 8n1, which can be accessed via the USB cable. I recommend connecting a serial-to-Bluetooth dongle to the RX/TX serial pins. That way any bluetooth-enabled device can serve as a terminal for the Altair.
On the Arduino Due, both the main serial interface (USB) and the Serial1 interface (pins 18/19) can be used simultaneously.
Data sent to each serial device (including the ACR tape) can be captured and replayed in up to 256 files which are kept in the Arduino's local storage (EEPROM or FLASH).
The cassette interface supports using the CSAVE/CLOAD commands in extended BASIC (support is automatic with no user interaction required). Great for developing your own BASIC programs!
Emulates up to 16 88-DCDD disk drives (4 in default configuration). Disk drive emulation is optional but requires hooking a SD card up to the Arduino's SPI header. Only supported when using Arduino Due.
Emulates a 88-RTC-VI board with real-time clock and vector interrupt handling. This makes it possible to run Altair Time Sharing Basic.
256-byte pages of memory can be saved to permanent storage and loaded back to memory. This provides a simple way of saving programs entered via the front panel switches.
Many settings can be easily changed via the integrated configuration editor.
Vamos, diversión para rato. Si usamos la opción de elegir un Arduino Due, tenemos a todos los efectos un clon al 100% del Altair 8800, ampliado a tope e incluso con unidades de disco virtuales, que hacen posible que pueda ejecutarse cosas como CP/M.
Fijaos si la simulación es buena a nivel hardware, que hasta provoca las mismas interferencias de radiofrecuencia que el Altair original, pudiendo hacer cosas como cargar un programa musical (hay un ejemplo con la famosa canción "Daisy" de HAL9000 en la peli 2001) y escuchar la melodía al poner una radio en AM cerca del aparato.
Y lo mejor, que los componentes son bastante asequibles, todo el montaje puede hacerse por unos 50€ como mucho
