User Tools

Site Tools


proton:raspi_setup

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
proton:raspi_setup [2016/06/18 07:29] – created sethproton:raspi_setup [2019/01/28 06:58] seth
Line 1: Line 1:
-** Experimental and for linux pros only **+** Compiling Proton and its examples on the Raspberry Pi with GL ES **
  
-These steps are what use to compile stuff by copying things from my Windows computer.  A normal user would probably just grab the svn tree.+As a base, started with RetroPi (the image from 7/28/2018) on a Raspberry 3 B.  I should try it with a vanilla Raspbian Stretch install and see if that works too.
  
-Steps:+Update on Jan 28th 2019:  I did try this with Raspbian Stretch 4.14, you need to run these commands first to get it working:
  
-* Install linux tools for Windows, rsync and ssh should work from the command line +<code bash> 
-* Setup a ssh key pair so you don't have to type passwords +sudo apt-get install git 
-* Edit SetupVars.bat and edit the IP to the pi +sudo apt-get install cmake 
-* Install development tools on the pi (sudo apt-get update && apt-get install build-essential) +sudo apt-get install libsdl2-2.0-0 libsdl2-dev 
-* Run CopyStuffToPi.bat There should now be a ~/proton tree on the pi +</code>
-* RTBareBones/CopyStuffToPiAndCompileLoop.bat and it should update that example and compile it in a loop+
  
 +Also, I think the GL driver needs to be set to "Legacy" to work, which is the default, but worth mentioning if you've changed it using raspi-config.
  
-If you look at the RTBarebones/linux dir you'll see the CMakeLists.txt file autodetect the pi and sets up GLES 1.1 headers stuff for it.+---- End Raspbian stretch part ---- 
 + 
 + 
 +First install Proton and compile its RTPack utility: 
 + 
 +I ssh'ed in and did: 
 + 
 +<code bash> 
 +cd ~ 
 +git clone https://github.com/SethRobinson/proton.git 
 +</code> 
 + 
 +Now let's build Proton's RTPack utility, will come in handle later. 
 + 
 +<code bash> 
 +cd ~/proton/RTPack/linux 
 +sh linux_compile.sh 
 +</code> 
 + 
 +Now let's compile and run RTBareBones: 
 + 
 +<code bash> 
 +cd ~/proton/RTBareBones/linux 
 +sh linux_compile.sh 
 +cd ../bin 
 +./RTBareBones 
 +</code> 
 + 
 +If that worked, enjoy the spinning triangle and text stretching! 
 + 
 +Now let's do RTSimpleApp, same thing but it needs SDL2_mixer for its audio, so let's get that installed: 
 + 
 +<code bash> 
 +sudo apt-get install libsdl2-mixer-dev 
 +</code> 
 + 
 +Great.  Now we compile and run like before, but we're adding a step - compiling media with the RTPack utility. 
 + 
 +<code bash> 
 +cd ~/RTSimpleApp/linux 
 +sh linux_compile.sh 
 +cd ../media 
 +sh update_media.sh 
 +cd ../bin 
 +./RTSimpleApp 
 +</code> 
 + 
 +If that worked, enjoy the app.  If it didn't... off to the forums and yell at Seth! 
 + 
 +=== State of Proton on the Pi === 
 +  - It runs fullscreen only both in or out of the desktop environment 
 +  - No mouse or keyboard input (SDL isn't doing its job, see below) 
 +  - Video acceleration works, audio works (see my [[https://www.youtube.com/watch?v=bk6jVk7t4i4|Atari PaperCart project]]) 
 + 
 +SDL apparently can be tweaked to actually work with mouse and keyboard input but it requires some tricky stuff [[https://hg.libsdl.org/SDL/file/093b58f5de3c/docs/README-raspberrypi.md|last I checked]].  Might be easier for Proton to just do its own input handling via libudev/libusb or something, not sure.
proton/raspi_setup.txt · Last modified: 2023/12/03 06:42 by seth