libretro / libretro/RetroArch

[Feature Request] Is it possile to support "makecode arcade engine" ???

Open
#13,738 2 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Is it possile to support "makecode arcade engine" ???
So that we can play game on retro, not special hardware console.

From https://arcade.makecode.com/hardware/adding
"
MCU
MakeCode Arcade currently only targets ARM Cortex-based MCUs, and we have only tested Cortex M4F.

The Arcade display resolution and colour depth requires 160x120x4 bits for a display buffer, taking a little under 10kB. We need at least two sets of display data for double-buffering and the user is very likely to use two or three more for various sprite operations. This, together with heap fragmentation concerns, requires the hardware to have at least 96kB of RAM. Programs with heavy memory requirements may only run if there is more than 96kB of RAM. In addition 512kB of flash and a processor speed of at least 64MHz or more are recommended.

We currently support two hardware variants which match the above criteria:

D51 based on Microchip ATSAMD51G19A (Cortex M4F, 192kB of RAM, 512kB of flash, 120MHz)
F4 (formerly F401) based on one of the ST Micro STM32F4xx chips:
STM32F401xE (Cortex M4F, 96kB of RAM, 512kB of flash, 84MHz)
STM32F411xE (Cortex M4F, 128kB of RAM, 512kB of flash, 96MHz)
STM32F412xE (Cortex M4F, 128kB of RAM, 512kB of flash, 96MHz)
STM32F412xG (Cortex M4F, 256kB of RAM, 1024kB of flash, 96MHz)
The STM32F41x series is listed to run at 100MHz, but to support USB we need to run them at 96MHz. We support 48 pin and larger packages. Only STM32F412 in 64 pin and larger packages support a parallel display interface, which is required if you want to use an ILI9341 320x240 display (see display).

Additionally, we’re considering adding support for the following in the future (but not in the next 6 months):

N840 based on Nordic NRF52840 (Cortex M4F, 256kB of RAM, 1024kB of flash, 64MHz)
Of course, many other choices are possible and we would love to hear your feedback.

"

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing RetroArch's existing support boundaries alongside the MakeCode Arcade hardware requirements linked in the issue. Determine which RetroArch entry points and platform layers would need to support the engine, then confirm that a MakeCode Arcade game can run and be played without the original hardware.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, game-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.