Release DosBox EX - Ultimate


Betrayal of Krondor - Still for sale at GOG
This is a VERY good example of the misuse of freeware.Freeware means free as in beer, not free as in freedom: it may be free to download from a specific source but the license usually comes with several restrictions. Betrayal at Krondor was released freeware, meaning that it was free to download from Sierra directly, but absolutely no redistribution rights came with it. The only company that has the rights to distribute it are the owners.

Just because something is freeware doesn't mean it is free to distribute. You need to do a lot more work than this to verify what can and cannot be shared.
 
Why don't people just list whatever games you like that may or may not be freeware, and people can choose to buy or pirate them at their own discretion?

Try google search for "buy name of game" versus "download name of game" etc.
 
Why don't people just list whatever games you like that may or may not be freeware, and people can choose to buy or pirate them at their own discretion?


Try google search for "buy name of game" versus "download name of game" etc.

The intentions of milinks was just to prove sharing is caring but hadn't done much research on what was legally distributable. I have made one exception to the rule in relation to abandonware as we've allowed links to HOTD for many years at dosgames.com forums as they've got the reputation for removing abandonware by request of companies and list for sale links. The only free sites I can recommend as mentioned earlier 


In future I would suggest looking at a reliable source like dosgames.com or dosgamesonline.com for shareware / freely distributable freeware as a lot of research is done by emmzee and jorrit. mobygames.com and liberatedgames.com are great sources also but moreso for further information and clarification on licenses.

Sorry if everything is jumbled up, I'm tired and rather confused. :p
 
Et Tu, Brute! :) As I've always done, Ive faced any criticism by admitting mistakes, and defending my stance (if it's worthy lol), and I'll definately admit my mistakes on the post i made, although a bit too late to explain, i'd rather explain and face critiscim than do otherwise. I won't go to much into what's past, however looking at the list, there is some Serious errors there, unfortunately, in my haste to adhere to my promise of posting, i'd come home from hospital, and from my list of games, deleted in a hurried manner, the ones i know not to be freeware, (as ppl could see if they saw the original list and saw gaps in it). Hindisght is a wonderful thing, i will say that i DID do a LOT of research, when i was sorting through my games. Any muppet can grab games of the internet and throw them together. That's not what i did. My error was in sorting it when i wasn't in the best state to do so. As I said in the original post,, any error, are errors of mine, and were in no way a reflection of the forum as a whole. So, I'll hang my head in shame, take my worthy reprimand, and go stand in the corner :unsure: .
 
Hi!

Is there a way to specifiy a DosBox .conf file to be used? I'd like to play Ultima V, and there is a patch to have MIDI music on the PC version. I patched the game, which works fine on my PC with DosBox. However, there is a specific "dosboxUltima5.conf" file that needs to be used by the emulator, which sets the MIDI drivers for example. Can I force DosboEx to use this specific config file?

Thank you!
 
However, there is a specific "dosboxUltima5.conf" file that needs to be used by the emulator, which sets the MIDI drivers for example. Can I force DosboEx to use this specific config file?
Yes, invoke dosbox from the command-line with parameter "-conf configfilelocation"
 
Thank you Klapse for your reply. However I'm not sure of how to proceed with DosboxEx, since it's a PND. Do I have to extract the PND, so I can launch the Dosbox executable with the corresponding parameters? Or is there an easier way? Thank you!
 
Thank you Klapse for your reply. However I'm not sure of how to proceed with DosboxEx, since it's a PND. Do I have to extract the PND, so I can launch the Dosbox executable with the corresponding parameters? Or is there an easier way? Thank you!
I could be shot down here, however with Dosbox, my understanding is that it any custom config file will override the standard config file. so if you have the config file that you know works, rename it from ultimat.config etc, to 01.bat, which obviously includes the executable instruction to start the game. So after your're config part of the file, include your exe instructions in the autoexec part of the file, which is at the end, after the ipx=false line, i.e

[autoexec]


# Lines in this section will be run at startup.


"rungame".exe

where the rungame part is the exe name of the game you wish to run, or whatever other commands you wish or need to incude to make the game run. By simply changing the config file name to 01.bat file, it will override any default config file, and you can then have custom configs for every game you play. Ive used this method in so many games, and it works fine, such as 7th Guest, 11th hour, Under a killing moon etc. Hope this helps
 
Thank you Klapse for your reply. However I'm not sure of how to proceed with DosboxEx, since it's a PND. Do I have to extract the PND, so I can launch the Dosbox executable with the corresponding parameters? Or is there an easier way? Thank you!
Sorry I did not consider the situation when giving my answer. I do not know how to switch configure files with dosbox-ex. :(
 
Just to clarify, as I'm not sure i explained things as good as i could before. When Dosbox-Ex starts up, you can install a game from a dxz file that's either been downloaded, or one that you've transferred across. In any event, the two important files are 01.bat and 02.bat.
01.bat is the main executable file that starts the game, whereas 02.bat directs us to the setup options within the game folder. If you've downloaded a dxz game file, then these two files are already created, and linked to the respective actions. If you transfer over a game folder, and you haven't already created these files, then the "Setup Game Configuration" option allows you to create these two files.
If you wish to have a unique config file for each game, which is sometimes important, especially for later DOS games, then the steps to create them are easy.
Firstly, this can be done from your PC, where you have the original game files, or it can be done via the Dosbox-Ex GUI.
I fnd it easier to do this via your PC.
Firstly have your game folder on your PC. Then create to files, (simply create a text file, and rename it from file.txt to file.bat etc) 01.bat & 02.bat. as explained, these are to start the game, and setup the game respectively.
If you have a specific config file for a given game that you wish to use, then its easiest to copy the config file, and rename the copy as 01.bat

this file gives custom commands and preferences to make that specific game work. Although generally a dosbox config will tell the machine how to work, it won't point it to the executable, which will start the game. This happens with a part of the code called [autoexec] which is found at the bottom of the config file, if its not there, then it can easliy be added after the line..
ipx=false

You may find in config files that at the bottom there is the
[autoexec] line, followed by the line

# Lines in this section will be run at startup.

Any lines that start with the # are comment lines, instructions to help the user, that aren't part of the code used.

After the [autoexec] line, is where the commands are found that are read by the computer to start the game or program.

If you read a number of these config files, you may find lines such as
Mount c c:\dosbox\games\
imgmount D C:\dosbox\games\images

What these lines do is to direct dosbox where to find the files you wish to be read, and run. If you run Dosbox via your PC, you would generally need to write these lines to enable your Dosbox to find the game files you wish to run.

The good thing with DOsbox-Ex on the Pandora, is that it cuts out these lines, and automatically mounts the C:\ file as the game folder you've chosen. Also, it will mount an image file, be it an iso, img etc as the D:\ drive, as long as the image file is named 01.iso, or 01.img etc.

So there is no need for the mount commands (in general, although there are times when mounting drives is still required).

So the most important files are still the 01.bat, which is the start game option, and 02.bat (which is the setup option).

for example, if i were to play a game via Dosbox on PC, i would rename the config file from "game.config" to "01.bat" and at the end of the config file would be

[autoexec]
# Lines in this section will be run at startup.
@echo off
mount C C:\dosbox\games\mygame
imgmount D "dosbox\games\mygame\CD\mygame.cue" -t iso
C:
mygame.exe
exit

This would mount the virtual dosbox C: drive to the folder c\dosbox\games\mygame
and would mount the virtual cd rom drive to dosbox\games\mygame\CD\mygame.cue

the C: command then tells the computer where to start looking to begin its commands, and mounts the virtual image "mygame.cue" as the D drive.
(This is an example and not resective of a particular game).

By changing a "mygame.config" file to a "mygame.bat" file, or in the instance of Dosbox-Ex, a 01.bat file, it changes the config file, which is a series of commands which are activated by an executable file, to a bat file, which executes ALL the information of the file, including the config parts of it, AND the executable parts, such as mygame.exe

Because Dosbox-Ex relies on the two files 01.bat & 02.bat, the application will create these files if they are not there, so your config/bat file needs to be named exactly as 01.bat, otherwise it will create an empty file, that will not start your game.

An example of a config file would be :-

# This is the configurationfile for DOSBox 0.72.

# Lines starting with a # are commentlines.
# They are used to (briefly) document the effect of each option.

[sdl]
# fullscreen -- Start dosbox directly in fullscreen.
# fulldouble -- Use double buffering in fullscreen.
# fullresolution -- What resolution to use for fullscreen: original or fixed size (e.g. 1024x768).
# windowresolution -- Scale the window to this size IF the output device supports hardware scaling.
# output -- What to use for output: surface,overlay,opengl,openglnb,openglhq,ddraw,direct3d.
# autolock -- Mouse will automatically lock, if you click on the screen.
# sensitiviy -- Mouse sensitivity.
# waitonerror -- Wait before closing the console if dosbox has an error.
# priority -- Priority levels for dosbox: lowest,lower,normal,higher,highest,pause (when not focussed).
#             Second entry behind the comma is for when dosbox is not focused/minimized.
# mapperfile -- File used to load/save the key/event mappings from.
# pixelshader -- Pixelshader program to use for resizing (works with output=direct3d only):
#                 none,point.fx,bilinear.fx,scale2x.fx,2xsai.fx.
#                (or any other .fx file that is available in the Shaders subdirectory).
# usescancodes -- Avoid usage of symkeys, might not work on all operating systems.
# overscan -- Width of overscan border.

fullscreen=false
fulldouble=false
fullresolution=original
windowresolution=original
output=ddraw
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper.txt
pixelshader=none
usescancodes=true
overscan=0

[dosbox]
# language -- Select another language file.
# memsize -- Amount of memory DOSBox has in megabytes.
# machine -- The type of machine tries to emulate:hercules,cga,tandy,pcjr,vga,ega,demovga.
# captures -- Directory where things like wave,midi,screenshot get captured.

language=
machine=vga
captures=capture
memsize=16

[render]
# frameskip -- How many frames DOSBox skips before drawing one.
# aspect -- Do aspect correction, if your output method doesn't support scaling this can slow things down!.
# scaler -- Scaler used to enlarge/enhance low resolution modes.
#           Supported are none,normal2x,normal3x,advmame2x,advmame3x,hq2x,hq3x,
#                         2xsai,super2xsai,supereagle,advinterp2x,advinterp3x,
#                         tv2x,tv3x,rgb2x,rgb3x,scan2x,scan3x.
#           If forced is appended (like scaler=hq2x forced), the scaler will be used
#           even if the result might not be desired.

frameskip=0
aspect=false
scaler=normal2x

[vsync]
# vsyncmode -- Synchronize vsync timing to the host display. Requires calibration within dosbox.
#              Supported are off,on,force,host.
# vsyncrate -- Vsync rate used if vsync is enabled.
#              Ignored when vsycmode=host is used.

vsyncmode=off
vsyncrate=75

[cpu]
# core -- CPU Core used in emulation: normal,simple,dynamic,auto.
#         auto switches from normal to dynamic if appropriate.
# cycles -- Amount of instructions DOSBox tries to emulate each millisecond.
#           Setting this value too high results in sound dropouts and lags. (unless timesynched is set)
#           You can also let DOSBox guess the correct value by setting it to max.
#           The default setting (auto) switches to max if appropriate.
# cycleup   -- Amount of cycles to increase/decrease with keycombo.
# cycledown    Setting it lower than 100 will be a percentage.
# timesynched  -- Do not emulate more cycles than possible.

core=auto
cycles=auto
cycleup=500
cycledown=20
timesynched=false

[vga]
# svgachipset -- Select one of the following supported SVGA chipsets:
#                s3 (default), et4000, et4000new, et3000, pvga1a, or none.
#                Full chipset name (like 'Tseng ET4000') will also work
#                as long as it contains one of the strings above.
# videoram -- Amount of video memory on emulated SVGA. Not all emulated
#             chipsets support this setting.

svgachipset=s3
videoram=2048

[mixer]
# nosound -- Enable silent mode, sound is still emulated though.
# rate -- Mixer sample rate, setting any devices higher than this will
#         probably lower their sound quality.
# blocksize -- Mixer block size, larger blocks might help sound stuttering
#              but sound will also be more lagged.
# prebuffer -- How many milliseconds of data to keep on top of the blocksize.

nosound=false
rate=22050
blocksize=2048
prebuffer=10

[printer]
# printer -- Enable printer emulation.
# dpi -- Resolution of printer (default 360).
# width -- Width of paper in 1/10 inch (default 85 = 8.5'').
# height -- Height of paper in 1/10 inch (default 110 = 11.0'').
# printoutput -- Output method for finished pages:
#           png     : Creates PNG images in the DOSBOX directory
#           ps      : Creates Postscript documents in the DOSBOX directory (default)
#           bmp     : Creates BMP images (very huge files, not recommend)
#           printer : Send to an actual printer (Print dialog will appear)
# multipage -- Adds all pages to one Postscript file or printer job until CTRL-F2 is pressed.

printer=true
docpath=.
dpi=360
width=85
height=110
printoutput=ps
multipage=false

[midi]
# mpu401      -- Type of MPU-401 to emulate: none, uart or intelligent.
# device      -- Device that will receive the MIDI data from MPU-401.
#                This can be default,alsa,oss,win32,coreaudio,mt32,none.
# mt32rate    -- Sample rate of MT32 emulation
# config      -- Special configuration options for the device. In Windows put
#                the id of the device you want to use. See README for details.

mpu401=intelligent
device=default
mt32rate=22050
config=

[sblaster]
# sbtype -- Type of sblaster to emulate:none,sb1,sb2,sbpro1,sbpro2,sb16.
# sbbase,irq,dma,hdma -- The IO/IRQ/DMA/High DMA address of the soundblaster.
# mixer -- Allow the soundblaster mixer to modify the DOSBox mixer.
# oplmode -- Type of OPL emulation: auto,cms,opl2,dualopl2,opl3.
#            On auto the mode is determined by sblaster type.
#            All OPL modes are 'Adlib', except for CMS.
# oplrate -- Sample rate of OPL music emulation.

sbtype=sb16
sbbase=220
irq=7
dma=1
hdma=5
mixer=true
oplmode=auto
oplrate=22050

[gus]
# gus -- Enable the Gravis Ultrasound emulation.
# gusbase,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the
#            Gravis Ultrasound. (Same IRQ's and DMA's are OK.)
# gusrate -- Sample rate of Ultrasound emulation.
# ultradir -- Path to Ultrasound directory.  In this directory
#             there should be a MIDI directory that contains
#             the patch files for GUS playback.  Patch sets used
#             with Timidity should work fine.

gus=false
gusrate=22050
gusbase=240
irq1=5
irq2=5
dma1=3
dma2=3
ultradir=C:\ULTRASND

[innova]
# innova -- Enable the Innovation SSI-2001 emulation.
# samplerate -- Sample rate of Innovation SSI-2001 emulation.
# sidbase -- SID base port (typically 280h).
# quality -- Set SID emulation quality level (0 to 3).

innova=false
samplerate=22050
sidbase=280
quality=0

[speaker]
# pcspeaker -- Enable PC-Speaker emulation.
# pcrate -- Sample rate of the PC-Speaker sound generation.
# tandy -- Enable Tandy Sound System emulation (off,on,auto).
#          For auto Tandysound emulation is present only if machine is set to tandy.
# tandyrate -- Sample rate of the Tandy 3-Voice generation.
# disney -- Enable Disney Sound Source emulation. Covox Voice Master and Speech Thing compatible.
# innova -- Enable Innovation SSI-2001 emulation.
# innovabase -- Base port for Innovation SSI-2001 emulation.

pcspeaker=true
pcrate=22050
tandy=auto
tandyrate=22050
disney=true

[joystick]
# joysticktype -- Type of joystick to emulate: auto (default), none,
#                 2axis (supports two joysticks,
#                 4axis (supports one joystick, first joystick used),
#                 4axis_2 (supports one joystick, second joystick used),
#                 fcs (Thrustmaster), ch (CH Flightstick).
#                 none disables joystick emulation.
#                 auto chooses emulation depending on real joystick(s).
# timed -- enable timed intervals for axis. (false is old style behaviour).
# autofire -- continuously fires as long as you keep the button pressed.
# swap34 -- swap the 3rd and the 4th axis. can be useful for certain joysticks.
# buttonwrap -- enable button wrapping at the number of emulated buttons.

joysticktype=auto
timed=true
autofire=false
swap34=false
buttonwrap=true

[serial]
# serial1-4 -- set type of device connected to com port.
#              Can be disabled, dummy, modem, nullmodem, directserial.
#              Additional parameters must be in the same line in the form of
#              parameter:value. Parameter for all types is irq.
#              for directserial: realport (required), rxdelay (optional).
#              for modem: listenport (optional).
#              for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
#                             transparent, port, inhsocket (all optional).
#              Example: serial1=modem listenport:5000

serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[glide]
# glide - Enable glide emulation: true,false.

glide=false

[dos]
# xms -- Enable XMS support.
# ems -- Enable EMS support.
# umb -- Enable UMB support.
# automount -- Enable automatic mount.
# keyboardlayout -- Language code of the keyboard layout (or none).

xms=true
ems=true
umb=true
automount=true
keyboardlayout=none

[ipx]
# ipx -- Enable ipx over UDP/IP emulation.

ipx=false

[autoexec]
# Lines in this section will be run at startup.





whereas an example of the same config file made to a .bat file would be :-

# This is the configurationfile for DOSBox 0.72.

# Lines starting with a # are commentlines.
# They are used to (briefly) document the effect of each option.

[sdl]
# fullscreen -- Start dosbox directly in fullscreen.
# fulldouble -- Use double buffering in fullscreen.
# fullresolution -- What resolution to use for fullscreen: original or fixed size (e.g. 1024x768).
# windowresolution -- Scale the window to this size IF the output device supports hardware scaling.
# output -- What to use for output: surface,overlay,opengl,openglnb,openglhq,ddraw,direct3d.
# autolock -- Mouse will automatically lock, if you click on the screen.
# sensitiviy -- Mouse sensitivity.
# waitonerror -- Wait before closing the console if dosbox has an error.
# priority -- Priority levels for dosbox: lowest,lower,normal,higher,highest,pause (when not focussed).
#             Second entry behind the comma is for when dosbox is not focused/minimized.
# mapperfile -- File used to load/save the key/event mappings from.
# pixelshader -- Pixelshader program to use for resizing (works with output=direct3d only):
#                 none,point.fx,bilinear.fx,scale2x.fx,2xsai.fx.
#                (or any other .fx file that is available in the Shaders subdirectory).
# usescancodes -- Avoid usage of symkeys, might not work on all operating systems.
# overscan -- Width of overscan border.

fullscreen=true
fulldouble=false
fullresolution=original
windowresolution=original
output=ddraw
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper.txt
pixelshader=none
usescancodes=true
overscan=0

[dosbox]
# language -- Select another language file.
# memsize -- Amount of memory DOSBox has in megabytes.
# machine -- The type of machine tries to emulate:hercules,cga,tandy,pcjr,vga,ega,demovga.
# captures -- Directory where things like wave,midi,screenshot get captured.

language=
machine=vga
captures=capture
memsize=32

[render]
# frameskip -- How many frames DOSBox skips before drawing one.
# aspect -- Do aspect correction, if your output method doesn't support scaling this can slow things down!.
# scaler -- Scaler used to enlarge/enhance low resolution modes.
#           Supported are none,normal2x,normal3x,advmame2x,advmame3x,hq2x,hq3x,
#                         2xsai,super2xsai,supereagle,advinterp2x,advinterp3x,
#                         tv2x,tv3x,rgb2x,rgb3x,scan2x,scan3x.
#           If forced is appended (like scaler=hq2x forced), the scaler will be used
#           even if the result might not be desired.

frameskip=0
aspect=false
scaler=normal2x

[vsync]
# vsyncmode -- Synchronize vsync timing to the host display. Requires calibration within dosbox.
#              Supported are off,on,force,host.
# vsyncrate -- Vsync rate used if vsync is enabled.
#              Ignored when vsycmode=host is used.

vsyncmode=off
vsyncrate=75

[cpu]
# core -- CPU Core used in emulation: normal,simple,dynamic,auto.
#         auto switches from normal to dynamic if appropriate.
# cycles -- Amount of instructions DOSBox tries to emulate each millisecond.
#           Setting this value too high results in sound dropouts and lags. (unless timesynched is set)
#           You can also let DOSBox guess the correct value by setting it to max.
#           The default setting (auto) switches to max if appropriate.
# cycleup   -- Amount of cycles to increase/decrease with keycombo.
# cycledown    Setting it lower than 100 will be a percentage.
# timesynched  -- Do not emulate more cycles than possible.

core=auto
cycles=max
cycleup=500
cycledown=500
timesynched=false

[vga]
# svgachipset -- Select one of the following supported SVGA chipsets:
#                s3 (default), et4000, et4000new, et3000, pvga1a, or none.
#                Full chipset name (like 'Tseng ET4000') will also work
#                as long as it contains one of the strings above.
# videoram -- Amount of video memory on emulated SVGA. Not all emulated
#             chipsets support this setting.

svgachipset=s3
videoram=2048

[mixer]
# nosound -- Enable silent mode, sound is still emulated though.
# rate -- Mixer sample rate, setting any devices higher than this will
#         probably lower their sound quality.
# blocksize -- Mixer block size, larger blocks might help sound stuttering
#              but sound will also be more lagged.
# prebuffer -- How many milliseconds of data to keep on top of the blocksize.

nosound=false
rate=22050
blocksize=2048
prebuffer=10

[printer]
# printer -- Enable printer emulation.
# dpi -- Resolution of printer (default 360).
# width -- Width of paper in 1/10 inch (default 85 = 8.5'').
# height -- Height of paper in 1/10 inch (default 110 = 11.0'').
# printoutput -- Output method for finished pages:
#           png     : Creates PNG images in the DOSBOX directory
#           ps      : Creates Postscript documents in the DOSBOX directory (default)
#           bmp     : Creates BMP images (very huge files, not recommend)
#           printer : Send to an actual printer (Print dialog will appear)
# multipage -- Adds all pages to one Postscript file or printer job until CTRL-F2 is pressed.

printer=true
docpath=.
dpi=360
width=85
height=110
printoutput=ps
multipage=false

[midi]
# mpu401      -- Type of MPU-401 to emulate: none, uart or intelligent.
# device      -- Device that will receive the MIDI data from MPU-401.
#                This can be default,alsa,oss,win32,coreaudio,mt32,none.
# mt32rate    -- Sample rate of MT32 emulation
# config      -- Special configuration options for the device. In Windows put
#                the id of the device you want to use. See README for details.

mpu401=intelligent
device=default
mt32rate=22050
config=

[sblaster]
# sbtype -- Type of sblaster to emulate:none,sb1,sb2,sbpro1,sbpro2,sb16.
# sbbase,irq,dma,hdma -- The IO/IRQ/DMA/High DMA address of the soundblaster.
# mixer -- Allow the soundblaster mixer to modify the DOSBox mixer.
# oplmode -- Type of OPL emulation: auto,cms,opl2,dualopl2,opl3.
#            On auto the mode is determined by sblaster type.
#            All OPL modes are 'Adlib', except for CMS.
# oplrate -- Sample rate of OPL music emulation.

sbtype=sb16
sbbase=220
irq=7
dma=1
hdma=5
mixer=true
oplmode=auto
oplrate=22050

[gus]
# gus -- Enable the Gravis Ultrasound emulation.
# gusbase,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the
#            Gravis Ultrasound. (Same IRQ's and DMA's are OK.)
# gusrate -- Sample rate of Ultrasound emulation.
# ultradir -- Path to Ultrasound directory.  In this directory
#             there should be a MIDI directory that contains
#             the patch files for GUS playback.  Patch sets used
#             with Timidity should work fine.

gus=false
gusrate=22050
gusbase=240
irq1=5
irq2=5
dma1=3
dma2=3
ultradir=C:\ULTRASND

[innova]
# innova -- Enable the Innovation SSI-2001 emulation.
# samplerate -- Sample rate of Innovation SSI-2001 emulation.
# sidbase -- SID base port (typically 280h).
# quality -- Set SID emulation quality level (0 to 3).

innova=false
samplerate=22050
sidbase=280
quality=0

[speaker]
# pcspeaker -- Enable PC-Speaker emulation.
# pcrate -- Sample rate of the PC-Speaker sound generation.
# tandy -- Enable Tandy Sound System emulation (off,on,auto).
#          For auto Tandysound emulation is present only if machine is set to tandy.
# tandyrate -- Sample rate of the Tandy 3-Voice generation.
# disney -- Enable Disney Sound Source emulation. Covox Voice Master and Speech Thing compatible.
# innova -- Enable Innovation SSI-2001 emulation.
# innovabase -- Base port for Innovation SSI-2001 emulation.

pcspeaker=true
pcrate=22050
tandy=auto
tandyrate=22050
disney=true

[joystick]
# joysticktype -- Type of joystick to emulate: auto (default), none,
#                 2axis (supports two joysticks,
#                 4axis (supports one joystick, first joystick used),
#                 4axis_2 (supports one joystick, second joystick used),
#                 fcs (Thrustmaster), ch (CH Flightstick).
#                 none disables joystick emulation.
#                 auto chooses emulation depending on real joystick(s).
# timed -- enable timed intervals for axis. (false is old style behaviour).
# autofire -- continuously fires as long as you keep the button pressed.
# swap34 -- swap the 3rd and the 4th axis. can be useful for certain joysticks.
# buttonwrap -- enable button wrapping at the number of emulated buttons.

joysticktype=none
timed=true
autofire=false
swap34=false
buttonwrap=true

[serial]
# serial1-4 -- set type of device connected to com port.
#              Can be disabled, dummy, modem, nullmodem, directserial.
#              Additional parameters must be in the same line in the form of
#              parameter:value. Parameter for all types is irq.
#              for directserial: realport (required), rxdelay (optional).
#              for modem: listenport (optional).
#              for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
#                             transparent, port, inhsocket (all optional).
#              Example: serial1=modem listenport:5000

serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[glide]
# glide - Enable glide emulation: true,false.

glide=false

[dos]
# xms -- Enable XMS support.
# ems -- Enable EMS support.
# umb -- Enable UMB support.
# automount -- Enable automatic mount.
# keyboardlayout -- Language code of the keyboard layout (or none).

xms=true
ems=true
umb=true
automount=true
keyboardlayout=none

[ipx]
# ipx -- Enable ipx over UDP/IP emulation.

ipx=false

[autoexec]
# Lines in this section will be run at startup.
@echo off
mount C C
#imgmount D "CD\" -t iso
C:

CD SKY
SKY
exit

The first, the config file, just gives instructions on how to run the game upon its startup, but doesnt actually start the game. The second, will read the instruction on how to run the game and then also start the game, with the exe commands at the end.

a custom config file will overwrite the standard config file, so that you can have a different config for each game, by changing the content of the 01.bat file.

I know that everyone aready knows this, however if there is this helps one person, the its worth me writing it. If its helped no-one, then at least i've had practice typing lol! :)
 
Thanks a lot milinks for this complete (and impressive) write up! :)

I did what you suggested (renaming the conf file to "01.bat"), but I then get many "illegal command" errors before the game actually launches.

My understanding is that a conf file is interpreteed by the DosBox emu BEFORE it actually launches the DOS system,while the "01.bat" file is executed by the DOS system itself (so further in the launch process). It "works" though, because it tries to execute each line, so when it reaches the [autoexec] section, MS-DOS will actually launch each of the commands listed there. But all the previous lines in the various sections of the config file (the settings, the comments) won't be understood by MS-DOS since they have nothing to do with DOS (only Dosbox can make sense of them when it inits itself, before launching the OS).

So that means that your method actually works for launching the proper executables to run the game, but all other settings are not interpreted properly and give all those errors. So the challenge here is to be able to submit the config file earlier to Dosbox, when it is run by the DosBoxEx GUI (like we do on a PC, as stated by Klapse, with the -c parameter). Not sure it is possible, but it would be a nice addition to be able to override the default DosboxEx config file by creating a custom one in each game directory.

Cheers!
 
Hi Michoko, could you send me the config file that you are trying to use, and the new "01.bat" file you created, and i could see if i could help
 
Hi Milinks,

Here is the config file. I just renamed it into "01.bat" because, as you will see, the autoexec instructions are already there, so no need to make modifications I guess. When I pass this conf file to the PC version of Dosbox (with the -c option), the game starts immediately.

Thank you very much for your help!

# Lines starting with a # are commentlines and are ignored by DOSBox.
# They are used to (briefly) document the effect of each option.

[sdl]
#       fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back)
#       fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox.
#   fullresolution: What resolution to use for fullscreen: original or fixed size (e.g. 1024x768).
#                     Using your monitor's native resolution with aspect=true might give the best results.
#                     If you end up with small window on a large screen, try an output different from surface.
# windowresolution: Scale the window to this size IF the output device supports hardware scaling.
#                     (output=surface does not!)
#           output: What video system to use for output.
#                   Possible values: surface, overlay, opengl, openglnb, ddraw.
#         autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock)
#      sensitivity: Mouse sensitivity.
#      waitonerror: Wait before closing the console if dosbox has an error.
#         priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized.
#                     pause is only valid for the second entry.
#                   Possible values: lowest, lower, normal, higher, highest, pause.
#       mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the defaul value.
#     usescancodes: Avoid usage of symkeys, might not work on all operating systems.

fullscreen=true
fulldouble=false
fullresolution=original
windowresolution=original
output=overlay
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper.map
usescancodes=true

[dosbox]
# language: Select another language file.
#  machine: The type of machine tries to emulate.
#           Possible values: hercules, cga, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe.
# captures: Directory where things like wave, midi, screenshot get captured.
#  memsize: Amount of memory DOSBox has in megabytes.
#             This value is best left at its default to avoid problems with some games,
#             though few games might require a higher value.
#             There is generally no speed advantage when raising this value.

language=
machine=svga_s3
captures=capture
memsize=16

[render]
# frameskip: How many frames DOSBox skips before drawing one.
#    aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!.
#    scaler: Scaler used to enlarge/enhance low resolution modes.
#              If 'forced' is appended, then the scaler will be used even if the result might not be desired.
#            Possible values: none, normal2x, normal3x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x.

frameskip=0
aspect=false
scaler=normal2x

[cpu]
#      core: CPU Core used in emulation. auto will switch to dynamic if available and appropriate.
#            Possible values: auto, dynamic, normal, simple.
#   cputype: CPU Type used in emulation. auto is the fastest choice.
#            Possible values: auto, 386, 386_slow, 486_slow, pentium_slow, 386_prefetch.
#    cycles: Amount of instructions DOSBox tries to emulate each millisecond.
#            Setting this value too high results in sound dropouts and lags.
#            Cycles can be set in 3 ways:
#              'auto'          tries to guess what a game needs.
#                              It usually works, but can fail for certain games.
#              'fixed #number' will set a fixed amount of cycles. This is what you usually need if 'auto' fails.
#                              (Example: fixed 4000).
#              'max'           will allocate as much cycles as your computer is able to handle.
#            
#            Possible values: auto, fixed, max.
#   cycleup: Amount of cycles to decrease/increase with keycombo.(CTRL-F11/CTRL-F12)
# cycledown: Setting it lower than 100 will be a percentage.

core=simple
cputype=386_slow
cycles=5000
cycleup=500
cycledown=500

[mixer]
#   nosound: Enable silent mode, sound is still emulated though.
#      rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality.
#            Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
# blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged.
#            Possible values: 1024, 2048, 4096, 8192, 512, 256.
# prebuffer: How many milliseconds of data to keep on top of the blocksize.

nosound=false
rate=44100
blocksize=1024
prebuffer=20

[midi]
#     mpu401: Type of MPU-401 to emulate.
#             Possible values: intelligent, uart, none.
# mididevice: Device that will receive the MIDI data from MPU-401.
#             Possible values: default, win32, alsa, oss, coreaudio, coremidi, none.
# midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use.
#               See the README/Manual for more details.

mpu401=intelligent
mididevice=default
midiconfig=

[sblaster]
#  sbtype: Type of Soundblaster to emulate. gb is Gameblaster.
#          Possible values: sb1, sb2, sbpro1, sbpro2, sb16, gb, none.
#  sbbase: The IO address of the soundblaster.
#          Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
#     irq: The IRQ number of the soundblaster.
#          Possible values: 7, 5, 3, 9, 10, 11, 12.
#     dma: The DMA number of the soundblaster.
#          Possible values: 1, 5, 0, 3, 6, 7.
#    hdma: The High DMA number of the soundblaster.
#          Possible values: 1, 5, 0, 3, 6, 7.
# sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer.
# oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type. All OPL modes are Adlib-compatible, except for 'cms'.
#          Possible values: auto, cms, opl2, dualopl2, opl3, none.
#  oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well).
#          Possible values: default, compat, fast.
# oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly).
#          Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000.

sbtype=sbpro1
sbbase=220
irq=5
dma=1
hdma=5
sbmixer=true
oplmode=auto
oplemu=default
oplrate=44100

[gus]
#      gus: Enable the Gravis Ultrasound emulation.
#  gusrate: Sample rate of Ultrasound emulation.
#           Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#  gusbase: The IO base address of the Gravis Ultrasound.
#           Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
#   gusirq: The IRQ number of the Gravis Ultrasound.
#           Possible values: 5, 3, 7, 9, 10, 11, 12.
#   gusdma: The DMA channel of the Gravis Ultrasound.
#           Possible values: 3, 0, 1, 5, 6, 7.
# ultradir: Path to Ultrasound directory. In this directory
#           there should be a MIDI directory that contains
#           the patch files for GUS playback. Patch sets used
#           with Timidity should work fine.

gus=false
gusrate=44100
gusbase=240
gusirq=5
gusdma=3
ultradir=C:\ULTRASND

[speaker]
# pcspeaker: Enable PC-Speaker emulation.
#    pcrate: Sample rate of the PC-Speaker sound generation.
#            Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#     tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'.
#            Possible values: auto, on, off.
# tandyrate: Sample rate of the Tandy 3-Voice generation.
#            Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#    disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible).

pcspeaker=true
pcrate=44100
tandy=auto
tandyrate=44100
disney=true

[joystick]
# joysticktype: Type of joystick to emulate: auto (default), none,
#               2axis (supports two joysticks),
#               4axis (supports one joystick, first joystick used),
#               4axis_2 (supports one joystick, second joystick used),
#               fcs (Thrustmaster), ch (CH Flightstick).
#               none disables joystick emulation.
#               auto chooses emulation depending on real joystick(s).
#               (Remember to reset dosbox's mapperfile if you saved it earlier)
#               Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none.
#        timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away).
#     autofire: continuously fires as long as you keep the button pressed.
#       swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks.
#   buttonwrap: enable button wrapping at the number of emulated buttons.

joysticktype=auto
timed=true
autofire=false
swap34=false
buttonwrap=false

[serial]
# serial1: set type of device connected to com port.
#          Can be disabled, dummy, modem, nullmodem, directserial.
#          Additional parameters must be in the same line in the form of
#          parameter:value. Parameter for all types is irq (optional).
#          for directserial: realport (required), rxdelay (optional).
#                           (realport:COM1 realport:ttyS0).
#          for modem: listenport (optional).
#          for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
#                         transparent, port, inhsocket (all optional).
#          Example: serial1=modem listenport:5000
#          Possible values: dummy, disabled, modem, nullmodem, directserial.
# serial2: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, directserial.
# serial3: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, directserial.
# serial4: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, directserial.

serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[dos]
#            xms: Enable XMS support.
#            ems: Enable EMS support.
#            umb: Enable UMB support.
# keyboardlayout: Language code of the keyboard layout (or none).

xms=true
ems=true
umb=true
keyboardlayout=auto

[ipx]
# ipx: Enable ipx over UDP/IP emulation.

Enable=0
Connection=0
ipx=false

[autoexec]
# Lines in this section will be run at startup.

@ECHO OFF
mount C "."
c:
ultima5.com
exit
 
 
Last edited by a moderator:
[autoexec] # Lines in this section will be run at startup. @ECHO OFF mount C "." c: ultima5.com exit
One thing that i did forget to mention in my explanation earlier was the -c command, which allows the command you wish to run, runs in dosbox not outside of is parameters, at first glance, i could see a problem in that because Dosbox-Ex automatically mounts the C drive as the game folder you're playing, in this example, Ultima, That your batch file is trying to mount the c drive twice, which it obviously wont do, unless you use the mount -u c command to unmount the C drive. so the Mount C"." command, in my opinion needs tobe deleted in order to play it, as its going to fault straight out with the double mounting of C. Its important to remember that in Dosbox-Ex the C drive is already mounted to the particular game folder as the c drive, so no mounting is needed, and will confuse things. The batch file would work on a PC dosbox, as pc dosbox needs the c drive mounted, along with the D drive, which again in Disbox-Ex is auto mounted as 01.iso if its in the game folder.
 
Last edited by a moderator:
@Michoko - As previously mentioned, the 01.bat file, if not already created by you with the correct commands written, will be created by Dosbox-Ex. The app will always look to 01.bat to start the game, and 02.bat to install/setsound etc. A very easy way of making sure you're ultima config is working for that specific game is to edit your 01.bat file to:-

@echo off
ultima.exe -conf ultima.conf

where the ultima.exe is the executable to start the game, and the ultima.conf is the name of your ultima config file, so that the -conf command kicks in the config commands prior to starting the game. Because the game folder is mounted as C then as mentioned theres no need to mount any folders etc, and should be an easy way for you to start the game with the ultima config file loaded.
 
I've been thinking about the custom config issue, and it's been bugging me, the fact that for each of the ooodles of games i've got on Dosbox-Ex, and each have their own custom configs, and wondering if they are actually using the custom config or the default config that loads up when dosbox starts. The fact being that when Dosbox starts, it loads the default config, or the custom config you have set prior to running Dosbox. The issue would be, were each custom configs loading with each game, giving unique configs to each game, allowing sound changes etc for specific games. Also in relation to Michoko, does the "custom" config load up prior to the game starting, or does it fall back on the default config, as it's very hard without a frontend or shortcut, to load a custom config for each game. I'd been going along the lines that my custom configs WERE loading each time for each game. However, after Michoko's issue, it was bugging me so i had to make sure.

When Dosbox starts up on your PC etc, it tells you it's mounting the default config from the given location, and shows you a few of the settings from that config file, such as cycles and frameskip.

The question that needed answering was, for me at least, were the custom configs that were placed within the 01.bat file, (by renaming the config file from "game.config" to 01.bat), that starts the game, loading for each game, or was the default config loading all the time, ignoring the custom configs. Its a question basically of does Dosbox-Ex start the dosbox console when you start the app, and it's running in the background all the time, along with the same default config, or does Dosbox-Ex start up and then the Dosbox console starts when you press play for each game, thus allowing you to change the config file for each game.

So, I took two random games from my list and altered the custom configs, so that i could see if the custom configs were loading by changing the preferences of the cycles and frameskip. By using the advanced options and changing it from fullscreen to a window, i was able to see those prefenences, and see if they retained the default settings, or if they changed with the custom configs for each game.

I took Knight's Chase Time Gate, and edited the cycles to 2500 and framekip of 4.



I also took Krondor, and edited the cyles to 5000, and frameskip of 2. Both of which were different from the default config settings.



Both of the games when started, showed the settings from the custom config files within the 01.bat file from each game folder, showing that each game can have its own customizable config files by simply changing the config file to 01.bat file, and adding at the bottom in the [autoexec] section, the exe commands, or other commands to get the game started etc.
 
 
Whilst I was digging through my old games, seeing which one's would be good for Dosbox-Ex, I came across What i believe to be a gem from my past, Titanic - Adventure out of Time! This was from when i was interested in all things titanic lol! It runs on Windows 3 so i thought i'd give it a go and see if it would run with me installing Win3x into Dosbox with the Titanic game.



I expected it to be too slow, or maybe not start at all, but it runs brilliantly!





The speech runs smooth with no stutters etc, and the Pandora is perfect for this game with its controls (being D-pad for movement, and mouse for having a looksee :) ). Does anyone else remember this game?
 
 
Back
Top