What's new in DOSBox 0.74-3
Dec 24, 2020
- Implement basic file access control for files available from within the emulation, so that programs running inside DOSBox can't access /proc (e.g. /proc/self/mem). (CVE-2019-12594)
- Unify unmounting code and add some protections against out of bound access when DOS_DRIVES is not 26.
- Use correct type for return value of strlen.
- Change scan3x to a bit brighter.
- Fix unitialized access to some isoDrive fields and improve stability when switching CD images.
- Small fix to hq3x.
- Fix 256 colour mode encoding in zmbv.dll.
- Some small aliassing fix.
- Change SET to check the size of the MCB when adding variables. Fixes hangs with Norton Commander.
- Check buffer length before doing tab completion.
- Correct buffer overflow with very long lines in bat files. (CVE-2019-7165)
- Correct the boundary check for the internal programs array.
- Increase stability in max cycles mode by increasing the lower bound.
- Fix command prompt in windows 3.11 with dynrec core.
- Fix Win64 dynrec core.
- Always clear buffers before drawing in OpenGL mode. Fixes artifacts with drivers that have more than 2 buffers and overlays.
- Fix red border that appeared when scaling the image in OpenGL mode with Nvidia on Linux and Mac.
- Change default output to opengl on Mac, as surface is very slow there in 64 bit.
- Add workaround for the mouse unlocking problem with X.org 1.20.1.
- Fix table access when USE_FULL_TLB is undefined (non-default configuration).
- Several fixes to prevent compilation errors.
- Update Visual studio file to fix missing files from 0.74-2.
New in DOSBox 0.74-2 (Dec 24, 2020)
- Rewrite auto/max cycles algorithm to work better with windows 7, other OSes might benefit as well.
- Update 64bit recompiler to work on OSX and Linux.
- Several improvements to make the recompilers work with newer compilers and add some workarounds about clang confusing itself.
- Fix several variables being the wrong size in the recompiler.
- Support absolute 64 bit addressing. (DRC:64 bit error messages)
- Zero extend data in dynrec core for LLVM compilation/
- Reduce overhead of the Mac version with a lot. Results in a speed increase.
- Replace NV_PixelDataRange with the more common ARB_PixelBufferObject extension. Should help with output=opengl.
- Reuse graphics window if possible instead of always creating a new one!
- Add patches to work better when called by WINE
- support WINE style namemangling.
- allow Z: to be moved to a different drive.
- Try to fix stuttering audio with opengl output on Linux. (or at least improve it. Linux users might need to increase the prebuffer option a bit)
- Fix automake and autoconf problems.
- Fix problems related to packed struct layouts.
- Fix compilation on gcc 4.4 and gcc 4.6.1.
- Fix compilation with -DPIC.
- Hopefully fix crash on shutdown, when unknown condition is encountered.
- Fix -lto with gcc.
- Fix clang compliation with asm fpu core.
- Fix mapper crash on startup and when changing the mapper key.
- Fix compilation in VS2015.
- Fix compilation on mingw64.
- Fix compilation on Frisbee and newer clang.
- Fix compilation machines that have X11 libraries installed, but use a SDL without X11.
- Fix a few problems relating to video capturing
- Writing out the index too often. (slowdown with longer captures)
- Not being aware of when only the refresh rate changed.
- Fix call order when bitshifting the return order (VS C /O2 builds).
- Fix sign-extension error in S3 draw funcion, i.e. win3.1 analog clock.
- Fix expanddot not caring about the size of the inputbuffer.
- Some fixes for the debugger related to starting a program through debug.com.
- Bring OS/2 port code up to date.
- Reduce the amount of warning when compiling with quite a bit.
- Allow 15/26/32 bits input to the opengl output.
- Add cmd-q as exit key for macs.
- Fix icon and titlebar on very old setups.
- Fix off by one display size calculation errors with very large displays.
- Fix out of bounds access the unused byte in the 32 bit colour value of the hardware mouse cursor pixel was affected.
- Fix depreciated warnings on Mac, allow soundfont loading for coreaudio.
- Keep repeating a pressed key if another key was unpressed.
- Fix crash on OS X related to putting junk in the titlebar.
- Extend fullresolution=0x0 to work on Linux and Mac.
- Change gameblaster and tandy sound core to latest mame version.
- Improve numlock and capslock support on Linux and Macs. Still not perfect on Windows.
- Added even more code to workaround Windows behaving weirdly with alt-tab.
New in DOSBox 0.74.1 (Sep 11, 2012)
- built against SDL 1.2.15 which fixes going fullscreen on OS X 10.7 and newer
- includes DOSBox revisions
- Fix startup detection of numlock and capslock.
- Update CALLBACK_Idle to use the callback offset. Fixes memory corruption.
- Fix bug 3477126. Don't put junk chars in the title bar. Mac OS X will crash on it
- Add cmd-q => exit for Mac OS X
New in DOSBox 0.74 (May 12, 2010)
- Several small game specific fixes/hacks/support. (Offensive, Roadhog, GTA installer, Kingdom O' Magic soundcard detection, Pirate booter, Armored Fist installer)
- Add the S3-specific 640x480 256 color mode. (fixes regression in "Wooden Ships and Iron Men" and "I Have No Mouth And I Must Scream")
- Fix a stack overflow that could crash DOSBox.
- Add fake microphone input. (fixes Talking Parrot)
- Modify adlib turn off code, so that it doesn't turn off in cases where the same sound is repeated over and over again.
- Several small fixes to the CDROM audio code. (HOMM2, Redneck Rampage and others)
- Several improvements to the CDROM emulation code. (fixes Alpha Storm and GT Racing 97)
- Some small CPU fixes that might fix something.
- Handle opcode 0xff subcode 7 as invalid instruction. (fixes dif-2 & others)
- Some hercules fixes. (Testdrive)
- Improve support for blanked parts that wrap around to the start of the screen. (fixes Magic Circle demo and Sid&Al)
- Remove old OPL cores as the new ones seem to work very nicely.
- Modify movie recording code so that the movies aren't corrupt when you exit dosbox without stopping the movie.
- Change RGB3x scaler to look more pretty.
- Improve initial register values compatility of the GUS.
- Added autodetection for Gameblaster. (games can find it now)
- Change render preferences a bit to be more compatible with Windows 7.
- Add DOS fixes to terminate program. (fixes Fortune Teller)
- Add FFREEP. (fixes Trucks)
- Improve FPU ST80 in C mode when writing zero. (fixes Antigok)
- Add special int10 scanline function. (fixes mz700 and probably lots of games that mess with them)
- Fix scrolling in rarely used video modes. (fixes Orphee)
- Modify game specific hacks a bit so that Kick off 3 works again.
- Lots of fixes to the INT10 video parameter table. (Seven spirits of ra and others)
- Add VGA blanking in machine=vgaonly. (used by Alien Carnage)
- CGA, PCJr, Tandy: Add video blanking, change display start latch timing, sync pulse width correction.
- PCJr, Tandy: implement vertical retrace interrupt.
- PCJr, CGA: line-by-line video emulation.
- PCJr: support on-screen change of color modes 4medium to 16low. (used by Ghostbusters booter)
- Hercules: Add green and amber monochrome support.
- All machines: only update the video timing when needed. (Jungle Hunt, others that synchronize to the video screen might profit)
- Several small DOS fixes.
- Some UMB related fixes. (The Legacy without UMB)
- Fix version number of DSP for SB 1.5. (fixes a few games)
- Several VGA emulation improvements. (Allertone football manager)
- Some Tandy fixes. (Mech Warrior)
- Small improvements and fixes to the OPL emulation.
- Add low level Tandy DAC emulation.
- Some EMS fixes. (fixes Mortal Kombat and others)
- Change SoundBlaster DSP reset mechanism, add sb irq acknowledge logic. (fixes stmik-based applications)
- Some interrupt pointer location modifications. (fixes Tinker Tales)
- Some fixes to the BOOT code. (fixes Last Mission)
- Respect write-only file information. (fixes Champions of Zulala)
- Some RTC fix. (fixes Tully Bodine and others)
- Improve mouse emulation to work better with Water World.
- Hopefully fix the translation of the configuration file.
- Speed up and fixes for the recompiler core. (pitfall2 pcjr)
- Change memory start location. (fixes 7th Guest installer)
- Several fixes to the batch file handling. (Shift and use the typed first %0 instead of the parsed %0)
- Improve file redirection and redirected line ends. (fixes Phantasmagoria 2 DOS installer)
- Fix compilation with new MAC os X version.
- Add 16C550A FIFO support to the serial port emulation.
- Improve modem emulation to get higher speeds.
- Change default samplerates to 44100, blocksize to 1024 and prebuffer to 20, so that hopefully certain soundcards produce more fluent sound playback.
- Add some rarely used, but for some games critical flags to the internal commands.
- Add -userconf flag, so that the userspecific configuration can easily be used together with -conf configfile.
- Improve internal timing with repeating timers (especially with the dynamic core).
New in DOSBox 0.73 (May 28, 2009)
- Add two new opl2+opl3 emulators. (better speed, different implementation approach)
- Improved DRO recording/better file structure.
- Add EGA emulation.
- Add special vga machine mode. Supports more of the exotic tricks like changing the palette during screen updates, 9x16 fonts etc.
- Added special machine modes for the following svga cards:S3ParadiseTseng
- Fix problems with the vga split line feature.
- Improve vesa emulation.
- Add optional selection of old vesa mode for games that don't work with certain vesa features.
- Improve video BIOS emulation to behave more like a real bios.
- Fixes for emulated 4bpp graphics modes.
- Fixes to paging system.
- Various fixes and improvements for the recompiling core.
- Add arm backend for the recompiling core.
- Add some mscdex quirks when dealing with files that are exactly 8.3 long.
- Small fixes to batch file handling.
- Small fixes to the XMS memory handling.
- Various fixes for aligned memory on hosts that want it.
- Various improvements to the mouse.
- Fixes and small speed ups to the debugger.
- Fix and improve lot's of compilation problems. (curses detection, GCC 3.4 and GCC 4.X fixes)
- Added some basic auto keyboard layout handling. (windows only currently)
- Add basic support for evdev keyboard driver.
- Various fixes to the timer. (improve mode 2 timer changes, implement mode 1, improve gate2 handling)
- Add audio extraction and mci audio support. Should enable CDROM audio for Vista and adds volume control.
- Improve the directory cache speed a lot, especially with mounting slow media like network paths.
- Various fixes to the create temporary file call.
- Don't keep batchfiles open during execution. Allows rewriting of the active batchfile. (menu programs use this trick sometimes)
- Fix problems with filenames with 2 extensions.
- Add some more lowlevel dos tables.
- Fixes to hercules emulation.
- Fix flag handling for special case of ROR.
- Make the batchfile handling in regard to IF more flexible.
- Fixes to scrolling/panning feature.
- Add prefetch queue emulation.
- Make the emulated cpu type selectable. This is mainly the identification commands and the way paging works.
- Some special EMS functionality added. (OS handles, zero-page handling)
- Improve support for EMS when booting a different OS.
- Improve cdrom speed detection by games.
- Improve stability of cycle guessing code, when there is background activity.
- Fix various mscdex and cdrom detection schemes.
- Added Coremidi support on Mac OS X.
- Improve support for DOS devices when used to detect the existance of directories in various ways.
- Add IRQ 2 emulation on VRET. (ega only)
- Added video parameter table and video state functionality.
- Increase default freespace to 250 MB.
- Some fixes to the fat filesystem handling for disk images.
- Some soundblaster fixes and command additions.
- Fix mixer 16bit direct transfers on bigendian hosts.
New in DOSBox 0.72 (Dec 8, 2008)
- Fixed unitialized variable in joystick. (Fixes crashes on Vista and Mac OS X)
- Some bugfixes and speedups to the 64 bit recompiling core.
- Fixed sign flag on soundblaster dma transfers (Space Quest 6 intro)
- Fixed a bug in keyboard layout processing code and fixed certain layouts.
- Fixed Dreamweb.
- Improved speed unlocking when running cycles=max.
- Fixed a crash related to the tab completion in the shell.
- Improved aspect correction code. Should now be like how a real monitor handles it.
- Fixed a bug in the xms status report code. (Blake Stone 1.0 shareware)
- Added a lot more keyboard layouts.
- Fix crash related to changing the scaler before a screen was created.
- Hopefully fixed compilation on *bsd.
- Enabled auto cpu core selection for recompiling core as well.
- Made the used joystick selectable when 4axis is specified.
- Added some hints for inexperienced DOS users to the shell.
New in DOSBox 0.71 (Dec 8, 2008)
- Add a new recompiling cpu core, which should be easier to port.
- Add 64 bit version of the recompiling core.
- Add mipsel 32 bit version of the recompiling core.
- Fix a few small problems with FCBs. (fixes Jewels of darkness and cyrus chess)
- Raise some more exceptions. (fixes vbdos)
- Fix a few problems with the dynamic core. (fixes Inner Words, Archmimedean Dynasty and others)
- Improve/Fix fallback code for certain graphics cards.
- Fix a few cd audio related bugs.
- Add an undocumented MSCDEX feature. (Fixes Ultimate Domain)
- Fix some pcspeaker mode. (fixes Test Drive and similar games)
- Improve dos keyinput handling. (fixes Wing Commander 3 exit dialog)
- Remove Exit condition on fully nested mode. (fixes some demo)
- Add image file size detection.
- Add/Fix some ansi codes. (fixes PC Larn and certain versions of infocom games)
- Several general DOS fixes. (fixes nba95, hexit and various other games)
- Add some valid input checks. (fixes 3d body adventure and similar games)
- Fix digital joystick centering problem.
- Reenable textmode 54 and 55.
- Fix a pelmask problem with univbe 5.0 lite. (fixes Panzer General)
- Fix minor mixer underflow.
- Some general image and bios disk emulation fixes.
- Hopefully fix compilation on BSD and darwin.
- Try using ioctl cdrom access by default if possible.
- Fix some svga detection routine. (fixes Grandest Fleet 2 and Bobby Fischer Teaches Chess)
- You can now close DOSBox using the status window in win32.
- Add support for NX enabled systems.
- Fix a casting error which only showed with certain compilers. (fixes various games under mac os x and 64 bit linux)
- Improve timer and add gate 2 support. (fixes various games and joystick problems)
- Improve mouse. Add undocumented backdoor. (fixes Last half of Darkness, PC-BLOX and others)
- Add/improve support for ~ and ~username in all commands.
- Fix a font problem with the pcjr/tandy. (fixes personal deskmate 2)
- Change dma routine a bit. (fixes ticks in sound in various games)
- Allow read-only diskimages to be booted. (fixes various booter games)
- Add basic hidden file support on cdrom images. (fixes Player Manager 2)
- Add some rarely used functionality to the int10 mode setup. (fixes WW2 Battles of the South pacific)
- Add ability to force scaler usage.
- Speed up flag generation and make it more 386-like.
- Some colourful feedback in the mapper.
- General code cleanup.