Das schwarze Auge under Linux


I got a copy of "Das schwarze Auge - Nordlandtriologie" from Jowood and inspected the installation medium to get a working installation under my free operating system of choice. It has only one interesting file - Setup1.cab which can be extracted by cabextract. Of course, this will result in a non working directory structure but this is nothing we cannot fix. (I will skip the InstallShield script stuff here)

#! /bin/sh
set -e

cabextract -L Setup1.cab

mkdir -p dsa1/handbuch
mkdir -p dsa1/temp

mv algdig.adv dsa1/algdig.adv
mv arbosh.chr dsa1/arbosh.chr
mv digi.adv dsa1/digi.adv
mv dosbox.conf dsa1/dosbox.conf
mv dsagen.dat dsa1/dsagen.dat
mv font.nvf dsa1/font.nvf
mv games.nam dsa1/games.nam
mv gen.exe dsa1/gen.exe
mv hjaldis.chr dsa1/hjaldis.chr
mv icon.ico3 dsa1/icon.ico
mv introdat.dir dsa1/introdat.dir
mv introdat.snd dsa1/introdat.snd
mv introdat.vol dsa1/introdat.vol
mv intro_e.ovl dsa1/intro_e.ovl
mv intro.exe dsa1/intro.exe
mv mouse.nvf dsa1/mouse.nvf
mv pasdig.adv dsa1/pasdig.adv
mv popup.nvf dsa1/popup.nvf
mv rhenaya.chr dsa1/rhenaya.chr
mv sbdig.adv dsa1/sbdig.adv
mv sbpdig.adv dsa1/sbpdig.adv
mv schick.bat dsa1/schick.bat
mv schick.dat dsa1/schick.dat
mv schickm.exe dsa1/schickm.exe
mv sound.bat dsa1/sound.bat
mv sound.cfg dsa1/sound.cfg
mv sound.ltx dsa1/sound.ltx
mv sound.nvf dsa1/sound.nvf
mv soundset.exe dsa1/soundset.exe
mv start___.gam dsa1/start___.gam
mv talimee.chr dsa1/talimee.chr
mv tamion.chr dsa1/tamion.chr
mv thumbs.db dsa1/thumbs.db
mv yarano.chr dsa1/yarano.chr

mv dsa1loes.pdf dsa1/handbuch/dsa1loes.pdf
mv dsa2loes.pdf dsa1/handbuch/dsa2loes.pdf
mv manual1.pdf dsa1/handbuch/manual1.pdf
mv manual2.pdf dsa1/handbuch/manual2.pdf
mv manual3.pdf2 dsa1/handbuch/manual3.pdf

mkdir -p dsa2/ctemp
mkdir -p dsa2/data
mkdir -p dsa2/drivers
mkdir -p dsa2/games
mkdir -p dsa2/handbuch
mkdir -p dsa2/temp

mv config.bsp dsa2/config.bsp
mv dosbox.conf9 dsa2/dosbox.conf
mv dsa2_cd1.bin dsa2/DSA2_CD1.bin
mv dsa2_cd1.cue dsa2/DSA2_CD1.cue
mv icon.ico33 dsa2/icon.ico
mv install.aif dsa2/install.aif
mv install.exe dsa2/install.exe
mv patch_01.dat dsa2/patch_01.dat
mv patch_02.dat dsa2/patch_02.dat
mv patch.exe dsa2/patch.exe
mv path.cfg dsa2/path.cfg
mv pkunzip.exe dsa2/pkunzip.exe
mv schweif.exe dsa2/schweif.exe
mv sound.bat7 dsa2/sound.bat
mv thumbs.db18 dsa2/thumbs.db

mv digi.adv2 dsa2/data/digi.adv
mv fx.dat dsa2/data/fx.dat
mv fx.fn dsa2/data/fx.fn
mv raw.dat dsa2/data/raw.dat
mv raw.fn dsa2/data/raw.fn
mv songtabl.dat dsa2/data/songtabl.dat
mv sound.adv dsa2/data/sound.adv
mv sound.cfg12 dsa2/data/sound.cfg
mv speechcd.fn dsa2/data/speechcd.fn
mv speech.dat dsa2/data/speech.dat
mv speech.fn dsa2/data/speech.fn
mv starcd.fn dsa2/data/starcd.fn
mv star.dat dsa2/data/star.dat
mv star.fn dsa2/data/star.fn

mv adlib.adv dsa2/drivers/adlib.adv
mv adlibg.adv dsa2/drivers/adlibg.adv
mv algdig.adv14 dsa2/drivers/algdig.adv
mv drivers.tmp dsa2/drivers/drivers.tmp
mv genmidi.adv dsa2/drivers/genmidi.adv
mv gf1digi.adv dsa2/drivers/gf1digi.adv
mv gf1midi.adv dsa2/drivers/gf1midi.adv
mv gravis.bat dsa2/drivers/gravis.bat
mv mt32mpu.adv dsa2/drivers/mt32mpu.adv
mv pasdig.adv13 dsa2/drivers/pasdig.adv
mv pasfm.adv dsa2/drivers/pasfm.adv
mv pasopl.adv dsa2/drivers/pasopl.adv
mv pcspkr.adv dsa2/drivers/pcspkr.adv
mv sbdig.adv8 dsa2/drivers/sbdig.adv
mv sbfm.adv dsa2/drivers/sbfm.adv
mv sbp1fm.adx dsa2/drivers/sbp1fm.adx
mv sbp2fm.adx dsa2/drivers/sbp2fm.adx
mv sbpdig.adv6 dsa2/drivers/sbpdig.adv
mv sbpfm.adv dsa2/drivers/sbpfm.adv
mv tandy.adv dsa2/drivers/tandy.adv
mv ultramid.exe dsa2/drivers/ultramid.exe
mv um200.ini dsa2/drivers/um200.ini
mv um206a.ini dsa2/drivers/um206a.ini
mv um206.ini dsa2/drivers/um206.ini
mv wave.adv dsa2/drivers/wave.adv
mv wavefix.exe dsa2/drivers/wavefix.exe

mv chars1.dat28 dsa2/games/chars1.dat
mv empty dsa2/games/empty
mv games.tmp dsa2/games/games.tmp
mv start.gam dsa2/games/start.gam

mv dsa2.pdf dsa2/handbuch/dsa2.pdf
mv manual2.pdf1 dsa2/handbuch/manual2.pdf
mv schweif.wri dsa2/handbuch/schweif.wri

mkdir -p dsa3/ctemp
mkdir -p dsa3/data
mkdir -p dsa3/games
mkdir -p dsa3/temp

mv dosbox.conf35 dsa3/dosbox.conf
mv icon.ico dsa3/icon.ico
mv manual3.pdf dsa3/manual3.pdf
mv readme.txt37 dsa3/readme.txt
mv riva.bin dsa3/Riva.bin
mv riva.cue dsa3/riva.cue
mv riva.exe dsa3/riva.exe
mv rivahelp.bat dsa3/rivahelp.bat
mv riva_org.exe dsa3/riva_org.exe
mv r_patch.exe dsa3/r_patch.exe
mv sound.bat30 dsa3/sound.bat
mv thumbs.db21 dsa3/thumbs.db

mv distrib.aif dsa3/data/distrib.aif
mv harderr.pix dsa3/data/harderr.pix
mv hmidet.386 dsa3/data/hmidet.386
mv hmidrv.386 dsa3/data/hmidrv.386
mv hmiset.cfg dsa3/data/hmiset.cfg
mv patch.exe29 dsa3/data/patch.exe
mv present.aif dsa3/data/present.aif
mv riva.alf dsa3/data/riva.alf
mv riva.cfg dsa3/data/riva.cfg
mv rivahelp.alf dsa3/data/rivahelp.alf
mv rivahelp.exe dsa3/data/rivahelp.exe
mv rivahelp.mod dsa3/data/rivahelp.mod
mv rivahint.alf dsa3/data/rivahint.alf
mv rivahint.mod dsa3/data/rivahint.mod
mv riva.mod dsa3/data/riva.mod
mv schatten.aif dsa3/data/schatten.aif
mv seqs.lst dsa3/data/seqs.lst
mv setup.exe dsa3/data/setup.exe
mv setup.raw dsa3/data/setup.raw

mv chars1.dat dsa3/games/chars1.dat
mv empty22 dsa3/games/empty
mv lastgame dsa3/games/lastgame
mv start.gam34 dsa3/games/start.gam

rm authors.txt
rm authors.txt1
rm authors.txt32
rm copying.txt
rm copying.txt16
rm copying.txt27
rm dosbox.exe
rm dosbox.exe17
rm dosbox.exe26
rm install.txt
rm install.txt36
rm install.txt5
rm news.txt
rm news.txt19
rm news.txt25
rm readme.txt
rm readme.txt15
rm readme.txt24
rm sdl.dll
rm sdl.dll11
rm sdl.dll23
rm sdl_net.dll
rm sdl_net.dll10
rm sdl_net.dll20
rm thanks.txt
rm thanks.txt31
rm thanks.txt4
rm schicksalsklinge__teil_1.lnk
rm sternenschweif__teil_2.lnk
rm schatten_ber_riva__teil_3.lnk

Anybody noticed the dosbox stuff? - Yes, it is just starting dosbox 0.72 under windows and we can do the same under linux (and many other platforms). So let's take a look at the details. Every folder has an own dosbox.conf which helps a lot with the non trivial setup. We only have to start dosbox with some extra parameters in our dsaX folder to get the real game started.

dosbox -conf dosbox.conf -c 'mount c .' -c 'c:' -c schick.bat -c exit
dosbox -conf dosbox.conf -c 'mount c .' -c 'c:' -c schweif.exe -c exit
dosbox -conf dosbox.conf -c 'mount c .' -c 'c:' -c riva.exe -c exit