Vegz78 / McAirpos

MakeCode Arcade games in RetroPie, Recalbox 7/8 and Batocera, running natively as ELF executables on Raspberry Pi OS/Linux ARM with 1-2 gamepads

Home Page:https://Vegz78.github.io/McAirpos

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

McAirpos disappearing after reboot on Recalbox 8.0(unresolved, but working on 4 of developer's tests)

cfpwastaken opened this issue · comments

commented

Everytime I reboot my Recalbox 8.0 the icon for McAirpos gets removed for some reason, requiring me to go into the terminal and run the install script again. This is very bad for a portable game console if it is not portable anymore because you need a keyboard and internet to run the script. Tried using a Recalbox 7 image but i cant find it on the website.

~cfp

Hi @cfpwastaken,

Thanks for trying McAirpos and for your feedback!

I have not encountered this before while @rdmueller and I just recently made and tested the install scripts.

So, I need to think a little about this, and maybe try it myself on yet another clean install.

Is there anything you can tell me about your hardware, the RB image you are using(fresh install? Version?), error messages or anything else out of the ordinary that you observed while installing?

The only thing close to this I have observed, was problems in the beginning on v7.1.1, where the overlay file system overwrote the changes I made to es_systems.cfg.

So maybe this has something to do with systemlist.xml being overwritten somehow every reboot on RB v8.0?

commented

I really dont know. Im currently trying to get a Scripts system to execute and restart emulationstation but it doesnt show up :/
Hardware: RPI 3 with a broken camera port, if thats important (most likely not but still), Waveshare Game HAT
Version: 8.0-Electron
Errors: uh wait let me see

Thanks for the quick response btw.

commented

dont see any errors sadly.

Could you please check right after a reboot whether there is a McAirpos entry at the end of the file /recalbox/share_init/system/.emulationstation/systemlist.xml?

commented

nope. nothing there

commented

in "virtual systems" i found the virtual "arcade" system. Activated it, thought it was mcairpos 😂

Ok, if the McAirpos entry is not in systemlist.xml after reboot(I presume it is there again right after running the install script?), it looks like a fight going on with the overlay file system restoring the original systemlist.xml on every reboot.

I really do not remember how I got out of this loop back on v7.1.1, but had something to do with writing to the original file(regardless of name).

Have you spent much effort on tweaking and customizing your RB installation, or might a fresh image install and try again be an easier option?

commented

actually, i didnt actually do anything, i just changed the animation at most.

commented

and i dont really want to reinstall it as i would have to make my customizations again, make the controller work again etc.

commented

is there really no solution other than to reinstall?

Understand.

Well, at least we now know with some certainty what the problem is. All that remains then is to find a solution… ;-)

I bet there should be some forum posts about similar issues, since the overlay file system is made to keep the installation working with system files in original state.

I will see during the coming Christmas days if I get time to try to reproduce or test the install scripts on a fresh RB install.

If you beat me to the punch with a solution, please report back so others can benefit from the solution as well.

Sorry I am not able to solve this right away and good luck!

commented

All that remains then is to find a solution… ;-)

Yep. When it is fixxed we will all prob say "ooooh that makes total sense"

Trying some other stuff to fix it later as battery needs to charge

is there really no solution other than to reinstall?

I am not sure either if a reinstall will solve this. The problem might be in my install script. So I would not recommend a fresh install unless you like to tinker.

But we know that RB overwrites systemlist.xml on reboot.

So the trick is to somehow get RB to keep the McAirpos entry in systemlist.xml untouched between reboots…

commented

cant we just edit whatever that overlay file system will overwrite the file to 🤔

commented

i think i have a fix. Pray that it will work

cant we just edit whatever that overlay file system will overwrite the file to 🤔

Good idea! If you can find and get access to this original/template, that should work(if there is not a check/hash somewhere that will break your install when tampering…).

It will always be overwritten on updates, as will the McAirpos installation.

I am sorry, I am on my phone at the moment, and not able to dive into my Raspberry Pi. ;-)

i think i have a fix. Pray that it will work

Crossing my fingers as well!… ;-)

commented

I am sorry, I am on my phone at the moment

What a legend, he is at his phone trying to fix an issue with someone

I am sorry, I am on my phone at the moment

What a legend, he is at his phone trying to fix an issue with someone

Haha, not as legendary as you make it sound; more slacking on the sofa on Christmas Day, after too much to eat and getting a short moment of peace of mind away from the kids and for myself… ;-)

How did it go?

commented

im still waiting for this stupid battery to charge.

commented

oh cool i think i bricked the system

oh cool i think i bricked the system

What happened?!?

commented

i dont know 😂 thank god there was nothing important on it. I think its because of the low battery it shut off

commented

oh i dont think it was, i think it was something else. God dang it i already reflashed the card

oh i dont think it was, i think it was something else. God dang it i already reflashed the card

Good! Now I am full of anticipation…

Worked on a fresh install?

commented

didnt try yet. The battery is full now and recalbox is installing. Im trying to finish this today asap

👍
RB and Batocera are not identical anymore, but both stem from the same trunk. Here the overlay file system is explained:
https://wiki.batocera.org/doku.php?id=modify_the_system_while_it_s_running

Same, same, but a little bit different(files) on RB.

Editing the above mentioned systemlist.xml has worked for me, though, without the use of any special save-overlay script.

I hope you get it to work!

Here from before RB went from es_systems.cfg to the current systemlist.xml:
https://forum.recalbox.com/topic/17186/problem-custom-es_system-cfg/

commented

ok? Im trying on clean install rn
perfect moment for you to return

commented

god dang it
it doesnt work on fresh install

commented

all i did was configure the gpio support and keyboard layout

commented

trying potential fix 1...

Bummer! You got me motivated to test again on a clean image now.

This should work, or be removed, as not to waste people’s time.

I am sorry and I’ll be back!

commented

What do you mean, i dont understand?

Also i am not happy to announce that potential fix 1 does not work

commented

to potential fix 2 then, my last one

What do you mean, i dont understand?

Also i am not happy to announce that potential fix 1 does not work

Unfortunate.

I only mean that I should not have available and announce a working RB8 install script, if it is - in fact - not working…

But I will look closer at this now.

commented

kk, do that while i try that stupid, but hopefully working fix.

commented

very good sign

commented

wow, it overwrote my fix lmao

commented

kinda should've expected that

commented

then i have no idea ig

commented

any updates?

any updates?

Flashing now…

commented

oh bruh. Well guess i wont get it working til tomorrow :/

oh bruh. Well guess i wont get it working til tomorrow :/

Sorry, slow old laptop grinding. Gaming rig is occupied by kids playing Brawlhalla… ;-)

commented

Well if its not gonna work for today im just gonna use my phone to ssh into it and install minecraftairposition mcairpos again (i had to say it)

Well if its not gonna work for today im just gonna use my phone to ssh into it and install minecraftairposition mcairpos again (i had to say it)

Hehe, McAirpos is actually just a boring acronym; Make Code Arcade In Retro Pie/ Raspberry Pie OS...

Good news!

Installer still works OK on fresh Recalbox v8.0 image for and on a Raspberry Pi 3 (B+), dowloaded as separate image file(.xz) from recalbox.com and flashed with Balena Etcher on a Win10 PC.

Since I did not get the McAirpos icon showing in the Recalbox main menu between reboots immediately, I tried the McAirpos install script once over ssh and second on local console(F4 + ALT+F2). Maybe it was successfull already the first time over ssh, I cannot confirm.

But the clue - for me, at least - to get the McAirpos entry to stick around in the Recalbox main menu between reboots, was to populate the /recalbox/share/roms/makecode folder with at least one .elf MCA game file.

Could this be the issue for you as well?

commented

Well it wont show up at all if there is no .elf file in it.. still disappearing icons :////

commented

but yes once i run it again it does show up again... until a reboot

but yes once i run it again it does show up again... until a reboot

Getting hard for me now, when I am not able to reproduce the same situation as you are experiencing...

Have you tried running the McAirpos install sript on the local Recalbox console(F4 + ALT+F2) instead of over ssh?

As a last resort, is it worth trying as the first action on a clean system, before modifying anything else?

I am sorry, but I am a little out of clues here right now.

commented

it already cleaned it :/

it already cleaned it :/

Sorry, don't understand...

And you are running the v8 McAirpos install script, without the HDMI fix?

commented

with the HDMI fix

with the HDMI fix

Maybe the HDMI fix is doing something differently. Could you try the one without the HDMI fix first? Computers work in mysterious ways...

What I did was:

  1. Boot fresh RB image
  2. Run McAirpos v8.0 install script without HDMI fix from local RB console(F4 + ALT+F2)
  3. Reboot
  4. Add MakeCode Arcade .elf game file
  5. Reboot
commented

gimme a minute

commented

image
it doesnt want to.

You cannot connect a local keyboard?

commented

i actually have to go now so guess well continue 2moro. You could try checking if it breaks with the fix for you too.

commented

You cannot connect a local keyboard?

i did but its just easier using ssh

Ok! I am on it, but waiting for W10 updates to finish…

commented

Me with linux

commented

is there a way to restart emulationstation without the web thing tho?

commented

found it out

killall emulationstation
emulationstation &

From the local console? You could go to /etc/init.d folder and run S31Emulationstation start.

But I find the command “reboot” from console is always best.

commented

yes but that would remove mcairpos again

Yeah, right. I forgot.

Ok, now I have tested both RB v8.0 installation scripts - with and without the HDMI fix - over ssh.

They both work fine, keeping the McAirpos installation intact between reboots on my Raspberry Pi 3 B+ with the newest Recalbox v8.0 image downloaded tonight as separate .xz file and flashed to SD with Balena Etcher on a W10 PC:
image

Procedure:

  1. Flash and boot the RB v8.0 image
  2. ssh into image, logon: root/recalboxroot
  3. Run either of two v8.0 installation scripts - with or without the HDMI fix
  4. Copy a MakeCode Arcade .elf game file onto the RB shared network drive in the folder /recalbox/share/roms/makecode
  5. Reboot

NB for other readers: The MakeCode Arcade/McAirpos menu item will not appear in the Recalbox main menu unless there is at least one MakeCode Arcade .elf game file inside the /recalbox/share/roms/makecode folder.

So, I am really sorry, @cfpwastaken, but I am utterly unable to reproduce your situation with the McAirpos installation not being kept in your Recalbox v8.0 main menu and/or systemlist.xml on my system. My tests tonight show only that the installation scripts work, at least on my side.

I will try to help you as best I can to get this working also for you, but I have no idea nor any new theories about what the problem on your system might be at the moment.

I really hope you get it working!

commented

Ok ¯\_(ツ)_/¯
I could create a .img file from my card and you could flash it to yours and see what happens?

commented

I also found another issue while testing but i made it its own issue #35

Ok ¯_(ツ)_/¯
I could create a .img file from my card and you could flash it to yours and see what happens?

Or maybe other way around, that you get a copy of my working image?

But we’re out ice skating right now.

Are we using the same RecalBox image, by the way?
https://www.recalbox.com/download/stable/rpi/rpi3/alternative

commented

i used the one in raspberry pi imager.

i used the one in raspberry pi imager.

Ok, just an idea to try from the same basis.

Somewhere I could send you a download link to a working image?

commented

do you have an image of the card?

commented

downloading would take very long for me as i live in germany soo

Not yet, I was hoping you’d try this image first and run the McAirpos install script as first thing, like I had success with:
https://www.recalbox.com/download/stable/rpi/rpi3/alternative

I can’t figure out a reason why the same actions on the same image would produce a different result?

@cfpwastaken German internet is not that slow 😁

Ok, @cfpwastaken!

I just made a final attempt where I tried to replicate your situation, as described by you above, the best I could...

It - kind of unfortunately - was also successfull:

  1. Flash Recalbox v8.0 image for RPi 3 on SD using Raspberry Pi imager v1.6.2 running on Debian Buster
  2. Boot image on Raspberry Pi 3 (B+), showing version logo "8.0-Electron 2021/12/01 13:43", same as above
  3. Ssh into running Recalbox installation(logon: root/recalboxroot)
  4. First action, run McAirpos installation script with HDMI fix:
    curl -sL https://raw.githubusercontent.com/Vegz78/McAirpos/master/install_recalbox_v8.0_HDMI-Audio-Fix.sh | bash -
  5. Over the Recalbox samba share, copy a MakeCode Arcade .elf game file to /recalbox/share/roms/makecode
  6. Reboot

Installation of McAirpos is kept intact between reboots, and games and everything else seem to work fine.

Since I am unable to replicate the error you experience with the McAirpos entry disappearing from the Recalbox main menu/systemlist.xml, since at least 4 different attempts of mine where all successfull, and since there seemingly is no more response or attempts at gettig this to work from you, I am closing this issue as unresolved.

I am sorry that McAirpos did not work for you on your Recalbox v8.0 installation, and I hope that any of my 4 successfull attempts described above will also work for you!

commented

showing version logo "8.0-Electron 2021/12/01 13:43"

Actually that is the version im using, same date, same time

I will try doing it on a fresh image again later.

German internet is not that slow

Yes but a >16GB image of an SD Card can take a very long time to download, especially when downloading from another country

I will try doing it on a fresh image again later.

did it work?

commented

i didnt try yet because i dont have another sd card lying around, and i dont think i can copy the contents of the current install to my computer and flash it again in case i want to go back.

Ok, just reopen the case if/when you get a chance to try.

commented

I just got it working on a fresh install of retropie. Works as expected, its just that the size of the games are way too small (should I open another issue for this?). This may be a configuration error of retropie and i will look into this tomorrow. I haven't tested it on recalbox yet but I will try that too.

hi,

No need for new issue.

What do you mean by «the size of the games are too small»?

Do the games run as they should or not? Too small compared to what?

commented

too small compared to the menu i guess.

commented

oh well, it was a configuration issue as overscan is enabled by default. Thanks anyway

oh well, it was a configuration issue as overscan is enabled by default. Thanks anyway

Ok, the screen image of the game was projected too small… ;-)

Great to hear that you found a solution and that McAirpos is now working for you! Thanks also for contributing here with the solution.

Happy retro games making and playing!

Got it working on Recalbox yet, @cfpwastaken? ;-)

commented

I will tell you when I decide I will test it

commented

I am really sorry for the long wait. The menu is now persistently showing up in the recalbox menu. However, the games dont launch at all. It just kicks me back to the menu saying "Looks like your game didn't launch!"
The file has chmod +x and the directory is writeable.

Are you able to launch the games manually? Ssh into the system and start them?

commented

the readme only says how to do it on retropie. And it seems like the recalbox script stores it somewhere else.

What does the McAirpos log say right after trying to launch? Please submit here.

And also a good idea to try to launch manually, ref. @rdmueller's suggestion:
https://github.com/Vegz78/McAirpos#Usage