Marshmallow Entertainment System

All work and no PLay ma es Jack a dull boy.
All work and no play makes Jack a dull bot.
All work and NO play makes JACa dull boy.

Doesn’t it, though?  There are some very nice gaming projects about at the moment so without further ado I declare that Wednesday 14th November is Raspberry Pi Gaming Day!

The first project is a Raspberry Pi-based games console built by gamaral. It uses his Marshmallow Game Engine and a custom buildroot distro:

Marshmallow Game Engine started as a way for me to keep my cross-platform game engine chops up during my spare time (not that I have that much spare time mind you). But with the advent of both powerful and affordable hardware like the Raspberry Pi, I started looking into creating my own game console again, and I have to admit, I’m very excited.”

We are too: it’s chock full of splendid retro gaming goodness. And the boot time is phenomenal. When I watched it this morning, I lost a gobful of Grape-Nuts into the shagpile as my jaw hit the floor:

Unless you have nictitating membranes you may miss this. 

The prototype MES has a custom board to deal with power cycling. This adds to the cost, but gamaral suggests that if these are produced in numbers then they could come in at a couple of dollars.

Power cycling hardware for the MES

The MES power cycling hardware

You can find more details and a video of the MES in action on gamaral’s MES page, and hardware specs and source code on his github account.


mahjongg avatar


MattPurland avatar

That OS boot up time is ridiculous! I’ll definitely be looking into using the OS in my project (a handheld games console similar to the GBA).

If only there was a RasPi powered LCD screen… *cough*

mahjongg avatar

The foundation is busy with that (an interface, so that you can use raw LCD panels with the PI).

Ade avatar

I’d love a portable Pi…Pimoroni guys please do this kind of thing before the Picade :(

@Clive – respect to the mention of Grapenuts :)

MattPurland avatar

Yeah I know, I just wish they’d hurry up ;)

Temia Eszteri avatar

Impressive. I wonder how well it works in an arcade setting – moreover, whether arcade-specific functionality will be added.

Guillermo A. Amaral (@gamaral) avatar

I’m actually building a cabinet controller for it, I will need to start working on an arcade style demo for it too. :)

Peter Akerboom avatar

Is there a compiled image for this?

Guillermo A. Amaral (@gamaral) avatar

There is, it’s in the downloads section:

It might seem to take longer since I set it up to do the network setup and ntp during boot (I’m handling that as a background process in the video so the game engine can start first).

Guillermo A. Amaral (@gamaral) avatar

If you have any questions, I’m usually around on IRC #marshmallow_h @ freenode

toxibunny avatar

That is an amazingly fast boot. I wish I understood how to use this…

Guillermo A. Amaral (@gamaral) avatar

What do you want to use it for? maybe I can help :)

toxibunny avatar

Thanks, but it’d be a waste of time. The page is completely foreign to me – I don’t know how to use git, I don’t know how to run something ‘from project base’, I don’t know what cgl or Xcode even *are*, I’ve never used visual studio, I don’t know what a toolchain is, and I don’t know why an env file would be important.

Good job with the engine though – I’ve seen it kicking about youtube for a while now in various stages of development, and it’s cool to see it on the raspberry pi :)

paddywooff avatar

my contribution to pi gaming day:

running on vanilla pi in clunky python but in 3d
see forum/programming/python/pi3d
some basic physics is built into the map and generating it is as simple as drawing a greyscale image!

3vix6 avatar

I’m working on creating a project a lot like this. Most of what I’m working on right now is the operating system side of it. It’s mostly a learning experience for me than anything.

Very cool that someone else saw the same thing that I did when looking at the Raspberry Pi. :-)

Guillermo A. Amaral (@gamaral) avatar

Yeah, I was looking for a good platform for years, the RPI fit the bill perfectly, it even has composite out! \o/

Gluten Free Hampers avatar

Well, you have a quite good techniques that really helped in this kind of works. Marshmallow game engine is really fascinating.

Łukasz avatar

That is some awesome project. I am working on something similar to this. Would you mind explaining how does the attiny board knows when is the system on rpi rdy to be shut down? Is there an app running on the pi sending feedback through gpio?

I would be gratefull for any explanations.

Guillermo A. Amaral (@gamaral) avatar

The current version pretty much does what you say, two pins, one to signal the attiny when the rpi has finished booting, the second to tell the rpi to power off. A script runs on the Pi handling both events.

I’m working on a more complex solution using USI/SPI so I can send debug messages back to the power board.

Łukasz avatar

That would be great.
I am also developing a semi project atm and i thought to send those signals through rs232, but spi is also a great solution.
Im looking forward to your projects, your doing a great work!

Comments are closed