Funcionalidades
Especificações de hardware, pilha de software e o que vem pré-instalado
Hardware
SoC Rockchip RK3326 (4× Cortex-A35, in-order dual-issue)
CPU 1416 MHz padrão · 1512 MHz com "Enable CPU Overclock"
GPU Mali-G31 MP2 (Bifrost), fixada em 650 MHz durante o jogo
DRAM 1 GB DDR3L @ 924 MHz
Display 640×480 MIPI DSI (43 revisões de painel cobertas)
Audio Codec RK817: alto-falante, jack de fone, áudio USB, áudio HDMI
Network WiFi 802.11n + Bluetooth (RTL/AP6611S/etc.), autodetecção
Battery 3200 mAh (rk817-battery + rk817-charger), aviso por LED em bateria baixa
Storage microSD (hot-swap suportado, imagem funciona em qualquer tamanho 8 GB+)Pilha de software
Kernel 6.12 LTS (fork BSP, autodetecção de placa via SARADC)
GPU driver Panfrost (padrão) ou libmali (toggle no ES)
├─ Mesa 26.0.5 com +speed +lto, otimizado para NEON
└─ zlib-ng para inflate/deflate via SIMD (zip de ROM 10–30% mais rápido)
Init systemd 255
Frontend EmulationStation
Backend RetroArch + 18 emuladores standalone
Shell bash + GNU coreutils (compatibilidade total com PortMaster)CMA: 96 MB (aumentado de 64 MB depois que um audit identificou que as alocações de V4L2/Mali estavam apertadas mesmo em idle).
ZRAM: 512 MB lzo-rle (escolhido em vez de zstd porque o Cortex-A35 in-order roda lzo-rle 3–4× mais rápido).
Emuladores pré-instalados
SNES, NES, GB/GBC/GBA, NDS, MD, MS, GG, PCE, NeoGeo, Atari (2600/5200/7800/Lynx/Jaguar),
WonderSwan, PC-FX, ColecoVision, Intellivision, Vectrex, ScummVM, DOS
PSX pcsx_rearmed (padrão), beetle_psx_hw, swanstation, duckstation (software)
N64 Mupen64Plus standalone (GLideN64 performance / Rice como fallback)
PSP PPSSPP standalone (frameskip 3, cap de FPS em 30, GLTHREAD on)
Dreamcast Flycast standalone (resolução 240, renderização threaded, GLTHREAD on)
Saturn yabasanshiro standalone (experimental no A35)
Arcade MAME 2003+, FBNeo, FBA-CPS1/CPS2/Neogeo
NDS DraStic (padrão), melonDS como fallbackNão incluídos no RK3326: GameCube, Wii, Wii U. O Cortex-A35 não roda esses jogos em framerates aceitáveis, então eles ficam ocultos do menu.
Painéis de display
43 overlays MIPI pré-gerados:
- 15 original (revisões R36S V20–V22, variantes OGS)
- 18 clone (K36, R33S, RX6S, R36 Max, múltiplas famílias de painel)
- 10 soysauce (hardware baseado em Y3506)
Os nomes dos overlays espelham exatamente a revisão da placa-mãe:
R36S-V21_2024-12-18_2551.dtbo
G80CA-MB_V1.3-20251212_Panel_8.dtbo
RX6S-2024_05_15-Panel_5.dtboO overlay de painel é selecionado pelo ArchR Flasher no momento da gravação. A mesma imagem funciona em qualquer placa de uma variante; só o overlay muda por painel.
Funcionalidades de rede
| Funcionalidade | Serviço | Padrão |
|---|---|---|
| WiFi | iwd + connman | auto-ligado se houver configuração |
| Áudio Bluetooth + gamepad | bluez | habilitado |
| Multiplayer local | RetroArch netplay | descoberta por UDP |
| Multiplayer remoto | Tailscale / ZeroTier / WireGuard | opt-in pela UI |
| Sincronia de ROMs/saves | Syncthing | opt-in |
| Servidor web | simple-http-server | opt-in |
| Samba (compartilhamento de arquivos) | smbd + nmbd + wsdd | opt-in |
| SSH | sshd | opt-in (toggle no ES) |
Todos os serviços "opt-in" são pausados automaticamente durante o jogo, para que não disputem ciclos de CPU com o emulador.
Linha do tempo do boot
0.0 s Início do U-Boot
0.7 s Splash do initramfs + seleção de DTB
~7 s Hand-off do kernel
~9 s Target do systemd
~12 s archr-autostart (quirks + governor + display)
~17 s EmulationStation
~19 s Pronto para jogarO primeiro boot adiciona uns 10 s para o resize de partição e cria os diretórios de ROM, somente no primeiríssimo power-on depois da gravação.
O que foi ajustado para o RK3326
Pontos altos do trabalho específico para RK3326 (lista completa em Técnico):
- GPU OPP 650 MHz turbo a 1.150 V (mesma voltagem do 600 MHz, evitando os 1.175 V do BSP original que eram instáveis em alguns chips)
- CPU OPP 1512 MHz a 1.400 V com
vdd_armregulator-max elevado para 1.45 V (o spec do RK817 DCDC_REG2 é 1.5 V máx) - Patch de PM no
mali_kbase: elimina os warnings de desbalanceio de regulador/clock que estavam causando estalos de áudio no Mario 64 - Partição BOOT 272 MB FAT32 com clusters de 4 KB (acima do mínimo de 65525 do spec + boot sector e backup auto-sincronizados)
rq_affinity=2na fila de I/O do microSD (a IRQ pousa no core que emitiu a requisição)- Scheduler BFQ com
low_latency=1eread_ahead_kb=2048