Help running 32 bit Gridwars with 64 bit pulseaudio

I've been trying to run the 32 bit compiled Gridwars 2 on 64 bit MATE and have run into a couple of issues. 32 bit support is installed.

The first is that the game requires /dev/js0 in order to have working joystick support. "sudo ln /dev/input/js0 /dev/js0" fixes that problem, but it doesn't last through a reboot.

The second is that the game audio uses oss. aoss works, but it crashes Cinnamon, and also makes the game unstable(plus the audio is laggy.)

I want to use padsp, but it throws the error "ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/pulseaudio/libpulsedsp.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored." when loading the game, and there is no audio as a result. If I "sudo apt-get install pulseaudio:i386" everything(including the game running with padsp) works great until I reboot, at which point I have no audio, as apt-get insists on uninstalling 64bit pulseaudio.

How do I get 32 bit padsp pulseaudio to work properly on 64 bit?

Not sure if it helps, but I have only libpulse0:i386 installed as 32 bit package from PulseAudio in addition to all the 64 bit stuff and I do get proper sound from Descent 3, which also is a 32 bit game using oss.

Thanks for the reply.

No, I already had libpulse0:i386 installed. IIRC it was needed to get aoss working for 32 bit.

I did figure out how to solve my problems, though I don't particularly like my symlink (oh yeah it needed to be a symlink, which I'd forgotten) solution. It turns out that a hardlink to /dev/input/js0 from /dev/js0 crashes Cinnamon. How strange, although seeing it in dmesg did point me to the problem.

The way I fixed the padsp issue, was to make a copy of the padsp script (I called it padsp32) changing the 64bit LD_LIBRARY path to point to the correct i386 version.

For the symlink, I'm having my loader script try to create it each time I run gridwars. I don't even bother to check if it exists, since the attempt will simply fail (throwing an error) if it does exist, and if /dev/input/js0 doesn't exist to link to for whatever reason, I'll know soon enough when my gamepad doesn't work.