#Formula 1 Playdate

138 messages Β· Page 1 of 1 (latest)

loud nova
#

Formula 1 Playdate is a small, fictive formula 1 game & watch style lcd game with high score keeping. The Game was initially created over a decade ago for a small retrogame competition, after which it got ported to the gp2x then to the playdate and then back to SDL2 using a playdate runtime. This version is based on the gp2x version but with added high score saving.

Instructions:
Game is ready to run

Tested on:
(X) [480 x 320] (RG351P)
(X) [640x480] (RG35XX Plus, 351V)
(X) [720x720] (RGB30)
(X) [Higher Res] (RG503)
(X) AmberELEC (351V)
(X) JELOS (RGB30)
(X) ArkOS (RGB30, RG503, RG351P)
(X) muOS (armhf) (RG35XX plus)

Notes:

  • game was initially 1 bit game as playdate is 1 bit screen, but in my Playdate runtime i added options for extra (colored) assets and the game boots up with colored graphics, you can press X button to switch between the different sources (so 1 bit graphics & colored graphics)

Latest zip here: https://cdn.discordapp.com/attachments/1216389262946336900/1216547483442745374/formula_1_playdate.zip?ex=6600c922&is=65ee5422&hm=b47b41e4d7b6ac9bca081146787f6bfff108fb9ddc681c0798d91bdafa4809ac&

young jacinth
#

<@&1216123318122577972>

tidal stream
#

Works and plays great on RG503/ArkOS

young jacinth
#

351V (640x480) Amberelec works great

#

@lilac kettle maybe for 480x320?

lilac kettle
#

I can do tomorrow when I get home

young jacinth
#

Or @drifting heath / @kindred light if aynone is faster ^^

loud nova
#

should i update main post when people tested things like the amberelec test ?

#

or wait for more devices / confirmations

young jacinth
#

I always write whats left and update it

loud nova
#

ok

#

i can possible test on the X55 the higher res thing

#

i think that runs on a higher res than 640x480

young jacinth
loud nova
#

ah i see

young jacinth
#

"high res"

#

πŸ˜„

#

but yeah greater than 640x480

loud nova
#

ok so i'll update that also

tough umbra
#

Sounds like it’s all good to go then?

loud nova
#

only low res needs testing

tough umbra
#

Ahhh

kindred light
young jacinth
#

@tough umbra I wonder how this happens all the time on ark

loud nova
#

it needs portmaster update

kindred light
#

Just ran that after the first crash and still got this

tough umbra
#

You might have a bugged PortMaster install.

loud nova
#

i had same issues on my rgb30 arkos

kindred light
#

Possible. My version of PM reports 8.7.4

tough umbra
#

Oh yeah that’s old. lol

#

Download the latest installer and reinstall it.

kindred light
#

I think it appears that way. It all makes sense. I tried to manually check for updates from the PM GUI and it says the latest is 2024.03.10-1231 and despite confirming to perform the update it fails to do so. Time to update PortMaster... MANUALLY Muahahahahaha

#

I'll report back

loud nova
#

ok thanks

kindred light
#

@tough umbra Is the latest release supposed to report version 8.6.1?

loud nova
#

on my rgb30 arkos it reports 2024.03.10-0841 after downgrading to stable. Klopttops had given me some link to an installer sh file to do the install when i had same issue

kindred light
#

Right on. Do you happen to know where I can grab that link rq?

loud nova
#

it's in #lounge-dev here #lounge-dev message

#

but not sure if thats still valid with the recent release

kindred light
loud nova
#

yeah updates work for me now

#

it exact same issue as you had initially on my rgb30 arkos it would not update

#

also had the issue of ${DEVICE_ARCH} var not being set

#

normally it tries to run ./formula_1_playdate.armhf or ./formula_1_playdate.aarch64 based on ${DEVICE_ARCH} (if i remember variable name correctly) and thats whats missing in your call in the sh file but update from portmaster should address that

#

as the call is ./formula_1_playdate.${DEVICE_ARCH}

young jacinth
#

It's a good idea, just need to have the pm version people need

#

but sooner or later all will have it

loud nova
#

yeah i inspired myself on abe's adventure example

kindred light
#

Precisely. That variable for DEVICE_ARCH I'm aware wasn't added until recently. When I ran the update from the PortMaster GUI at first and saw it extracting I took for granted that it updated to the latest and just went to testing the game. Little did I know, it hadn't updated at all 😦 . That link that kloptops posted is a self extracting sh script to install that version of PM with - I'm okay with this

tough umbra
loud nova
#

yeah as a default

kindred light
loud nova
#

there are some other ports doing this exact same thing though (as i had based myself on those) so they may need to have that update as well

kindred light
#

Although this is probably already known, that self extractor just did a nice job slapping a clean newer copy of PortMaster and also updated from that to the newest without hassle after running it.

loud nova
#

yeah and at least this var issue should be gone now

tough umbra
#

Teamwork. LinkYay

kindred light
#

βœ… RG351P/ArkOS

#

Formula 1 Playdate G&W working fine on 480x320

loud nova
#

cool

kindred light
#

Huzzah!

loud nova
#

i'll still see if i can push a change for that empty var

loud nova
#

i changed that par in SH script to this it still worked on my arkos RGB30 and muos RG35XX plus (armhf) but we may need to find someone with a broken portmaster install (possibly RGB30 arkos might do). I also tried updateding the zip in main post but that failed so will make a link to this new zip

...
...
ARCH="$DEVICE_ARCH"

#for old portmaster installs where DEVICE_ARCH may not be defined or empty take the (previous) default
if [[ -z "$ARCH" ]]; then
   ARCH="aarch64"
fi

#required or select + start won't quit on arkos
if [[ "$CFW_NAME" == *"ArkOS"* ]]; then
   program="formula_1_playd"
else
   program="formula_1_playdate.$ARCH"
fi

$GPTOKEYB "$program" -c "./formula_1_playdate.gptk" &
./formula_1_playdate.${ARCH}
...
...
young jacinth
#

Goal is to keep the .sh files as short as possible

loud nova
#

not sure i understand

young jacinth
loud nova
#

yes but still don't understand

#

arkos uses different name

#

for some reason

young jacinth
#

yeah but if you rename it

#

it works on all

loud nova
#

well i wanted to do that initially but thats what kloptops gave me

young jacinth
#

We just don't want to do os speicfic fixes. Only if really necessary

#

I came across this issue too

#

I just renamed the binary and worked fine after that

#

You're doing it already in the if statement

loud nova
#

i'll rename to game.$ARCH then if thats fine ?

young jacinth
#

yep

loud nova
#

ok

young jacinth
#

about this part

ARCH="$DEVICE_ARCH"

#for old portmaster installs where DEVICE_ARCH may not be defined or empty take the (previous) default
if [[ -z "$ARCH" ]]; then
   ARCH="aarch64"
fi```

Why not do the check on $DEVICE_ARCH directly?
loud nova
#

because it can be set

#

and you want the set value then

young jacinth
#

You can set $DEVICE_ARCH too no?

#

overwriting it

loud nova
#

yes but was not sure if that is ok

#

i can change it

young jacinth
#

The less custom stuff we add the better ^^

loud nova
#

does the if needs changing ?

#

like is the variable empty or not set

#

from what i saw online those checks differ

young jacinth
#

ARCH="${ARCH:-aarch64}"

loud nova
#

thanks

young jacinth
#

but thats with arch

#

πŸ˜›

#

with $DEVICE_ARCH of course πŸ™‚

loud nova
#

and the - is required ?

young jacinth
loud nova
#

ah i see thats better than an if indeed

young jacinth
#

in theory πŸ˜„

#

so in the end the only thing we need is

DEVICE_ARCH="${DEVICE_ARCH:-aarch64}"
./game.${DEVICE_ARCH}```
#

or whatever you want to rename it to ^^

loud nova
#

yup thats what i changed it to πŸ™‚

young jacinth
#

Awesome

#

Btw, we're never static. There might always be better way

loud nova
#

ok all changed stilled worked on my muos (RG35XX armhf) & arkos (RGB30 aarch64) but we may need someone with (very) old portmaster to test the default thing

young jacinth
#

?

#

πŸ˜„

loud nova
#

he fixed his portmaster

kindred light
#

I can still do it, actually. I have another SD card with ArkOS loaded that I haven't updated PM yet FWIW. Gimme a sec 351p

young jacinth
#

πŸ˜„

kindred light
#

βœ… RG351P/ArkOS, PM 2024.03.10.0841
❌ RG351P/ArkOS, PM 8.5.17
This is a tad interesting:

loud nova
#

hmm ld_library_path not working ?

#

let me check πŸ™‚

#

wait no

#

it's got same problem

#

hang on

kindred light
#

By the looks of it, it appears to have applied the aarch64 to the variable from your script, but...

loud nova
#

yeah i need todo it earlier

#

libs.armhf libs.aarch64

kindred light
#

That makes sense

loud nova
young jacinth
#

ah

#

πŸ˜›

loud nova
#

good that we tested πŸ™‚

#

now i can search how to undo a commit in git cmdline

#

or do you guys squash merge ?

kindred light
#

βœ… RG351P/ArkOS, PM 8.5.17

loud nova
#

cool πŸ™‚

young jacinth
#

Yes

kindred light
#

Just for the sake of re-test after changes (also decided to update to the beta release of PM to be a bit extra)
βœ… RG351P/ArkOS, PM 2024.03.10-1231

loud nova
#

ah thats good yes, i had teste on RGB 30 (arkos aarch64) and RG35XX plus (muos armhf)

tough umbra
#

@loud nova merged. ❀️

loud nova
#

cool thanks. I can start doing the other now (from my playdate games first) as they all use same libs so should be fairly straightforward. Thanks all for testing

tough umbra
#

Thanks for porting your work. We try to make it as easy as possible, there’s a bit of teething issues with the latest release because of that broken build. Which is entirely my fault. doggokek