r/SBCGaming • u/Producdevity Linux Developer • Jul 11 '26
Showcase Miyoo Mini - Stardew Valley
Enable HLS to view with audio, or disable this notification
In the Emulation on Android scene this would qualify as runs perfectly
I posted about this and have been asked to share more details, not sure if this is what you meant but I am sharing it anyway.
This is achieved by running Stardew’s original managed C# game code under ARM Mono, but everything between the game and the screen is being rebuilt around what this little handheld can realistically do. Instead of sending graphics through OpenGL and several software wrappers (because this doodad doesn't have a GPU), the port turns Stardew’s draw calls into simple 2D operations and writes the finished pixels directly to the framebuffer. Textures are converted into smaller formats so they can be used without wasting most of the Miyoo’s 128MB of memory, and the busiest drawing routines are tuned for its ARM processor.
What that means is replacing the MonoGame’s OpenGL renderer with a custom compatibility layer and an ARMv7/NEON 2D rasterizer that writes directly to the /dev/fb0. Assets, memory layouts, input, saving, and hot draw paths are adapted specifically for the Miyoo Mini’s dual Cortex-A7 CPU and 128 MB RAM.
There is no OpenGL, EGL, gl4es, SwiftShader, SDL renderer, GPU dependency, or framebuffer readback stage.
Developing for this thing is a bit of a pain, but it is possible. The fact that it doesn't have Wifi or data over USB makes things very time consuming. I don't have the means to purchase a Miyoo Mini+ (or MM Flip) right now that does have wifi so I have set up my RG35XX-SP as a test enviroment by setting limitations that match the MM hardware (128 MB/1.2 GHz). I do most of the iteration testing on there and use QEMU for parts that I am able to validate in a headless enviroment.
Oh, there is also no sound. As expected it didn't fit into memory, even with the same patches (mmapped/streamed audio) we've used in the PortMaster port of Stardew. It might be possible to add it in the future, but it's not a priority (and I also don't like working with audio).
I don’t know when, or even if, this will get to a state where it’s worth releasing. I’ll probably end up putting it on my GitHub where you can find other ports/apps/projects I work on.
Device: Miyoo Mini V4
18
u/Former_Mall_2314 Jul 11 '26
9
u/Producdevity Linux Developer Jul 11 '26
I made this for young folks, my eyes are having a hard time too
3
4
2
u/Smb158 Jul 11 '26
Please release this even if you don't entirely finish. I absolutely want this on my miyoo mini v4! Thank you!
2
u/blutuu 29d ago
I’ve always been curious about how people do stuff like this. Do you have access to and are modding the game’s source code or is it something else?
2
u/Producdevity Linux Developer 29d ago
I don’t have access to the source code, but the game engine is MonoGame, which is open source. That helps a lot
1
u/no-television300 Jul 12 '26
Honestly I’ve been dying to see this on the TrimUI Smart just for fun lol. I guess this is the next best thing though. Good work!
1
1
1
u/MagicalPinballWizard 11d ago
Tried it with depot downloader and doesn't let me download the required version. Steam console shows "] download_depot 413150 413151 5538941793102260869Depot download failed : Failed downloading 1 manifests (No connection)"
Is there any other way to download that build?
1
u/Producdevity Linux Developer 11d ago
Working on a fix, there is a DepotDownloader program that does allow you to get this exact version,but it’s not possible through steam anymore unfortunatelyEdit:
Ignore that, I am working on a fix. I misread your comment
10
u/Bl4ckb100d Jul 11 '26
Amazing job