2014-10-18 11:32:33 +00:00
r65emu
======
2021-02-18 15:19:46 +00:00
Arduino emulation library for 8-bit microcomputers based on 6502, i8080 and z80.
2014-10-18 11:39:53 +00:00
2023-07-28 12:37:55 +00:00
Sample Applications
-------------------
- [Apple-1 ](https://github.com/jscrane/Apple1 )
- [CPM-80 ](https://github.com/jscrane/cpm80 )
2023-07-27 14:09:05 +00:00
- [Space Invaders ](https://github.com/jscrane/invaders )
- [Pacman ](https://github.com/jscrane/pacman )
- [Commodore PET ](https://github.com/jscrane/PET )
- [Compukit UK101 ](https://github.com/jscrane/UK101 )
2023-07-28 12:37:55 +00:00
Configuration for Arduino
2023-07-27 14:09:05 +00:00
--------------
If building using the Arduino IDE, `r65emu/hw/user.h` must be configured correctly.
Currently the only mass-produced board which is supported is the
[LilyGO TTGO ](https://www.tinytronics.nl/shop/en/development-boards/microcontroller-boards/with-wi-fi/lilygo-ttgo-vga32-esp32 ).
Examples are also given for a generic `node32s` board and a homebrew `esp8bit` board.
Copy your configuration file to `user.h` . If the board is also mass-produced, please open a PR to add the new file to the library.
2023-07-28 13:39:09 +00:00
Some emulations require a filesystem image containing programs to be uploaded:
- On esp32, this [arduino plugin ](https://github.com/me-no-dev/arduino-esp32fs-plugin ) is required for that
- On esp8266, this [arduino plugin ](https://github.com/esp8266/arduino-esp8266fs-plugin ) should be used
- Alternatively an SD card can be used.
2023-07-28 12:37:55 +00:00
Libraries
2014-10-18 11:39:53 +00:00
---------
2023-07-27 14:09:05 +00:00
2023-07-28 12:37:55 +00:00
Display
2023-07-27 14:09:05 +00:00
--------
Depending on target board, one of:
- [My port ](https://github.com/jscrane/UTFT-Energia ) of Henning Karlsen's [UTFT library ](http://www.rinkydinkelectronics.com/library.php?id=51 )
- [TFT_eSPI ](https://github.com/Bodmer/TFT_eSPI )
- [FabGL ](https://github.com/fdivitto/FabGL )
2023-07-28 12:37:55 +00:00
Storage
2023-07-27 14:09:05 +00:00
--------
These are optional if the target board supports it (e.g., esp8266 or esp32 boards):
- [Rei Vilo's port ](https://github.com/rei-vilo/SD_TM4C ) of Adafruit/Sparkfun's [SD library ](https://github.com/adafruit/SD ),
- [My port ](https://github.com/jscrane/SpiRAM ) of Phil Stewart's [SpiRAM library ](http://playground.arduino.cc/Main/SpiRAM )
2023-07-28 12:37:55 +00:00
Input
2023-07-27 14:09:05 +00:00
------
- [PS2Keyboard ](https://github.com/jscrane/PS2Keyboard )
2014-10-18 11:39:53 +00:00
2023-07-28 12:37:55 +00:00
Hardware
2014-10-18 11:39:53 +00:00
---------
2023-07-27 14:09:05 +00:00
- A [Stellaris Launchpad ](http://www.energia.nu/Guide_StellarisLaunchPad.html ) _or_
ESP8266 board, e.g., [WeMOS ](https://www.wemos.cc/en/latest/d1/d1_mini.html ), _or_
ESP32-based board, e.g., [Node32s ](https://www.esp32.com/viewtopic.php?t=459 ),
2018-09-06 09:53:16 +00:00
- An SD drive to store programs (for Stellarpad),
- A 23k256 SPI RAM chip (for Stellarpad, optional),
2014-10-18 11:39:53 +00:00
- A supported TFT screen, such as [this one ](http://forum.stellarisiti.com/topic/626-ssd1289-32-320x240-tft-16bit-parallel-interface-touch-libraries/ ),
- A PS/2 keyboard.