#Fez

460 messages · Page 1 of 1 (latest)

lime lagoon
#

This is not my port, but the original creator is no longer working on it and I wanted to try getting it running on X55 and possibly other devices.

The game is playable, but has issues with sound quality. It is as though the audio is compressed or being sampled at an incorrect rate. I’m hoping someone might have come across similar issues with audio in other ports and might have advice for improvement.

I’ll upload a package in a reply that works on my X55 if anyone else wants to give this a shot. You’ll need to place the files from Fez v1.12 (Linux or Windows version will work) in the fez/gamedata directory.

The latest version is available in this post:

#1162780194633941064 message

We are also testing a beta version of Fez that has compatibility with more systems. You must use the Linux Beta version of Fez (1.13 beta) available only through Steam. You can get the latest test version here:

#1162780194633941064 message

#

If your device is not an X55, the screen rotation may be incorrect with the above package. Using the “Shredder’s Revenge fix” to grab a different libSDL-2.0.so.0 file might fix it, but I don’t have another device to test it on.

unique tide
#

<@&1123159718874058882>

lime lagoon
#

It’s in fez/dlls

#

Those first few errors in your log exist on my working copy

bright anchor
#

ok, so since i didn't turn on the game for years...after patching it to 1.12 and then copying to gamefiles, the game starts. with a wrong rotation. where would i look for this shredder fix? 🙂
rgb20s/uos

lime lagoon
#

This setup isn’t very clean. I should strip out some of these libraries that aren’t needed and consolidate /dlls and /libs into a single directory.

lime lagoon
unique tide
lime lagoon
#

How embarrassing

unique tide
#

😛

lime lagoon
#

New computer, thanks for noticing

#

Should be fixed for future archives

bright anchor
#

"always be your own first code reviewer" 😄 i just left them in the zip unextracted.

bright anchor
#

after a few messages, it might be a good idea to include the Settings file in the port zip and add a few lines to the port's readme.
"in case the game runs with black bars on the sides, change scaleMode "FullAspect" to scaleMode "Supersampled" and copypaste it to /storage/.config/FEZ"

or an even better idea - include a Settings file which surely runs the game fine. or go the extra mile and include device-specific Settings files 😄

lime lagoon
#

The version above doesn’t change anything about the port, but cleans up the directory structure. If you already downloaded it, nothing new is in this version.

bright anchor
unique tide
#

it will break everywhere

#

😄

lime lagoon
#

@bright anchor helped me figure out that the startup script was deleting saves each time. I’m working on a fixed package now.

lime lagoon
#

This version fixes the ability to save the game and moves the save and log files into the fez/savedata directory. You should do a fresh install if you’re using a previous version.

lime lagoon
bright anchor
#

but it will resolve the potentially 'graphically broken' things i've seen - e.g. not even seeing the player character when the cube shows up and you get the Fez (3d hat)

obtuse pier
#

Good effort! This was on my to-do list but you beat me to it. This plays full speed on the OGU and Max 3 with no issue. If you set the resolution in the settings file to the 720p resolution it will scale the game to fit the screen rather than crop it on screens smaller than 720p so supply the settings file in the port and it should be fine for all devices.

#

As for the custom SDL lib you use. In the Portmaster control.txt file there are variables set for device and FW. You could use those to reference the special SDL only for the x55. I can send you an example later.

bright anchor
#

hm.

while the new build has black bars, (and cut off content on mainmenu) the visual defects we talked about are no longer present - you can't hide in the black bars, you see the full body in the school area as well as the cube area.

i don't think using a settings file with 800x600 is really needed atm, so it's just about stretching it across the whole screen. let me try with the supersampled thing again.

obtuse pier
#

You could up the res and it will crop into the game the higher you go.

bright anchor
#

but saves work. "video settings" still crash the game though.

obtuse pier
#

Yeah that's an issue having no Open GL and a null list for available device resolutions.

obtuse pier
bright anchor
#

i managed to get a 4:3 resolution working fullscreen on the previous build, but as it was observed, some rooms were visually broken (eg the player character wasn't visible onscreen).
the new build has these black bars on the sides, but they're not artificial overlays over the viewport - the viewport does not extend behind them, so thats a step in the right direction i think.

since i've been playing with 800x600 and i don't seem to notice any improvements over the 640x480 so far playing until after the cube screen. but lemme tinker with it some more.

unique tide
obtuse pier
bright anchor
#

but sure, why not. i can take a peek.

#

mmm... nope, i can't get rid of the black bars on this new build. so that's something the first build had going for it, minus the saves 🙂

obtuse pier
#

Pretty much. Just have to make sure you get a whole number back.

bright anchor
#

supersampled isn't the answer either.

obtuse pier
#

Think that's what I used.

bright anchor
#

in fact, supersampled makes things smaller than they should be. somehow supersampled 640x480 is tinier than 800x600. fullaspect worked fine.

obtuse pier
#

No more black bars?

obtuse pier
bright anchor
obtuse pier
#

Have you removed the preload of the SDL library in the launch script?

bright anchor
obtuse pier
#

You're not trying this on the x55 right?

bright anchor
obtuse pier
#

Yeah I think that's just for the x55, comment it out and try again.

bright anchor
#

hmm...

# # # export path for local libSDL
export LD_PRELOAD=$gamedir/libs/libSDL2-2.0.so.0

perhaps it's because it should really be this

# # # export path for local libSDL
export LD_PRELOAD=$gamedir/dlls/libSDL2-2.0.so.0
lime lagoon
unique tide
#

I wrote that way back up that supplying sdl2 is very problematic

lime lagoon
#

It has the same issue as Shredder’s Revenge if SDL isn’t bundled. I’m not sure how to overcome that at the moment besides rolling back to an old OS version.

#

I’m assuming we’d need a new build of the mono squashfs that’s built for the new SDL in order to overcome this hurdle?

unique tide
#

So if clause if x55

lime lagoon
#

Hmm, if SDL fixes aren’t needed at all on other devices, I wonder if ALL of my fixes (beyond fixing saving) are X55-specific? I wonder if folks could try the original port before I started working on it and see if it runs on their devices. https://github.com/jtothebell/port-packages/

GitHub

Contribute to jtothebell/port-packages development by creating an account on GitHub.

#

If that version runs for anyone else but doesn’t save, that would give a great baseline for exactly what needs to be updated and for which devices.

unique tide
#

Good idea

obtuse pier
#

Here's something I'm working on for another port, I can't see the X55 in the Portmaster/control.txt file, might need adding or maybe we can get it more elegantly from elsewhere. The joystick path might not me unique to the X55 also. Not looked too hard into it yet.

if [[ -e "/dev/input/by-path/platform-gou_joypad-event-joystick" ]]; then
  DEVICE="03001354474f2d556c74726120476100"
  param_device="ogu"
  LOWRES="Y"
  export HOTKEY="guide"
fi

# Load custom SDL if device is OGU on JELOS
if [ "${OS_NAME}" == "JELOS" ] && [ $param_device == "ogu" ]; then
  export SDL_DYNAMIC_API=$GAMEDIR/libs/libSDL2-2.0.so.0-custom
fi```
unique tide
lime lagoon
obtuse pier
#

Yeah sure, I'll give it a proper look, wont be today I'm afraid.

obtuse pier
lime lagoon
# bright anchor i dont see releases?

Download the whole repo (click the green Code button > download zip) then put Fez.sh and the fez directory in roms/ports with your game files in gamedata. Make sure you remove my Fez.sh and fez directory first.

bright anchor
bright anchor
# lime lagoon Download the whole repo (click the green Code button > download zip) then put Fe...

this port is seems to be very sensitive...

1st run: crash on start.


Unhandled Exception:
System.TypeInitializationException: The type initializer for 'Common.Util' threw an exception. ---> System.IO.IOException: The file '/storage/.local/share/FEZ' already exists.
  at System.IO.FileSystem.CreateDirectory (System.String fullPath) [0x001f1] in <232d2ec5aa2f429a82060c0ba99debd7>:0 
  at System.IO.Directory.CreateDirectory (System.String path) [0x00033] in <232d2ec5aa2f429a82060c0ba99debd7>:0 
  at Common.Util.GetLocalSaveFolder () [0x000cd] in <aef419e9f9b4405d90c5657b1835d6bf>:0 
  at Common.Util..cctor () [0x00000] in <aef419e9f9b4405d90c5657b1835d6bf>:0 
   --- End of inner exception stack trace ---
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Common.Util' threw an exception. ---> System.IO.IOException: The file '/storage/.local/share/FEZ' already exists.
  at System.IO.FileSystem.CreateDirectory (System.String fullPath) [0x001f1] in <232d2ec5aa2f429a82060c0ba99debd7>:0 
  at System.IO.Directory.CreateDirectory (System.String path) [0x00033] in <232d2ec5aa2f429a82060c0ba99debd7>:0 
  at Common.Util.GetLocalSaveFolder () [0x000cd] in <aef419e9f9b4405d90c5657b1835d6bf>:0 
  at Common.Util..cctor () [0x00000] in <aef419e9f9b4405d90c5657b1835d6bf>:0 
   --- End of inner exception stack trace ---

lemme fix and retry...

2nd run: after renaming /storage/.config/FEZ to something else and confirming that /storage/.local/share/FEZ does not exist, crash on start again. same stacktrace.

obtuse pier
lime lagoon
#

That’s not the same kind of errors I was getting when trying that version, but the behavior is similar - exceptions that shouldn’t normally crash the game (like a save location already existing, which should be normal for the retail game to encounter and overcome) would stack dump. Curious if it works for you with Daedalia’s launch script instead.

bright anchor
potent vale
lime lagoon
#

Sorry, I haven’t had a lot of time to work on this but it sounds like a new package that rips out the SDL libs or only uses them on X55 is the next step. So far the confirmed playable devices are X55, OGU and Max 3. Does anyone have an RG503 they might be able to test on? I think that device has a good shot at running this port based on the other devices that support it. It’s hard to explain exactly why without spoiling some game mechanics but I don’t think that 640x480 devices can consider this one “playable” even if it can be made to run performantly on them.

torn basin
#

Works great on X55 but l guess that goes without saying. lol

lime lagoon
obtuse pier
#

The RG552 struggled with FEZ, could it be performance related? Is it constant?

queen locust
#

When I was initially working on this I was testing on my 552 and I didn’t notice any performance issues, but I didn’t test very far in the game either. I think I was running JELOS but before 552 got mainline support.

bright anchor
lime lagoon
queen locust
lime lagoon
bright anchor
# lime lagoon

but i did clean installs. tho fair enough, let me try again i suppose...
is this the latest uploaded version?

lime lagoon
#

That’s the right one. Be sure to remove
/storage/.config/FEZ/Settings if you didn’t already

obtuse pier
#

I found it after the 552 mainlined, would stutter a bit in early levels, later would get worse but I'm a stickler for smooth mind, very playable. @bright anchor are you getting audio issues like CEpeep mentioned?

bright anchor
bright anchor
# lime lagoon Replace your fez/dlls/libSDL2-2.0.so.0 with this one

after a clean install - it's rotated wrongly on the rgb20s but has no black bars.

if i apply the DLL @lime lagoon sent in the quoted post - it's rotated correctly and had no black bars on loading screen.
after loading screen was finished, it crashed.

on a second run, no black bars on loading screen, but the black bars were there after the loading screen went away. the game starts fine. i can walk into the black bars. saving works. video settings still crash the game.

#

so either the DLL is introducing problems with the black bars, or something changed.

i remember getting some DLLs off the internet and they too were causing these black bars to appear, but when i used the one from the quoted post above - the black bars were gone (on the previous version of the game, where the saving did not work yet)

#

perhaps the latter runs rewrote the log, since this is all i have in it

ERROR: ld.so: object '/libs/libSDL2-2.0.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/libs/libSDL2-2.0.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
Attempting to patch...
Attempting to use FezPatches (Main: Void Main())
Found FezPatches, running...
ERROR: ld.so: object '/libs/libSDL2-2.0.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ALSA lib /home/uos/UnofficialOS/build.UnofficialOS-RGB20S.aarch64/alsa-lib-1.2.6.1/src/pcm/pcm.c:8568:(snd_pcm_recover) underrun occurred
obtuse pier
#

What resolution you got set in config?

bright anchor
obtuse pier
#

Try a 16:9 resolution 720p, sounds odd but should work and scale the whole game display into view. Try another firmware off you're up for that. I have no knowledge of this other SDL though but could be something related to a 4:3 res you have set.

bright anchor
#

i'm not gonna switch my OS just for this game. if you look through the thread, you can see two versions being uploaded... if not, i probably still have both in Downloads folder. on one, it works great and is fullscreen but saving is broken (not fixed yet), but on the one where the saving is fixed - it just doesn't stretch it fullscreen.

and the funny / codesmelly thing is, the loading screen is nicely across the whole screen, and then some resize happens and black bars appear (or main menu gets distorted).

800x600 has the same black bars too, just runs a tad slower.

but 16:9 is something new to be explored.

bright anchor
#

the black bars are there with 640x360
1280x720 - black bars are still there, only bigger. the "trapdoor" from the intro barely fits between them. the "FEZ" from main menu has F cut in the middle, and Z cut in the middle. funny enough the "press A to start" is completely visible.

bright anchor
lime lagoon
#

I’m not done with this one but I’m taking a break to work on a couple other ones until I have more skill. I need to come back and improve this one (mainly by removing SDL and including a working Settings file) but it might be awhile before I get to it.

obtuse pier
#

Take the version with save working and remove the preload line that points to the SDL lib. Did you do that like Cebion and I suggested a while back?

bright anchor
bright anchor
bright anchor
#

hahaha... ok. i got it to work on uOS.
so i assumed (presumed more likely) the new sdl lib does the rotation kinda wonky... so after using 480x640 (instead of the default 640x480) in the Settings file - it looks fine.
main menu displays FEZ entirely, there's no black bars anywhere.

lime lagoon
#

Would you be willing to upload your working Settings file here? I’ll include it as the default for 640x480 devices in a future package.

bright anchor
#

that being said, something definitely changed between the two versions, since the latter (last) version expects a "reversed" resolution in order to work fine with the rotating library 🙂 but - it doesn't matter much anymore and i can let it go. the game finally works and can save 😄

relevant part of settings

settings type="FezEngine.Tools.Settings, FezEngine" {
useCurrentMode false
screenMode "Fullscreen"
scaleMode "FullAspect"
width 640
height 480

lime lagoon
#

The incorrect rotation is the result of bundling SDL - still needed for X55 on JELOS but produces bizarre results on other devices. I’ll be sure to ping this chat when I have a version that disentangles this ready for testing. I will make sure that future versions preserve the save files as well so you won’t lose progress while helping test going forward.

#

Thanks for confirming your current results and attaching the Settings file

bright anchor
# lime lagoon The incorrect rotation is the result of bundling SDL - still needed for X55 on J...

thats alright, and the other SDL library "fixes" the rotation (lets call it SDL2R lib). my question was really - why does the version with the broken save work fine in 640x480 resolution with the SDL2R library, but the new version with the fixed saves require you to "rotate" the resolution as well in order to produce same result with the SDL2R library? why does the new version need to use 480x640 to work fine with the SDL2R library?

doesn't that imply that something else has changed either in the code invoking SDL or the actual rendering code? it's just something to think about, why the rotation suddenly needs you to rotate the screen's resolution while it didn't need to in the past.

unique tide
#

usually

#

users don't even know about it

#

he probably modified the .sh or added libs

#

inbetween versions

lime lagoon
#

X55 has a weird setup that ships both a rotated and standard SDL in order to support both the built in screen and HDMI output. I’m trying to figure out if it’s possible to support both screen and HDMI without shipping any SDL libraries but I’m not ready to release anything new at this time.

unique tide
#

and i thought jelos had that under control

#

So the only issue youd have is a rotated screen in hdmi

#

all my ports on my x55 are not rotated and I also never ship any sdl2 lib

lime lagoon
#

Without the bundled SDL, Fez does not work on X55 and dies with a similar weird error to what was killing older builds of TMNT.

unique tide
#

Ah yeah

#

but because jelos updated to a newer sdl

#

and that broke mono

#

So they decided to include "older" sdl2 versions where it still works

bright anchor
# unique tide SDL2 is rotated on cfw bases automatically

the problem i'm getting at is a different one, but i've repeated it enought times that i'm 'pretty sure' that some change snuck up somewhere. (because why else would this behaviour change between the two versions?)
tl;dr portV1 worked fine with the rotated SDL lib on 640x480, portV2 (latest) doesn't work fine with the rotated SDL lib on 640x480 - but works fine when the resolution is also rotated to 480x640.

it's this same 'pretty sure' reason paired with the fact that a 16:9 720p resolution had bigger black bars that made me try a rotated resolution in the first place.

obtuse pier
#

@bright anchor What was the result of removing the reference to the SDL lib?

#

Glad you got it working but it's a workaround, need to get to the bottom of the problem. That SDL has been built for a different device configuration than yours.

obtuse pier
#

uOS on the RG351MP, 640x480 device. Removing the SDL reference, game loads fine with no tweaks to config. Setting the res as 1280x720 in config and the game screen scales to the device window with letterboxing, performance drops off a cliff. Setting 940x705 in config and the game fills the device window cropping left and right and a bit off top and bottom, but is a happy interim. Performance not great on the RK3326. Will cause some issues cropping things out of shot such as speech bubbles, will test other resolutions to find a sweet spot.

bright anchor
obtuse pier
#

How about removing the SDL library as well?

bright anchor
obtuse pier
#

Just libSDL. Could be its picked up on another path.

bright anchor
#

renaming dlls/libSDK-2-2.0.so.0 to libSDK-2-2.0.so.0.removed does nothing. the "rotated" resolution is still needed since the game was working fine with 480x640

obtuse pier
#

Strange. I'll have a deeper look. The RGB20S is very similar to the RG351MP.

nova tree
#

Does this port support 480x320 resolutions, for RG351P users? Or is it only for higher resolutions?

lime lagoon
nova tree
#

Sure. I'll try it out when I have some spare time

bright anchor
ionic citrus
#

does this work on 353v

obtuse pier
obtuse pier
obtuse pier
#

@bright anchor Try this launch script.
@lime lagoon Doesn't seem like the lbrary preload was working, the SDL lib was being picked up through the LD_LIBRARY_PATH, I've reordered and added a path so the system ones take precedence. I've replaced the LD_PRELOAD with SDL_DYNAMIC_API to select the desired SDL lib which I think will work better across devices unless a more experienced hand thinks otherwise. You may also only need libSDL2-2.0.so.0 and put them in the libs folder. dlls should be mono related libraries. Give it a test uncommenting the SDL_DYNAMIC_API line, we can figure out an if clause to surrond that with later.

unique tide
#

You can try using the tmmt libs and dll files

#

let me try on my x55 real fast

obtuse pier
#

Far as I read it was only the X55 & TMNT affected and Jonny was aware of the issue, something to do with the way he patched TMNT. Not entirely sure it is needed here TBH because I thought it only affected TMNT, the workaround was to use an older version of SDL in the case of the X55.

unique tide
#

I really want to go away from any ld_preloading whatsoever

#

that is so ugly

obtuse pier
#

Yeah, not needed here at all.

#

Only good use I've seen of it is when Jonny was patching some box86 stuff.

#

The above does away with it.

#

@lime lagoon What was the log running the vanilla version of FEZ from jtothebell?

unique tide
# obtuse pier <@212320515208118273> What was the log running the vanilla version of FEZ from j...
x55:/roms/ports # ./Fez.sh
/roms/ports/PortMaster/control.txt: line 17: warning: command substitution: ignored null byte in input
p-cores: 0,1,2,3 (@1992.0001mhz)
cmd: taskset -c 0,1,2,3
umount: can't unmount /roms/ports/PortMaster/libs/mono-6.12.0.122-aarch64.squashfs: Invalid argument
grep: /usr/share/plymouth/themes/text.plymouth: No such file or directory

Unhandled Exception:
System.TypeInitializationException: The type initializer for 'Common.Util' threw an exception. ---> System.IO.IOException: The file '/storage/.local/share/FEZ' already exists.
  at System.IO.FileSystem.CreateDirectory (System.String fullPath) [0x001f1] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at System.IO.Directory.CreateDirectory (System.String path) [0x00033] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at Common.Util.GetLocalSaveFolder () [0x000cd] in <bc7a950cd86140f4b8d628776bd88c9a>:0
  at Common.Util..cctor () [0x00000] in <bc7a950cd86140f4b8d628776bd88c9a>:0
   --- End of inner exception stack trace ---
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Common.Util' threw an exception. ---> System.IO.IOException: The file '/storage/.local/share/FEZ' already exists.
  at System.IO.FileSystem.CreateDirectory (System.String fullPath) [0x001f1] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at System.IO.Directory.CreateDirectory (System.String path) [0x00033] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at Common.Util.GetLocalSaveFolder () [0x000cd] in <bc7a950cd86140f4b8d628776bd88c9a>:0
  at Common.Util..cctor () [0x00000] in <bc7a950cd86140f4b8d628776bd88c9a>:0
   --- End of inner exception stack trace ---
Failed to restart oga_events.service: Unit oga_events.service not found.
./Fez.sh: line 67: 38642 Killed                  $GPTOKEYB "mono"````
obtuse pier
unique tide
#

are they also using libSDL2.28.2 ?

obtuse pier
unique tide
#

The shipwreck broke works with 2.26.5 but not wiht 2.28.2

unique tide
#

that was floating around

obtuse pier
#

Try mine, a few posts up.

unique tide
#
x55:/roms/ports # ./Fez-X55.sh
/roms/ports/PortMaster/control.txt: line 17: warning: command substitution: ignored null byte in input
p-cores: 0,1,2,3 (@1992.0001mhz)
cmd: taskset -c 0,1,2,3
umount: can't unmount /roms/ports/PortMaster/libs/mono-6.12.0.122-aarch64.squashfs: Invalid argument
'/storage/.local/share/FEZ' -> '/roms/ports/fez/savedata'
'/storage/.config/FEZ' -> '/roms/ports/fez/savedata'
grep: /usr/share/plymouth/themes/text.plymouth: No such file or directory

Unhandled Exception:
System.TypeInitializationException: The type initializer for 'Common.Util' threw an exception. ---> System.IO.IOException: The file '/storage/.local/share/FEZ' already exists.
  at System.IO.FileSystem.CreateDirectory (System.String fullPath) [0x001f1] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at System.IO.Directory.CreateDirectory (System.String path) [0x00033] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at Common.Util.GetLocalSaveFolder () [0x000cd] in <bc7a950cd86140f4b8d628776bd88c9a>:0
  at Common.Util..cctor () [0x00000] in <bc7a950cd86140f4b8d628776bd88c9a>:0
   --- End of inner exception stack trace ---
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Common.Util' threw an exception. ---> System.IO.IOException: The file '/storage/.local/share/FEZ' already exists.
  at System.IO.FileSystem.CreateDirectory (System.String fullPath) [0x001f1] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at System.IO.Directory.CreateDirectory (System.String path) [0x00033] in <232d2ec5aa2f429a82060c0ba99debd7>:0
  at Common.Util.GetLocalSaveFolder () [0x000cd] in <bc7a950cd86140f4b8d628776bd88c9a>:0
  at Common.Util..cctor () [0x00000] in <bc7a950cd86140f4b8d628776bd88c9a>:0
   --- End of inner exception stack trace ---
Failed to restart oga_events.service: Unit oga_events.service not found.
./Fez-X55.sh: line 79: 39751 Killed                  $GPTOKEYB "mono"
#
# export path for local libSDL
# export SDL_DYNAMIC_API=$GAMEDIR/libs/libSDL2-2.0.so.0``` is still commented
#

Wow this thread is long, need to pin packages 😄

obtuse pier
#

If that don't work, one more thing I have a suspicion about.

#

Ah, and move the SDL libs from dlls to libs

#

Or change the path to them

unique tide
unique tide
# obtuse pier Ok try this package https://discord.com/channels/1122861252088172575/11627801946...
x55:/roms/ports # ./Fez-X55.sh
/roms/ports/PortMaster/control.txt: line 17: warning: command substitution: ignored null byte in input
p-cores: 0,1,2,3 (@1992.0001mhz)
cmd: taskset -c 0,1,2,3
umount: can't unmount /roms/ports/PortMaster/libs/mono-6.12.0.122-aarch64.squashfs: Invalid argument
'/storage/.local/share/FEZ' -> '/roms/ports/fez/savedata'
'/storage/.config/FEZ' -> '/roms/ports/fez/savedata'
grep: /usr/share/plymouth/themes/text.plymouth: No such file or directory


SDL Dynamic API Failure!
Couldn't load an overriding SDL library. Please fix or remove the SDL_DYNAMIC_API environment variable. Using the default SDL.



SDL Dynamic API Failure!
Couldn't load overriding SDL library. Please fix or remove the SDL_DYNAMIC_API environment variable. Using the default SDL.

Attempting to patch...
Attempting to use FezPatches (Main: Void Main())
Found FezPatches, running..```
#

Starts

obtuse pier
#

Hmm, loaded on the 351 rotated, hows it look? Right way round?

unique tide
#

yep

#

Yeah the 351 screen is rotated by default, and the custom sdl2 provided by cfw rotates the screen

#

Wait I'm stupid

#

I didn't move the sdl2 libs

#

after moving them from dll to libs no longer works

obtuse pier
#

What I mean is the dynamic API worked on mine and rotated the screen which I expected not being the correct lib for the device.

#

Ah I see. But means you don't need them if it loaded fine without them.

unique tide
#

If i move them all to the libs folder won't start anymore

#

If i move them to the dll folder game starts

#

with your script

obtuse pier
#

Just the SDL libs?

unique tide
#

yep

#

the only dll thing in the launchscript is

export FNA_PATCH="$GAMEDIR/dlls/FezPatches.dll"
export MONO_PATH="$GAMEDIR/dlls"```
#

Let me cleanup the dll folder

#

all it wants is libSDL2-2.0.so.0 in the dll folder

obtuse pier
#

So anything with dll in the name stayed in the dll folder, just to be sure.

unique tide
obtuse pier
#

Bon

#

What's the log with that setup?

unique tide
# obtuse pier What's the log with that setup?
x55:/roms/ports # ./Fez-X55.sh
/roms/ports/PortMaster/control.txt: line 17: warning: command substitution: ignored null byte in input
p-cores: 0,1,2,3 (@1992.0001mhz)
cmd: taskset -c 0,1,2,3
umount: can't unmount /roms/ports/PortMaster/libs/mono-6.12.0.122-aarch64.squashfs: Invalid argument
'/storage/.local/share/FEZ' -> '/roms/ports/fez/savedata'
'/storage/.config/FEZ' -> '/roms/ports/fez/savedata'
grep: /usr/share/plymouth/themes/text.plymouth: No such file or directory


SDL Dynamic API Failure!
Couldn't load an overriding SDL library. Please fix or remove the SDL_DYNAMIC_API environment variable. Using the default SDL.



SDL Dynamic API Failure!
Couldn't load overriding SDL library. Please fix or remove the SDL_DYNAMIC_API environment variable. Using the default SDL.

Attempting to patch...
Attempting to use FezPatches (Main: Void Main())
Found FezPatches, running...```
#

@dreamy citrus maybe here it's also something similar.
At least exchaging the libs did not help

obtuse pier
#

export SDL_DYNAMIC_API=$GAMEDIR/dlls/libSDL2-2.0.so.0

dreamy citrus
#

using SDL_DYNAMIC_API is asking for trouble

#

LD_PRELOAD or LD_LIBRARY_PATH if you're unsure

unique tide
#

yeah need to focus why it's not booting and ignore the sdl2 load stuff

dreamy citrus
#

only use SDL_DYNAMIC_API for games that are ABSOLUTELY necessary

obtuse pier
#

Really.

dreamy citrus
#

and ABSOLUTELY NECESSARY are only games where SDL2 was statically linked to it

#

that's what SDL_DYNAMIC_API exists for

unique tide
#

Here it complains about

[0x7faff648e0:] EXCEPTION handling: System.EntryPointNotFoundException: No matching entry point found for mono_pagesize in MonoMod.RuntimeDetour.Platforms.DetourNativeMonoPlatform

obtuse pier
#

PRELOAD didn't go so well either

dreamy citrus
#

No matching entry point found for mono_pagesize in MonoMod.RuntimeDetour.Platforms.DetourNativeMonoPlatform
that's an interesting one

#

haven't run into it

obtuse pier
#

Only on X55

dreamy citrus
#

I haven't touched phil's "suck my dick choke on it" fish game yet, I'd have to grab it and check

unique tide
#

@obtuse pier I'd rather wait until the fna.dll is fixed rather than push anything out that replaces sdl2 libs

dreamy citrus
#

there is something fishy with SDL2 for what is worth, replacing it is a bad call

dreamy citrus
#

my current workaround is just avoiding triggering the bug, but it'd be neat to understand what's triggering this

obtuse pier
#

Yeah, as I say it's fine on all the other devices I've tested, just users with the x55 having issues. CEpeep had it working on his with what he uploaded, just stabbing in the dark with presumptions without the device.

unique tide
#

It's good for ports

dreamy citrus
#

there are some workarounds that are okay to use personally but I'd rather not have floating around

obtuse pier
#

Ha, I contemplated it. Wish the Max 3 had that screen

dreamy citrus
#

this is kind of one of them

obtuse pier
#

Actually Ceb, did the pachage you pinned not work at all before messing with it?

unique tide
#

Idk

#

UHM yes it did work

#

But that was with the tons of libs just added

#

Because someone could

obtuse pier
#

Yep, cheers 👍

#

Don't look too closely at OpenXcom 😅

dreamy citrus
#

fez after fixing crashes just deadlocks on loading

obtuse pier
#

What did you do to fix the crashes out of interest?

dreamy citrus
#

the game is using introspection to read internals of FNA which seem to have changed

#

the result of that is a crash

obtuse pier
unique tide
dreamy citrus
#

I won't bother with Fez for now - it's filled with odd behavior and it only really works on 720p+ panels

obtuse pier
bright anchor
#

@obtuse pier so you want me to test what again? 🙂

dreamy citrus
#

BTW - from some chats there's a Linux beta build on Steam you can download, and early tests shows that it works fine

#

but caveat still applies right? 720p only

obtuse pier
lime lagoon
#

Weird, 1.12 was supposed to be the “final update” over 7 years ago. I do see a Beta depot for all platforms from 7mo ago on Steam but I can’t find information anywhere about what’s new or changed in this Beta. My only guess is perhaps minor bug fixes from the Switch release of the game working their way back into the PC version.

obtuse pier
#

Could be FNA related.

dreamy citrus
#

yeah

dreamy citrus
obtuse pier
#

Pretty decent on the OGU

dreamy citrus
#

OGU/RG503 should be.... uhh

#

"not great"

#

X55 being ideal

obtuse pier
#

Flawless

dreamy citrus
#

but all of the 3.5'' stuff are unplayable really

obtuse pier
#

Only thin lines in the menus give it away

lime lagoon
#

I would think the RG503 would be ok - this game had a port to Vita using the same assets as the other versions

dreamy citrus
#

I'll check it out, I can give some directions on how to pull the beta from download_depot etc

obtuse pier
lime lagoon
#

Stands to reason that it would look ok on other devices using the same screen res as the Vita

dreamy citrus
obtuse pier
lime lagoon
#

I think anything smaller than ~75% would lose critical detail in this game. Even if it works at 50% scale, I don’t think you can fully experience the game that way

dreamy citrus
#

download_depot 224760 224762 3510459633630731770

obtuse pier
#

Yeah there are some levels that really zoom out but text is still readable on the OGU

lime lagoon
#

What’s the screen res on the OGU again?

dreamy citrus
#

854*480

lime lagoon
#

Ok. I have an OGS with busted buttons I could possibly try this on, but I assumed that performance on RK3326 would be unacceptable, especially late game.

dreamy citrus
#

late game?

#

ha

#

the first screen outside of his house is already laggy

#

:p

obtuse pier
#

Yeah RK3326 hasn't got enough umpf

dreamy citrus
#

gotta check out if the game is doing something silly behind the curtains, but it's gonna have to wait

#

some of these games start getting into silly territory with these things... salt and sanctuary was already quite the adventure

lime lagoon
#

Particles everywhere murder performance

obtuse pier
#

And 3D

dreamy citrus
#

if I had to throw a wild guess, I would honestly just expect it to be fillrate bound :/

unique tide
dreamy citrus
#

either that, or the game is pushing some nonsense level of instances during rendering and failing to batch it all

obtuse pier
#

Beta runs with the libs pulled from Shipwreck, guess the real test is the X55.

lime lagoon
obtuse pier
#

Yeah sure, have to deal with my kids so will be a few hours.

#

For what it's worth, I'm about 20% through. This is the worst of the scaling I've seen, can't make out the button, but meh. Could probably patch this easy enough.

#

Haven't got out my note book yet.

obtuse pier
#

Here you go, no need for the previous patch either.

#

Settings is in savedata for now.

lime lagoon
#

This goes with the Beta version from Steam, right?

obtuse pier
#

Yup

lime lagoon
#

This did not work on X55. It crashed with a similar error to the original port by jtothebell before I added the SDL libraries. I’ll attach a log.

obtuse pier
#

See what Mr Flame thinks.

obtuse pier
#

Shame. Found a changelog for what it's worth

------------

** Features **

- Added graphics option to choose the monitor to use

** Bug Fixes **

- Game will now start if you don't have any audio device
- Added detection for new Dual Shock 4 models, so that they get the right button glyphs
- Fixed threading-related crash issue (https://github.com/renaudbedard/fez-1.12-issues/issues/167)
- Fixed another threading-related crash issue (reported by email, related to having a cube spawn as you load a save file)
- Fixed support for multi-monitor with mismatched DPI settings
- Fixed world map gamepad controls on large resolutions```
lime lagoon
#

Nice

dreamy citrus
#

pull the dlls/bins from Anodyne and test

#

using the download_depot 224760 224762 3510459633630731770 depot

#

if it doesn't work, add --trace=E:all to the mono line on the .sh file os that you have $TASKSET mono --trace=E:all <...>

#

the SDL2 crash I'm not 100% sure is related, I think that this crash might be during shutdown, which causes the actual exception to get lost in the ether

lime lagoon
#

Ok, using the package from Daedalia, the dlls and libs dirs from Anodyne and the 1.13 beta for Linux, the game starts on X55, but it is missing graphics. The Polytron sound plays but their animated logo does not appear. The other intro logos are normal, followed by the FEZ logo and the Press A prompt. From then on, most of the graphics are simply missing. You can load a save and hear audio in the background but nothing is on screen.

#

Notably, I did not need any additional or X55-specific SDL libraries to get the game to start with this configuration.

#

Debug log has an error about unaccepted floating point NaN values. I’ll upload the log in a moment.

#

@dreamy citrus use of the files from Anodyne seems to have brought progress on a couple other ports I’m working on as well.

dreamy citrus
#

Dll

#

You can regenerate them with --aot=llvm etc

lime lagoon
dreamy citrus
#

they free up a bit of memory usually, and can improve perf a tiny bit, but you dont really need them

#

you can do mono --ffast-math -O=all --aot=llvm <FILE>

#

it takes a long fucking time tho

#

not so much for FNA itself

#

but it's rough for big games

lime lagoon
#

If there’s one thing the X55 has in excess, it’s RAM. I’ll keep this in mind if it gets sluggish later though.

#

This same basic package worked for Wizorb as well after I got some other issues ironed out. I wonder what other FNA games might be possible now.

obtuse pier
#

Excellent news. Thanks @unique tide & @dreamy citrus. Shipwreck still has issues with ArkOS, would these libs potentially help with that? What's the difference between them, is it just a newer version or something custom?

dreamy citrus
#

I have shipwreck working

#

just need to push the updates

#

I want to see if I can do some small tweaks before

obtuse pier
#

@bright anchor I came across the exact same issues you were having with a later package of FEZ with no SDL libs on the Max 3 with Retro Arena. The file permissions issue and the screen rotation. @lime lagoon can you share your latest work please so I can test the fix.

lime lagoon
#

Sure, give me a few hours. I’ll package the latest version I have working with 1.13beta.

lime lagoon
#

@obtuse pier Here’s an updated package requiring 1.13b Linux. This keeps your changes to the launch script, adds in some improvements I learned from working on a couple other ports, and bundles the latest libraries from the Anodyne release.

bright anchor
#

so whats the benefit of using this one over the one i already fixed with the inverted resolution hack? 😄

lime lagoon
#

The version above should “just work” on many devices. You’ll also get Fez 1.13 which has some minor bug fixes compared to 1.12.

unique tide
#

#wrong channel 😄

#

this is the fez channel

#

😄

icy crane
unique tide
#

but not in here

#

😛

#

you can link to convos and @ people from other channels like i did 😛

lime lagoon
#

Anybody got a Trimui Smart Pro they might be able to test this one on?

unique tide
#

Not worth it

lime lagoon
#

Whoops, saw folks were already playing Stardew on that device and figured it was ready for testing. Will have to come back to this one once it’s ready, it could be a great device for playing Fez.

unique tide
fading tangle
iron rapids
#

🤓 captain aspect ratio reporting in here 🫡
I made an edit to the .sh that can be used to copy in a default config and set either original 16:9 aspect ratio, or VERT+ mode, as opposed to the default that is VERT-/HOR- if you're under 720p

# copy in default Settings file if it doesn't exist
if [ ! -f "$GAMEDIR/savedata/Settings" ]; then
  cp "$GAMEDIR/savedata/Settings.default" "$GAMEDIR/savedata/Settings"
fi

# The game is 16:9 1280x720 by default, setting supersampled and a 16:9 res based on device resolution will letterbox and maintain original aspect ratio
    # scaleMode "Supersampled"
    # width 640
    # height 360
# using scaleMode "Supersampled" without setting 16:9, will make it VERT+ (tested on 4:3)
# set this to "yes" if you want to do that
vert_plus="no"

scaleMode="Supersampled"
width=$DISPLAY_WIDTH
if [[ $vert_plus == "no" ]]; then
  height=$((width / 16 * 9))
else
  height=$DISPLAY_HEIGHT
fi

sed -i -E \
-e "s/^(\s*scaleMode\s+).*/\1\"$scaleMode\"/" \
-e "s/^(\s*useCurrentMode\s+).*/\1true/" \
-e "s/^(\s*width\s+).*/\1$width/" \
-e "s/^(\s*height\s+).*/\1$height/" \
$GAMEDIR/savedata/Settings
#

oh and you would need to

source $controlfolder/device_info.txt

earlier on in the SH

lusty wing
#

RG351P, ArkOS.
Reached the top of the village, the cube appeared and during that scene the game crashed.

nova tree
#

Regardless of the crash, what about text readability, and game performance?

#

I also have a RG351P w/ ArkOS wummle's fork, and I'm considering trying this game on my device.

lime lagoon
#

It’s not going to be playable on rk3326 devices, already been tested pretty thoroughly with the previous version.

fading tangle
iron rapids
#

logo / screenshot based on 4:3 "VERT+" mode posted above

vague island
#

this game is so frikkin good, it's a cryin shame Phil Fish quit the game dev industry

lusty wing
vague island
#

ack

nova tree
#

lol

#

super meat boy also crashed for me in one of the secret warp zones. got a BSOD and a meat boy with its eyes in the belly and its nose in the ass

iron rapids
#

I'm confused too, I think I've played all the warp zones but it's been too long 😂

vague island
#

i'm gonna do it!

#

i'm doing it!

iron rapids
vague island
#

i did it!

#

ok i like this better than letterboxed

#

i have to say i didn;t really know what vert mode was until i tried it

iron rapids
#

sorry, yeah, I'm kinda used to all the terms from running ultrawide monitors for a while

#

VERT+ = same horizonal width, but you can see more vertically

#

for those playing at home

vague island
#

i do sort of miss the readability of the regular/default 4:3 mode but its also nice to be able to see so much at once... and not have text run off the sides

#

i'm sold on vert+ though no ragrets

iron rapids
#

the default cuts the sides off tho, so that felt a bit "claustrophobic" to me, but you do get to see those crunchy pixel perfect pixels

#

scaleMode="Supersampled", without using the resolution, you'll get the same exact view as on pc
16:9 letterboxed 1820x720 scaled to your display

vague island
#

i like that vert+ lets you see more than a widescreen view would, makes it feel like having a little 4:3 screen is actually a bonus

iron rapids
#

😁

lime lagoon
#

I’m curious if the game is still possible to 100% with parts of the intended viewing area obscured, shrunken or removed from the display. I don’t want any spoilers in this thread for those who may not have completed it yet but if you’ve 100%’d this before I would very much appreciate your help testing late-game on anything with less than 800px screen width.

iron rapids
iron rapids
#

walked around in a few areas, it's a bit harder to see/plan where you want to go, but you can still use the right stick to look around a bit as well and, eh "navi" still points out things too

#

(on 640x480)

#

basically, I think you can still complete it, but it might be more awkward

coarse ether
unique tide
coarse ether
coarse ether
iron rapids
slender pier
#

Hey, guys. Tried both the latest and the x55 version of the sh on my x55 and got a black screen. Here's my log. Tried on the 1.11 version of the game.

coarse ether
#

I can't change any of the video setting though, the game instantly crashes. I guess it makes sense, but I wish I could at least disable vsync

lime lagoon
slender pier
#

Oh, i'm on windows, so a can only download the linux version via console. Do you guys know the command for downloding it?

iron oxide
#

download_depot 224760 224762

#

@slender pier

slender pier
#

Download using console and the latest version on the x55 and got a black screen. 😦

#

Here's my log

#

I'm on RockNix with the latest patch.

lime lagoon
#

And you are on at least 0518 of ROCKNIX, right? (0517 has known issues that may break this port)

slender pier
#

Yes, that version of the sh, using the 0518 RockNix and the depot @iron oxide point me to.

vague island
#

i can run this on trimui smart pro in the Intro, but when the red spinning loading appear it got crashed out to the Menu

#

sh: setterm: not found
Attempting to patch...
Attempting to use FezPatches (Main: Void Main())
Found FezPatches, running...
sh: setterm: not found

Unhandled Exception:
System.DllNotFoundException: libvorbisfile.dll assembly:<unknown assembly> type:<unknown type> member:(null)
at (wrapper managed-to-native) Vorbisfile.INTERNAL_ov_clear(intptr)
at Vorbisfile.ov_clear (System.IntPtr& vf) [0x00000] in <dc80a62183d341248ec264dde20fabe2>:0
at FezEngine.Structure.OggStream.Dispose (System.Boolean disposing) [0x00034] in <bf0f94a807fe40748978fd18cc5ef662>:0
at FezEngine.Structure.OggStream.Finalize () [0x00000] in <bf0f94a807fe40748978fd18cc5ef662>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.DllNotFoundException: libvorbisfile.dll assembly:<unknown assembly> type:<unknown type> member:(null)
at (wrapper managed-to-native) Vorbisfile.INTERNAL_ov_clear(intptr)
at Vorbisfile.ov_clear (System.IntPtr& vf) [0x00000] in <dc80a62183d341248ec264dde20fabe2>:0
at FezEngine.Structure.OggStream.Dispose (System.Boolean disposing) [0x00034] in <bf0f94a807fe40748978fd18cc5ef662>:0
at FezEngine.Structure.OggStream.Finalize () [0x00000] in <bf0f94a807fe40748978fd18cc5ef662>:0
current_mode 1280x720
MALI_CreateWindow:0x55a990ef20 done.
s

buoyant urchin
#

What's the progress on this Port?

waxen atlas
#

I was wondering that as well. It's one of those games that has been sitting in my backlog for lack of the perfect way to play it

vague island
#

wait trimui can run this port? I saw a video 1 hour ago

vague island
#

oh i can run it now

#

dont know why

heavy hearth
graceful edge
#

whats the current compatibility of this on a r36s with Ark os?

cunning sky
graceful edge
cunning sky
graceful edge
cunning sky
unique tide
graceful edge
#

What's the steam db number so we can download that version?

unique tide
cunning sky
gleaming mountain
#

I was unable to download_depot the FEZ Linux beta from Windows Steam client:

Depot download failed : error downloading manifest 3203639762093675261 from cache2-ord1.steamcontent.com (Access Denied)```
gleaming mountain
#

I was able to download the latest Linux beta using SteamCMD:
https://developer.valvesoftware.com/wiki/SteamCMD

steamcmd
@sSteamCmdForcePlatformType linux
force_install_dir d:\fez-linux\
login <username> <password>
app_update 224760 -beta beta
app_status 224760
logoff
gleaming mountain
#

Confirmed working on Trimui Smart Pro on Crossmix v1.2.1. A little sluggish/choppy. No serious graphical or audio concerns. No savegame issues.

Used fez_113b_portmaster-vert_plus.zip (posted here: #1162780194633941064 message). I assume VERT+ setting makes no difference with the TrimUI being 16:9 (1280x720).

Few issues as I continue to play (several hours in):

  • No L3/R3 on TSP - not sure remap effort
  • Some game crashes on stage loading, likely due to overheating device
  • Some sprites get frozen or stuck, typically fixed on rotation/reload
  • Infrequent background loading issues on cutscene/transition
graceful edge
gleaming mountain
#

Yep

graceful edge
#

downloaded the corect depot and put all of the files into game data and when i got to open the game it just says please wait loading and then goes back to arkOS. im using a r36s so it doesnt have as much power as a rg353v but i though it would be worth a shot

gleaming mountain
acoustic bear
#

Tested and works perfectly fine on my RGB30 and latest ROCKNIX

graceful edge
unique fjord
#

I concur with @gleaming mountain working pretty well on TSP/Crossmix

#

only spent 2 hours on it though

gleaming mountain
#

I'm still playing regularly! Only concern is TSP overheating crashes (the waterfall level seems particularly bad). May transfer to PC soon when L3/R3 is needed.

dreamy geyser
#

Thank you so much everyone involved in this port, I've been playing on my RG35XX-H with muOS refried beans and it just works great out of the box, using fez_113b_portmaster-vert_plus.zip files.
The performance isn't the smoothest, so I tinkered with the game's option a little bit. From what I can tell disabling lighting with vSync enabled is what gave the smoothest experience, without lighting enabled I don't notice FPS drops and visually it is the same.
You can edit the file under /ports/fez/savedata/Settings to disable ligthing:
vSync true hardwareInstancing true multiSampleCount 0 multiSampleOption false lighting false
I don't know if that should be the default but on H700 it made all the difference.

#

@gleaming mountain there is a power saving mode that can be activated with launch options, from the Changelog:

Added power saving mode (-ps), also accessible through Launch Options dialog. This mode may make the game run at a slightly lower framerate than your hardware is capable, but significantly reduces CPU usage, which makes it preferrable on laptops or hardware susceptible to thermal throttling

gleaming mountain
# dreamy geyser <@232166239311626240> there is a power saving mode that can be activated with la...

Thanks! Have tried modification of Fez.sh [line 100] to :
$TASKSET mono FEZ.exe --singlethreaded --ps 2>&1 | tee $GAMEDIR/log.txt

Testing does show this toggles Singlethreaded under Game Settings and /savedata/Settings file. Hopeful also accurate for powersave (saw no mentions outside of that changelog). Have similarly been running with vSync on, lighting off.

Edit: I have reverted the .sh to defaults. Would recommend singlethreaded ON via settings. I do not think powersave toggle exists in Linux 1.13 beta - added details below.

thin muskBOT
gleaming mountain
#

Digging slightly further, I have doubts powersave option may exist in the Linux 1.13 beta. Prodding around ProcessExplorer suggests only these flags:

--clear-save-file
--no-gamepad
--region
--trace
--public-demo
--no-music
--singlethreaded
--msaa-option
--attempt-highdpi
--gotta-gomez-fast
--mgvs
keen mist
#

Playing on r36s. Was working well with occasional slowdown until I reached the image in the first post of this thread. Disable lighting and setting singlethread fixed it for me. I'm about 35% through the game but now it will freeze and crash at unexpected times, usually when I walk through a door into a large area. Thinking it might be a ram issue (since only 1gb)?

Edit: running on ArkOs community build

keen mist
#

I don't know if other ports do this but maybe the launch script could set a larger swap and then remove or restore the swap on close. Is that feasible?

ivory bison
#

Do I need to buy the game on Steam to access the beta?

grizzled trout
#

You must use the Linux Beta version of Fez (1.13 beta) available only through Steam.

#

says it right on theoriginal post, mate.

muted kernel
#

is this actually playable or completed i will download the port if it just works for refrence i have a rgb20s that is using ARKOS

keen mist
#

Yes it's playable. If you only have 1gb of ram it will crash. Changing some config settings will help it crash less.

keen mist
#

What's keeping this port from being released? What does it need?

#

I played it on my r36s and GameMT e6 plus. Almost finished it but not quite.

unique tide
#

Most devices only have 1 GB of ram

grizzled trout
keen mist
civic vapor
#

I was able to run it on TSPS (SpruceOS), swap 512mb enabled