#Super Hexagon

452 messages Β· Page 1 of 1 (latest)

zealous trellis
#

First Westonpack X11 port πŸŽ‰

Super Hexagon is a fast-paced action game developed by Terry Cavanagh. You control a triangle, dodging walls closing in on you. With increasing difficulty and a catchy electronic soundtrack, it's a test of reflexes and precision. My high score on Hexagonest is 165 seconds, good luck πŸ˜›

Port Download link: Link removed, testing is done, PR is merged, just get it on the Portmaster App :)

Installation:

Itch (https://terrycavanagh.itch.io/super-hexagon)

Place the Linux installer (uperhexagon-05282015-bin) in superhexagon/gamefiles/itch/

GOG (https://www.gog.com/game/super_hexagon)

Place the Linux installer (gog_super_hexagon_2.1.0.4.sh) in superhexagon/gamefiles/gog/

Steam (https://store.steampowered.com/app/221640/Super_Hexagon/)

Download this depot download_depot 221640 221643 7186315654381968499
Place the gamefiles (without any surrounding folders) into superhexagon/gamefiles/steam/

The necessary runtime to run this should be automatically downloaded, but if it isn't, download this file, remove the .aarch64 from the filename, and place in the autoinstall folder, or $controlfolder/libs

Tests

[X] ArkOS
[X] AmberELEC
[X] muOS
[X] Knulli
[ ] Rocknix (Mali)
[X] Rocknix (Panfrost)

[X] 640x480
[X] 480x320
[X] 720x720
[] Higher

(Rocknix mali is not supported at this time because of runtime restrictions, but will probably be in the future.)

Controls

dpad, analog sticks, l1,r1 - left right
a, start - confirm (space)
b, select - back, exit (esc)
x - tab (online leaderboard)

crystal charm
#

This goes on sale for a buck at GOG like once every couple weeks. I'll pick it up next time my tracker tells me it's on sale. Congrats on the first Westonpack port!

zealous trellis
# crystal charm This goes on sale for a buck at GOG like once every couple weeks. I'll pick it u...

Thank you! I hope this works out, it's a pretty weird set up. Basically... There's 2 different copies of SDL2 used here. Hexagon is loading SDL2 with X11 support, which then uses GLEW to set up GLX. My compatibility layer then converts the GLX calls into the native SDL2 that it loads as the backend. Oh also it's running on GL4ES and Box64 πŸ˜…

I was gonna ask around if anyone has the game on GOG. I thought i had it on there, but apparently i have it everywhere but GOG. ❀️

zealous trellis
latent jasper
zealous trellis
zealous trellis
#

I updated the port to fix some issues, but the muOS resolution and control issues remain, they're outside of my control.

tame escarp
#

Bummer rocknix is s no go

zealous trellis
tame escarp
#

Hahaha. You on latest version?

zealous trellis
# tame escarp Hahaha. You on latest version?

Of my library? I'm sitting at the source code πŸ˜›

The rocknix thing isn't just my device, we've actually done quite a lot of testing internally of this runtime. Rocknix is very hard to integrate with all of this, since this basically replaces a lot of the graphics stack on your device temporarily.

tame escarp
#

I meant latest rocknix version

#

I'm sure it wouldn't change anything

#

But it's 1-18

zealous trellis
zealous trellis
coarse rapids
#

<@&1216123318122577972> ping should probably go up
βœ… RGB10X Amberelec, 35xxSP muOS

molten jolt
#

<_<

#

CMON

#

Give me a chance to fix the gui

tame escarp
#

Haha

#

Klops I'm sad

molten jolt
#

Cool story

#

im not a therapist

#

Wassup?

coarse rapids
tame escarp
#

Um... nevermind

#

It wasn't supposed to get that kind of reaction..

tame escarp
coarse rapids
#

YOu would be free of sadness and pain! πŸ˜›

tame escarp
#

Whoa

#

Thats enough

molten jolt
coarse rapids
#

I guess that solution would be.. how germans used to say... too final? πŸ˜›

tame escarp
#

Right...

pearl tundra
#

@zealous trellis I have the GOG version

zealous trellis
#

Why the hell are y'all talking about suicide

coarse rapids
#

bad taste joke πŸ™‚

#

my apologies

digital acorn
#

He has been a savage in kcd2 the last week so can't blame him

coarse rapids
#

no I have been soft, I left this roma camp and everyone is alive.

#

unlike the cuman nearby

#

but I still plan on trying to kill everyone in Kuttenberg

coarse rapids
#

just for fun

zealous trellis
# pearl tundra <@147313153850474496> I have the GOG version

Awesome! Could you please grab the installer, put it on any Linux device in a new folder and then do the following:

unzip gog_superhexagon_versionnumber.sh
ls -R . > file_structure.txt

And then send over file_structure.txt?
I'll have the gog version supported asap. πŸ™

pearl tundra
zealous trellis
#

Thank you!

zealous trellis
coarse rapids
#

yeah, its doing that as well, but do I need to use them? It seems just using dpad is fine

zealous trellis
coarse rapids
#

maybe it could use the kdog's hacksdl to disable sdl controls

zealous trellis
# coarse rapids https://github.com/cdeletre/hacksdl

Definitely, but haven't had too much luck getting it loaded to be honest. Not having any luck with LD_PRELOAD. I'm already preloading the custom SDL2 and crusty (which links to SDL2 at runtime). Apparently I can't squeeze hacksdl in-between that. Will have to investigate.

coarse rapids
#

😦

digital acorn
#

and the reason why we disable sdl_joystick completly and map keyboard controls via gptokeyb

#

sdl_gamecontroller it correctly gets the correct map via gamecontrollerdb.txt

#

sdl_joystick it grabs the raw joystick from the device

#

and then it's all over the place

#

start mapped to l1, analogue stick reversed and such

zealous trellis
digital acorn
#

the hacksdl is rather new from kdog

zealous trellis
#

I can't exactly edit the source code of super hexagon. I'll see if I can either get hacksdl working, or I'll just straight up hack apart the SDL source and make a new build.

digital acorn
zealous trellis
digital acorn
#

ahh

#

nvm then continue πŸ˜›

zealous trellis
#

(would be neat if it was open source though, this is from the same guy that made VVVVVV, which he released the source of)

pearl tundra
#

@zealous trellis Here it is

zealous trellis
# pearl tundra

Thank you! β™₯️ Looks straight forward enough. Next version will work with GOG

pearl tundra
#

Awesome, will test when it is ready πŸ™‚

zealous trellis
#

Awesome! Working on the SDL controller issues right now. Tough nut.

Also regarding Steam, shipping an emulator library is okay if the API isn't used for DRM, right?
Is there an easy way y'all check if the steam API is used for DRM, or do I have to do the manual way of going through it with gdb and checking if any of the license check functions are called?

ebon sonnet
#

We almost never ship a game with a steam emulator. At most Johnny did some "steam isnt activated" functions on Mono and Gmloader

#

Just to return something to the game

zealous trellis
ebon sonnet
#

Errors out the game? Like crashes or just logs it?

zealous trellis
digital acorn
#

Can always just exclude steam version

ebon sonnet
#

Nothing wrong with just exlcluding steam version

#

A lot of ports require itch or gog versions

zealous trellis
#

Yup. That's probably what I'm gonna do. The game is dirt cheap, if you want to play it on PM, just get it again somewhere else I guess... Would've been cool to get all versions of the game working though πŸ™‚

ebon sonnet
#

Yeah it get it, you could ask terry for permission. Thats a reach though :p

zealous trellis
#

When bogodroid is stable I'm also gonna add the android version, which has some advantages over the Linux version, like being able to work with other aspect ratio screens and supporting refresh rates over 60hz.

ebon sonnet
#

Thats nice, are you also gonna do OpenHexagon? ^^

zealous trellis
zealous trellis
zealous trellis
# ebon sonnet terry says he needs it for leaderboards and friends

I have now confirmed that the game does not perform license checks.

How did i do that? By writing my own steam "emulator" that does not even include the functions for license checks so that the app would immediately crash if it tried to check the license.

This implements juuuuuust enough for the game to think steam is running (not that the user owns and has installed the game, those are different checks) and then for the game to ask for its leaderboard and never get an answer. And the game works perfectly fine.

ebon sonnet
#

Sounds pretty safe to me, nice work

#

@digital acorn @cunning tusk What do you guys thinkπŸ˜„

zealous trellis
#

And i did it clean room without looking at the Steamworks API docs. Just gdb. Thank you Terry for leaving debug symbols in your game.

#

And to clarify even more: This game would boot up fine if you ran it on a computer that had steam installed but the user didn't own the game.

digital acorn
#

Agree

#

Good job

zealous trellis
# coarse rapids https://github.com/cdeletre/hacksdl

I got the controller stuff working using hacksdl. Pretty awesome tool, thanks for making it @solar cairn!

I With SDL2 Box64, you actually cannot just LD_PRELOAD the aarch64 version, since Box is allocating the symbol table differently when passing libraries through from x64 to arm64 land. So i had to build a x64 version of hacksdl and load it with BOX64_LD_PRELOAD.
To get that to work i actually had to rebuild libconfig too, because the version that's on apt isn't built with -fPIC for some reason.

If it's of use for anyone else trying to disable controllers on Box64 SDL2 games, here you go πŸ™‚

solar cairn
#

I just need to setup the github workflow

zealous trellis
#

New version!

This'll probably be the last version before i PR. The finished version will be functionally identical, only adding port metadata and license files.

  • Fixed: Resolution issues on muOS
  • Fixed: Controller issues (thank you @solar cairn )
  • Added: support for GOG version (thank you @pearl tundra)
  • Added: support for Steam version
  • Added settings save file that starts the game in fullscreen mode by default

Installation:

Itch (https://terrycavanagh.itch.io/super-hexagon)

Place the Linux installer (uperhexagon-05282015-bin) in superhexagon/gamefiles/itch/

GOG (https://www.gog.com/game/super_hexagon)

Place the Linux installer (gog_super_hexagon_2.1.0.4.sh) in superhexagon/gamefiles/gog/

Steam (https://store.steampowered.com/app/221640/Super_Hexagon/)

Download this depot download_depot 221640 221643 7186315654381968499
Place the gamefiles (without any surrounding folders) into superhexagon/gamefiles/steam/

The neccessary runtime to run this should be automatically downloaded, but if it isn't, download this file, remove the .aarch64 from the filename, and place in the autoinstall folder, or $controlfolder/libs

Port Download link: https://drive.google.com/file/d/1ejcnj_iLmiVkx8dQwpqRYwDzEU6hEDsv/view?usp=sharing

#

Oh also @crystal charm thank you for offering your help, we figured GOG support out. If you already have the game on itch or steam, there's no need for you to pick up the GOG version.

digital acorn
#

@zealous trellis can you tell me why sdl2 is needed and why it doesn't break all other devices?

crystal charm
#

I've been following along, but thanks for letting me know. πŸ™‚

sinful fjord
#

Does it work fine for 480x320 devices?

digital acorn
zealous trellis
# digital acorn <@147313153850474496> can you tell me why sdl2 is needed and why it doesn't brea...

This is a version of SDL2 that only supports X11 as its graphics backend. Super Hexagon needs this to be able to load GL function pointers through GLX and GLEW.

Instead of interacting with the native graphics driver, it then interacts with crustyGLX, which loads the SDL2 library supplied by the system to render the actual graphics. This is all set up by westonwrap.sh. the additional SDL2 is LD_PRELOADED into the final Box64 binary.

zealous trellis
coarse rapids
zealous trellis
#

Ah sorry, I thought the RGB10x was 320p

sinful fjord
#

Ok. I'll try it later for curiosity. Hope I'm not going to be trolled by ArkOS not having enough glibc for weston lol

zealous trellis
sinful fjord
#

Good to know, thanks.

#

Very glad with the possibilities with westonpack now.

coarse rapids
#

on unrelated note, I totally suck at this game

sinful fjord
#

I got pissed off wanting to hear the entire songs that are awesome, but game overs prevents me from doing so

digital acorn
zealous trellis
# digital acorn So what's missing in testing?

A Knulli device (not TrimUI), and any resolution other than 640x480 (though I don't see that being a problem, I forced the resolution to all the other common ones with CRUSTY_RESOLUTION and it worked as expected.

coarse rapids
#

Implement a message on Rocknix that will tell you "TOUGH LUCK, NO HEXAGON FOR YOU"

digital acorn
#

oh nice

zealous trellis
coarse rapids
#

btw what opengl version this needs? I havnt checked if it runs on panfrost

zealous trellis
#

But when I figure out that bug in Westonpack, all ports that use this mode will magically start working on Rocknix so I'm hesitant to add anything to the script.

digital acorn
digital acorn
#

@zealous trellis

  • works 720x720, arkos
  • works, 720x720 knulli (altough a/b swapped)
#

mali it starts with black screen and sound

#

nvm

#

πŸ˜„

#

btw, did you try bypassing the runtime for rocknix?

zealous trellis
digital acorn
#

remember πŸ˜›

if [ "$CFW_NAME" = "ROCKNIX" ] && ! glxinfo | grep "OpenGL version string"; then
 pm_message "Sorry this port is not compatible with Mali switch to Panfrost"
 exit 1
fi```
zealous trellis
#

Awesome, and I'll make a note somewhere to remove this exception when crusty works on Rocknix.

digital acorn
#

not tested though πŸ˜›

#

but somehting liket that

#

i'm, trying to make it run via panfrost but only get a black screen so far

zealous trellis
#

Try removing the SDL2 from LD_PRELOAD and LD_LIBRARY_PATH and removing everything before and including crusty_glx_gl4es.

I'll test this in a bit

digital acorn
#

yeah

#

i did

#

πŸ˜›

#

I removed almost everything

#

β€œERROR: No supported FNA3D driver found!”
β€œERROR: Call FNA3D_PrepareWindowAttributes first!”

#

also complains about trying to load vulkan lol

ebon sonnet
#

fna?TurtleThink

#

What, thats awesome. Custom engine but he used FNA's renderer

#

Trimui Smart Pro/Knulli

#

Doesnt run on the a133p yet it seems

#

Sorry if that was already knownπŸ˜„

digital acorn
ebon sonnet
#

Not at all? I thought some thing worked on Knulli

digital acorn
#

tsp is tsp

ebon sonnet
#

I know, knulli on the brick..

digital acorn
#

he went to level 5 already with the first port πŸ˜›

magic mesa
digital acorn
#

as always with the cursed device

ebon sonnet
magic mesa
#

It is cursed. Nice screen and form but no decent drivers.

ebon sonnet
zealous trellis
zealous trellis
# ebon sonnet What, thats awesome. Custom engine but he used FNA's renderer

Yup, Terry actually wrote on his website about this:

The renderer has been replaced with FNA3D, which while not intended for use outside of its parent framework was useful for Hexagon since the game really only needs to render textureless polygons and text. Previously the game used fixed-function immediate-mode OpenGL, it now uses more GPU-friendly data that can be rendered by OpenGL, Direct3D 11, and even Vulkan! And we're able to provide all of this in a single binary - there are no special versions needed, the engine will pick whichever works best for your PC. By default D3D11 is used on Windows while OpenGL is used on Linux and macOS; you can try Vulkan by passing "-renderer Vulkan" as a launch option but it shouldn't make a big difference. In addition to being more energy-efficient in general these performance improvements allow us to support features like high-DPI by default; on macOS and Wayland you should see proper scaling for your display, particularly in fullscreen mode. Despite not being a super graphically-intensive game it looks really good in 4K!
digital acorn
ebon sonnet
#

Yup

#

On knulli

digital acorn
#

I told you its excluded

#

πŸ˜„

#

only the x11 basic stuff without any opengl stuff whatsoever

zealous trellis
# ebon sonnet Doesnt run on the a133p yet it seems

Yes, all a133p devices are unsupported by crusty right now. I am currently unable to debug this because i don't have access to a device, and the logs are pretty much meaningless. I suspect its a similar issue to the one on rocknix though.

#

Wait, did we ever test a133p on muOS?

ebon sonnet
#

The offer for my second tsp still standsπŸ˜„

ebon sonnet
zealous trellis
ebon sonnet
#

Lol

#

Anyway, good news, it works great on the rg35xx Plus with muos

zealous trellis
#

symbol errors are the worst because linux can never tell you which library is actually missing the symbol, it just prints the last one it checked

digital acorn
#

tried πŸ™‚

zealous trellis
ebon sonnet
#

performance seems decent. Think around 45-55 fps with some minor stutters. Playable for sure

ebon sonnet
#

Gl, gles, vulkan

#

Its great

zealous trellis
ebon sonnet
#

Oh yeah, i have the itch version. Should mention that

zealous trellis
#

maybe itch was built in release mode. The steam version definitely wasn't. i can read it like an open book in ghidra

#

like literally. I think if i wanted i could get a fully functional source code out with a few hours of work. Not gonna do that though

digital acorn
#

it starts already its just a black screen ^^

#

We'Re trying rocknix without runtime

#

you have to scroll up and not assume things

zealous trellis
# digital acorn tried πŸ™‚

So the way FNA3D is embedded is it doesn't read the env var, instead it reads the value from a commandline paramenter and then puts it into a SDLHint.

The way i read it, all you have to do is add -renderer OpenGL

#

not sure how to set the rest of this though

#

if we can set ES3 though, i could probably ditch gl4es and have this run at 60fps locked.

#

If this is set to 1, SDL initializes GLES, through the normal path.

#

bruh, this might not be a westonpack port after all.

digital acorn
#

<< breaks everything

zealous trellis
# digital acorn << breaks everything

I really tried, but despite everything, it has hardcoded dependencies on desktop GL. FNA3D could do it, but Super Hexagon will refuse to load GL function pointers from an ES3 context. I also tried the new crusty x11egl mode, with SDL_VIDEO_X11_FORCE_EGL, but while it initializes the window and everything, it errors out with "missing GL version", probably still trying to init desktop GL.

So it stays as a westonpack port. But i will definitely try to make Panfrost work.

zealous trellis
#

also i might have found why a133p devices don't work with crusty πŸ˜…

digital acorn
#

"I accidently found the cure for cancer" that's you working on a problem

#

whoops i found out you can do xy

#

πŸ˜„

zealous trellis
#

no no it's really dumb

zealous trellis
#

I'll move this to the westonpack thread

tame escarp
tame escarp
digital acorn
zealous trellis
mellow adder
#

I have nothing to add, but this thread is super interesting

#

I'ma go back to my open-source-so-you-can-just-change it land cause you all are freaking scary wizards

zealous trellis
#

@digital acorn trick is to remove the x64 SDL2 lib from game files, or set BOX64_PREFER_WRAPPED. When you remove the X11 one from libs.aarch64, for some reason Box64 prefers the x64 lib over the system lib because the x64 lib is included in BOX64_LD_LIBRARY_PATH

zealous trellis
mellow adder
#

"Everything is mutable with enough patience!"

zealous trellis
zealous trellis
#

@tame escarp Rocknix works now.

tame escarp
#

Awesome! Going to buy it!

frosty pelican
#

Okay. solved the problem by unzipping the bin on the pc and then manually copying the data folders over.... now it's working! Very cool!

coarse rapids
#

βœ… X55 on panfrost and also on RP5

#

uuuuh actually... it works on libmali as well O.o?

coarse rapids
#

im gonna do a quick restart just in case driver didnt reloaded correctly or something, but thats hillarious πŸ˜„

coarse rapids
#

yep, the driver totally didnt reset correctly

#

so false alarm

coarse rapids
coarse rapids
#

I see I am one rocknix version behind, so Im gonna update and see if that changes anything

digital acorn
#

never tested it though πŸ˜›

coarse rapids
#

but I dont think I ever saw pm messages on rocknix

digital acorn
#

So the clause works

#
/roms/ports/PortMaster/funcs.txt: line 143: $CUR_TTY: ambiguous redirect
1
1
1
#

@molten jolt /roms/ports/PortMaster/funcs.txt: line 143: $CUR_TTY: ambiguous redirect

#

rocknix lol

molten jolt
pearl tundra
#

βœ… RGB30/arkos

#

had to manually install the runtime

#

but works well otherwise with the gog version πŸ™‚

pearl tundra
#

User error doggokek

zealous trellis
frosty pelican
zealous trellis
frosty pelican
#

Emuelec 4.8 test

#

I know that it's a different beast

#

But it has portmaster and a lot of the games are working

zealous trellis
# frosty pelican Emuelec 4.8 test

EmuElec hasn't been tested at all for the runtime and the port, so I'm really pleased to see that this is mostly working. (I don't own any devices that support it, and it hasn't been tested internally).

I'm going to see why that unzip command failed. I'm guessing EmuElec ships with a really old version of that tool?

ebon sonnet
#

Emuelec is pretty similar in age to arkos, and support has been dropped a while back. Pretty cool it works actually

ebon sonnet
ebon sonnet
#

Some here have oga/ogs

frosty pelican
ebon sonnet
#

I think binary needs unzip version, not 7z πŸ™‚

frosty pelican
#

EMUELEC:~ # unzip
BusyBox v1.32.1 (2025-01-09 15:57:35 CET) multi-call binary.

ebon sonnet
#

Thats a very new busybox versionTurtleThink

#

Nice

coarse rapids
#

4.8, thats some pre-release version, right?

frosty pelican
#

Yes, EmuElec is up and running again with a lot of updates... this is why it's great to see x11 being worked on... as EmuElec is not able (yet) to run x11

frosty pelican
#

But the official 4.8-test version is from April 2024 and the official 4.8 version should soon be released.

zealous trellis
frosty pelican
coarse rapids
#

short answer: yes

zealous trellis
# frosty pelican Sorry for my noob knowledge, but am I right to assume that with your work, it mi...

Long answer:
I've yet to write up a lot of documentation about it, but there are several different approaches this runtime provides.

For xlib apps that actually need an X11 Session to be on screen there's the DRM/GL mode. That will run stuff like Webbrowsers, little 2d games, allegro 4 etc. If your app also requires OpenGL, there's the optional mesapack runtime that can provide software rendered GL4.5 or emulated GL2.1. (It's a bit slow though because it still composites the final image on the CPU).

If your app just needs an xserver to be available in the background, there's the headless/noop mode, which runs X11, captures input but leaves the framebuffer open. If your app additionally needs GL, there's crusty (my own library) which can map X11 OpenGL into a SDL2 window, either native GLES3, or GL2.1 through GL4ES.

This port is using headless/noop and crusty_glx_gl4es to map GLX GL2.1 to SDL2 GLES2.

frosty pelican
#

Thank you for answering, even if I just understand half of it, but I will take this message into the emuelec discord to shantigilbert and the other guys that are the programmers!

coarse rapids
#

you could as well tag him here, hes on the server

#

but maybe its better discussed there, what do I know

frosty pelican
zealous trellis
#

Feel free to ask me stuff anytime. I'd love to help out with any issues. I want more ports and more devices for this runtime πŸ˜›

frosty pelican
digital acorn
zealous trellis
#

But yeah, can confirm that this is a busybox syntax issue

binary@BINARYLAPTOP:~/ziptest$ ls
busybox_UNZIP  superhexagon-05282015-bin
binary@BINARYLAPTOP:~/ziptest$ ./busybox_UNZIP "superhexagon-*-bin" "data/*" -d "."
unzip: can't open superhexagon-*-bin[.zip]
binary@BINARYLAPTOP:~/ziptest$ unzip "superhexagon-*-bin" "data/*" -d "."
Archive:  superhexagon-05282015-bin
warning [superhexagon-05282015-bin]:  235420 extra bytes at beginning or within zipfile
  (attempting to process anyway)
   creating: ./data/
  inflating: ./data/Linux.README
  inflating: ./data/SuperHexagon
   creating: ./data/x86_64/
  inflating: ./data/x86_64/libogg.so.0
  inflating: ./data/x86_64/libopenal.so.1
  inflating: ./data/x86_64/libSDL2-2.0.so.0
  inflating: ./data/x86_64/libvorbisfile.so.3
.....
coarse rapids
#

Maybe you could use standalone 7zip that is commonly used around?

frosty pelican
zealous trellis
#

seems like busybox is unable to extract the data even when given a full filename. i guess unzip can read past the installer junk, busybox can't.
I'll try the 7zip binary

zealous trellis
#

❀️ Thank you everyone for testing and helping with debugging!

livid oak
#

@zealous trellis im having the WIERDEST log out of this one, TSP on Crossmix 1.3

#

no idea what happend there

digital acorn
#

no matter the os I'm afraid

livid oak
digital acorn
coarse rapids
#

maybe it grabbed a porn game because you are fucked on tsp πŸ˜›

digital acorn
#

it does that always when its called

livid oak
molten jolt
#

line 18, column 20 is a syntax error.

"genres": [https://nanaeljustice.itch.io/skull-princess-before-the-red-moon

coarse rapids
#

tbf that game never left testing

molten jolt
#

tbf that json file is borked

coarse rapids
#

so nobody bothered to correct these files

molten jolt
#

πŸ˜„

livid oak
molten jolt
#

Because the port asked harbourmaster to download the runtime.

#

and harbourmaster, the package manager for portmaster, checks everything when it is loaded. πŸ˜„

molten jolt
#

i'm fighting with it right now, because the latest alpha has a bug... <_<

tame escarp
livid oak
zealous trellis
#
/mnt/SDCARD/Apps/PortMaster/PortMaster/libs/weston_pkg_0.2.squashfs on /tmp/weston failed: No such file or directory

And harbourmaster fails to download it because it errors out on your broken skull princess install doggokek

#

Just get it on the PortMaster App

ebon sonnet
#

Yeah crossmix will definitely not work

plain sleet
#

Thank you so much for this I’ve been hoping for it for so long!! Can’t wait to test it out

zealous trellis
plain sleet
#

also interestingly when i run the portmaster app, whenever i hover over superhexagon in installed ports, the portmaster app crashes,
the portmaster app also crashes whenever I try and go into the installed runtimes folder

#

This is on both the current muOS latest public release, as well as the latest muOS Pixie test release

magic mesa
#

PortMaster/ or PortMaster/libs?

plain sleet
zealous trellis
#

This doesn't require multiple runtimes, just Westonpack

magic mesa
#

We need to rename Portmaster to Logmaster

plain sleet
#

Also there doesn't seem to be much in the log

#
[2025-02-13 19:08:25] [*] [(null)]    Screen Output Dimensions: 640x480
Usage: /opt/muos/extra/muxstart <progress> <message>
zealous trellis
plain sleet
# zealous trellis That is an issue with pm_message on muOS I believe. Are you sure you've install...

What I did was use this to download the port from your PR, place the contents of that into /mnt/sdcard/ports/superhexagon/ then I moved Super Hexagon.sh to /mnt/sdcard/ROMS/Ports
and I put the renamed weston_pkg_0.2.squashfs into autoinstall and opened portmaster, which installed it.
I put superhexagon-05282015-bin into /mnt/sdcard/ports/superhexagon/superhexagon/gamefiles/itch
I then tried running the game, and it crashed,
and as i said, when i open the muOS PortMaster app, if i hover over super hexagon in installed ports, it crashes as well

#

Might I have missed a step or done something wrong? admittedly I don't usually try out test ports, I just wanted to try this one out as I've been wanting super hexagon for ages

#

thanks for the help! :)

digital acorn
#

So you have to use the autoinstall folders of pm

#

Else the permissions are not getting set correctly

plain sleet
zealous trellis
plain sleet
zealous trellis
plain sleet
zealous trellis
#

Note to self: I should probably add echo error messages too until pm_message works correctly on muOS

digital acorn
#

it was fixed 2 months ago or so

digital acorn
#

no offense user

ebon sonnet
#

Harry's pretty smartπŸ˜„

#

Testing can be a bit confusing at first

digital acorn
#

@zealous trellis works just fine πŸ™‚

zealous trellis
digital acorn
#

Because the pm_message function is inside funcs.txt which is called by control.txt

zealous trellis
digital acorn
#

thing is

#

muxlaunch is a program itself

#

so if you do pm_message it'll only show for a blink

#

unless nothing happens

#

so if you extract something and do that the message stays

#

so try adding sleep

zealous trellis
#

Ahhh, I thought it functioned like echo, except it printed to the console that's on screen.

#

(I think it actually does on ArkOS)

digital acorn
digital acorn
#

i added sleep of 5 for rocknix

#

maybe needs the same for muos

#

i think when i added the muos i may have tested via ssh and without anythign running

#

so it stayed there

zealous trellis
#

But according to the usage printout, there's a <progress> argument missing here

[2025-02-13 19:08:25] [*] [(null)]    Screen Output Dimensions: 640x480
Usage: /opt/muos/extra/muxstart <progress> <message>
#

The way graphics work on muOS is normally that stuff stays on screen even after the program quits, until anything else overwrites the framebuffer.

#

So I'd expect it to stay on screen until the game takes over on muOS even without the sleep

livid oak
zealous trellis
livid oak
zealous trellis
livid oak
#

its crossmix wich is running ontop of the stock os afaik, unlike knulli
i have no idea what exactly what is going wrong but it seems to go fantastically wrong

#

ill write it down as "not working for now"

zealous trellis
#

Oh yeah absolutely. The moment I saw it start trying to load strings from libGL as files, I knew something was fundamentally broken πŸ˜…

#

Yup, not for now. But I'm getting a TSP in a couple of days from @ebon sonnet and I'm hoping that I can figure Knulli and CrossMix out pretty fast. TrimUI Knulli compatibility is almost there.

digital acorn
#

Crossmix you don't even bother with

latent jasper
zealous trellis
rancid valve
#

@ebon sonnet I gotta bone to pick with you! I asked about porting this forever ago and you said it was impossible lol. Just purchased on itch and will be throwing it on some muOS devices

cunning tusk
#

It's always impossible until somebody does it :p

rancid valve
#

Hey Johnny, you wouldn't wanna make another rotated screen sdl patch for the mini zero28 would you? doggokek

cunning tusk
#

magicx folks have my no., they can send me one if they want

#

:p

#

the bits are all on my github acc., shouldn't be impossible to replicate

rancid valve
#

I'm definitely that lol

rancid valve
cunning tusk
rancid valve
zealous trellis
tame escarp
rancid valve
tame escarp
tame escarp
#

yikes

#

my miyoo flip just sits in its case

#

i have no interest in using the stock firmware at all

prisma bloom
tame escarp
prisma bloom
prisma bloom
sinful fjord
#

Just tried running Super Hexagon in my Anbernic RG351p with ArkOS wummle. Got segfault:

#

Downloaded the steam version through steamdepot. Had to manually download the zip file from the port, unpack in my sdcard, and run the port through SSH, to confirm westonpack was properly downloaded in the first run (BTW, I also tried downloading the port through PortMaster app, but Super Hexagon didn't show up for me, probably due to not being compatible, dunno).

#

Indeed westonpack was downloaded, but it failed when trying to run the game afterward, due to the segmentation fault error. Is it something from the firmware I'm using (lower glibc of sorts)? Or maybe I might get more luck with the gog or itch.io versions?

zealous trellis
# sinful fjord Just tried running Super Hexagon in my Anbernic RG351p with ArkOS wummle. Got se...

Ahh that is the same issue we had with the Hammerwatch port.
#1339475089221091338 message

It's a stupid issue where the version of SDL on the device prints a version number when loaded and that messes up my library finder. This will be fixed in the runtime itself shortly, but for now you can fix it for yourself by adding

CRUSTY_LIBSDL=/lib/aarch64-linux-gnu/libSDL2.so

Into the port script. Search for the line with "$weston_dir/westonwrap.sh" and put this text right after the "$ESUDO env", same line.

#

It should work on ArkOS in general, I've tested this on my r36s extensively

#

As for finding it in PortMaster, I believe the database has not been updated yet, even though the port is merged.

digital acorn
sinful fjord
#

Got it. I'll edit it and test later today.

#

Also, this issue might be happening only on ArkOS, right? Maybe it shouldn't happen on AmberElec for example?

coarse rapids
#

so far only arkos and only on certain images, generally for very old devices

blazing arch
#

I'm confused does this run on muOS???

#

Only asking because I don't see it on PortMaster

frosty pelican
blazing arch
digital acorn
frosty pelican
#

And also not listed in portmastergames...

digital acorn
frosty pelican
#

Ah, I see...

sinful fjord
#

I also confirm Super Hexagon works great on 480x320 resolution, with a great image quality even on an uneven resolution like this. You can tick it in the first message.