Updated Retron 77 (markdown)

Christian Speckner 2018-07-11 23:12:36 +02:00
parent 331957dbf6
commit 2977856867
1 changed files with 56 additions and 3 deletions

@ -1,5 +1,58 @@
The Retron 77 is a retrogaming VCS clone released by [Hyperkin](https://www.hyperkin.com) that runs Stella. It has a HDMI connector and is controlled via original 9-pin controllers. The R77 has a cartridge port used for dumping original cartridges for playback (thus recreating a vintage plug-and-play experience), but can also run ROM images from an included Micro SD cart.
* [[Hardware breakdown|R77 hardware]]
* [[Firmware analysis|R77 software]]
* [[Hacking the device|R77 hacking]]
# Hardware
## Overview
The R77 contains the following hardware
* Allwinner H3 quad core ARM SOC (clocked at 1GHz in the stock firmware)
* 128GB RAM
* A Weltrend WT51F104S MCUs that drives the cartridge dumper (connected via UART)
* Another WT51F104S that drives the front panel with the joystick ports (connected via I2C)
* SD card slot
* Micro USB connector (for power only)
There is no onboard flash memory.
## Board shots
### Main board
### Front panel daughterboard
## UART
There is a single UART header on the mainboard that can be used to obtain a serial console to both the U-Boot bootloader and the Linux system running on the device.
# Software
## Overview
Both an image of the included SD card and a tarball of the source and development environment can be downloaded from [Hyperkin](https://www.hyperkin.com/r77). The system is an embedded linux system build around the Armbian Linux 3.4.113. Apart from the kernel, the system shipped by Hyperkin contains the following components:
* Busybox
* SDL 1.2
* ALSA
* Glibc
* Stella 3.7.5
and several more support libraries.
## Components
### Stella
The stock firmware uses an almost unmodified version of Stella 3.7.5 for emulation.
### SDL 1.2
Both Stella and Hyperkin's UI use SDL 1.2 for video and audio. SDL runs directly on top of the linux frame buffer without any hardware acceleration.
### UI
The source for Hyperkin's UI is included in the source drop and links against SDL 1.2 and Freetype.
### Dumper
The cartridge port is driven by the WT51F104S MCU on the main board. The dumper code runs directly on the MCU; the dumper process in linux communicates with the MCU via one of the H3's UARTs. The dumper polls the MCU for cartridge changes (insert and remove). If a cartridge has been inserted, the dumper process tries to read the image from the MCU. As the MCU has only 256 bytes of RAM, the image is read and transferred on the spot.