I know that the Raspberry Pi can do either of these things, but can it do both?

I am aware that there is an OS flavor(?) RetroPie that specializes in retro gaming. But then can it still do other things, like run scratch?

I also understand that Scratch is included with Raspbian. But will there be any issues running the emulator MESEN?

Whichever solution, it should be able to accept game controllers, for use both with MESEN and Scratch - preferably PS4 controllers via Bluetooth (or at least a USB gamepad).

2 Answers 2


There are different ways to go about doing what you wish. The question is, what exactly it is you want to do.

  1. Of course, you could install a "general purpose" OS. On it, you could install both a software to do retro-gaming and one to do programming—whichever those might be. After all, that's basically what an OS is for.

    In this case, I would suggest to ensure beforehand that all software you wish to run is compatible with the OS: With such a setup, you could basically install all programs you might want (as long as the OS supports the hardware and the software is supported by the OS).

    The drawback here is that you would have to set up and configure more things by yourself, since the OS isn't particularly optimized for any specific use-case.

  2. You could install a "specialized" OS to do one (and usually exactly one) thing: Ideally, that thing would work particularly well and/or be especially easy to set up. Normally, not only is the software side highly specialized, but also the hardware side.

    For retro-gaming on a Raspberry Pi, RetroPie and Lakka come to mind. While there are plenty of other of such specialized OSes for use cases / platforms, none come to my mind for programming. I guess you could just take any on which Scratch run on.

  3. If you choose to have "separate" systems for separate purposes, you could very easily install one OS on one SD-card and the other on a different one: Think of it like a gaming system where you have one disk/cartridge per game you play!

    It's easy to set up and avoids any kind of conflict; the drawback being that you have to physically switch cards when you want to change task.

  4. Alternatively to 3., you could set up a multi-boot system. On a basic level it would to what 3. does without the hassle of changing cards (at the expense of needing more storage on that single card): On each boot, you would be asked which system should be loaded.

If hardware compatibility is given, then it is possible to connect game controllers and bluetooth devices. As to how easy it is to set up, it varies wildly: You can expect highly specialized OSes to make it easier (by e.g. bundling drivers, firmware, software to set them up, …) to get it working. Still, also more general purpose OSes should be able to work with them—though it admittedly might be tedious to get everything running as you want to.


I've found two solutions that look promising:

(1) A hardware-based solution: Dual-booting to two operating systems using a 2 in 1 Dual Micro SD Switcher.

(2) A software-based solution called BerryBoot, to make booting to two or more operating systems easy. (Pi 4 version recently added.)

This way Scratch and other software can be used in Raspbian, and gaming can be done in RetroPie.

While (at the time of this writing ) there isn't yet an official release of RetroPie for the Pi 4, it can apparently be made to work.

Also, while I believed I would need Mesen to play new Mapper 30 NES games, I haven't been able to verify whether it can be installed on Raspbian or not. The good news is that it probably isn't necessary, because it appears from this thread that RetroPie now supports Mapper 30.

Furthermore, I have found a list of game controllers that can be used with RetroPie. So everything points to dual-booting as the ideal solution.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.