User Tools

Site Tools


dosbox
# 1.0 install dosbox
> sudo apt-get install dosbox
 
# 2.0 set up midi audio modules, these are not setup by default in Ubuntu 6.06
> sudo modprobe snd-seq-device
> sudo modprobe snd-seq-midi
> sudo modprobe snd-seq-oss
> sudo modprobe snd-seq-midi-event
 
# 2.2 set environmental variable for audio driver
> nano -w ~/.bashrc
# set last line to:
export ALSA_OUTPUT_PORTS="128:0"
export SDL_AUDIODRIVER=alsa
 
# 2.3 create dosbox.conf file. You may need to taylor this file for each game.
> dosbox
dosbox > config -writeconf dosbox.conf
# to use a configuration file, start dosbox with:
# > dosbox -conf /path/to/desired/conf/dosbox.conf
 
# 2.4 modify the config file
> nano -w ./dosbox.conf
mpu401=true
intelligent=true
device=alsa
config=128:0
 
 
# Do not use timidity for 128:0 if you want to use mt32emu_alsadrv
#> timidity -iA -B2,8 -Os1l -s 44100
 
# 3.0 set up mt32emu and mt32emu_alsadrv
# 3.1 download mt32emu.
# a) Search sourceforge for a project called 'munt'
# b) download release 0.1.3, the file should be called mt32emu-0.1.3.tar.gz
# c) extract to /usr/local/src
> sudo tar -xvzf mt32emu-0.1.3.tar.gz -C /usr/local/src
 
# 3.2 compile and install mt32emu
> cd /usr/local/src/mt32emu-0.1.3
> sudo ./configure
# running 'sudo make' gave a compile error with gcc-4.0, the default for Ubuntu 6.06
# i386.cpp:142: error: unknown register name ‘xmm3’ in ‘asm’
# i386.cpp:142: error: unknown register name ‘xmm2’ in ‘asm’
# i386.cpp:142: error: unknown register name ‘xmm1’ in ‘asm’
# I had to use gcc-3.3
> sudo apt-get install gcc-3.3 gcc-3.3-base
# use and text editor to modify Makefile
> sudo nano -w Makefile
# replace all instances of 'gcc' with 'gcc-3.3'
# replace all instances of 'g++' with 'g++-3.3'
> sudo make
> sudo make install
# you should now have a static library called lib32mtemu.a in /usr/local/lib
# to make use of this library in dosbox, you need the alsa driver
 
# 3.3 download mt32emu_alsadrv
# here I used the CVS version of mt32emu_alsadrv. I'm not very familiar with
# CVS, I just typed in the following instruction I got from VOGONS:
> cd .. # to get back into /usr/local/src
> cvs -d:pserver:anonymous@munt.cvs.sourceforge.net:/cvsroot/munt login
# press enter when it asks for a password
> sudo cvs -z3 -d:pserver:anonymous@munt.cvs.sourceforge.net:/cvsroot/munt co -P mt32emu_alsadrv
# I like to keep track of when I check out files from CVS
> sudo mv mt32emu_alsadrv ./mt32emu_alsadrv-CVS-061221
 
# 3.4 compile and install mt32emu_alsadrv
> cd mt32emu_alsadrv-CVS-061221
# again, we have to use gcc-3.3, use any text editor
> sudo nano -w Makefile
# replace all instances of 'gcc' with 'gcc-3.3'
# replace all instances of 'g++' with 'g++-3.3'
# now make and make install
> sudo make
> suso make install
 
# 3.5 copy MT32_CONTROL.ROM and MT32_PCM.ROM to /usr/share/mt32-rom-data
> sudo mkdir /usr/share/mt32-rom-data
> sudo cp /location/of/romfiles/*.ROM /usr/share/mt32-rom-data/
# make sure the spelling and case of rom files is correct
 
# 4 run mt32d to activate service in a new console
# running this as root may provide better performance
> mt32d
 
# 5 check ports with pmidi
> pmidi -l
128:0 MT-32 Standard
128:1 MT-32 GM Emulation
 
# 6 enjoy great mt-32 music with dosbox
# make sure game configuration has music set to mt-32
> dosbox -conf /path/to/dosbox/configuration/file/dosbox.conf
dosbox ZDisapproving> mount c /path/to/dos/game
dosbox ZDisapproving> C:
dosbox CDisapproving> game.exe
dosbox.txt · Last modified: 2013/08/03 05:04 (external edit)