as long as they wait for retrace on that one specific function. I have to look up which one.
It's not really a bug in dosbox, more in the build engine, with a specific number of display pages available (which depends on the resolution + amount of videomemory)
It is hidden if you wait for the retrace, if I recall correctly.
as long as they wait for retrace on that one specific function. I have to look up which one.
It's not really a bug in dosbox, more in the build engine, with a specific number of display pages available (which depends on the resolution + amount of videomemory)
It is hidden if you wait for the retrace, if I recall correctly.
I'm aware it's a build engine bug and not in DOSBox. Too bad the available patch is not compatible with the current SVN code.
Sorry, filipetolhuizen, I still can't reproduce your problem. I tried it on several PCs, with the 2MB and 4MB DOSBox, and everytime 1280x2014 ran better than 1152x864, and 1024x768. With 2MB there's almost no flickering, with 4MB there's absolutely no flickering at all. Exactly what the use GameRanger experienced here: https://www.gog.com/forum/blood_series/blood_1_resolutions
Which brings me to this question: What version of Blood are you running?
Sorry, filipetolhuizen, I still can't reproduce your problem. I tried it on several PCs, with the 2MB and 4MB DOSBox, and everytime 1280x2014 ran better than 1152x864, and 1024x768. With 2MB there's almost no flickering, with 4MB there's absolutely no flickering at all. Exactly what the use GameRanger experienced here: https://www.gog.com/forum/blood_series/blood_1_resolutions
Which brings me to this question: What version of Blood are you running?
Assuming that yours is a 32bit build, problem is probably due to configure.ac not being able to detect the presence of many needed libraries in the /usr/lib/i386-linux-gnu/ folder(i.e. in case of lubuntu, maybe different in Mint) without external help. If all the required packages are installed in the system and the ./configure command is appended with LDFLAGS pointing to /usr/lib/i386-linux-gnu folder(lubuntu), then all the 'checkings' should turn out 'yes'. Atleast there shouldn't be any errors such as '-l<lib> not found'.
Please install libsdl-sound1.2 packages(both bin & dev). Please search your system for the location of 'GL' library. Run ./configure LDFLAGS="-static" LDFLAGS="-L/path/to/lib". In my case it was /usr/lib/i386-linux-gnu.
Above is mostly wrong, i.e, except for the installation of libsdlsound package.
Attempt to build a fully static dosbox binary failed, hence a compromise had to be made. The following libraries had to be dynamically linked due to certain reasons or failings:
1. libGL 2. libpthread 3. libdl & 4. Some main & base libraries like libc etc
Good news is, static compilation of vanilla DOSBox ( SVN r4006) was successful with a mix of static and dynamic linking(-lGL & few base libraries only). Steps are as follows:
a) Execute ./autogen.sh
b) Execute ./configure
c) Check the LIBS entry in the Main & src Makefiles ('-lSDL_sound -lasound -lm -ldl -lpthread -L/usr/lib/i386-linux-gnu -lSDL -lpng -lz -lSDL_net -lX11 -lGL', in my case)
d) Check whether all the above libraries are in their static form in the system. If not, install the corresponding dev packages or build them from source(libasound, in my case). Substitute all the -l<lib> dynamic entries with /path/to/lib/lib<lib>.a static entries along with the path to static libraries through -L switch. If all the static libraries are in the system's default folder, say <libfolder>, then after replacement in both Main and src Makefiles, it should look like,
Most may know this, if all the above static libraries (and those that will come later) are copied to dosbox 'src' folder, then the <libfolder> reference is not needed and the entry can be set as to a slighly better looking
e) Remove libdl.a libpthread.a & libGL.a entries from the above LIBS list. Reason being libGL.a not readily available in the standard Lubuntu 14.04 installation and compiling Mesa-10.1.0 source package (libgl1-mesa-glx binary) to get it to spit out the libGL.a, proved to be a Pandora's Box in my case(incompatibility of static libraries and DRI and so on, topic for another discussion). Futher -ldl and -lpthread didn't like static linking much.
f) Now the Bad part. Start preparing a dependency chart for all the static libraries and its dependencies and its dependencies and so on till there is none (except the most base level packages like libc). Googling helped me to find out the dependencies, which if not available were installed in the system and the static library (.a) files were copied to the dosbox src folder. Obviously not all dependencies of every package/library need to be installed, only those that are required by dosbox. Further the libasound and pulseaudio packages had to be manually built statically(by passing --enable-static to configure) as the static libraries were not available. In my case the final output was
Order was arrived at by clearing the undefined references function by function (bottom to top approach) on the make output. Edit the LIBS accordingly w.r.t to your system in both Main and src Makefiles, if it differs from mine. Don't know why the configure script is unable to list out all the dependencies right away. Probably if we statically build all the above libraries (spitted out originally by configure) with full features/options(instead of copying from the system folders) and replaced the system libraries(which may not contain all the functions), then it may work, without throwing any 'undefined reference' errors due to missing dependencies and so on.
g) Append the earlier stripped out libraries for dynamic linking such that it reads as,
i) Some warnings may come, not sure how deadly. Warning: snd_pcm_hwsync() is deprecated, consider to use snd_pcm_avail(), in my case.
j) Avoid linker option -static (through LDFLAGS) during the final linking as the corresponding built executable errors out as 'no such file or directory', even though the dosbox executable with necessary permissions is present in the src folder. However no error messages were reported during make at the time of linking. Tried the following combinations and checked the dosbox executable with ldd:
1) LDFLAGS = , size of dosbox executable was 18.99 MB
2) LDFLAGS = -static, size of dosbox executable was 18.91 MB (this one has some issue, can't be run, error: no such file or directory)
3) LDFLAGS = -s, size of dosbox executable was 7.35 MB
4) LDFLAGS = -static -s, size of dosbox executable was 7.27 MB (this one has some issue, can't be run, error: no such file or directory)
All the above cases' ldd output was almost the same.
k) Tested it on my main desktop with same Lubuntu installation without libsdl, libsdl-sound and pulseaudio packages by running Lure of the temptress. Sound was not coming initially, but it was due to my lack of knowledge of setting up midi options in Lubuntu. Had to install timidity and set midiconfig to 128:0 in dosbox.conf for sound to work. Attached only the build built with -s option.
Vanilla DOSBox SVN r4006 static 32 bit build with few shared dependencies. Linker option used '-s'
File license
Fair use/fair dealing exception
P.S. There may be a better procedure than the above convoluted one. And the usual warning regarding the attached dosbox executable. Use it at your own risk 🤣 as it was compiled only with seemingly logical steps(right or wrong, time and testing only can tell).
Last edited by gandhig on 2017-03-10, 20:56. Edited 5 times in total.
Sorry, filipetolhuizen, I still can't reproduce your problem. I tried it on several PCs, with the 2MB and 4MB DOSBox, and everytime 1280x2014 ran better than 1152x864, and 1024x768. With 2MB there's almost no flickering, with 4MB there's absolutely no flickering at all. Exactly what the use GameRanger experienced here: https://www.gog.com/forum/blood_series/blood_1_resolutions
Which brings me to this question: What version of Blood are you running?
Latest Plasmapack version.
I have version 1.21, that's "One Unit Whole Blood" from GOG.com. Maybe that makes the difference?
Sorry, filipetolhuizen, I still can't reproduce your problem. I tried it on several PCs, with the 2MB and 4MB DOSBox, and everytime 1280x2014 ran better than 1152x864, and 1024x768. With 2MB there's almost no flickering, with 4MB there's absolutely no flickering at all. Exactly what the use GameRanger experienced here: https://www.gog.com/forum/blood_series/blood_1_resolutions
Which brings me to this question: What version of Blood are you running?
Latest Plasmapack version.
I have version 1.21, that's "One Unit Whole Blood" from GOG.com. Maybe that makes the difference?
I think it's the same version. I had the flickering when facing the walls with torches. The animated walls textures made the HUD flicker.
So I decided to take a stab at applying xBRZ to the current ECE source since I really want this scaler for DOSBox. Since I am a complete newcomer at everything that has to do with programming, with basically 0 understanding of the process, I decided to ask Zenju for some pointers here: https://sourceforge.net/p/xbrz/forums/general … /?limit=25#f2b3 .
While he was basically ok with it, I was hoping he would give me something more basic to work with, I decided to go ahead and at least try. So I downloaded his source archive from here https://sourceforge.net/projects/xbrz/files/DOSBox/ which I believe is the one called "DOSBox_0.74+xBRZ_1.4+Save_States_Source.7z", extracted it and proceeded to find one file called sdl-win32.diff which I'm assuming it's the diff file he was talking about as there was no other inside. Next I installed Mingw as per the wiki's instructions with the SDL libraries. Next I followed the 'compiling dosbox section' from the wiki, but I can't seem to find any ECE dosboxsvn.tgz anywhere so I'm a bit confused as to what to do next. I tried renaming "DOSBox ECE SVN r4007 (Windows source).7z" to "ece.tgz" but Mingw just told me it didn't look like a tar archive. I'd love some help, thanks.
First: The diff you found has nothing to do with what you're trying to achieve, but enables DIrect Draw output in SDL (enabling output=ddraw in the [sdl] section in the dosbox.conf).
Second: You can't just rename a .7z to .tgz, you don't even have to do that. Just extract the 7z to where it's content is supposed to go.
Third: There is no diff for xBRZ provided, what Zenju meant ist that you have to create a diff yourself, comparing the source code of DOSBox 0.74 and his build and "extracting" the differences as a diff file.
Fourth: A diff based on 0.74 most likely won't work with the current SVN, because a lot of things changed since 0.74. Especially with the source of DOSBox ECE you can bet it won't work, since it contains even more changes compared to vanilla 0.74.
So, I'm sorry to dampen your expectations, but it takes a little more than just downloading a diff and applying it to any given source code to get the features you want.
UPDATE: I had a look into the diff I created out of Zenjus build and the source code of DOSBox 0.74. He obviously removed a lot of tabs in almost every file, so the diff almost affects every single file of the whole source, making it pretty much useless because without coding knowledge you can't tell which changes really are necessary for the scaler to work. 😢
1=== Left: dosbox_074\ 2=== Right: dosbox_xbrz\ 3=== Summary: Files(66+14eq+0qm 223neq 24np) Folders(22p 3np) 4=== Showing Equal: no 5=== Showing Equivalent: no 6=== Showing QuickMatch: no 7=== Showing Peerless: no 8=== Showing Folders: no 9=== Showing Errors: yes 10=== ================================================================ 11Files 'include\bios_disk.h' and 'include\bios_disk.h' are different 12Files 'include\callback.h' and 'include\callback.h' are different 13Files 'include\control.h' and 'include\control.h' are different 14Files 'include\cpu.h' and 'include\cpu.h' are different 15Files 'include\cross.h' and 'include\cross.h' are different 16Files 'include\dma.h' and 'include\dma.h' are different 17Files 'include\dos_inc.h' and 'include\dos_inc.h' are different 18Files 'include\dos_system.h' and 'include\dos_system.h' are different 19Files 'include\dosbox.h' and 'include\dosbox.h' are different 20Files 'include\fpu.h' and 'include\fpu.h' are different 21Files 'include\hardware.h' and 'include\hardware.h' are different 22Files 'include\inout.h' and 'include\inout.h' are different 23Files 'include\ipx.h' and 'include\ipx.h' are different 24Files 'include\ipxserver.h' and 'include\ipxserver.h' are different 25Files 'include\joystick.h' and 'include\joystick.h' are different 26Files 'include\keyboard.h' and 'include\keyboard.h' are different 27Files 'include\logging.h' and 'include\logging.h' are different 28Files 'include\mapper.h' and 'include\mapper.h' are different 29Files 'include\mem.h' and 'include\mem.h' are different 30Files 'include\mixer.h' and 'include\mixer.h' are different 31Files 'include\modules.h' and 'include\modules.h' are different 32Files 'include\paging.h' and 'include\paging.h' are different 33Files 'include\pic.h' and 'include\pic.h' are different 34Files 'include\programs.h' and 'include\programs.h' are different 35Files 'include\regs.h' and 'include\regs.h' are different 36Files 'include\render.h' and 'include\render.h' are different 37Files 'include\serialport.h' and 'include\serialport.h' are different 38Files 'include\setup.h' and 'include\setup.h' are different 39Files 'include\shell.h' and 'include\shell.h' are different 40Files 'include\vga.h' and 'include\vga.h' are different 41Files 'include\video.h' and 'include\video.h' are different 42Files 'src\cpu\callback.cpp' and 'src\cpu\callback.cpp' are different 43Files 'src\cpu\core_dyn_x86.cpp' and 'src\cpu\core_dyn_x86.cpp' are different 44Files 'src\cpu\core_dyn_x86\cache.h' and 'src\cpu\core_dyn_x86\cache.h' are different 45Files 'src\cpu\core_dyn_x86\decoder.h' and 'src\cpu\core_dyn_x86\decoder.h' are different 46Files 'src\cpu\core_dyn_x86\dyn_fpu.h' and 'src\cpu\core_dyn_x86\dyn_fpu.h' are different 47Files 'src\cpu\core_dyn_x86\dyn_fpu_dh.h' and 'src\cpu\core_dyn_x86\dyn_fpu_dh.h' are different 48Files 'src\cpu\core_dyn_x86\helpers.h' and 'src\cpu\core_dyn_x86\helpers.h' are different 49Files 'src\cpu\core_dyn_x86\risc_x86.h' and 'src\cpu\core_dyn_x86\risc_x86.h' are different 50Files 'src\cpu\core_dyn_x86\string.h' and 'src\cpu\core_dyn_x86\string.h' are different 51Files 'src\cpu\core_dynrec.cpp' and 'src\cpu\core_dynrec.cpp' are different 52Files 'src\cpu\core_dynrec\cache.h' and 'src\cpu\core_dynrec\cache.h' are different 53Files 'src\cpu\core_dynrec\decoder.h' and 'src\cpu\core_dynrec\decoder.h' are different 54Files 'src\cpu\core_dynrec\decoder_basic.h' and 'src\cpu\core_dynrec\decoder_basic.h' are different 55Files 'src\cpu\core_dynrec\decoder_opcodes.h' and 'src\cpu\core_dynrec\decoder_opcodes.h' are different 56Files 'src\cpu\core_dynrec\dyn_fpu.h' and 'src\cpu\core_dynrec\dyn_fpu.h' are different 57Files 'src\cpu\core_dynrec\operators.h' and 'src\cpu\core_dynrec\operators.h' are different 58Files 'src\cpu\core_dynrec\risc_armv4le-common.h' and 'src\cpu\core_dynrec\risc_armv4le-common.h' are different 59Files 'src\cpu\core_dynrec\risc_armv4le-o3.h' and 'src\cpu\core_dynrec\risc_armv4le-o3.h' are different 60Files 'src\cpu\core_dynrec\risc_armv4le-s3.h' and 'src\cpu\core_dynrec\risc_armv4le-s3.h' are different
…Show last 174 lines
61Files 'src\cpu\core_dynrec\risc_armv4le-thumb-iw.h' and 'src\cpu\core_dynrec\risc_armv4le-thumb-iw.h' are different 62Files 'src\cpu\core_dynrec\risc_armv4le-thumb-niw.h' and 'src\cpu\core_dynrec\risc_armv4le-thumb-niw.h' are different 63Files 'src\cpu\core_dynrec\risc_armv4le-thumb.h' and 'src\cpu\core_dynrec\risc_armv4le-thumb.h' are different 64Files 'src\cpu\core_dynrec\risc_mipsel32.h' and 'src\cpu\core_dynrec\risc_mipsel32.h' are different 65Files 'src\cpu\core_dynrec\risc_x64.h' and 'src\cpu\core_dynrec\risc_x64.h' are different 66Files 'src\cpu\core_dynrec\risc_x86.h' and 'src\cpu\core_dynrec\risc_x86.h' are different 67Files 'src\cpu\core_full.cpp' and 'src\cpu\core_full.cpp' are different 68Files 'src\cpu\core_full\ea_lookup.h' and 'src\cpu\core_full\ea_lookup.h' are different 69Files 'src\cpu\core_full\load.h' and 'src\cpu\core_full\load.h' are different 70Files 'src\cpu\core_full\loadwrite.h' and 'src\cpu\core_full\loadwrite.h' are different 71Files 'src\cpu\core_full\op.h' and 'src\cpu\core_full\op.h' are different 72Files 'src\cpu\core_full\optable.h' and 'src\cpu\core_full\optable.h' are different 73Files 'src\cpu\core_full\save.h' and 'src\cpu\core_full\save.h' are different 74Files 'src\cpu\core_full\string.h' and 'src\cpu\core_full\string.h' are different 75Files 'src\cpu\core_full\support.h' and 'src\cpu\core_full\support.h' are different 76Files 'src\cpu\core_normal.cpp' and 'src\cpu\core_normal.cpp' are different 77Files 'src\cpu\core_normal\prefix_0f.h' and 'src\cpu\core_normal\prefix_0f.h' are different 78Files 'src\cpu\core_normal\prefix_66.h' and 'src\cpu\core_normal\prefix_66.h' are different 79Files 'src\cpu\core_normal\prefix_66_0f.h' and 'src\cpu\core_normal\prefix_66_0f.h' are different 80Files 'src\cpu\core_normal\prefix_none.h' and 'src\cpu\core_normal\prefix_none.h' are different 81Files 'src\cpu\core_normal\string.h' and 'src\cpu\core_normal\string.h' are different 82Files 'src\cpu\core_normal\support.h' and 'src\cpu\core_normal\support.h' are different 83Files 'src\cpu\core_normal\table_ea.h' and 'src\cpu\core_normal\table_ea.h' are different 84Files 'src\cpu\core_prefetch.cpp' and 'src\cpu\core_prefetch.cpp' are different 85Files 'src\cpu\core_simple.cpp' and 'src\cpu\core_simple.cpp' are different 86Files 'src\cpu\cpu.cpp' and 'src\cpu\cpu.cpp' are different 87Files 'src\cpu\flags.cpp' and 'src\cpu\flags.cpp' are different 88Files 'src\cpu\lazyflags.h' and 'src\cpu\lazyflags.h' are different 89Files 'src\cpu\modrm.cpp' and 'src\cpu\modrm.cpp' are different 90Files 'src\cpu\paging.cpp' and 'src\cpu\paging.cpp' are different 91Files 'src\dos\cdrom.cpp' and 'src\dos\cdrom.cpp' are different 92Files 'src\dos\cdrom.h' and 'src\dos\cdrom.h' are different 93Files 'src\dos\cdrom_aspi_win32.cpp' and 'src\dos\cdrom_aspi_win32.cpp' are different 94Files 'src\dos\cdrom_image.cpp' and 'src\dos\cdrom_image.cpp' are different 95Files 'src\dos\cdrom_ioctl_linux.cpp' and 'src\dos\cdrom_ioctl_linux.cpp' are different 96Files 'src\dos\cdrom_ioctl_os2.cpp' and 'src\dos\cdrom_ioctl_os2.cpp' are different 97Files 'src\dos\cdrom_ioctl_win32.cpp' and 'src\dos\cdrom_ioctl_win32.cpp' are different 98Files 'src\dos\dev_con.h' and 'src\dos\dev_con.h' are different 99Files 'src\dos\dos.cpp' and 'src\dos\dos.cpp' are different 100Files 'src\dos\dos_classes.cpp' and 'src\dos\dos_classes.cpp' are different 101Files 'src\dos\dos_codepages.h' and 'src\dos\dos_codepages.h' are different 102Files 'src\dos\dos_devices.cpp' and 'src\dos\dos_devices.cpp' are different 103Files 'src\dos\dos_execute.cpp' and 'src\dos\dos_execute.cpp' are different 104Files 'src\dos\dos_files.cpp' and 'src\dos\dos_files.cpp' are different 105Files 'src\dos\dos_ioctl.cpp' and 'src\dos\dos_ioctl.cpp' are different 106Files 'src\dos\dos_keyboard_layout.cpp' and 'src\dos\dos_keyboard_layout.cpp' are different 107Files 'src\dos\dos_keyboard_layout_data.h' and 'src\dos\dos_keyboard_layout_data.h' are different 108Files 'src\dos\dos_memory.cpp' and 'src\dos\dos_memory.cpp' are different 109Files 'src\dos\dos_misc.cpp' and 'src\dos\dos_misc.cpp' are different 110Files 'src\dos\dos_mscdex.cpp' and 'src\dos\dos_mscdex.cpp' are different 111Files 'src\dos\dos_programs.cpp' and 'src\dos\dos_programs.cpp' are different 112Files 'src\dos\dos_tables.cpp' and 'src\dos\dos_tables.cpp' are different 113Files 'src\dos\drive_cache.cpp' and 'src\dos\drive_cache.cpp' are different 114Files 'src\dos\drive_fat.cpp' and 'src\dos\drive_fat.cpp' are different 115Files 'src\dos\drive_iso.cpp' and 'src\dos\drive_iso.cpp' are different 116Files 'src\dos\drive_local.cpp' and 'src\dos\drive_local.cpp' are different 117Files 'src\dos\drive_virtual.cpp' and 'src\dos\drive_virtual.cpp' are different 118Files 'src\dos\drives.cpp' and 'src\dos\drives.cpp' are different 119Files 'src\dos\drives.h' and 'src\dos\drives.h' are different 120Files 'src\dos\scsidefs.h' and 'src\dos\scsidefs.h' are different 121Files 'src\dos\wnaspi32.h' and 'src\dos\wnaspi32.h' are different 122Files 'src\dosbox.cpp' and 'src\dosbox.cpp' are different 123Files 'src\dosbox.ico' and 'src\dosbox.ico' are different 124Files 'src\fpu\fpu.cpp' and 'src\fpu\fpu.cpp' are different 125Files 'src\fpu\fpu_instructions.h' and 'src\fpu\fpu_instructions.h' are different 126Files 'src\fpu\fpu_instructions_x86.h' and 'src\fpu\fpu_instructions_x86.h' are different 127Files 'src\gui\dosbox_splash.h' and 'src\gui\dosbox_splash.h' are different 128Files 'src\gui\midi.cpp' and 'src\gui\midi.cpp' are different 129Files 'src\gui\midi_alsa.h' and 'src\gui\midi_alsa.h' are different 130Files 'src\gui\midi_coreaudio.h' and 'src\gui\midi_coreaudio.h' are different 131Files 'src\gui\midi_coremidi.h' and 'src\gui\midi_coremidi.h' are different 132Files 'src\gui\midi_oss.h' and 'src\gui\midi_oss.h' are different 133Files 'src\gui\midi_win32.h' and 'src\gui\midi_win32.h' are different 134Files 'src\gui\render.cpp' and 'src\gui\render.cpp' are different 135Files 'src\gui\render_loops.h' and 'src\gui\render_loops.h' are different 136Files 'src\gui\render_scalers.cpp' and 'src\gui\render_scalers.cpp' are different 137Files 'src\gui\render_scalers.h' and 'src\gui\render_scalers.h' are different 138Files 'src\gui\render_simple.h' and 'src\gui\render_simple.h' are different 139Files 'src\gui\render_templates.h' and 'src\gui\render_templates.h' are different 140Files 'src\gui\render_templates_hq.h' and 'src\gui\render_templates_hq.h' are different 141Files 'src\gui\render_templates_hq2x.h' and 'src\gui\render_templates_hq2x.h' are different 142Files 'src\gui\render_templates_hq3x.h' and 'src\gui\render_templates_hq3x.h' are different 143Files 'src\gui\render_templates_sai.h' and 'src\gui\render_templates_sai.h' are different 144Files 'src\gui\sdl_gui.cpp' and 'src\gui\sdl_gui.cpp' are different 145Files 'src\gui\sdl_mapper.cpp' and 'src\gui\sdl_mapper.cpp' are different 146Files 'src\gui\sdlmain.cpp' and 'src\gui\sdlmain.cpp' are different 147Files 'src\hardware\adlib.cpp' and 'src\hardware\adlib.cpp' are different 148Files 'src\hardware\adlib.h' and 'src\hardware\adlib.h' are different 149Files 'src\hardware\cmos.cpp' and 'src\hardware\cmos.cpp' are different 150Files 'src\hardware\dbopl.cpp' and 'src\hardware\dbopl.cpp' are different 151Files 'src\hardware\dbopl.h' and 'src\hardware\dbopl.h' are different 152Files 'src\hardware\disney.cpp' and 'src\hardware\disney.cpp' are different 153Files 'src\hardware\dma.cpp' and 'src\hardware\dma.cpp' are different 154Files 'src\hardware\gameblaster.cpp' and 'src\hardware\gameblaster.cpp' are different 155Files 'src\hardware\gus.cpp' and 'src\hardware\gus.cpp' are different 156Files 'src\hardware\hardware.cpp' and 'src\hardware\hardware.cpp' are different 157Files 'src\hardware\iohandler.cpp' and 'src\hardware\iohandler.cpp' are different 158Files 'src\hardware\ipx.cpp' and 'src\hardware\ipx.cpp' are different 159Files 'src\hardware\ipxserver.cpp' and 'src\hardware\ipxserver.cpp' are different 160Files 'src\hardware\joystick.cpp' and 'src\hardware\joystick.cpp' are different 161Files 'src\hardware\keyboard.cpp' and 'src\hardware\keyboard.cpp' are different 162Files 'src\hardware\memory.cpp' and 'src\hardware\memory.cpp' are different 163Files 'src\hardware\mixer.cpp' and 'src\hardware\mixer.cpp' are different 164Files 'src\hardware\mpu401.cpp' and 'src\hardware\mpu401.cpp' are different 165Files 'src\hardware\opl.cpp' and 'src\hardware\opl.cpp' are different 166Files 'src\hardware\opl.h' and 'src\hardware\opl.h' are different 167Files 'src\hardware\pcspeaker.cpp' and 'src\hardware\pcspeaker.cpp' are different 168Files 'src\hardware\pic.cpp' and 'src\hardware\pic.cpp' are different 169Files 'src\hardware\sblaster.cpp' and 'src\hardware\sblaster.cpp' are different 170Files 'src\hardware\serialport\directserial.cpp' and 'src\hardware\serialport\directserial.cpp' are different 171Files 'src\hardware\serialport\directserial.h' and 'src\hardware\serialport\directserial.h' are different 172Files 'src\hardware\serialport\libserial.cpp' and 'src\hardware\serialport\libserial.cpp' are different 173Files 'src\hardware\serialport\misc_util.cpp' and 'src\hardware\serialport\misc_util.cpp' are different 174Files 'src\hardware\serialport\misc_util.h' and 'src\hardware\serialport\misc_util.h' are different 175Files 'src\hardware\serialport\nullmodem.cpp' and 'src\hardware\serialport\nullmodem.cpp' are different 176Files 'src\hardware\serialport\nullmodem.h' and 'src\hardware\serialport\nullmodem.h' are different 177Files 'src\hardware\serialport\serialdummy.cpp' and 'src\hardware\serialport\serialdummy.cpp' are different 178Files 'src\hardware\serialport\serialdummy.h' and 'src\hardware\serialport\serialdummy.h' are different 179Files 'src\hardware\serialport\serialport.cpp' and 'src\hardware\serialport\serialport.cpp' are different 180Files 'src\hardware\serialport\softmodem.cpp' and 'src\hardware\serialport\softmodem.cpp' are different 181Files 'src\hardware\serialport\softmodem.h' and 'src\hardware\serialport\softmodem.h' are different 182Files 'src\hardware\tandy_sound.cpp' and 'src\hardware\tandy_sound.cpp' are different 183Files 'src\hardware\timer.cpp' and 'src\hardware\timer.cpp' are different 184Files 'src\hardware\vga.cpp' and 'src\hardware\vga.cpp' are different 185Files 'src\hardware\vga_attr.cpp' and 'src\hardware\vga_attr.cpp' are different 186Files 'src\hardware\vga_crtc.cpp' and 'src\hardware\vga_crtc.cpp' are different 187Files 'src\hardware\vga_dac.cpp' and 'src\hardware\vga_dac.cpp' are different 188Files 'src\hardware\vga_draw.cpp' and 'src\hardware\vga_draw.cpp' are different 189Files 'src\hardware\vga_gfx.cpp' and 'src\hardware\vga_gfx.cpp' are different 190Files 'src\hardware\vga_memory.cpp' and 'src\hardware\vga_memory.cpp' are different 191Files 'src\hardware\vga_misc.cpp' and 'src\hardware\vga_misc.cpp' are different 192Files 'src\hardware\vga_other.cpp' and 'src\hardware\vga_other.cpp' are different 193Files 'src\hardware\vga_paradise.cpp' and 'src\hardware\vga_paradise.cpp' are different 194Files 'src\hardware\vga_s3.cpp' and 'src\hardware\vga_s3.cpp' are different 195Files 'src\hardware\vga_seq.cpp' and 'src\hardware\vga_seq.cpp' are different 196Files 'src\hardware\vga_tseng.cpp' and 'src\hardware\vga_tseng.cpp' are different 197Files 'src\hardware\vga_xga.cpp' and 'src\hardware\vga_xga.cpp' are different 198Files 'src\ints\bios.cpp' and 'src\ints\bios.cpp' are different 199Files 'src\ints\bios_disk.cpp' and 'src\ints\bios_disk.cpp' are different 200Files 'src\ints\bios_keyboard.cpp' and 'src\ints\bios_keyboard.cpp' are different 201Files 'src\ints\ems.cpp' and 'src\ints\ems.cpp' are different 202Files 'src\ints\int10.cpp' and 'src\ints\int10.cpp' are different 203Files 'src\ints\int10.h' and 'src\ints\int10.h' are different 204Files 'src\ints\int10_char.cpp' and 'src\ints\int10_char.cpp' are different 205Files 'src\ints\int10_memory.cpp' and 'src\ints\int10_memory.cpp' are different 206Files 'src\ints\int10_misc.cpp' and 'src\ints\int10_misc.cpp' are different 207Files 'src\ints\int10_modes.cpp' and 'src\ints\int10_modes.cpp' are different 208Files 'src\ints\int10_pal.cpp' and 'src\ints\int10_pal.cpp' are different 209Files 'src\ints\int10_put_pixel.cpp' and 'src\ints\int10_put_pixel.cpp' are different 210Files 'src\ints\int10_vesa.cpp' and 'src\ints\int10_vesa.cpp' are different 211Files 'src\ints\int10_video_state.cpp' and 'src\ints\int10_video_state.cpp' are different 212Files 'src\ints\int10_vptable.cpp' and 'src\ints\int10_vptable.cpp' are different 213Files 'src\ints\mouse.cpp' and 'src\ints\mouse.cpp' are different 214Files 'src\ints\xms.cpp' and 'src\ints\xms.cpp' are different 215Files 'src\libs\gui_tk\gui_tk.cpp' and 'src\libs\gui_tk\gui_tk.cpp' are different 216Files 'src\libs\gui_tk\gui_tk.h' and 'src\libs\gui_tk\gui_tk.h' are different 217Files 'src\libs\zmbv\zmbv.cpp' and 'src\libs\zmbv\zmbv.cpp' are different 218Files 'src\libs\zmbv\zmbv.h' and 'src\libs\zmbv\zmbv.h' are different 219Files 'src\Makefile.am' and 'src\Makefile.am' are different 220Files 'src\Makefile.in' and 'src\Makefile.in' are different 221Files 'src\misc\cross.cpp' and 'src\misc\cross.cpp' are different 222Files 'src\misc\messages.cpp' and 'src\misc\messages.cpp' are different 223Files 'src\misc\programs.cpp' and 'src\misc\programs.cpp' are different 224Files 'src\misc\setup.cpp' and 'src\misc\setup.cpp' are different 225Files 'src\misc\support.cpp' and 'src\misc\support.cpp' are different 226Files 'src\platform\visualc\ntddcdrm.h' and 'src\platform\visualc\ntddcdrm.h' are different 227Files 'src\platform\visualc\ntddscsi.h' and 'src\platform\visualc\ntddscsi.h' are different 228Files 'src\shell\shell.cpp' and 'src\shell\shell.cpp' are different 229Files 'src\shell\shell_batch.cpp' and 'src\shell\shell_batch.cpp' are different 230Files 'src\shell\shell_cmds.cpp' and 'src\shell\shell_cmds.cpp' are different 231Files 'src\shell\shell_misc.cpp' and 'src\shell\shell_misc.cpp' are different 232Files 'src\winres.rc' and 'src\winres.rc' are different 233Files 'visualc_net\dosbox.sln' and 'visualc_net\dosbox.sln' are different
I made a small change to ECE: It now not only shows "DOSBox SVN" but the current revision of the code, so as of now "DOSBox SVN r4007". While this might seem a purely cosmetic change at first, it also introduces a new feature and a new necessity as well: The default configuration file now is named the same way, so instead of just having a "dosbox-SVN.conf" in your local appdata directory, you will now find a file called "dosbox-SVN r4007.conf" there. So, if you're using the default configuration file, from now on you either have to rename it so it matches the revision number the .exe file has each time a new SVN gets released (not very often), or you have to set everything in the new file again. The benefit is, you can now have different default configuration files for each revision.
It's a good idea to show it in the screen (for OS X, I show the revision number in the disk image name once you open it in Finder).
If I were on Windows and were using your build I'd not like the revision number in the config file. Especially with the sheer amount of committs to upstream DOSBox 😉
Seriously I don't see the point of this. Appending ECE to the the config name would make sense however to differ between plain SVN and your build. After all if people want to use different configs there is a command for that.
BUT I'm not on Windows and I'm not using your build so... my opinion is not the one to really listen to 😉
The revision number in the titlebar makes sense. It would make it easier when testing for regressions between builds. One problem with the conf name having the revision in it would mean that each new revision would write a new conf. If you regularly try each new revision you will end up having a lot of old confs cluttering up the %LocalAppData%\DOSBox directory. I agree that adding ECE to the name makes sense to keep it separate from a plain vanilla SVN build's conf. If a new build requires a change to the conf you can just tell people that they need to update the conf.
1. Modern Windows versions do not support changing files in the Program Files subfolders ( the default install location of DOSBox)
2. to avoid confusion users should read the documentation
3. to avoid confusion non-plain DOSBox builds shouldn't use a different location for the config than plain DOSBox
I hear you, but Dosbox ECE works without installation. If we set aside the conf it is already fully portable (am i right here?).
So there is no need to use the "program files" folder. I like my Dosbox portable, everything stored on a external disk so i can use it on different computers. 😀
But you can *always* use Dosbox and clones in portable mode and always create a new default config if you need it. It's not changing anything in regard to the current status quo.
Changing the behavior of a clone is not user friendly.
This is right.
But why is the dosbox.conf stored in the program dir preffered then?
If you start dosbox.exe without the -conf or -userconf parameter it uses the dosbox.conf from its starting dir if there is one, even if it also exists in %local appdata% and that contains other values.
I like it that way... and use it to my advantage with Dosbox ECE
I think this is because a dosbox.conf in the starting folder is preferred, not necessarily the program folder. That's done so you can have a config in the game folder, start Dosbox from that and have the game specific settings applied.
The revision number in the titlebar makes sense. ... I agree that adding ECE to the name makes sense to keep it separate from a plain vanilla SVN build's conf.
That's a really good idea, thank you both Dominus and collector! I changed my build accordingly, it now shows the revision number in the title bar only and creates a dosbox-ECE.conf.