gsos wrote on 2026-09-30, 07:53:RetroOS takes its write identity from the group ID of the selected C: directory (/home/retroos by default). To write an existing […]
Show full quote
RetroOS takes its write identity from the group ID of the selected C: directory (/home/retroos by default). To write an existing file, that file must have the same group ID and the group-write bit. Creating a file requires those conditions on its parent directory. This applies in both Protected and Persistent modes (I want to prevent accidental modification of the ext4 system outside of the dos designated directory.
AI:
On Linux, after mounting that partition, check the actual C: directory and a failing game file:
stat -c '%n owner=%U group=%G mode=%a' /path/to/home/retroos /path/to/home/retroos/GAMES /path/to/home/retroos/
GAMES/FILE
For a dedicated RetroOS C: directory, this grants its current group access throughout:
C=/path/to/home/retroos
sudo chgrp -R "$(stat -c %g "$C")" "$C"
sudo chmod -R g+rwX "$C"
sudo find "$C" -type d -exec chmod g+s {} +
Well it seems the most straightforward way is to simply "sudo chmod -R 777" everything inside "/home/retroos" on the backing partition. After that games stopped complaining about file access.
However, it is very dangerous to casually "chmod -R 777" on modern day Linux because many security-sensitive software would explicitly refuse to access certain files if they are "world-writable" (or in any other permission setting than the one it expects), so you may accidentally break the system this way. Not sure if using just "chmod -R 775" (granting write only to owner and group) is enough.
PS: It seems for some reasons RetroOS would not update the timestamps of files upon modification, according to DN output, so I cannot immediately tell whether a file has been successfully modified. Files can be correctly modified if permissions are set correctly.
And I just found out that for some reasons RetroOS' boot entry only overlaid the RETROOS folder itself, not other stuffs in the base image, so I had to manually copy other folders than RETROOS from the base image to the backing partition. CONFIG.SYS kind of worked for setting default mixer volume to 100 but still cannot fix the issue with my system's HDA where it would always default to "Headphone" and I always have to manually switch to "Jack".
I'm able to test a bit further but noted some apparent issues.
- In GOP Framebuffer, text mode fonts looks rough, and the VGA rendering has some artifacts that are very apparent with smaller texts ingame, though barely noticeable otherwise.
- Bio Menace crashes (back to DN) when killing an enemy. I'm using the patches here to resolve bugs that occur in native DOS.
- TerraFire crashes the whole system (black screen and hangs) upon exit. AstroFire exited fine, however.*
- Terminal Velocity's SETD crashes the whole system (black screen and hangs) when testing sound card. The game itself cannot start citing failing to load the sound driver.
- Skunny 32-bit gets stuck on a black screen upon exit but can be killed via F12 menu. (EDIT: It seems one of the versions is not affected by this, and exited fine.)
- Nova 9's opening cinematics would make the screen turn black (and silent). The game can proceed fine after pressing keys like ENTER to skip the cinematics in question.
- Titus the Fox cannot detect emulated Sound Blaster and would use PC Speaker instead.
- Some programs simply don't run, with DN showing something like status code 05 or something briefly in the background (not sure how to hide/show the DN window).
- Stargunner runs but no sound and no keyboard input, and needs to be killed via F12 menu.
- Only 8-bit mixing works correctly in Wacky Wheels. The distorted sound I once encountered was due to using 16-bit mixing.
- Death Rally doesn't seem to run (black screen) correctly and has to be killed via F12 menu.
- Jill of the Jungle works fine after patched.**
- Sound in Duke Nukem 2 does not work out-of-box and requires patching and replacement PCM samples.***
* ORT Software DOS games like TerraFire and AstroFire had Windows installers and were meant to be played from a Windows DOS box, as upon exit it launches something in Windows for showing ordering info (for shareware versions). I'm not sure if RetroOS' Windows personality may have done anything, but normally in a pure DOS one would simply see a message saying "This program can't be run in DOS mode."
** The patch is required for the first game to have proper Sound Blaster output, while optional for the other two. However, it seems the patch contains additional fixes needed for correct operation inside RetroOS so I'll have to patch the other two games as well. Without patching the game feels extremely sluggish.
*** So RetroOS' Sound Blaster emulation doesn't support ADPCM. IIRC not all Sound Blaster compatible sound cards implemented that.
On the other hand, SDLPAL DOS Port works if using VGA mode (DOSForceMode13h=1 + DOSLowEndOpt=1). Using OPLCore=NUKED is recommended here.
It doesn't run in default (VESA) mode. Perhaps GOP Framebuffer is only good enough for VGA at the moment.