Log In  

I've tried a few guides to try and make a quick booting PICO-8 cartridge for RetroFlag GPi Case (https://www.retroflag.com/GPi-CASE.html), most of them seem outdated and not completely easy IMHO.

I'm pretty familiar with LAKKA (https://www.lakka.tv/) - a retroarch distro that supports plenty of devices and is based on OpenELEC, so uses a very lightweight quick booting goodness.

So, here goes a small guide:

  1. Download a compatible LAKKA image for the GPi-Case: (https://le-builds.lakka.tv/GPICase.arm/Lakka-GPICase.arm-3.2.img.gz) OR a later one if this post gets too old.
  2. "burn" the image to a micro-sd (16Gb should be more than enough).
  3. Put it back in the GPi-Case and let it boot at least once so that it can resize the partition.
  4. Once booted and in retroarch, goto Settings -> Services -> Enable SSH
  5. Still in Settings, goto Wifi, and connect to your local Wifi.
  6. Go back to the main menu, and select Information -> Network to view the IP address you got.
  7. Login via SSH from your PC (root/root).
  8. Run the following:
    mkdir /storage/roms/pico-8
    cd /storage/roms/pico-8
  9. Download the pico-8 pi binary (if you bought it, you should have the URL):
    'wget https://www.lexaloffle.com/dl/xxxxxx/pico-8_0.2.2c_raspi.zip'
  10. run this command: unzip ./pico-8_0.2.2c_raspi.zip
  11. create a runscript for pico-8:
    nano /storage/roms/pico-8/run_pico8.sh
  12. paste the following into the script:
    #!/bin/bash
    SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so /storage/roms/pico8 -splore -preblit_scale 6 -draw_rect 32,0,256,240 -pixel_perfect 0
  13. create a systemd service file for pico-8:
    nano /storage/.config/system.d/pico8.service
  14. paste the following into the systemd service:
    [Unit]
    Description=Pico-8
    After=gpicase-safeshutdown.service
    ConditionKernelCommandLine=!pico=0
    [Service]
    Environment=HOME=/storage
    ExecStart=/storage/roms/pico-8/run_pico8.sh
    KillMode=killall pico8
    TimeoutStopSec=10
    Restart=always
    RestartSec=2
    StartLimitInterval=0
    [Install]
    WantedBy=multi-user.target
  15. Enable the service systemctl enable pico8.service
  16. poweroff the gpi, and insert the micro-sd back into your PC.
  17. disable retroatch by editing cmdline.txt and adding the following to the end of the boot= line:
    retroarch=0
  18. That's it. put the micro-sd back in the cart, and it should boot straight into PICO-8 splore mode.

If in the future, you want to switch back to retroarch:
remove the retroarch=0 and add pico8=0 to the end of the boot= line in the cmdline.txt file.

P#95561 2021-08-01 19:33 ( Edited 2021-08-01 20:08)

I might actually try this. Thanks.

P#99013 2021-10-22 01:43

Thanks for the tutorial, it actually works and is not so slow booting :)

P#99700 2021-11-06 18:09
:: Floppe

I am not having any luck here... I just get a long loading screen ending with !Reached target Retroach" and then nothin else happens. Any suggestions?

P#100365 2021-11-18 20:19
:: TijnF

I am running into issues as well. Followed the tutorial to the letter (4 times), but keep ending up with a Lakka bootscreen.
Using the latest Lakka (3.6) did not help and making run_pico8.sh executable didn't fix it either.
I did notice a wrong path in run_pico8.sh
SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so /storage/roms/pico8 -splore -preblit_scale 6 -draw_rect 32,0,256,240 -pixel_perfect 0

though, and changed it to

SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so /storage/roms/pico-8 -splore -preblit_scale 6 -draw_rect 32,0,256,240 -pixel_perfect 0

But that didn't help a bit...

What am I doing wrong?

P#100957 2021-11-28 20:43 ( Edited 2021-11-28 20:43)
:: Tarik

Thanks for the guide. Man I hope so much that FAKE-08 just gets a Libretro core so we just won't have to mess around with this on any device.

P#112833 2022-06-07 09:09

Soooo, I just noticed that there is a little issue with the paths. Other than that the instructions pretty-darn-good.

Here is what needs to be changed.

0. Be in the right place

Change your directory to /storage/roms/pico-8

cd /storage/roms/pico-8

1. Flagging the script as executable

The run_pico8.sh script must be an executable. The fix is just running the command below

chmod +x run_pico8.sh

2. Fix path in the script

When you download and unzip the file, it'll end up in the /storage/roms/pico-8/pico-8/ directory. Notice the double pico-8 situation we got here. So, we need to correct the path in the script.

Start editing the script

nano run_pico8.sh

Copy and paste the following content.

#!/bin/bash
SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so /storage/roms/pico-8/pico-8/pico8 -splore -preblit_scale 6 -draw_rect 32,0,256,240 -pixel_perfect 0

3. Enjoy

Ja, that's about it.
I've been enjoying it y'all. Thanks @duduke!

-1. A note from concerned by stander

Default username/password for lakka is root/root. Strange thing that is. Right before you go to splore, you leave ssh on. Concerning thing that is. If you are thinking of using the raspberry pi zero as a safe heaven for your precious information, or not, you may want to disable ssh either before turning off retro arch for the last time or by typing this spell systemctl disable sshd to the terminal.

P#113855 2022-07-01 05:34

To be quite honest, this tutorial works. Really. The only thing is that I might be changing apartments soon-ish. So, this isn't really a portable solution. Especially when you no longer have access to an interface to set up wifi on your GPi Case.

Long story short, I might end up losing connection to the BBS because I won't have WiFi for a bit and when I do set up wi-fi at my new apartment, I won't be able to get my GPi Case to access it.

It's probably a good thing I won't move for a little while I guess.

P#117733 2022-09-20 21:25
:: merwok

why couldn’t you configure wi-fi settings in another place?

> this isn't really a portable solution

this post is about software setup to run pico8 on a specific device, it is not responsible for the reality that local wireless networks are different in every place. maybe I’m not understanding something!

P#117741 2022-09-21 00:27

@merwok What I mean to say is that...I had to connect to my current wi-fi beforehand so I can ssh into my GPi Case. Plus, I'm not sure if I can just simply make a "wpa_supplicant.conf" and put it into the boot partition of the Lakka card just to change the wifi to wherever I end up at.

On that note, I may have disabled ssh after I turned on the "pico8.service" thing. Mostly because a commenter mentioned that disabling "sshd" for security reasons. Not sure what though.

P#117775 2022-09-21 21:15

[Please log in to post a comment]

Follow Lexaloffle:        
Generated 2022-10-06 13:18:44 | 0.044s | Q:23