You are not logged in.
Pages: 1
I want to run some 32-bit games in Wine, on Excalibur 64-bit.
Installed Excalibur 64-bit from minimal 1GB media. Added plenty of packages afterwards. At some point figured out that 32-bit libraries are needed. Enable 32 bit architecture, but many packages and libraries are installed 64-bit only. It looked like a major screw-up, but figured out that I'd be in, more or less, same situation if I installed 64-bit from larger media. So, it might not be that bad
Problem is that I don't know what libraries I need. I figured out it might be OpenGL libraries and re-installation of proprietary NVidia driver. Probably much more than that... Wine and dependencies are installed with 32-bit architecture enabled, so it should be good. Can someone give me an idea what else I might need, please ?
Offline
if you need games , you could test-install the steam.deb that could solve additional dependencies for you=?
afterwards you could just remove the steam, and the driver might remain for you.
wine usually install from wine hq, but there is also program "crossover" if you need specific support (never brought myself to buy a license for it, yet)
Offline
Well, if you have Wine installed, have you actually tried running any Win32 application? Here is a simple game I used to test that everything works correctly:
https://archive.org/details/disasteroids3d_exe
Run it in terminal (don't use double-click or Enter in GUI file managers):
wine disasteroids3d.exeSee how it goes for you. If it launches and you can see the asteroids flying around (rendered correctly), and you can play the game, you're probably good to go. If it hangs, just press Ctrl+C in terminal window and look for any errors it prints out. They may give you a clue as to what is missing.
Re-examine all that you have been told. Dismiss that which insults your soul. - Walt Whitman
Dump shampoo and hair dye
Global Skywatch・Subliminal Manipulation
Online
Thanks. It turned out I just needed to update the proprietary video driver. However, I run into other issues. The game I installed on WINE seems to be leaking memory. Or, at least allocating more than it frees. The memory footprint is increasing slowly until crash. ChatGPT pointed me where to find memory info, /proc/$PID/status
I suspect that the same happens under windows, but it does not crash. Is there some mechanism in Windows which reclaims memory somehow ?
The game is Boiling Pint: Road to Hell from 2005. Original game is horribly buggy and crashes every 15-20 minutes. The Atari made patch fixes many things and keeps it from crashing on Windows. Not on WINE, unfortunately. Does anyone have any idea why it happens. It is a 32-bit game with hard 4Gb limit, due to address space limitations. When it reaches critical state, it can create corrupted save on WINE.
Otherwise game runs remarkably well and looks visually nicer on Linux. For now I am starting a script in parallel, which is monitoring memory usage. When certain limit is reached, the script plays warning sound, meaning save and exit ASAP. It proved to be a safe way to play. I am adding a script here, because it might be useful for other misbehaving games.
local PROCSTR="pgrep Xenus.exe"
local SOUND="play -q -v 4 /home/anyone/logout.wav"
local SLEEP="sleep 5"
local MTOP=4000000
local mSize=0
local isRunning=false
local ln, status, mPeak, mHWM, mRSS, memStr, fd, pid
local mnTab = { "VmPeak", "VmSize", "VmHWM", "VmRSS" }
while mSize < MTOP do
-- get PID
fd=io.popen(PROCSTR,"r")
pid=fd:read("n")
fd:close()
if pid == nil then
if isRunning then
isRunning=false
break
else
goto ENDLOOP
end
else
isRunning=true
end
-- get memory state
status="/proc/" .. tostring(pid) .. "/status"
mPeak=0
mSize=0
mHWM=0
mRSS=0
for ln in io.lines(status) do
for i,mType in ipairs(mnTab) do
memStr=string.match(ln,mType..":%s+(%d+)")
if memStr ~= nil then
if mType == "VmPeak" then
mPeak=tonumber(memStr)
elseif mType == "VmSize" then
mSize=tonumber(memStr)
elseif mType == "VmHWM" then
mHWM=tonumber(memStr)
elseif mType == "VmRSS" then
mRSS=tonumber(memStr)
end
end
end
end
print(mPeak,mSize,mHWM,mRSS)
::ENDLOOP::
os.execute(SLEEP)
end
-- alert if critical
if isRunning then
os.execute(SOUND)
endOffline
This seems like a game-specific bug, if so there may be entries or discussions for that game on WineHQ. Off the top of my head, I had problems with intermittent crashes in some games, usually those that are not too stable to begin with. But for one game (Blur, 2010) I fixed a memory-related crash by limiting the running process affinity to a single CPU core:
taskset -c 0 wine game.exeLutris also has a GUI switch for this workaround.
You can give some demanding 32-bit games more memory by using the 4GB patch by ntcore which works under Wine, but it doesn't look like you can get beyond that, yes.
Re-examine all that you have been told. Dismiss that which insults your soul. - Walt Whitman
Dump shampoo and hair dye
Global Skywatch・Subliminal Manipulation
Online
Pages: 1