mirror of
https://github.com/joncampbell123/dosbox-x.git
synced 2025-05-07 10:26:04 +08:00
9444 lines
496 KiB
Plaintext
9444 lines
496 KiB
Plaintext
Next version
|
|
- Remove mixer and VGA capture test modes from integration device. Update
|
|
integration device version number. Convert hardcoded magic constants used
|
|
in IG into constants in iglib.h which is now shared explicitly with the
|
|
iglib.h in DOSLIB. Add integration device interface to allow the guest
|
|
to read and set the CPU cycle count of the emulator. (joncampbell123).
|
|
|
|
2025.05.03
|
|
- Show TURBO status in title bar. (maron2000)
|
|
- Fixed MinGW32 builds failed using gcc15, due to a conflict in __inline__
|
|
macro. (lazka)
|
|
- Revise EGA/VGA emulation to treat the CRTC CGA/Hercules
|
|
CRTC bit remapping as bits to mask out, instead of defining
|
|
the upper limit of the memory mask. This makes the CGA mode
|
|
Engine page flipping test work. I initially had reservations
|
|
about whether or not real hardware did this, but, it would
|
|
make sense for hardware to do it that way. (joncampbell123)
|
|
- Updated libpng to version 1.6.47 (maron2000)
|
|
- Updated XCOPY to version 1.9a (maron2000)
|
|
- Updated SDL2 library to version 2.32.4 (maron2000)
|
|
- Fixed a build/install error due to using wildcards in Makefile.am, which is
|
|
not supported in GNU Automake. (maron2000)
|
|
- macOS: Install SDL2_net in CI workflow to enable internal modem support on
|
|
Release and Nightly SDL2 builds. (maron2000)
|
|
- Fixed buffer size to allocate missing byte for string terminator for
|
|
savestate filename to prevent buffer overflow (arifogel)
|
|
- Fixed settings of yellow color in COLOR command (maron2000)
|
|
- Fixed COLOR command to match behavior on Windows (maron2000)
|
|
- Fixed INT21h AH=0a cursor position moved by bell due to keyboard buffer full
|
|
(maron2000)
|
|
- Fixed INT21h AH=01 echo behavior (maron2000)
|
|
- Replaced SetPixel with DIB Section Direct Memory Access for faster printing
|
|
(DwayneSelsig)
|
|
- Fixed creation of overlay special files (zyebytevt)
|
|
- PC-98 mode: Add INT 18h function AH=10h to control cursor blink.
|
|
Emulate documented side effect in that this call also hides the
|
|
cursor. The PC-98 port of Lemmings will no longer show a blinking
|
|
black box in the lower left corner. (joncampbell123)
|
|
- Fixed Host key (F11, F12) handling in Codepage 932 (Japanese Shift-JIS).
|
|
(maron2000)
|
|
- Bumped ESFMu to ver 1.2.6 (maron2000)
|
|
- Fixed regression of adding a dot to CD labels when longer than 8 characters,
|
|
required for games such as Descent 2 CD installer (maron2000)
|
|
- Added Modeswitch toggle option (DieSkaarj)
|
|
- Fixed glitch of DBCS character at the end of a line (maron2000)
|
|
- Fixed dialog for showing error of loading language files (maron2000)
|
|
- Removed two and 226 duplicate Chinese character mappings from code
|
|
pages 950 and 951, respectively, ensuring more accurate Big5 and
|
|
Big5-UAO character mappings for Chinese IME users. (1abcd)
|
|
- Enabled changing drives mounted prior to switching to securemode (maron2000)
|
|
- Enabled some messages to be translated in the translation files (maron2000)
|
|
- Fixed fullscreen mode occasionally switched to windowed mode (maron2000)
|
|
- Updated French translation (FredBezies)
|
|
- Fixed blank screen when output=ttf on PC-98 mode (maron2000)
|
|
- Fixed crash when switching from fullscreen to window mode in TTF output
|
|
(maron2000)
|
|
- Fixed mounting zip files with white space in their names failed (maron2000)
|
|
- Fixed crash on reboot when output=ttf (maron2000)
|
|
- Fixed blank BIOS screen when output=ttf (maron2000)
|
|
- Fixed direct input of half-width kana (maron2000)
|
|
- Fixed PC-98 INT 1Fh, AH=90h source and destination address (drachen6jp)
|
|
- Fixed unnecessary trailing backslash in path name (maron2000)
|
|
- Fixed SSE MOVSS, MOVHPS, UNPCKLPS, UNPCKHPS, and PSADBW as well as
|
|
MMX PMULLW, PSUBUSB, and PSUBUSW, instruction implementations (fuel-pcbox)
|
|
|
|
2025.02.01
|
|
- Added new experimental dosbox.conf option that turns off the
|
|
A20 gate automatically if loading a COM/EXE file to a memory
|
|
location below 64KB. Option is off by default. This is intended
|
|
for the startup routines of programs that assume 8086 wraparound
|
|
to prevent them from crashing (joncampbell123).
|
|
- Bump tinyfiledialogs to v3.19.1 (maron2000)
|
|
- Fix VGA render-on-demand bug that causes all screen updates to
|
|
stop working if something changes video state without changing
|
|
any other attribute (width, height, frame rate, etc.). In
|
|
PC-98 mode this bug could be triggered by leaving the text
|
|
layer open while switching off the graphics layer when the
|
|
graphics layer is in 256-color PEGC mode. Fix for KOARMADA.EXE
|
|
when exiting back to the DOS prompt. (joncampbell123).
|
|
- In PC-98 mode, add I/O port 43Bh which guest applications can
|
|
then read to determine whether the 15MB "memory hole" is open.
|
|
The guest can use this bit to determine whether the PEGC 256-color
|
|
framebuffer is available at that location, or whether that is
|
|
just plain system memory. Added for homebrew PC-9821 project
|
|
KOARMADA.EXE which uses that bit to determine how to talk to
|
|
the framebuffer. (joncampbell123).
|
|
- Fix keyboard ISR in PC-98 mode to assume there is data waiting
|
|
from the keyboard I/O ports (then check the status for more).
|
|
The reason is that CWSDPMI.EXE for PC-98 has a keyboard ISR
|
|
of it's own that reads the scan code first (which clears the
|
|
"data available" bit) before then passing control to the
|
|
real-mode keyboard ISR. If our keyboard ISR first checks for
|
|
status in that case it will never see any keyboard data and
|
|
keyboard input will never register to the guest while running
|
|
under CWSDPMI (joncampbell123).
|
|
- Fix BIOS POST location (F000:FFF0) JMP instruction in PC-98 mode
|
|
so that the segment value of the JMP instruction matches a
|
|
specific value that the DJGPP C runtime checks for to detect
|
|
PC-98. (joncampbell123).
|
|
- Stop serving IBM PC-specific CWSDPMI.EXE in NEC PC-98 mode.
|
|
It happens to work unless any interrupt or exception happens.
|
|
Instead, provide an alternate common version of CWSDPMI.EXE
|
|
that was patched to support PC-98 machines when machine=pc98
|
|
(joncampbell123).
|
|
- Add support for ucrt64 builds (maron2000)
|
|
- DOS CTRL+C handling: Remove NULL vector check because built-in
|
|
COMMAND.COM long ago was fixed to provide a CTRL+C vector. Fix
|
|
code to use a different value for the C++ exception so that it
|
|
cannot be confused for any other common signal in the emulator
|
|
(joncampbell123).
|
|
- Remove DOSBox Integration Device VGA "self capture",
|
|
which was never used much anyway, as part of cleanup (joncampbell123).
|
|
- x86 paging: Remove unused non-"full TLB" code. (joncampbell123).
|
|
- Use mmap() to allocate system memory if available. This is
|
|
for future work that may involve something that requires
|
|
page-aligned allocation, such as KVM support in Linux (joncampbell123).
|
|
- VGA cleanup, organization (joncampbell123).
|
|
- Fixed regression of specifying DBCS fontx file was ignored. (maron2000)
|
|
- Fixed mistakes in adding double quotes to filenames to pass to IMGMOUNT
|
|
command, and syntax errors in showing a message dialog box. (maron2000)
|
|
- Fixed bug where bios memSize was not set when using TTF. (maitchison)
|
|
- Fixed CMS was always disabled regardless of config settings. (xrip)
|
|
- Switch off TTF mode in text modes not working in TTF mode. (maron2000)
|
|
- Gravis Ultrasound: Add dosbox.conf option that when enabled,
|
|
prints a warning to the log file every time the guest pokes
|
|
data into GUS RAM beyond the 1MB supported by the card,
|
|
in order to better identify errant Demoscene code and/or
|
|
any bugs in new tracker code currently in development. (joncampbell123)
|
|
- VGA: Fix buffer overrun that can occur with 4bpp planar
|
|
16-color modes if the guest writes beyond the first 2MB
|
|
of video RAM. The planar support code also copies the 3rd
|
|
bitplane to a font RAM array used in EGA/VGA text mode.
|
|
This font RAM array is only 512KB, therefore in planar
|
|
memory space, writes beyond (2MB/4) = 512KB cause corruption
|
|
of emulator state and possibly crashes. Solve the issue
|
|
therefore by not copying to font RAM beyond 512KB. (joncampbell123)
|
|
- VESA BIOS support: Fix VGA draw and bank switching code
|
|
to ensure that the guest cannot write outside video RAM
|
|
limits, and fix VBE bank switching code to consider 4bpp
|
|
planar SVGA modes properly. (joncampbell123)
|
|
- VESA BIOS support: Fix scan line and page calculations related
|
|
to 4bpp planar 16-color SVGA modes. (joncampbell123)
|
|
- VESA BIOS support: Fix 24bpp RGB bugs related to VBE calls
|
|
that control scan line length and display panning/scrolling.
|
|
Now VBETEST can test 24bpp panning without potentially giving
|
|
the user an epileptic seizure, and there are no more overlong
|
|
scanlines. (joncampbell123)
|
|
- VESA BIOS support: Correct mode information for SVGA text modes (joncampbell123)
|
|
- VESA BIOS support: Like real Pentium-era hardware, do not
|
|
list 4bpp planar 16-color modes as having a linear framebuffer.
|
|
Most SVGA cards only support planar VGA memory within the
|
|
standard VGA A0000-BFFFFh region and do not support the same
|
|
up in the linear framebuffer area. (joncampbell123)
|
|
- Save state support: Let the option to control whether or not
|
|
compression is applied, apply to the ZIP compression. If you
|
|
turn off compression, the ZIP file uses "store" mode instead,
|
|
otherwise compresses as normal. (joncampbell123)
|
|
- It turns out that for whatever reason, the savestate code was
|
|
compressing the state twice. Once by itself, and then again when
|
|
writing to the ZIP archive. Furthermore, storing the original
|
|
length at the end of the compressed data using size_t is a big
|
|
problem. Remove the extra compression/decompression and let the
|
|
ZIP file support do the compression. Save states from now on
|
|
will be marked as "No compression" for at least some backwards
|
|
compatibility. (joncampbell123)
|
|
- Volume label cleanup and fixes. Do not pad labels with white spaces. (maron2000)
|
|
- Some NEC PC-98 games that support MIDI through MPU-401 like to use
|
|
Roland GS-specific SysEx messages to control master volume and
|
|
reset the MIDI synth, instead of standard messages. These games
|
|
were known in DOSBox-X to have problems with MIDI stuck notes and
|
|
hanging notes for this reason. Added code to recognize Roland GS
|
|
reset SysEx and reissue it as standard MIDI reset, to resolve that.
|
|
Added code to Fluidsynth MIDI support to recognize the Roland GS
|
|
master volume SysEx commands and apply it to the output, which
|
|
allows these games to "fade out" the MIDI properly. PC-98 games
|
|
should no longer have hanging/stuck MIDI notes (joncampbell123).
|
|
- Fix VESA BIOS modelist mistake that marked all "high definition"
|
|
modes as modes to round bytes per line up to a power of 2 (joncampbell123)
|
|
- Fix memory size register determination for S3 Virge/VX (clbianco)
|
|
- Fixed a Y2038 bug by replacing Int32x32To64 with regular multiplication.
|
|
(CookiePLMonster)
|
|
- Fixed pasting Bell code (0x07) from clipboard was ignored. (maron2000)
|
|
- Fixed a segfault crash when pasting the content of clipboard is empty
|
|
or consists of invalid characters only. (maron2000)
|
|
- Fixed crash when trying to access MOUNTed empty physical CD/Floppy
|
|
drives. (maron2000)
|
|
|
|
2025.01.01
|
|
- Fix bug that prevented the Configuration GUI from saving to dosbox.conf
|
|
the last Windows 3.1 theme you applied using the dropdown menu.
|
|
(joncampbell123).
|
|
- Add option to apply vmemdelay to SVGA and linear framebuffer
|
|
modes (such as VESA BIOS modes), which reduces emulator performance
|
|
for those modes, but allows you to emulate slower SVGA cards.
|
|
Due to how some machine types are emulated, this option also enables
|
|
vmemdelay to affect the PC-98 linear framebuffer, Tandy & PCjr
|
|
video modes, as well as MDA/Hercules. (joncampbell123).
|
|
- Add workaround to CPU reset logic that allows it to work correctly
|
|
even with dynamic core. Previously, if the guest reset the system,
|
|
the emulator would crash with an error message about an uncaught
|
|
C++ exception because C++ exception handling doesn't work with
|
|
dynamically generated code. (joncampbell123).
|
|
- Correct CPUID family/model/brand values for cputype=pentium_iii.
|
|
Add CPUID level 2, which returns "processor configuration
|
|
descriptors", and return documented Pentium III values. Apparently
|
|
Windows XP really REALLY cares about these configuration
|
|
descriptors and will hang in-kernel in an infinite loop at bootup
|
|
without these apparently really important values. This change
|
|
makes it possible to boot Windows XP with Pentium III emulation.
|
|
(joncampbell123).
|
|
- Allow values of memsize to represent 4GB or more of RAM. Up to
|
|
1TB, if Pentium PSE extensions are enabled, the memalias setting
|
|
is 40, and "enable pse=pse40" in the conf file. Memalias maximum
|
|
is now 40, instead of 32. Add code to provide that memory above
|
|
the 4GB address mark when PSE is in use by the guest OS. Added
|
|
dosbox.conf option to specify a memory file. When specified, all
|
|
guest memory is memory-mapped from a file on disk, rather than
|
|
allocated from host memory or host swap file. To avoid consuming
|
|
too much RAM on the host, a memory file is REQUIRED to emulate
|
|
memory at or above 4GB. For best performance with the memory file,
|
|
make sure the filesystem you place it on supports sparse files,
|
|
including Linux ext4 and Windows NTFS. (joncampbell123).
|
|
- Fix EGA machine type to determine whether CGA RGBI or EGA RrGgBb
|
|
display is active by vsync polarity, instead of the length of
|
|
htotal. Several online references state that vsync is negative
|
|
for 350-line modes, including 350-line to an MDA monitor. This
|
|
also allows the "enhanced" EGA 320x200 modes in Rambo III to display
|
|
colors correctly. (joncampbell123).
|
|
- Dynamic x86 core: Reflect STI instruction to normal core so that
|
|
the 1-instruction delay is correctly emulated. This makes it
|
|
possible to run Windows XP or Server 2003 with dynamic core and
|
|
SYSENTER/SYSEXIT emulation without random BSODs (joncampbell123).
|
|
- Fix default code page. Instead of assuming 437 at all times, use
|
|
437 for all IBM PC compatible modes and 932 for PC-98 emulation.
|
|
(joncampbell123).
|
|
- Normal core: Fix STI emulation to enforce the 1-instruction delay
|
|
by forcing the normal core to execute another instruction right
|
|
away without providing any opportunity for interrupt processing.
|
|
This does not break Peret Em Heru, Keen games, and it seems to fix
|
|
the random BSOD issues with Windows XP and Windows Server 2003
|
|
when emulating a Pentium II that supports SYSENTER/SYSEXIT. I'm
|
|
not clear on why this fix prevents them from crashing, but there
|
|
you go. (joncampbell123).
|
|
- Keyboard emulation: Fix PCjr key delay to match IBM documentation
|
|
stating how long it takes to transmit one scan code, which is
|
|
obviously much slower than normal to accomodate the slow CPU and
|
|
the optical nature of the transmission. This is needed in order
|
|
for emulation to correctly send Fn+key combinations. At normal
|
|
key delay, the guest will miss scan codes and function keys will
|
|
not be reliable. (joncampbell123).
|
|
- Keyboard emulation: The 83-keyboard scan codes work differently on
|
|
the PCjr keyboard because half of them are only accessible by holding
|
|
the Fn key. The keyboard only sends the base key scan code and the Fn
|
|
key scan code and the BIOS is expected to convert that to the normal
|
|
83-key scan codes expected by DOS software. The problem is some games
|
|
like "Agent USA" for PCjr are written to directly handle scan codes
|
|
through IRQ 1 (the fact that PCjr handles keyboard via NMI and reflects
|
|
to INT 9 is ignored here). Fix this by sending scan codes that emulate
|
|
holding Fn and pressing the appropriate key. Agent USA expects the
|
|
user to press F1 by holding Fn and pressing "1". (joncampbell123).
|
|
- Revise VGA doublescan mode, vs bit 7 of the Max scanline register, to
|
|
correct how VGA doublescans 200-line modes. Revise EGA/VGA text code
|
|
to divide line by 2 in rendering to match double scanned scanlines,
|
|
so that the "graphical" text of "After the War" can render properly
|
|
for machine=vgaonly. (joncampbell123).
|
|
- INT 10: If machine=ega, check the EGA switches on INT 10h modeset.
|
|
Some games force the EGA BIOS to use CGA 200-line text modes by
|
|
modifying those bits and then setting the mode ("After the War").
|
|
(joncampbell123).
|
|
- INT 10: Fix "load font" functions to correctly recompute video
|
|
display end for machine=vgaonly and machine=ega. (joncampbell123).
|
|
- INT 10: Like any other 200-line 16-color graphics mode, 200-line
|
|
VGA text mode needs to program the AC and VGA palette using the
|
|
CGA RGBI-type palette, not the EGA 64-color type palette. (joncampbell123).
|
|
- CPU: Disallow clearing PE bit from LMSW by default, always.
|
|
You can still allow it through dosbox.conf. It turns out that
|
|
x86 CPUs never allowed you to clear it that way, even from the
|
|
Pentium up, even though Intel documentation beyond the 386 never
|
|
mentions it again. This fixes problems with DOS extenders and
|
|
VCPI, particularly DOS4GW which for some reason with VCPI likes
|
|
to try to clear the PE bit when switching to VM86 even though
|
|
it clearly understands it's not supposed to be able to clear it.
|
|
(joncampbell123).
|
|
- VCPI: It turns out the VCPI server GDT selectors are expected to
|
|
be 32-bit, because the protected mode VCPI entry point is expected
|
|
to be called as if 32-bit far pointer. Correct VCPI entry point
|
|
to return using RETF, not IRETD, which solves crashing issues with
|
|
DOS extenders. For the first time, DOS extenders are working with
|
|
the DOSBox-X built-in implementation of VCPI and most DOS games
|
|
run fine now with it. (joncampbell123).
|
|
- VCPI: Add code to INT 2Fh handler regarding Windows startup/shutdown
|
|
messages to fill in DS:SI. If EMM386 and VCPI emulation is active
|
|
and running the DOS machine in virtual 8086 mode, give Windows the
|
|
proper callback procedure to allow Windows to switch off VCPI vm86
|
|
mode on startup and turn it back on during shutdown. (joncampbell123).
|
|
- BIOS "POST" screen: Change BIOS logo to PNG format. To avoid having
|
|
to render a PNG in roughly 10 different video modes, add code to
|
|
VGA draw code to allow a BIOS logo "overlay" to be rendered
|
|
independent of the video mode. Depending on machine type load one
|
|
of four PNG files from disk or from inside DOSBox-X itself.
|
|
PNG requirements: 224x224 or smaller, bit depth of 8bpp or less,
|
|
color palette (not grayscale), no alpha channel, and must not be
|
|
interlaced. For best compatibility, use less than 64 colors, or
|
|
perhaps just 16 colors. Much like the Windows 95 LOGO.SYS, you can
|
|
change the logo to your taste by placing specifically named PNG
|
|
files in the same directory as your dosbox.conf or current working
|
|
directory. Have fun. Note that this addition requires that you
|
|
compile DOSBox-X with libpng enabled. (joncampbell123).
|
|
- Added dosbox.conf option to specify BIOS logo file. (joncampbell123).
|
|
- Added dosbox.conf option to specify a text message, up to 3 lines,
|
|
at the bottom of the screen during BIOS POST screen. (joncampbell123).
|
|
- Fix color glitches in EGA, Tandy, Hercules mode on macOS SDL2 build
|
|
(output=opengl)(maron2000)
|
|
- Add int33 mickey threshold option (Fixes Ultima Underworld) (jpernst)
|
|
- Fix configure.ac (disable-screenshot option) (maron2000)
|
|
- Fixed codepage switching when loading language file in Traditional
|
|
Chinese (maron2000)
|
|
- Fixed display of some Chinese characters (Traditional Chinese)(maron2000)
|
|
- Fixed garbled text and menubar on reset (maron2000)
|
|
- Fixed codepage switching when a language file was loaded (maron2000)
|
|
- sdlmain: Fixed crashing if no config files are found. (skitt)
|
|
|
|
2024.12.04
|
|
- Arrange memory device allocation so that it is possible to allocate
|
|
up to about 3900MB of memory instead of 3500MB. (joncampbell123).
|
|
- Fix S3 LFB PCI base alignment error if system memory pushes it
|
|
to a higher address (joncampbell123).
|
|
- Fix EGA 640x350 4-color mode (when EGA memory size is 64KB) to
|
|
display correctly. Prior to this fix, 640x350 4-color only worked
|
|
properly if the INT 10h Video Parameter Table was enabled. (joncampbell123).
|
|
- Fix S3 VGA memory size reported through register CR36 to cap at 4MB
|
|
and set the value correctly. This fixes a known issue where setting
|
|
vmemsize to 8MB caused Windows 98 to report memory size as 2.5MB. (joncampbell123).
|
|
- Fixed a problem when VZ Editor is resident in PC-98 mode. (nanshiki).
|
|
- INT 10: SVGA mode 0x6A does not exist on plain VGA hardware. (joncampbell123).
|
|
- INT 10: Fix mode 0x6A (800x600 4-color SVGA) to use a correct dot
|
|
clock so that the refresh rate is >= 60Hz instead of 37Hz, and make
|
|
sure mode 0x6A is a 100% clone of VESA BIOS MODE 0x102. (joncampbell123).
|
|
- Fix MMX/SSE instruction decoding, correct some mistakes in MMX emulation. (joncampbell123).
|
|
- IMGMAKE: Add -partofs option to allow control of where the partition
|
|
begins in the image (joncampbell123).
|
|
- IMGMAKE: Add -align option so that the FAT filesystem can be arranged
|
|
for more optimal I/O on devices with larger sectors, such as modern
|
|
4096-byte/sector drives. (joncampbell123).
|
|
- IMGMAKE: Add -label option so that the generated FAT filesystem has the
|
|
specified volume label. (joncampbell123).
|
|
- MDA emulation: Fix non-blink attributes 0xF0 and 0xF8 to correctly render
|
|
bright green background. (joncampbell123).
|
|
- Fixed crash when a CD image was loaded to an "empty" drive (maron2000)
|
|
- Log loaded .conf file (maron2000)
|
|
- Supress redundant screen reports in log (maron2000)
|
|
- Fixed mouse capture locking by middle button (maron2000)
|
|
- Fixed toggling the menu option "Autolock mouse" did nothing (maron2000)
|
|
- Fixed build failure with libc++ 19 (DimitryAndric)
|
|
- Fixed fullscreen mode not responding when launched in TTF mode
|
|
in Windows (maron2000)
|
|
- Fixed crashes when changing floppies mounted by drive numbers on
|
|
a booted guest OS (maron2000)
|
|
- Fixed launching host programs with white spaces in path (Windows)
|
|
(maron2000)
|
|
- Convert paths from relative to absolute when launching host programs
|
|
in a mounted drive (Windows) (maron2000)
|
|
- Added an option not to pause after host program execution is
|
|
completed (maron2000)
|
|
- Fixed corrupted display when loading language files at launch
|
|
(maron2000)
|
|
- Fixed Z Drive path expansion to be case insensitive (maron2000)
|
|
|
|
2024.10.01
|
|
- Allow the ".inst" extension for CUE sheets. (Allofich)
|
|
- Add SET /FIRST, a DOSBox-X extension, that takes the specified
|
|
variable if it exists and moves it to the front of the environment
|
|
block. (joncampbell123).
|
|
- SET command processing has been cleaned up and streamlined.
|
|
Added /ERASE command line switch to clear the environment
|
|
block (DOSBox-X extension). (joncampbell123).
|
|
- VESA BIOS: Add new option to adjust reported linear framebuffer
|
|
address by a specific number of pixels. This is needed by
|
|
"Out of Control" by Contract which for whatever reason,
|
|
will always draw to the LFB base minus 128 bytes. This option
|
|
makes it possible to correct the demo graphics. (joncampbell123).
|
|
- Gravis Ultrasound: Officially, registers 0x0-0xF, the voice
|
|
control registers, are documented to have a 0x0-0xF write and
|
|
0x80-0x8F read alias. Unofficially, according to the behavior
|
|
of 1997 demo "Out of Control" by Contract, all GUS registers
|
|
have a N and (N+0x80) alias, or at least register 0x4C, and
|
|
you can read them back from either index. Or else the demo
|
|
fails to detect the GUS. So add this alias, but only if
|
|
enabled in dosbox.conf. Real hardware testing is required to
|
|
know if the actual GUS behaves this way and which versions.
|
|
(joncampbell123).
|
|
- Move the INT 3 default vector to well within the initial 16
|
|
bytes of the DOS kernel, away from the List of Lists and SFT.
|
|
The previous placement caused certain versions of Windows 3.2
|
|
(yes, the Chinese version) to crash on startup. (joncampbell123).
|
|
- When using the running program to name screenshots and such,
|
|
filter out all invalid characters so that Windows users can
|
|
take snapshots even if junk characters are there (joncampbell123).
|
|
- DOS FAT driver: If INT 13h reports disk change, adapt floppy
|
|
disk geometry to new disk image according to media byte. This
|
|
allows DS_BLISS to present it's 720K fake floppy even if the
|
|
user initially mounted a 1.44MB floppy to drive A: (joncampbell123).
|
|
- INT 10 mode list: Add "pitch" parameter. If nonzero, the value
|
|
(in pixels) is how to program the pixels per scanline when
|
|
setting the mode.
|
|
- VESAMOED: Add -pitch option to control the pitch (pixels per
|
|
scanline). The intent is to work around DOS games that assume
|
|
nonstandard pixels per scanline by allowing the VESA BIOS mode
|
|
to use a different one. For example, Line Wars II has an S3
|
|
acceleration mode that uses 800x600, but for whatever reason,
|
|
assumes the video mode is 1024 pixels per scanline, and will
|
|
render garbled graphics if that is not the case. (joncampbell123).
|
|
- S3 emulation: Follow S3 Trio64 documentation and mask the Linear
|
|
Window Position bits according to the size of the memory. You
|
|
can only place it on a multiple of the memory size. This silences
|
|
warnings caused by Line Wars II which appears to modify only the
|
|
upper byte but not the lower when modifying this register, which
|
|
then leaves 0xA0 in the lower half. That lower half would be
|
|
ignored for 1MB or larger video memory sizes. (joncampbell123).
|
|
- S3 XGA emulation: Add XGA acceleration for 4bpp packed 16-color
|
|
SVGA modes. A CAD package has S3 support drivers that use the
|
|
16-color 4bpp packed modes and expects XGA acceleration to work.
|
|
(joncampbell123).
|
|
- Add "-o int13" option to IMGMOUNT to direct the FAT driver to do
|
|
all disk I/O through INT 13h instead of directly. This is intended
|
|
for certain demoscene productions that apparently like to make
|
|
files appear out of thin air by intercepting INT 13h floppy disk
|
|
I/O and then asking MS-DOS to run something from it. Hack for
|
|
"DS_BLISS" demo. (joncampbell123).
|
|
- Fixed crash when a language file is loaded on a Windows host with
|
|
US keyboard (maron2000)
|
|
- Added Added sharp-bilinear Direct3D shader (RibShark)
|
|
- Pass output dimensions to Direct3D shaders (RibShark)
|
|
- Fixed BPB of floppy images made by IMGMAKE command (maron2000)
|
|
- Fixed timestamp of volume label changed by LABEL command (maron2000)
|
|
- Fixed pathname issues when mounting differencial VHD images (maxpat78)
|
|
- Corrected relative/absolute track offset in subchannel data for
|
|
CD-ROM images (RibShark).
|
|
- Fixed particular dead keys were not working to input characters
|
|
with diacritics (maron2000).
|
|
- Enabled "Edit and Continue" option for debug builds of Visual Studio
|
|
Intel builds (aybe).
|
|
- Updated libchdr to latest (treloret).
|
|
- Fixed icon in Gnome dock bar (FredBezies).
|
|
- add option "[dos] automount drive directories" for Windows builds,
|
|
this will mount existing drive directories from C to Y drive (aybe).
|
|
- fix off-center and off-screen window after entering the
|
|
configuration tool while using TTF output mode (aybe).
|
|
- add menu item for centering window "Video/Center window" (aybe).
|
|
- Fixed update-version-number script to patch all *.iss files, not
|
|
just the specific one it did before, to ensure future releases have
|
|
correct version numbers. (joncampbell123).
|
|
- Updated Nuked-OPL3 code to nukeykt/Nuked-OPL3@cfedb09 (StevenSYS)
|
|
- Updated SDL2 library to 2.30.4 (maron2000)
|
|
- Fixed TTF mode didn't change to graphic mode when machine = Hercules
|
|
(maron2000)
|
|
- Configuration tool: (aybe)
|
|
- more Windows 3.1 look'n'feel (themes w/ host dark mode detection)
|
|
- enhance main window layout, it is now visible in its entirety
|
|
- fix layout issues, off by one in rectangle drawing functions
|
|
- fix 'list iterators incompatible' when pressing the Tab key
|
|
- properties/help: sorted alphabetically, mouse wheel scrollable
|
|
- remove few rendundant labels, adjust names of some others
|
|
- retain 'show advanced options' state throughout session
|
|
- SVN r4483: Fix compilation in Visual Studio 2008 (Allofich)
|
|
- DOSBox Staging: Decouple CMS and OPL emulations (Allofich)
|
|
- Fixed reading NEC specific character font data.(nanshiki)
|
|
|
|
2024.07.01
|
|
- Correct Hercules InColor memory emulation. Read and write planar
|
|
behavior was incorrect due to a misunderstanding of available
|
|
documentation. (joncampbell123).
|
|
- Hercules/MDA and InColor integration broke the Hercules blend mode
|
|
render, fix the render so that adjacent lit pixels are brighter
|
|
again. (joncampbell123).
|
|
- Fix "VRD" debugger command bug that didn't properly render out the
|
|
rest of the VGA display frame. (joncampbell123).
|
|
- Fixed debugger mapper shortcut bug where entering the debugger
|
|
completes the 1 ms "tick" early, effectively jumping emulator time
|
|
up to start of the next ms. This might explain the mysterious cases
|
|
where a program always fails to work unless you are debugging it.
|
|
(joncampbell123).
|
|
- Added debugger command "VRT" which resumes running the guest until
|
|
vertical retrace. Added for programmers who wish to write something
|
|
to screen and then see it show up. (joncampbell123).
|
|
- Fix IMGMOUNT, when mounting FAT disk images, to provide the DPB the
|
|
actual media id byte instead of assuming 0xF8 or 0xF0. INT AH=1Ch
|
|
should now report the proper media id byte for any floppy format,
|
|
instead of always reporting 0xF0 (1.44MB floppy). (joncampbell123).
|
|
- Allow BOOT to load and execute the boot sector of a guest OS even if
|
|
memory size is too small (in IBM PC emulation, less than 32KB of RAM).
|
|
MS-DOS 1.x of course will crash if you try that because of the
|
|
assumptions made in the boot sector, but it's there if you are feeling
|
|
adventurous or are in an experimental mood (joncampbell123).
|
|
- If memsize is 4KB, place the COMMAND.COM PSP segment in the private
|
|
UMB area instead of the normal MCB allocation chain (joncampbell123).
|
|
- DOS kernel will always allocate kernel memory from private UMB area
|
|
if memory size < 16KB, in order to continue to work (joncampbell123).
|
|
- DOS kernel will allocate from segment 0x60 instead of 0x70 if the
|
|
memory size is less than 64KB. (joncampbell123).
|
|
- files= and fcbs= default value now automatically scales according to
|
|
available conventional memory (640KB or lower) in order for memsize 64KB
|
|
or lower to free up or memory and run properly. (joncampbell123).
|
|
- dosbox.conf files= and fcbs= settings have been changed to allow
|
|
"0" as a value to mean choose a reasonable default. (joncampbell123).
|
|
- Fix bug where DOS kernel crashes on startup because of the initial
|
|
stack pointer set by BIOS startup that points past available memory
|
|
when memsize is 64KB or less. (joncampbell123).
|
|
- If minimum mcb free is not set and memory size is less than 256KB,
|
|
automatically set minimum mcb free to minimum mcb segment, in order
|
|
to release more available memory within the limited space (joncampbell123).
|
|
- Do not enable XMS emulation if system memory size is 1MB or less. (joncampbell123)
|
|
- DOS drive cache: When listing a directory, defer the filename sort until
|
|
the entire list is built. This improves directory listing performance
|
|
in directories with many files. (joncampbell123).
|
|
- INT 10h, if instructed, will now use the video parameter table to set
|
|
standard VGA modes instead of internal logic. (joncampbell123).
|
|
- Removed erroneous VGA display compensation code for certain EGA/VGA
|
|
registers that really only caused incorrect display of the EGA 640x350
|
|
4-color mode. (joncampbell123).
|
|
- Corrected EGA and VGA video parameter tables by copying the parameters
|
|
from actual IBM EGA VGA ROM BIOS images. They should be 100% correct
|
|
now. (joncampbell123).
|
|
- Corrected register values and video rendering of machine=EGA 640x350
|
|
mode when emulating 64KB of RAM. This should fix rendering and display
|
|
issues with EGA 640x350 4-color emulation. Also corrected INT 10h
|
|
character printing functions to filter the color attribute value for
|
|
640x350 4-color mode so the DOS prompt does not have alternating
|
|
colors, in the same manner the real IBM EGA BIOS does. (joncampbell123).
|
|
- Fix BIOS screen to use CGA 640x200 2-color mode if machine=ega with
|
|
less than 128KB of video ram, or machine=ega200, instead of showing
|
|
a garbled 640x350 display. (joncampbell123).
|
|
- Fix memory buffer overrun with machine=ega that can occur with
|
|
640x350 mode and less than 256KB of video RAM. (joncampbell123).
|
|
- The DOSBox clipboard API (via INT 2Fh) is now disabled by default, because
|
|
some programs use it's presence to detect whether they are running under
|
|
Windows. This fixes a program where Norton Desktop 1.0 does not use it's
|
|
"graphical" text UI elements because it thinks it's running within a
|
|
Windows DOS box. (joncampbell123).
|
|
- Remove unnecessary and useless Win32 fcntl() on some memory typecast
|
|
to int which is causing a segfault whenever a ZIP file is mounted
|
|
as a drive with an overlay filesystem atop it. (joncampbell123)
|
|
- Update caption control feature to use equivalent APIs on Mac OS. (joncampbell123)
|
|
- Add dosbox.conf and menu option to control whether the DOSBox-X window
|
|
can be seen in screen captures in Windows 7/8/10/11. Windows 11 "Recall"
|
|
is very concerning and users might not want their DOS gaming to be
|
|
part of it's memory. (joncampbell123).
|
|
- Correct EGA switch readback from port 3C2h to reflect a value of 0x8
|
|
instead of 0x9 when machine=ega200 (joncampbell123).
|
|
- Correct BIOS data area value that holds the "EGA switches" to reflect
|
|
200-line EGA "emulation" when machine=ega200. Value 0x08 instead of 0x09
|
|
(joncampbell123).
|
|
- Correct mode parameters for CGA 640x200 2-color mode when using
|
|
machine=ega200 so that it displays correctly. (joncampbell123)
|
|
- DOS kernel: Remove fixed hacks for SFT and dynamically allocate the
|
|
second SFT table for the last N - 5 file handles. Add code to zero
|
|
SFT table memory to ensure that random data doesn't cause issues.
|
|
Windows 3.1 is still perfectly fine with it, so the SFT table update
|
|
and cleanup is complete. (joncampbell123).
|
|
- DOS kernel: Move the magic "CON" strings into the first SFT and
|
|
mimic the 5 default open file handles that every DOS process starts
|
|
with: CON CON CON AUX PRN. Windows 3.1 is still happy with it, which
|
|
is good. (joncampbell123).
|
|
- DOS kernel: Put the CON driver somewhere else because allowing it
|
|
to overlap the SFT is messy. Fix SFT generation to match the way that
|
|
MS-DOS 5.0 does it where the first table is always 5 entries and the
|
|
second table is always N - 5 entries. Cleanup the DOS memory allocation
|
|
a bit. So far, Windows 3.1 doesn't have a problem with it. (joncampbell123).
|
|
- DOS kernel: Interrupt handler IRET was accidentally placed within
|
|
the SFT table, move it up to resolve the conflict. (joncampbell123).
|
|
- Local DOS drive support: On Windows, if the guest is attempting to
|
|
create a hidden file, make sure to call the right APIs to create a
|
|
hidden file on the host. Not only is this needed to create a hidden
|
|
file, but if the guest tries to create a hidden file and the file
|
|
already exists as a hidden file, the file creation needs to succeed.
|
|
Fix for "Facts of Life" by Witan because the demo creates a hidden
|
|
WITAN.92 every time it is run (joncampbell123).
|
|
- XMS: Add dosbox.conf option to XMS driver to switch on flat real mode
|
|
when a) the XMS driver initializes and/or b) when the XMS driver is
|
|
called on to move/copy memory. (joncampbell123).
|
|
- INT 21h: If a DOS program frees a memory block, and then resizes the
|
|
freed memory block, reassign ownership of that block to the program
|
|
as if allocated. This is apparently canonical MS-DOS behavior. Added
|
|
dosbox.conf option to control whether resizing a freed block silently
|
|
assigns ownership (default setting) or whether it returns an error.
|
|
DOS resize memory function for the most part DID assign ownership but
|
|
not in the case where the size of the MCB was exactly the size requested
|
|
to resize to. (joncampbell123).
|
|
- Sound Blaster: Fix bug where "force autoinit" prevented Sound Blaster
|
|
playback from working at all, fix for "Jump" by Public NMI (joncampbell123).
|
|
- Debugger UI now shows PIC_FullIndex() and whether or not the CPU is
|
|
in the HLT state. Single stepping does not do anything when the CPU is
|
|
in the HLT state, so at least let the user know (joncampbell123).
|
|
- Keyboard controller (IBM PC): Cancel the IRQ signal upon reading I/O
|
|
port 60h. The reason for the IRQ, the pending data, was just read, so
|
|
now there is no point in keeping the IRQ signal up. This fixes Escape
|
|
key problems with "Cronologia" by Cascada that causes part 3 "Time"
|
|
to immediately exit and continue to the credits. Part 1 and 2 are not
|
|
affected by the pending IRQ because those parts mask IRQ 1 and poll
|
|
the keyboard controller directly. (joncampbell123).
|
|
- Fix complexity test code to determine when Odd/Even mode is enabled
|
|
in all cases and to resolve a problem with garbled scrolling text
|
|
in the "Vectorballs" part of "Unreal" (joncampbell123).
|
|
- M_EGA display mode now applies CRTC BYTE/WORD/DWORD shift to display
|
|
start address, same as M_VGA, to ensure correct display when demos
|
|
and games set the CRTC to non-BYTE modes. This fixes page flipping
|
|
flickering during the "Vectorballs" part of "Unreal" by Future Crew.
|
|
(joncampbell123).
|
|
- Update Configuration GUI to use radio buttons for selection, meaning the
|
|
circular buttons that resemble those in Windows, not the check boxes.
|
|
The GUI toolkit had them all along, the Configuration GUI was using
|
|
check boxes for that for some reason. (joncampbell123).
|
|
- Linux ALSA MIDI output: Any attempt to send RESET or other Fx commands
|
|
to the ALSA library causes a segfault in the ALSA library. Revise the
|
|
code to send without crashing. (joncampbell123).
|
|
- Linux ALSA MIDI output: Add code to list and enumerate the MIDI sequencer
|
|
devices available so the user can use it to determine what magic numbers
|
|
to put into the midiconfig setting, especially if the user wants to send
|
|
MIDI to an external synthesizer. (joncampbell123).
|
|
- Suddenly Mac OS 14 and XCode consider the "id" and "int" datatypes
|
|
different and assigning or returning one to the other is now a compiler
|
|
error. Add typecast to enable compile on latest XCode. (joncampbell123)
|
|
- INT 33 mouse emulation: Add dosbox.conf options to force a specific
|
|
coordinate system for the DOS game with respect to host/guest mouse
|
|
cursor integration (getting the DOS cursor to match the host cursor
|
|
within the window). Add dosbox.conf option where additional adjustments
|
|
are available. The maximum x/y and max-adjust options are ideal for
|
|
Lemmings 2, which uses INT 33h in a way that confuses the automatic
|
|
range detection code used to synchronize cursor position and therefore
|
|
needs this option, and the first Lemmings as well. (joncampbell123).
|
|
- PIT timer: Fix restart_counter(), the delay computation was completely
|
|
backwards. This is particularly important where it concerns programs
|
|
that use the PIT to detect the rate at which the Pentium time stamp
|
|
(RDTSC) advances as the previous code caused wildly inaccurate measurements
|
|
and bad timing (GRUB bootloader, the Microsoft CD-ROM boot "press a key
|
|
to boot from CD" message). (joncampbell123).
|
|
- IDE: Make sure to set feature/error register to 0x01 when the guest
|
|
soft or hard resets the IDE devices through the controller. The Linux
|
|
kernel uses a soft/hard reset on startup to detect PATA devices and
|
|
if it does not see the correct value after reset, it will either ignore
|
|
the device or complain about diagnostic failure and cautiously talk to
|
|
the primary IDE hard drive while ignoring any ATAPI CD-ROM emulation.
|
|
This allows the Linux kernel to boot and see the CD-ROM drive. (joncampbell123).
|
|
- IDE: Do not clear registers unnecessarily when finishing IDENTIFY DEVICE.
|
|
- The BOOT command now supports El Torito "no emulation" booting from a
|
|
CD-ROM drive, which is needed to boot install CDs for Windows XP, Linux,
|
|
etc. or Linux-based live CDs. Note that at this time, BOOT only supports
|
|
"no emulation" and IMGMOUNT only supports "floppy emulation" (joncampbell123).
|
|
- INT 13h extensions: If a read was interrupted by an error, update the
|
|
block transfer count so the caller knows (joncampbell123).
|
|
- DOS: Move version parsing farther up, so that the initial DOS version
|
|
can affect memory layout and tables as needed. (joncampbell123)
|
|
- DOS DPB and FAT driver: If the DOS version is 4.0 or higher, write a
|
|
DOS 4.0+ compatible DPB structure (as DOSBox-X already has been doing
|
|
since forking from DOSBox). If the DOS version is lower than 4.0,
|
|
write an MS-DOS 3.30 compatible DPB structure. This allows Popful Mail
|
|
to run without getting into an infinite loop scanning the DPB linked list
|
|
when [dos] section ver=3 30 (MS-DOS 3.30), aside from the fact that the
|
|
game will also run without this change if you set ver=4 0 since the game
|
|
appears to be aware of the change in structure between MS-DOS 3.30 and
|
|
MS-DOS 4.0, though for whatever reason the game refuses to run on
|
|
MS-DOS 5.0 or higher. (joncampbell123).
|
|
- IDE: Silently ignore SET FEATURES command 0x03. Any negative response
|
|
to feature 0x03 causes the Linux kernel to reject the IDE device.
|
|
(joncampbell123)
|
|
- Add support for PIT timer 0 mode 4. Linux kernel 6.1.29 compiled in
|
|
"tickless" mode uses mode 4 instead of mode 0 as a delay timeout. Prior
|
|
to this fix, the Linux kernel would switch into tickless mode and then
|
|
nothing would happen because IRQ 0 would never fire again. See also Linux
|
|
kernel source code, drivers/clocksource/i8253.c function pit_set_oneshot()
|
|
to see what I mean. (joncampbell123)
|
|
- Windows 95 S3 driver behavior suggests that S3 16-color VESA modes
|
|
0x202 to 0x208 are NOT planar modes, but packed modes. Change modes to
|
|
M_PACKED4 and update modelist building to allow that range even if the
|
|
dosbox.conf is configured not to list 4bpp packed VESA modes. This fixes
|
|
Windows 95 S3 driver 16-color modes 800x600, 1024x768, 1280x1024.
|
|
Noted: Windows 95 is the last version of Windows to support 4bpp packed.
|
|
Windows 98 and higher refuses to support it and the Display settings
|
|
will not allow you to select any 16-color mode other than the stock
|
|
VGA 640x480 16-color planar mode. (joncampbell123)
|
|
- Add --load-seg option to BOOT in case any PC-98 game boot floppy expects
|
|
to be loaded somewhere other than the default. PC-98 game "Private School
|
|
Adventure" will crash if loaded to segment 0x1FC0 but runs fine if booted
|
|
with --load-seg 0x0FC0 instead. (joncampbell123)
|
|
- Add dosbox.conf option to direct the EMS page frame segment, in a limited
|
|
fashion, though only effective for PC-98 mode. PC-98 segment is still
|
|
0xD000 by default, but apparently there are games that require the EMS
|
|
page frame to exist at 0xC000. For these games, you can now set under the
|
|
[dos] section "ems frame=C000". (joncampbell123)
|
|
- Restored libslirp support for 32-bit MinGW CI builds which was temporarily
|
|
dropped in 2024.03.01 release. Also since MinGW plans to gradually phase
|
|
out 32-bit support, added code to manually build on our own. (maron2000)
|
|
- Fixed build errors of Windows installers. Windows Vista support for standard
|
|
installer is dropped to fix this issue. Vista users can either use the XP
|
|
installer or portable builds instead. (maron2000)
|
|
- Fixed compile error of speexdsp/fftwrap.c on gcc-14 (maron2000)
|
|
- PC-98: Fixed US keyboard support for tilde (Shift+grave) key (maron2000)
|
|
- Fixed DOSBox-X freezed when codepages regarding EGA18.CPX were set (maron2000)
|
|
- Fixed CUE sheets of GOG games were rejected. Still requires "-t iso" or
|
|
"-t cdrom" option for uncommon file extensions except ".CUE". (maron2000)
|
|
- Added loongarch64 support (donmor)
|
|
- Disable FP exceptions in a portable way (xry111, donmor)
|
|
- Added "*.ccd" in file open dialog (maron2000)
|
|
- Added CI builds for ARM mac (maron2000)
|
|
- Bump tinyfiledialogs to ver 3.17.4 (maron2000)
|
|
- Obtain geometry info of non-standard sized floppy from BPB (maron2000)
|
|
- PC-98: Implemented int 18h ah=47h,48h,49h (nanshiki)
|
|
- Added breakpoint type "Freeze memory" (Enmet)
|
|
- Implemented seeking in MSCDEX
|
|
(Imported from dosbox-staging/dosbox-staging#3516 authored by weirddan455)
|
|
- Fixed built-in COPY command failed to obtain free space when reported DOS
|
|
version is set to 7.1 (maron2000)
|
|
- Fixed some file extensions in the filter list were ignored in the file open
|
|
dialogs (maron2000)
|
|
- Fixed mounting a non-FAT VHD image (maxpat78)
|
|
- Fixed VHD geometry detection (maxpat78)
|
|
- Fixed issue that IMGSWAP command did not work for CD drives. (maron2000)
|
|
- Fixed loaded language file unexpectedly changes on launch. (maron2000)
|
|
- Fixed reported size issues in builtin DIR command (maxpat78)
|
|
- Added missing language file in Windows standard & XP installers. (maron2000)
|
|
- Fixed a bug in IME character display on macOS Sonoma (nanshiki)
|
|
- Fixed build errors of SDL1 code when built with gcc-14 (maron2000)
|
|
- Fixed static link errors of libslirp >= 4.8.0 (maron2000)
|
|
- PC-98: Added MEM command for PC-98 mode (maron2000)
|
|
|
|
2024.03.01
|
|
- If an empty CD-ROM drive is attached to IDE emulation, return "Medium Not
|
|
Present" instead of a read error, when asked to read. (joncampbell123).
|
|
- Add "empty drive" CD-ROM image type "IMGMOUNT e: empty -t iso" as a way
|
|
to emulate an empty CD-ROM drive with no disc in the drive. (joncampbell123).
|
|
- Add "empty drive" floppy image type "IMGMOUNT 0 empty -t floppy -fs none"
|
|
as a way to emulate a floppy drive with no disk in the drive. (joncampbell123).
|
|
- Video debug overlay: Fix mouse integration misalignment when the video
|
|
debug overlay is enabled while Windows is running (joncampbell123).
|
|
- Video debug overlay: Fix segfault when enabled with 15/16bpp SVGA modes.
|
|
(joncampbell123).
|
|
- Video debug overlay: Fix bug where video debug failed to appear in SVGA
|
|
15/16/24/32bpp display modes because of a design where the VGA drawing
|
|
code points directly at video RAM except when drawing the hardware cursor.
|
|
One symptom was that the video debug info on the side failed to appear at
|
|
all, unless running in Windows and only within the vertical range of the
|
|
mouse cursor. (joncampbell123).
|
|
- Video debug overlay: Do not bother showing the Attribute Controller palette
|
|
in 15/16/24/32bpp SVGA modes because it doesn't matter there and is not
|
|
involved with how anything is displayed. (joncampbell123).
|
|
- Video debug overlay: Fix debug info text to appear for 15/16/24/32bpp SVGA
|
|
modes. (joncampbell123).
|
|
- BOOT --bios no longer triggers a system reset VM event, but instead just
|
|
jumps to the new BIOS image after DOS kernel shutdown. This is needed for
|
|
hardware and resources to stay as they were when running the BIOS i.e.
|
|
keeping any IDE devices configured within the DOS kernel intact so that the
|
|
BIOS can find and use them. Prior to this change, all hardware was fully
|
|
reset and unmapped prior to running the BIOS which made IDE emulation
|
|
unusable with BIOS images. (joncampbell123).
|
|
- BOOT --bios no longer immediately loads the new BIOS into memory, but instead
|
|
loads and stores the image to a temporary buffer. The ROM image does not
|
|
actually get mapped in until the DOS kernel and everything else has had a
|
|
chance to shut down fully. (joncampbell123).
|
|
- Fix BOOT --bios not to try to load PC-98 ITF firmware unless actually running
|
|
in PC-98 mode (joncampbell123).
|
|
- Write PC-98 keyboard translation table (non-shifted) in ROM BIOS and set the
|
|
keyboard translation table pointer in the BIOS data area for "Nut Berry".
|
|
This Nut Berry game also assumes lookup and translation tables exist at
|
|
specific locations in the ROM BIOS, so put those tables there. The shift
|
|
state table in BIOS has also been added, though at the moment, the tables
|
|
are incomplete. (joncampbell123).
|
|
- MegaZeux from the MS-DOS days had a 256-color tweakmode that worked on some
|
|
popular SVGA chipsets of its time though on others it does nothing but halve
|
|
the display resolution of text mode. The basic idea is that it makes the VGA
|
|
card latch two 4-bit outputs of the VGA text mode into one 8-bit value, thus,
|
|
256 colors possible. Add support for this. However I am not sure whether this
|
|
tweakmode is supported by S3 chipsets, so it is OFF by default and you will
|
|
need to add "enable supermegazeux tweakmode=true" to the [video] section of
|
|
your dosbox.conf to enable it. (joncampbell123).
|
|
- Undo the "no partition offset" change. DOOM II for PC-9821 requires it to work
|
|
else the page flipping fails and sprites and rendering flickers as you play.
|
|
(joncampbell123).
|
|
- Allow text layer to appear in PC-98 256-color mode. Even though I was unable
|
|
to enable it on real hardware, "Shamat, The Holy Circlet" requires having
|
|
the text layer visible on top of 640x400 256-color mode for the introductory
|
|
scrolling text to appear on screen. So for now, just allow it. (joncampbell123).
|
|
- The reason some PC-9821 games have been giving bad PITCH values (double the
|
|
correct value) to the GDC in 256-color mode has been determined. They read
|
|
port 9A0h to determine if the GDC is running at 5MHz or not. That port 9A0h
|
|
index was not implemented and therefore gave the game the impression it was
|
|
running at 5MHz when it was not, therefore the doubled PITCH value. This fix
|
|
corrects the squeezed 256-color mode and allows it to appear properly.
|
|
(joncampbell123).
|
|
- IMGMOUNT: If the file extension is HDI, assume a hard disk image even if the
|
|
image file is small enough to qualify as a floppy disk image. There is an
|
|
HDI image of PC-98 game "D.O. Doki Doki Disk 8" that is 2.2MB, small enough
|
|
to be mistaken as a 2.88MB IBM PC floppy disk and therefore fail to mount
|
|
as an HDI image, this change fixes it. (joncampbell123, maron2000).
|
|
- Emulate PEGC PC-98 linear framebuffer at both 0xF00000-0xF7FFFF (at 15MB
|
|
memory mark) but also make it appear at top of memory below BIOS (normally
|
|
at 0xFFF00000-0xFFF7FFFF). Some 32-bit PC-9821 CD-ROM MS-DOS games assume
|
|
the top of memory alias and will fail to show anything on screen without
|
|
it (unless, alternatively, the memalias setting is set to emulate 24 address
|
|
lines like a 386SX). Now to figure out why these same games are programming
|
|
a GDC PITCH value that's double what it should be... (joncampbell123).
|
|
- PC-98 GDC scan offset no longer pays attention to scan offset of data
|
|
partition in 256-color mode. Required to help fix broken 256-color graphics
|
|
for some PC-98 CD-ROM games. (joncampbell123).
|
|
- Refuse to enable ISA 15MB-16MB memory hole if memalias is set to 24 bits or
|
|
less. Not only is it redundant to do that but it also causes the BIOS to
|
|
immediately crash on startup. (joncampbell123).
|
|
- IDE ATAPI CD-ROM emulation: In PC-98 mode when emulating a NEC CD-ROM drive,
|
|
also limit sector reads to one CD-ROM sector per DRQ because the MS-DOS driver
|
|
assumes that behavior. The driver will stall and error out if it requests a
|
|
multi-sector read and the drive does NOT limit transfers to one sector at a
|
|
time per IDE data transfer. This is in line with my experience writing the
|
|
DOSLIB IDE testing program and laptops from the 1990s with IDE ATAPI CD-ROM
|
|
drives, so it's understandable. (joncampbell123).
|
|
- The reason the CD-ROM driver in PC-98 game HDI images refused to talk to our
|
|
IDE CD-ROM emulation is... (drumroll) we didn't report ourself as an NEC
|
|
CD-ROM drive when given the MMC INQUIRY command. Yes, really. The OAK CD-ROM
|
|
driver in these HDI images really does care whether or the drive is an NEC
|
|
brand drive. What a stupid reason not to talk to a CD-ROM drive. Add code to
|
|
default to "NEC" "CD-ROM DRIVE" as the INQUIRY result if running in PC-98 mode.
|
|
(joncampbell123).
|
|
- Add basic rudimentary support for CloneCD (*.ccd *.img) images. It might not
|
|
work with more complex arrangements but it is enough for most CD-ROM PC-98
|
|
games so far. (joncampbell123).
|
|
- libpng supports the pHYs PNG chunk which describes the pixel aspect ratio of
|
|
the PNG image. libpng 1.6 has it, use it. Programs that support the information
|
|
like FFMPEG will then display the PNG image with the correct aspect ratio.
|
|
(joncampbell123). [https://github.com/joncampbell123/dosbox-x/issues/4754]
|
|
- PC-98 mode: There is a 302KHz timer behind I/O ports 5Ch/5Eh that some MS-DOS
|
|
drivers depend on for timing, particularly a popular IDE CD-ROM device driver
|
|
in many PC-98 game HDI images. This change allows the driver to time out after
|
|
about 5-10 seconds instead of an infinite hang. (joncampbell123)
|
|
- Fix INT 10h to keep hardware CRTC I/O port synchronized with BIOS DATA area
|
|
copy so that other parts of INT 10h called by SetVideoMode do not accidentally
|
|
talk to the wrong I/O ports. This fixes corrupted INT 10 Mode F display
|
|
(640x350 monochrome graphics mode). (joncampbell123).
|
|
- Add DOS Int21 0x5D 0x00 - remote server call
|
|
Inspired by FeeDOS inthndlr.c
|
|
With this change it is possible use a plain dosbox-x to install and run
|
|
Windows for Workgroups V3.11 as an IPX server on the pcap ne2000 interface
|
|
offering a host directory for read and persistent write access to an
|
|
MSDOS machine running a WfW 3.11 IPX network client.
|
|
Please don't forget mounting with -nocachedir
|
|
(Issue #4162)(Yogi-baer)
|
|
- Fix missing keystroke SDLK_LESS on DE keyboard on Raspbian OS (Yogi-baer)
|
|
- Fix crash when loading a language file without existing menu item "ttf_extcharset" (Yogi-baer)
|
|
- Change ISA memory hole 512kb option from boolean to true/false/auto. (joncampbell123)
|
|
- Add ISA memory hole 15mb option, make it true/false/auto.
|
|
Auto means off for IBM compatible mode and on for PC-9821 compatible mode.
|
|
This should allow some DOS games that depend on the linear framebuffer
|
|
to work properly even if memsize=16 or higher. (joncampbell123)
|
|
- MIDI: set minimum sysex delay when enabled (mistydemeo)
|
|
- International support in LABEL, COPY, DEL builtin commands (maxpat)
|
|
- Fix palette setting bugs due to SETCOLOR fix in 2023.10.06 release. (maron2000)
|
|
Graphical glitches in Ultima VI(#4507), Chessmaster 3000(#4510), Wizardry VII(#4534)
|
|
Crash Sid Meyer's Civilization I (#4511)
|
|
TTF color settings regarding 'colors' option (#4579, #3318) and some more
|
|
- Fix crash when mounting floppy/ISO images with no extension (maron2000)
|
|
- Fix Intel macOS CI builds crashed on startup due to missing dylibs
|
|
(Issue #4438)(maron2000)
|
|
- Fix TTF mode didn't switch to graphics mode on certain types of machines
|
|
such as tandy/pcjr.(Issue #4559)(maron2000)
|
|
- Fix crash on switching to fullscreen when output=opengl (Intel macOS) (maron2000)
|
|
- Update DXCapture shell command to support /O for OPL capture (AranVink)
|
|
- Fix floppy images lock bug (maxpat78)
|
|
- Fix type of return value at bool MountFat() (jg1uaa)
|
|
- Fix VHD geometry bugs by performing MBR analysis (maxpat78)
|
|
- Change maximum number of joystick buttons allowed by the mapper (mattcaron)
|
|
- Enable Win9x support on a Pentium3 PC (crazii)
|
|
- Add PC98 image extensions in file open dialogs (maron2000)
|
|
- Fix input in configuration tool (SDL2) (maron2000)
|
|
- Reduce warnings by replacing sOffset (use offsetof) (jg1uaa)
|
|
- Fix LFN functions (nanshiki, SmileTheory)
|
|
Fixed a bug in which 2 extra bytes were copied to the buffer (ax=714eh,714fh).
|
|
Fixed wrong value of date/time etc. in file information (ax=714eh,714fh,71a6h).
|
|
Fixed date/time conversion to be correct (ax=71a7h)
|
|
Report correct file size on win32 when file is open (ax=71a6h).
|
|
- Fix C++11 uncompliant codes (midi_alsa.h, gamelink.cpp) (maron2000)
|
|
- Consider function key display in MORE command (PC-98) (maron2000)
|
|
- Add support for J-3100 video mode 75h (nanshiki)
|
|
- Reflect drawing status bit of GDC status I/O port (PC-98) (nanshiki)
|
|
- Re-enable top line dimming when focus is lost in fullscreen (TTF mode) (maron2000)
|
|
- Fix PC98 mouse counter value range to unsigned value (0-255) (nanshiki)
|
|
- Added function for int DCh cl=10h ah=0Ah to 0Eh (nanshiki)
|
|
- Added escape sequences (ESC[0J ESC[1J ESC[0K ESC[1K ESC[2K ESC[nL) (nanshiki)
|
|
- Fixed behavior of Kanji character output at the right edge of screen (nanshiki)
|
|
- Fixed Media ID was being written to an incorrect location in DPB (nanshiki)
|
|
- Refined version info (maron2000)
|
|
- Added PC-98 NEC mouse functions in INT33h (nanshiki)
|
|
- Bump Nuked-OPL3 code to commit 730f8c2 (13 Nov. 2023) (maron2000)
|
|
- Enabled OPL pass-through code (oplmode=hardware)(dbjh)
|
|
- Fixed crash on startup due to SDLnet library linked externally (macOS) (maron2000)
|
|
- Changed PC-98 floppy boot behavior when Drive 2 is mounted before Drive 1(maron2000)
|
|
- Added Human68k ver.1.0&2.0 floppy disk support (maron2000)
|
|
- Fixed attribute copy behavior of FreeDOS XCOPY.exe to match genuine DOS (maron2000)
|
|
- Added Russian translation (Lartenik)
|
|
- Fixed COPY/XCOPY command fails to recognize 2GB+ free disk space (maron2000)
|
|
- Enable FONTX2 files in PC-98 mode (nanshiki)
|
|
- Fix codepage switching when loading lang files (maron2000)
|
|
- Add missing quotation marks in vcxproj (bredbored)
|
|
- Fixed BPB detection of PC-98 floppies (maron2000)
|
|
- Changed sequence to boot with drive numbers when booting from image (maron2000)
|
|
- Added force JIS (JP106) keyboard layout option in PC-98 mode (maron2000)
|
|
- PC-98: Enable mounting partitions with non-genuine IPL entry names (maron2000)
|
|
- Added support for XDF disk format (maron2000)
|
|
- Added ESFM emulation (ESFMu v1.2 core) (Kagamiin)
|
|
- Added support for ESS "ESFM" sound synthesis (oplemu=esfmu, oplmode=esfm) (Kagamiin)
|
|
- Added experimental/WIP support for the ESS ES1688 sblaster type (sbtype=ess1688) (Kagamiin)
|
|
- Delete obsolete information regarding "INTRO SPECIAL" option (maron2000)
|
|
|
|
2023.10.06
|
|
- Add "VRD" debugger command to force redraw of the VGA screen. (joncampbell123)
|
|
- Add VGA debug set commands to force a video start address and another
|
|
to clear all debug settings. (joncampbell123)
|
|
- Add "PITSYNC" option to VFRCRATE command. "VFRCRATE PITSYNC ON"
|
|
directs the system timer interrupt to synchronize tick rate with
|
|
vertical refresh rate of VGA emulation if the game or demo set
|
|
the timer tick rate to a value close enough to vertical refresh.
|
|
This is intended for games or demos that use the system timer for
|
|
a vsync interrupt. (joncampbell123)
|
|
- IMGMAKE: Fix bug where if -bat was specified, the generated .bat
|
|
file would attempt to mount the .bat file, not the disk image. (joncampbell123)
|
|
- IMGMAKE: If -nofs and -bat was specified, the generated .bat file
|
|
will refer to "IMGMAKE 2" instead of "IMGMAKE C" (joncampbell123)
|
|
- DOS FAT driver: When the guest sends in a new BIOS Parameter Block,
|
|
recalculate the disk locations and FAT type properly instead of
|
|
assuming that FORMAT.COM is using the same format already present. (joncampbell123)
|
|
- DOS FAT driver: If the partition is unformatted and looks as if
|
|
freshly written by FDISK, then instead of failing to mount, mount
|
|
the partition instead as an unformatted partition and fail file
|
|
I/O until a BPB is set and the partition formatted by FORMAT.COM.
|
|
This matches MS-DOS behavior and it makes it possible to mount an
|
|
image, FDISK it, restart, FORMAT.COM the unformatted partition,
|
|
and end up with a working drive letter (just like MS-DOS). So far
|
|
verified against MS-DOS 6.22 and Windows 98 versions of FDISK,
|
|
FORMAT, SYS, and SCANDISK. (joncampbell123)
|
|
- DOS FAT driver: Add options -o sectoff and -o sectlen to make it
|
|
possible to manually specify the start and length of a partition.
|
|
Future code will use this internally as well. (joncampbell123)
|
|
- IMGMOUNT: Allow *: as a drive letter to mean automatically pick a
|
|
drive letter. (joncampbell123)
|
|
- Fix debugger to use toupper(), but only for ASCII range ncurses
|
|
keycodes. (joncampbell123)
|
|
- Timer PIT: If the guest writes the counter value while the counter
|
|
gate is off, make sure the counter read back is the same value
|
|
written regardless of gate status. Prior code returned the stale
|
|
latched value of the counter as it was prior to shutting off the
|
|
gate and writing the counter, causing timing issues. (joncampbell123)
|
|
- Fix restoring minimized window on TTF output (Issue #4248) (maron2000)
|
|
- Fix macos crash on launch when output=surface or auto (SDL2) (maron2000)
|
|
- Update in-tree SDL2 library to ver 2.28.2 (maron2000)
|
|
- Updated build tool for MinGW lowend builds required for the updated SDL2
|
|
library. As a result, MinGW lowend builds are now able to enable debugger
|
|
features. (maron2000)
|
|
- Debugger RUN and RUNWATCH commands were broken, fix. Make sure debugger
|
|
shortcut triggers execution to stop whether in RUN or RUNWATCH mode.
|
|
- Fix SETCOLORS command didn't change color when output=ttf.(Issue #4503)
|
|
Also fixed the values reported were wrong. (maron2000)
|
|
- BIOS CMOS date/time functions will now idle the CPU 4 times after reading
|
|
or setting the clock to allow interrupts, CPU time, and RTC clock ticks
|
|
to proceed normally. This fixes "Pizza Tycoon" and allows it to continue
|
|
past the initial logo. (joncampbell123)
|
|
- Fix segfault when mounting hard disk images with no file extension
|
|
(joncampbell123).
|
|
|
|
2023.09.01
|
|
- Disable by default message confirmation after snapshot and AVI video
|
|
capture, but leave the option there for those who want to enable it (joncampbell123).
|
|
- Remove "LOG: Logging output has been disabled." output when -nolog
|
|
is specified on the command line (joncampbell123).
|
|
- Fix stuck Ins key problems by fixing a typo in src/ints/bios_keyboard.cpp.
|
|
The code is supposed to clear the "Ins key down" flag, but instead cleared
|
|
all bits EXCEPT "Ins key down" (joncampbell123).
|
|
- NE2000 macaddr default is now "random", which instructs the NE2000
|
|
hardware at startup to pick a random MAC address. (joncampbell123).
|
|
- IPX: If NE2000 and IPX are enabled, and an IPX tunneling connection is
|
|
active, and the user boots a guest OS, switch on a mode where all IPX
|
|
packets going to and coming from the guest are re-routed through the
|
|
IPX tunnel instead of to the NE2000 ethernet backend. This feature
|
|
makes it possible to play IPX-based games in a guest OS like MS-DOS
|
|
and Windows 95. (joncampbell123).
|
|
- IPX: Add extension to server to allow clients to register their own
|
|
MAC address instead of using the default MAC address given by their
|
|
IP address and port number. The extension is designed so that if DOSBox-X
|
|
is a client to another DOSBox fork's IPX tunneling server, it will
|
|
be ignored and DOSBox-X will get the usual MAC address instead. This
|
|
extension is required for guest OSes to be able to use the IPX protocol
|
|
through the NE2000 card given upcoming code changes as they normally
|
|
use the network card MAC address when picking an IPX address because
|
|
the IPX interface is not available once booted into a guest OS. (joncampbell123).
|
|
- IPX client: If both IPX and NE2000 emulation are enabled, IPX emulation
|
|
will use the NE2000 card's MAC address instead. It will use the IPX
|
|
server DOSBox-X extension to try. If it doesn't work, then the normal
|
|
MAC address assignment is accepted without complaint. (joncampbell123).
|
|
- NE2000: Add "nothing" backend. It receives nothing and send packets go
|
|
nowhere. If no other backend is available, this backend is a fallback
|
|
so that at least the NE2000 emulation can work. The other purpose of
|
|
a nothing callback is to give NE2000 something to talk to for those
|
|
who wish to use the upcoming IPX packet redirection to link DOS and
|
|
Windows games over the IPX client or server connection to other
|
|
instances of DOSBox. (joncampbell123)
|
|
- Added record function to capture NE2000 network traffic to a
|
|
pcap/Wireshark file in the capture directory. (joncampbell123)
|
|
- Fixed bug where guest VM reset causes the CMOS to stop ticking for
|
|
exactly the amount of time it was running before reset. (joncampbell123)
|
|
- Added alarm interrupt function to RTC CMOS emulation (joncampbell123)
|
|
- Reverted DOS to using the BIOS_DATA tick count for time and the cached
|
|
copy of date it keeps internally, rather than always calling INT 1Ah.
|
|
It turns out that is how DOS actually behaves, which is also why it is
|
|
possible for the DOS and CMOS RTC to diverge. Fix CMOS emulation to
|
|
allow get/set time and to run in emulation time, not real time, though
|
|
the clock starts from the host time. (joncampbell123)
|
|
- Fixed VHD disk image calculation of footer position and, thus, of newly
|
|
allocated block position. (maxpat78)
|
|
- Enhanced Dynamic and Differencing VHD support #4273 (maxpat78)
|
|
- Imported IBM Music Feature Card support from DOSBox Staging. (Allofich)
|
|
- Fix IMGMAKE large size image error on MinGW builds (maron2000)
|
|
- Set usescancodes=true when non-US keyboards are detected. (Linux / MacOS
|
|
builds) (maron2000)
|
|
- Fix day of week detection (INT 21h function 0x2Ah). (maron2000)
|
|
- Refine KEYB and CHCP command (maron2000)
|
|
- Use segment descriptor's big flag (if present) when disassembling code in
|
|
the debugger code view (cimarronm)
|
|
- Add decoding of rdmsr/wrmsr instructions to disassembler (cimarronm)
|
|
- Fix disassembly for far jmp/call decoding (cimarronm)
|
|
- Fix memory limits on expand-down segment descriptors (cimarronm)
|
|
- Bump tinyfiledialog to ver 3.13.3 (maron2000)
|
|
- Fix mouse column limit on text mode (issue #4353) (maron2000)
|
|
- Fix Blocek launching failure (issue #4385) (maron2000)
|
|
- Bump in-tree FreeType library to ver 2.13.1 (maron2000)
|
|
- Enable debugger function for MinGW builds (maron2000)
|
|
|
|
2023.05.01
|
|
- IMGMAKE will choose LBA partition types for 2GB or larger disk
|
|
images, but the user can also use -chs and -lba options to override
|
|
that choice. The CHS or LBA partition types do matter because it
|
|
affects which version of INT 13h is used by Windows 98/ME to boot up
|
|
and, if drive C: is in compatibility mode, at all times. (joncampbell123)
|
|
- PC-98 256-color mode will also trigger the auto mode of "render on
|
|
demand" for performance reasons because per-scanline raster effects
|
|
are very unlikely in that case, as will MDA and Hercules machine
|
|
types. (joncampbell123)
|
|
- When the DOS IDLE API is enabled (by default), limit STI+HLT to
|
|
occur on INT 28h only once after any call to read the CON device
|
|
or call to BIOS INT 16h to read the keyboard. This fixes stalls
|
|
and sluggish input problems with programs that like to call INT 28h
|
|
often like the Pacific C compiler PPD IDE interface. (joncampbell123).
|
|
- Hercules InColor machine type: Fixed attribute and RAMFONT handling
|
|
of 48K RAMFONT mode and added planar text rendering. (joncampbell123).
|
|
- Write BIOS data area fields for number of rows, char height, etc.
|
|
for MCGA machine type in addition to EGA/VGA machine types because
|
|
IBM technical references suggest it's there for MCGA as well.
|
|
This also resolves an issue where with the MCGA machine type, INT 10h
|
|
failed to print any text to screen whatsoever. (joncampbell123).
|
|
- Render on demand (Staging calls it "lazy rendering") now defaults
|
|
to "auto" and allows an "auto" setting. The auto setting will
|
|
turn it off for standard VGA modes and will turn it on for SVGA
|
|
modes where per scanline raster effects are very unlikely to
|
|
occur. This may provide a performance boost for DOS games in SVGA
|
|
modes and the Windows desktop (joncampbell123).
|
|
- CGA 320x200 4-color mode is now rendered using the M_EGA render
|
|
code for EGA/VGA machine types to better reflect real hardware.
|
|
(joncampbell123).
|
|
- Fix bug where setting doublescan=false for anything other than
|
|
the VGA machine type would break CGA graphics modes.
|
|
(joncampbell123).
|
|
- Fix video debug overlay calculations of source video mode for
|
|
CGA graphics modes. (joncampbell123).
|
|
- CGA 640x200 2-color mode and MCGA 640x480 2-color mode are no
|
|
longer rendered as M_CGA2 for EGA/VGA machine types. The reason
|
|
is that at the hardware level they are really just IBM standard
|
|
tweaked versions of the EGA/VGA 16-color modes with additional
|
|
bits for the interleave emulation and can be properly emulated
|
|
with the M_EGA renderer. M_CGA2 is still used for the CGA and
|
|
MCGA machine types for those modes. The DCGA DOS/V mode has been
|
|
carefully made into its own render mode instead of part of the
|
|
M_CGA2 case. (joncampbell123).
|
|
- Fixed refcount -1 error and abort when multiple floppies are
|
|
attached to a floppy drive and the "Swap floppy" mapper shortcut
|
|
is used at least once (joncampbell123).
|
|
- Hercules palette selection now provides a "dark gray" color
|
|
mapping to match the green, amber, or gray palette selection of
|
|
the user (joncampbell123)
|
|
- Fix Hercules vs MDA attribute handling of "dark gray" background
|
|
color when hardware blink is disabled. (joncampbell123)
|
|
- Added RAMFONT emulation to Hercules Plus machine type, fixed code
|
|
to allow Hercules Plus text mode to draw farther than the first 4KB
|
|
of RAM if RAMFONT enabled. (joncampbell123)
|
|
- DOS kernel: Fix programming mistake that allocated perhaps a bit
|
|
too much DOS kernel memory for the "List of Lists" info block.
|
|
Fix the sizes of the info block and other structures to make sure
|
|
specific kernel structures are placed at fixed addresses because
|
|
later Microsoft software for MS-DOS checks those values.
|
|
(joncampbell123)
|
|
- Serial port: Add multiplier: setting as requested to enable
|
|
faster than 115200 baud rates. (joncampbell123)
|
|
- Fix mistakes in CPUID emulation that threw a #UD exception for
|
|
specific cases where EAX was not recognized by particular CPU
|
|
types. (joncampbell123)
|
|
- Fix RTC clock emulation to correctly signal IRQ8 interrupt for
|
|
both periodic tick and update-ended events. Prior to this fix,
|
|
only periodic tick events were reported even if the bit was set
|
|
to enable update-ended. (joncampbell123)
|
|
- Fix serial and AUX PS/2 mouse emulation to not send relative
|
|
motion unless mouse captured, to make it consistent with the
|
|
BIOS PS/2 mouse emulation (joncampbell123)
|
|
- FAT driver: Major performance boost is possible by eliminating
|
|
unnecessary code that re-reads the entire directory when looking
|
|
up or changing one particular directory entry. (joncampbell123).
|
|
- CMOS registers: Fix code to allow getting and setting time,
|
|
fix year vs century registers to work properly. (joncampbell123).
|
|
- BIOS INT 1Ah: Fix functions to get and set time and date
|
|
instead of faking on read and ignoring set. Use the CMOS
|
|
registers. (joncampbell123).
|
|
- DOS INT 21h: Fix date and time functions to call the BIOS for
|
|
time instead of trying to fake it only at the DOS level. This
|
|
includes allowing INT 21h to change the date/time using the
|
|
BIOS. (joncampbell123).
|
|
- DOS shell: Make TIME actually use INT 21h to set time instead of
|
|
directly modifying the BIOS timer tick count in the BDA.
|
|
(joncampbell123).
|
|
- Increased PIC event queue size, there are corner cases especially
|
|
with Windows XP that can occasionally overrun the queue.
|
|
(joncampbell123).
|
|
- Updated IBM PC keyboard emulation to correctly encode Pause and
|
|
Print Screen key scan codes when shift, alt, and ctrl are held
|
|
down. This makes it possible to type "Alt+SysRq" for programs
|
|
that expect it, including SoftICE. (joncampbell123).
|
|
- NE2000 emulation: Looking at recent Bochs source code, ne2k.cc
|
|
appears to have downgraded the "IMR write, reserved bit set"
|
|
message from BX_PANIC to BX_ERROR. Update the same in DOSBox-X
|
|
so that Windows 2000 no longer crashes the emulator with E_Exit()
|
|
when probing the NE2000 hardware. (joncampbell123).
|
|
- INT 33h mouse services: Add "Get General Driver Information"
|
|
function for Microsoft Word 5.5 (joncampbell123).
|
|
- INT 33h mouse services: Render cursorType == 2 (graphics cursor)
|
|
as if text cursorType == 0 if the current mode is text mode.
|
|
Microsoft Word 5.5 always calls functions to set text AND graphics
|
|
cursor regardless of whether the actual mode is graphics or not.
|
|
This fix allows the cursor to show correctly as the block cursor
|
|
it wanted in text mode instead of a moving hardware blinking cursor.
|
|
(joncampbell123).
|
|
- Fixed S3 XGA emulation bitmap rendering to correctly handle
|
|
8/16/32-bit pixel transfer I/O and update comments to reflect
|
|
the 32-bit byte aligned transfer mode of the Trio chipset.
|
|
This fixes incorrectly drawn radio buttons and 16x16 icons
|
|
in Windows NT 3.5, Windows NT 3.51, Windows NT 4.0, and
|
|
Windows 2000. (joncampbell123).
|
|
- Fixed keyboard emulation so that upon the keyboard reset command
|
|
FFh, the keyboard does the reset process and THEN sends back
|
|
bytes 0xAA (power on/reset OK) and 0x00 (interface self-test).
|
|
This resolves the issue where Windows NT 3.1 pauses at startup and
|
|
does not resume booting until you press a key on the keyboard.
|
|
This also resolves the issue where Windows NT 3.5 keyboard and
|
|
mouse input stops working completely if you press a key on the
|
|
keyboard. (joncampbell123).
|
|
- Add Hercules InColor emulation of MDA vs CGA attribute select,
|
|
and make sure it obeys the blink setting (joncampbell123)
|
|
- Change Hercules/MDA text output to render 9 pixels per char
|
|
if the char9 setting is on, to match the 9x14 character cell
|
|
that those cards emit to the screen. The user can always turn
|
|
it back off to get the 8x14 text they're probably accustomed
|
|
to in other DOSBox forks. (joncampbell123)
|
|
- Render output fixed to never double pixels vertically on render
|
|
if the machine type is emulating VGA and the Doublescan option
|
|
is enabled, in order to help resolve SVGA text mode issues
|
|
reported by ThomasKjoernes (joncampbell123)
|
|
- Add InColor CRTC registers and add code to emulate the planar
|
|
bitplane operations. Microsoft Flight Simulator 3.0 renders
|
|
correctly now. (joncampbell123)
|
|
- Update Hercules InColor code to render the same 64-color EGA
|
|
palette as machine=ega. (joncampbell123)
|
|
- Correct machine=hercules text rendering flaw that prevented
|
|
the bright attribute (bit 3/7) from working, making all text
|
|
output the same normal brightness. (joncampbell123)
|
|
- Add expected data structures and signatures to VGA ROM BIOS at
|
|
C000:0000 if machine type selects ATI emulation (joncampbell123).
|
|
- Add ATI machine types, which at this time, is just a placeholder
|
|
for development to go in that direction over time for those
|
|
machine types. (joncampbell123)
|
|
- Added "machine=hercules_plus" and "machine=hercules_incolor" as
|
|
stubs to be developed on going forward to emulate the HGC+ and
|
|
InColor cards. Note that InColor will require the MCH_HERC case
|
|
to generate 64-color EGA-like output going forward even if the
|
|
documented startup state still emulates the MDA-like monochrome
|
|
attributes. (joncampbell123)
|
|
- SDL2: Stop checking for compiler flags that make it an error to
|
|
declare variables after statements in a function or any other
|
|
terrible sins that would offend old C89 standard compilers.
|
|
DOSBox-X is never going to compile for a C standard that old.
|
|
Furthermore this check is preventing compilation on ARM-based
|
|
Macbooks for some reason, though not Intel based Macbooks.
|
|
|
|
2023.03.31
|
|
- "mount -t overlay" will now print a message on the console to
|
|
let you know if the act of mounting the overlay replaced a
|
|
previous overlay mount. Overlay mounts cannot be stacked in
|
|
DOSBox-X (and probably most DOSBox forks that support overlays)
|
|
and the user should understand that. (joncampbell123).
|
|
- Remove kludges from DOS path resolution to handle drive paths
|
|
that refer to drive @ (at sign). Note that in ASCII the at sign
|
|
is one code below capital "A". Windows 95 FORMAT.COM due to
|
|
another issue was asking for "@:\WINBOOT.SYS" and sometimes
|
|
causing a segfault in DOS path resolution due to an uninitialized
|
|
drive index. The fix for the other issue removes the need for this
|
|
kludge. In it's place a message will be logged to your log file if
|
|
anything attempts to access files on drive "@:" because it likely
|
|
means a failure to determine the drive index properly. (joncampbell123).
|
|
- In addition to reporting the "boot drive" via INT 21h AX=3305h, also
|
|
write boot drive in the "List of Lists" structure. Windows 95
|
|
FORMAT.COM reads the boot drive from the LoL and does not do any
|
|
error checking if that value is out of range (such as if it was
|
|
never set and the byte value is zero). Failure to set this field
|
|
will result in FORMAT.COM attempting to access "@:\WINBOOT.SYS"
|
|
and "@:\IO.SYS" and failing. (joncampbell123).
|
|
- Add dosbox.conf option to set a fixed RTDSC tick rate to use at
|
|
all times during emulation instead of the CPU cycle count
|
|
(joncampbell123).
|
|
- Fix RDTSC to maintain a monotonic increasing count even if the
|
|
CPU cycles count changes, and better handle timestamp writes
|
|
through WRMSR (joncampbell123).
|
|
- FAT filesystem driver: Instead of searching from cluster 0 every
|
|
time a new cluster is to be allocated, keep track of the search
|
|
to help reduce slowdowns on fairly large filesystems when many
|
|
files are copied onto it (joncampbell123)
|
|
- Page Up/Down vs Roll Down/Up was in the wrong order, switch order
|
|
to correct it. (joncampbell123)
|
|
- Fix 'pc98 force ibm keyboard layout' was always forced to be 'true'
|
|
for left & right bracket keys on US keyboards. (maron2000)
|
|
- Fix dynamic_nodhfpu FPU stack bugs, the same bugs that once plagued
|
|
dynrec. dynamic_x86 never seemed to have the same problem because
|
|
in reality the DH FPU case was normally used, to hit this bug you
|
|
had to use core=dynamic_nodhfpu. Also fix dynamic x86 DH FPU code
|
|
never to restore from DH case if the DH FPU code was never enabled,
|
|
which periodically caused FPU state to disappear. (joncampbell123).
|
|
- Add dosbox.conf option to control the MSCDEX.EXE device name when
|
|
emulating a CD-ROM drive (joncampbell123).
|
|
- Wengier coded this nice text-only DOSBox-X logo for the TTF output.
|
|
Fix border alignment issues and make the text logo the default and
|
|
only option for MDA and Hercules machine types at boot.
|
|
(joncampbell123).
|
|
- Add -print-ticks command line option, which enables code to print
|
|
both SDL_GetTicks() and emulator time once a second to the console
|
|
and the log file. This may help in tracking down bugs related to
|
|
long term laptop suspend or suspension of the process in general.
|
|
(joncampbell123).
|
|
- PC-98: Ignore INT 18h AH=0Ch (enable text layer) in 256-color mode.
|
|
Real hardware doesn't seem to let you turn on the text layer in
|
|
256-color mode, though I am not certain if this is a restriction
|
|
imposed by the BIOS or by the hardware. This fixes possible cases
|
|
where Sim City 2000 in 256-color mode reveals garbage text data at
|
|
the bottom of the screen if it is there when it starts. This doesn't
|
|
fix the issue where Sim City 2000 cannot set 640x480 256-color mode
|
|
properly unless your display is already set to 31Khz hsync because that
|
|
is evidently a bug in the game, not DOSBox-X. (joncampbell123).
|
|
- PC-98 256-color mode: Fix "Active Display Words" value set by INT 18h
|
|
to 40, not 80, for graphics layer. This has no apparent effect on
|
|
games but it does fix the sometimes erroneous graphics layer width
|
|
in the video debug display. Neko Project II source code seems to
|
|
indicate the 31KHz hsync mode is programmed that way even if 256-color
|
|
mode. This should not break anything since the GDC doesn't let you
|
|
read back the "SYNC" reset parameters anyway--this isn't VGA hardware,
|
|
after all. (joncampbell123).
|
|
- IPX emulation was broken because it set up the virtual file, IRQ
|
|
and interrupt handler way too early, which the BIOS startup would
|
|
then overwrite with the default BIOS IRQ handler. IPX emulation
|
|
should work now, at least multiplayer DOOM. (joncampbell123)
|
|
- Added debug menu and dosbox.conf option to show debug information
|
|
at the bottom of the screen when enabled. This debug information
|
|
reflects the video state at the start of active display. It can be
|
|
used to see in real time the state of the palette, display offset,
|
|
display stride, and other useful information. It is rendered into
|
|
the frame on purpose so that it appears as part of the picture
|
|
when you take a screenshot or record a video to AVI or MTS for
|
|
later review. (joncampbell123)
|
|
- Dynamic core: Fix serious bug in dynrec dynamic core where calls
|
|
to handle x86 FPU instructions erroneously passed the entire
|
|
FPU status word instead of passing only the FPU stack pointer.
|
|
The result of this error was that floating point was erratic,
|
|
buggy, and often caused memory corruption in DOSBox-X eventually
|
|
leading to a crash. It should now be possible to properly run
|
|
DOS games on dynrec based systems, including ARM-based M1 Macbooks,
|
|
that use the FPU. (joncampbell123)
|
|
- Debugger: When entering debugger interface, force dynamic core
|
|
to flush it's state so that the debugger can show the correct
|
|
state to the user when they use the "FPU" command to see it.
|
|
(joncampbell123).
|
|
- VGA emulation: Automatically ignore odd/even mode if "Chain 4"
|
|
mode is enabled in the sequencer (normally enabled only for
|
|
256-color mode). Some games accidentally set odd/even mode
|
|
in 256-color mode and yet apparently worked just fine on real
|
|
hardware. Without this change, such games will display distorted
|
|
graphics. It makes logical sense "Chain 4" would take priority
|
|
over odd/even mode. Note: If a game uses 256-color unchained mode
|
|
AND foolishly enables odd/even mode, then the resulting distorted
|
|
graphics are probably accurate to what would happen on real
|
|
hardware, but then programmers would have caught their mistake
|
|
and fixed it so that is very unlikely to occur. This helps to fix
|
|
"Seal: Magic Eye" although some remaining visual artifacts in the
|
|
game can only be resolved by setting machine=svga_et4000
|
|
(joncampbell123).
|
|
- Set usescancodes=true when non-US keyboards are detected
|
|
(Windows builds) (maron2000)
|
|
- For long double without using x86 FPU, the code still calls the
|
|
fstcw instruction and can enable FPU exceptions that crash the
|
|
emulator, therefore mask off all exception bits to stop that.
|
|
(joncampbell123)
|
|
- Added code to mouse emulation to control how often the mouse
|
|
reports events through the interrupt. Added dosbox.conf option
|
|
to allow the user to force a report rate, which can be used to
|
|
force a lower than normal report rate for games that cannot
|
|
properly handle higher ones. Allow PS/2 mouse emulation, if
|
|
rate not set by user, to control report rate. (joncampbell123).
|
|
- Add code to COMMAND.COM to flush keyboard input before running
|
|
the command given by the user, and flush again when the command
|
|
returns. Added option to dosbox.conf to enable/disable this
|
|
function (joncampbell123)
|
|
- Fix bug where Tandy mode ignored the "allow more than 640kb"
|
|
setting.
|
|
- Fix INT13h AH=02 broken conditional branch which prevents
|
|
installer of game "Inherit the Earth: Quest for the Orb"
|
|
to obtain free space of hard drive (maron2000)
|
|
- qcow2 image support: Make image able to be mounted by
|
|
drive letters (experimental) (maron2000)
|
|
- VHD image support: Make file name check for .vhd extension
|
|
to be case insensitive (maron2000)
|
|
- VHD image support: Fix auto-detection of geometry (maron2000)
|
|
- Sound Blaster: Added code to periodically check the user's
|
|
settings regarding recording source selection and listening.
|
|
This should allow the user to change those settings on the
|
|
fly. (joncampbell123).
|
|
- Sound Blaster: Added options to control whether the generated
|
|
recording source is audible through the speakers, and what
|
|
generated audio to send to the client. Options are: silence,
|
|
hiss, and a 1KHz test tone. (joncampbell123).
|
|
- Sound Blaster: If the DSP is recording rather than playing,
|
|
then send audio to the guest at the recording sample rate
|
|
containing some form of generated audio. Default is silence.
|
|
This ALSO satisfies the Creative driver CTSB16.SYS when it
|
|
does the DMA test at startup. (joncampbell123).
|
|
- Sound Blaster: Fixed code to properly recognize when the
|
|
guest wants to record audio, including through SB16
|
|
commands. Prior to this fix, all SB16 Bxh-Cxh commands
|
|
were handled as if playback even if the command would
|
|
instead trigger recording. (joncampbell123).
|
|
- Sound Blaster: Add missing update of "last DMA callback"
|
|
timestamp that is needed for when the guest pauses DMA
|
|
during playback or recording. (joncampbell123).
|
|
- VHD image support: If the VHD image is not a fixed type,
|
|
say so in the log (previously it said nothing) and say
|
|
what kind of image was mounted (joncampbell123).
|
|
- Added INT 13h AH=44h Extended Verify to satisfy any disk
|
|
utilities that might use it. The function doesn't really
|
|
do anything except return success (joncampbell123).
|
|
- Fix CPU stack management to use CPU mode agnostic method
|
|
using mem_readw instead of real_readw. However the real
|
|
mode version is used if real or virtual 8086 mode because
|
|
of comments in an older commit that mention UNLZEXE that
|
|
depends on real mode stack pointer rollover. This fixes
|
|
a bug related to protected mode APM (Advanced Power
|
|
Management) emulation that prevented the Linux kernel
|
|
from booting (joncampbell123).
|
|
- Add support for INT 2F function 1680h "Idle" and DOS
|
|
idle (INT 28h), add code to reduce DOSBox-X CPU load
|
|
during emulation when the idle function is called,
|
|
add dosbox.conf enable/disable (default enable) to
|
|
control this behavior (Github user "finalpatch")
|
|
- Graphical fixes and dialog support for Haiku OS (amol-)
|
|
- Allow jp106 keyboard layout in DOS/V mode, automatically
|
|
choose when keyboard layout is auto on Windows with
|
|
Japanese keyboard, fix jp106 input in SDL1 builds running
|
|
on Japanese Windows with English keyboard (nanshiki)
|
|
- Sync dh fpu state with normal fpu when dynamic core
|
|
calls normal core to handle self modifying code. Add
|
|
additional code to other cases. (Github user "finalpatch")
|
|
- Fix incorrect handling of upper 4 bits of character attributes
|
|
in video mode 72h in DOS/V mode (nanshiki)
|
|
- Fix BIOS signature at 0xFFFFF to reflect actual value
|
|
of Tandy machines so "Ninja" works correctly in
|
|
Tandy mode (rderooy)
|
|
See also: [https://www.vogons.org/viewtopic.php?f=32&t=92129]
|
|
- Change default mixer rate to 48KHz instead of the
|
|
long standard 44.1KHz. Most modern sound cards on
|
|
modern OSes render at 48KHz anyway and resample
|
|
either in hardware or software and most configurations
|
|
render at 48KHz. Perhaps somewhat improved audio quality
|
|
could be had by rendering at what most sound cards are
|
|
doing these days anyway. As usual, audiophiles are free
|
|
to set the mixer rate to 96KHz if supported by their
|
|
sound card. (joncampbell123)
|
|
- Fix PIT 0 timer interrupt handling not to attempt
|
|
periodic event and error adjustment unless the game
|
|
is using periodic modes 2 or 3. This fixes PIT timing
|
|
bug and possible emulator hang when exiting games
|
|
like "Days of Thunder" that leave PIT 0 in mode 0 or
|
|
1 on exit for some reason. (joncampbell123)
|
|
- Fix Sound Blaster DMA rate limits to better reflect
|
|
actual hardware. SB16 limits to 45454Hz just as
|
|
Pro and earlier do. These limits were added before
|
|
the proper measurements were coded and tested on
|
|
real hardware. (joncampbell123)
|
|
- Fix S3 cursor emulation to support both X11 and
|
|
Windows hardware mouse cursor modes available
|
|
on S3 Virge, Trio, and possibly other cards
|
|
(John Tsiombikas)
|
|
- Add EGA/VGA emulation code to keep track at runtime
|
|
whether planar features are in use. If they are not,
|
|
then handle EGA/VGA video memory access using a
|
|
simplified version for a bit of a performance boost
|
|
in response to complaints about poor VGA emulation
|
|
performance. (joncampbell123)
|
|
- VGA palette DAC update: Instead of recalculating
|
|
the palette map every time a color is written through
|
|
port 3C9h, set a flag. Defer palette map update to
|
|
when the next scan line is rendered, in order to
|
|
improve performance. (joncampbell123)
|
|
- Add option to enable or disable the "memory I/O
|
|
optimization" option, meaning the code that was
|
|
added to assign simplified VGA memory I/O handling
|
|
when the DOS game is not using any bit planar raster
|
|
op and more complicated features of the EGA/VGA
|
|
hardware. (joncampbell123)
|
|
- Added VGA render on demand mode to VGA emulation.
|
|
When enabled, VGA emulation does not render scanlines
|
|
until vertical retrace or when certain registers are
|
|
written that change the display (attribute controller,
|
|
VGA palette, etc.). It is added to dosbox.conf as
|
|
"scanline render on demand" and is false by default
|
|
because it can provide a performance boost for DOS games
|
|
but it also tends to break timing-dependent Demoscene
|
|
effects. The idea is that some emulator performance
|
|
improvement may be possible by not interrupting the
|
|
CPU loop per scanline for the same reason that DOSBox
|
|
SVN has traditionally only rendered the VGA display
|
|
in quarters instead of per scanline. (joncampbell123).
|
|
- Remove experimental "alt VGA" rendering code. It was
|
|
never completed and it is probably starting to
|
|
bitrot (joncampbell123).
|
|
- Fix EGA/VGA version of CGA 4-color graphics renderer
|
|
code to consider all four bitplanes when combining
|
|
each pair into a 2-bit value. When bitplanes 2+3 are
|
|
enabled and writeable, the 4-color mode becomes a
|
|
sort of 2-plane 2 bits per pixel 16-color mode. Fix
|
|
for machine=ega and "Leather Goddess of Phobos 2",
|
|
a game that sets up EGA 640x200 16-color mode then
|
|
suddenly switches on the 2bpp CGA mode as a way to
|
|
do 16-color dithered graphics. (joncampbell123).
|
|
- Fix installers for Dynamix games not working.
|
|
(Allofich & halcyon00)
|
|
- Fix crash related to swapping between disk
|
|
images. (Allofich)
|
|
- SVN r4482: Correct CMS sound pitch. (Allofich)
|
|
|
|
2022.12.26
|
|
- Allow more than 640KB of conventional memory,
|
|
regardless of "allow more than 640kb" option, for
|
|
Tandy machine type. The setting is capped to 768KB
|
|
to reflect Tandy systems with that upgrade, which
|
|
is said to allow a full 640KB for DOS and 128KB for
|
|
video RAM without any conflict from the MCB chain.
|
|
Adjust Tandy video emulation for 768KB case. This
|
|
fixes "Might and Magic III Isles of Terra" crashes
|
|
in Tandy mode and Tandy graphics because the game
|
|
does not correctly handle the memory configuration
|
|
when less RAM is involved. (joncampbell123).
|
|
- Fix code page CPI/CPX loader to allocate 128KB of
|
|
memory instead of 84KB. The code allocates a 64KB
|
|
stack for the executable code within. The 84KB
|
|
allocation permitted the initial stack pointer to
|
|
exist beyond available conventional memory if
|
|
conventional memory size was below about 156KB and
|
|
cause a crash. This is a quick fix, a long term fix
|
|
would be to instead set the initial stack pointer
|
|
to some offset below 0xFFFE based on available memory,
|
|
just as the .COM executable loader was modified to do
|
|
some time back to enable proper execution when
|
|
memsize < 64KB. (joncampbell123)
|
|
- Do not load country/font information at startup
|
|
if the code page to load is the same as the default
|
|
code page. (joncampbell123)
|
|
- Fix Tab/Shift+Tab in Configuration GUI regarding
|
|
setting text fields that have a ... button to select
|
|
from an enumeration. Those buttons are no longer a
|
|
trap for tab enumeration. (joncampbell123)
|
|
- Fix Mac OS SDL1 keyboard support code to properly
|
|
fill in unicode character values in relation to
|
|
IME checks. This fixes a problem where it was
|
|
impossible to type anything in the configuration GUI
|
|
in SDL1 Mac OS builds. (joncampbell123)
|
|
- Mark VBE mode 0x212 as "do not list" so that it does
|
|
not appear in normal VBE mode enumeration, while
|
|
keeping it valid for the Windows 3.1 driver which
|
|
assumes the mode is there at that number without
|
|
enumeration. By not listing the mode, drivers like
|
|
VBEMP and DOS application code will not attempt to
|
|
use it. There is already another mode number for
|
|
640x480 24bpp anyway. (joncampbell123)
|
|
- Fix VBE mode 0x212, which is 640x480 24bpp packed
|
|
mode but with a per scanline stride of 2048 bytes
|
|
per pixel set aside for the Windows 3.1 driver and
|
|
the "640x480 (1Meg) 16 million colors" setting,
|
|
so that the VBE "Get Mode Info" call reflects the
|
|
proper per-scanline stride instead of the ideal one.
|
|
This should fix complaints about VBEMP and 640x480
|
|
24-bit color mode. Given how minimal the use of the
|
|
mode is by the Windows 3.1 driver, the 2048 byte
|
|
mode does not permit setting scan line length or
|
|
display start i.e. panning is not permitted.
|
|
(joncampbell123).
|
|
- Fix Pentium Pro emulation to support microcode
|
|
related MSRs so that Windows 98 does not crash
|
|
on startup when cputype=ppro_slow. (joncampbell123).
|
|
- Added SMV debugger command. This is the linear
|
|
(virtual) equivalent of the SM "Set Memory"
|
|
command. (joncampbell123).
|
|
(https://github.com/joncampbell123/dosbox-x/issues/3826)
|
|
- Fix debugger help command to list both C / D commands
|
|
and the DV/DP commands. (joncampbell123)
|
|
- Add VGA FONTDUMP debugger command for those
|
|
who might want to take custom fonts in text
|
|
mode and do something with them outside the
|
|
emulator. "VGA FONTDUMP" followed by a filename
|
|
which must have the extension .BIN (for a raw
|
|
64KB dump of font RAM) or .BMP (for a formatted
|
|
dump as a monochrome bitmap file). (joncampbell123).
|
|
- Disabled code to randomly return GDC drawing
|
|
status active. The implementation was causing
|
|
severe performance issues. The code has not
|
|
been removed because it could be optimized and
|
|
fixed and could even follow the state of GDC
|
|
drawing. (joncampbell123)
|
|
- VGA 6-bit DAC mode expand to full 8-bit range,
|
|
instead of simple shifting (joncampbell123).
|
|
- Fix 8254 PIT emulation (joncampbell123)
|
|
- Add dosbox.conf option "cpuid string" to allow
|
|
CPUID to return custom ID strings instead of just
|
|
"GenuineIntel". Have fun! (joncampbell123)
|
|
- Fixed build to properly compile against internal
|
|
SDL/SDL2 library even if an external version is
|
|
available (joncampbell123)
|
|
- Fixed some violations of the one definition rule.
|
|
(Jookia)
|
|
- Use pkg-config to find OpenGL (Jookia)
|
|
- Updated Flatpak SDK and dependencies (Jookia)
|
|
- PC-98 Implement AVSDRV.SYS PCM function (int D9h)
|
|
(nanshiki)
|
|
- PC-98 Support 6x8 Katakana font with int 18h ah=14h
|
|
(nanshiki)
|
|
- PC-98 Fix Audio Q-Channel info in MSCDEX (nanshiki)
|
|
- Fixed FFMPEG 5 compatibility (Jookia)
|
|
- Fix FFMPEG crash if FFMPEG fails to write header
|
|
for some reason. (joncampbell123)
|
|
- Fix setcap on systems with split /usr (Jookia)
|
|
- Fix building with --disable-core-inline (Jookia)
|
|
- Fix building not finding fluidsynth (Jookia)
|
|
- Fix some NetBSD build issues
|
|
(Jookia, with patch from Nia)
|
|
- Fix minor graphical issues in mapper GUI (aybe)
|
|
- Removed --disable-core-inline (Jookia)
|
|
- Swap SDL2 XInput axes by default for a better
|
|
out of the box experience (aybe)
|
|
- SDL1 XInput is now enabled by default for
|
|
a better out of the box experience (aybe)
|
|
- add set of cga shaders from dosbox staging (aybe)
|
|
- Updated mt32emu code to latest(2.7.0).(maron2000)
|
|
Also, added config option "mt32.engage.channel1"
|
|
(Refer to https://github.com/munt/munt for details)
|
|
- Fix missing line in printouts (Issue #3569)
|
|
(maron2000)
|
|
- Adjust Int 11 return value to better match real
|
|
BIOSes. (Allofich)
|
|
- Limit the "always return bit 6 of port 61h as set
|
|
for PC" change to only apply to early PC types
|
|
(MDA, CGA or Hercules). (Allofich)
|
|
- Integrated SVN commits (Allofich)
|
|
- r4476: Preserve last error code when no error
|
|
occurs.
|
|
- r4477, r4478: Drive system improvements.
|
|
- r4479: Correct handling of invalid encodings of
|
|
the BOUND instruction.
|
|
- r4480: Some confirmed DOS behaviors and minor
|
|
cleanup.
|
|
- r4481: Push registers for most DOS function calls;
|
|
prevents a bug in UNLZEXE from causing a crash, and
|
|
maybe helps other buggy programs and unusual cases.
|
|
Use real addressing to support stack pointer wraparound.
|
|
- Fix Opl3! Duo and Opl2 Audio board audio playback on
|
|
unix (stengun)
|
|
- Fix Japanese input related issues (nanshiki)
|
|
- Fix START command only ever opens first file
|
|
(NebularNerd, darac-10, aybe)
|
|
- Win32 logging console (aybe)
|
|
- add 'Debug/Clear logging console' menu entry
|
|
- ensure main window stays above it when shown
|
|
- Fix overflow in mapper info on SDL2 builds (aybe)
|
|
- Enable OpenGL output in MinGW builds again (maron2000)
|
|
- Fixed to display IME marked text in SDL2 version on
|
|
macOS (nanshiki)
|
|
- Fix allocation of IDE slots when mounting images by
|
|
IMGMOUNT (maron2000)
|
|
- Increase of sprintf buffer size in Program::WriteOut()
|
|
(caiiiycuk)
|
|
- Fix unexpected behavior of swapping multiple CD images
|
|
(maron2000)
|
|
- Fixed build on NetBSD and FreeBSD (Jookia)
|
|
- Updated FFMPEG video capture to use newer API,
|
|
fix memory leaks, and fix use-after-free bug that
|
|
may have been responsible for occasional crashes
|
|
when using the function. (joncampbell123)
|
|
|
|
2022.09.0 (0.84.3)
|
|
- Added 86PCM support for PC-98 emulation. (nanshiki)
|
|
- Added German language translation. (Link-Mario)
|
|
- Added code page 867 (compatible with Hebrew DOS
|
|
WordPerfect) and 868 (Urdu) for the guest-to-host
|
|
code page conversions. (Wengier)
|
|
- Improved ANSI.SYS detection for the welcome banner
|
|
and CLS command. The command "INTRO WELCOME" will
|
|
re-display the welcome banner without running the
|
|
commands in AUTOEXEC.BAT. (Wengier)
|
|
- Improved IME support on macOS SDL2 build. (Wengier)
|
|
- Improved detection for the Chinese/Japanese/Korean
|
|
keyboard layouts on Windows platform. (Wengier)
|
|
- Improved Windows installer for selecting languages
|
|
for the DOS emulator. (Wengier)
|
|
- Improved config option "file access tries" for the
|
|
Linux and macOS platforms. (Wengier)
|
|
- Fixed SafeDisc 2 check for Red Alert 2 by renaming
|
|
the IDE CD-ROM device. (rderooy & psyraven)
|
|
- Fixed problem when inputting characters with call
|
|
INT21/AH=3Fh in PC-98 mode. (nanshiki)
|
|
- Fixed hang on zip-mounted drives and minor bug on
|
|
the DOS file-read code. (tbr)
|
|
- Fixed file copying problem with Windows 9x install
|
|
at the end of the DOS-based Setup. (Wengier)
|
|
- Fixed command like "IF NOT EXIST D:\NUL ..." not
|
|
working if the drive does not exist. (Wengier)
|
|
- Fixed that pasting text from clipboard via mouse
|
|
may not work properly in some cases. (Wengier)
|
|
- Fixed the mouse scrolling wheel not working with
|
|
CTMOUSE 2.1's "CTMOUSE /O" in guest DOS. (Wengier)
|
|
- Fixed window transparency setting not working in
|
|
macOS SDL1 build. (Wengier)
|
|
- Fixed macOS small display issue with the in-tree
|
|
SDL2 library by applying SDL updates. (Wengier)
|
|
- Fixed menu option "Always on top" to work with the
|
|
in-tree SDL2 library on macOS. (Wengier)
|
|
- Fixed the terminal mess-up issue with -display2
|
|
option on Linux and macOS platforms. (Wengier)
|
|
- Fixed OpenGL output options not working in Windows
|
|
ARM32/ARM64 builds. (Wengier)
|
|
|
|
2022.08.0 (0.84.2)
|
|
- Fill in PC-98 BIOS data area byte value indicating
|
|
CPU type (whether 8086, 286, 386 or higher)
|
|
(Wengier), fill it in at startup (joncampbell123).
|
|
- CHOICE now supports breaking and errors on end of
|
|
file or pipe instead of freezing DOSBox-X. (Jookia)
|
|
- Fixed debugger commands parsing numbers wrong. (Jookia)
|
|
- Fixed DIR crashing on volumes with more than
|
|
999,999,999,999 bytes of free space. (Jookia)
|
|
- Switched to year.month.patch versioning (Jookia)
|
|
- Fix NE2000 panicking if packets are queued too fast.
|
|
(kcgen, Jookia)
|
|
- Fix ISO image format detection to support pure
|
|
UDF formatted images, meaning that the image
|
|
lacks any ISO 9660 features and contains only
|
|
UDF. (joncampbell123).
|
|
- Added support for UDF filesystem to ISO image
|
|
handling. It is enabled by default if emulating
|
|
MS-DOS 7.10 (aka Windows 98) or higher.
|
|
(joncampbell123).
|
|
- Added code to detect Rock Ridge according to the
|
|
System Use Sharing Protocol standard, and to
|
|
read the SUSP entries correctly for the alternate
|
|
name, if enabled. (joncampbell123)
|
|
- Updated ISO MSCDEX drive emulation to scan the
|
|
available volumes in the ISO image rather than
|
|
assume the first volume, which makes Joilet
|
|
support possible if long filenames are enabled
|
|
and the DOS version is 7.0 or higher. (joncampbell123).
|
|
- Add IMGMOUNT -o option for ISO filesystem support
|
|
to enable/disable Joliet extensions, which is a
|
|
Microsoft extension to ISO 9660 where long names
|
|
encoded using Unicode UCS-16 exist as a supplementary
|
|
volume in the ISO image and are used by Windows 95
|
|
and higher to support long filenames on CD-ROM.
|
|
Added support for reading the Joliet volume and
|
|
providing them for both the 8.3 and long filename
|
|
APIs in DOS. (joncampbell123).
|
|
- Add IMGMOUNT -o option for ISO filesystem support
|
|
to enable/disable Rock Ridge long filename support.
|
|
The option is -o rr=1 to enable and -o rr=0 to
|
|
disable. (joncampbell123).
|
|
- Fixed 8.3 name generations on ISO drives with Rock
|
|
Ridge extension. The ISO drives can be refreshed
|
|
via RESCAN command like other drives. (Wengier)
|
|
- SDL_Net support is available for HX-DOS builds,
|
|
similar to other builds. Packet driver is needed
|
|
for network capability in DOS. (Wengier)
|
|
- Fixed line endings when copying to shared clipboard
|
|
(e.g. CLIP$) in non-Windows platforms. (Wengier)
|
|
- Fixed problems with SDL1 Windows builds in which
|
|
the user had to type the Fullscreen mapper shortcut
|
|
twice. It seems a SDL1 library function that is
|
|
used to indicate ignoring or adding a class of
|
|
events also liked to flush the event queue. This
|
|
is called on mode change. This caused lost
|
|
keystrokes, leaving the mapper the impression that
|
|
those keys were still held down. (joncampbell123).
|
|
- Fixed PC-98 mode MS-DOS 7/Windows 9x boot disk's
|
|
80386 CPU check. (Wengier)
|
|
- Added support for auto-converting non-image drives
|
|
(such as mounted local drives) to disk images, so
|
|
that they will be visible when booting into guest
|
|
systems. A config option "convertdrivefat" (in
|
|
[dosbox] section) is added to toggle this setting,
|
|
or you can toggle via BOOT command's -convertfat
|
|
(or -convertfatro option for read-only access) and
|
|
-noconvertfat options. There're also config options
|
|
"convert fat free space" (in [dosbox] section) and
|
|
"drive z convert fat" (in [dos] section) to control
|
|
free space (in MB; 0 means read-only) and whether
|
|
to also convert virtual drive Z:. Much of the code
|
|
is imported from DOSBox Pure, with added support
|
|
for PC-98 HDI and code page conversions. (Wengier)
|
|
- Added menu option "Save to disk image" (under drive
|
|
letter in "Drive" menu) to save a mounted non-FAT
|
|
drive to selected disk image (IMG/HDI). (Wengier)
|
|
- Added the "Limit disk transfer speed" menu group
|
|
(under "DOS") to toggle the hard & floppy disk data
|
|
rate function. Also moved "Quick launch program..."
|
|
menu from "DOS" menu to "Main" menu. (Wengier)
|
|
- Added code pages 856 (Hebrew) and 859 (Latin 9) for
|
|
the guest-to-host code page conversions. (Wengier)
|
|
- Added config option to allow create of temporary
|
|
devices for piping operations when a temporary DOS
|
|
path is not available. (Wengier)
|
|
- Added support for ATAPI raw sector reading with
|
|
READ CD command. (schellingb)
|
|
- Report bad sectors recorded in raw CD images as
|
|
ATAPI read errors. (schellingb)
|
|
- You can use CONFIG -set langcp=... to change the
|
|
current language along with the embedded code page,
|
|
or CHCP nnn:... to specify a language file as well,
|
|
e.g. "CHCP 932:" or "CHCP 932:ja_JP" for Japanese
|
|
code page and language file. Also improved -langcp
|
|
option for SBCS code pages, and Windows installer
|
|
will additionally set keyboard layouts for the
|
|
selected languages. (Wengier)
|
|
- Changed menu option "Restart DOSBox-X with language
|
|
file..." to "Load language file..." for loading
|
|
language files without rebooting DOSBox-X, unless
|
|
a guest system is currently running. (Wengier)
|
|
- Imported the more recent MBR code from FreeDOS to
|
|
avoid the "boot menu" as in older code. (Wengier)
|
|
- When changing TTF font, DOSBox-X will try to show
|
|
the number of missing characters in the new TTF
|
|
font (if any). (Wengier)
|
|
- Fixed color becoming darker after changing TTF font
|
|
multiples times in TTF output. (Wengier)
|
|
- Fixed display of individual/total file sizes with
|
|
DIR command when they are very large. (Wengier)
|
|
- Fixed non-US code page conversions for mounted FAT
|
|
drives. (Wengier)
|
|
- Fixed incorrect message displays in Configuration
|
|
Tool and Mapper Editor when booting into guest
|
|
systems with language files. (Wengier)
|
|
- Fixed possible "Path not found" bug when switching
|
|
to code page 950 from another code page. (Wengier)
|
|
- Fixed creating directories may not work properly
|
|
for overlay drives on Windows systems. (Wengier)
|
|
- Fixed -set and -get options of CONFIG command when
|
|
there are spaces in property names, without having
|
|
to prepend the section names. For example, command
|
|
CONFIG -get "synchronize time" is supported just
|
|
as CONFIG -get "dosbox synchronize time". Similar
|
|
for -SET option when launching DOSBox-X. (Wengier)
|
|
0.84.1
|
|
- Added dosbox(-x).conf option to enable workaround
|
|
for errant DOS programs that set the TF (trap flag)
|
|
and then crash. Added code to DOS kernel INT 01h
|
|
handler to clear TF flag if instructed to by the
|
|
dosbox(-x).conf setting which can prevent such
|
|
errant programs from crashing. Needed for 1996 demo
|
|
"Dyslexia" by Threesome. (joncampbell123)
|
|
- Fix RETF instruction handling to only modify the
|
|
low 16 bits of ESP in real mode, even if the
|
|
immediate value for RETF is a large value like
|
|
FFFEh (fix for Finster by Mad Scientists). Prior
|
|
to this fix, it was possible to increment the
|
|
upper 32 bits of ESP from real mode using a
|
|
normal 16-bit RETF with a very large immediate
|
|
value. This fix removes the need for the ENTER
|
|
masking dosbox(-x).conf option entirely and allows
|
|
Finster to run without it. (joncampbell123).
|
|
- Added dosbox(-x).conf option to control whether the
|
|
ENTER instruction masks the stack pointer to 64KB
|
|
if the stack segment is 16-bit, which is off by
|
|
default because real Intel processors do not do
|
|
that. (joncampbell123).
|
|
- Added dosbox(-x).conf option that can instruct EGA/
|
|
VGA emulation to ignore the display blanking bit in
|
|
the sequencer registers. Some games appear to have
|
|
bugs in their VGA programming code that can
|
|
accidentally set that bit and therefore show
|
|
nothing on screen. Fix for 1996 game "Finster" by
|
|
Mad Scientists. The game appears to make this
|
|
programming mistake on any fork of DOSBox
|
|
including DOSBox-X, and is reported to also make
|
|
the same mistake on other emulators like 86box.
|
|
However most forks of DOSBox have a matching bug
|
|
in their VGA emulation that allows the blanked
|
|
display to appear normally regardless of that
|
|
register bit unless run with machine=vgaonly.
|
|
It's unclear if there is anything about DOSBox
|
|
or DOSBox-X emulation that causes the game to
|
|
misprogram the registers. (joncampbell123).
|
|
- If guest uses ENTER instruction from 16-bit code
|
|
with 66h (32-bit operand) prefix, and the CPU is
|
|
in real mode or the stack segment is 16-bit, mask
|
|
stack pointer with 0xFFFF. This fixes 1996 game
|
|
"Finster" by Mad Scientists (joncampbell123).
|
|
- DOSBox-X will now search for resource files such as
|
|
fonts and translations in the resource directory (
|
|
C:/DOSBox-X in Windows, /usr/(local/)share/dosbox-x
|
|
in Linux, and dosbox-x.app/Contents/Resources in
|
|
macOS) in addition to other locations. (Wengier)
|
|
- Updated DOSBox-X's integration device to version
|
|
1.0.1, adding API calls such as DOSBox-X's version
|
|
number and platform, and some DOS-related status
|
|
such as DOS version number. (Wengier)
|
|
- Improve the HX-DOS build package, including the
|
|
TTF output support and accessory files. (Wengier)
|
|
- Use long double for internal event scheduling
|
|
if available, to improve accuracy (joncampbell123).
|
|
- Fix remaining SDL2 Windows problems by adding
|
|
missing break statement above window event
|
|
handler. (joncampbell123).
|
|
- Move "Always on top" menu option from "Video" to
|
|
"Main" menu, also enabled for Windows/macOS SDL2
|
|
builds when possible. (Wengier)
|
|
- Add workarounds for SDL2 builds to avoid problems
|
|
with window resize, menu update, and restore
|
|
events that sometimes caused the emulator to hang
|
|
on startup in Windows. (joncampbell123).
|
|
- Add "Set transparency..." and "Set text in title
|
|
bar..." menu options under "Video" to change window
|
|
transparency and title bar text. (Wengier)
|
|
- Add special properties to CONFIG command including
|
|
"system" and "version". (Wengier)
|
|
- Fix DOS 8.3 filename generations when there are
|
|
special characters in the filenames. (Wengier)
|
|
- Fix creation of disk images with spaces using the
|
|
"Create blank disk image..." menu option. (Wengier)
|
|
- Fix IMGMAKE to provide executable code in MS-DOS
|
|
partition or floppy disk boot sector following
|
|
the BPB, that prints "This is not a bootable disk"
|
|
instead of leaving zeros that lead the CPU astray
|
|
and possibly hang the system in the event anything
|
|
tries to boot the partition (joncampbell123).
|
|
- Fix emulator segfault on invalid encoding of
|
|
BOUND instruction (joncampbell123).
|
|
- Address auto-centering on mode change complaints
|
|
by making the "-" setting of windowposition the
|
|
default. (joncampbell123).
|
|
- Added MinGW-lowend SDL2 build, which is compatible
|
|
with Windows XP. Also updated the build selection
|
|
page for Windows installers. (Wengier)
|
|
- Fix windows transparency during TTF output switch
|
|
in Windows SDL2 builds. (Wengier)
|
|
- Fix SDL2 Windows builds to flag a resize as not
|
|
user initiated only if the presence of the menu
|
|
bar changes. This fixes a problem where SDL2
|
|
builds did not acknowledge window resize events
|
|
at all. (joncampbell123).
|
|
- Fix FluidSynth weird sound issue in 32-bit Visual
|
|
Studio SDL2 build. (Wengier)
|
|
- Fluidsynth: Fix uninitialized conditional object
|
|
init in Windows builds (joncampbell123).
|
|
- Linux/X11: Add an X11 error handler function to
|
|
handle the occasional X11 error that can happen
|
|
within the SDL2 library if certain events, like
|
|
window resize, occur too frequently. The custom
|
|
error handler logs the error but does not abort
|
|
the emulator like the default one would.
|
|
(joncampbell123).
|
|
- Fix SDL2 builds with output=surface not to render
|
|
if the window at any point is too small. Resizing
|
|
the window below the minimum supported by the
|
|
DOS screen will not longer trigger segfaults or
|
|
assertion failures. Issue #3348. (joncampbell123).
|
|
- Fix IME not working on Windows when -langcp option
|
|
is used to load a language with DBCS codepage, or
|
|
in 32-bit MinGW lowend SDL1 build. (Wengier)
|
|
- Fixed INT 10h failing to fully clear Tandy video
|
|
memory when entering 16-color graphics modes.
|
|
(joncampbell123).
|
|
- Fixed missing/NULL INT 1Fh interrupt vector with
|
|
CGA/PCjr/Tandy machine types. DOS games that print
|
|
to screen using INT 10h in graphics modes can now
|
|
print extended (>=128) character codes correctly.
|
|
This fixes "BushBuck: A Treasure Hunt" and enables
|
|
it's rather odd Tandy detection routine to work
|
|
with machine=tandy. (joncampbell123).
|
|
- Disney Sound Source: Fix problems between Disney
|
|
sound source and parallel port emulation. Fix the
|
|
code to enable Disney Sound System emulation either
|
|
by disney=true (DOSBox SVN compatible) or
|
|
parallel1=disney (The DOSBox-X way). (joncampbell123).
|
|
- DOS SHELL: Change shell command parsing to make
|
|
unusual combinations of command plus trailing
|
|
command possible such as ECHO. ECHO; ECHO: ECHO[
|
|
ECHO] ECHO\ ECHO/ ECHO" ECHO+ (issue #3503).
|
|
(joncampbell123).
|
|
- DIR command supports more sorting methods including
|
|
"DIR /OGD", "DIR /OGE", and "DIR /OGS". (Wengier)
|
|
- Support for BDF and PCF bitmap fonts for DOS/V
|
|
functions, such as the free WenQuanYi bitmap font
|
|
(bundled for displaying CJK characters). (Wengier)
|
|
- EGA: Add machine type to emulate 200-line (CGA
|
|
compatible) EGA display mode, machine=ega200.
|
|
All text modes have 8x8 character cells, use CGA
|
|
compatible video timing, and the 640x350 modes
|
|
are not available. Fix EGA display offset register
|
|
usage to properly work with alphanumeric text
|
|
mode when "word mode" is turned off. This fixes
|
|
IBM demonstration program "Fantasy Land".
|
|
(joncampbell123).
|
|
- IDE: Remove extra state from IDE controller that
|
|
is managed by the drive. The ATA-1 standard seems
|
|
to say that status and drive/head registers on
|
|
read back always come from the ATA device.
|
|
(joncampbell123).
|
|
- IDE: If ATA device is busy, all IDE registers
|
|
return the status register and BSY bit according
|
|
to ATA-1 standard (joncampbell123).
|
|
- IDE ATAPI CD-ROM: Add ATAPI command BEh READ CD.
|
|
This command is like the 28h/A8h READ command but
|
|
specific to the CD/CD-ROM format and allows reading
|
|
the various sector types including data sectors and
|
|
CD audio. Windows NT 4.0 requires this, or else it
|
|
treats the CD-ROM drive like a non-working device.
|
|
(joncampbell123).
|
|
0.84.0
|
|
- CMOS century register now aliased to register
|
|
32h and 37h to appease Windows 2000, which assumes
|
|
the century is stored there and will complain
|
|
about invalid date/time otherwise (joncampbell123).
|
|
- Treat IDE command E7h (FLUSH CACHE) as a no-op
|
|
so that the common use of it from Windows 2000
|
|
doesn't spam your log file (joncampbell123).
|
|
- BIOS: At post, if DOS kernel was active and the
|
|
DOS Shell was still running, initiate a proper
|
|
system reset event. Some software, including the
|
|
WINNT.EXE install program for Windows NT, like to
|
|
restart the system by JMPing to the BIOS POST
|
|
entry point. Prior to this fix, doing that from a
|
|
DOS program caused instability with mounted images
|
|
and the DOS shell due to recursion. (joncampbell123).
|
|
- Fix FPU implementation for aarch64 cores (cimarronm)
|
|
- Fixed INT 10h and DAC palette mapping to resolve
|
|
incorrect colors with Hercules graphics mode when
|
|
a game calls INT 10h to set video mode after setting
|
|
it up. This resolves the incorrect blue on black
|
|
color map for Grand Prix by Accolade (joncampbell123).
|
|
- Add recursive mkdir_p() directory creation so that
|
|
overlay filesystem support can correctly create
|
|
a subdirectory of any depth, instead of only one
|
|
level deep from an existing directory on disk.
|
|
(joncampbell123)
|
|
- Add dosbox(-x).conf option "isapnpport" to control
|
|
whether the ISA Plug & Play I/O port is presented
|
|
to the guest. Setting is "true", "false", or "auto".
|
|
"auto" means to enable if PnP BIOS is enabled.
|
|
Previously this port was always present even if
|
|
the PnP BIOS was not. Some operating systems,
|
|
including Windows NT/2000/XP, will enumerate ISA
|
|
Plug & Play hardware by themselves whether or not
|
|
the PnP BIOS is present. (joncampbell123)
|
|
- Fix FPU operations using the top of stack on
|
|
32-bit VS builds (cimarronm)
|
|
- Add IDE ATAPI command MECHANISM STATUS for
|
|
Windows NT 4.0 because that system seems
|
|
to want to know if your CD-ROM drive is a
|
|
CD changer (joncampbell123)
|
|
- IDE Plug & Play resource descriptor changed to use
|
|
2-byte structure for listing IRQ resource instead of
|
|
3 bytes. This (for some reason) fixes problems with
|
|
the IDE driver in Windows NT 4.0, Windows 2000, and
|
|
Windows XP and allows them to boot properly.
|
|
(joncampbell123)
|
|
- INT 13h extensions function 48h is supposed to
|
|
return physical geometry, not the logical geometry
|
|
normally returned by function 08h. This means for
|
|
IDE devices, to return the geometry the IDE controller
|
|
is using. (joncampbell123)
|
|
- Enhanced the Mapper Editor interface. The Mapper UI
|
|
has been greatly improved. (aybe)
|
|
- Add IDE ATAPI command MECHANISM STATUS for Windows
|
|
NT 4.0 because that system seems to want to know if
|
|
your CD-ROM drive is a CD changer. (joncampbell123)
|
|
- Fix IDE devices to start up with the drive ready
|
|
bit set for OSes that expect it when probing IDE
|
|
devices. This allows the Linux kernel to see IDE
|
|
ATA drives emulated by DOSBox-X. (joncampbell123)
|
|
- Fix IDE ATAPI emulation to correctly handle CD
|
|
READ across one or more DRQ block transfers. Use
|
|
block size given by guest in consideration of DRQ
|
|
block size, which allows ATAPI CD-ROM emulation to
|
|
work properly with the Linux kernel. (joncampbell123)
|
|
- Add debug command to show PC-98 color palettes.
|
|
Corrected typo. (joncampbell123)
|
|
- Add support for PC-98 monochrome graphics mode.
|
|
(joncampbell123)
|
|
- IDE emulation now handles implementation events per
|
|
IDE device instead of per IDE controller, which
|
|
may resolve IDE controller issues with some guests.
|
|
(joncampbell123)
|
|
- Added PC-98 GDC drawing commands, which is
|
|
based on Neko Project II source code (nanshiki)
|
|
- Added PC-98 LIO BIOS interface, which is based on
|
|
Neko Project II source code (nanshiki)
|
|
- INT 21h AH=31h Terminate And Stay Resident: If the
|
|
program called INT 21h to free its own PSP segment,
|
|
reassign the block back to the program as allocated
|
|
and then resize as expected. Needed for PC-98 game
|
|
"Yu No" in which PLAY6.EXE, one of the resident
|
|
drivers used for music, does just that. (joncampbell123)
|
|
- Add a hack to enable read access to port 0xa460 on PC-98 which
|
|
returns Sound ID to detect the sound board available.
|
|
Note that the current hack returns Sound ID of PC-9801-86 board
|
|
regardless of the board selected to emulate. (maron2000)
|
|
- Adds WINCHECK to list of programs which should not
|
|
return a valid installation check for WinOldAp
|
|
(AX=1700h/int2fh) so it doesn't mistakenly believe
|
|
Windows is running (cimarronm)
|
|
- Add minimal support for IDE SET FEATURES command EFh.
|
|
(joncampbell123)
|
|
- Fix CMPXCHG8B to change only the ZF flag, instead of
|
|
changing ZF with other flags in an undefined state
|
|
afterwards. This fixes problems with the Windows 2000
|
|
kernel booting up and cputype=pentium (though I am
|
|
unable to get past the INACCESSIBLE_BOOT_DEVICE error).
|
|
(joncampbell123)
|
|
- Updates XADD instruction to set appropriate flags
|
|
(cimarronm)
|
|
- Updates to FPU to handle opcode size prefix (66h)
|
|
on FSTENV/FLDENV/FSAVE/FRSTOR instructions (cimarronm)
|
|
- Update FLD constant FPU instructions to more
|
|
accurately match FPU implementations (cimarronm)
|
|
- Fixed dynamic_dynrec being displayed as dynamic_x86
|
|
in menu, and PREFETCH instruction breakage in the
|
|
dynamic core. (Jookia)
|
|
- Fixed crash if no dynamic cores available (Jookia)
|
|
- Fixed TTF mode breaking a guest not running the
|
|
DOS kernel. (Jookia)
|
|
- Fix DBCS table initialization on reset and
|
|
restart (cimarronm)
|
|
- Fixed some guest systems may not work as expected
|
|
in non-TTF outputs. (Wengier)
|
|
- Fixed IME input not working in MinGW builds, and
|
|
FluidSynth in MinGW-lowend builds. (Wengier)
|
|
- Fixed resizable OpenGL Voodoo window not working
|
|
properly on Windows in previous version. (Wengier)
|
|
- Fixed commands "CHOICE /N /C:123" and "MIXER /GUI"
|
|
not working properly in previous version. (Wengier)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Disable leading directory validity check in
|
|
DOS_FindDevice.
|
|
0.83.25
|
|
- XGA: Do not register XGA I/O ports unless emulating
|
|
S3 chipset (such as machine=svga_s3) (joncampbell123)
|
|
- Menu options "Force scaler" and "Print text screen"
|
|
can now be assigned to keyboard shortcuts from the
|
|
Mapper Editor. (Wengier)
|
|
- Allowed to boot from Toshiba DOS image file for the
|
|
Toshiba J-3100 emulation. (nanshiki)
|
|
- Default S3 machine types now support XGA/SXGA VText
|
|
in DOS/V, in addition to svga_et4000. (nanshiki)
|
|
- Added "j3100backcolor" and "j300textcolor" config
|
|
options (in [dosv] section) to specify background
|
|
and text colors in J-3100 mode. (nanshiki)
|
|
- Added config option "aspect_ratio" (in [render]
|
|
section) which when set will force the specified
|
|
aspect ratio (e.g. 16:9 or 3:2) in the aspect ratio
|
|
correction mode (i.e. aspect=true). A menu group
|
|
"Aspect ratio" is added to "Video" menu for users
|
|
to select or set an aspect ratio, including an
|
|
original ratio option. (Wengier)
|
|
- Added config option "show recorded filename" (in
|
|
[dosbox] section) which when set to true (default)
|
|
will show message boxes with recorded filenames
|
|
when making audio or video captures. (Wengier)
|
|
- Added config option "allow quit after warning" (in
|
|
[dosbox] section) which when set to false DOSBox-X
|
|
will disallow the quit option after displaying a
|
|
warning message. (Wengier)
|
|
- Added config option "turbo last second" (in [cpu]
|
|
section) which allows to stop the Turbo function
|
|
after specified number of seconds. (Wengier)
|
|
- Updated FLAC, MP3, and WAV decoder libraries to the
|
|
latest versions (v0.12.38, v0.6.32, and v0.13.6)
|
|
respectively; per David Reid). (Wengier)
|
|
- Added support for upper case characters (A-Z) for
|
|
AUTOTYPE command. (kcgen)
|
|
- Added /T option for CHOICE command to set a default
|
|
choice as in DOS, e.g. CHOICE /T:Y,3 (Wengier)
|
|
- Added Korean language option in Windows installer.
|
|
Also, language option page will be shown regardless
|
|
of the output option selected. (Wengier)
|
|
- Add stub INT 10h handler at F000:F065 if
|
|
machine=vgaonly and using a VGA ROM BIOS image.
|
|
The IBM VGA ROM BIOS image points INT 42h at that
|
|
fixed address and calls it for any function it does
|
|
not understand. (joncampbell123)
|
|
- Set int33 event status bit 8 when passing absolute
|
|
mouse coordinates, which is useful in emulation or
|
|
virtualization environments where the mouse may be
|
|
integrated with the host cursor. (javispedro)
|
|
- Added support for Pentium Pro hinting NOPs and
|
|
related multi-byte NOPs. (Jookia)
|
|
- Updated HX DOS Extender to latest version 2.19 for
|
|
HX-DOS builds. (Wengier)
|
|
- DOSBox-X returns 1 instead of 0 when E_Exit occurs
|
|
or unit tests fail. (Wengier)
|
|
- Fixed built-in IPX and Modem emulation unavailable
|
|
in MinGW builds. (Wengier)
|
|
- Fixed -machine command-line option (as listed by
|
|
"INTRO USAGE" command) not working. (Wengier)
|
|
- Fixed lockup in classic Jumpman. (maron2000)
|
|
- Fixed color in some modes under x86-64 macOS SDL2
|
|
builds. (myon98)
|
|
- Fixed extra INT 10h call during BIOS screen. The
|
|
extra call caused crashes when combined with a ROM
|
|
image of the stock IBM VGA BIOS. (joncampbell123)
|
|
- Fixed fscale FPU operation and updated FPU status
|
|
word. Also fixed FPU stack value log messages on
|
|
x86-based builds. (cimarronm)
|
|
- Fixed bug that OpenGL Voodoo window may not appear
|
|
correctly if the DOSBox-X window was previously in
|
|
full-screen mode in some builds. DOSBox-X will now
|
|
ensure a switch to window mode (or maximized window
|
|
mode) in this case. Also fixed some menu options
|
|
including rebooting DOSBox-X while Voodoo emulation
|
|
is currently active. (Wengier)
|
|
- Fixed crash when switching to dynamic_rec core from
|
|
menu when dynamic_x86 is also available. Also fixed
|
|
the dynamic_rec core may not be displayed correctly
|
|
in the menu when a language file is used. (Wengier)
|
|
- Fixed Windows resource information. (Wengier)
|
|
- Fixed a buffer overflow when launching a program.
|
|
(Jookia)
|
|
- Fixed bug where DOS IOCTL would call device control
|
|
channel on devices which did not advertise support
|
|
for IOCTL. (cimarronm)
|
|
- Clean up of DOS device and attribute flag usage
|
|
(cimarronm)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Use real pointer with font data for reading
|
|
characters. Also ignore page number for modes with
|
|
only one page.
|
|
0.83.24
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.24.html
|
|
- PC-98: Search for FONT.ROM in resources directory
|
|
in addition to the working directory. (bsdf)
|
|
- Add S3 Vision964 and Vision968, based on existing
|
|
support for the Vision864/868 chips (rderooy).
|
|
- APM BIOS: When the guest calls the APM BIOS to go
|
|
into suspend or standby mode, emulate a suspended
|
|
or standby mode. Spacebar resumes the guest machine.
|
|
Blank the display (if VGA/SVGA machine type) upon
|
|
suspend/standby and unblank upon leaving it.
|
|
(joncampbell123)
|
|
- APM BIOS: Add dosbox-x.conf option to control
|
|
whether the power button triggers a suspend or
|
|
standby event. (joncampbell123)
|
|
- APM BIOS: Add power button mapper event, tie
|
|
power button to APM BIOS, return power button as
|
|
APM suspend event, add code to APM BIOS to handle
|
|
suspend and resume events. Windows 98 no longer
|
|
complains about the inability to suspend or go to
|
|
standby. (joncampbell123)
|
|
- APM BIOS: Limit debug logging of APM BIOS function
|
|
AH=05h (CPU IDLE) because Windows 98 likes to call
|
|
that function way too often. Once a millisecond, in
|
|
fact! The log spam makes it difficult to see
|
|
anything important scroll by while debugging.
|
|
(joncampbell123).
|
|
- Revise S3 Trio64 XGA line drawing code to
|
|
add comments, and obey the "skip last pixel" bit
|
|
so that the Windows drivers can better draw polygon
|
|
line segments. This fixes broken XOR polylines in
|
|
Windows 3.1 and Microsoft Word 2.0. (joncampbell123)
|
|
- Add S3 ViRGE accelerated XGA line drawing function.
|
|
Windows 3.1 through Windows 98 can now draw lines
|
|
with hardware acceleration. (joncampbell123)
|
|
- Merge code to help preserve long filename when
|
|
older program writes/overwrites the 8.3 filename.
|
|
- Change "fpu" config setting to an enumeration
|
|
that still accepts true and false, but now also
|
|
accepts auto, 287, and 387. It is now possible to
|
|
specify fpu=287 and cputype=386 to emulate a 386
|
|
paired with a 287 chip as is said to be how early
|
|
386 Compaq systems were wired, for example.
|
|
(joncampbell123)
|
|
- 3Dfx Voodoo window is now resizable (inc. maximized
|
|
window) when using OpenGL mode, in addition to the
|
|
software mode. (MartyShepard, kekko, Wengier)
|
|
- Menu options "CJK: Switch between DBCS/SBCS modes",
|
|
CJK: Auto-detect box-drawing characters", and "Reset
|
|
color scheme" (in "Video" -> "TTF options") are now
|
|
assignable in Mapper Editor. (Wengier)
|
|
- The "colors" config setting now allows a leading
|
|
"+" character to stay the specified color scheme when
|
|
switching from another output. (Wengier)
|
|
- SETCOLOR command allows a syntax like "SETCOLOR 1 +"
|
|
to return the specified color number to the preset
|
|
value (as specified by "colors" setting). (Wengier)
|
|
- When using TTF output, DOSBox-X will dim the topmost
|
|
line when the window is inactive in full-screen or
|
|
menuless mode as in vDosPlus. (emendelson)
|
|
- IMGMOUNT command now accepts wildcards, such as
|
|
"IMGMOUNT A disk*.img" to mount image files matching
|
|
the given pattern. (Wengier)
|
|
- Added CuteMouse wheel mouse extension so that DOS
|
|
programs such as DOS Navigator 2 can make use of it.
|
|
It is enabled when mouse wheel movement conversion is
|
|
currently disabled. (FeralChild & Wengier)
|
|
- Implemented basic support for VMware mouse protocol
|
|
so that when used together with e.g. the VMware mouse
|
|
driver for Windows 3.x, the mouse will be seamlessly
|
|
integrated with the host system, and can enter/exit
|
|
the DOSBox-X window without having to capture/release
|
|
the mouse. Config option "vmware" is added (in [dos]
|
|
section) which allows to disable VMware mouse guest
|
|
integration. (FeralChild, Wengier, joncampbell123)
|
|
- When country number is not specified and cannot be
|
|
obtained from system, DOSBox-X will try to map the
|
|
keyboard layout to country number. The country list
|
|
is also extended. (Wengier & FeralChild)
|
|
- Added "-nolog" command-line option to disable logging
|
|
output completely, and "Disable logging output" menu
|
|
option in "Debug" menu to toggle this. (Wengier)
|
|
- Updated EGA?.CPX and KEYBOARD.SYS/KEYBRD?.SYS to the
|
|
latest version from FreeDOS. The CPX files now appear
|
|
in CPI directory of Z drive, which can be replaced by
|
|
files provided by the user. (FeralChild & Wengier)
|
|
- Fix lockup when printing in dBase IV. (Wengier)
|
|
- Fix crash/restart when running Wing Commander with
|
|
EMS memory enabled. (grapeli)
|
|
- Fix possible buffer overflow issue that may happen
|
|
in certain conditions. (maron2000)
|
|
- Fix NewWadTool 1.3 unable to play music by ensuring
|
|
that periodic timer interrupt is triggered on every
|
|
cmos_timerevent. (cimarronm)
|
|
- Fix handling of some DOS file I/O device drivers that
|
|
expect a pre-filled input-buffer on READ function and
|
|
also do not like to be called for every single byte
|
|
in that buffer may not work correctly. (leecher1337)
|
|
- Fix FPU emulation to use 8087 FENI/FDISI behavior
|
|
when cputype=8086 or cputype=80186. (joncampbell123)
|
|
- Fix FPU emulation to correctly emulate 80287 -/+inf
|
|
compare behavior even if compiled for x86 targets
|
|
where C_FPU_X86 uses the host FPU. (joncampbell123)
|
|
- Fix audio speech stuttering issue in SpaceQuest 4
|
|
v1.3 using Sound Blaster. (grapeli & rderooy)
|
|
- Fix issue with Lemmings palette swapping not working
|
|
properly. (maron2000 & grapeli)
|
|
- Updated MT32emu to version 2.6.1. (maron2000)
|
|
(Refer to https://github.com/munt/munt for details)
|
|
- Updated DOSMID to version 0.9.6. (Wengier)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Indicate in BIOS memory when keyboard ACK received.
|
|
Fixes Soko-ban Revenge.
|
|
- Fix execution of small COM programs on PCjr machine
|
|
type.
|
|
0.83.23
|
|
- Fixed XGA accelerated rendering for ViRGE emulation
|
|
and 24 bits/pixel display modes. Since Windows drivers
|
|
insist on 24bpp, this is necessary for
|
|
"Truecolor (24-bit)" to display and render correctly.
|
|
- dosbox-x.conf option "vesa vbe 1.2 modes are 32bpp" is
|
|
now "true", "false" or "auto", where "auto" determines
|
|
this setting based on which S3 chipset is being
|
|
emulated. It seems the Windows drivers for ViRGE
|
|
chipsets require 24bpp for truecolor modes, in fact,
|
|
they do not even offer 32bpp as an option. Since
|
|
the Windows 3.1/95/98 drivers use VESA BIOS calls to
|
|
set video modes, this implies that the VESA BIOS on
|
|
ViRGE cards are also making the base modes 24bpp rather
|
|
than 32bpp. Note that the Windows drivers for older S3
|
|
chipsets are perfectly happy to use 32bpp unless you
|
|
select "16.7 million colors (1 Meg)" in Windows 3.1,
|
|
which is the only option in those drivers to offer
|
|
24bpp. To avoid grief with DOSBox-X users, "auto"
|
|
is the default setting.
|
|
- Added basic S3 ViRGE XGA acceleration. It's enough for
|
|
90% of the GDI functions in Windows 3.1 so far.
|
|
- Fixed S3 rectangle XGA accelerated pattern blit, when
|
|
using display memory as the pattern mask source, to
|
|
follow S3 Trio32/Trio64 documentation, instead of the
|
|
DOSBox SVN educated guess, to resolve some edge cases
|
|
where the wrong color is chosen to draw filled rectangles
|
|
in Windows 3.1. This fixes the "basement" in Microsoft
|
|
Creative Writer so that clicking around no longer leaves
|
|
white boxes on the screen.
|
|
- Extend 256-color foreground/background color behavior
|
|
from S3 86c928 to Vision864 and Vision868 as Windows
|
|
95 behavior suggests they handle the hardware cursor
|
|
the same way in 256-color mode.
|
|
- Extend "divide cursor X position by bytes per pixel"
|
|
behavior from S3 86c928 to Vision864 and Vision868
|
|
emulation as well, based on Windows 3.1 video driver
|
|
behavior.
|
|
- Gravis Ultrasound: Most I/O registers except port 3x4
|
|
are intended for 8-bit I/O. If 16-bit I/O occurs to
|
|
such registers, handle as two 8-bit I/O cycles. I
|
|
found something in the Demoscene (1997 demo "Atlantis,
|
|
Deep Like A Sea") that uses a 16-bit I/O write to write
|
|
current channel and register select in one write.
|
|
Prior to this fix, there was no music other than quiet
|
|
popping noises in DOSBox-X.
|
|
- Sound Blaster: Fixed DSP command 0x48 (Set DSP block
|
|
transfer size) to accept block size as BYTES as
|
|
standardized by Creative and convert to SAMPLES
|
|
internally. This fixes stuttering voices in Freddy
|
|
Pharkas when sbtype=sb16. (joncampbell123)
|
|
- Avoid crashes due to assertion failure when media
|
|
keys are pressed (maron2000)
|
|
- Fix CD audio playback failure (cue + mp3) when
|
|
trying to play from pregap sectors. (maron2000)
|
|
- Change default value of mt32.rate to 48kHz to match
|
|
default value of mt32.analog option. (maron2000)
|
|
- Fix a buffer overflow issue in dos.cpp (maron2000)
|
|
0.83.22
|
|
- Added Pentium 3 Processor Serial Number emulation.
|
|
Serial number can be set from dosbox-x.conf or not
|
|
set, in which case it will act as if disabled by the
|
|
BIOS. (joncampbell123).
|
|
- Added Pentium III cputype, added SSE register set,
|
|
added SSE instructions to debugger disassembler,
|
|
added some initial SSE instructions. (joncampbell123)
|
|
- Added some MSRs expected by Linux, Windows, and
|
|
tools like CPU-Z to make them happy. (joncampbell123)
|
|
- Added FXSAVE/FXRSTOR which makes Linux happy with
|
|
Pentium III emulation. (joncampbell123)
|
|
- Allow WRMSR to set time stamp counter, as it is known
|
|
though undocumented a standard since the Pentium
|
|
(joncampbell123).
|
|
- Added debugger command to show global and per-voice
|
|
status of the Gravis Ultrasound emulation. May come
|
|
in handy for programmers who wish to write their own
|
|
GUS routines, and for Trixter who brought up the
|
|
subject of determining whether a program plays music
|
|
with the GUS or treats it like a dumb sound card.
|
|
(joncampbell123).
|
|
- Added debugger command to show SSE register file, and
|
|
to set SSE register contents. (joncampbell123)
|
|
- Added debugger command to show MMX register file, and
|
|
to set MMX register contents. (joncampbell123)
|
|
- Added support for expressions within parenthesis in
|
|
debugger expression handling. (joncampbell123)
|
|
- Added & (AND), ^ (XOR), and | (OR) operators, and
|
|
<< and >> bit shift operators to debugger expression
|
|
handling. (joncampbell123)
|
|
- Added multiply (*) and divide (/) operators to debugger
|
|
expression handling. Order of operations applies, so
|
|
given mixed addition and multiplication, the multiply
|
|
is done first then the result is added. Also added
|
|
support for the modulo (%) operator to the debugger
|
|
expression handling. (joncampbell123)
|
|
- Revised debugger expression handling to correctly
|
|
parse arithmetic operators with order of operations
|
|
in mind. Prior to this fix, consecutive subtraction
|
|
would cause seemingly illogical results, for example
|
|
"10-1-1-1" would yield "9" instead of "7" because
|
|
subtraction was handled in the wrong order. This fix
|
|
also makes mixed addition and subtraction possible.
|
|
NOTICE: Remember that all numbers going in and
|
|
coming out of the expression handler are hexadecimal,
|
|
NOT decimal! (joncampbell123)
|
|
- Fixed simple expression handling in the debugger.
|
|
Revised hexadecimal vs register parsing so that
|
|
hexadecimal numbers that happen to start with
|
|
the name of certain CPU flag registers does not
|
|
cause confusing results. Prior to this fix,
|
|
hexadecimal numbers like "dfe" or "af0" were
|
|
impossible to enter without leading zeros or
|
|
quotes because the parser would confuse the
|
|
first digits with the DF and AF bits of the FLAGS
|
|
register. (joncampbell123)
|
|
- Added menu options "AMD Athlon 600MHz" and "Pentium
|
|
III 866MHz EB" within the group "Emulate CPU speed"
|
|
(under "CPU") for CPU speeds to emulate. (Wengier)
|
|
- Added support for archive, hidden, system attributes
|
|
on mounted local and overlay drives for non-Windows
|
|
platforms by using special file(s). (Wengier)
|
|
- Added config option "special operation file prefix"
|
|
(in [dos] section) to specify an alternative file
|
|
prefix for DOSBox-X's special operations on mounted
|
|
local and overlay drives. (Wengier)
|
|
- Added code page 3021 for the MIK character set used
|
|
by the Bulgarian language (as in FreeDOS). (Wengier)
|
|
- Added language file for the Brazilian Portuguese,
|
|
available from Windows installer. (altiereslima)
|
|
- For piping (|), DOSBox-X will now also try C: drive
|
|
as a temporary piping path if current directory is
|
|
read-only and the environment variable %TEMP% (or
|
|
%TMP%) is not set. (Wengier)
|
|
- For clipboard copy, CR+LF will now be used instead
|
|
of LF on Windows for better compatibility. (Wengier)
|
|
- Disk images are automatically mounted as read-only
|
|
(instead of failing) now if the image files are
|
|
read-only and the users do not explicitly specify
|
|
read-only mode for the disk images. (Wengier)
|
|
- The default value of config option "autofixwarning"
|
|
(in [dos] section) is now "false", and it is now
|
|
changeable via CONFIG command. (Wengier)
|
|
- The default output for Linux SDL1 builds is changed
|
|
from opengl to surface, unlike Linux SDL2 builds
|
|
whose default output remains opengl. (Wengier)
|
|
- Native Windows menus is supported in Windows SDL2
|
|
builds just like Windows SDL1 builds. It is possible
|
|
to force SDL-drawn menus for both Windows SDL1 and
|
|
SDL2 builds at compile time. (Wengier)
|
|
- Setting "windowposition" to "-" in the configuration
|
|
will leave DOSBox-X window position as is instead of
|
|
a specific position or being centered. (Wengier)
|
|
- For printing, the SarasaGothicFixed TTF font will
|
|
also be searched for DBCS code pages. (Wengier)
|
|
- Added config option "showdbcsnodosv" (in the [dosv]
|
|
section) which when set to true enables rendering of
|
|
Chinese/Japanese/Korean characters for DBCS code
|
|
pages in non-DOS/V, non-PC98, and non-TTF mode.
|
|
Video capturing started from TTF output will enable
|
|
DBCS characters when possible. (Wengier)
|
|
- Changing DBCS code pages is supported for standard
|
|
modes (i.e. non-DOS/V, non-PC98 and non-TTF modes)
|
|
using CHCP command. (Wengier)
|
|
- Fixed issues with certain DBCS characters for the
|
|
DOS/V system. (Wengier)
|
|
- Fixed slow blinking text in TTF output. (Wengier)
|
|
- Fixed copying box drawing characters to clipboard
|
|
not working in non-TTF JEGA mode. (Wengier)
|
|
- Fixed background for the Configuration Tool when
|
|
the TTF output is active. (Wengier)
|
|
- Fixed DBCS characters not showing up when capturing
|
|
screenshots in TTF CJK mode, or they do not show up
|
|
properly in the Configuration Tool when "autodbcs"
|
|
is set to "false" in the configuration. (Wengier)
|
|
- Fixed media keys presses by ignoring these keys in
|
|
Windows SDL1 builds. (maron2000)
|
|
- Fixed IOCTL & ASPI interfaces for mounting physical
|
|
CD drives on the Windows platform. (Wengier)
|
|
- Fixed the issue of loading scalers in the previous
|
|
version. A message box will only show up if you
|
|
append "prompt" to the scaler option. (Wengier)
|
|
0.83.21
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.21.html
|
|
- Improved clipboard copying & pasting for different
|
|
code pages including box-drawing characters in DBCS
|
|
code pages. Also, for the J-3100 mode, the selected
|
|
text will now be highlighted when you try to select
|
|
text for copying. (Wengier)
|
|
- Improved IME support for Chinese/Japanese/Korean
|
|
languages on Windows builds. (Wengier)
|
|
- Pausing the emulation will automatically release
|
|
the mouse and prevent mouse capture. (Wengier)
|
|
- For Configuration Tool, a "..." button is added to
|
|
properties which have limited numbers of values so
|
|
that when clicking their possible values will be
|
|
shown in a new dialog and can be selected directly.
|
|
Also, more settings will be applied immediately when
|
|
modified from the Configuration Tool. (Wengier)
|
|
- For Windows SDL1 builds, DOSBox-X will now try to
|
|
prevent the Windows menus from separating into more
|
|
than one lines due to small window width. (Wengier)
|
|
- If a scaler as specified in the config may not work
|
|
as expected and if not forced, DOSBox-X will show a
|
|
a message box asking whether to load it. (Wengier)
|
|
- Config option "pixelshader" now allows a shader file
|
|
name without the .fx extension, or a shader file in
|
|
the current directory. (Wengier)
|
|
- Added support for ENET reliable UDP as an option for
|
|
modem and null-modem emulation. You can enable it
|
|
with "sock:1" option for modems/null-modems that are
|
|
connected with serial ports (COM1-COM9), such as
|
|
"serial1=modem listenport:5000 sock:1" for COM1 to
|
|
listen to port 5000 with reliable ENET UDP instead
|
|
of TCP connection. The feature is ported from DOSBox
|
|
Staging. (sduensin, GranMinigun, kcgen, Wengier)
|
|
- Added new command-line option "-o" for providing
|
|
command-line option(s) if programs(s) are specified
|
|
to start when you launch DOSBox-X. An example:
|
|
dosbox-x program.exe -o "opt1 opt2". (Wengier)
|
|
- Added special properties to CONFIG command including
|
|
"cd", "date", "errorlevel", "random", "time", and
|
|
"lastmount" so that commands like "CONFIG -GET cd"
|
|
and "CONFIG -GET errorlevel" will get current DOS
|
|
directory and ERRORLEVEL value. The returned value
|
|
will also be saved to %CONFIG% variable. (Wengier)
|
|
- Added "Enter Debugger Command" button to "DOSBox-X
|
|
logging output" and "Code overview" windows (from
|
|
"Debug" menu") for users to enter some debugger
|
|
command(s) and see the result. (Wengier)
|
|
- Added debugger commands DATE and TIME to view or
|
|
change DOSBox-X's internal date and time, using the
|
|
same date and time formats as the shell DATE and
|
|
TIME commands, e.g. "TIME 10:11:12". (Wengier)
|
|
- Added config option "badcommandhandler" (in [dos]
|
|
section) which allows to specify a custom error
|
|
handler program before error message "Bad command
|
|
or file name" shows up in the DOS shell. (Wengier)
|
|
- Added config option "stop turbo on key" (in [cpu]
|
|
section) which allows to automatically stop the
|
|
Turbo (fast forward) mode when a keyboard input
|
|
has been detected. (Wengier)
|
|
- Added config option "fat32setversion" (in [dos]
|
|
section) which controls whether DOSBox-X should
|
|
automatically set reported DOS version to 7.0/7.10
|
|
when it's less than 7.0/7.10 and mounting LBA/FAT32
|
|
disk images is requested. It defaults to "ask" so
|
|
that DOSBox-X will ask in this case. (Wengier)
|
|
- Added config option "j3100colorscroll" (in [dosv]
|
|
section) which defaults to "false" and allows the
|
|
J-3100 version of SimCity and VGA version of the
|
|
Toshiba Windows 3.1 to run, whereas CGA/EGA version
|
|
of the latter requires a "true" setting. (nanshiki)
|
|
- Added config options (in "ethernet, slirp" section)
|
|
"tcp_port_forwards" and "udp_port_forwards" for port
|
|
forwarding when using the Slirp backend. (kcgen)
|
|
- Added code pages 737 (Greek) and 775 (Baltic) for
|
|
the guest-to-host code page conversions. (Wengier)
|
|
- Added UTF8 and UTF16 commands to convert UTF-8 and
|
|
UTF-16 text to view in the current code page. For
|
|
example, the command "UTF8 < UTF8TEXT.TXT" will
|
|
output converted text UTF8TEXT.TXT in the current
|
|
code page, and for UTF16 command there are optional
|
|
/BE & /LE options to specify endianness. (Wengier)
|
|
- Added support for DBCS characters located in UNC
|
|
network paths of the form \\COMPUTER\FOLDER\FILE
|
|
on the Windows platform. (Wengier)
|
|
- Added hidden code page 951 for Big5-HKSCS encoding
|
|
or Big5 Unicode-At-On (Big5-UAO) encoding. Config
|
|
option "uao" is added in [ttf] section so that if
|
|
set to "true" code page 951 will use the Big5-UAO
|
|
encoding instead of the Big-HKSCS encoding, the
|
|
latter being the default for CP951. If ChinaSea is
|
|
enabled, ChinaSea characters will be used instead
|
|
of original characters in these encodings. (Wengier)
|
|
- Added -nl option for MOUNT command to automatically
|
|
find the next available drive letter to mount if
|
|
the specified drive is already mounted. This allows
|
|
multiple directories to be mounted when DOSBox-X
|
|
starts with multiple [name] arguments. (Wengier)
|
|
- Added HISTORY command to display or clear command-
|
|
line history for the internal DOS shell. (Wengier)
|
|
- Added ASSOC command to view/change file extension
|
|
associations. You can define a command or program
|
|
to open a file with a specific file extension, e.g.
|
|
"assoc .txt=edit" to open .TXT files with the EDIT
|
|
command when entering the .TXT file name from the
|
|
DOS command line. Wildcards are allowed, such as
|
|
"assoc .*=dir", although in such case exceptions
|
|
including "assoc .com=com", "assoc .exe=exe", and
|
|
"assoc .bat=bat" are probably desired. (Wengier)
|
|
- Commands CHOICE and COUNTRY are external commands
|
|
that appear on the Z drive (Z:/DOS/CHOICE.COM and
|
|
Z:/SYSTEM/COUNTRY.COM respectively) now rather than
|
|
internal shell commands. COUNTRY command now also
|
|
affects thousand and decimal separators. (Wengier)
|
|
- The internal Virtual Drive Z: can now be rescanned
|
|
just like mounted local drives. (Wengier)
|
|
- You can now change most config options in [printer]
|
|
section of the configuration for the virtual printer
|
|
with CONFIG -set commands. (Wengier)
|
|
- Added missing ChinaSea characters in code page 950
|
|
with ChinaSea/Big5-2003 extension enabled. (Wengier)
|
|
- Added support for Bash-shell completion for DOSBox-X
|
|
on non-Windows platforms. (rderooy & FeignInt)
|
|
- Improved DBCS support for DOS commands including
|
|
ATTRIB, ECHO, TYPE, MORE, and TRUENAME. (Wengier)
|
|
- Improved checking of segment limits. (joncampbell123)
|
|
- Mac OS X builds from now on will use an in-tree tool
|
|
to replace dylib references in all executable files.
|
|
XCode install_name_tool is no longer used, it became
|
|
a hypochondriac and is sitting in the corner screaming
|
|
about link edit data that doesn't fill a __LINKEDIT
|
|
segment. It is once again possible to make Mac OS X
|
|
ARM releases and to use dylib files from Brew doing
|
|
so. (joncampbell123)
|
|
- Fix IPL1 partition choice debug message to actually
|
|
show the partition index chosen, not the -partidx
|
|
option variable, which if not given by the user, is
|
|
-1 and was reported as a very large unsigned
|
|
number. (joncampbell123)
|
|
- Fixed command-line options -starttool & -startmapper
|
|
not showing messages from specified language file
|
|
for Configuration Tool and Mapper Editor. (Wengier)
|
|
- Fixed an issue with RENDER_Reset function while
|
|
loading previously saved states. (yetmorecode)
|
|
- Fixed E_Exit "RET from illegal descriptor type 0"
|
|
when running DirectX diagnostic program (dxdiag)
|
|
from a guest Windows 98 system. (Wengier)
|
|
- Fixed "parallel?=file openwith:xxx" not working if
|
|
a file name is not provided. (Wengier)
|
|
- Fixed crash in the following config combination:
|
|
output=ttf, machine=pc98, dosvfunc=true. (Wengier)
|
|
- Fixed Disney sound source connecting to parallel
|
|
port not working in the previous version. (Wengier)
|
|
- Fixed NET command from Windows for Workgroups 3.11
|
|
not working from the internal DOS shell. (Wengier)
|
|
- Fixed MODE command options like "rate" and "delay"
|
|
not working if entered in upper cases. (Wengier)
|
|
- Fixed command-line parameters (when launching
|
|
DOSBox-X) containing Chinese characters in code page
|
|
950 not working in Windows SDL2 builds. (Wengier)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Improve BIOS FDD motor timeout counter, most
|
|
notably for earlier PCs. Fixes a Chinese variant
|
|
of Space Harrier.
|
|
0.83.20
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.20.html
|
|
- Implemented support for Pentium II cputype (with
|
|
the setting "cputype=pentium_ii" in [cpu] section),
|
|
and added Pentium II SYSENTER/SYSEXIT instructions
|
|
to normal core and debugger disassembler. The two
|
|
instructions are supported for Pentium II cputype.
|
|
CPUID for Pentium II will now report stepping 3 and
|
|
model 3 which is a minimum requirement for OSes to
|
|
attempt to use SYSENTER/SYSEXIT. Silencing for
|
|
RDMSR/WRMSR and SYSENTER/SYSEXIT debug messages is
|
|
removed while CPU "debug spew" is silenced by
|
|
default. MSRs related to Intel microcode are added
|
|
because both Linux and Windows ME probe those MSRs
|
|
if Pentium II emulation reports stepping 3 model 3.
|
|
The microcode MSRs are silently ignored. Moreover,
|
|
the MSR register 0x0000001B has been added to
|
|
Pentium II emulation. DOSBox-X does not emulate a
|
|
local APIC but Windows ME assumes that MSR is
|
|
present and reads/writes it on startup if DOSBox-X
|
|
reports itself as a Pentium II. (joncampbell123)
|
|
- Added support for DCGA and Toshiba J-3100 emulation
|
|
modes by importing code from DOSVAXJ3 by nanshiki.
|
|
The J-3100 emulation mode can be enabled with the
|
|
option "dosv=jp" along with a non-off setting of
|
|
"j3100" option in [dosv] section. For example, with
|
|
"j3100=on" or "j3100=auto" (and "dosv=jp") J-3100
|
|
system will be enabled and activated at start. With
|
|
"j3100=manual" (and "dosv=jp") J-3100 system will
|
|
be enabled and not activated at start, but there is
|
|
now a DCGA command to enter DCGA (either English or
|
|
J-3100 DCGA, depending on if J-3100 is enabled)
|
|
mode from other video modes. (nanshiki & Wengier)
|
|
- Added support for unit tests based on Google Test
|
|
framework (gTest/gMock) to ensure code stability.
|
|
Unit tests can be started with command-line option
|
|
"-tests" in the debug builds. Some unit tests are
|
|
ported from DOSBox Staging. (Wengier)
|
|
- Added SERIAL and PARALLEL commands to view/change
|
|
the current configuration of serial/parallel ports.
|
|
Type "SERIAL /?" and "PARALLEL /?" for further info
|
|
about the two commands. Commands like "config -set
|
|
serial?=..." and "config -set parallel?=..." will
|
|
also auto-call these commands. (sduensin & Wengier)
|
|
- Added IMGSWAP command to swap disks for drives.
|
|
e.g. "IMGSWAP D" to swap D: drive to the next swap
|
|
position, and "IMGSWAP A 3" to swap A: drive to
|
|
the 3nd swap position. (Wengier)
|
|
- Added DOS commands including COMP, DISKCOPY, EDLIN,
|
|
FC, FILES, PRINT, and SHUTDOWN (most from FreeDOS)
|
|
to the built-in Z: drive. Updated or recompiled
|
|
EDIT and EDLIN commands to support LFNs. (Wengier)
|
|
- The CAPMOUSE command without a parameter now shows
|
|
whether the mouse is captured/released. (Wengier)
|
|
- The command "config -set" is now case-insensitive
|
|
for property names. Also, if an option cannot be
|
|
changed at run-time, DOSBox-X will ask whether to
|
|
restart itself to apply the new setting. (Wengier)
|
|
- Do not read real-mode data areas from mouse event
|
|
handling if running a protected mode guest OS like
|
|
Windows NT, and disable INT 33h functions when DOS
|
|
kernel is shut down to boot into a guest OS. Moving
|
|
mouse while Windows NT is running should no longer
|
|
cause page faults and crashes. (joncampbell123)
|
|
- The setting "mountwarning = false" will now silence
|
|
more warning messages during mounting. (Wengier)
|
|
- The code page setting of "country" option will now
|
|
be ignored for PC-98, JEGA and DOS/V modes. These
|
|
modes will enforce the desired code page. (Wengier)
|
|
- Added support for loading the ASC16/ASCFONT.15/
|
|
ASC24/ASCFONT.24? font files from the UCDOS/ETen
|
|
Chinese DOS systems for the options "fontxsbcs",
|
|
"fontxsbcs16" and "fontxdbcs24" in [dosv] section
|
|
of the config file for DOS/V systems. (Wengier)
|
|
- Improved auto-detection of box-drawing characters
|
|
when using DBCS code pages. (Wengier)
|
|
- Applied UTF-8 conversions to file browse dialog
|
|
boxes for selecting files containing Unicode
|
|
characters (e.g. CJK characters). (Wengier)
|
|
- For screenshot and MIDI/OPL recording, DOSBox-X
|
|
will now display a message box showing the saved
|
|
file name when the recording has been completed.
|
|
The full paths will also be logged. (Wengier)
|
|
- Added confirmation message while trying to load a
|
|
Direct3D pixel shader which may not be needed or
|
|
may have undesired effect. (Wengier)
|
|
- Added warning message if DOS/V or Japanese PC-98/AX
|
|
machine type is selected and a language file with
|
|
an incompatible code page is specified. (Wengier)
|
|
- Added "AMD K6 166 MHz", "AMD K6 200 MHz" and "AMD
|
|
K6-2 300 MHz" menu options within the menu group
|
|
"Emulate CPU speed" (under "CPU"). (Wengier)
|
|
- Added a TrueType font selection page into Windows
|
|
installer, which will show when TrueType font (TTF)
|
|
output is selected for new installations. (Wengier)
|
|
- Added MMX instruction PSHUFW and added typecasts
|
|
to some MMX instructions in case compilers cannot
|
|
properly shift uint64_t by uint8_t otherwise. Most
|
|
Pentium-level MMX instructions (such as MOVD, MOVQ,
|
|
and EMMS) are added to the debugger disassembler
|
|
and support for the disassembler to represent MMX
|
|
registers. (joncampbell123)
|
|
- Added code to normal core to flush paging TLB
|
|
whenever handing a non-recursive guest page fault.
|
|
The guest OS will likely update the page tables
|
|
to resolve the fault. The Linux kernel will
|
|
constantly get "stuck" whenever you run a command
|
|
without this change. (joncampbell123)
|
|
- Added code to make sure DOS kernel drives and drive
|
|
letters have been unmounted and deallocated before
|
|
booting a guest OS or shutting down DOSBox-X
|
|
(joncampbell123).
|
|
- Added ability to change floppy images with drive
|
|
number (0 or 1) only. (Wengier)
|
|
- Added INT 13h AH=16h, detect disk change. This can
|
|
be controlled by config option "int 13 disk change
|
|
detect" (in [dos] section) in case any older OS can
|
|
not handle it. INT 13h AH=15h will report a floppy
|
|
drive with change line support if enabled. MS-DOS
|
|
seems to work just fine with it. (joncampbell123)
|
|
- Added menu item "Enable extended Chinese character
|
|
set" in "Video" => "TTF options" to toggle setting
|
|
for the Simplified Chinese (GBK extension) and
|
|
Traditional Chinese (ChinaSea extension). (Wengier)
|
|
- Added config option "chinasea" (in [ttf] section)
|
|
which when set to "true" allows ChinaSea (中國海字集)
|
|
and Big5-2003 extension of the original Big5-1984
|
|
charset for Traditional Chinese TTF output. This
|
|
requires the use of a TTF/OTF font containing such
|
|
extended characters to correctly render them; the
|
|
included SarasaGothicFixed TTF font is updated to
|
|
support such characters.Certain Traditional Chinese
|
|
DOS software like the Hyper Editor 5.03 (漢書5) makes
|
|
use of ChinaSea characters. Also moved "gbk" config
|
|
option from [dosv] to [ttf] section. (Wengier)
|
|
- Added config option "forcesquarecorner" (in [sdl]
|
|
section) which when set to "true" will force to
|
|
disable rounded corners on Windows 11. (Wengier)
|
|
- Added code to INT 18h emulation (IBM PC mode) to
|
|
jump to ROM BASIC if the user provided an IBM
|
|
ROM BASIC image to load. (joncampbell123)
|
|
- Added config option "ibm rom basic" in [dosbox]
|
|
section which allows users to load a ROM image
|
|
containing IBM PC ROM BASIC, for disk images
|
|
and MS-DOS setups that need it. (joncampbell123)
|
|
- Added stub IBM ROM BASIC points in the BIOS area
|
|
so that when BASIC(A).COM from MS-DOS 1.x and 2.x
|
|
are run, a polite message is displayed instead of
|
|
invalid code and crashes. (joncampbell123)
|
|
- 8086 and 80186 CPU types no longer check segment
|
|
limits. (joncampbell123 & Allofich)
|
|
- Put in undocumented behavior in opcode 0x8e for
|
|
8086 and 80186. (Allofich)
|
|
- Made 8086 treat opcodes C0,C1,C8,C9,F1 as aliases
|
|
of C2,C3,CA,CB,F0, and opcodes 0x60-0x6F as aliases
|
|
of opcodes 0x70-0x7F. (Allofich)
|
|
- Adjusted multiple-prefix bug for 8086/286 to only
|
|
apply when REP or REPZ is used. (Allofich)
|
|
- Fixed 0x0F opcode being valid on 80186 core when
|
|
it should be invalid. (Allofich)
|
|
- Fixed CGA modes to always use a character height
|
|
of 8, rather than reading it from address 485h.
|
|
Fixes corrupt graphics in the PC Booter version
|
|
of Apple Panic. (Allofich)
|
|
- Fixed underflow when INT 13 AH=2 called for
|
|
sector 0. (Allofich)
|
|
- Fixed infinite loop when trying to run a 32-bit
|
|
program with the 8086 CPU type. (Allofich)
|
|
- Fixed INT 13h emulation to no longer call the DOS
|
|
kernel "DriveManager" if the DOS kernel has been
|
|
shutdown. This fixes memory corruption issues in
|
|
the guest OS system run by the BOOT command that
|
|
can occur when the "swap disks" command is used in
|
|
the emulator. (joncampbell123)
|
|
- Fixed DTA memory leak from FAT driver if FAT drive
|
|
was mounted when booting into a guest OS. (joncampbell123)
|
|
- Fixed a crash on unmount that occurs if IMGMOUNT
|
|
is used to mount multiple floppy disk images to
|
|
a drive letter. (joncampbell123)
|
|
- Fixed possible crash with printing. (jamesbond3142)
|
|
- Fixed possible freeze when shutting down Windows 9x
|
|
after changing a CD image from the menu. (Wengier)
|
|
- Fixed the default U.S. keyboard layout for the
|
|
HX-DOS build. (Wengier)
|
|
- Fixed copying full-screen or multi-line text from a
|
|
DBCS codepage in TTF output or PC98 mode. (Wengier)
|
|
- Fixed possible crash at start with getsysfont=true
|
|
when a font may not be obtained on some Chinese
|
|
Windows systems. (Wengier)
|
|
- Fixed TTF color issue with some DOS GUI programs by
|
|
initializing the color scheme when with default
|
|
COLORS= setting in EGA or VGA mode. (Wengier)
|
|
- Fixed some Direct3D pixel shaders not working (such
|
|
as GS2x and CRT-geom-blend). (Wengier & depaljas)
|
|
- Fixed config option windowposition=x,y not working
|
|
in Linux/macOS SDL1 builds. (Wengier)
|
|
- Fixed copying files from the virtual drive Z: not
|
|
working when using the 4DOS shell. (Wengier)
|
|
- Fixed some issues in MORE command. (Wengier)
|
|
- Fixed "DIR>NUL" freeze/crash when only disk or CD
|
|
images are mounted. (nanshiki)
|
|
- Fixed BIOS screen when resetting the machine with a
|
|
non-TTF output and DOS/V mode enabled. (Wengier)
|
|
- Fixed the key `/~ not working when IME is enabled
|
|
on a non-Japanese keyboard. (Wengier)
|
|
- Fixed display glitches in the game "Continuing
|
|
adventures of Cyberbox". (Wengier)
|
|
- Fixed unusable joystick with config options like
|
|
joy1response1 set to certain values. (Baderian)
|
|
- Make memory B0000-B7FFF unmapped for the CGA
|
|
emulation. Fixes "Backgammon 5.0" detecting that
|
|
an MDA is also present when using CGA. (Allofich)
|
|
- Make floppy I/O delay separately configurable from
|
|
hard drive delay, and make it slower than before
|
|
by default. It is adjustable via the "floppy drive
|
|
data rate limit" config option. (Allofich)
|
|
- Always return bit 6 of port 61h as set for PC and as
|
|
clear for PCjr and Tandy. Allows Zaxxon to load in
|
|
PC mode. (Allofich)
|
|
- Video emulation for PC-98 mode (for 400-line modes)
|
|
is now 16:10 instead of 4:3. 480-line PC-98 modes
|
|
are still 4:3. (joncampbell123)
|
|
- PC-98 EGC emulation: Add generic ope_xx handler for
|
|
the remaining block of undefined/undocumented EGC
|
|
ROPs. This fixes "Atomic Punker" which uses EGC ROP
|
|
0xBE for sprite rendering. (joncampbell123)
|
|
- Don't run mouse setup code if there is no emulated
|
|
mouse. (Allofich)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Add proper opl3 handling of the waveform select
|
|
to dbopl.
|
|
- Correct disassembly of some FPU instructions.
|
|
0.83.19
|
|
- Reorganized the "List network interfaces" and "List
|
|
printer devices" dialogs (under the "Help" menu) to
|
|
allow the use of scroll bars. (Wengier)
|
|
- Added menu option "Reset TTF color scheme" to reset
|
|
the current color scheme for TTF output. (Wengier)
|
|
- Added config option "righttoleft" in [TTF] section
|
|
which when set to "true" will cause DOSBox-X to
|
|
display text from right to left (instead of left to
|
|
right) for the TTF output. It can also be toggled
|
|
from the menu ("Video" => "TTF options" => "Display
|
|
text from right to left"). (Wengier)
|
|
- Added config option "vga fill active memory" which
|
|
when set to "true" will fill inactive video memory
|
|
regions with RAM rather than mapping them as empty.
|
|
This allows the ETen Chinese DOS system (倚天中文系統)
|
|
3.5/2000 (e.g. ET16V and ET24VA) to run. (Wengier)
|
|
- Added config option "middle_unlock" ([sdl] section)
|
|
to control whether to unlock the mouse with middle
|
|
mouse button click. (Wengier)
|
|
- Added config option "dosvfunc" in [ttf] section to
|
|
support DOS/V applications when country information
|
|
is set to Japan in TTF output. (nanshiki)
|
|
- Added "VTEXT" command to view or change the current
|
|
V-text mode for the DOS/V emulation. Also improved
|
|
the font support for 24-pixel font DOS/V mode, such
|
|
as supporting HZK24? fonts for Simplified Chinese
|
|
DOS/V mode and STDFONT.24 from ETen Chinese system
|
|
for Traditional Chinese DOS/V mode. If a Chinese
|
|
font is specified via "fontxdbcs", "fontxdbcs14" or
|
|
"fontxdbcs24" options, it will be loaded before
|
|
system font even with "getsysfont=true". (Wengier)
|
|
- Commands like 80x25, 80x43, ... now use internal
|
|
function for better compatibility with the TrueType
|
|
font (TTF) output. (Wengier)
|
|
- MODE command without a parameter will now print the
|
|
current lines/columns instead of usage. (Wengier)
|
|
- INTVEC debugger command now correctly outputs
|
|
addresses when in protected mode. (Allofich)
|
|
- Fix horizontal lines in the debugger window being
|
|
rendered as unrelated characters in some code
|
|
pages. (Allofich)
|
|
- INT 21 AX=4B03 now sets AX to 0000 like MS-DOS
|
|
does. Fixes missing music in "聊齋誌異之幽谷傳奇"
|
|
(Liáozhāi zhì yì zhī yōugǔ chuánqí) (Allofich)
|
|
- Use 0x1E to 0x3E for the keyboard buffer of the CGA
|
|
machine, which fixes the controls locking up in the
|
|
PC booter version of Apple Panic. (Allofich)
|
|
- Allowed machine types "pcjr_composite" and
|
|
"pcjr_composite2", similar to "cga_composite" and
|
|
"cga_composite2", instead of having to switch the
|
|
composite type manually. (Wengier)
|
|
- If machine is PCjr, place PC BIOS reset code at
|
|
F000:0043 to match that of the real BIOS.
|
|
- Fix PCjr NMI handler to load DS with segment 0x0040.
|
|
Fixes crashes in SHAMUS. (Allofich)
|
|
- Fix PCjr NMI handler to use 8086-level instructions
|
|
when loading DS with segment 0x0040 so that it
|
|
works properly with cputype=8086.
|
|
- Remove useless check for signed divide quotient
|
|
of 0x80/0x8000/etc. (the result was -0x80/0x8000/etc
|
|
anyway. Add code to check specifically for these
|
|
values after signed divide if cputype=8086 and
|
|
trigger divide overflow exception, to match behavior
|
|
described for the 8086 processor.
|
|
- Modify exception handling so that for cputype=8086
|
|
the return address for an exception handler points
|
|
at instruction after fault location.
|
|
- Fix IDIV instruction incorrectly raising a divide
|
|
error exception for some borderline values. Fixes
|
|
Microsoft Flight Simulator. (Allofich)
|
|
- IBM PC BIOS emulation fixed to place key pieces of
|
|
code and entry points at fixed legacy locations
|
|
required by some older DOS games, instead of
|
|
by dynamic allocation. Added code to BIOS allocation
|
|
to reserve F000:E000 or higher for fixed allocation
|
|
and force dynamic allocation below that address to
|
|
prevent further conflicts should others submit
|
|
pull requests for additional fixed locations. This
|
|
fixes some games like "聊齋誌異之幽谷傳奇" (Liáozhāi
|
|
zhì yì zhī yōugǔ chuánqí) which appear to assume
|
|
some of these fixed BIOS addresses and will
|
|
crash if they are wrong.
|
|
- Added tool EMSMAGIC.COM as alternative EMS manager,
|
|
which can be dynamically installed or uninstalled
|
|
with the setting ems=false. (Wengier)
|
|
- If a program is provided in the command-line when
|
|
launching DOSBox-X, it will now be executed after
|
|
any commands in the [autoexec] section by default.
|
|
A command-line option "-prerun" is added to force
|
|
the program run before any commands in [autoexec]
|
|
section like before. (Wengier)
|
|
- Added auto-detection for single-wide DBCS-encoded
|
|
characters for the TTF output (non-PC98). (Wengier)
|
|
- Improved the menu option "Restart DOSBox-X with
|
|
language file..." (under "Main") for switching
|
|
between DBCS languages. (Wengier)
|
|
- Disabled the Alt+F4 key for closing the DOSBox-X
|
|
window in MinGW SDL2 builds. (Wengier)
|
|
- Fixed program or config file containing Unicode
|
|
characters passed from command-line when launching
|
|
DOSBox-X in Windows SDL2 builds. (Wengier)
|
|
- Fixed issue with DELETE key in PC-98 mode. (Wengier)
|
|
- Fixed COLORS config option (in [ttf] section) not
|
|
working in the previous version. (Wengier)
|
|
- Fixed issues after resetting the virtual machine
|
|
when using DBCS language files. (Wengier)
|
|
- Fixed some issues related to system IME support for
|
|
CJK (Chinese/Japanese/Korean) languages, for both
|
|
Windows SDL1 and SDL2 builds. (nanshiki & Wengier)
|
|
- Fixed bugs in the region memory allocator C++ class
|
|
that claimed the entire free block even if the
|
|
size wanted was smaller. Added field to remember if
|
|
the allocated block was allocated for fixed or
|
|
dynamically allocated memory. Cleaned up allocator
|
|
code and removed redundancy.
|
|
- Fix SELINFO command not showing output correctly
|
|
in the debugger window. (Allofich)
|
|
- Better CMOS register B and C emulation. (Allofich)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Support for DMF floppy disk images.
|
|
- Zero-out DX in EXEC overlay command.
|
|
- Improve stack check for wrap-around cases.
|
|
- Change to misc_output for SVGA_S3Trio.
|
|
0.83.18
|
|
- Cleaned up and more accurately worded CMOS-related
|
|
log messages. (Allofich)
|
|
- Fixed the names of virtual files and files on mounted
|
|
FAT drive images being logged as "(null)". (Allofich)
|
|
- Fixed packed structure alignment problem with MSVC
|
|
(Microsoft C++) builds regarding some disk image
|
|
formats. These problems prevented VS2019 builds from
|
|
mounting hard disk images. (Allofich)
|
|
- REP STOSB will correctly move one byte if one byte
|
|
remains to be processed aka CX == 1, this is needed
|
|
for FD98.COM self clearing code to work properly. (nanshiki)
|
|
- Fixed IOCTL support for character device drivers. (nanshiki)
|
|
- Fixed ANSI ESC [6n escape handling to correctly
|
|
report cursor position as 1-based count, not 0-based
|
|
count. (nanshiki)
|
|
- PC-98 INT DCh emulation fixed to better represent the
|
|
function key shortcuts as real DOS does. (nanshiki)
|
|
- Emulator fix for HX-DOS builds. (Wengier)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Fix the return value of register al from INT10 ah=0x0F
|
|
for non EGA/VGA machines.
|
|
0.83.17
|
|
- Added FISTTP instruction to experimental cputype (LBi)
|
|
- Updated debugger to support and decode fisttp, fcomi,
|
|
fcomip, fucomi, fucomip (LBi)
|
|
- Added support for Chinese/Japanese/Korean IMEs on
|
|
Windows/Linux SDL2 builds. (nanshiki)
|
|
- Added cputype=experimental, which is the same as the
|
|
highest CPU emulation level but with additional
|
|
instructions from newer processors that do not exist
|
|
in the era emulated by DOSBox-X i.e. FISTTP which is
|
|
an SSE3 Pentium 4 instruction. (joncampbell123)
|
|
- Added support for 286/386 call gates to JMP
|
|
instruction (joncampbell123)
|
|
- Added -bd <n> option to IMGMOUNT to allow mounting
|
|
partitions from a hard disk image mounted as an
|
|
INT 13h hard disk. <n> is the numeric value the
|
|
hard disk image was mounted to. In this way, it
|
|
becomes possible to mount any or all partitions
|
|
in a hard disk image. WARNING: To safely mount
|
|
multiple partitions, use -o partidx=<n> to specify
|
|
each partition you mount by index. (joncampbell123)
|
|
- If a drive has no volume label, and user runs
|
|
LABEL without specifying one, do not ask whether
|
|
or not to delete the volume label because there
|
|
is in fact no volume label to delete. (joncampbell123)
|
|
- Added FreeDOS utilities DEFRAG, FORMAT, FDISK,
|
|
CHKDSK, and SYS to the built-in Z drive. KERNEL.SYS
|
|
is not provided so that the user can provide what
|
|
they consider the best version of the FreeDOS kernel
|
|
to format with if they use FORMAT /S (joncampbell123)
|
|
- INT 29h routes output through ANSI.SYS driver in
|
|
both IBM PC and PC-98 mode, unless ansi.sys=false
|
|
is set in the config setting. (joncampbell123)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Fix regression in r4444: Hercules machine type
|
|
cursor translation.
|
|
- Remove redundant signature for ET4K that is now
|
|
done in video BIOS.
|
|
- Implement mouse driver function 0x27, fixes
|
|
Alive - Behind the Moon.
|
|
- Add log message for unusual cases where an
|
|
executable unsafely places its initial stack outside
|
|
the memory block.
|
|
0.83.16
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.16.html
|
|
- Added support for extended MS-DOS partitions that
|
|
reside in extended partitions. These partitions
|
|
can be manually mounted using -o partidx=n where
|
|
n is 4 or larger. To assist in partition indexes,
|
|
the FAT driver will also print the partition
|
|
table to your log file and console when asked to
|
|
print debug information. (joncampbell123)
|
|
- Added dosbox-x.conf options to control VESA BIOS
|
|
window size and window granularity. This allows
|
|
DOS development to test VESA BIOS support against
|
|
SVGA cards that use window sizes and/or window
|
|
granularity other than 64KB including older SVGA
|
|
hardware by Paradise and Cirrus. Note that use
|
|
of these options is intended solely for DOS
|
|
development and will break S3 drivers that do not
|
|
use the VESA BIOS extensions. (joncampbell123)
|
|
- Fixed VESA BIOS S3 modelist to match the VBE 1.2
|
|
standard modelist properly, including the addition
|
|
of modes 0x119-0x11B. (joncampbell123)
|
|
- Added machine=vesa_oldvbe10 to emulate a VESA
|
|
BIOS that follows version 1.0 of the standard.
|
|
Specifically, in version 1.0, mode information
|
|
like XResolution was OPTIONAL and the VESA BIOS
|
|
was allowed not to fill it in since you could
|
|
assume the information from the standard video
|
|
mode number you applied. This setting emulates
|
|
a VESA BIOS that does NOT provide this information,
|
|
for testing purposes. Also, machine=vesa_oldvbe is
|
|
fixed to never report a LFB, since that was not yet
|
|
defined for VBE 1.2. (joncampbell123)
|
|
- Reorganized Windows installation to 2 installers
|
|
installing 32-bit and 64-bit DOSBox-X binaries,
|
|
for WinXP+ (all) and Vista+ 64-bit respectively,
|
|
reducing the sizes of installers significantly
|
|
while adding the SarasaGothicFixed TTF font and
|
|
a language selection page for choosing existing
|
|
language translations (with new language files
|
|
for French and Traditional Chinese). (Wengier)
|
|
- DOSBox-X will now search for more paths (such as
|
|
user config directory and "languages" subfolder)
|
|
for loading language files before failing, and
|
|
on Linux and macOS platforms will also search for
|
|
additional directories such as /Library/Fonts/
|
|
(Linux) or /Library/Fonts/ (macOS) for TrueType
|
|
fonts when using the TTF output. (Wengier)
|
|
- DOSBox-X will try to load the SarasaGothicFixed
|
|
TTF font when no external TTF font is specified
|
|
and a CJK code page detected at start. (Wengier)
|
|
- Added Shift+Tab shortcut in Debugger to switch to
|
|
previous window complimenting existing function of
|
|
Tab switching to the next window. (cimarronm)
|
|
- LH/LOADHIGH command can now load programs into UMB
|
|
memory if it is available. Also added "shellhigh"
|
|
config option to decide whether to load builtin
|
|
command shell to UMB memory (with default setting
|
|
of "auto", it is enabled if reported DOS version
|
|
is at least 7, similar to MS-DOS 7+). (cimarronm)
|
|
- HELP command is now an external command appearing
|
|
on Z drive rather than an internal shell command
|
|
(it is never a DOS internal command). (Wengier)
|
|
- Command-line options -eraseconf and -erasemapper
|
|
will now erase loaded config file and mapper file
|
|
respectively and continue, whereas -resetconf and
|
|
-resetmapper will erase user config file or user
|
|
mapper file and exit as before. (Wengier)
|
|
- Added menu group "3dfx" in "Video" menu to toggle
|
|
the low-level Voodoo card emulation and high-level
|
|
Glide emulation at run-time. (Wengier)
|
|
- Added menu options "Restart DOSBox-X instance" and
|
|
"Restart DOSBox-X with language file" in "Main"
|
|
menu to reboot the current DOSBox-X instance or
|
|
reboot the DOSBox-X instance with the specified
|
|
language file automatically. (Wengier)
|
|
- Added menu options "Show code overview" and "Show
|
|
logging text" in "Debug" menu to show the overview
|
|
of the current code and the output of DOSBox-X's
|
|
current logging text in debug builds. (Wengier)
|
|
- Added config option "customcodepage" in the [dos]
|
|
section to allow a custom code page, in the format
|
|
"customcodepage=nnn,codepagefile" in TrueType font
|
|
(TTF) output. CHCP command also supports additional
|
|
parameter to specify a code page file. Also added
|
|
builtin support for code pages 1250-1258. (Wengier)
|
|
- Added config option "transparency" in [sdl] section
|
|
to change the DOSBox-X window transparency (from 0
|
|
to 90, low to high transparency) on the Linux/macOS
|
|
SDL2 and Windows platforms. (Wengier)
|
|
- Added config option "hidenonpresentable" in [dos]
|
|
section to toggle whether to filter out file names
|
|
on local drives that are non-representative in
|
|
current code page. (Wengier)
|
|
- Added config options "pc-98 try font rom" and
|
|
"pc-98 anex86 font" for the PC-98 emulation to
|
|
customize the font file to load. If former option
|
|
is set to "false", then DOSbox-X will not try to
|
|
load FONT.ROM first for PC-98, and latter option
|
|
specifies an Anex86-compatible font to load for
|
|
PC-98 (before trying FREECG98.BMP). (Wengier)
|
|
- Added support for composite support for PCjr mode
|
|
by porting patch from NewRisingSun. (Wengier)
|
|
- Non-Japanese DOS/V systems will now use 19-pixel
|
|
VGA fonts rather than 16-pixel VGA fonts for SBCS
|
|
characters to look better. (Wengier)
|
|
- You can now also load HZK14/HZK16 font files (for
|
|
14- and 16-pixel height) and STDFONT.15 font file
|
|
via the "fontxdbcs" and "fontxdbcs14" options for
|
|
Simplified Chinese DOS/V (dosv=cn) and Traditional
|
|
Chinese DOS/V (dosv=tw) emulations. (Wengier)
|
|
- Improved the DOS/V font acquisition function on
|
|
the Linux platform (both SDL1 & SDL2), such as
|
|
adding support for 14-pixel height fonts (used by
|
|
Configuration Tool & Mapper Editor), and enhancing
|
|
support for Chinese characters acquisition (e.g.
|
|
WenQuanYi support for the Traditional Chinese). A
|
|
config option "getsysfont" is added which when set
|
|
to "false" will disable the font acquisition on
|
|
Windows and Linux platforms. (Wengier & nanshiki)
|
|
- Implemented support for inputting CJK characters
|
|
on Linux SDL1 builds using Linux system IMEs. Code
|
|
imported from SDL-IM-plus by nanshiki and confirmed
|
|
to work on Linux/X11 platform by him.
|
|
- Added support for inputting Japanese and Korean
|
|
characters using system input method (IME) using
|
|
the default "windib" video driver in Windows SDL1
|
|
build (in addition to "directx" driver). (nanshiki)
|
|
- Fixed CJK characters not showing correctly for the
|
|
SDL-drawn menu with OpenGL outputs if "language"
|
|
config option is used instead of -lang command-line
|
|
option. Thank nanshiki for catching this. (Wengier)
|
|
- Fixed setting "machine=amstrad" cause DOSBox-X to
|
|
crash on non-Windows platforms. (cimarronm)
|
|
- Fixed bug related to DBCS vector table. (nanshiki)
|
|
- Fixed running e.g. built-in DEBUG command from a
|
|
drive other than Z may not work. (cimarronm)
|
|
- Fixed the command "FOR %I ..." not working when
|
|
executed from the command line. (Wengier)
|
|
- For audio/video recording, DOSBox-X will display
|
|
a message box showing the saved file name when the
|
|
recording has been completed. (Wengier)
|
|
- Mapper Editor will try to show the actual mod keys
|
|
for mod1/mod2/mod3 when clicked. (Wengier)
|
|
- Removed the special DOS function at Int21h/AH=2B/
|
|
CX=0x4442h/DX=0x2D58h in favor of the DOSBox-X
|
|
Integration Device at I/O ports 28h-2Bh which works
|
|
for both integrated DOS and guest OS environments.
|
|
- Enabled MT-32 emulation on ARM-based Mac OS X
|
|
builds (joncampbell123)
|
|
- For Configuration Tool, ensure mouse coordinates
|
|
are adjusted accordingly with forced scaler. (aybe)
|
|
- Fixed a bug in the Int21/AH=36h (get disk space)
|
|
function for returning very large CX values, and
|
|
that non-zero values are returned when the free
|
|
space is 0 on mounted local drives. (Wengier)
|
|
- Fixed "FILES" always fixed to 200 as reported by
|
|
the "DOSINFO" tool, in spite of "files" setting in
|
|
[config] section of the config file. (Wengier)
|
|
- Refined the handling of international keyboards and
|
|
fixed some issues in version 0.83.15. (maron2000)
|
|
- Fixed initialization order that prevented Bochs
|
|
port E9h emulation from working. (joncampbell123)
|
|
- Fixed menu options in system menu not working in
|
|
Windows SDL1 builds with "windib" driver. (Wengier)
|
|
- Fixed issue that the mouse cursor not showing in
|
|
the game "Power Dolls". (Wengier)
|
|
- Fixed non-English accents may not show correctly
|
|
with a SBCS code page in TrueType Font (TTF) output
|
|
(introduced in version 0.83.15). (Wengier)
|
|
- Fixed line endings for SBCS language files such as
|
|
English and Spanish translations. (Wengier)
|
|
- Fixed resetting the TTF screen when exiting from
|
|
Configuration Tool or Mapper Editor when TrueType
|
|
font (TTF) output is active. (Wengier)
|
|
- Fixed the option "drive z expand path" not working
|
|
if Virtual Drive Z: has been moved to a different
|
|
drive letter (e.g. Drive Y:). (Wengier)
|
|
0.83.15
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.15.html
|
|
- Enhanced the network redirector functions for the
|
|
Windows platform, so that you can for example list,
|
|
open, write, copy, and execute files in UNC network
|
|
paths in the form \\COMPUTER\FOLDER directly when
|
|
network redirector function is enabled and secure
|
|
mode is disabled on Windows systems. (Wengier)
|
|
- MOUNT command followed by a drive letter only will
|
|
show the current status of the drive, or show that
|
|
the drive is not mounted if so. You can make the
|
|
message shorter with the -q option, and filter out
|
|
non-local drives with "-o local" option. (Wengier)
|
|
- Added NE2000.COM (packet driver for NE2000 network
|
|
card) which will appear in Z:\SYSTEM directory when
|
|
NE2000 networking feature is enabled. (Wengier)
|
|
- Added /H option to TRUENAME command to return the
|
|
full filename on the host system for a specified
|
|
file/directory on a mounted local drive. (Wengier)
|
|
- Added option "starttranspath" which if set to true
|
|
will automatically translath all paths in command-
|
|
line to host system paths when starting programs to
|
|
run on the host system. You can also toggle this
|
|
function dynamically from the drop-down menu ("DOS"
|
|
=> "Host system applications" => "Translate paths
|
|
to host system paths". (Wengier)
|
|
- Added option "drive z expand path" which when set
|
|
to true (default) will automatically expand %PATH%
|
|
environment variable to include the subdirectories
|
|
on the Z drive when only the Z:\ path is specified
|
|
for compatibility purposes. (Wengier)
|
|
- Added option "turbo" in [cpu] section to enable
|
|
Turbo (Fast Forward) mode at start. You can also
|
|
change it from the command-line via CONFIG command
|
|
(e.g. "config -set turbo=true"). (Wengier)
|
|
- Added value "quiet" to "log console" config option
|
|
to only log DOS console outputs. (Wengier)
|
|
- Added menu command to spawn a new instance of
|
|
DOSBox-X to Mac OS X builds to work around the
|
|
singular app instance model the Finder tends to
|
|
prefer, so that users can run multiple instances
|
|
if they wish. (joncampbell123)
|
|
- MacOS builds will once again have Fluidsynth,
|
|
libslirp, and FFMPEG support from revised .app
|
|
building code. For best results support is enabled
|
|
at compile time only if Brew is installed along
|
|
with Brew builds of those packages. (joncampbell123)
|
|
- MacOS coreaudio MIDI support will continue with
|
|
the default soundfont rather than giving up
|
|
if it cannot select the custom soundfont specified
|
|
in the config file. (joncampbell123)
|
|
- Fixed MacOS bug where coremidi would attempt
|
|
MIDI output even if no MIDI destinations are
|
|
available, which is apparently the case on
|
|
Big Sur. (joncampbell123)
|
|
- The names of advanced config options will now be
|
|
listed in the common config reference file (i.e.
|
|
dosbox-x.reference.conf) too. Several previously
|
|
advanced options are now common options. (Wengier)
|
|
- Command "CONFIG -L" will now list the global config
|
|
file for DOSBox-X (if any). (Wengier)
|
|
- There is now a special DOS function for DOSBox-X at
|
|
Int21h/AH=2B/CX=0x4442h('DB')/DX=0x2D58h('-X'), as
|
|
follows: AL=0h (DOSBox-X installation check), AL=1h
|
|
(SDL version check), AL=2h (platform check), AL=3h
|
|
(machine type check), and AL=4h (DOSBox-X version
|
|
check). For example, you can get installed DOSBox-X
|
|
version by calling the function Int21h/AX=2B04h/CX=
|
|
0x4442h/DX=0x2D58h in your program - AL and AH will
|
|
become 0, and BX will return the DOSBox-X version
|
|
number after "0." (e.g. BH=83, BL=15). (Wengier)
|
|
- It is now possible to translate text for graphical
|
|
Configuration Tool and Mapper Editor interfaces.
|
|
The sizes and/or positions of some buttons in these
|
|
interfaces are adjusted accordingly too. (Wengier)
|
|
- Config option "usescancodes=auto" now implies false
|
|
for PC-98 mode in SDL1 builds. (Wengier)
|
|
- Config option "pc-98 force ibm keyboard layout" now
|
|
defaults to "auto", which implies "true" if a U.S.
|
|
keyboard layout is detected and implies "false"
|
|
otherwise. Also fixed some input keys for the PC-98
|
|
mode. (Wengier & maron2000)
|
|
- For PC-98 mode, if both FONT.ROM and FREECG98.BMP
|
|
are not found in the directory, then DOSBox-X will
|
|
now use internal Japanese font (also used by DOS/V
|
|
and JEGA systems) and the built-in 8x16 SBCS font
|
|
pre-generated from FREECG98.BMP. (Wengier)
|
|
- Added DBCS awareness support for special characters
|
|
"\" and "|" in Chinese/Japanese/Korean code pages
|
|
so that they will be treated properly as trailing
|
|
bytes of double-byte characters. (Wengier)
|
|
- Improved handling of clipboard copy/paste involving
|
|
DBCS characters with TrueType font (TTF) output in
|
|
standard mode. The clipboard copy/paste feature is
|
|
also supported in DOS/V and JEGA modes. (Wengier)
|
|
- The config option ttf.halfwidthkana (now in [ttf]
|
|
section) will enable low ASCII boxing characters
|
|
for the TrueType font (TTF) output too. This option
|
|
is now enabled by default for JP mode, and printing
|
|
these characters is also supported. (Wengier)
|
|
- Added support for showing Chinese/Japanese/Korean
|
|
characters in the SDL-drawn menu (in addition to
|
|
characters in different SBCS code pages) and the
|
|
Configuration Tool interface (so e.g. DOS command
|
|
help will show correctly for these languages). You
|
|
can change the DBCS font used by Configuration Tool
|
|
interface via fontxdbcs14 config option. (Wengier)
|
|
- Added support for inputting DBCS characters using
|
|
system input method (IME) in Windows SDL1 build.
|
|
Chinese (Simplified and Traditional) IMEs may work
|
|
with the default video setting and a Chinese code
|
|
page or Chinese DOS/V mode. Japanese & Korean IMEs
|
|
may require DirectX mode for the SDL1 library (set
|
|
option "videodriver" to "directx" in [sdl] section
|
|
for this). There is a new config option "ime" in
|
|
[dosbox] section to control it. When set to "auto"
|
|
(default), it is enabled for Windows SDL1 builds
|
|
only if DOSBox-X is started with a CJK code page or
|
|
in PC-98, JEGA or DOS/V mode. (Wengier)
|
|
- Added support for Japanese EGA mode (machine=jega)
|
|
by adopting code from DOSVAXJ3. As with DOS/V, you
|
|
can optionally set the SBCS and DBCS fonts with
|
|
fontxsbcs, fontxdbcs (and fontxsbcs19, fontxdbcs24,
|
|
etc) options in [dosv] section of config file, or
|
|
the default fonts will be used for them. (Wengier)
|
|
- Added support for DOS/V (Japanese mode) by adopting
|
|
code from DOSVAXJ3. Also added support for Chinese
|
|
and Korean DOS/V modes. Set option "dosv" to "jp",
|
|
"chs" (or "cn"), "cht" (or "tw"), or "ko" in [dosv]
|
|
section of the config file to enable DOS/V mode for
|
|
different CJK languages. There are now also various
|
|
font-related (and V-text screen mode) options added
|
|
in [dosv] section for the DOS/V support. For the
|
|
Simplified Chinese (code page 936), you can also
|
|
enable GBK extension of the standard GB2312 charset
|
|
with "gbk" option for Simplified Chinese DOS/V and
|
|
the TrueType font (TTF) output. (Wengier)
|
|
- Added support for codepage conversion of file names
|
|
in "drivez" folder (for customization of Virtual
|
|
Drive Z:) so that they will appear properly on this
|
|
drive according to the code page set. (Wengier)
|
|
- Improved support for DBCS (double-byte) characters
|
|
on mounted FAT drives with Chinese/Japanese/Korean
|
|
codepages (932/936/949/950). (Wengier)
|
|
- The "Unexpected control character" error message
|
|
which may appear when executing certain batch files
|
|
is now a debug message (belong to the "misc" type)
|
|
instead of showing to the DOS console output.
|
|
- Added "videodriver" config option in [sdl] section
|
|
to force a video driver (such as windib/windows,
|
|
x11, dummy) for the SDL library to use. The video
|
|
driver "directx" has been enabled for Windows SDL1
|
|
builds (without certain functions). (Wengier)
|
|
- There is a now a [ttf] section in the config file,
|
|
and TTF-related config options are moved/renamed
|
|
from [render] section to this section (previous
|
|
config options "ttf.*" in [render] section become
|
|
* (with "ttf." dropped) in [ttf] section). Windows
|
|
installer will also automatically transfer previous
|
|
TTF options to the new [ttf] section. (Wengier)
|
|
- When setting to "auto", config option "allow lmsw
|
|
to exit protected mode" will be active for Pentium+
|
|
CPUs instead of 486+ CPUs. (Wengier)
|
|
- Fixed a bug which may lead to crash when pasting
|
|
text via the DOS clipboard API (e.g. the 4DOS CLIP:
|
|
device) in non-Windows platforms. (Wengier)
|
|
- Fixed the possible freeze when output was switched
|
|
from TrueType font (TTF) output and you tried to
|
|
reset the virtual machine. (Wengier)
|
|
- Fixed non-representative filenames on local drives
|
|
in current code page causing memory corruption for
|
|
e.g. Windows 3.1 Setup on non-Windows platforms.
|
|
These entries will no longer appear to DOS guest
|
|
system in incompatible code pages. (Wengier)
|
|
0.83.14
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.14.html
|
|
- Added support for directories on the Z drive, so
|
|
there is no need to put all files/programs on the
|
|
root directory of Z drive any more. Only one-level
|
|
directories are currently supported. There are now
|
|
six directories on the Z drive by default, namely
|
|
4DOS, BIN, DEBUG, DOS, SYSTEM, TEXTUTIL. Most files
|
|
that previously appeared on the root directory of
|
|
Z drive are now categorized into directories, with
|
|
addition of some files/programs, such as additional
|
|
4DOS files, text utilities in TEXTUTIL directory
|
|
and TITLE command to change window title. Default
|
|
value of the %PATH% environment variable has been
|
|
expanded to include these subdirectories, but if
|
|
you use a custom path then you may want to include
|
|
these directories in your %PATH%. (Wengier)
|
|
- You can now specify a command shell located on a
|
|
mounted local drive via SHELL= command in [config]
|
|
section of config file after the drive is properly
|
|
mounted via INSTALL= command. (Wengier)
|
|
- Extended START command to Linux and macOS systems.
|
|
It's disabled by default just like on Windows host
|
|
systems, but can be enabled by setting "startcmd"
|
|
to "true" or with the -hostrun command-line option
|
|
(replacing -winrun command-line option). (Wengier)
|
|
- CHCP command in the TrueType font (TTF) output now
|
|
allows code page 932, 936, 949, and 950 to display
|
|
Chinese, Japanese and Korean characters and file
|
|
names with DBCS support enabled in non-PC98 mode.
|
|
By default DOSBox-X will enable DBCS characters and
|
|
auto-detection for box-drawing characters in these
|
|
code pages, and these can be disabled by setting
|
|
new options "ttf.autodbcs" and "ttf.autoboxdraw" to
|
|
"false". There is also option "ttf.halfwidthkana"
|
|
to enable half-width Katakana in Japanese non-PC98
|
|
machines. KEYB command (and "keyboardlayout" config
|
|
option) also accept "jp", "ko", "cn", "tw", "hk",
|
|
"zh" as key layout names for code pages. (Wengier)
|
|
- Added support for printing Chinese/Japanese/Korean
|
|
DBCS (double-byte) characters when these code pages
|
|
are active, which by default ("auto") is enabled for
|
|
the TTF output, but can be enable or disabled for
|
|
all outputs by setting option "printdbcs" to "true"
|
|
or "false" in [printer] section. (Wengier)
|
|
- Added ability to toggle between Shift-JIS (or Kanji)
|
|
and graphical modes using Ctrl+F4 key (or ESC )3 and
|
|
ESC )0 escape sequences) in the PC-98 mode. There
|
|
is now also an indication of graphical mode in the
|
|
function row. (nmlgc)
|
|
- Added the "usesystemcursor" config option (in [sdl]
|
|
section) which when set to true will use host system
|
|
mouse cursor instead of drawing a DOS mouse cursor
|
|
when the mouse is not locked. (Wengier)
|
|
- When opening "Save..." or "Save Language File..."
|
|
dialogs in the Configuration Tool, the new dialogs
|
|
will now automatically be in focus. For the language
|
|
file, the name of the current language file will be
|
|
filled and modifiable. Pressing ENTER key saves the
|
|
config or language file, and pressing ESC key will
|
|
close these dialog boxes. (Wengier)
|
|
- Command "CONFIG -wl" will show the name of language
|
|
file being written to (if there is a language file
|
|
loaded then "CONFIG -wl" alone will write to it),
|
|
and command "CONFIG -ln" will show current language
|
|
name (if any), or you can use command "CONFIG -ln
|
|
<lang_name> -wl <lang_file>" to specify a language
|
|
name when writing to a language file. (Wengier)
|
|
- Added special properties to CONFIG command such as
|
|
"hostos", "programdir", "workdir", "configdir", and
|
|
"userconfigdir" so that commands like "CONFIG -GET
|
|
hostos" and "CONFIG -GET workdir" will get the host
|
|
system OS and DOSBox-X working directory. (Wengier)
|
|
- If a config option can only be changed at run-time,
|
|
"CONFIG -set" will now show such a message. You can
|
|
use "CONFIG -setf" to bypass, but the setting won't
|
|
take effect in the current session. (Wengier)
|
|
- SETCOLOR command can now change the text-mode color
|
|
schemes in outputs rather than the TrueType font
|
|
output too (VGA mode only). (Wengier)
|
|
- Added support for new TTF word processor type "FE"
|
|
for FastEdit, a new DOS text editor with functions
|
|
to view and change text styles. (Wengier)
|
|
- Added "ttf.wpfg" config option in [render] section
|
|
which can optionally specify a foreground color
|
|
(0-7) for the TTF output, similar to "ttf.wpbg" for
|
|
the background color in the TTF output. (Wengier)
|
|
- Added "ttf.printfont" config option in [render]
|
|
section which when set to true (default) will force
|
|
to use the current TrueType font (set via ttf.font)
|
|
for printing too when using TTF output. (Wengier)
|
|
- Added additional options to the "mouse_wheel_key"
|
|
config option to allow conversion of mouse wheel
|
|
movements into Ctrl+up/down arrow (option 4), Ctrl+
|
|
left/right arrows (option 5), Ctrl+PgUp/PgDn keys
|
|
(option 6), and Ctrl+W/Z as used by WordStar & EDIT
|
|
(option 7) . More menu options are added to "Mouse
|
|
wheel movements" menu group as well. (Wengier)
|
|
- Added menu option "Print text screen" (under "DOS")
|
|
to print current DOS text screen, if the printer
|
|
feature has been enabled. (Wengier)
|
|
- Added menu options "Display TTF blinking cursor",
|
|
"CJK: Switch DBCS/SBCS mode", "CJK: Auto-detect
|
|
box-drawing characters" and "CJK: Allow half-width
|
|
Japanese Katahana" under "Video" => "TTF options"
|
|
menu group to toggle the TTF options ttf.blinkc,
|
|
ttf.autodbcs, ttf.autoboxdraw and ttf.halfwidthkana
|
|
in [render] section of the config file. (Wengier)
|
|
- Support for UTF-8 encoded language files. Specify
|
|
a DOS code page with "country" option in [config]
|
|
section of the config file. Windows SDL1 menu and
|
|
macOS menu are now also compatible with Unicode
|
|
language files and characters. Also improved code
|
|
page compatibility for text in the SDL drawn menu
|
|
and the Configuration Tool. (Wengier)
|
|
- Cleaned up the welcome banner messages and other
|
|
messages involving boxdrawing characters for easier
|
|
translations into certain languages. (Wengier)
|
|
- Command-line option -silent now implies -nomenu,
|
|
SDL_AUDIODRIVER=dummy and will disable all sound-
|
|
related config option as well. (Wengier)
|
|
- Command-line option -fastlaunch will now suppress
|
|
messages by "automountall=true" option. Also added
|
|
value "quiet" to "automountall" config option to
|
|
auto-mount all Windows drives quietly. (Wengier)
|
|
- Added default value "auto" to "backend" option in
|
|
[ne2000] section of the configuration which will
|
|
automatically select slirp backend if available,
|
|
then pcap backend if available. (Wengier)
|
|
- Improved handling of Ctrl+C/Ctrl+Break for shell-
|
|
based DOS programs. (Wengier)
|
|
- Setting "irq" to "0" in [sblaster] section of the
|
|
config file will use the default IRQ number for the
|
|
sound card type. Also fixed "irq=-1", "dma=-1" and
|
|
"hdma=-1" not working as desired. (Wengier)
|
|
- Option "dpi aware=auto" now defaults to "true" when
|
|
full-screen mode is requested when DOSBox-X starts
|
|
in Windows SDL1 builds. (Wengier)
|
|
- The return value of AL in Int21/AX=0Eh is no longer
|
|
fixed. The game Jurassic Park may run after moving
|
|
Z drive to a different letter (e.g. E:). (Wengier)
|
|
- Added "Change current floppy image..." and "Change
|
|
current CD image..." menu options to change the
|
|
currently active floppy disk image(s) on drive A: &
|
|
B: and ISO/CUE image(s) on CD drives respectively.
|
|
This makes it possible to change the active floppy
|
|
disk and/or CD images while a guest system (e.g.
|
|
Windows 9x) is currently running. (Wengier)
|
|
- Added "Restart DOSBox-X with config file..." menu
|
|
option to start DOSBox-X with the specified config
|
|
file automatically from the menu. (Wengier)
|
|
- Added "Refresh rate..." menu option (under "Video")
|
|
to set the video refresh rate. (Wengier)
|
|
- Added "Enable A20 gate" menu option (under "DOS")
|
|
to enable or disable the A20 gate. (Wengier)
|
|
- Added "maximize" config option in [sdl] section to
|
|
automatically maximize the DOSBox-X window at start
|
|
(SDL2 and Windows SDL1 builds only). (Wengier)
|
|
- Added "allow lmsw to exit protected mode" config
|
|
option in [cpu] section to control whether the LMSW
|
|
instruction allows the guest to clear the PE bit
|
|
(leave protected mode).
|
|
- Added "debuggerrun" config option in [log] section
|
|
to set the run mode when DOSBox-X Debugger starts.
|
|
You can now also switch them from the menu ("Debug"
|
|
=> "Debugger option: ..."), including "debugger",
|
|
"normal" and "watch", the later two corresponding
|
|
to debugger commands "RUN" and "RUNWATCH". Also,
|
|
the built-in DEBUGBOX command without a parameter
|
|
will start the DOSBox-X debugger. (Wengier)
|
|
- Debugger interface now accepts the '0' key as a
|
|
command to single-step in case F11 isn't an option.
|
|
If you are using XFCE's Terminal emulator, this is
|
|
helpful because Terminal app takes F11 for itself.
|
|
- "Debug" menu is now a top-level menu for debugging
|
|
builds (for non-debugging builds there is "Logging
|
|
console" menu group under "Help"). Also added more
|
|
debug options including "Generate NMI interrupt"
|
|
and "Hook INT 2Fh calls" under this menu. (Wengier)
|
|
- Fixed /S and /F option (date/time-synchronization
|
|
ON/OFF) of DATE command not working. (Wengier)
|
|
- Fixed aspect=true not working properly for some
|
|
screen modes such as machine=ega. (Wengier)
|
|
- Fixed the mouse not automatically captured when
|
|
DOSBox-X starts with the settings fullscreen=true
|
|
and autolock=true. (Wengier)
|
|
- Fixed inputs in the Configuration Tool when the
|
|
Configuration Tool is scaled. (Wengier)
|
|
- Fixed keys may not work after loading a saved state
|
|
for the game Buck Rogers. (Wengier)
|
|
- Fixed Windows detection for the game "Tex Murphy:
|
|
Under a Killing Moon". (Wengier)
|
|
- Fixed serial ports 5-9 may not be usable with real
|
|
serial ports (directserial). (vkbaf & Wengier)
|
|
- Fixed issues related to screen dimensions in TTF
|
|
output in CGA/EGA modes since 0.83.12. (Wengier)
|
|
- Added alternative Windows installer for administrative
|
|
install mode on Windows Vista or later. (Wengier)
|
|
- Integrated SVN commits (Allofich)
|
|
- r4443: Improve detection of Paradise SVGA in some
|
|
installers with additional signature.
|
|
- r4453: Improve bittest instructions to wrap more
|
|
correctly.
|
|
- r4454: Enable A20 routines in BIOS.
|
|
- r4456: The numeric keypad can now be used to
|
|
navigate the debugger when Num Lock is off.
|
|
0.83.13
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.13.html
|
|
- DOSBox-X can now resolve file paths in its config
|
|
options that include environment variables on non-
|
|
Windows platforms (e.g. ${HOME}..) as well. A new
|
|
config option "resolve config path" (in [dosbox]
|
|
section) is added to control path resolving in the
|
|
config file (e.g. to resolve tildes only by setting
|
|
to "tilde", or disable all path resolving). (Wengier)
|
|
- System menu text in Windows builds now match the text
|
|
in the drop-down menus to be translatable by language
|
|
files and is compatible with Unicode. (Wengier)
|
|
- The error "Access Denied" is returned instead of
|
|
"File not found" for files opened exclusively in
|
|
another program on mounted local drives. (Wengier)
|
|
- S386C928 hardware cursor fixed to divide X coordinate
|
|
by bytes per pixel indicated in the control register
|
|
to match apparent Windows 3.1/95 behavior. Cursor
|
|
now tracks host properly even in highcolor/truecolor
|
|
modes.
|
|
- Added support for the RetroWave OPL3 hardware player.
|
|
Set "oplemu=retrowave_opl3" in [sblaster] section of
|
|
the config file to use it. Config options including
|
|
"retrowave_bus", "retrowave_spi_cs", "retrowave_port"
|
|
are added to adjust its settings. (ClassicOldSong)
|
|
- Added support for S386C928 hardware cursor color
|
|
selection in 256-color mode, which is different
|
|
from later cards.
|
|
- S3 XGA "BYTE SWP" fixed only to byte swap if the
|
|
transfer is 16-bit wide. This fixes the dither
|
|
pattern drawn by Windows 95/98 when you select
|
|
"Shutdown" from the Start menu.
|
|
- IMGMAKE command is now disabled in the secure mode,
|
|
similar to commands like IMGMOUNT. (Wengier)
|
|
- Added config options "working directory option" and
|
|
"working directory default" in [dosbox] section of
|
|
the config file to provide various options for the
|
|
users to control DOSBox-X's working directory. For
|
|
example, DOSBox-X can use the primary config file
|
|
directory or the DOSBox-X program directory as its
|
|
working directory. You can view the DOSBox-X'safe
|
|
working directory with CONFIG -L command. DOSBox-X
|
|
is also able to save the working directory that a
|
|
user selects to global config files. (Wengier)
|
|
- DOSBox-X will now also try to read the config file
|
|
named dosbox-x.conf in the user config directory
|
|
when searching for config files at start.
|
|
- Added new command-line options -promptfolder and
|
|
-nopromptfolder which will cause the folder prompt
|
|
dialogs to show or not to show at startup.
|
|
- Mac OS X builds will prompt the user to select a
|
|
folder at startup if run from the Finder (or from
|
|
the root directory). The folder selected will then
|
|
become the current working directory of DOSBox-X.
|
|
This makes it possible to start DOSBox-X with a
|
|
config file of your choice and to control where
|
|
the capture, save states and other files go.
|
|
- Fixed Tseng ET4000 640x480 256-color SVGA mode
|
|
when using the ET4000.BIN VGA BIOS, or Windows 98.
|
|
- Added segment limit checks in Normal core for
|
|
MOVSB/MOVSW/MOVSD and STOSB/STOSW/STOSD, which is
|
|
needed for DOSBox-X to work with the Windows 3.1
|
|
S3 86C928 display drivers that use segment limit
|
|
exceptions to fake a linear framebuffer.
|
|
- Added S3 XGA "byte swap" emulation, needed for
|
|
correct menu/titlebar display in Windows 3.1 when
|
|
using the S3 86C928 driver.
|
|
- Added YUV (YUY2) overlay to S3 Trio64V+ card
|
|
emulation. Tested with XingMPEG under Windows 3.1
|
|
and ActiveMovie under Windows 98.
|
|
- Added machine types for 5 different variations of
|
|
S3 chipset: Vision864, Vision868, Trio32, Trio64,
|
|
and (experimental) Trio64V+, ViRGE, ViRGE/VX, and
|
|
S3 86C928.
|
|
- Removed second PCI BAR for S3 MMIO register space.
|
|
S3 datasheets do not show a second BAR. Windows 95
|
|
is perfectly happy without it.
|
|
- S3 SVGA XGA emulation BlitRect now supports
|
|
COLOR_CMP. DirectX-based Windows 95 games are now
|
|
able to blit in 256-color mode with a transparent
|
|
color key value.
|
|
- ANSI.SYS emulation now supports the "Device Status
|
|
Report" escape when asked through code 6 (report
|
|
cursor position)
|
|
- Fixed RAM mapping bugs related to MDA/CGA/Hercules
|
|
emulation and the "allow more than 640kb" option,
|
|
that failed to map RAM as expected, and because of
|
|
that, easily triggered a "corrupt MCB chain" error
|
|
message.
|
|
- Worked around the mounting issue for disk or CD
|
|
image files with LaunchBox, by allowing a mounting
|
|
command-line with single quotes like IMGMOUNT D
|
|
'X:\FILES\DOS.IMG' on Windows systems. (Wengier)
|
|
- Restored Pentium MMX emulation code for the dynamic
|
|
x86 core to that of version 0.83.11 for better
|
|
compatibility with some Windows 9x games. (Wengier)
|
|
- Added "compresssaveparts" config option (in the
|
|
[dosbox] section) which when set to false will not
|
|
compress the components in saved states. (Wengier)
|
|
- When the current reported DOS version is less than
|
|
7.x and the user tries to mount a LBA or FAT32 disk
|
|
image, DOSBox-X will now show a message to ask if
|
|
the user wants it to set the required DOS version
|
|
automatically and proceed. (Wengier)
|
|
- DOSBox-X will now show the folder mounted after
|
|
mounting to a drive from the menu. (Wengier)
|
|
- Fixed MOUNT and IMGMOUNT commands unable to mount
|
|
directories or image files that contain non-ASCII
|
|
characters in the code page on Windows. (Wengier)
|
|
- Fixed CapsLock may not work properly in Windows
|
|
SDL1 builds when -fs option is used. (Wengier)
|
|
- Fixed the cycle information on the title bar when
|
|
the Turbo mode is enabled. (Wengier)
|
|
- Fixed that some games using the DOS4GW Extender
|
|
may not work due to swap file issue. (Wengier)
|
|
- Fixed that the clipboard copy and paste may not
|
|
work when the current code page is 808 or 872
|
|
and you are using Windows. (Wengier)
|
|
- Fixed the handling of the "Save & Restart" button
|
|
in Configuration Tool when using Direct3D output
|
|
in Windows SDL2 builds. (Wengier)
|
|
- Fixed incorrect display issue when using TrueType
|
|
font (TTF) output with customized screen dimension
|
|
when fastbioslogo=true is set. (Wengier)
|
|
- Fixed CD audio not looping for individual tracks
|
|
in games like Alien Trilogy. (kcgen)
|
|
- The command "MIXER /LISTMIDI" now lists the ROM
|
|
directory/files and sound fonts for MT32, Synth
|
|
and FluidSynth MIDI device when active. (Wengier)
|
|
- Debugger "DOS XMS" command will only list handles
|
|
that are allocated, or with nonzero address or
|
|
nonzero size, to avoid showing irrelevant
|
|
information. (joncampbell123)
|
|
- Added LOADFIX -EMS option to allocate/free
|
|
EMS (expanded memory). (joncampbell123)
|
|
- LOADFIX -D -XMS will free all XMS blocks
|
|
allocated by LOADFIX -XMS. (joncampbell123)
|
|
- LOADFIX -A will not allocate memory unless there
|
|
is memory below 64KB to fill. (joncampbell123)
|
|
- INT 15h PS/2 mouse functions now clear pending
|
|
PS/2 mouse interrupt as part of the BIOS call.
|
|
This should resolve unresponsive mouse issues
|
|
with Windows 3.1. (joncampbell123)
|
|
- Add config option "mt32.model" in the [midi]
|
|
section to force a MT-32 model to use. (Wengier)
|
|
- Updated the MUNT MT-32 library to the latest
|
|
version 2.5.0. (Wengier)
|
|
- Updated FLAC decoder library to the latest version
|
|
(0.12.29 by David Reid). (Wengier)
|
|
- Integrated SVN commits (Allofich)
|
|
- r4436, r4437: Rewrite store integer instructions
|
|
to check if the result fits.(vogons 78127)
|
|
- r4447: Attribute Controller port alias on EGA
|
|
machine. Fixes EGA display of older Super Pac-Man
|
|
release.
|
|
0.83.12
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.12.html
|
|
- Tandy graphics emulation fixed to accept 8 bits
|
|
for vertical total and vertical display CRTC
|
|
registers, which is needed for the tweaked
|
|
graphics mode used by Math Rabbit to display
|
|
correctly.
|
|
- INT 10h will no longer fill in three fields in
|
|
the BIOS data area (video CTL, char height, and
|
|
video switches) unless the machine type is
|
|
EGA or VGA. Those fields do not exist otherwise.
|
|
Certain games like Mindscape's "Road Runner" game
|
|
require those fields to be zero as part of its
|
|
Tandy detection routine.
|
|
- PCjr mode will omit the reserved graphics RAM
|
|
MCB block, and will subtract 16KB from the top
|
|
at the BIOS level, if emulating 128KB system
|
|
memory or less.
|
|
- You can now run PCjr mode with as little as
|
|
128KB of RAM. Removed 256KB minimum check from
|
|
DOS kernel. Certain games (Mickey's Space
|
|
Adventure) require memsizekb=128 and memsize=0
|
|
in PCjr mode or else it will not work correctly
|
|
due to how the game locates video system memory.
|
|
- Fixed Tandy mode to place video memory at the
|
|
top of conventional memory and allow running
|
|
Tandy mode with a memsizekb setting as low as
|
|
64KB, though 256KB or higher is recommended.
|
|
- Added Tandy "real memory size" field in the
|
|
BIOS data area.
|
|
- Tandy emulation updated to subtract 16KB from
|
|
top of conventional memory, which fixes some
|
|
games and follows DOSBox SVN behavior and real
|
|
hardware according to others on the Vogons forums.
|
|
- Fixed bug that limited Tandy mode to 624KB of
|
|
conventional memory. 32KB of video RAM is taken
|
|
from top of memory, losing half of the 32KB
|
|
breaks games that write to the system RAM instead
|
|
of B800:0000 segment and causes half the graphics
|
|
to not render.
|
|
- CD-ROM image emulation now supports ISO images
|
|
that are 2GB or larger, 32-bit integer size limit
|
|
has been lifted.
|
|
- Increased upper limit of "prebuffer" config option
|
|
(in [mixer] section) from 100 to 250. It is still
|
|
recommended to set a value less than 100. (Wengier)
|
|
- Added scrollbar buttons to the Configuration Tool,
|
|
so that the scrollbars better resemble the style of
|
|
the Windows 3.1 scrollbars.
|
|
- The help window for the Configuration Tool will now
|
|
display possible and default values for the config
|
|
options in addition to the descriptions. (Wengier)
|
|
- Updated the MMX patch code by kekko. (Wengier)
|
|
- MIXER command now supports the /GUI option to show
|
|
a popup window to display the mixer information.
|
|
Also improved its /LISTMIDI option which will show
|
|
the name of the current MIDI handler and you can
|
|
optionally specify a MIDI handler name (win32/alsa)
|
|
to show the information for this handler. (Wengier)
|
|
- Improved the compatibility of AUTOTYPE command with
|
|
games like Asterix & Obelix. (Wengier)
|
|
- The config options ttf.wpbg, ttf.bold, ttf.italic,
|
|
ttf.underline, ttf.strikeout, and ttf.char512 can
|
|
now be modified dynamically with CONFIG -SET ...
|
|
commands, e.g. CONFIG -SET ttf.wpbg=2. (Wengier)
|
|
- The minimal value for the ttf.ptsize config option
|
|
has been decreased from 10 to 9. (Wengier)
|
|
- Added menu item "Save logging as..." (under "Help"
|
|
-> "Debugging options") to save the current logging
|
|
content to the specified file. (Wengier)
|
|
- Added slirp backend support for the NE2000 network
|
|
feature (in addition to the existing pcap backend).
|
|
There are config sections named [ethernet, slirp]
|
|
and [ethernet, pcap] now to set the options for the
|
|
slirp and pcap backends respectively. Please refer
|
|
to the networking guide in the DOSBox-X Wiki for
|
|
more information about the backends. (Jookia)
|
|
- FAT driver can now support PC-98 HDI images with
|
|
partitions that start at any physical sector even
|
|
if the start is not a multiple of the ratio of
|
|
logical to physical sector size. This allows the
|
|
HDI image of Dragon Knight 4 to mount.
|
|
- Control character 7 (BEEP) is now allowed while
|
|
executing batch files without warnings. (Wengier)
|
|
- With the setting "core=auto" DOSBox-X now updates
|
|
the menu in the "CPU core" menu group automatically
|
|
between "Normal core" and "Dynamic core" to reflect
|
|
the CPU core which is currently in use. (Wengier)
|
|
- Fixed Windows 95/98 installation failures caused by
|
|
FAT driver and DOS API changes in previous version.
|
|
- Fixed well-intended but erroneous fall through case
|
|
in the INT15 handler that prevented 3rd party mouse
|
|
drivers from detecting the PS/2 mouse.
|
|
- Fixed the color issue with the Configuration Tool
|
|
in the macOS SDL1 build. (ant_222)
|
|
- Fixed switching ttf.cols, ttf.lins, and ttf.font
|
|
options dynamically in full-screen mode. (Wengier)
|
|
- Fixed menu options "Increase TTF font size" and
|
|
"Decrease TTF font size" (both under "Video" =>
|
|
"TTF options") not working (but keyboard shortcuts
|
|
and those in the system menu work). (Wengier)
|
|
- Fixed setting option "ttf.wp=xy3" or "ttf.wp=xy4"
|
|
not working (but "ttf.wp=xy" did work). (Wengier)
|
|
- Fixed preview function in WordStar not working for
|
|
TrueType font output in previous version. (Wengier)
|
|
- Fixed the issue that caused Windows 3.x group file
|
|
corruption on hard disk image files. (SnikoLoft)
|
|
- Integrated SVN commits (Allofich)
|
|
- r4416: Added ability to start and stop avi
|
|
recording, and to start keymapper, from config.
|
|
- r4405: Smarter clearing of the dynrec cache.
|
|
0.83.11
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.11.html
|
|
- Added support for the clipboard device (CLIP$) and
|
|
DOS clipboard API on non-Windows systems (they were
|
|
previously only supported on the Windows platform).
|
|
In Linux SDL1 build only read access is supported
|
|
whereas both read and write access are supported in
|
|
all other builds. Also, selecting and copying text
|
|
to the host clipboard using a mouse button or arrow
|
|
key is now supported in macOS SDL1 build. (Wengier)
|
|
- Added "Paste Clipboard" button to the AUTOEXEC.BAT,
|
|
CONFIG.SYS and 4DOS.INI sections in Configuration
|
|
Tool for pasting clipboard contents. (Wengier)
|
|
- Windows SDL2 builds now use same clipboard pasting
|
|
method as Windows SDL1 builds by default instead of
|
|
the BIOS keyboard function. The method is now also
|
|
available for Linux and macOS (both SDL1 and SDL2)
|
|
builds (although it is disabled by default on these
|
|
platforms). A menu option "Use BIOS function for
|
|
keyboard pasting" is added to the "Shared clipboard
|
|
functions" menu group (under "Main") to use BIOS
|
|
function for the clipboard pasting instead of the
|
|
keystroke method. Make sure this option is disabled
|
|
if pasting clipboard text into Windows 3.x/9x apps
|
|
(e.g. Notepad & Write) is desired. This setting can
|
|
be changed with "clip_paste_bios" config option in
|
|
in [sdl] section of the config file too. (Wengier)
|
|
- With the config option "startcmd=true" or command-
|
|
line option -winrun, Windows applications can now
|
|
be launched from within a DOS program or from the
|
|
4DOS shell in addition to built-in shell. (Wengier)
|
|
- Added the "disable graphical splash" config option
|
|
in [dosbox] section which when set will cause a
|
|
text-mode BIOS splash screen to be always displayed
|
|
at startup instead of the graphical one. If the
|
|
TrueType font (TTF) output is enabled the text-
|
|
mode BIOS screen is used automatically. (Wengier)
|
|
- Added a simple BIOS Setup Utility, which will show
|
|
a summary of the current system configuration and
|
|
allow users to change the date and time. Press Del
|
|
key at the BIOS boot screen to enter. (Wengier)
|
|
- Added config option "showbasic" in [sdl] section
|
|
which when set to false will hide DOSBox-X version
|
|
number and running speed in the titlebar. (Wengier)
|
|
- Added experimental option to load a VGA BIOS ROM
|
|
image and execute it, instead of our own INT 10h
|
|
emulation. If enabled, it will load the specific
|
|
ROM file into C000:0000. If not specified, it
|
|
will choose based on machine type. VGA BIOS ROM
|
|
images (e.g. et4000.bin for Tseng ET4000 emulation)
|
|
can be dumped from real hardware or downloaded from
|
|
the PCem ROMs collection. It can be set with config
|
|
option "vga bios rom image" in [video] section.
|
|
- Improved handling for file- and record-locking
|
|
for non-Windows platforms. Portions of the code
|
|
are adopted from DOSEmu. (Wengier)
|
|
- Improved handling for the setting "ansi.sys=false",
|
|
such as fixing the welcome screen messup in this
|
|
case and allowing the use of a custom ANSI TSR
|
|
(such as NNANSI.COM) instead. (Wengier & stu)
|
|
- You can now press Ctrl+C or Ctrl+Break to break
|
|
from long outputs from commands like TYPE, MORE,
|
|
COPY, DIR /S, and ATTRIB /S. (Wengier)
|
|
- Renamed MEM.COM to MEM.EXE to match DOS. (Wengier)
|
|
- Rewrote built-in TREE command instead of the one
|
|
from FreeDOS to support long filenames. (Wengier)
|
|
- DELTREE is now an external command appearing on
|
|
drive Z: as DELTREE.EXE instead of a builtin shell
|
|
command, since it is an external command in a real
|
|
DOS system. (Wengier)
|
|
- Added REPLACE command to replace files, resembling
|
|
the MS-DOS counterpart. This command is compiled
|
|
with long filename support. (Wengier)
|
|
- Added PUSHD and POPD commands so that you can store
|
|
the current directory and changes to the specified
|
|
directory (optionally also the current drive), then
|
|
changes the directory/drive back. PUSHD command
|
|
without arguments show stored path(s). (Wengier)
|
|
- Added COLOR command to change current foreground
|
|
and background colors. It usage is similar to the
|
|
same-named command in the Windows command prompt.
|
|
For example, command "COLOR fc" produces light red
|
|
on bright white; COLOR without an argument restores
|
|
the original color. (Wengier)
|
|
- Added CHCP command to view the current code page,
|
|
or change the current code page for the TrueType
|
|
font (TTF) output. Supported code pages include:
|
|
437, 808, 850, 852, 853, 855, 857, 858, 860, 861,
|
|
862, 863, 864, 865, 866, 869, 872, and 874. You can
|
|
now also set the code page for TTF output via the
|
|
optional second parameter of the "country" option
|
|
in [config] section of the configuration. (Wengier)
|
|
- Added function to automatically save states in the
|
|
specified time interval (in seconds). You can also
|
|
specify a save slot or start and end save slots to
|
|
be used. For example, "autosave=10 11-20" will set
|
|
a 10-second time interval for auto-saving, and the
|
|
save slots used will be between 11 and 20. If no
|
|
save slot is specified, then the current save slot
|
|
will be used for auto-saving. Putting a minus sign
|
|
before time interval causes the auto-saving function
|
|
to not be activated at start. You can optionally
|
|
also specify up to 9 program names for this feature,
|
|
e.g. "autosave=10 11-20 EDIT:21-30 EDITOR:35" will
|
|
cause program "EDIT" to use save slots 21-30, and
|
|
"EDITOR" to use save slot 35, and other programs to
|
|
use save slots 11-20. Added a menu option "Auto-save
|
|
settings..." to manage the auto-saving feature at
|
|
run-time. A menu option "Enable auto-saving state"
|
|
is added to the "Save/load options" menu group under
|
|
"Capture" to toggle auto-saving when the function is
|
|
enabled. Likewise, a menu option "Select last auto-
|
|
saved slot" is added to the "Select save slot" menu
|
|
group (also under "Capture") to switch to the last
|
|
auto-saved slot (if any). (Wengier)
|
|
- The Configuration Tool windows are now scalable, so
|
|
that they will no longer look very small in e.g.
|
|
full-screen or High DPI modes. (ant_222)
|
|
- If the -defaultdir option is the only or the last
|
|
command-line option and no parameter is specified,
|
|
then directory of the primary config file (if any)
|
|
becomes the DOSBox-X default directory. (Wengier)
|
|
- You can now change the current output dynamically
|
|
with CONFIG command, e.g. "CONFIG -set output=ttf"
|
|
and "CONFIG -set output=default". (Wengier)
|
|
- The command "KEYB US" will return the DOS codepage
|
|
to 437 if current codepage is different. (Wengier)
|
|
- The setting "output=default" will enable the OpenGL
|
|
output for Linux systems if possible. (Wengier)
|
|
- Fixed the CGA/MCGA/MDA/Hercules-specific shortcut
|
|
function buttons in Mapper Editor, and the screen
|
|
colors after exiting from Mapper Editor when using
|
|
these machine types in Direct3D output (SDL1 build).
|
|
Also fixed the messages in the welcome banner for
|
|
these machine types to inform users the new default
|
|
shortcuts (Ctrl(+Shift)+[F7/F8]). (Wengier)
|
|
- Fixed DOS Int21/AH=0x5a "Create temporary file"
|
|
function not generating unique files. (Wengier)
|
|
- Fixed that the current drive goes back to Z drive
|
|
when combined unmounts & mounts are used. (Wengier)
|
|
- Fixed PC-98 keyboard handling of CTRL+A through
|
|
CTRL+Z. CTRL+C now works correctly in PC-98 mode.
|
|
- Fixed crash of Free Pascal compiler with dynamic
|
|
core and setting "use dynamic core with paging on =
|
|
auto" introduced in the previous version. (Wengier)
|
|
- Fixed launching Windows programs when the working
|
|
directory has no 8.3 filename entry. (Wengier)
|
|
- Fixed issues with full-screen switch in some cases
|
|
when the TrueType font output is enabled. (Wengier)
|
|
- Fixed an issue in MinGW builds that no data will be
|
|
sent to the OPL3Duo board. (DhrBaksteen)
|
|
- Fixed screen flickering when hovering over the menu
|
|
with Direct3D output in the Windows SDL2 build that
|
|
was introduced in the last version. (Wengier)
|
|
- Fixed mounting disk/CD images with long paths from
|
|
the "Drive" menu may not work properly. (Wengier)
|
|
- Fixed that the "Save" button in Configuration Tool
|
|
did not save config file in last version. (Wengier)
|
|
- Integrated SVN commits (Allofich)
|
|
- r4346: Fix a long-standing crash that occurred
|
|
when disconnecting a second joystick after
|
|
partially mapping it.
|
|
- r4344: Add F8 to toggle printable characters on
|
|
and off in the debugger.
|
|
- r4340: Fix behavior when main memory allocation
|
|
fails.
|
|
- r4336: Correct an oversight of r4186 when floppy
|
|
disks are mounted.
|
|
- r4330: some big endian improvements and drive_fat
|
|
fixes. (jmarsh)
|
|
- r4320: Report Q-Channel track number in BCD,
|
|
meaning it is not converted to binary by the
|
|
CD-ROM device driver. Fixes the CD-Player feature
|
|
of DOS Navigator 1.51 when playing past track 15.
|
|
- r4318: Add LOGC debug command to log cs:ip only.
|
|
0.83.10
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.10.html
|
|
- The Windows key(s) in Windows and the Command key(s)
|
|
in macOS will now be displayed as the "Windows" and
|
|
"Command" keys instead of the "super" and the "meta"
|
|
keys in SDL1 builds just like SDL2 builds. (Wengier)
|
|
- Cursor blinking rate for TrueType font (TTF) output
|
|
can now be customized with the ttf.blinkc option.
|
|
Set an integer between 1 (fastest) and 7 (slowest)
|
|
to change TTF cursor blinking rate, or setting it to
|
|
0 for no cursor (or false for non-blinking cursor as
|
|
in previous versions), with the default value being
|
|
6 on PC-98 systems and 4 elsewhere. (Wengier)
|
|
- Fixed parallel port emulation to allow MDA port 3BCh
|
|
to work properly.
|
|
- Enhanced the printer function on Windows platforms
|
|
to allow printer names to be specified in [printer]
|
|
section via the "device" option for direct printing
|
|
to the selected device. If left empty, then Windows
|
|
Print dialog will always be shown, or specifying "-"
|
|
will cause it to show only once (unless the user
|
|
clicks "Cancel"). Under "Help" menu there is now a
|
|
menu option "List Printer Devices" to list printer
|
|
devices on Windows, and the parallel port LPT1 now
|
|
defaults to the printer on all platforms. (Wengier)
|
|
- The dynamic_x86 CPU core can now handle page faults
|
|
non-recursively, so you can now run the dynamic_x86
|
|
core with Windows 9x/ME without crashes, although
|
|
this may slightly decrease the performance, and it
|
|
may be disabled by setting the config option "use
|
|
dynamic core with paging on" in [cpu] section to
|
|
"false"; the default value of this option has been
|
|
changed to "auto" which will enable/disable itself
|
|
based on whether the 386 paging and a guest system
|
|
has been enabled. Also fixed incorrect behavior for
|
|
handling trap flags in the dynamic core and updated
|
|
the MMX code for improved performance. (koolkdev)
|
|
- Added support for Direct3D output on Windows SDL2
|
|
builds just like Windows SDL1 builds to become the
|
|
default output in all Windows builds. (Wengier)
|
|
- DOSBox-X now natively supports the pixel-perfect
|
|
scaling! Set the option "output=openglpp" in [sdl]
|
|
section of the config file to enable this output.
|
|
Alternatively, the output can be selected from the
|
|
menu ("Video" => "Output" => "OpenGL perfect") at
|
|
run-time. It is recommended to set config options
|
|
and "aspect=true" (whenever the emulated display
|
|
has an aspect ratio of 4:3) and "doublescan=false"
|
|
for openglpp output. Also, with high DPI displays
|
|
(e.g. on Windows 7+ with DPI scaling enabled) it
|
|
works better with full-screen mode and the setting
|
|
"dpi aware=true". It was implemented by ant_222
|
|
(patch author) with some code cleanups by Wengier.
|
|
- Updated the Windows installer to add a page for
|
|
new users to select a video system output to use -
|
|
the default output (Direct3D), OpenGL with pixel-
|
|
perfect scaling (openglpp or "OpenGL perfect") for
|
|
improved image quality, and the TrueType font (TTF)
|
|
output for text-mode DOS applications. (Wengier)
|
|
- You can now supply a ZIP/7Z file as a parameter to
|
|
DOSBox-X directly so that it will be mounted as C:
|
|
drive when DOSBox-X starts. (Wengier)
|
|
- Added overlay support for mounting PhysFS drives
|
|
so that you can specify a write location when you
|
|
mounted a ZIP/7Z archive by adopting an old patch.
|
|
For example, command "MOUNT C C:\DIR -T OVERLAY"
|
|
will specify path C:\DIR(\C_DRIVE) as the write
|
|
location after mounting C: drive as a PhysFS drive
|
|
with a command like "MOUNT FILES.ZIP". (Wengier)
|
|
- Added ability to resolve file paths that include
|
|
environment variables on Windows or tildes (~) on
|
|
other platforms for various options in the config
|
|
file, such as language and mapper file paths, MT32
|
|
ROM & FluidSynth soundfont paths, [config] section
|
|
options as well as file outputs for the printing
|
|
and serial/parallel port functions. (Wengier)
|
|
- Added calculator for DOS (EVAL.EXE), which appears
|
|
on Z drive and can calculate both simple (such as
|
|
sin(0) and cos(0)) and many advanced mathematical
|
|
expressions in either command-line mode and or the
|
|
interactive mode. (Wengier)
|
|
- Added support for standard (VGA/EGA/CGA) and mono
|
|
mode dual-screen setup by porting the patch. You
|
|
can now start DOSBox-X with the option -display2
|
|
followed by a color (white, green, amber) to enable
|
|
this feature on debug builds. (Wengier)
|
|
- You can now translate texts in DOSBox-X's drop-down
|
|
menus. The message files as written by the config
|
|
tool (CLI or GUI) will contain the menu texts for
|
|
translations from the English language. (Wengier)
|
|
- Added "file access tries" config option (in [dos]
|
|
section) so that if a positive integer is provided
|
|
(e.g. 1 or 3) DOSBox-X will try to read/write/lock
|
|
files on mounted local drives for the specified
|
|
number of times before failing on Windows builds.
|
|
It is especially useful for networked DOS database
|
|
applications that require record locking. (Wengier)
|
|
- Added "bannercolortheme" config option (in [dosbox]
|
|
section) so that users can change the background
|
|
color theme of the welcome banner from the default
|
|
blue color when DOSBox-X starts. (Wengier)
|
|
- Added "pcaptimeout" config option (in the [ne2000]
|
|
section) to specify a read timeout value for pcap
|
|
in milliseconds, or default value (-1 on Windows
|
|
or 3000 otherwise) will be used. (Wengier & Jookia)
|
|
- Added "Save & Restart" button to the Configuration
|
|
Tool's "Save" option for saving the config file and
|
|
then automatically restarting DOSBox-X with this
|
|
saved configuration. Command-line options -wcboot,
|
|
-wcdboot and -wcpboot are added to CONFIG command
|
|
which resemble -wc, -wcd, and -wcp options but will
|
|
reboot DOSBox-X after writing configfile. Command-
|
|
line option -bc (-bootconf) is also added to reboot
|
|
with specified config file (or the primary loaded
|
|
config file if not specified) directly. (Wengier)
|
|
- The config option ttf.font will now search for TTF
|
|
fonts in the directory as specified by the fontpath
|
|
option in [printer] section too. (Wengier)
|
|
- Added special properties to CONFIG command such as
|
|
"screenwidth", "screenheight", "windowwidth", and
|
|
"windowheight" so that commands like "CONFIG -GET
|
|
screenwidth" and "CONFIG -GET screenheight" will
|
|
get the current screen width and height. (Wengier)
|
|
- BOOT command without a parameter will now try to
|
|
boot the current drive if possible. (Wengier)
|
|
- You can now change properties such as "fullscreen",
|
|
"glshader" and "windowposition" dynamically with
|
|
CONFIG command. For example, command "config -set
|
|
fullscreen=true" and "config -set windowposition="
|
|
will now switch on the full-screen mode and center
|
|
the window position respectively. For TrueType font
|
|
output, you can now also change the TTF font, the
|
|
number of rows and columns on the TTF screen, and
|
|
the word processor for TTF dynamically using CONFIG
|
|
command, e.g. "config -set ttf.font=test", "config
|
|
-set ttf.lins=30", "config -set ttf.cols=100" and
|
|
"config -set ttf.wp=wp". The limits for the options
|
|
ttf.cols and ttf.lins are increased too. (Wengier)
|
|
- Implemented the DOS network redirector functions so
|
|
that the host name can be reported to DOS programs,
|
|
unless the secure mode is enabled. You may need to
|
|
set either the option ipx=true in [ipx] section or
|
|
the option ne2000=true in [ne2000] section. Also
|
|
added config option "network redirector" to [dos]
|
|
section which if set to false disables the network
|
|
redirector even with IPX/NE2000 enabled. (Wengier)
|
|
- Fixed an issue that the DOSBox-X window size may be
|
|
incorrect when restoring from a maximized window in
|
|
the SDL2 builds. (Wengier)
|
|
- Fixed that the menu option "Select OpenGL (GLSL)
|
|
shader.." not working properly sometimes. (Wengier)
|
|
- Fixed Ctrl+C not working in GNU ed. (Wengier)
|
|
- Fixed large ISO images (>2GB) unable to be mounted
|
|
using IMGMOUNT command. (Wengier)
|
|
- Fixed build failure on Gentoo Linux. (fonic)
|
|
- 3dfx games can now work with the Glide passthrough
|
|
feature when a guest system (guest DOS or Windows
|
|
9x) is currently running. The default setting for
|
|
config option "keep private area on boot" in [dos]
|
|
section is changed from "false" to "auto". (Wengier)
|
|
- Improved the speed of the Voodoo hardware emulation
|
|
for running games like Tomb Raider 3dfx. (Wengier)
|
|
- Improved OPL3Duo support, such as adding a buffer
|
|
thread to get rid of slowdowns & breakups in audio
|
|
playback when using the board. (DhrBaksteen)
|
|
- Updated the Tiny File Dialog library to the latest
|
|
version v3.8.5, which fixes issues such as the
|
|
compatibility problem with Windows XP. (Wengier)
|
|
- Updated FLAC, MP3, and WAV CD-DA decoder libraries
|
|
to the latest versions (0.12.28, 0.6.26 and 0.12.18
|
|
respectively; per David Reid). (Wengier)
|
|
- Integrated SVN commits (Allofich & Wengier)
|
|
- r4426: Emulate debug register 6 during trap flag
|
|
emulation (and normal int 1). Fixes 544 (jmarsh)
|
|
- r4401: Improve xchg to handle unwritable memory
|
|
better for core_dyn_x86.
|
|
- r4399: Finish up and add LOOP_NE and LOOP_E for
|
|
core_dyn_x86.
|
|
- r4393: Remove video page check when drawing
|
|
internal mouse pointer, as the BIOS current page
|
|
is not updated in some cases. Fixes QQP games: Lost
|
|
Admiral, Conquered Kingdoms, and Solitaire's
|
|
Journey. Also be a bit smarter about enabling
|
|
autolock, supporting more cases where the mouse
|
|
is used for input without resetting it.
|
|
- r4392: Improve capturing of Zeliard and fix a
|
|
few percussion-related capturing problems as well.
|
|
- r4310: Improve PMAKE on big endian machines and
|
|
fix some bugs. Fixes bug in 16 -> 15 bit color
|
|
conversion.
|
|
- r4309: Copy working directory when mounting an
|
|
overlay.
|
|
- r4307: Refinement of SoundBlaster checks, so no
|
|
IRQ is raised when not in autodma mode.
|
|
|
|
0.83.9
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.9.html
|
|
- Physical CD drives are now mountable in SDL2 builds
|
|
just like SDL1 builds, so commands like "MOUNT -CD"
|
|
should work in both SDL1 and SDL2 builds. Some code
|
|
is adopted from the SDL2_CDROM library. (Wengier)
|
|
- Implemented file locking support for mounting disk
|
|
image files so that you cannot mount the same disk
|
|
image files in read/write mode at the same time as
|
|
this can cause possible disk corruptions. A config
|
|
option "locking disk image mount" is added to the
|
|
[dosbox] section which when set to false (or if the
|
|
user mounts the image files read-only) will bypass
|
|
the locking of image files. Also improved the DOS
|
|
file locking function, which can be disabled by
|
|
setting "share=false" in [dos] section. (Wengier)
|
|
- Implemented PhysFS support so that you can mount
|
|
archives (e.g. ZIP/7Z) as drives in read-only mode,
|
|
e.g. "MOUNT C TEST.ZIP" or "MOUNT D FILES.7Z". Some
|
|
code is ported from a custom DOSBox fork. The menu
|
|
option "Mount an archive file (ZIP/7Z)" is added to
|
|
Drive menu to mount archives as Drives. (Wengier)
|
|
- INT 13h now obeys the "hard drive data rate limit"
|
|
setting, using the same disk I/O delay code as
|
|
INT 21h file I/O. [Issue #2039]
|
|
- Linux/X11 SDL1 builds: Combine window move/resize
|
|
into one call if possible, and not during window
|
|
manager hints, to avoid resize problems with the
|
|
XFCE 4.14 platform.
|
|
- Added menu option "Create blank disk images..."
|
|
(under "DOS" menu) to create blank floppy or hard
|
|
disk images of a common disk size, including 360KB,
|
|
400KB, 720KB, 1.2MB, 1.44MB and 2.88MB for floppy
|
|
disk images and 250MB, 520MB, 1GB, 2GB, 4GB and 8GB
|
|
for hard disk images. The 1GB option (-t hd_1gig)
|
|
is also added to IMGMAKE command. (Wengier)
|
|
- The Configuration Tool will now be centered within
|
|
the DOSBox-X window for a better looking. (Wengier)
|
|
- Added config option "synchronize time" in [dosbox]
|
|
section which when set to true will allow DOSBox-X
|
|
to automatically synchronize the date and time with
|
|
the host system, unless you manually change date
|
|
and/or time. A menu option "Synchronize host date/
|
|
time" is added to the DOS menu. The function uses
|
|
IRQ0 handler; it will not work in PC-98 mode nor if
|
|
the timer isn't running at the standard 18.2Hz tick
|
|
rate, as any other rate does not make sense and
|
|
will cause only jitter and error. Also fixed two
|
|
Demoscene entries sl_fokus and sl_haloo which use
|
|
BIOS_TIMER with a faster hardware tick rate.
|
|
- Added config option "showdetails" which when set to
|
|
true enables the menu option "Show FPS and RT speed
|
|
in title bar" at start. It is equivalent to -showrt
|
|
and -showcycles command-line options. (Wengier)
|
|
- Improved compatibility with Watcom C++ 2.0 when
|
|
long filename (LFN) support is enabled. (Wengier)
|
|
- Added support for starting DOSBox-X in a specific
|
|
display on a multi-screen setup (Windows builds as
|
|
well as Linux/macOS SDL2 builds). A config option
|
|
"display" is added to the [sdl] section that users
|
|
can specify a display for the DOSBox-X window to
|
|
start. The option can be combined with the existing
|
|
"windowposition" config option to specify the
|
|
position on the specified display/screen. (Wengier)
|
|
- DOSBox-X will now pop up a message box to inform
|
|
the user when a Direct3D pixel shader is loaded
|
|
from the menu on the Windows platform. (Wengier)
|
|
- Extended serial (COM) ports from COM1-COM3 to COM1-
|
|
COM9 in the [serial] section. The config options
|
|
serial4-9 are advanced options. You can optionally
|
|
specify base addresses for any serial ports. When
|
|
the "file" option is used, you can additionally
|
|
specify a program to open the file with "openwith"
|
|
option. If the specified program cannot be executed
|
|
due to some problem, DOSBox-X will try to start a
|
|
program as specified with the "openerror" action,
|
|
or it will show an error. For both serial (COM) and
|
|
parallel (LPT) ports options, the program commands
|
|
can be quoted with double quotes, or with single
|
|
quotes if the "squote" option is added. (Wengier)
|
|
- Extended parallel (LPT) ports from LPT1-LPT3 to
|
|
LPT1-LPT9 in the [parallel] section. Config options
|
|
lpt4-9 are advanced config options. You can also
|
|
optionally specify base addresses and IRQs for
|
|
these ports. The parallel1-9 config options are
|
|
enhanced to allow the generated files to be started
|
|
with the specified action: "openpcl" to start a
|
|
program to open the file if the print output is
|
|
detected to be PCL; "openps" to start a program if
|
|
the print output is detected to be PostScript (PS);
|
|
"openwith" to start a program otherwise. If you'd
|
|
like to specify parameters then be sure to properly
|
|
quote the string(s). Furthermore, if any of the
|
|
specified program(s) cannot be executed, DOSBox-X
|
|
will try to start a program as specified with the
|
|
"openerror" action, or show an error. (Wengier)
|
|
- Added "openwith" and "openerror" config options to
|
|
[printer] section to start the specified program to
|
|
open the printer output file. The [printer] section
|
|
also accepts "fontdir" option where you can change
|
|
the path ("FONTS" by default) where the printer TTF
|
|
fonts (including courier.ttf, ocra.ttf, roman.ttf,
|
|
sansserif.ttf, script.ttf) are located. If no TTF
|
|
font can be found (either from the custom path or
|
|
system path) for printing, the internal TTF font
|
|
for the TTF output will be used. (Wengier)
|
|
- Added read-only options to the Drive menu to mount
|
|
host folders/drives or image files to the specified
|
|
drive letter in read-only mode. (Wengier)
|
|
- You can now use a single mapper file for both SDL1
|
|
and SDL2 versions of DOSBox-X! The new mapper file
|
|
will be divided to sections [SDL1] and [SDL2] for
|
|
both versions. The mapper file can be specified
|
|
with the mapperfile config option, or you can set
|
|
the mapperfile_sdl1 and mapperfile_sdl2 config
|
|
options to override mapperfile option. (Wengier)
|
|
- Added -defaultmapper command-line option which will
|
|
use default key bindings for the mapper. (Wengier)
|
|
- The menu functions "Load mapper file", "Quick edit
|
|
mode", "Stop clipboard pasting" and "Display state
|
|
information" have been added to the key mapper so
|
|
that you can now define your own shortcut keys to
|
|
activate these functions. (Wengier)
|
|
- The default shortcuts for the "Copy to clipboard",
|
|
"Paste from clipboard", and the "Reset window size"
|
|
functions are now Ctrl+F5, Ctrl+F6 and Host(F11/F12)
|
|
+BackSpace respectively. (Wengier)
|
|
- Added ttf.fontbold, ttf.fontital, and ttf.fontboit
|
|
config options so that you can specify actual bold
|
|
italic, and bold-italic TrueType fonts for use with
|
|
the TTF output that will render the bold, italic,
|
|
and bold-italic text styles using the actual TTF
|
|
fonts (e.g. consolab, consolai, consolaz instead of
|
|
consola) instead of making the original TTF font
|
|
bold, italic, bold-italic automatically. (Wengier)
|
|
- DOSBox-X now supports the use of arrow keys (left,
|
|
right, up, down, home, end) to select and copy text
|
|
to the host clipboard in addition to a mouse button
|
|
(subject to the specified key modifier, or use the
|
|
QuickEdit function). The arrow keys will move the
|
|
selections; press Home key to start the actual text
|
|
selection and End key to end text selection and to
|
|
copy to the clipboard; press ESC key to cancel text
|
|
selection. Set config option "clip_mouse_button" to
|
|
"arrows" to enable it, or select it from "Shared
|
|
clipboard functions" menu group. (Wengier)
|
|
- You can now press the key combination Ctrl+Tab in
|
|
the shell to see a list of files/directories that
|
|
can be completed by the Tab completion. (Wengier)
|
|
- Added SETCOLOR command to view or change the text-
|
|
mode color scheme settings. Also fixed the color
|
|
palette for the TTF output. (Wengier)
|
|
- Separated "TTF options" menu group that contains
|
|
TrueType font (TTF) related menu options from the
|
|
"Text-mode" menu group in "Video" menu. (Wengier)
|
|
- The "Show menu bar" option now appears in system
|
|
menu of the Windows SDL2 build too. (Wengier)
|
|
- If a language file fails to load, DOSBox-X will now
|
|
show a warning dialog instead of exiting. (Wengier)
|
|
- The option "clip_key_modifier" now accepts values
|
|
like "ctrlalt", "ctrlshift", "altshift". (Wengier)
|
|
- Fixed 2D texture not showing for 3dfx games in the
|
|
Glide passthrough mode. (Wengier)
|
|
- Fixed the mouse sensitivity menu option (under the
|
|
"DOS" menu) not working. (Wengier)
|
|
- Fixed the color palette problem when switching to
|
|
graphic mode from mono mode. (Wengier)
|
|
- Fixed full-screen TTF output may not fully cover
|
|
the background screen in Linux. (Wengier)
|
|
- Fixed that lines starting with "%" in [autoexec]
|
|
section are being ignored. (Wengier)
|
|
- Fixed issues with building the code with original
|
|
MinGW using the ./build-mingw script. (Wengier)
|
|
- Fixed option "output=ttf" not working properly with
|
|
-startui/startmapper command-line option. (Wengier)
|
|
- When the mouse is captured, the title bar will show
|
|
the shortcut to release the mouse. (Wengier)
|
|
- IMGMOUNT now assumes the ISO type for .GOG/.INS
|
|
files (which are equivalent to .CUE/.INS files)
|
|
if no type is specified by the user. (Wengier)
|
|
- Improved the dynamic core including the way its
|
|
cache is allocated and to support dual mapping.
|
|
- The FREECG98.BMP file (for PC-98 mode) is now
|
|
rendered based on a unifont_jp TTF font instead
|
|
of UnifontFullMediumMono.ttf. (roytam1)
|
|
- Added support for automatic switching from TTF
|
|
output to another output in PC-98 mode, allowing
|
|
Windows 3.1 to run in this mode. (Wengier)
|
|
- Added OPL3Duo support, which passes OPL3 output
|
|
to an OPL3Duo Arduino board with a specific
|
|
configuration if desired. Set the config option
|
|
"oplemu=opl3duoboard" to use it. (josephillips85)
|
|
0.83.8
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.8.html
|
|
- Added support for scalable TrueType font (TTF)
|
|
output for text-mode programs. Set "output=ttf"
|
|
and optionally a monospaced TTF font (such as
|
|
consola) with config option "ttf.font" to use it.
|
|
Lines and columns can be specified with config
|
|
options "ttf.lins" and "ttf.cols", and the cursor
|
|
can be made blinking with the option "ttf.blinkc".
|
|
The config options "ttf.ptsize" and "ttf.winperc"
|
|
can be used to set the TTF font size and window
|
|
percentage respectively. If you specify a TTF font
|
|
size with "ttf.ptsize" then "ttf.winperc" will be
|
|
ignored. You can also specify a word processor
|
|
(WP=WordPerfect, WS=WordStar, XY=XyWrite) for the
|
|
on-screen text-style and 512-character font (WP)
|
|
features. When using the TTF output DOSBox-X will
|
|
temporarily switch to a different output when a
|
|
graphical mode is requested (or when trying to take
|
|
a screenshot); the TTF output will be auto-switched
|
|
back later), which can be customized via config
|
|
option "ttf.outputswitch" (which defaults to auto).
|
|
Menu items in the "Text-mode" menu group (under
|
|
"Video" menu) have been expanded to support TTF
|
|
options such as increasing/decreasing the TTF font
|
|
sizes and on-screen text style toggling (including
|
|
bold, italics, underline and strikeout). You can
|
|
also select a TTF font to use at run-time with the
|
|
"Select TrueType font (TTF)" menu option. (Wengier)
|
|
- Added the "Load mapper file..." menu option (under
|
|
"Main") to select and load a DOSBox-X mapper file
|
|
at run-time. Be sure to select a SDL1 mapper file
|
|
for SDL1 builds, and similar for SDL2. (Wengier)
|
|
- You can now select a host key from the menu (under
|
|
"Main") including Ctrl+Alt, Ctrl+Shift, Alt+Shift,
|
|
or use the mapper-defined host key as in previous
|
|
versions (which default to F11 on Windows and F12
|
|
otherwise). A config option "hostkey" is added so
|
|
that you can specify it from config file. (Wengier)
|
|
- Pasting text from the clipboard on macOS SDL1 build
|
|
is now supported like Linux SDL1 build. (Wengier)
|
|
- Added support for ARM-based Apple M1 MacBook. The
|
|
dynamic core now works on ARM-based macOS systems.
|
|
SDL1 builds updated to use newer audio APIs on the
|
|
macOS platform so that the audio works once again
|
|
when compiled and run on macOS 11 (Big Sur). Prior
|
|
to the change, ancient versions of the API dating
|
|
back to the mid 2000s were used which no longer
|
|
work on Big Sur.
|
|
- DOSBox-X will now look for the config file (i.e.
|
|
dosbox-x.conf/dosbox.conf) and the mapper file in
|
|
the directory containing the DOSBox-X executable
|
|
too if the config or mapper file cannot be found
|
|
in the DOSBox-X working directory. (Wengier)
|
|
- The system menu in Windows SDL1 builds is now also
|
|
available for Windows SDL2 builds, and menu items
|
|
"Reset font size", "Increase TTF font size" and
|
|
"Decrease TTF font size" are added. (Wengier)
|
|
- Enhanced the mapper editor interface to allow more
|
|
keyboard shortcuts to be added, shown in multiple
|
|
pages in the mapper, navigable with the "Previous
|
|
Page" and "Next Page" buttons. The text in the
|
|
grids are now longer and clearer too. The default
|
|
shortcuts for a few items are changed to use the
|
|
Host key style (e.g. Host+S and Host+L for saving
|
|
and loading states respectively). (Wengier)
|
|
- Added menu item "List network interfaces" under
|
|
"Help" menu to list network interfaces in the host
|
|
system for the NE2000 feature. (Wengier)
|
|
- Added menu group "DOS commands" under "Help" menu
|
|
to display the help content for the selected DOS
|
|
shell command (DIR, CD, etc). (Wengier)
|
|
- Configuration Tool now provides the option to save
|
|
to the primary or user config files. (Wengier)
|
|
- Certain config options (e.g. doublescan) that were
|
|
marked as advanced options are now general config
|
|
options and will appear in dosbox-x.reference.conf
|
|
apart from dosbox-x.reference.full.conf. (Wengier)
|
|
- Added config options "saveremark" (default: true)
|
|
and "forceloadstate" (default: false) in [dosbox]
|
|
section which can be used to control if DOSBox-X
|
|
should ask users to enter remarks when saving a
|
|
state or show warnings when loading a saved state
|
|
if there is a mismatch found. (Wengier)
|
|
- The config option "pixelshader" is moved from the
|
|
section [gui] to [render] so that it will be in the
|
|
same section as the option "glshader". (Wengier)
|
|
- Added menu item "Select OpenGL (GLSL) shader..." to
|
|
allow OpenGL shader switch from the menu, just like
|
|
the function for Direct3D pixel shaders. (Wengier)
|
|
- Added menu item "Show IDE disk or CD status" under
|
|
"DOS" menu to show the current assignments (disk or
|
|
CD image) of the IDE controllers. (Wengier)
|
|
- Fixed IDE CD assignment may not be reset when soft
|
|
reboots are activated from guest systems. (Wengier)
|
|
- The program 80x43.COM is added into the ZIP package
|
|
TEXTUTIL.ZIP on the Z drive. You can also change
|
|
current text screen to the 80x43 mode from the menu
|
|
group "Text-mode" under "Video" menu. (Wengier)
|
|
- Enhanced MODE command so that you can change the
|
|
number of columns and lines in the screen with the
|
|
syntax "MODE CON COLS=c LINES=n" (c=80 or 132, and
|
|
n=25, 43, 50, or 60). The command "MODE CON" will
|
|
show the current number of columns and lines in the
|
|
screen as in a real DOS system. (Wengier)
|
|
- Added FLAGSAVE command for the save state feature
|
|
to flag (mark) one or more files to be saved and
|
|
loaded. Type "FLAGSAVE /?" for more information on
|
|
this command. (PogoMan361 and Wengier)
|
|
- Enhanced A20GATE command to show the current status
|
|
of the A20 gate when no parameter is given, along
|
|
with other small improvements. (Wengier)
|
|
- INT 21h DOS=HMA emulation, to enable the A20 gate,
|
|
and autoa20fix, to disable the A20 gate, now checks
|
|
whether the CPU is running in virtual 8086 mode.
|
|
If vm86 detected, the code will control the A20
|
|
gate by calling the XMS interface instead of direct
|
|
reading/writing via port 92h. This consideration
|
|
is required for autoa20fix to cooperate with
|
|
Microsoft Windows 3.1. Note that Windows 3.1 does
|
|
not virtualize port 92h. If it did, this workaround
|
|
would not be necessary.
|
|
- Added -a option to LOADFIX command which will auto
|
|
allocate enough memory to fill lowest 64KB memory
|
|
instead of using exactly 64KB memory. (Wengier)
|
|
- Added autofixwarning option (true by default) which
|
|
allows user to silence the messages when DOSBox-X
|
|
tries to auto-fix "Packed file is corrupt" error
|
|
when running a program with this issue. (Wengier)
|
|
- Added autoa20fix option (enabled by default). This
|
|
option when enabled attempts to resolve EXEPACK
|
|
"Packed file is corrupt" errors by temporarily
|
|
disabling the A20 gate and running the program
|
|
again. This may provide better support for affected
|
|
DOS applications than the LOADFIX option. If both
|
|
autoa20fix and autoloadfix are set, then autoa20fix
|
|
will be tried first, and if it did not work then
|
|
autoloadfix will be tried next.
|
|
- The autoloadfix config option changed to allocate
|
|
only enough memory to keep the executable above the
|
|
64KB boundary, instead of blindly allocating 64KB.
|
|
- Fixed menu items "Rescan drive" and "Swap disk" in
|
|
"Drive" menu being reversed. (Wengier)
|
|
- Fixed CD audio issue with the game "The Secret of
|
|
Monkey Island" when talking to the pirate in Scumm
|
|
Bar by adapting the patch that fixes it. Thanks
|
|
kcgen for the fix logic. (Wengier)
|
|
- Added support for MAME CHD CD images. You can now
|
|
mount CHD images with IMGMOUNT command, or from the
|
|
Drive menu. Based on libchdr library and the work
|
|
of the user whocares010. (Wengier)
|
|
- Updated FLAC/MP3/WAV CD-DA decoder libraries to the
|
|
latest versions (versions 0.12.22, 0.6.19, 0.12.14
|
|
respectively). Thanks to mackron & kcgen. (Wengier)
|
|
0.83.7
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.7.html
|
|
- The primary DOSBox-X Wiki is now located at the
|
|
URL: https://dosbox-x.com/wiki (Wengier)
|
|
- Implemented the x86 dynamic core for both 32-bit
|
|
and 64-bit systems by re-porting the code from SVN.
|
|
Dynamic core now supports either the dynamic_x86
|
|
or the dynamic_rec core. The dynamic_x86 core will
|
|
be used by default for x86 and x86_64 platforms and
|
|
if "core=dynamic" is set, and Windows 9x can be run
|
|
in this dynamic core (although at this time may
|
|
encounter some issue with the S3 driver). You can
|
|
also explicit specify setting "core=dynamic_x86" or
|
|
"core=dynamic_rec" for either the dynamic_x86 core
|
|
or the dynamic_rec core. Also thank joncampbell123
|
|
for the 64-bit fix. (Wengier)
|
|
- You can now use your own save file (in addition to
|
|
save slots! There are now a "Use save file" toggle
|
|
item and "Browse save file..." for browsing save
|
|
files on your computer. A config option "savefile"
|
|
(in [dosbox] section) is added to specify a save
|
|
file to use at start. (Wengier)
|
|
- Save state feature now allows users to optionally
|
|
enter remarks when saving a state. A submenu group
|
|
"Save/load option" is added (under "Capture") where
|
|
you can toggle menu items "No remark when saving
|
|
state" (for disabling input of remarks when saving)
|
|
and "force load state mode". A menu item "Display
|
|
state information" is added as well to display the
|
|
information of the saved state. (Wengier)
|
|
- DOSBox-X will now use native dialog box to display
|
|
quit warnings and save state errors. (Wengier)
|
|
- Changed some DOS error messages (such as "Illegal
|
|
command" which now reads "Bad command or filename")
|
|
similar to real DOS systems. (Wengier)
|
|
- ADDKEY and INT2FDBG commands now appear as programs
|
|
on Z: drive instead of shell commands. (Wengier)
|
|
- Improved the -z (move virtual drive Z:) function of
|
|
MOUNT command. You can move the virtual drive as
|
|
many times as you want, and save/load states will
|
|
work even after you move the Z: drive. (Wengier)
|
|
- Enhanced the config option "freesizecap" to allow
|
|
the setting "fixed" which is the same as "false",
|
|
and a new setting "relative" is added, which will
|
|
be similar to the setting "fixed" but the reported
|
|
free disk size will also change relative to the
|
|
change of the free disk size ever since. (Wengier)
|
|
- Added support for Opus CD-DA tracks by porting and
|
|
cleaning up the source code from other projects.
|
|
Many thanks to Marty Shepard and kcgen. (Wengier)
|
|
- Support for FluidSynth MIDI Synthesizer is now
|
|
included in the MinGW builds by default just like
|
|
Visual Studio builds. Set "mididevice=fluidsynth"
|
|
and a soundfont file to use it. (Wengier)
|
|
- Enabled xBRZ scaler for Visual Studio SDL2 builds
|
|
just like Visual Studio SDL1 builds. (Wengier)
|
|
- Added menu item "Show Sound Blaster configuration"
|
|
under "Sound" menu to show the current information
|
|
about Sound Blaster, and also menu item "Show MIDI
|
|
device configuration" (also under "Sound" menu)
|
|
to show information about the current MIDI device
|
|
such as the soundfont file in use. (Wengier)
|
|
- Added "Mount multiple disk/CD images" option to the
|
|
mounting options of the Drive menu to allow users
|
|
to mount more than one disk/CD images to a drive,
|
|
swappable from the menu. Also added separators to
|
|
the Drive submenu to make it look better. (Wengier)
|
|
- Added new CPU types to the "Emulate CPU speed" menu
|
|
group namely 286-25MHz, 386DX-25MHz, 486DX4-100MHz,
|
|
486DX5-133MHz, Pentium-60MHz, Pentium-75MHz, and
|
|
Pentium-90MHz. Thanks again for the data provided
|
|
by the user maximus105. (Wengier)
|
|
- You can now select a special key (e.g. Alt+Tab,
|
|
Ctrl+Break, Ctrl+Alt+Del, etc) to be sent from the
|
|
key defined in the mapper editor. The key can be
|
|
selected (Ctrl+Alt+Del by default) from the "Send
|
|
special key" menu group in "Main" menu. (Wengier)
|
|
- Added full Ctrl+Break emulation at the BIOS and
|
|
DOS level, updated console emulation to match.
|
|
The "Pause" mapper shortcut is now moved to
|
|
HOST[F11/F12]+Pause instead of Ctrl+Pause so that
|
|
Ctrl+Break can work properly for users, and the
|
|
function to send the Ctrl+Break key from the menu
|
|
("Send special key" under "Main") is added. Also,
|
|
the PC-98 STOP key now functions the same as the
|
|
Ctrl+C and Ctrl+Break keys in IBM PC mode.
|
|
- Added functions "CopyToClipboard" and "QuickRun" to
|
|
the mapper editor so that you can use shortcuts to
|
|
activate them (default shortcuts: HOST(F11/F12)+A
|
|
and HOST(F11/F12)+Q respectively), and a default
|
|
shortcut HOST(F11/F12)+V is added to the clipboard
|
|
paste function. Meanwhile, FullCore and SimpleCore
|
|
shortcuts are removed from the mapper. (Wengier)
|
|
- Added two new menu items in the "Shared clipboard
|
|
functions" menu group under "Main", including "Copy
|
|
all text on the DOS screen" which will copy all
|
|
screen text to the clipboard, and "Stop clipboard
|
|
pasting" which allows user to stop pasting in the
|
|
middle of pasting long clipboard content. (Wengier)
|
|
- The mouse copy/paste feature is now available for
|
|
non-Windows systems on SDL2 builds. Also, pasting
|
|
from the clipboard with a mapped shortcut is also
|
|
available for Linux/X11 on SDL1 builds. (Wengier)
|
|
- Added "Use US keyboard layout" toggle menu item in
|
|
the "PC-98" menu group under "Video" to select
|
|
whether to force the default US keyboard layout in
|
|
PC-98 mode, same as the "pc-98 force ibm keyboard
|
|
layout" config option in [pc98] section. Also moved
|
|
the "PC-98 PIT master clock" options from the "DOS"
|
|
menu to this menu group. (Wengier)
|
|
- The full dosbox-x.reference.conf file is renamed to
|
|
dosbox-x.reference.full.conf. The original file
|
|
dosbox-x.reference.conf now contains common config
|
|
options instead of all config options. (Wengier)
|
|
- The CONFIG command and Configuration Tool will now
|
|
save common and modified config options by default.
|
|
The -all command-line option (or "Save all options
|
|
to the configuration file" checkbox) will force to
|
|
save all config options. A new -mod command-line
|
|
option is added to CONFIG command to save modified
|
|
config options only, and a new -norem command-line
|
|
option is added to not write remarks. (Wengier)
|
|
- Updated the Windows installer to default to the
|
|
"typical" installation. For the full installation
|
|
start menu items will be added for DOSBox-X builds
|
|
copied to subdirectories. A new checkbox "Write
|
|
common config options (instead of all) to the
|
|
configuration file" is added which when checked
|
|
will only write common and modified advanced config
|
|
options to the config file. Furthermore, for both
|
|
"typical" and "full" installations the Windows
|
|
installer will now also copies the DLL files
|
|
inpout32.dll (32-bit) and inpoutx64.dll (64-bit) to
|
|
the DOSBox-X install directory for use with the
|
|
direct parallel port passthrough feature. (Wengier)
|
|
- Improved Flatpak support for Linux. (rderooy)
|
|
- Improved message for the -help command-line option,
|
|
adding for example -silent and -socket command-line
|
|
options in the help messages. (Wengier)
|
|
- Added -silent command-line option to run DOSBox-X
|
|
silently (without showing the DOSBox-X window) and
|
|
then exit after executing AUTOEXEC.BAT. (Wengier)
|
|
- Fixed command-line option -socket not working for
|
|
the null-modem feature. (Wengier)
|
|
- Fixed issue that aspect ratio not being respected
|
|
in full-screen mode when a GLSL shader is enabled
|
|
with an OpenGL output. (Wengier)
|
|
- Fixed toggle in the "Frameskip" menu group did not
|
|
change when selecting a different option. (Wengier)
|
|
- Fixed shelling from programs may not work when the
|
|
shell config option is set. (Wengier)
|
|
- The default country setting ("country" option in
|
|
[config] section]) now defaults to auto-detection
|
|
if possible, or 81 (Japan) in PC-98 mode. (Wengier)
|
|
- Increased the default maximum DOS files (adjustable
|
|
from [config] section) from 127 to 200. (Wengier)
|
|
- Improved resetting with LOADLIN program. (Wengier)
|
|
- Improved Gravis Ultrasound (GUS) implementation to
|
|
make it more accurately represent the GUS DMA state
|
|
as expected by the running DOS software.
|
|
- The archive attribute will no longer automatically
|
|
be applied to directories on non-Windows systems.
|
|
This fixed issue with PLAYMIDI.EXE from Gravis
|
|
Ultrasound when listing directories. (Wengier)
|
|
- Applied hack to allow the low DMA channel detection
|
|
in the SB16 DIAGNOSE program to work. (Wengier)
|
|
- The default setting of the clip_paste_speed option
|
|
has been changed from 20 to 30, which will help
|
|
prevent lost keystrokes when pasting from the host
|
|
clipboard for some programs. (Wengier)
|
|
- With Pentium CPU setting (cputype=pentium) DOSBox-X
|
|
no longer reports FDIV bug by default. An advanced
|
|
config option "report fdiv bug" is added to report
|
|
such CPU bug when set to true. (rderooy & Wengier)
|
|
- Added support for the XDG_DATA_HOME environment
|
|
variable for config directory in Linux. (rderooy)
|
|
- Added support for compiling with pcap for Windows
|
|
MinGW builds. (Jookia)
|
|
- Added config option "windowposition" (in [sdl]
|
|
section) to set the window position at startup in
|
|
the positionX,positionY format. (tomba4)
|
|
- Added config option "raw_mouse_input" (in [sdl]
|
|
section; SDL2 builds only) to bypass the operating
|
|
system's mouse acceleration & sensitivity settings.
|
|
Implemented by NicknineTheEagle.
|
|
- Added config option "startquiet" (in [dos] section)
|
|
which when set to true will silence the information
|
|
messages before launching Windows programs to run
|
|
on the Windows host. A toggle menu item "Quiet mode
|
|
(no start messages)" is added to the "Windows host
|
|
applications" menu group in "DOS" menu. (Wengier)
|
|
- The menu "Show details" (under "Main") is renamed
|
|
to "Show FPS and RT speed in title bar". (Wengier)
|
|
- Add menu group "Text-mode" under "Video" menu to
|
|
change some text-mode related video settings, such
|
|
as changing the number of rows and columns. A zip
|
|
package named TEXTUTIL.ZIP is added to the Z drive
|
|
that contains various utilities (such as CGA.COM,
|
|
EGA.COM, 132X25.COM, 132X43.COM) to change current
|
|
video setting from the command line. Also added a
|
|
config option "high intensity blinking" which when
|
|
set will display high intensity background colors
|
|
instead of blinking foreground text. The menu item
|
|
"Allow 9-pixel wide fonts" is moved from the menu
|
|
group "Compatibility" to here. (Wengier)
|
|
- Added "Debugging" menu group under "Help" menu, and
|
|
moved items from the "Video" Debug and "DOS" Debug
|
|
menus and the debugger here (debug builds only).
|
|
Also allowed to hide/show the console or debugger
|
|
window in Windows debug builds. With the menu item
|
|
"Console wait on error" checked the Windows console
|
|
window will wait for the ENTER key before closing
|
|
itself after an E_EXIT occurs. (Wengier)
|
|
- Updated MPXPLAY to latest version 1.65. (Wengier)
|
|
- Integrated SVN commits (Allofich)
|
|
- r4386: Correct MPU-401 clock-to-host function to
|
|
operate independently of playing. Fixes hang at
|
|
exit when playing Roland music in demos by The
|
|
Phoney Coders. Clamp tempo to valid range.
|
|
- r4384: ICW1 on the PIC clears the Interrupt Mask
|
|
Register. Fixes Antagony and quite a few demos that
|
|
expect IRQs to be unmasked.
|
|
- r4382: Refine adlib timers a bit more and make
|
|
reading the Adlib take a bit more time.
|
|
- r4378: Prevent some possible deadlocks with sti
|
|
in dynrec core.
|
|
- r4375: Improve compatibility with older Intel
|
|
chipsets
|
|
- r4374: Add a bit of hack so cycles=max/auto 90%
|
|
keeps on working inside batch files after r3925.
|
|
- r4371: Fix regression in Clue: Master Detective.
|
|
- r4370: As an adjunct to r4369, make the reference
|
|
counts of standard device handles equivalent to
|
|
those of real DOS.
|
|
- r4369: Compatible side-effect behavior of DOS in
|
|
the file close function.
|
|
- r4368: Improve error codes for some DOS file functions.
|
|
- r4367: Change FPU_FBST to only write 18 decimals
|
|
instead of the wrongly 19, this makes it possible
|
|
to switch 64 integers which in turn fixes some
|
|
rounding issues. (jmarsh)
|
|
- r4282,r4283: Switch to a different way to calculate
|
|
DBOPL table offsets.
|
|
- r4280: Prevent GenerateDMASound from running with
|
|
input of 0.
|
|
- r4279: Remove DMA_TRANSFEREND and replace with
|
|
DMA_MASKED.
|
|
- r4277: Remove cases not needed after r4276
|
|
- r4276: Remove defunct code related to the initial
|
|
display mode of the system BIOS during video mode
|
|
changes.
|
|
- r4274: fix externals.
|
|
- r4273: Make frameskip an integer.
|
|
- r4269: Use fabsf when return value is a float.
|
|
Small warning fix.
|
|
- r4265: Some more cleanups and memleak fixes.
|
|
- r4264: Pick some lowhanging fruit. (some memory
|
|
leaks and unused variables)
|
|
- r4262: missed one
|
|
- r4261: These actually use float as input.
|
|
- r4258: Rename bios tester to biostest and make it
|
|
debug only to avoid people trying to load real
|
|
bioses.
|
|
- r4257: Add simple program that allows you to boot
|
|
into a bios image for running cpu tester bios.
|
|
0.83.6
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.6.html
|
|
- Improved internal Voodoo card hardware emulation,
|
|
such as fixing the font issue with the 3dfx version
|
|
of Tomb Raider when using non-Glide mode. Portions
|
|
of the code are ported from DOSBox ECE. (Wengier)
|
|
- Added OpenGL shader support by porting the feature
|
|
from DOSBox SVN. GLSL shaders are now supported in
|
|
both SDL1 and SDL2 builds, and this also allows
|
|
pixel-perfect scaling to be enabled for the OpenGL
|
|
outputs. The config option "glshader" (in [render]
|
|
section) can be used to specify a GLSL shader file
|
|
or a built-in shader when the output is set to
|
|
"opengl" or "openglnb". For example, you can use
|
|
the setting "glshader=sharp" (built-in shader) or
|
|
"glshader=pixel_perfect" (with GLSL shader file)
|
|
for the pixel-perfect scaling mode. The Windows
|
|
installer will also copy several GLSL shader files
|
|
to the "glshaders" subdirectory of the DOSBox-X
|
|
install directory to be used directly. (Wengier)
|
|
- Support for FluidSynth MIDI Synthesizer is now
|
|
included in the Windows Visual Studio builds by
|
|
default. Set "mididevice=fluidsynth" and a sound
|
|
font (e.g. GeneralUser_GS.sf2) to use it. (Wengier)
|
|
- Updated the MUNT MT32 emulation library to its
|
|
latest version 2.4.0. A few new MT32 config options
|
|
(starting with "mt32.") are added to [midi] section
|
|
of the DOSBox-X configuration. (Wengier)
|
|
- The DOSMID and MPXPLAY programs have been built
|
|
into DOSBox-X, both can be found on the Z drive and
|
|
feature full-screen user interfaces with support
|
|
for command-line usages (use /? option for help).
|
|
DOSMID can play MIDI/RMI/MUS audio files, whereas
|
|
MPXPLAY is a powerful and flexible audio player
|
|
with support for a variety of formats including
|
|
AAC/AC3/APE/FLAC/MP2/MP3/MPC/OGG/WAV and more with
|
|
playlist support. (Wengier)
|
|
- The mounting options "Mount as Hard Disk", "Mount
|
|
as CD-ROM", "Mount as Floppy", "Mount disk image"
|
|
and "Boot from disk image" (previously only for
|
|
Windows) in the "Drive" menu and the "Quick launch
|
|
program..." in the "DOS" menu are now available
|
|
for non-Windows platforms as well. (Wengier)
|
|
- Added "Shared Windows clipboard functions" menu
|
|
group under "Main", which allows you to enable
|
|
or disable the different ways for DOSBox-X to
|
|
communicate with the Windows clipboard. (Wengier)
|
|
- Added config option "dos clipboard api" in [dos]
|
|
section to control whether to enable the DOS APIs
|
|
for communications with the Windows clipboard for
|
|
DOS applications. (Wengier)
|
|
- Added config option "clip_mouse_button" to select
|
|
a mouse button (middle, right, or none; with right
|
|
mouse button being the default) for copying to and
|
|
pasting from the Windows clipboard. (Wengier)
|
|
- The mouse wheel movements will be automatically
|
|
converted into up/down arrows by default for the
|
|
integrated DOS now. You can also enable it for
|
|
the guest system from the "Main" menu ("mouse wheel
|
|
movements" -> "Enable for guest systems also") or
|
|
from the config file. (Wengier)
|
|
- Added "Emulate CPU speed" menu group (under "CPU")
|
|
to emulate the speed of a specific CPU class. The
|
|
cycles to emulate are approximations of the actual
|
|
CPU hardware, and they are available thanks to data
|
|
provided by the user maximus105. Also added config
|
|
option "cycle emulation percentage adjust" in [cpu]
|
|
section for users who would like to make relative
|
|
percentage adjustments (between -25% and 25%) in
|
|
case it is necessary. (Wengier)
|
|
- Added SORT command from FreeDOS. It can be used to
|
|
sort input, e.g. "TYPE FILE.TXT | SORT". (Wengier)
|
|
- Added DELTREE command to delete a directory and all
|
|
the subdirectories and files in it as in a real DOS
|
|
system. Please use it with caution. (Wengier)
|
|
- The command for starting the Configuration Tool has
|
|
been renamed from "SHOWGUI" to "CFGTOOL". A new
|
|
command-line option -gui is added to CONFIG command
|
|
to start the Configuration Tool as well. (Wengier)
|
|
- DOSBox-X now includes ZIP.EXE and UNZIP.EXE from
|
|
InfoZip for zipping and unzipping files in DOS.
|
|
Both programs will appear on the Z drive. (Wengier)
|
|
- The powerful DOS CD player called SJGPLAY has been
|
|
built into DOSBox-X. You can now find the program
|
|
CDPLAY.EXE in the Z drive for playing Audio CDs in
|
|
DOS, which supports both graphical and command-line
|
|
usage, and you will also find a text file named
|
|
CDPLAY.TXT in the Z drive for a quick usage guide.
|
|
A zip package including full documentation and some
|
|
extras will additionally appear as SJGPLAY.ZIP in
|
|
the Z drive. This freeware program was written by
|
|
Steve Gray and is now included in DOSBox-X with
|
|
explicit permission of the author. (Wengier)
|
|
- DOSBox-X will now by default show a quit warning
|
|
if a DOS program or game, or a guest system is
|
|
running. The previous behavior can be set with
|
|
"quit warning=autofile". (Wengier)
|
|
- The welcome banner when DOSBox-X starts has been
|
|
improved for a better looking and should provide
|
|
more helpful instructions for users. (Wengier)
|
|
- Add new "Help" menu which includes menu items
|
|
"Introduction", "DOSBox-X homepage", "DOSBox-X Wiki
|
|
guide", "DOSBox-X support" and "About". (Wengier)
|
|
- Improved the message when automatically re-running
|
|
the executable which failed with the "Packed file
|
|
is corrupt" error. Also added the "autoloadfix"
|
|
config option which when set to "false" will not
|
|
automatically re-run such programs. (Wengier)
|
|
- The display for several section names in DOSBox-X's
|
|
graphical configuration tool has been capitalized
|
|
or modified otherwise to look better. A default
|
|
shortcut key HOST(F11/F12)+C is added for starting
|
|
the graphical configuration tool. (Wengier)
|
|
- Added the "Show advanced options" checkbox in the
|
|
main screen of the Configuration GUI to toggle
|
|
whether to display all config options for the
|
|
sections. If unchecked (default), it will show
|
|
common config options instead of all of them. A
|
|
new config option "show advanced options" is added
|
|
which when set to "true" will make the checkbox
|
|
checked by default. (Wengier)
|
|
- Added code to cap the scan line length given to
|
|
the VESA BIOS given the video mode. This prevents
|
|
VBETEST.EXE from doing test patterns smaller than
|
|
the actual display, which can happen with 32bpp
|
|
320x200 modes and 1MB or less video RAM.
|
|
- VESA BIOS Set Scan Line Length fixed to properly
|
|
report and handle scan line length for 16-color
|
|
SVGA planar modes. VBETEST 16-color modes now
|
|
display correctly.
|
|
- Added option to control whether VESA BIOS panning
|
|
(the original VBE call) waits for vsync.
|
|
- Moved video related config options from [dosbox]
|
|
section to its own [video] section. These options
|
|
in existing config files will be automatically
|
|
redirected to the [video] section from the [dosbox]
|
|
section when DOSBox-X starts. Windows installer can
|
|
also move such config options from existing config
|
|
files automatically. (Wengier)
|
|
- Cleared modem phone book before parsing it. Thank
|
|
NicknineTheEagle for the improvement.
|
|
- Improved the help message of MOUNT command. Also
|
|
added option -examples to show its usage examples,
|
|
similar to IMGMOUNT and IMGMAKE commands. (Wengier)
|
|
- Fixed freeze when trying to reboot the internal
|
|
DOS when using a different code page and it is in
|
|
CGA or EGA emulation modes. (Wengier)
|
|
- DOSBox-X will now try to use the internal DOS date
|
|
and time (instead of always using the host date and
|
|
date) for file modification timestamps. (Wengier)
|
|
- Added menu item "Expanded memory (EMS)" under "DOS"
|
|
menu to dynamically enable or disable EMS memory
|
|
at run-time. You can now also modify EMS memory
|
|
with CONFIG command from command-line. (Wengier)
|
|
- Added config option "drive z hide files" (in [dos]
|
|
section) to hide or remove files listed (separated
|
|
by spaces) from the Z drive. If a file has a "/"
|
|
prefix (e.g. "/INTRO.COM"), then the specified file
|
|
will have the hidden attribute ("DIR /A" will list
|
|
all such files) instead of completely disappearing
|
|
from the Z drive. (Wengier)
|
|
- You can now add your own programs or files to the
|
|
Z drive! Put your programs or files in the drivez
|
|
directory located in the DOSBox-X program folder
|
|
or the DOSBox-X configuration directory, and they
|
|
will automatically appear on the Z drive. If any of
|
|
the files have the same names as the built-in ones,
|
|
they will replace the built-in files. For example,
|
|
you can replace the built-in EDIT.COM and XCOPY.EXE
|
|
programs (from FreeDOS) with MS-DOS counterparts.
|
|
Windows installer will now automatically create a
|
|
drivez directory with a README.TXT file in it too.
|
|
For subdirectories support please use MOUNT command
|
|
to mount local directory instead. (Wengier).
|
|
0.83.5
|
|
- Release notes for this version:
|
|
https://dosbox-x.com/release-0.83.5.html
|
|
- Windows installer now offers the option to upgrade
|
|
the DOSBox-X config file (dosbox-x.conf) to the
|
|
latest version format automatically while keeping
|
|
users' current settings. It can also add a context
|
|
menu for executables (.exe, .com, .bat), config
|
|
files (.conf) and folders in the Windows Explorer
|
|
so that you could quickly run or open them with
|
|
DOSBox-X from the Windows Explorer. More icons
|
|
are added to the DOSBox-X program group within the
|
|
Start menu as well. (Wengier)
|
|
- Added config option "startbanner" in [dosbox]
|
|
section which if set to "false" would skip the
|
|
welcome banner when DOSBox-X starts. Also added
|
|
config option "fastbioslogo" which if set to "true"
|
|
will skip the BIOS logo (replacing the command-line
|
|
option -fastbootlogo). A new command-line option
|
|
"-fastlaunch" is added to enable fast launch mode
|
|
by skipping both the logo and the banner. (Wengier)
|
|
- Added config option "ega per scanline hpel" in
|
|
[dosbox] section to control whether EGA emulation
|
|
latches hpel at display start (as VGA emulation
|
|
does) or allows hpel to change per scanline.
|
|
Setting the option to false is needed for some
|
|
games like Commander Keen.
|
|
- Support for mounting CD images with a sector size
|
|
of 2448, used by for example the MDF image of the
|
|
game Grand Theft Auto. (Wengier)
|
|
- Allowed Sound Blaster to be enabled by the games
|
|
"Desert Strike" and "Jungle Strike". (Wengier)
|
|
- Sound Blaster Pro emulation now maps DSP commands
|
|
0x41 to 0x47 as aliases of 0x40 (set time constant)
|
|
to support broken demoscene code that uses 0x41
|
|
in that way. Yes, such code would obviously break
|
|
on clone cards and the SB16. Added a config option
|
|
"dsp command aliases" in [sblaster] section to turn
|
|
it off for debugging. Alias is documented on Vogons
|
|
forums where someone made a SB Pro clone card.
|
|
- Fixed the issue with CD audio play by porting the
|
|
audio code from DOSBox ECE. (Wengier)
|
|
- COPY command now assumes /Y automatically when
|
|
running in the batch file or with CALL command
|
|
(or COMMAND /C) as in real DOS. (Wengier)
|
|
- DOSBox-X will allow control characters 8 (BS),
|
|
9 (TAB), 26 (SUB), and 27 (ESC) when executing GOTO
|
|
command in batch files without warnings. (Wengier)
|
|
- Normal core: REP MOVSD now checks segment limits
|
|
for ES:(E)DI and throws a GP fault if exceeded.
|
|
Demoscene productions marked as using VESA BIOS
|
|
modes and scribbling on the VGA BIOS are relying
|
|
on segment limits and GP faults to fake a linear
|
|
framebuffer.
|
|
- Added config option "vesa bank switching window
|
|
range check" to allow disabling the VESA BIOS
|
|
window number range check when called on to
|
|
bank switch. Needed for "Pill" by Opiate in the
|
|
end credits, which for some reason requires a
|
|
call for window number 0xFFFF to succeed in order
|
|
to draw credits without glitching.
|
|
- Added config option "vesa bank switching window
|
|
mirroring" for instructing VESA BIOS to ignore
|
|
bank switching window parameter when asked to
|
|
get/set bank switching window setting. Needed for
|
|
some old demoscene and game applications that
|
|
assume Window B is available, and will not render
|
|
SVGA properly without it.
|
|
- Added config option "quit warning" to indicate if
|
|
DOSBox-X should warn show a warning message when
|
|
you try to close the DOSBox-X window. If set to
|
|
"auto" (default), DOSBox-X will warn only if at
|
|
least one file handle is still open, or you are
|
|
currently running a guest system. (Wengier)
|
|
- Added command-line option "-defaultconf" to use the
|
|
default config settings. (Wengier)
|
|
- Added command-line option "-defaultdir" to specify
|
|
a directory (instead of the current directory) as
|
|
the working directory. DOSBox-X will look for the
|
|
dosbox-x.conf file in this directory. (Wengier)
|
|
- The -winrun command-line option will also enable
|
|
LFN support with "lfn=auto" on Windows. (Wengier)
|
|
- VER /R now shows DOSBox-X's Git commit SHA1, in
|
|
addition to the build date and other version
|
|
information shown by the VER command. (Wengier)
|
|
- Fixed that joystick may not work with the setting
|
|
"usescancodes=auto" when a non-US keyboard layout
|
|
is activated on the SDL1 build. (Wengier)
|
|
- DOSBox-X will now search for system fonts if the
|
|
fonts required for the printing feature cannot be
|
|
found in the FONTS directory. (Wengier)
|
|
- Added menu item "Send form-feed" under the DOS menu
|
|
for manually ejecting new pages to print. (Wengier)
|
|
- Added "Quick launch program..." menu (under "DOS")
|
|
to quickly run the specified program as selected
|
|
by the Windows file browser in DOSBox-X. (Wengier)
|
|
- Added "Drive information" menu item under "Drive"
|
|
menu to show information for the specified drive,
|
|
and added "Show mounted drive numbers" menu item
|
|
under "DOS" menu to show details for all mounted
|
|
drive numbers (0-5). (Wengier)
|
|
- The command "Swap CD" now swaps only CD drives (as
|
|
the name), not all non-floppy drives. Also added
|
|
"Swap disk" menu item under the "Drive" menu for
|
|
swapping individual mounted drives. (Wengier)
|
|
- IMGMAKE now tries to resolve home directory (~)
|
|
on Linux and macOS platforms. Also improved the
|
|
help message for this command. (Wengier)
|
|
- Fixed unmounting swap disks when unmounting drives
|
|
with MOUNT or IMGMOUNT command. (Wengier)
|
|
- Fixed possible failure when mounting .VHD images,
|
|
and the issue that leading colon (:) or read-only
|
|
marker may not work for such images. (Wengier)
|
|
- IMGMOUNT command without parameters now shows the
|
|
disk position and number of swap disks, as well as
|
|
IDE controller (if applicable). Also added option
|
|
-examples to show its usage examples. (Wengier)
|
|
- Add "-ro" option for IMGMOUNT command to mark all
|
|
disk images as read-only at once. You could also
|
|
mark read-only disk images individually using the
|
|
leading colon as in previous versions. (Wengier)
|
|
- The default value for "output" (in "sdl" section)
|
|
is now "default", which will default to the value
|
|
according to your platform. (Wengier)
|
|
- The -Q (quiet) option of MOUNT, BOOT and RESCAN
|
|
commands now silences virtually all outputs (error
|
|
and normal messages) of these commands. (Wengier)
|
|
- Worked around the mounting issue with LaunchBox,
|
|
by allowing a mounting command-line with single
|
|
quotes like MOUNT C 'X:\DOS' on Windows. (Wengier)
|
|
- Unmounting ISO drives will auto-unmount associated
|
|
El Torito floppy drives (if any) too. (Wengier)
|
|
- Updated xxHash library by Yann Collet from 0.7.4
|
|
to the stable version 0.8.0. (Wengier)
|
|
- Added support for the OPL2 audio board by setting
|
|
the config option "oplemu=opl2board".
|
|
- The save state feature now tries to save and then
|
|
restore the mounted drives of all types (if the
|
|
paths or image files still exist on host system).
|
|
This fixes the "save state corrupted" error while
|
|
trying to load saved states but the drives are not
|
|
yet mounted in DOSBox-X. (Wengier)
|
|
- The save state feature now verifies the emulated
|
|
machine type (VGA, PC98, etc) too when loading a
|
|
saved state. All confirm and error dialog boxes
|
|
for saving or loading states appear in a cross-
|
|
platform manner now, instead of only on Windows
|
|
systems. Also added the option to remove the saved
|
|
state in the selected save slot. (Wengier)
|
|
- Increased the number of save slots from 10 to 100.
|
|
Each page in the save slot menu (under "Capture")
|
|
still shows 10 slots as before, but you can now go
|
|
to the previous or next page (up to 10 pages) for
|
|
more save slots (100 in total). (Wengier).
|
|
- The [pci] section is now the [voodoo] section, and
|
|
the config option "voodoo" (the only option of that
|
|
section) is now named "voodoo_card" within the
|
|
[voodoo] section to make clear it is for emulating
|
|
the Voodoo card hardware. Also added config option
|
|
"voodoo_maxmem" (default: true) to specify whether
|
|
to use the maximum memory size (12MB instead of the
|
|
standard 4MB) for the Vooodoo card. (Wengier)
|
|
- Added support for Glide wrapper. It can be enabled
|
|
with the new config option "glide" set to "true"
|
|
in [voodoo] section. The library file glide2x.dll
|
|
(Windows)/libglide2x.so (Linux)/libglide2x.dylib
|
|
(macOS) is required for Glide to work. Be sure to
|
|
use 32-bit dll for 32-bit DOSBox-X binary, and
|
|
64-bit dll for 64-bit DOSBox-X binary. (Wengier)
|
|
0.83.4
|
|
- Fixed loading saved states in fullscreen mode with
|
|
the "aspect=true" setting. (Wengier)
|
|
- Added config option "saveslot" to select default
|
|
save slot (1-10). The timestamps for the saved
|
|
states will also be shown in the menu. (Wengier)
|
|
- Added key mapper for sending the Ctrl+Alt+Del key,
|
|
with HOST(F11/F12)+Del by default. (Wengier)
|
|
- Added dosbox-x.conf setting to ignore the EGA/VGA
|
|
"extended memory" bit. It was originally defined
|
|
back when stock EGA/VGA cards could ship with 64KB
|
|
of memory. The option is needed for DOS games that
|
|
accidentally clear the bit when using unchained
|
|
256-color modes (Mr. Blobby).
|
|
- Added new default value "auto" for the setting
|
|
"usescancodesauto" (in [sdl] section of the config
|
|
file) to work around issues with non-US keyboard
|
|
layouts on SDL1 builds. (Wengier)
|
|
- Added code pages 808, 850, 852, 853, 855, 857,
|
|
858, 869, 872 for host to guest codepage mapping
|
|
on mounted local or overlay drives. (Wengier)
|
|
- The mapper options "Increase recording volume" and
|
|
"Decrease recording volume" as well as function
|
|
"Show sound levels" (from MIXER command) appear
|
|
now as menu items (under "Sound") too. (Wengier)
|
|
- Fixed inputting of ASCII character 224 and 240
|
|
in Windows SDL2 or MinGW builds. (Wengier)
|
|
- Fixed possible DPMI error when running Windows
|
|
98 installation from the DOSBox-X shell without
|
|
using a batch file. (Wengier)
|
|
- Fixed a bug in the FAT driver that can cause
|
|
a byte to get lost if writing up to the end of
|
|
a cluster, which seems to be behind the
|
|
corruption with program group files when running
|
|
Windows for Workgroups 3.11 from DOSBox-X shell.
|
|
[https://github.com/joncampbell123/dosbox-x/issues/1758#issuecomment-665193066]
|
|
- Unknown INT 2Fh calls are now debug output, not
|
|
an error.
|
|
- Added VESA BIOS mode 68h alias as indicated on
|
|
the Vogons forum.
|
|
- Fixed handling of config commands with spaces
|
|
when the "shell configuration as commands"
|
|
setting is enabled (quotes are needed in such
|
|
cases). Also added "Config options as commands"
|
|
toggle menu (under "DOS") to enable/disable the
|
|
feature from menu. It is disabled by default to
|
|
avoid name clash with other programs. (Wengier)
|
|
- Added "Enable quick reboot" toggle menu (under
|
|
"DOS") so that when enabled, DOS restart calls
|
|
will reboot the emulated DOS (integrated or
|
|
guest DOS) instead of the virtual machine in
|
|
DOSBox-X. Also, you could change the default
|
|
setting for this by setting the new "quick
|
|
reboot" config option in "dos" section (Wengier)
|
|
- Added new "Reboot guest system" menu item (under
|
|
"Main") to reboot the kernel of the integrated
|
|
DOS or the guest DOS directly. The previous menu
|
|
item "Reset guest system" has been renamed to
|
|
"Reset virtual machine" which will restart the
|
|
virtual machine in DOSBox-X instead. (Wengier)
|
|
- Added "Reported DOS version" sub-menu (under
|
|
"DOS") to dynamically change the reported DOS
|
|
version (3.3, 5.0, 6.22, 7.1, or custom). This
|
|
may enable/disable long filename (LFN) support
|
|
with the default "lfn=auto" setting. (Wengier)
|
|
- LS is now an external command appearing on drive
|
|
Z: as LS.COM instead of a builtin shell command.
|
|
This avoids name clash with game "Links LS 97"
|
|
which has the main executable named LS.EXE. Also
|
|
fixed minor issues in this command. (Wengier)
|
|
- Fixed the game "Disney's Duck Tales: the Quest
|
|
for Gold" not able to start. (Wengier)
|
|
- Improved Configuration GUI's handling of "4dos"
|
|
and "config" sections. Also added the "Save..."
|
|
button just before the "Close" button. (Wengier)
|
|
- Added "euro" config option (in [render] section)
|
|
to display Euro symbol instead of the specified
|
|
ASCII character in any code page. (Wengier)
|
|
- PC-98 CG MMIO writes fixed to limit writes only
|
|
to the user-defined areas, same as the IO writes.
|
|
This fixes "Niko Niko" that appears to write a
|
|
few too many 0xE1 bytes when filling text
|
|
attribute RAM and into the CG MMIO region.
|
|
- With -winrun command-line option or the setting
|
|
"startcmd=true" (Windows only), you can now
|
|
directly launch Windows programs on mounted local
|
|
or overlay drives to run on the host. The option
|
|
"startwait=false" can be used to disable waiting
|
|
for Windows programs after started. This can also
|
|
be toggled from the "DOS" menu. (Wengier)
|
|
- Added START command to run commands on Windows
|
|
host system. The /MAX, /MIN, /HID options can
|
|
be used to run the specified program maximized,
|
|
minimized, or hidden (they can be shortened to
|
|
+, -, _ respectively). This command is disabled
|
|
by default, but can be enabled by either the
|
|
"startcmd" config option (in [dos] section) or
|
|
the -winrun command-line option (which will also
|
|
enable the CLIP$ device for Windows clipboard
|
|
support). START will run commands listed in the
|
|
"startincon" config option (separated by space)
|
|
in the Windows Command Prompt and wait for a key
|
|
press before exiting. (Wengier)
|
|
- Added SHELL= option to the [config] section in
|
|
dosbox-x.conf to specify an alternative shell,
|
|
e.g. "SHELL=4DOS.COM". (Wengier)
|
|
- Added built-in 4DOS 8.00 shell for 4DOS features
|
|
and capabilities. There is now a [4dos] section
|
|
in the dosbox-x.conf file to act as the 4DOS.INI
|
|
config file if you use this shell. (Wengier)
|
|
- Added "Mouse wheel movements" menu (under "Main")
|
|
to enable or disable the mouse wheel movements
|
|
to arrow (up/down etc) feature. (Wengier)
|
|
- Added "Quick right mouse button copy/paste" menu
|
|
item toggle to allow quick Windows clipboard copy
|
|
and paste via the right mouse button without any
|
|
key modifier that may have been specified by the
|
|
config option "clip_key_modifier". (Wengier)
|
|
- Fixed mounting a directory with command-line like
|
|
"dosbox-x .", and fixed mounting disk images with
|
|
spaces via the "Drive" menu on Windows. (Wengier)
|
|
- Added "mountwarning" config setting so you could
|
|
optionally disable the warning when attempting to
|
|
mount C:\ in Windows or / otherwise. (Wengier)
|
|
- IMGMOUNT now assumes "-fs none" automatically if
|
|
a drive number is specified instead of a drive
|
|
letter. Moreover, it will assume the image file
|
|
name "IMGMAKE.IMG" if no filename is specified by
|
|
the user. Also improved the command's handling of
|
|
El Torito floppy drives, e.g. you can use option
|
|
"-bootcd d" instead of "-el-torito d". (Wengier)
|
|
- IMGMAKE warning replaced to indicate a general
|
|
incompatibility between MS-DOS/SCANDISK and
|
|
cluster sizes 64KB or larger.
|
|
- IMGMAKE command will now use the image file name
|
|
"IMGMAKE.IMG" if no file name is specified (either
|
|
in the mounted local directory or in the DOSBox-X
|
|
program directory if the current directory is not
|
|
a local directory). The command now also supports
|
|
a -force option to force overwrite the image file
|
|
if it already exists. Furthermore, IMGMAKE will
|
|
delete the generated image file if an error occurs
|
|
during the image file creation. (Wengier)
|
|
|
|
0.83.3
|
|
- IMGMAKE can now generate FAT12, FAT16, and FAT32
|
|
filesystems. New option "-fat" is added to select
|
|
the filesystem for the disk image.
|
|
- Fixed command-line like "./dosbox-x /dir/app.bat"
|
|
not able to launch the specified program (Wengier)
|
|
- Fixed bug in DIR command's /P option which might
|
|
cause it to not work properly. (Wengier)
|
|
- The default key modifier for the Windows clipboard
|
|
copy & paste via the right mouse button feature is
|
|
now "shift" instead of "disabled". (Wengier)
|
|
- Single-stepping in the debugger with the 286 and
|
|
8086 normal cores now works correctly when stepping
|
|
over instructions with a segment prefix.
|
|
- Pentium MMX instructions now only available for
|
|
Pentium MMX or higher. Fixed the bug that allowed
|
|
MMX instructions for Pentium and lower if programs
|
|
ignored the CPUID feature bits. Also fixed Pentium
|
|
MMX instructions so that they work in both 16-bit
|
|
real mode and 32-bit protected mode to match how
|
|
they work in real hardware (joncampbell123)
|
|
- Updated DOSBox-X's implementation for Pentium MMX
|
|
instructions to latest version by kekko (Wengier)
|
|
- DOSBox-X will try to automatically run the program
|
|
with LOADFIX if the error message "Packed file is
|
|
corrupt" is detected. (Wengier)
|
|
- MOUNT command can now mount a drive to the UNC
|
|
root path in the form \\ComputerName\SharedFolder
|
|
on Windows systems. (Wengier)
|
|
- Improved the HX-DOS build package to make it fully
|
|
automated: all required HX DOS Extender files will
|
|
be included in the package, and dosbox-x.exe can
|
|
now be run directly in a real DOS system without
|
|
external requirements. (Wengier)
|
|
- Fixed incorrect frame rate reported by 3Dfx Voodoo
|
|
emulation (rderooy, backported from DOSBox SVN).
|
|
- Added the "Boot from disk image" menu item (A:, C:,
|
|
and D: drives only) in the "Drive" menu to boot the
|
|
specified disk image directly in Windows. (Wengier)
|
|
- Support for converting mouse wheel movements into
|
|
keyboard presses like arrow keys, configurable by
|
|
the option "mouse_wheel_key" (default is 0 which
|
|
disables this feature). When set to 1, mouse wheel
|
|
movements are converted to up/down arrows. Setting
|
|
it to 2 or 3 converts such movements to left/right
|
|
arrows or PageUp/PageDn keys respectively. (Wengier)
|
|
- Support for reloading the keyboard mapper file with
|
|
the config -set command. (Wengier)
|
|
- IMGMOUNT command without parameters will show disk
|
|
names for drive-number only mounts. (Wengier)
|
|
- IMGMOUNT can now autodetect DOS <= 3.21 harddisk
|
|
geometry with MFM sector images (rderooy & Wengier)
|
|
- IMGMOUNT -fs none fixed to use same geometry detect
|
|
function that FAT filesystem mounting uses.
|
|
- Added suppprt for mounting overlay drives using MOUNT
|
|
command with "-t overlay" option. Backported from
|
|
DOSBox SVN and adopted for DOSBox-X with additional
|
|
features such as long filename and PC-98 support, it
|
|
allows the users to redirect new and changed file(s)
|
|
to a different location transparently. (Wengier)
|
|
- Cleaned up the DPI awareness auto-detection code to
|
|
allow Visual Studio builds to again run on Windows 7.
|
|
Meanwhile, MinGW builds (either SDL1 or SDL2 version)
|
|
are still required for Windows XP systems. (Wengier)
|
|
- Updated Nuked OPL3 to latest version 1.8 for accurate
|
|
OPL3 emulation (Wengier)
|
|
- Added AUTOTYPE command to perform scripted keyboard
|
|
entry into a running DOS program or game. Ported from
|
|
DOSBox-staging, it can be used to reliably skip intro,
|
|
provide input to answer initial startup or config
|
|
questions, or conduct a simple demo. (Wengier)
|
|
- Added code page 866 (Cyrillic Russian) to support
|
|
host to guest code page mapping (tuffnatty)
|
|
- Mouse buttons (left, middle, right) can now be mapped
|
|
to keys in the keyboard mapper. (Wengier)
|
|
- Support for mounting .cue files with MP3/OGG/WAV/FLAC
|
|
compressed audio tracks. (Wengier)
|
|
- Rewrote the Windows installer for DOSBox-X, as well as
|
|
the building script for the installer. All required
|
|
build tools including the Inno Setup Compiler are now
|
|
provided in the repository and will be automatically
|
|
called by the building script. (Wengier)
|
|
- Added config option "mapperfile_sdl2" for SDL2 builds.
|
|
SDL1 and SDL2 builds of DOSBox-X can not use the same
|
|
mapper file, or they will likely malfunction. Adding
|
|
this option allows SDL1 and SDL2 builds of DOSBox-X
|
|
to work with the same dosbox-x.conf file. (Wengier)
|
|
- Added GUI menu option under "DOS" to change the long
|
|
filename setting (enable, disable, or auto). (Wengier)
|
|
- Improvements and fixes to the save/load state feature:
|
|
It now supports Sound Blaster Goldplay mode;
|
|
It now saves PC-98 FM interrupt state so that reloading
|
|
state does not cause hung music;
|
|
It is also fixed not to crash when used within a guest
|
|
operating system (when the DOS kernel has been shut down
|
|
using the BOOT command);
|
|
It now supports memory size up to 1GB;
|
|
It will save and verify the DOSBox-X version and build.
|
|
States saved by DOSBox-X in one platform (e.g. 64-bit
|
|
Windows) may not work in another (e.g. 32-bit Linux).
|
|
The GUI menu will show if the save slot is empty, and if
|
|
not the program name of save state will be displayed.
|
|
- Re-ported and improved the save state feature for saving
|
|
and loading states with support for up to 10 save slots.
|
|
They can be selected from the "Capture" menu. (Wengier)
|
|
- Added COUNTRY command to set country code for country-
|
|
specific date and time formats. For example, the command
|
|
"COUNTRY 61" sets the country code to 61 (International
|
|
English) which uses the DD-MM-YYYY date format instead
|
|
of the default (U.S.) MM-DD-YYYY date format. (Wengier)
|
|
- DOS 440Dh IOCTL function 67h (get access flag) added to
|
|
allow FDISK.EXE to determine FAT filesystem type. Also
|
|
implemented function 40h (set device parameters) and
|
|
function 46h (set volume serial number). (Wengier)
|
|
- Unknown DOS 440Dh IOCTLs warnings now indicate whether
|
|
triggered by call or query.
|
|
- S3 VESA BIOS mode number for 1024x768 32bpp changed to
|
|
avoid conflict with Windows 95 S3 driver and 800x600
|
|
16bpp mode.
|
|
- FAT driver no longer mounts FAT32 volumes unless the
|
|
DOS version is 7.1 or higher, and it no longer mounts
|
|
FAT16B LBA volumes unless the DOS version is 7.0 or
|
|
higher. These are to mimic the MS-DOS behavior.
|
|
- Fixed FAT driver not to attempt to mount partitions that
|
|
have nothing to do with the FAT filesystem (such as
|
|
type 0Dh and extended LBA partition tables). Also fixed
|
|
the FAT driver to not assume partition start sector 63
|
|
if it cannot identify a partition to use.
|
|
- Added code to FAT driver to identify telltale pattern
|
|
left by Microsoft FDISK when a partition is created (but
|
|
not yet formatted) and reject.
|
|
0.83.2
|
|
- Added help messages for some supported commands. (Wengier)
|
|
- Added phone book support for the emulated modem. There is
|
|
a new phonebookfile= option in the [serial] section. The
|
|
phone book file entries need to be in the format of:
|
|
"<dummy number> <hostname/ip:port>" e.g.
|
|
5551234 cavebbs.homeip.net:23
|
|
Thank NicknineTheEagle for implementing this feature.
|
|
- Implemented the missing EMS subfunctions 52h and 59h by
|
|
porting the patch that adds them (Wengier)
|
|
- Fixed issues with the "config -wcd -all" command and other
|
|
updates to the CONFIG command (Wengier)
|
|
- Added [config] section in dosbox-x.conf to resemble DOS's
|
|
CONFIG.SYS file. It currently supports REM, BREAK, NUMLOCK,
|
|
FCBS, FILES, DOS, DEVICE/DEVICEHIGH, INSTALL/INSTALLHIGH,
|
|
SET and LASTDRIVE commands. The file CONFIG.SYS will appear
|
|
on the Z: drive, similar to AUTOEXEC.BAT file. The [config]
|
|
section can be bypassed with the -noconfig command-line
|
|
option or with the secure mode enabled (Wengier)
|
|
- Moved PC-98 related config options (starting with "pc-98 ")
|
|
from [dosbox] and [dos] sections to its own [pc98] section.
|
|
These options in existing dosbox-x.conf/dosbox.conf files
|
|
will be automatically redirected to the [pc98] section from
|
|
the other sections when DOSBox-X starts (Wengier)
|
|
- The user directory DOSBox-X uses has been changed to use the
|
|
DOSBox-X directory (e.g. from ~/.dosbox to ~/.config/dosbox-x
|
|
on Linux platform). It will be read *after* the dosbox-x.conf
|
|
file in the current directory (Wengier)
|
|
- Config option "dpi aware" now supports the "auto" setting
|
|
to auto-decide on the best setting for the platform. This
|
|
fixes very small window issue on high DPI devices such as
|
|
Microsoft Surface tablets. (Wengier)
|
|
- Added DTASEG, DTAOFF, and PSPSEG as hex value constants to
|
|
the debugger interface to aid in debugging DOS programs.
|
|
- New command-line option -helpdebug added to list debug-
|
|
related command-line options. The standard -? / -h / -help
|
|
command-line option will no longer list them (Wengier)
|
|
- Implemented LFN support for FAT driver, so that it is now
|
|
possible to view directory list, create or open files and
|
|
directories etc with long filenames on FAT12/16/32 drives
|
|
just like on mounted local drives.
|
|
- FAT driver cleaned up and fixed to avoid edge cases that
|
|
can corrupt directory entries and leave lost clusters
|
|
on the disk, also fixed to always report root directory
|
|
as a directory through the GetFileAttribute INT 21h call,
|
|
needed by MOVE.EXE and XCOPY.EXE to work properly.
|
|
- IMGMOUNT auto geometry detection will assume LBA disk
|
|
and fake C/H/S geometry if the disk is 4GB or larger,
|
|
the MBR lacks executable code, or the first partition
|
|
is Windows 98-style LBA FAT16 or FAT32.
|
|
- IMGMOUNT now assumes ISO type by default if the image file
|
|
extension is .iso/.cue/.bin/.mdf. No need for "-t iso" in
|
|
this case; but (if applicable) it can be overridden by for
|
|
example "-t hdd". (Wengier)
|
|
- IMGMOUNT command (no parameters) now lists mounted FAT/ISO
|
|
drives and mounted drive numbers, also SUBST command (no
|
|
parameters) now lists mounted local drives (Wengier)
|
|
- INT AH=36h fixed to convert free space but maintain a
|
|
cluster size (bytes/sector * sectors/cluster) that is less
|
|
than 64KB to avoid divide by 0 crashes with FORMAT.COM /S
|
|
- Added FAT32 free/total disk space API for FAT driver, and
|
|
updated INT 21h AX=7303h to call it. FAT driver now provides
|
|
FAT32 extended disk free/total through FAT32 API and 2GB
|
|
limited free/total through INT 21h AH=36h for older DOS
|
|
programs. Shell DIR command updated to use FAT32 free space
|
|
API to show free space even on FAT32 partitions larger than
|
|
2GB, but only if the DOS version is set to 7.1 or higher.
|
|
- Added FAT32 INT21h and IOCTLs needed by MS-DOS 7.1/Windows 98
|
|
versions of SCANDISK.EXE and FORMAT.COM, such as DOS functions
|
|
for "FAT32 extended" absolute disk read and write.
|
|
- Improved FAT32 support to the FAT driver, including direct
|
|
support for FAT32 drives in the DOSBox-X command shell. Files,
|
|
directories and volume labels on FAT32 drives can be listed,
|
|
read from or written to just like on FAT12/16 drives.
|
|
- Added DOS IOCTL read/write logical device track functions so
|
|
that FORMAT.COM is able to verify and modify the partition table
|
|
to successfully format a hard drive image. Also added stub to
|
|
DOS IOCTL "format device track" for FORMAT.COM.
|
|
- You can now force unmount a drive and then mount it to a new
|
|
directory in one command, e.g. "MOUNT C C:\DOS -U" (Wengier)
|
|
- REN command can now rename directories (in addition to files) on
|
|
FAT drives just like on local drives (Wengier)
|
|
- Several improvements to DEL command, such as a new /F option to
|
|
force delete of read-only files, and improved handling when the
|
|
argument is a directory (Wengier)
|
|
- LS command added to list directory contents. It does not support
|
|
all options as in Unix/Linux platform (Wengier)
|
|
- DIR /O & /OG supported in addition to /ON|/OE|/OS|/OD options.
|
|
Options such as /-O & /-A can be used to override /O, /A etc if
|
|
they are specified in the DIRCMD environment variable (Wengier)
|
|
- DIR and VOL commands now display real serial numbers for mounted
|
|
local drives (Windows only) and FAT drives (Wengier)
|
|
- Fixed SYS command not working properly (Wengier)
|
|
- DOS kernel INT 21h function Set File Attribute no longer
|
|
allows changing volume label attributes and fixes directory
|
|
attributes in order to prevent filesystem corruption.
|
|
This prevents Windows 95 Setup from creating WINBOOT.INI
|
|
and then changing it into a directory with the call.
|
|
- FAT driver bugs fixed where a newly created zero length file
|
|
combined with a lseek() can corrupt filesystem structures
|
|
(root directory and/or the second FAT table). This fixes
|
|
filesystem corruption when running Windows 95 install.
|
|
- Enabled printer emulation for non-Windows OSes (Linux,
|
|
Mac OS X, etc.). FreeType2 is required to enable
|
|
printer emulation at compile time.
|
|
- Added command-line option "-o" for MOUNT command so that
|
|
it can be specified whether to report mounted local drives
|
|
as remote (network) drives. It is "auto" by default just
|
|
like the virtual drive Z:.
|
|
- Added config option "drive z is remote" in dosbox-x.conf
|
|
to report drive Z: as a remote (network) drive. It is
|
|
"auto" by default, which will try to prevent SCANDISK.EXE
|
|
from Windows 9x installs to scan and "repair" drive Z:
|
|
which is not backed by a disk filesystem.
|
|
- Fixed clip_key_modifier setting not working when it is
|
|
set to alt, ctrl or shift in the SDL2 build. (Wengier)
|
|
- Sending "Ctrl+Alt+Del" key from the menu will now reset
|
|
the system within DOSBox-X when the integrated DOS or a
|
|
real DOS booted from a disk image is active. (Wengier)
|
|
- PC speaker output fixed not to timeout and stop rendering
|
|
unless the PC speaker output is not emitting anything
|
|
audible anyway (Fix for Sopwith 1 and 2).
|
|
- Added ALIAS command to define or display aliases.
|
|
- "HELP command" now works the same as "command /?" for
|
|
supported internal commands. (Wengier)
|
|
- Improved handling of quotes in some commands. (Wengier)
|
|
- Added -set command-line option to change config options.
|
|
It can be specified multiple times for multiple options,
|
|
overriding any options in the config file. For example,
|
|
the command "dosbox-x.exe -set machine=pc98" will force
|
|
DOSBox-X to start in PC-98 mode. (Wengier)
|
|
- Re-added full drive menu items for the Windows platform.
|
|
The "Boot from drive" item (A:, C: and D: drives only)
|
|
should work in other platforms too. The BOOT command is
|
|
also improved to allow e.g. "BOOT A:" to work. (Wengier)
|
|
- INT 10h vector now points into VGA BIOS as a workaround
|
|
for DOS programs that use vector location as part of
|
|
their EGA/VGA detection. This fixes blink attribute
|
|
and EGA/VGA detection failure with SuperCalc 3 and
|
|
SuperCalc 4. This option, enabled by default, can be
|
|
disabled or enabled from dosbox-x.conf.
|
|
- Improved long filename (LFN) and SetFileAttr/GetFileAttr
|
|
support for PC-98 mode. (Wengier)
|
|
- Added config option "lfn" to enable/disable long filename
|
|
(LFN) support. With default setting of "auto", LFN support
|
|
is enabled if the reported DOS version is at least 7.0.
|
|
- Added config option "automountall" (default: false) to
|
|
automatically mount all available Windows drives (Wengier)
|
|
- The copy & paste Windows clipboard text via the right
|
|
mouse button feature now has support for PC-98 mode too
|
|
in addition to other modes. (Wengier)
|
|
- MPU401 IRQ fixed to properly default to 2 or 9 in IBM
|
|
PC/XT/AT mode depending on the "enable slave pic" config
|
|
option (rderooy)
|
|
- Fluidsynth defaults fixed for better more reliable audio
|
|
streaming on Linux and Mac OS X (Wengier and rderooy)
|
|
- Improved support for FluidSynth MIDI device by porting
|
|
code from DOSBox ECE. Set "mididevice=fluidsynth" along
|
|
with other required options such as "fluid.soundfont"
|
|
in dosbox-x.conf to use it. The previous config setting
|
|
"mididevice=synth" is still supported for alternative
|
|
implementation of FluidSynth. (Wengier)
|
|
|
|
0.83.1
|
|
- dosbox-x.conf is now recognized as the default config
|
|
file name in addition to dosbox.conf. The sample config
|
|
file "dosbox.reference.conf" has been renamed to
|
|
"dosbox-x.reference.conf" as well (Wengier)
|
|
- Sound Blaster emulation fixed to better handle Goldplay
|
|
mode detection false positive in 1994 demoscene demo
|
|
myth_dw.zip when using Sound Blaster Pro setting in
|
|
the demo. The initial state before music starts is
|
|
like Goldplay mode, but when music actually starts the
|
|
DMA programmed to normal state without restarting
|
|
DMA playback.
|
|
- Tandy DAC output fixed to slowly ramp last sample to
|
|
zero DC sample (128) when switched off. This fixes
|
|
loud popping (DC offset) problems with Tandy DAC
|
|
sound effects in Prince of Persia. This new behavior
|
|
also seems to match real Tandy 1000 hardware according
|
|
to video captures of its audio/video outputs while
|
|
playing Prince of Persia on it.
|
|
- Tandy/PCjr 3-voice fixed to respond to I/O port 0xC0
|
|
regardless of 8-bit or 16-bit I/O (fixes Prince of
|
|
Persia).
|
|
- Write-protecting a disk image in IMGMOUNT and BOOT
|
|
commands now supported by putting a leading colon (:)
|
|
before the image file name. Works with disk swapping;
|
|
e.g. "BOOT :C:\DISK1.IMG C:\DISK2.IMG" only write-
|
|
protects C:\DISK1.IMG but not C:\DISK2.IMG. The new
|
|
config option "leading colon write protect image" can
|
|
be used to disable or enable this behavior (Wengier)
|
|
- Support for changing DOSBox-X internal time (Wengier)
|
|
- Support for pipes (|), e.g. "DIR | MORE" should now
|
|
work as expected; it is recommended to set the %TEMP%
|
|
(or %TMP%) environment variable to a writable directory
|
|
inside DOSBox-X before using pipes (Wengier)
|
|
- Improved redirections using "<" or ">" (Wengier)
|
|
- Improved Ctrl+C handling in some commands (Wengier)
|
|
- Improved Tab completion in the command shell (Wengier)
|
|
- Improved -get & -set options for the CONFIG command,
|
|
e.g. support for config options with spaces (Wengier)
|
|
- Improved REN (or RENAME) command to support wildcards
|
|
(* and ?) in the source and/or target files (Wengier)
|
|
- Some improvements to commands like MORE & VER (Wengier)
|
|
- Added BREAK, VERIFY and TRUENAME commands as in a real
|
|
DOS system. Type "[command] /?" for help info (Wengier)
|
|
- Implemented FOR command to run a specified command for
|
|
each file in a set of files. Also added LFNFOR command
|
|
to control whether to use long filenames in the FOR
|
|
command as in MS-DOS 7+ (Wengier)
|
|
- Implemented ATTRIB command to view and set attributes
|
|
of files or directories (Wengier)
|
|
- Added emulation of R (readonly) attribute bit for
|
|
Linux and Unix systems through the user-writable
|
|
file mode bits of the filesystem.
|
|
- Fixed PC DOS 2000 crash during installation.
|
|
- PC speaker: Mode 3 (square wave) and a counter value
|
|
of 1 produces a low frequency square wave. Ulrasonic
|
|
frequencies do not begin until count == 2. This fixes
|
|
helicopter noises in Paratrooper.
|
|
- Fixed PC speaker emulation to allow higher PC speaker
|
|
frequencies (10x the value of pcrate) to reduce
|
|
hiss/noise/aliasing noise that occurs when games
|
|
program ultrasonic frequencies into the counter to
|
|
"silence" the speaker. "Titus the Fox Marrakech and
|
|
Back" should no longer have audible hissing noises
|
|
between beeps when the game is using the PC speaker.
|
|
- Increased DOS device limit, to avoid E_Exit() crash
|
|
if all LPT and COM devices are enabled along with
|
|
the new CLIP$ device.
|
|
- Minimum MCB free default changed to better reflect
|
|
a typical MS-DOS setup with minimal to no drivers.
|
|
This should result in a report of 600K-ish memory
|
|
free, which is equivalent to Windows 95 without
|
|
anything loaded except COMMAND.COM.
|
|
- DIR command now supports /S (search all directories)
|
|
as well as /A, /AS, /A-S, /AH, /A-H, /AR, /A-R, /AA,
|
|
/A-A options for file attribute support; Note that
|
|
DIR /A shows all files and directories whereas DIR
|
|
alone (without /A) shows all except system/hidden
|
|
ones as in a real DOS system (Wengier)
|
|
- DIR command now shows the real free disk space on
|
|
local drives. It is possible to limit this free space
|
|
for certain programs with the -freesize option of
|
|
MOUNT command. A new config option "freesizecap" is
|
|
added to change the behavior of this option (Wengier)
|
|
- DIR command fixed to show the volume label of the
|
|
drive you are listing, instead of always the current
|
|
drive (rderooy)
|
|
- Various improvements to DEL and COPY commands, e.g.
|
|
fixed the DEL /P option having no effect, and "DEL ."
|
|
deleted all files in the current directory silently;
|
|
the COPY command now asks for confirmation before
|
|
overwriting files, and it now supports /Y and /-Y
|
|
options to change this behavior, which can also be
|
|
set from the COPYCMD environment variable. (Wengier)
|
|
- Added or fixed help information and/or error messages
|
|
for some commands. (Wengier)
|
|
- Added support for DOS programs to communicate
|
|
with the clipboard in Windows builds. If the
|
|
"dos clipboard device enable" setting in
|
|
dosbox-x.conf is set to "true" or "full", a DOS
|
|
device (default name: CLIP$) will be added to
|
|
allow bidirectional communications with the
|
|
clipboard (e.g. "DIR >CLIP$" will write the
|
|
output to the clipboard, and "TYPE CLIP$" will
|
|
show the clipboard contents). Alternatively,
|
|
you can set it to "read" or "write" to allow
|
|
only read or write access for security reasons.
|
|
The DOS device name can also be changed with
|
|
the "dos clipboard device name" setting in
|
|
dosbox-x.conf. (Wengier)
|
|
- Added support for using the right mouse button
|
|
to copy and paste from the Windows clipboard; the
|
|
config option "clip_key_modifier" can be used to
|
|
change the keyboard modifier such as none, alt, ctrl,
|
|
shift, or disable this feature (default). (Wengier)
|
|
- Updated the PasteClipboard feature in SDL1 build
|
|
to support Unicode text translations; also fixed this
|
|
feature not working in SDL2 build. The config option
|
|
"clip_paste_speed" is added to speed up or slow down
|
|
the pasting speed for different DOS programs (Wengier)
|
|
- Support for DOSLIB2's w95sysrg/w95sysrs utils to
|
|
get/set system registry location in DOS 7+. (Wengier)
|
|
- Long filename support added, adapted from
|
|
the vDosPlus project. It will be enabled with
|
|
an initial DOS version of 7.0 or higher. (Wengier)
|
|
- Corrected return value when using option to
|
|
fake the installation of SHARE. (Allofich)
|
|
- Added code to EMS emulation to print specific
|
|
debug information when a PC-98 specific call is
|
|
made to remap segment B000h to either system
|
|
memory or video memory. I do not have enough
|
|
test cases or a setup to test what really happens,
|
|
so it will remain a debug message for now.
|
|
- Added dosbox-x.conf option to allow emulation of a
|
|
DOS environment that lacks ANSI.SYS. NOTE: The
|
|
option has no effect in PC-98 mode.
|
|
- INT 2Fh now responds to AX=1A00h which is an installation
|
|
check to report whether ANSI.SYS is resident.
|
|
- Added INT 21h debug logging for file I/O and general
|
|
INT 21h usage [patch by ognjenmi]. Added enables for
|
|
the logging which are off by default since the INT 21h
|
|
and file I/O logging are fairly noisy under normal
|
|
usage.
|
|
|
|
0.83.0
|
|
- Added mt32.romdir dosbox.conf configuration option
|
|
for users who store the MT32 ROMs elsewhere other
|
|
than the current working directory.
|
|
- Configuration GUI settings menu is now vertically
|
|
divided to ensure that it fits on the screen even
|
|
if the window is at minimum size.
|
|
- PC-98 GDC status fixed to follow the explicit
|
|
definition of one bit as hblank and the other
|
|
as vsync instead of carrying over VGA port 3DAh
|
|
style logic of hblank/vblank vs vsync. This
|
|
fixes the BPS logo scanline effects in PC-98
|
|
game 'frontier-universe-bps-neo-kobe-pc98-ia'
|
|
- Added dosbox.conf option to select between two
|
|
known behaviors in PC-98 mode regarding the PC
|
|
speaker and the PIT timer. The default behavior
|
|
follows the newer hardware, the alternate setting
|
|
is for older games written against the PC-9801
|
|
behavior.
|
|
- Added dosbox.conf option nocachedir which, when
|
|
set, instructs MOUNT to automatically act as if
|
|
-nocachedir were given.
|
|
- Linux/X11 SDL1 builds fixed not to issue resize
|
|
commands to the window to avoid fighting the
|
|
window manager. This prevents "spastic resizing"
|
|
under Gnome 3 in Centos 8.
|
|
- Source tree now includes build script for Linux
|
|
users who prefer Clang/LLVM over GCC.
|
|
0.82.26
|
|
- Debugger console window fixed to choose a smaller
|
|
default size in Windows builds.
|
|
- Debugger console window now resizes properly
|
|
in Windows builds.
|
|
- Using F10 (step over) in the debugger to step
|
|
over INT 21h when a breakpoint for INT 21h is
|
|
set now works correctly, instead of letting the
|
|
instruction pointer "stick" there without moving.
|
|
- Debugger interface now shows (running/watching)
|
|
while RUNWATCH is active.
|
|
- Debugger interface now correctly shows (running)
|
|
status when F5 is used to resume emulation.
|
|
- Debugger toggle reverts back to debugger interface
|
|
instead of running state if triggered during a
|
|
RUNWATCH command.
|
|
- Fixed RUWNATCH command, which was broken by another
|
|
fix sometime back designed to stop PIC event
|
|
processing while in the debugger.
|
|
- Debugger interface fixed to keep the SDL event
|
|
handling going during the "pager" routine to
|
|
prevent Windows from graying out the main window
|
|
as "not responding" in Windows 7/8/10.
|
|
- Direct3D support has been fixed to properly render
|
|
pixel shaders again that were already written for
|
|
other forks.
|
|
- Added "Rescan all drives" menu command and mapper
|
|
shortcut (Issue #1379 requested by saintfrater)
|
|
0.82.25
|
|
- Added 1920x1440 4:3 HD VESA BIOS mode and increased
|
|
scaler limits to support it.
|
|
- VESA BIOS emulation now rejects video modes that
|
|
exceed the render scaler architecture's limits,
|
|
to avoid frozen screens if set. However, VESAMOED.COM
|
|
warns the user, so if the user ignores the warning,
|
|
VESA BIOS emulation will allow user-defined modes
|
|
that exceed the limits anyway.
|
|
- VESAMOED.COM will now warn you if the custom mode
|
|
you modified exceeds the render scaler's limits.
|
|
- VGA emulation now reports render scaler limits
|
|
in the logfile at startup, if debug logging is
|
|
enabled.
|
|
- Render scaler code now logs a warning when it
|
|
rejects a video mode that exceeds the render
|
|
scaler limits.
|
|
- S3 emulation now allows 16MB of video memory.
|
|
- Due to continuous problems with DOS games and a
|
|
very long VESA modelist, the defaults for VESA
|
|
BIOS options in dosbox.conf have been changed to
|
|
limit the modelist to something a late 1990s
|
|
VESA BIOS would list. New defaults include a
|
|
maximum resolution of 1280x1024, the removal of
|
|
4bpp 16-color packed, unusual video modes,
|
|
"High Definition" TV broadcast modes, and the
|
|
extra explicitly defined 24bpp modes to complement
|
|
VBE1.2 32bpp modes. Those options remain
|
|
changeable and all limits can be lifted with
|
|
settings in dosbox.conf if wanted.
|
|
- Allow using "" in the debugger to specify that
|
|
a hex value should be used rather than the
|
|
contents of the flag with that name. Allows
|
|
hex values of AC, AF, CF and DF to be directly
|
|
specified. (Allofich)
|
|
- 25.COM, 28.COM, and 50.COM now have different
|
|
versions for VGA, EGA, and other IBM compatible
|
|
video machines. 28.COM now correctly sets 28 lines
|
|
for machine=ega. CGA/MDA/Hercules/etc. still use
|
|
INT AX=3h for 25.COM.
|
|
- Change 25.COM to use INT 10h AX=1114h (8x16) instead
|
|
of INT 10h AX=3 (set 80x25 mode).
|
|
- INT 10h AX=1111h (8x14) and AX=1113h (8x8), related
|
|
to 28.COM and 50.COM, now range check the current
|
|
cursor row against number of rows to keep it on
|
|
screen.
|
|
- Fixed ADDKEY "full" command not turning on the
|
|
full core when used with a delay. (Allofich)
|
|
- INT 10h AX=101Ah Get Video DAC color-page state fixed
|
|
to restore display after blanking it due to Attribute
|
|
Controller read and write operations. This fixes
|
|
IBM PC compatible MS-DOS game "Blue Force".
|
|
- Debugger: "VGA AC" now shows AC disable bits as well
|
|
as the internal state indicating whether the last
|
|
byte written to 3C0h was handled as the index.
|
|
0.82.24
|
|
- FDC emulation now allows READ command to look for
|
|
sector numbers that are out of range in order to
|
|
support booter games that read out of range sector
|
|
numbers as part of their copy protection.
|
|
- Windows SDL1 window resizing fixed to avoid snapping
|
|
and jumping issues when the window is sized down
|
|
to the point the menu bar doubles or triples in
|
|
height due to menu item wrapping.
|
|
- FDC clear DMA terminal count automatically (with a
|
|
warning printed to the log) at beginning of FDC
|
|
read/write (PC-98 booter game Star Cruiser).
|
|
- FDC DMA read/write failure now causes FDC to signal
|
|
an error, and the debug output will say so.
|
|
- FDC debug output now shows motor bits in the correct
|
|
order, not backwards
|
|
- CONFIG.COM and MIXER.COM are now registered only at
|
|
DOS kernel startup, to resolve their disappearance
|
|
after RE-DOS or guest system reset.
|
|
- Some OpenGL cleanup and fixes for when compiling for
|
|
Mac OS X Catalina.
|
|
- Shell startup now prints the actual mapper binding
|
|
(whatever it is) for the Host key instead of assuming
|
|
F12/F11.
|
|
- "Ro" key in PC-98 mode in the mapper interface now
|
|
clarifies that it is Ro / _ since the shift state is
|
|
the underscore.
|
|
- Shell startup code fixed to show F11 for Windows and
|
|
F12 for other platforms properly instead of always
|
|
showing F11.
|
|
- Added BOOT option --pc98-graphics to start up with
|
|
graphics layer enabled in order to run HDI images
|
|
using QMOUSE and games that expect NEC MOUSE.COM
|
|
behavior of showing graphics layer on driver init.
|
|
- BOOT now hides graphics layer on startup in PC-98 mode
|
|
to reflect real hardware.
|
|
- INT 33h mouse emulation now enables graphics layer
|
|
on mouse startup and INT 33h AX=0 to imitate NEC
|
|
MOUSE.COM behavior seen on real PC-98 hardware. This is
|
|
needed for some Orange House games that assume this
|
|
behavior, without which the graphics are invisible.
|
|
- INT 33h define range functions now include separate
|
|
range correction for text mode vs graphics mode.
|
|
- Help sections in Configuration GUI have been improved,
|
|
they are now easier to browse and read. (aybe)
|
|
- CONFIG: added description for 'securemode' (aybe).
|
|
- Integer properties are now correctly saved when
|
|
they have been changed in configuration GUI (aybe).
|
|
- Some scenarios with command history could display
|
|
garbage characters from previous/next command (aybe).
|
|
- Fixed all hard disk images created by IMGMAKE having
|
|
VHD footers. (Allofich)
|
|
- Windows Visual Studio solution: (aybe)
|
|
- cleaned and clarified project properties for projects
|
|
- removed configurations that didn't make sense
|
|
- fixed broken debugging
|
|
- consolidated to use single versions of SDK and IDE
|
|
- enabled faster builds (multi-processor compilation)
|
|
- fixed broken builds, e.g. ARM, ARM64
|
|
0.82.23
|
|
- Serial and parallel file output now disable stdio
|
|
buffering so that output is more immediately
|
|
accessible to the user.
|
|
- Added file output to serial port emulation.
|
|
- Parallel port emulation now support both dev: and
|
|
file: to specify that LPTx output go to a file,
|
|
not necessarily a device by name.
|
|
- Fixed bug that capped vmemsizekb to 8KB.
|
|
- BIOS bootup screen now shows correct text for CPU
|
|
type instead of "? CPU" when cputype=auto.
|
|
- PC-98 256-color mode fixed to ignore doublescan
|
|
and 200-line bits of the GDC to match real hardware
|
|
behavior. This fixes display problems with
|
|
"Alone in the Dark"
|
|
- BOOT command will now always set 640x200 8-color
|
|
graphics mode when booting PC-98 disk images,
|
|
to match the apparent behavior of real hardware.
|
|
- PC-98 hardware apparently allows writing port 6Ah
|
|
to jump directly to 256-color mode from 8-color
|
|
mode, update DOSBox-X emulation to allow it.
|
|
This fixes the PC-9821 port of "Alone in the Dark".
|
|
- Slow CGA memory access handler now wraps to 16KB
|
|
correctly, and resolves a segfault that can happen
|
|
if the last 16KB is accessed by the guest if
|
|
vmemsizekb=16.
|
|
- vmemsize default is now -1, which means to pick a
|
|
video memory size automatically.
|
|
- Added PC-98 INT 1Bh AH=03h SCSI BIOS command, which
|
|
allows FreeDOS98 to boot.
|
|
- INT 33h emulation fixed not to reset mouse min/max
|
|
range if the new video mode is a VESA BIOS SVGA
|
|
mode (not a standard VGA mode). Some games seem to
|
|
define the mouse min/max range AND THEN set the
|
|
VESA BIOS mode, not the other way around.
|
|
- INT 33h define range functions now apply rounding
|
|
to the max range if the range is close to the
|
|
dimensions of the screen, for games like Daggerfall
|
|
that set the cursor maximum range to values close to,
|
|
but not exactly, the dimensions of the VGA screen.
|
|
- INT 33h define range functions updated to accept max
|
|
ranges for mapping host to guest if set just after
|
|
video modeset or if those INT 33h functions are called
|
|
when no mouse buttons are down.
|
|
- INT 10h AH=4Fh AL=08h (Set DAC width) now correctly
|
|
set AL=4Fh to indicate the call is supported.
|
|
- VGA DAC palette writes are now ALWAYS masked to 6-bit
|
|
unless 8-BIT DAC mode is ON and enabled. This fixes
|
|
palette problems with Amulets and Armor.
|
|
- VGA DAC 6/8-bit palette management code simplified
|
|
- Added dosbox.conf option to instruct DOSBox-X to leave
|
|
the PC speaker clock gate enabled if set, for games
|
|
that use that PIT output as a time source. Setting
|
|
the option to "true" allows "爆笑三國志" (Bàoxiào
|
|
sānguózhì), a game with strange and elaborate timing
|
|
code, to run without hanging at the second title screen.
|
|
- VGA port 3DAh "undefined bits" setting changed to 0x04
|
|
to accommodate "Blues Brothers"
|
|
- Configuration GUI: If the settings are scrollable,
|
|
tabbing between fields will now auto-scroll to the
|
|
field and make it visible.
|
|
- In the configuration GUI, scroll wheel input no longer
|
|
changes the window focus.
|
|
- Set CPU cycles dialog box layout fixed.
|
|
- Added 'skip encoding unchanged frames' option to
|
|
dosbox.conf. If set, AVI video capture will skip
|
|
video frame compression if the frame has not changed
|
|
from the previous frame. Option is off by default
|
|
at this time in case it causes any issues with users
|
|
and their video editing software.
|
|
0.82.22
|
|
- Added Normal2x render scalers so that 'force scaler'
|
|
for 1x2 or 2x1 scalefactors works and you can scale
|
|
up 320x200/640x200 VGA modes and 640x200 CGA modes
|
|
by 2x.
|
|
- Main window titlebar now reflects whether or
|
|
not the debugger interface is active.
|
|
- Debugger interface now flushes terminal input
|
|
upon entering the debugger, so that keyboard
|
|
input prior to entering the debugger is ignored.
|
|
- Debugger mapper shortcut and menu item are now
|
|
a toggle. Selecting once will enter the debugger
|
|
and selecting again will resume emulation.
|
|
- cycles=max now displays cycle percentage correctly
|
|
instead of showing e.g. 100 cyc/ms
|
|
- (Allofich) Note and ignore INT 33, AX=53C1 call
|
|
for the Logitech CyberMan.
|
|
- Fixed odd code addition that disabled (through
|
|
the configuration) XMS, EMS, and UMB when
|
|
booting a guest OS. This fixes a problem where
|
|
those services are not available when rebooting
|
|
back into the DOSBox-X shell from a guest OS.
|
|
- CGA 640x200 and MCGA 640x480 modes fixed to
|
|
have proper refresh rate when machine=mcga,
|
|
instead of 140Hz.
|
|
- MCGA horizontal active display register
|
|
encodes N - 1, not N, according to real
|
|
hardware register dumps.
|
|
- INT 10h modes 2 and 3 updated set MCGA CRTC
|
|
write protect bit, to match real PS/2 hardware
|
|
behavior, and to unlock CRTC registers during
|
|
mode set.
|
|
- PC-98 VSYNC interrupt now fires at vertical
|
|
retrace start (as documented) instead of at
|
|
active display end behavior borrowed from
|
|
DOSBox VGA emulation. This fixes "Tonight"
|
|
by Swat.
|
|
- Fixed mistake that placed N88 ROM BASIC stub
|
|
(something specific to PC-98) in memory even
|
|
in IBM PC/XT/AT emulation mode.
|
|
- Fixed some callback slot leaks that can cause
|
|
DOSBox-X to run out of callback slots if you
|
|
reset the guest system too much.
|
|
- Fixed invalid callback and errant interrupt
|
|
handling during BIOS reset delay that happens
|
|
if you use the keyboard shortcut to trigger
|
|
system reset.
|
|
- XMS emulation resets global enable and local
|
|
enable state on XMS emulation startup to fix
|
|
crashes related to inability to control A20 gate
|
|
after system reset or DOS kernel restart.
|
|
- Debugger "SM" command now accepts segment:offset
|
|
syntax for memory location to write.
|
|
- Fixed INT 21h AH=65h bug that returns DBCS table
|
|
for AH=4h that should return filename uppercase
|
|
table.
|
|
- Configuration GUI property settings are now
|
|
shown in a single column wide list with scrolling.
|
|
- In the configuration GUI, help dialogs will now
|
|
present the help text as a scrollable region if
|
|
there is too much to fit on screen.
|
|
- dosbox.conf mixer rate will now accept any
|
|
sample rate from 4KHz to 192KHz instead of only
|
|
fixed specific sample rates.
|
|
- cascade interrupt ignore in service setting now
|
|
accepts true, false, and auto. "auto" is now the
|
|
default, and will choose true or false depending
|
|
on machine type for correct emulation either way.
|
|
It should no longer be necessary to add
|
|
"cascade interrupt ignore in service=true" to
|
|
your dosbox.conf every time you want to run a
|
|
PC-98 game properly.
|
|
- PC-98 FM board emulation will now load SOUND.ROM
|
|
into segment CC00h if available, if FM board
|
|
emulation is enabled.
|
|
- PC-98 INT 18h AH=30h updated to return AH=05h
|
|
AL=00h BH=00h if success, AH=00h AL=01h BH=01h
|
|
if failure. This is needed to get Puyo Puyo 2
|
|
to work, which for some reason fails if a call
|
|
to set 15KHz mode works.
|
|
- PC-98 LIO and SOUND BIOS entry points, while
|
|
still not implemented, have been updated to
|
|
print the name of the call according to an
|
|
online reference.
|
|
- DOS FCB rename now supports renaming the
|
|
volume label as MS-DOS does.
|
|
- Fixed bug that prevented proper DOS FCB rename
|
|
if the FCB used to rename is extended.
|
|
- FAT filesystem driver updated to also store
|
|
updated volume label in the boot sector of the
|
|
partition, as per MS-DOS FAT standards.
|
|
- FCB create can now be used to set a FAT
|
|
filesystem label. MS-DOS LABEL.EXE works
|
|
correctly now.
|
|
- FAT filesystem driver now allows LABEL command
|
|
to change the FAT volume label of mounted disk
|
|
images.
|
|
- DOS kernel updated to support basic FCB methods
|
|
of deleting/setting the volume label, at least
|
|
on local folder mounts.
|
|
- DOS kernel will now return the volume label of
|
|
FAT filesystems mounted from disk images.
|
|
- LABEL setting code fixed not to treat label as
|
|
if an 8.3 filename.
|
|
- LABEL is no longer a builtin shell command and
|
|
appears on drive Z: as LABEL.COM
|
|
- LABEL reimplemented to imitate MS-DOS behavior
|
|
with regard to how it handles the command line.
|
|
- File I/O checking and cleanup (Allofich)
|
|
- Integrated commits from mainline (Allofich)
|
|
- Handle errant IRQs as a real BIOS does. Also
|
|
remove r3263 workaround, as it's no longer
|
|
needed.
|
|
- Fix flag behavior of several shift/rotate
|
|
instructions, cause exceptions and fix
|
|
potential 'pop ss' problems
|
|
- Add support for Print Screen key and
|
|
interrupt. In-game screenshot feature
|
|
of Descent and Descent 2 now works.
|
|
0.82.21
|
|
- Reduced title bar size of the Configuration GUI.
|
|
- Fixed sizing and positions of some Help menu dialog
|
|
boxes in the Configuration GUI.
|
|
- Configuration GUI issues with help text and word
|
|
wrap running off the edge of the window have been
|
|
fixed.
|
|
- INT 21h AX=3702h AVAILDEV returns DL=FFh to match
|
|
MS-DOS behavior.
|
|
- Added INT 21h AX=6523h, for Microsoft software
|
|
that uses it after prompting the user for a Y/N
|
|
answer such as FORMAT.COM and FDISK.EXE
|
|
- PC-98 MS-DOS kernel now writes fake INT 1Bh device
|
|
list to 60:6C to satisfy certain games that need
|
|
it for their "master disk" detection.
|
|
- Fixed FAT driver bug that caused the allocation
|
|
of an extra cluster if writing a file that is
|
|
exactly a multiple of the cluster size long.
|
|
- FAT driver now assigns current date/time when
|
|
creating directories.
|
|
- Increased the DTA segment size of the DOS FAT driver
|
|
to fix problems with directory searches corrupting
|
|
adjacent memory.
|
|
- Disk Parameter Block linked list now terminates
|
|
with next pointer at FFFF:FFFF instead of 0000:0000
|
|
to match general DOS pattern and satisfy some
|
|
PC-98 games that enumerate the list.
|
|
- INT AH=52h List of Lists now points to the Disk
|
|
Parameter Block as well, which allows some PC-98
|
|
games that enumerate the list to work.
|
|
- Video parameter list and table at BIOS DATA AREA
|
|
40:A8 added to MCGA mode, to match real PS/2 MCGA
|
|
hardware.
|
|
- FAT driver now updates the Disk Parameter
|
|
Block when activated, and provides as much
|
|
from the FAT filesystem as possible. It is now
|
|
possible to run Microsoft MS-DOS 6.22
|
|
SCANDISK.EXE on a drive letter attached from
|
|
a disk image.
|
|
- Disk Parameter Block is now the proper full
|
|
size. The limited 9 bytes/block hackery has
|
|
been removed.
|
|
- Added INT 25h/INT 26h emulation for FAT drives
|
|
mounted with IMGMOUNT.
|
|
- Fake disk parameter table fixed to indicate one
|
|
reserved sector.
|
|
- Fixed INT 25h/INT 26h to return an error rather than
|
|
silently fail with success. Emulation of these calls
|
|
exist currently only as stubs and, according to
|
|
source comments, as a workaround for MicroProse
|
|
installers. For disk diagnostic software like
|
|
Microsoft ScanDisk it is better to signal an error
|
|
until INT 25h/INT 26h are fully implemented.
|
|
- Added dosbox.conf option to control whether INT 10h
|
|
VESA BIOS function AX=4F00h (Get SVGA information)
|
|
zeros the entire 256-byte or 512-byte structure or
|
|
not. Turning the option off (no zeroing) allows
|
|
"Get Saddam!" to run with SVGA and VESA BIOS
|
|
extensions enabled without crashing. The developer
|
|
calls INT AX=4F00h but does not provide enough
|
|
storage space for the full 256 byte structure,
|
|
only enough for the base structure defined by VESA.
|
|
- INT 2Fh updated to explicitly mention SMARTDRV or
|
|
DBLSPACE if values of AX are known to match their
|
|
API.
|
|
- VESA BIOS modelist now includes S3 OEM video modes
|
|
as documented by the RBIL, and needed by Line Wars II.
|
|
- OpenGL output now clears 3 frames instead of 2 after
|
|
mode change to deal with nVidia hardware that
|
|
reportedly triple buffers OpenGL rendering in
|
|
Windows.
|
|
- INT 21h fixed to always enable the A20 gate through
|
|
HIMEM.SYS if dosbox.conf indicates a configuration where
|
|
XMS is enabled, the HMA is enabled, and DOS is loaded
|
|
high (DOS=HIGH), which is the default configuration
|
|
for DOSBox-X.
|
|
- XMS emulation fixed not to allow conventional memory
|
|
block addresses (source or dest) if it extends past
|
|
the 1MB+64KB-16 range normally accessible from real
|
|
mode, as per Microsoft XMS test program.
|
|
- XMS emulation fixed to disallow XMS block move/copy
|
|
with an odd length byte count, per Microsoft XMS
|
|
specification.
|
|
- XMS emulation no longer allows freeing a XMS block
|
|
handle that is still locked, as per Microsoft XMS
|
|
specification and testing software.
|
|
- Enhance existing INT 68h fix for "PopCorn" by adding
|
|
a dosbox.conf option to always keep INT 68h NULL,
|
|
so that it's possible to run the game in machine
|
|
configurations other than CGA.
|
|
- EGA/VGA: Fix "dynamic parameter save area" pointer,
|
|
to make sure it's initialized to zero properly.
|
|
This is needed to run "Get Saddam!" in VGA mode
|
|
without crashing.
|
|
- INT 10h AH=12h BL=10h no longer responds in
|
|
machine=mcga mode, which allows Thexder to run in
|
|
256-color mode properly when emulating MCGA.
|
|
- Added code to silence the PC speaker, if it was left
|
|
on at reset, at BIOS POST.
|
|
- Added pause at BIOS POST (after reset), with
|
|
dosbox.conf option to control, so that screen contents
|
|
at reset can be seen.
|
|
- Writes to unmapped 0xE0000-0xE7FFF in PC-98 mode no
|
|
longer print a "write to ROM" warning. PC-98 games
|
|
and software like to zero that region whether or not
|
|
the 4th bitplane is enabled.
|
|
- PC speaker emulation now takes into consideration
|
|
the case when the 8254 timer has been given a control
|
|
word without a counter value, in which case no sound
|
|
is to be emitted until a control word is written.
|
|
This fixes "Titus the Fox: To Marrakech and Back"
|
|
when the game fails to detect Adlib (OPL2) hardware.
|
|
- Adlib polling hack no longer needed.
|
|
- Floppy controller emulation fixed to support sector
|
|
sizes other than 512 bytes per sector.
|
|
- Floppy controller fixed to always set "seek completed"
|
|
status bit after seek/calibrate, not just when the
|
|
head hits track 0 (programming mistake).
|
|
- PC-98 40-column text mode is now supported.
|
|
- Integrated commits from mainline (Allofich)
|
|
- In the mapper, display disabled items or events
|
|
with no binding in grey.
|
|
- Implemented BIOS beep sound for ASCII character 7
|
|
- Return failure for INT 13 format calls if the
|
|
drive is inactive.
|
|
0.82.20
|
|
- Dynamic core IMUL instruction mistake fixed,
|
|
signed multiply works properly again.
|
|
- PC-98 graphics emulation fixed to render only the
|
|
number of active display lines programmed into
|
|
the GDC instead of matching the text layer. This
|
|
fixes the status bar at the bottom of the screen
|
|
in "First Queen" and "First Queen II".
|
|
- Normal CPU core fixed not to immediately process
|
|
interrupts on STI but to wait a little bit so that
|
|
a STI + CLI sequence does not cause interrupt
|
|
processing, according to real Intel 486 behavior.
|
|
- Unknown interrupts in PC-98 mode are now routed by
|
|
the DOS kernel through it's segment (60h) and back
|
|
to the BIOS through a JMP instruction. It appears
|
|
some TSRs for PC-98 determine whether or not
|
|
interrupts are in use by whether or not the segment
|
|
value is pointing at the DOS kernel (segment 60h).
|
|
- Re-added a20=fast by popular demand, though a20=mask
|
|
is still the default. a20=fast emulates the A20 gate
|
|
the way a virtual 8086 mode monitor does where only
|
|
the first 64KB past 1MB is remapped rather than
|
|
gating bit 20 of all addresses. Note that a20=fast
|
|
also matches the A20 gate behavior in DOSBox SVN.
|
|
- Bringing up the SDL drawn menus and then resizing the
|
|
window no longer "freezes" the display in SDL2 builds.
|
|
- IDE emulation now minimally emulates PC-98 I/O port
|
|
arrangement in PC-98 mode.
|
|
- Running a build that draws its own menus, setting
|
|
output=opengl, and hiding the menus no longer causes
|
|
lag redrawing the screen every time the mouse cursor
|
|
moves.
|
|
- Memory limit is now 3.5GB for 64-bit builds and 1GB for
|
|
32-bit builds.
|
|
- Maximum memory limit is now 3.5GB, code fixed to better
|
|
enforce the limit.
|
|
- Mixer and VGA capture code fixed to signal error if the
|
|
memory address exceeds the amount of system memory.
|
|
The general design of DOSBox-X memory I/O means that if
|
|
physical memory writes are made beyond system memory,
|
|
DOSBox-X will write out of bounds and segfault.
|
|
- DOSBox Integration device now offers the program inside
|
|
to capture the VGA output, for automated testing.
|
|
- DOSBox Integration device now offers reading emulator
|
|
time (PIC_FullIndex()) and setting a watchdog timer
|
|
that triggers an NMI unless reset. Intended for use
|
|
with automated testing.
|
|
- Debugger INTHAND command now works properly in protected
|
|
mode.
|
|
- DOSBox Integration Device now provides an interface for
|
|
code within to listen to the mixer output (to hear
|
|
itself) for automated testing purposes.
|
|
- Gravis Ultrasound emulation fixed not to run or compute
|
|
voices and ramps if the DAC enable bit is not set.
|
|
- Gravis Ultrasound emulation now offers a hack to ignore
|
|
writes to the Active Channel register if the DAC is active
|
|
and rendering audio (Ice Fever demoscene hack).
|
|
- SDL drawn menus fixed not to interact or draw while 3Dfx
|
|
emulation is using OpenGL, to prevent it from disturbing
|
|
the OpenGL context for 3Dfx emulation.
|
|
- NMI interrupt handling fixes to resolve instruction pointer
|
|
corruption if NMI interrupt triggered while a CPU core is
|
|
executing instructions (i.e. triggered by I/O handler).
|
|
- DOSBox-X integration device now provides an interface to
|
|
trigger IRQ and NMI signals.
|
|
- Integrated commits from mainline (Allofich)
|
|
- Improve disk image mounting: cycle disks only for the
|
|
drive being mounted.
|
|
- FAT drive fixes and improvements. Identify floppy format,
|
|
and support filesystems that use only part of the disk.
|
|
Fixes Make Your Own Murder Party and Music/Pinball
|
|
Construction Set.
|
|
- Return correct error code for verify sectors function
|
|
when an invalid drive is specified. Fixes Hugo Troll game
|
|
installers.
|
|
- Prefer ncurses above curses (on some systems, these are
|
|
still different packages)
|
|
- Give a warning at startup if dpi scaling is detected.
|
|
- Show segment override on XLAT instruction.
|
|
- Change scan3x to be LINE LINE DARK instead of LINE DARK
|
|
DARK. This matches pictures of scanlines better and doubles
|
|
the brightness as the old implementation was rather dark.
|
|
- Make it possible to compile without PNG support.
|
|
- Report when a -conf file can not be loaded.
|
|
- When searching CD-ROM directory entries, strip trailing
|
|
period of extension-less filenames after stripping file
|
|
version number and separator. Fixes disc check in Air Power.
|
|
- Add Unit Number and Bytes Per Sector fields for DPB
|
|
entries. Fixes Air Power installer and Windows 3 Virtual
|
|
Memory dialog.
|
|
- Reset write ops after drawing text in EGA graphics modes,
|
|
consistent with EGA/VGA BIOS. Fixes Fun School 3.
|
|
- Make Allocation Info work for CD-ROM drives. Fixes Bureau
|
|
13 installer.
|
|
- Prevent double-loading of CD-ROM images.
|
|
- Don't generate sound after DMA is masked at end of single
|
|
cycle transfer. Prevents issues with some games.
|
|
- Use right field when dealing with joysticks.
|
|
- Check for both read-only modes when writing files to drive
|
|
- Correct one-off error in paging table size compare for
|
|
when not using USE_FULL_TLB
|
|
- Make CMOS equipment list startup display mode bits differ
|
|
from BIOS on EGA/VGA. Fixes Sauro.
|
|
- Implement port 62h with timer 2 output for CGA and
|
|
Hercules machine types; fixes Frank Bruno's Boxing and Math
|
|
Maze.
|
|
- Acknowledge mouse interrupt before entering user routine;
|
|
fixes sound stutter during mouse movement in Eye of the
|
|
Beholder III and Casino Tournament of Champions. Clear
|
|
button counters in the mouse driver reset function;
|
|
prevents unintended skipping of intro in MechWarrior and
|
|
others.
|
|
- Correct relative track length in subchannel data for
|
|
CD-ROM images; fixes speech audio cutting off too soon in
|
|
Casino Tournament of Champions.
|
|
- Reset followed by switch to UART mode should take some
|
|
time; fixes MPU detection in F29 Retaliator and Hover Force.
|
|
- Ignore unrequested data in intelligent mode; fixes Roland
|
|
sound in Krusty's Fun House.
|
|
- Repair double slash in configfile location on Macs. Add
|
|
some protection against a NULL dirp.
|
|
- Fix loading of configfiles specified with -conf but
|
|
present in the userdir with -userconf present.
|
|
- Fix up DOS_Drive_Cache::GetShortName.
|
|
- Change multi-remain to repeat last parsed value for
|
|
non-string types if the next value is empty and of the same
|
|
type as the last. Use this to add an optional parameter to
|
|
sensitivity which controls the y axis. When optional
|
|
parameter is missing, x and y axis have the same value.
|
|
Change limits on sensitivity to allow for negative values
|
|
so the Mouse Y-axis can be inversed.
|
|
- Correct bug related to signedness.
|
|
- Improve prefetch and simple cores to not switch to normal
|
|
core on trap execution. Fixes the demo version of
|
|
Prehistorik 2 and similar cases that use the trap flag and
|
|
prefetch tricks.
|
|
- Check lengths before adding C-style strings together.
|
|
- Fix unmounting of complex drives where parts were left and
|
|
file pointers were kept open.
|
|
- Stop storing raw modrm value. Should save an instruction
|
|
on each get_modrm call.
|
|
- Strip leading = from value. Can happen if you execute
|
|
"irq =5".
|
|
- Don't remove bytes from autoexec.bat when changing
|
|
settings from autoexec.bat, but replace them instead. This
|
|
way the location stays valid.
|
|
- Let dynamic core recompile interrupt instructions in
|
|
non-debug builds. Can help software with many INTs, such as
|
|
compiled BASIC, run faster.
|
|
- Add logic in mouse driver to ignore button events that
|
|
are out of sequence. Fixes International Rugby Challenge
|
|
when clicking to lock the mouse.
|
|
- Use a more compatible offset for DOS redirected interrupt
|
|
vector. Works around a null pointer bug in the notes dropdown
|
|
list of Jack the Ripper.
|
|
- Rewrite pop_ev so it can trigger pagefaults again. Fixes
|
|
Win 3.11.
|
|
- Fix uninitialized access to some isoDrive fields. Pause audio
|
|
before switching. Use right subunit with multiple CDs on one
|
|
drive letter.
|
|
- Move all stack alignment operations into one place and
|
|
some optimalisations to RISC x64 dynamic core.
|
|
- Merged in MAME sound from mainline, except for Tandy sound.
|
|
0.82.19
|
|
- Prefetch core fixed up, made more aggressive, and string
|
|
instructions (REP MOVSW) cause more prefetch. "Stereotype"
|
|
demoscene production can run again.
|
|
- DOSBox Integration device now allows ISA DMA read/write
|
|
injection.
|
|
- 8237 DMA emulation now supports PC-98 "auto bank increment"
|
|
functions, which automatically increments the DMA page number
|
|
on DMA wraparound. Sim City 2000 needs this to play it's
|
|
digitized sound effects properly.
|
|
- 8237 DMA emulation now enforces read/write mode provided by
|
|
guest. If the DMA is configured for reading from system
|
|
memory, then attempts to WRITE to memory via DMA must fail.
|
|
Just like real hardware.
|
|
- 8237 DMA block transfer cleanup, de-duplication.
|
|
- 8237 DMA block cleanup allows implementation of 8/16-bit DMA,
|
|
forwards and backwards.
|
|
- PC-98 keyboard corrections (not yet verified to be accurate
|
|
to hardware though) to solve problems where holding a key
|
|
while running a program that is slow to respond to input
|
|
can overrun the buffer and fail to handle additional input.
|
|
- VGA BIOS size changed to 0x4000 (16KB), because 0x3800
|
|
is not liked by Windows 3.0.
|
|
- Font vector is now INT 44h for PCjr and Tandy emulation,
|
|
INT 43h otherwise as documented in the RBIL.
|
|
- Graph key (PC-98 mode) no longer registers as keyboard
|
|
input to INT 18h. EDIT.COM's menu is now usable.
|
|
- PC-98 INT 18h AH=02h fixed to return the correct keyboard
|
|
status byte as documented
|
|
- Local directory filesystem support now applies timestamp
|
|
before closing the file handle, which should help with
|
|
timestamps even if the filename is not directly valid
|
|
on the host operating system or filesystem.
|
|
- DOSBox Integration Device moved to I/O port DB28h-DB2Bh
|
|
in PC-98 mode to avoid conflicts with DMA controller
|
|
registers.
|
|
- DMA controller is now completely disabled in IBM PCjr mode
|
|
(machine=pcjr) to match real hardware.
|
|
- COPY command now copies file date/time as well.
|
|
- INT 2Fh AX=1600h no longer logs an error as unimplemented.
|
|
(Allofich)
|
|
- COPY.EXE removed, so that the built-in COPY command can work.
|
|
- PC98UTIL fixed to re-enable the text layer after the BIOS call
|
|
for /24khz and /31khz options.
|
|
- PC-98 INT 18h AH=30h now allows setting the 480-line mode.
|
|
- (PC-98) Port 6Ah command 40h/41h, CRT vs Plasma/LCD mode,
|
|
added.
|
|
- PC98UTIL.COM now updates the menu item for PC-98 GDC clock
|
|
speed when changing GDC clock speed.
|
|
- Added to PC98UTIL.COM the /24khz and /31khz switches to change
|
|
hsync rate.
|
|
- Updated PC-98 graphics plane emulation to more properly
|
|
handle the 5MHz GDC mode, and the IM bit in the GDC parameter
|
|
RAM.
|
|
- INT 18h AH=30h and AH=42h mode set fixed to update CPU and
|
|
display pages correctly.
|
|
- INT 18h AH=30h (PC-98 mode) now permits graphics layer changes.
|
|
- INT 18h AH=30h (PC-98 mode) now permits changing hsync rate.
|
|
- INT 18h AH=31h (PC-98 mode) now uses BIOS data area to
|
|
return hsync rate (24KHz vs 31KHz)
|
|
- INT 18h AH=42h (PC-98 mode) now uses BIOS data area to
|
|
determine 5MHz GDC instead of internal state to better emulate
|
|
actual hardware behavior.
|
|
- PC-98 text console output now fills both cells of doublewide
|
|
characters on the text layer.
|
|
- PC-98 port 6Ah now handles command 82h/83h and 84h/85h which
|
|
allow the guest to reprogram the GDC clock frequency (2.5MHz
|
|
or 5MHz). This is necessary to handle strange Windows 3.1
|
|
behavior where entering a DOS program fullscreen causes
|
|
Windows 3.1 to reprogram your GDC to run at 5MHz regardless of
|
|
the BIOS (or dosbox.conf) setting.
|
|
- PC-98 port 68h now supports command 0Eh/0Fh to enable display.
|
|
- Integrated commits from mainline (Allofich)
|
|
- Lower the influence of the aspect table correction
|
|
trick when using high scale factors (320x200 => 2000x1200).
|
|
- Correction done to Hercules video height parameter.
|
|
- The mapper now uses the wrapper as well
|
|
- Fix the possible/suggested values for integer
|
|
properties.
|
|
- Do less to update the frequency of an active SB
|
|
DMA transfer. Fixes sound in Tempest 2000.
|
|
- Add missing --disable-fpu-x64 option
|
|
- Use clock_gettime when available instead of the
|
|
obsolete ftime.
|
|
- Allow CRTC read/write access on all mirror ports for
|
|
non-VGA machine types. Fixes Tandy and EGA display in
|
|
International Hockey booter.
|
|
- Handle "copy H*.txt file.txt" correctly
|
|
- Fix detection of always_inline attribute with MinGW 4.9.2
|
|
- Introduce mount -pr to mount paths relative to last
|
|
loaded configuration file.
|
|
- Use normal teletype function for non-ANSI output so the
|
|
default attribute 7 applies only to graphics modes and
|
|
existing attributes are not changed in text modes.
|
|
- Improve compatibility of internal mouse driver with
|
|
respect to video mode changes and hiding the pointer, and
|
|
handle font reloading as a kind of mode change. Also fix
|
|
unlocked mouse pointer to recognize the full range of
|
|
tweaked/fontloaded text modes.
|
|
- Bring OS2 port up to date.
|
|
- Ignore/remove single % in batchfiles.
|
|
(Fixes B13Demo batchfiles on PC Gamer cover disc 1995-08)
|
|
- Clear incomplete Sound Blaster DSP command at reset,
|
|
fixes Romancing Prince.
|
|
- Add some more cases to the Alt-Tab detection.
|
|
- Add alternate font tables and associated loading logic
|
|
in video BIOS, allowing correct gaps between "wide"
|
|
characters (e.g. m,w,M,W,T,Z,0) in all VGA machine types.
|
|
- Update all related BIOS memory values and CRTC registers
|
|
when loading fonts.
|
|
- Improve support for MDA emulation in the vgaonly machine
|
|
type, as it is the only way the video BIOS can make use
|
|
of the 14-line alternate symbols.
|
|
- Be compatible by setting the INT 43h vector to the first
|
|
half of the 8-line font table for standard text modes.
|
|
- Move VESA mode table and OEM string before font tables
|
|
in the video ROM, which is a more compatible ordering.
|
|
- Add opl3gold option to oplmode setting. With this option
|
|
the Adlib Gold music can be selected in Dune. Only music
|
|
without effects is supported. FM volume control does work.
|
|
- Add hardware text mode cursor support.
|
|
- Rework FCB_ParseName
|
|
-- Remove special code for . and .. as it was wrong
|
|
-- Continue reading the input string, when the max length
|
|
of the field has been reached (123456789.12345 is read and
|
|
returned as 12345678.123)
|
|
-- Strip spaces before and after reading the separators.
|
|
-- The drive is always parsed (if present), it doesn't
|
|
depend on the existence of said drive.
|
|
-- Fix parsing of .EXE and other extension only names
|
|
-- Always clear out current block and record size.
|
|
- Correct AX and BX, they contain information on the
|
|
existence of the drives specified in the FCBs in the
|
|
execute block
|
|
- Rework the parsing of arguments into the FCBs
|
|
- Use full mask; fixes label search on FAT drives.
|
|
- Don't write past the terminator in the DTA name field
|
|
when setting search results. This is what DOS does, and
|
|
writing junk after the terminator was not good in any case.
|
|
Fixes file listing in the 16-bit version of Galaxy Player.
|
|
- Improve rename support for when renaming files (in a
|
|
folder) on a drive different from the current one.
|
|
- Improve internal ANSI support to adapt to currently
|
|
displayed columns and rows. Fixes original Infocom
|
|
interpreters when using something other than 80x25.
|
|
- Handle double-quoted values and quoted values in
|
|
dosbox.conf files.
|
|
- Speed up GetHexValue.
|
|
- Restore 1,2,3,4,5 as run 5,500,1000,5000,10000
|
|
instructions.
|
|
- Change BIOS equipment list to indicate DMA not
|
|
supported on PCjr machine type, which fixes PCjr
|
|
detection in old versions of Ancient Art of War.
|
|
- Correct some offsets in the DTA for FCB-based search
|
|
results. Fixes DIR listing in COMMAND.COM from MS-DOS
|
|
and file info in XTree Gold.
|
|
- Prevent a multiplication overflow and more accuracy
|
|
by using floats for attack rate loop
|
|
- Set record size to 128 if it is 0 in the FCB when
|
|
calling any FCB read/write function
|
|
- Fixes for acad 10:
|
|
- Add missing reference counting when the file is
|
|
already open when calling FCB_Open, so that acad, which
|
|
uses FCBs and normal handles on the same file, works
|
|
better.
|
|
- Remove FCBs being added to the PSP filetable and
|
|
rewrite most functions to support this change. This way
|
|
acad won't run out of temporary (fcb) files when low on
|
|
memory.
|
|
- More flexible setting of version with "VER" command.
|
|
- Fix screen clearing when setting mode 0xA on PCjr
|
|
machine type.
|
|
- Fill DTA for FCB search results more like real DOS,
|
|
fixing hang in SETUP.EXE and MSDOSD.EXE from Windows V1.01.
|
|
- Add support for mode 8 row copy/fill. Fixes Tandy
|
|
GW-BASIC interpreter SCREEN 3 scrolling/clearing.
|
|
- Map inactive video memory regions as empty rather than
|
|
filled with RAM. Fixes later version of Sargon 3 on color
|
|
machine types.
|
|
Set color modes (to the extent that they can be) on the
|
|
Hercules machine type if the BIOS equipment list is not set
|
|
to monochrome. Fixes missing text in Victory Road.
|
|
- Graphics mode text drawing improvements:
|
|
-Font source according to machine type.
|
|
-Use compatible method of determining fill attribute for
|
|
textmode screen scrolling in teletype function.
|
|
- Prevent DOS buffered input function from hanging in an
|
|
infinite loop when redirected input reads a linefeed or
|
|
reaches EOF.
|
|
- EXEC improvements, mostly for the load-but-do-not-execute
|
|
function.
|
|
- Stop writing uninitialized junk into first shell's command
|
|
tail at startup.
|
|
- Support writing palette register data to dynamic save area
|
|
if pointer is non-zero on mode changes. Fixes CV 2.2.
|
|
- Be more compatible by converting tabs to spaces in the DOS
|
|
console device rather than in the video BIOS teletype function.
|
|
- Make the internal program for loading ROM images a bit
|
|
smarter about what it can/will load. Also provide for BASIC
|
|
in ROM to support IBM BASIC interpreters.
|
|
- Correct page count/size for CGA graphics modes. Fixes RS-2
|
|
on the CGA machine type.
|
|
- Raise lower limit of cycles in autodetermine mode to
|
|
improve stability.
|
|
- Fix for 256 color encoding in zmbv.dll codec
|
|
- Rework ListMidi so it can be more easily added to more
|
|
backends.
|
|
- Implement mixer /listmidi for coremidi.
|
|
- Increase size of SysEx buffer to support Sierra's Yamaha
|
|
FB-01 driver.
|
|
- Add improved breakpoint handling to the debugger
|
|
- Rewrite the order of the debug help list so the keys come
|
|
last
|
|
- Clip to boundaries when there are no suggested values for
|
|
Prop_int
|
|
- Implement an obscure behavior of the VGA DAC. Fixes wrong
|
|
colors in Planet Soccer/Football.
|
|
- Use default attribute behavior of ANSI.SYS in the console
|
|
device. Fixes scrolling issues. Anything that wants non-ANSI
|
|
behavior may not display as intended with the internal DOS,
|
|
same as real DOS when ANSI.SYS is loaded.
|
|
- Lower default adlib volume with 2.5dB, based on
|
|
measurements
|
|
- Add experimental name support to configmidi for coremidi
|
|
- Add support for selectig midi devices by name to win32
|
|
midi
|
|
- Make IRQ generation in Write_MCR consistent with
|
|
ComputeInterrupts when op2 changes.
|
|
- Update mixer volume calculations for the SBPRO 1 and 2 and
|
|
the SB16, based on measurements.
|
|
- Repair a logic error in cycle max calculation
|
|
- Introduce a random sleep period, which activates after 3
|
|
short sleeps in one frame.
|
|
- Adjustments to cycle ratio computation.
|
|
- Process repeated reset commands without delay. Fixes MPU
|
|
detection in several games. Correct ACK for reset: entirely
|
|
absent with dumb setting (mpu401=uart), and also absent when
|
|
returning to intelligent mode from UART mode.
|
|
- Allow for direct changing of 4op chaining without having
|
|
to rewrite the algorithm mode.
|
|
- Enable core inlining by default on configure/make build
|
|
system
|
|
- Limit amount of polls per second a bit on MAC OS X, as it
|
|
was quite high otherwise.
|
|
- Add basic support for INT 13 call 15. Used by Korean
|
|
Powerdolls to detect harddrive.
|
|
- Add ALSA MIDI 0xA0 and improve unhandled message
|
|
reporting a bit.
|
|
- Support rarely used FCB feature: open file with search
|
|
mask. Fixes Buckaroo Banzai.
|
|
- ANSI emulation is activated for the session when an
|
|
escape sequence is encountered other than those used by
|
|
internal messages. Fixes LucasArts setup programs provided
|
|
that ANSI emulation is not activated.
|
|
- Flag handling for normal core: zero and sign flags for
|
|
integer multiply instructions.
|
|
- Strip spaces properly.
|
|
- Improve disk serial number DOS functions.
|
|
- Only add return to buffer if it already contains data,
|
|
which fixes extra return in generated autoexec.bat.
|
|
- Lock default label of HDD local drive mounts. Fixeslabel
|
|
changing to the host drive label when resetting cache on
|
|
the Windows platform.
|
|
- Fix echo off being written twice. Attempt to make the
|
|
line endings in the generated autoexec.bat all DOS-style.
|
|
- Take length in consideration before moving the echo off
|
|
upwards.
|
|
- Fix ExpandDot not caring about the size of the buffer.
|
|
(vogons topic 59658)
|
|
- Be less specific about the jump instruction when
|
|
identifying a video BIOS.
|
|
- Return an error for generic block device request on
|
|
unmounted floppy drives.
|
|
- No Sound Blaster IRQ generating when masking the IRQ
|
|
channel.
|
|
- Improvements for IOCTL generic block device request
|
|
- Make Media ID table relative to DPB table. Fixes
|
|
Hattrick by Ikarion.
|
|
- Support some installer disk detection methods: block
|
|
device count, and specific MBR/boot sector contents.
|
|
Fixes (original) SimCity, Amberstar, and later MicroProse
|
|
installers.
|
|
- Fix GetLabel() for the virtual drive.
|
|
- Integrated a commit from mainline:
|
|
#3860 "Use PCJr specific method to clear the video RAM.
|
|
Also don't scroll at unspecified video page.
|
|
Fixes issues with KQ1 and KQ2."
|
|
- PEGC emulation will now print a warning if the guest
|
|
application or OS attempts to use 256-color planar mode.
|
|
- PC-98 PEGC 256-color linear framebuffer is not mapped by
|
|
default anymore, except when 256-color mode and the enable
|
|
bit set, to match real hardware.
|
|
- PC-98 PEGC 256-color emulation fixed not to respond to
|
|
MMIO registers related to 256-color planar mode according
|
|
to real hardware behavior. 256-color planar mode support
|
|
is planned in the future.
|
|
- Remove old dynamic x86 core. Dynamic core is exclusively
|
|
dynrec now.
|
|
0.82.18
|
|
- Added debugger command "VGA CRTC" for the CRTC section of
|
|
VGA emulation.
|
|
- Added debugger command "VGA DAC" for the DAC and "VGA DACPAL"
|
|
command to view the VGA color palette.
|
|
- Added debugger command "VGA GC" for the graphics controller
|
|
section of VGA emulation.
|
|
- Added debugger command "VGA SEQ" for the sequencer section
|
|
of VGA emulation.
|
|
- Added debugger commands "VGA DRAW" and "VGA AC" to view
|
|
drawing and attribute controller state in the VGA emulation.
|
|
- Integrated commits from mainline (Allofich)
|
|
- CD audio status now returns zero start and end times
|
|
when no track is playing. Fixes "The Manhole".
|
|
- Add "ADDLOG" debug command to manually add a message
|
|
to the log.
|
|
- "Strip off leading zeroes from the IP", a fix for
|
|
the serial modem.
|
|
- Add a small delay when raising the Sound Blaster
|
|
8-bit IRQ to emulate the slowness of the DSP, fixes
|
|
Llamatron 2012 and Lemmings 3D.
|
|
- Add ability to set debugger breakpoint on AL values.
|
|
- The SB DMA callback now ignores previously selected,
|
|
but not currently selected, DMA channels. Fixes Visual
|
|
Player 2 with SB16.
|
|
- Minor cleanup to joystick code.
|
|
- PSG noise channel emulation (PC-98 FM board) apparently
|
|
broke on Mac OS X due to type promotion by Clang/LLVM.
|
|
Modified the code to behave as originally intended, to
|
|
restore the PSG noise channel on Mac OS X.
|
|
- Added debugger command "DOS FNKEY" to view PC-98 scan code
|
|
escape mapping.
|
|
- PC-98 EGC ROP 9Ch added, apparently used by Windows 3.1
|
|
CALC.EXE
|
|
- PC-98 INT DCh CL=0Ch/CL=0Dh AX=01h through AX=28h added,
|
|
which allows individual function/edit keys to be read or
|
|
modified.
|
|
- Dynrec dynamic core is now default even on 32-bit builds.
|
|
Dynx86 dynamic core is still an option at this time if you
|
|
compile from source.
|
|
- PC-98 INT DCh CL=0Fh AX=0h/1h added.
|
|
- PC-98 INT DCh CL=0Ch/CL=0Dh added AX=0 handling as well.
|
|
- PC-98 INT DCh emulation now support INT DCh CL=0Ch/CL=0Dh
|
|
AX=FFh so that some programs (including SEDIT.EXE) can set,
|
|
re-define, and restore the function key row.
|
|
- PC-98 MS-DOS emulation now injects escape codes from a table
|
|
for the function keys instead of hard-coded as it does on
|
|
real MS-DOS.
|
|
- PC-98 MS-DOS emulation now supports Shift+Fn (shift+Function)
|
|
to inject shortcuts into the CON device.
|
|
- PC-98 MS-DOS now accepts CTRL+F8 to clear the screen.
|
|
- PC-98 MS-DOS function key row now accepts CTRL+F7 to toggle
|
|
between none, function keys, and shortcuts.
|
|
- PC-98 INT 18h AH=42h display area setup now cancels pending
|
|
vsync interrupt. This fixes display issues with Quarth when
|
|
interrupting the game's demo mode to enter the main menu.
|
|
- PC-98 emulation now emulates port 6Ah command that controls
|
|
128KB/256KB VRAM wraparound.
|
|
- INT DCh CL=10h AH=04h through AH=09h added.
|
|
- INT DCh CL=10h AH=03h call to set cursor position (backdoor for
|
|
ESC = ANSI code) added.
|
|
- Added parsing for ESC M / ESC D and ESC E in the DOS ANSI driver.
|
|
- New debugger "VGA" command added to view additional emulator
|
|
state.
|
|
- Debugger input bar (at the bottom) fixed to position correctly,
|
|
mistake in the code that caused it fixed.
|
|
- PC98 debugger command now supports viewing text, graphics, CG,
|
|
GRCG, and EGC state.
|
|
- New debugger command "PC98" to view PC-98 emulation state in
|
|
the debugger.
|
|
- New debugger command "EMU" added to view additional emulator
|
|
state.
|
|
- Debugger data view now shows linear and physical memory address
|
|
for the memory address you're viewing when the CPU is in
|
|
protected mode. The physical memory address display is useful
|
|
when 386 paging is enabled.
|
|
- Debugger command "SM" now accept B: W: and D: prefixes to
|
|
write BYTE, WORD, and DWORD values to memory.
|
|
- Debugger command "SR" now accept multiple pairs of registers
|
|
and values in one command.
|
|
- Debugger commands "EV" and "SM" will no longer hang DOSBox-X
|
|
on invalid (unrecognized) input.
|
|
- Added "EV" debugger command to allow viewing CPU registers
|
|
at the command line, including CPU registers not shown
|
|
in one of the windows of the debugger UI.
|
|
- Debugger will now explicitly tell you if it does not
|
|
recognize the command.
|
|
- Debugger fixed not to leave your command uppercased on the
|
|
command line if it does not recognize it.
|
|
- Debugger "SR" command updated to allow setting upper/lower
|
|
halves of AX/BX/CX/DX, additional CPU flags and the whole
|
|
flags register.
|
|
- Added INP/OUTP commands to debugger to aid debugging
|
|
I/O ports.
|
|
- 8086 and 286 cores now emulate a known bug where an
|
|
instruction with multiple prefixes that is interrupted
|
|
will resume at only the most recent prefix.
|
|
- PC-98 planar emulation optimized and cleaned up.
|
|
- Configuration GUI no longer crashes at startup if run
|
|
from the command line using the --startui or --startgui
|
|
command line options.
|
|
- Configuration GUI fixed not to allow multiple instances
|
|
of the same settings window.
|
|
- Emulator speed controls added, if for any reason you'd
|
|
want to play a game faster or slower.
|
|
- Configuration GUI AUTOEXEC editor fixed so that
|
|
"Append History" button actually works.
|
|
- Fixed configuration GUI to show keyboard options instead
|
|
of the mapper interface when you click the "Keyboard"
|
|
button.
|
|
- "Show details" menu option now also enables the realtime
|
|
percentage display.
|
|
- Mac OS X builds fixed to use older convertRectToScreen
|
|
function instead of convertPointToScreen, which allows
|
|
others to compile DOSBox-X on Mac OS X versions older than
|
|
Mojave (despite Apple documentation claiming that
|
|
convertPointToScreen was added in 10.12).
|
|
- Shift and Alt key modifier handling within the configuration
|
|
GUI now works properly in SDL2 builds.
|
|
- Fixed prefetch queue emulation to allow 8086, 80186, and
|
|
286 CPU types to run with prefetch queue without crashing.
|
|
- CPU type selection menu will now cause guest to reboot
|
|
if new cpu type is incompatible with the BIOS prologue
|
|
and epilogue code that was generated at startup, to
|
|
avoid crashes.
|
|
- PC-98 NEC copyright string option now also installs
|
|
another set of data in another location in the BIOS,
|
|
that Windows 2.1 checks for.
|
|
- Minimum MCB free value now has a higher default value in
|
|
PC-98 mode to reflect the fact the platform usually has
|
|
more loaded into lower memory at runtime. You are allowed
|
|
to specify a lower value in dosbox.conf for anything that
|
|
needs more memory.
|
|
- GUS and Sound Blaster environment variable installation
|
|
is now quiet, does not echo the variable on screen at
|
|
startup.
|
|
- INT 21h country-specific info now returns correct info
|
|
for PC-98 mode.
|
|
- INT 21h DBCS lead table now contains correct values in
|
|
PC-98 mode.
|
|
- Added more PC-98 EGC raster opcode emulation. The PC-98
|
|
version of Windows 3.1 now displays properly without
|
|
issues, except for line drawing.
|
|
- Added INT 10h VESA BIOS function AH=08h "SET DAC WIDTH"
|
|
so that, when enabled, DOS applications can switch the
|
|
DAC from 6-bit to 8-bit.
|
|
- Added basic 256-color mode emulation to PC-98 mode.
|
|
Linear framebuffer, needed by PC-98 ports of DOOM and
|
|
Wolfenstein 3D, is implemented. Bank switching, needed
|
|
by a few PC-98 games, is implemented.
|
|
- MPU-401 emulation now accepts dosbox.conf option "mpubase"
|
|
to control the base I/O port of the MPU-401 interface.
|
|
The option can be set to "0" to tell DOSBox-X to pick the
|
|
best default. Works in either IBM PC or NEC PC-98 mode.
|
|
See dosbox-x.reference.conf for more details.
|
|
- Fixed Sound Blaster 16 mixer IRQ/DMA select registers
|
|
to work in PC-98 mode as they apparently do on real
|
|
hardware.
|
|
- Sound Blaster 16 and Adlib emulation now available in
|
|
NEC PC-98 mode. I/O port mapping is based on a real
|
|
SB16 card for PC-98 and some documentation. Only OPL3
|
|
emulation is supported for Adlib. sbtype must be set
|
|
to sb16.
|
|
- NEC PC-98 emulation mode now emulates DMA controller.
|
|
- Gravis Ultrasound emulation now allows game to read back
|
|
the channel's Pan Pot register.
|
|
- Sound Blaster 16 now implements 0xF9/0xFA fully, even if
|
|
the RAM contents they expose are not fully implemented.
|
|
- Sound Blaster DSP command E2h (DMA identification/test)
|
|
code cleaned up and simplified.
|
|
0.82.17
|
|
- Fixed yellowish tint of tv3x scaler on SDL1 builds of
|
|
Mac OS X.
|
|
- Fixed hq2x/hq3x and the various sai render scalers to
|
|
render correctly on SDL1 builds of Mac OS X (where the
|
|
odd BGRA color order is used). Prior to this fix the
|
|
scaler output had a very strong yellow tint (missing
|
|
or misrendered blue channel).
|
|
- Fixed basic scaler template code to render correct RGBA
|
|
colors in SDL1 builds for Mac OS X.
|
|
- New grayscale scaler option, to emulate monochrome VGA
|
|
monitors (frank-deng)
|
|
- Menu handling cleanup from within Pause loop, including
|
|
Mac OS X menu problems when invoking pause from the
|
|
menu bar.
|
|
- Shell welcome text fixed to show consistent first line in
|
|
both IBM PC and PC-98 mode.
|
|
- Pause mode fixed to handle mouse input while paused, so that
|
|
SDL drawn menus (on Linux or HX DOS) continue to work while
|
|
paused.
|
|
- Added dosbox.conf option (off by default) to add the
|
|
NEC PC-98 copyright string at E800:0DD8 for games and
|
|
applications that require it.
|
|
- Debugger can now show guest MS-DOS kernel MCB chain if you
|
|
boot an MS-DOS floppy or hard disk image using
|
|
BOOT --boothax msdos. For use with MS-DOS 3.3 or higher
|
|
including the real mode MS-DOS environment of Windows 95.
|
|
|
|
WARNING: Use boothax msdos ONLY with real mode MS-DOS, do
|
|
not use with the protected mode environment (desktop) of
|
|
Windows 95 especially a DOS VM within Windows. Use with
|
|
MS-DOS and a DOS extender (DOS4GW, etc) should be OK.
|
|
|
|
- Added "--boothax <mode>" option to BOOT command. At this
|
|
time <mode> is limited to "msdos" to instruct the emulation
|
|
to intercept specific INT 21h calls to locate the MS-DOS
|
|
kernel's List of List and MCB chain structures for use with
|
|
the debugger.
|
|
- "TV" scaler updated to render dimmer alternate scanlines
|
|
in CGA graphics modes (frank-deng)
|
|
- Direct3D output no longer leaves DOS screen frozen when
|
|
Direct3D device is "lost" (such as hitting CTRL+ALT+DEL
|
|
to bring up the Windows C+A+D screen).
|
|
- Page fault handling on by default now for dynamic core,
|
|
DOS games and Windows 3.1 seem to handle it OK.
|
|
- Page fault handling no longer use non-recursive page fault
|
|
method with dynamic core, no matter what. It's too unreliable.
|
|
- PC-98 mode now switches PIT Timer 2 clock gate ON by default
|
|
to satisfy delay loops in Sunsoft "Photo Genic" and allow it
|
|
to run. Note that PIT Timer 2 drives the baud rate clock of
|
|
the RS-232C port.
|
|
- IDE emulation bug fixed that prevented BIOS to IDE
|
|
geometry translation when BIOS head count == 255. This
|
|
fix also allows Windows 95 to use its IDE driver with
|
|
>= 4GB hard drives instead of running in MS-DOS compatibility
|
|
mode.
|
|
- Disk image support fixed to allow 4GB or larger hard disk
|
|
images to work again.
|
|
- FPU x86 core no longer calls E_Exit if the FPU stack
|
|
overflows or underflows.
|
|
- Updated build-debug scripts to accept "32" on the command
|
|
line as a sign to compile 32-bit (i686) on a 64-bit (x86_64)
|
|
system. You will need a multilib-capable GCC and 32-bit
|
|
libraries installed on your system for this to work.
|
|
- SDL2 OpenGL fixed color order issue
|
|
- OpenGL is now supported in SDL2 builds.
|
|
- Changed MPU-401 reset duration (DOSBox SVN).
|
|
0.82.16
|
|
- SDL1 support fixed to gracefully handle a case where,
|
|
under Windows XP, with an audio device that is not cycling
|
|
any audio DMA, DOSBox-X can hang on shutdown.
|
|
- SDL drawn menus now shift and adjust popup menu position
|
|
to ensure the popup is entirely within the screen in cases
|
|
where the window is too small. Redraw issues related to
|
|
that (overlapping item and popup menus) have been fixed.
|
|
Minimum window resolution has been reduced to 500x300,
|
|
enough to permit EGA 640x350 displays without a black
|
|
border.
|
|
- Fixed INT 18h AH=13h not to automatically show the cursor
|
|
(PC-98 fix), which fixes the visible blinking cursor
|
|
problem during games.
|
|
- VS2017 project files can now compile DOSBox-X to run on
|
|
ARM versions of Windows RT (driver1998)
|
|
- Local filesystem support fixed to sanitize DOS dates
|
|
before applying them to files on the host filesystem
|
|
so that invalid dates within DOSBox-X do not make invalid
|
|
dates on the host filesystem.
|
|
- VS2017 project files can now compile DOSBox-X to run on
|
|
ARM64 versions of Windows 10 (driver1998)
|
|
- Fixed FAT driver programming mistake (inherited from
|
|
DOSBox SVN) that used the Windows 95 "Created" date/time
|
|
stamp rather than the original MS-DOS "Modified" date/time
|
|
stamp field.
|
|
- FAT driver now allows setting file date/time properly
|
|
on create or INT 21h call to set date/time, and updates
|
|
date/time on close after writing the file. Copy a file
|
|
to a disk image should preserve the date, and new files
|
|
created on the disk image should no longer have the
|
|
date/time stamp Jan 1st, 1980 12:00:00 AM midnight.
|
|
- Configuration GUI now allows user to exit dialog boxes
|
|
and windows by hitting the ESC key.
|
|
- Entering the mapper UI on Mac OS X will now hide all but
|
|
the Host Key button on the touch bar. Entering the
|
|
Configuration GUI will hide all buttons.
|
|
- If DOSBox-X is run on a platform where the GUI provides
|
|
a menu resource, bringing up the mapper will replace the
|
|
main menu with a mapper-specific menu until you exit the
|
|
mapper. Same for the configuration GUI.
|
|
- Mapper now allows user to exit by hitting ESC key three
|
|
times in a row.
|
|
- Windows MinGW builds now properly support and enable the
|
|
Direct3D output
|
|
- Mac OS X builds now contain the correct version number in
|
|
the application plist. Using the Finder's Information window
|
|
on the compiled application bundle will now show correct
|
|
version information.
|
|
- SDL1 builds fixed to always compile with internal SDL_net
|
|
library instead of public library on the system
|
|
- Mac OS X SDL1 builds fixed to always clip the desktop
|
|
dimensions against the available video modes provided
|
|
by the system to avoid problems with the 1080i/1080p
|
|
modes listed in the System Preferences dialog and older
|
|
HDTV LCD TVs with lower than 1920x1080 native resolution.
|
|
- "unmask keyboard on int 16 read" option is on by default,
|
|
to allow DOSBox-X to keep the keyboard working with
|
|
Windows 3.11 Windows for Workgroups.
|
|
- Added multi-monitor support and detection for Mac OS X.
|
|
- Fixed problem on multi-monitor Linux/X11 setups where going
|
|
fullscreen on the primary monitor leaves the non-fullscreen
|
|
window sticking out on the adjacent monitor.
|
|
- Windows SDL1 builds fixed so that on multi-monitor setups,
|
|
going fullscreen will fill the monitor the window is
|
|
placed on.
|
|
- Added support for multi-monitor and DPI determination for
|
|
Microsoft Windows.
|
|
- SDL1 and SDL2 builds now examine multi-monitor setups and
|
|
so that they can go fullscreen properly on one monitor
|
|
instead of going fullscreen across all monitors, in
|
|
Linux/X11.
|
|
- SDL1 OpenGL code fixed not to leave a blank space at the
|
|
top of the screen when going fullscreen (if the menus are
|
|
SDL drawn menus).
|
|
- SDL1 library modified to center cursor properly no matter
|
|
where on the overall desktop the fullscreen window exists.
|
|
- Multi-monitor and fullscreen support added for Linux/X11
|
|
versions of SDL1 DOSBox-X.
|
|
- For non-x86 targets, or x86 targets where the user prefers
|
|
not to use the x86 FPU core, code has been added to emulate
|
|
the FPU instructions and registers using the "long double"
|
|
data type for full 80-bit precision. This fixes 3D glitches
|
|
in "Explora" though it still doesn't pass the Intel i387
|
|
test program.
|
|
- PC-98 INT 18h AH=04h: Added software delay to slow down some
|
|
older PC-98 games that poll keyboard/mouse while animating
|
|
cutscenes. The games seem to be timed around the assumption
|
|
that this call has some delay to it. This fixes problems with
|
|
"Shangrlia" by Elf corporation and animation that runs way
|
|
too fast.
|
|
0.82.15
|
|
- Incorporated x86 FPU emulation from DOSBox SVN to improve FPU
|
|
precision at least on x86 and x86_64 targets.
|
|
- PC-98 port 6Ah fixed not to allow setting EGC enable unless
|
|
another EGC enable bit has been set, as specified in the PC-9801
|
|
bible.
|
|
- SVGA mode 0x10A (text mode) fixed to display properly instead
|
|
of only the top half.
|
|
- BIOS keyboard handling fixed in PC-98 mode so that Shift+Ro
|
|
types an underscore as expected.
|
|
- SVGA emulation (Tseng ET4000 and S3) fixed to reflect real
|
|
hardware behavior where BYTE/WORD/DWORD VGA bits in the CRTC
|
|
are ignored in SVGA modes.
|
|
- Added "debug page flip" and "debug retrace poll" options to
|
|
the menu.
|
|
- Added "Swap Floppy" and "Swap CD" commands to the menu.
|
|
- INT 2Eh (MS-DOS command interpreter interrupt) fixed so that
|
|
the segment value of the interrupt vector matches the PSP
|
|
segment of COMMAND.COM. Some DOS applications rely on that
|
|
segment value as a starting point to enumerate the MCB
|
|
chain.
|
|
- PC speaker emulation fixed not to print "queue overrun"
|
|
messages if the game or demo is attempting to use the PC
|
|
speaker while pcspeaker=off.
|
|
- PC speaker emulation fixed to improve accuracy and to ensure
|
|
the square wave is synchronized to the 8254 PIT output.
|
|
This change appears to have improved sound quality with
|
|
PWM "digitized speech" output.
|
|
- 8254 emulation fixed to improve overall accuracy
|
|
- 8254 PIT timer emulation fixed not to report writes to PIT 0
|
|
Timer counters if the game is writing the same value
|
|
repeatedly.
|
|
- 8254 PIT timer connected to PC speaker now handles new counter
|
|
value without causing full reset of the square wave (mode 3),
|
|
which allows DOSBox-X to pass all tests in DOSLIB.
|
|
- Added dosbox.conf option to control bus speed (and therefore
|
|
I/O delay) of the C-BUS in PC-98 mode. Added defaults
|
|
appropriate to PC-98 mode according to bus speeds documented
|
|
for PC-98.
|
|
- Timer clock gate emulation fixed to work properly in PC-98
|
|
mode as well as IBM PC mode, when the PC speaker clock is
|
|
enabled or disabled. This includes resetting the counter
|
|
on the 8254 when the clock gate (trigger pin) is turned off
|
|
[DOSLIB test TPCRAPI6.EXE]
|
|
- Introductory text now indicates whether the build was
|
|
compiled against SDL1 or SDL2 (emendelson)
|
|
- Windows SDL1 builds now remember window position even when
|
|
entering/leaving fullscreen mode.
|
|
- "Restart DOSBox-X" menu and command code removed.
|
|
- Linux/X11 window focus fixup. The change in 0.82.14 broke
|
|
main window focus handling entirely by forgetting to check
|
|
for the "window manager" window handle.
|
|
0.82.14
|
|
- Windows builds, if run on Windows 7 or higher, will now direct
|
|
the task bar preview to show only the part of the window
|
|
containing the DOS screen.
|
|
- SDL1 Mac OS X builds fixed to remember window position even
|
|
if going to or from fullscreen mode.
|
|
- Fixed mistakes with SDL2 surface output that caused serious
|
|
UI problems with fullscreen mode and fullresolution=original.
|
|
- Fixed problems with SDL1 Mac OS X and the window/dock menu
|
|
filling up with multiple windows that have long ceased to
|
|
exist.
|
|
- SDL1 Mac OS X startup code replaced with startup code from
|
|
SDL2 in order to run from main() cleanly instead of running
|
|
SDL_main from an OS X event callback. This also fixes the
|
|
problem of an unresponsive menu on startup if run from the
|
|
terminal.
|
|
- SDL1 Mac OS X builds fixed not to destroy and recreate the
|
|
window every time it is resized.
|
|
- SDL1 Mac OS X builds fixed to keep the window position
|
|
stable every time you resize or do anything to trigger
|
|
window recreation. Resizing the window no longer causes it
|
|
to re-center to your screen.
|
|
- SDL initialization fixed not to bail out on startup if
|
|
DOSBox-X is unable to initialize SDL1 CD-ROM support (ccawley2011)
|
|
- Segfault fixed (NULL pointer de-reference) that
|
|
occurs when running DOSBox SVN on anything older than
|
|
Mojave. DOSBox-X was not affected but the fix was applied
|
|
just the same because the possibility is there.
|
|
- Configuration GUI fixed to fade out with the right color
|
|
RGBA order on Mac OS X.
|
|
- Mac OS X SDL1 builds fixed to ignore mouse movement that
|
|
occurs outside the window, unless any buttons are held
|
|
down.
|
|
- Mac OS X RGBA color order error with output=opengl fixed.
|
|
EGA/CGA/MDA/Hercules/etc. modes should display properly
|
|
now on OS X with OpenGL output.
|
|
- SDL1 builds for Mac OS X now use the full Application
|
|
menu generated by SDL1 instead of just an About command.
|
|
- SDL1 builds under Mac OS X now support the "touch bar"
|
|
on Macbook Pro and offer a few basic shortcuts,
|
|
including a few that the touch bar makes much more
|
|
inconvenient to use since the function key row is
|
|
virtual on the touch bar instead of physical.
|
|
- SDL1 builds under Mac OS X now offer a few basic
|
|
DOSBox-X shortcuts if you command-click or double-tap
|
|
the application icon in the dock.
|
|
- Added support for taskbar extensions offered by
|
|
Windows 7 and higher that allow DOSBox-X to put
|
|
additional buttons in the preview pane that appears
|
|
when you hover over DOSBox-X in the taskbar.
|
|
- Centos 7 SDL1 builds (Linux X11) can now go fullscreen
|
|
properly, instead of making the user input devices
|
|
unusable running in an endless loop.
|
|
- Windows builds now include Mapper and Configuration GUI
|
|
commands in the system menu.
|
|
0.82.13
|
|
- Mac OS X SDL2 builds now use the native OS X menu
|
|
system instead of the "SDL drawn" menus.
|
|
- Mac OS X SDL1 builds now default to the OpenGL
|
|
output (if compiled with OpenGL support). Under
|
|
recent versions of OS X, OpenGL output gives
|
|
better performance than surface (CGBitmap) based
|
|
display.
|
|
- SDL2 builds now have working XBRZ scaler support.
|
|
- Mac OS X SDL2 builds updated to completely ignore
|
|
touch events, because SDL2 sees the touchpad on
|
|
Macbooks as a touchscreen. Prior to this fix, the
|
|
DOSBox-X UI was unusable due to mixed input events
|
|
from both the touchpad and the mouse input from the
|
|
touchpad.
|
|
- SDL1 High DPI support for Mac OS X users with Retina
|
|
displays.
|
|
- SDL1 fix for display problems (blank windows) on Mac
|
|
OS X 10.14.x (Mojave).
|
|
- Windows builds (compiled with VS2017) now have working
|
|
MT32 (Munt) emulation.
|
|
- Adjusting CPU cycles with F12 + - / F12 + + (Increment
|
|
and Decrement Cycles shortcuts) now updates cpu cycles
|
|
property. This fixes a problem where adjusting the cycle
|
|
count then changing the CPU core caused DOSBox-X to reset
|
|
the cycle count back to the original value.
|
|
- Linux/X11 support fixed not to assume XRandR extensions
|
|
are present, but to instead ask the X11 server first.
|
|
- Simple scaler rendering has altered the RENDER start line
|
|
state so that detection of a changed line triggers a block
|
|
of rendering without compare within a limited count before
|
|
checking again. This means a reduced CPU load with scalers
|
|
because it only detects frame changes every line before
|
|
changes detected, and then on average every 12th line
|
|
when running the scaler code. Hopefully this helps the
|
|
Raspberry Pi keep up with DOS gaming better.
|
|
- Simple scalers now offer compile-time (not run-time)
|
|
option to omit per-pixel compare in scaler and process
|
|
the entire scanline instead as a performance adjustment
|
|
for slower and embedded systems.
|
|
- Video debug menu added. First item is one that blanks the
|
|
display to test screen updating.
|
|
- Simple scalers (normal 2x-5x and SAI) revised to process
|
|
changes and scaler rendering in larger blocks for possible
|
|
performance improvement.
|
|
- Simple scalers fixed to properly compare all pixels to
|
|
detect changes properly, instead of only the first 4-8
|
|
pixels.
|
|
- EGA/VGA text rendering combined to reduce code copypasta
|
|
and reduce bugs.
|
|
- VGA 16-color planar modes now obey CRTC byte/word/dword
|
|
bits.
|
|
0.82.12
|
|
- MinGW HX DOS builds fixed to accept mouse input properly
|
|
even beyond the 640x480 of the original SDL window
|
|
dimensions. HX DOS seems to use the original dimensions
|
|
of the window even if the window is maximized, thus the
|
|
mouse input issue.
|
|
- Configuration GUI fixed not to restore (unmaximize)
|
|
the window, it's unnecessary.
|
|
- New build scripts for Mac OS X, MinGW, and MinGW HX-DOS,
|
|
under build-scripts in the source tree, to help make
|
|
DOSBox-X releases more timely and consistent.
|
|
- MinGW HX DOS builds now use WS_POPUP style instead
|
|
of WS_OVERLAPPED to avoid window caption redraw
|
|
glitches when in Windows XP.
|
|
- MinGW HX DOS builds fixed to force the SDL window
|
|
maximized at all times. Mapper and Configuration GUI
|
|
interfaces fixed not to call on Windows to SW_RESTORE
|
|
the window, in order to keep it maximized.
|
|
- Steel Gun Nyan PIT/Timer hack revised so that polling
|
|
the timer does not cause an interrupt storm. This
|
|
fixes "God of Thunder" MS-DOS game where entering or
|
|
leaving a house causes the Adlib music to play
|
|
REALLY FAST during the transition effect.
|
|
- Dynrec core ported from DOSBox SVN (Daniel-Trevitz)
|
|
- Configuration GUI will pack settings closer together
|
|
if the window/screen size is below 800x600.
|
|
- Configuration GUI fixed to size dialog boxes as
|
|
large as needed to show all options, to allow tabbing
|
|
between options, to show a focus rectangle on the
|
|
items.
|
|
- Configuration GUI top level windows no longer show
|
|
inactive title bar whenever you access a menu.
|
|
- About dialog in configuration GUI updated to
|
|
reflect that this is DOSBox-X in 2018, not
|
|
DOSBox in 2014.
|
|
- Configuration GUI now works with touchscreens in
|
|
SDL2 builds.
|
|
- INT 33h fixed to regard cursor as hidden if hidden
|
|
for at least 100ms, which fixes host cursor flickering
|
|
when running the built-in FreeDOS EDIT.COM program.
|
|
- Mouse input and guest pointer integration limited
|
|
to send input only if within the display region or
|
|
within a 10% border around the display region.
|
|
- SDL2 tapping the SDL drawn menu bar (on a touch
|
|
screen) no longer triggers mouse click in the
|
|
guest application (bugfix).
|
|
- SDL2 Linux/X11 hack, added to compensate for bugs
|
|
in SDL2 v2.0.5 regarding Linux/X11 touchscreen
|
|
events, removed. SDL2 v2.0.9 fixed it.
|
|
- Linux/X11 SDL2 builds will now encourage the user
|
|
to update the SDL2 library installation if
|
|
SDL2 library v2.0.5 is installed.
|
|
- Fullscreen mode fixed in SDL2 builds.
|
|
- Fixed configuration GUI fade out/in effect after
|
|
exiting mapper GUI bug.
|
|
- Configuration GUI now available and working in
|
|
SDL2 builds as well as SDL1.
|
|
- SDL2 builds now have a working "Fit aspect ratio"
|
|
option.
|
|
- SDL1 fullscreen mode fixed to use either the desktop
|
|
size or the desired output size, and fallback to
|
|
non-fullscreen on failure, to fix a segfault that
|
|
would otherwise happen.
|
|
- CONFIG -set sdl showmenu= now changes menu visibility.
|
|
- CONFIG -set render scaler= fixed to apply changes
|
|
to scaler and force setting, and update menu items,
|
|
instead of ignoring it.
|
|
- CONFIG -set render aspect= now keeps menu synchronized
|
|
with setting.
|
|
0.82.11
|
|
- SDL GUI fixed to make fade/sepia effect fit the
|
|
actual display rectangle instead of filling the
|
|
window.
|
|
- PC-98 BIOS keyboard handling now returns capitals
|
|
for A-Z if SHIFT xor CAPS LOCK is engaged.
|
|
- PC-98 BIOS keyboard handling now uses modifier bits
|
|
of keyboard bitmap to process scan codes, hackish
|
|
IBM PC/AT data area status handling in PC-98 mode
|
|
removed.
|
|
- PC-98 BIOS keyboard emulation now maps numeric keypad
|
|
to produce the correct keyboard input to the console
|
|
and games. This fixes games that rely on the numeric
|
|
keypad and the DOS console driver
|
|
- Command line parsing fixed to add any BAT, COM, and
|
|
EXE file references given at DOSBox-X's command line
|
|
to the autoexec.bat file run at startup.
|
|
- BOOT command bug fixed that made it impossible to
|
|
specify both disk images and the --debug and --force
|
|
options.
|
|
- Debug output fixed to make it easier to break into
|
|
the debugger even during a flood of debug output.
|
|
- Added dosbox.conf option to enable/disable the
|
|
PC-98 bus mouse interface
|
|
- PC-98 boot disks with 128 bytes/sector boot sectors
|
|
now load 4 sectors instead of 2. Seems to be
|
|
required by some games.
|
|
- INT 13h read/write functions fixed to refuse the
|
|
command if the floppy disk has a sector size too
|
|
large for the implementation (such as a PC-98
|
|
disk image mounted in IBM PC mode with 1024 bytes
|
|
per sector).
|
|
- INT 13h AH=2 (read sector) updated to return disk
|
|
change error on first read after disk change, to
|
|
match real BIOS behavior.
|
|
- Floppy emulation now tracks "disk change" signal.
|
|
- PIC event handling fixed, IRQ breakpoints now stop
|
|
at the beginning of the interrupt handler.
|
|
- MPU-401 MIDI default IRQ is now IRQ 6 in PC-98 mode,
|
|
to match factory default setting.
|
|
- MPU-401 MIDI IRQ masked by default in PC-98.
|
|
- PC-98 port BFDB implemented, which allows control
|
|
of the mouse interrupt rate.
|
|
- Eliminated mouse periodic interrupt hack, the mouse
|
|
interrupt on PC-98 is periodic when enabled.
|
|
- 256-byte/sector hard disk images fixed to ensure the
|
|
proper boot drive identifier is presented for MS-DOS
|
|
when booting a hard disk image.
|
|
- Added IMGMOUNT -o partidx=N option. N is an integer
|
|
value that indicates which partition to mount, counting
|
|
up from zero. This allows mounting disk images that
|
|
the FAT driver otherwise can't identify which partition
|
|
to mount.
|
|
- New general -o name=value option for IMGMOUNT, to pass
|
|
various options to the FAT driver.
|
|
- Update Metal Force mouse hack to become a more general
|
|
"fire interrupt on Port C write" with a dosbox.conf
|
|
option to enable. This fixes the requirement to move
|
|
the mouse constantly for "Amaranth" when enabled.
|
|
- Add to cascade interrupt hacks by offering an option
|
|
to ignore the "in service" bit of the PIC for the
|
|
cascade interrupt, while still tracking it for
|
|
the DOS game or interrupt. Handy for PC-98 games
|
|
that check the cascade "in service" bit before
|
|
acting on the interrupt (IRQ 8-15).
|
|
- DOS kernel fixed to limit it's private area and
|
|
UMB region to avoid overlapping the PC-98 SOUND
|
|
BIOS.
|
|
- PC-98 SOUND BIOS dummy stub added for games that
|
|
call into it.
|
|
- Emulator hanging problem fixed when inputs are
|
|
processed while running at a very low cycle count.
|
|
- Added PC-98 LIO BIOS list and stub for games that
|
|
require it.
|
|
- Timer and PIC updated to emulate Mode 3 Square Wave
|
|
output through the IRR register. Needed for Steel
|
|
Gun Nyan.
|
|
- PC-98 INT 18h fixed to reenable and process any
|
|
keyboard data waiting when the DOS game or application
|
|
calls INT 18h to read keyboard input. This fixes
|
|
keyboard problems with Quarth.
|
|
- PC-98 FDC BIOS emulation no longer reprograms the
|
|
timer interrupt, but uses an alternate hack to
|
|
avoid divide by zero fault with Ys II.
|
|
- PC-98 GDC command to read back cursor position
|
|
added.
|
|
- PC-98 DOS CON device emulation now maintains ANSI
|
|
attribute byte at 60:11D as documented.
|
|
- BOOT now hides hardware cursor when booting a guest
|
|
OS in PC-98 mode.
|
|
- INT 1Dh vector now points at segment FD80 to satisfy
|
|
some games that autodetect PC-98 vs other platforms.
|
|
- INT 18h AH=42 implement display "bank" bit for games
|
|
that need it.
|
|
- PC-98 text scroll region implemented (I/O ports
|
|
76h-7Ah even).
|
|
- PC-98 CRTC mode set regarding 20/25-line mode fixed
|
|
to update line height, text vertical position/height,
|
|
and cursor shape.
|
|
- PC-98 emulation of text height/vertical position
|
|
registers 70h-74h even added.
|
|
- PC-98 text hardware cursor fixed to cover both halves
|
|
of doublewide characters if cursor positioned on left
|
|
half, to match real hardware.
|
|
- Fixed music/interrupt slowdown whenever I/O and INT 10h
|
|
BIOS emulation is involved.
|
|
- PC-98 minimal (non-functional at this time) printer
|
|
port emulation added, as well as system configuration
|
|
port.
|
|
- PC-98 CG memory region fixed to match real hardware
|
|
behavior, responding to A4000-A4FFF.
|
|
- FAT filesystem driver now supports 2048 bytes per
|
|
sector filesystems.
|
|
- FAT filesystem driver logical/physical sector matching
|
|
fixed to improve flexibility.
|
|
- Fixed crash that occurs if you maximize the window
|
|
and then adjust scalers to produce output that is
|
|
larger than the maximized window.
|
|
- INT 33h emulation now offers hiding the host cursor
|
|
if the guest has provided an interrupt subroutine
|
|
for the mouse driver to call, since it usually means
|
|
the DOS game wishes to draw the cursor itself.
|
|
- INT 33h emulation now offers hiding the host cursor
|
|
if the guest is polling the cursor position, to
|
|
better support guest/host integration with DOS games
|
|
that draw their own cursor.
|
|
- AUX and PS/2 emulation no longer allowed if machine
|
|
type is PCjr.
|
|
- PS/2 mouse emulation fixed to disable itself if the
|
|
slave PIC needed for IRQ 12 is not present.
|
|
- INT 33h pointer integration improved to support some
|
|
additional DOS games, and to handle DeluxePaint II
|
|
enhanced.
|
|
- IMGMOUNT now supports NFD disk images.
|
|
- DOSBox Integration Device now available for PC-98.
|
|
- Added support for T98Next NHD hard disk images.
|
|
- Added support for T98Next NFD R1 disk images.
|
|
- Fixed crash with VGA BIOS allocation if video memory
|
|
allows the full modelist to overflow the available
|
|
ROM space.
|
|
- SDL2 mapper redraw issue resolved.
|
|
- Added dosbox.conf option to determine whether INT 10h
|
|
VESA BIOS emulation points at the modelist in ROM or
|
|
copies the modelist into the DOS application's info
|
|
structure when asked.
|
|
0.82.10
|
|
- PC-98 INT 1Bh floppy emulation now fakes success for
|
|
calls to format track.
|
|
- Initial keyboard pause fixed
|
|
- PC-98 INT 1Bh floppy disk BIOS call now resets timer
|
|
interval per call. This fixes Ys II after disk swap.
|
|
- BIOS fixed to put normal "unhandled INT call" handler
|
|
for INT 0-7 even in PC-98 mode to avoid confusion
|
|
between game crashes and unknown INT calls.
|
|
- VFD image support fixed to properly handle disk images
|
|
where a sector is marked with fill byte 0xFF and the
|
|
data field is 0xFFFFFFFF, which means the sector contents
|
|
are all 0xFF.
|
|
- DOSBox-X now supports T98 NFD disk images (R0).
|
|
- BIOS data area now properly reports a high-resolution
|
|
CRT display.
|
|
- INT DCh AH=1 CL=10h added, which is apparently a print
|
|
string function.
|
|
- BIOS data area now reports 188+ user-definable CG slots,
|
|
which makes GAJET happy.
|
|
- FDI image support fixed to read the header instead of
|
|
treating it as a plain disk image with 4096 of junk.
|
|
- PC-98 character generator is now accessible through both
|
|
I/O ports A1h-A9h and through memory-mapped I/O range
|
|
A4000-A401F. This fixes missing text in Eve Burst Error.
|
|
- Gravis Ultrasound emulation will no longer log GUS reset
|
|
writes in cases where the same value is being written
|
|
repeatedly, to reduce log clutter. Some demoscene
|
|
productions have music routines that trigger GUS reset
|
|
repeatedly without changing the register.
|
|
- Added "gus master volume" setting to deal with games or
|
|
demoscene productions where the music is too loud and clipping.
|
|
- Added "Pause with interrupts". When enabled, the CPU is directed
|
|
into a CALLBACK_Idle() loop to halt the game's main
|
|
logic while allowing interrupts to run. This is useful
|
|
for recording the game or demo's music because most DOS
|
|
games/demos run the music and sound effects from interrupt
|
|
handlers instead of the main loop.
|
|
- Audio/video capture fixed to render audio even if muted,
|
|
instead of rendering garbage to the capture file when
|
|
audio is muted.
|
|
- Experimental Emscripten + Node target (not reliable yet).
|
|
- Added option to control how unhandled IRQs are dealt with.
|
|
One option, mask_isr, is derived from em-dosbox.
|
|
- Code added to read the screen dimensions in Linux/X11,
|
|
either through XRandR or through the base X11 API.
|
|
- Code added to read and store the dimensions, size, and
|
|
DPI (Dots per Inch) of the screen.
|
|
- Fixed bug that enabled IBM style APM BIOS in PC-98 mode.
|
|
- For PC-98 mode, PIC emulation by default (but controllable
|
|
through dosbox.conf) now initializes the PIC at startup to
|
|
return the ISR (interrupt in-service) register instead of
|
|
the IRR (interrupt request) register. This fixes FM
|
|
music problems with Blackbird by Vivian caused by a
|
|
programming mistake in the FM interrupt handler.
|
|
- PIC emulation now accepts a dosbox.conf option not to mark
|
|
the cascade interrupt as in service, for troublesome games.
|
|
- VESA BIOS emulation now supports a packed 16-color (4bpp)
|
|
mode as seen on a Toshiba Libretto (Chips & Tech) system.
|
|
The packed format is different than the normal planar 16-color
|
|
SVGA modes seen on most systems.
|
|
- INT 33h no longer reports relative mouse motion unless the
|
|
user captures the cursor.
|
|
- Fixed EGA 16-color display modes (M_EGA) to honor CGA and
|
|
Hercules compatible mapping modes (bits 0 and 1 of the
|
|
CRTC mode control) and limit memory display to 8KB or 16KB
|
|
accordingly. This fixes the mode select screen in the game
|
|
"Prehistorik 2".
|
|
- Removed Sound Blaster goldplay mode + sample accurate mode
|
|
warning, goldplay mode no longer has issues with sample
|
|
accurate mode.
|
|
- Mixer "sample accurate" mode fixed to work again.
|
|
- Windows SDL1 builds fixed to work around Windows SDK-level API
|
|
limitation that normally prevents Win32 applications from
|
|
fully receiving WM_KEYDOWN events for the left/right shift
|
|
keys independently. Left and right shift keys are now fully
|
|
usable on Windows builds (i.e. for use with pinball games).
|
|
- INSTALL.MD guide and test files (Aybe)
|
|
- CONFIG -get now populates %CONFIG% environment variable with
|
|
configuration setting (follow DOSBox SVN behavior)
|
|
0.82.9
|
|
- "Always on top" mode is now available for Mac OS X builds.
|
|
- PS/2 mouse emulation fixed not to send relative mouse motion
|
|
unless mouse cursor is captured.
|
|
- Shell no longer provides MEM.COM if machine=pc98 or cputype=8086.
|
|
MEM.COM is not compatible with either case.
|
|
- INT 10h emulation will now set the S3 LFB enable bit for VESA
|
|
SVGA modes, unless machine=vesa_nolfb was specified.
|
|
- VGA emulation revised to report possible known problems with
|
|
Windows 3.1 with regard to LFB base address or memalias setting.
|
|
- VGA emulation fixed to emit warning if memalias=24, for S3 LFB,
|
|
if machine=svga_s3, to inform the user that the configuration is
|
|
known to cause the Windows 3.x driver to crash.
|
|
- VGA emulation will no longer report S3 linear framebuffer address
|
|
unless machine=svga_s3. The LFB address doesn't matter for anything
|
|
other than SVGA S3 emulation.
|
|
- S3 emulation will now automatically disable PCI VGA emulation if
|
|
constraints prevent DOSBox-X from setting a linear framebuffer
|
|
address aligned to 32MB (as required for PCI emulation).
|
|
- VGA emulation fixed to pick a more appropriate linear framebuffer
|
|
(S3) address if memalias is set to a value below 32.
|
|
- Added dosbox.conf option "pci vga" to control whether the VGA
|
|
emulation appears as a PCI or ISA device.
|
|
- ROM BIOS now forces reported RAM down to make room for BIOS
|
|
alias at top of memory instead of throwing an E_Exit error.
|
|
- Fixed Hercules emulation (and MDA) so that the Hercules palette
|
|
is always enforced. This fixes a bug where switching to HGC
|
|
graphics mode resulted in monochrome blue/black graphics instead
|
|
of the intended white/green/amber color expected.
|
|
- Added MDA emulation (machine=mda). It functions like
|
|
machine=hercules minus the graphics mode and Hercules-specific
|
|
extensions to the base MDA card.
|
|
- DOSBox shell no longer accepts dosbox.conf settings as commands
|
|
by default, unless enabled in dosbox.conf. Typing "cycles" will
|
|
no longer show cycle count. The dosbox.conf setting allows the
|
|
user to enable it again i.e. for compatibility with DOSBox SVN.
|
|
This is to prevent dosbox.conf settings from polluting the
|
|
available commands at the shell and conflicting with shell and
|
|
executable names.
|
|
- EGA emulation fixed to obey Color Plane Enable register in
|
|
16-color planar modes.
|
|
- Fixed BIOS model byte to report PS/2 model 30 correctly when
|
|
machine=mcga, to allow certain DOS games to detect MCGA that way.
|
|
- CGA mode/color select registers are readable on MCGA, fix 3D8-3D9h
|
|
to reflect that.
|
|
- INT 10h fixed to properly allow/deny AH=10h, AH=11h, and AH=12h calls
|
|
according to machine= type instead of mistakes that blocked too many
|
|
calls.
|
|
- CGA composite mode should not be available when machine=mcga.
|
|
- Fixed INT 10h to report MCGA color display if machine=mcga.
|
|
- MCGA (IBM PS/2 Multi-Color Graphics Adapter) emulation added.
|
|
- bitop C++11 self-test disabled for Microsoft Visual Studio builds.
|
|
Microsoft's compiler can't handle them for some reason.
|
|
- Added DOSLIB DSXMENU.EXE to the built-in executable list.
|
|
DSXMENU.EXE allows DOS CONFIG.SYS style menus to be set up to
|
|
run commands based on menu selection.
|
|
- PC-98 ANSI emulation fixed to use the number of rows on the screen,
|
|
not cursor position, to range-clip ANSI cursor positioning.
|
|
- Added code to have DX-CAPTURE wait 3 seconds (or until ENTER/SPACE
|
|
is pressed) after the program exits, before stopping capture.
|
|
- DOSBox-X menus now allow runtime selection of capture format
|
|
(AVI+ZMBV or MPEG-TS H.264). Changing while capturing will stop/start
|
|
capture correctly.
|
|
- Added switches to DX-CAPTURE to allow specifying audio, multitrack audio,
|
|
and video as well.
|
|
- DX-CAPTURE shell command added. The command to run is specified
|
|
after DX-CAPTURE and DX-CAPTURE will start video capture, run the
|
|
program, then stop capture when the program exits.
|
|
- VGA/SVGA emulation fixed to enforce 256KB (64KB planar) wraparound
|
|
when emulating stock VGA modes (not SVGA/VESA BIOS). Some
|
|
demoscene productions rely on the 256KB wraparound when showing
|
|
scrolling credits.
|
|
- Gravis Ultrasound emulation now uses I/O callout system, with
|
|
I/O port handling to emulate ISA bus 10-bit decoding (but with
|
|
consideration of GUS MAX 7xx registers) so that GUS I/O ports
|
|
are visible every 1000h I/O ports. A demoscene production was
|
|
found that relies on an alias of GUS ports at 5xxxh rather than
|
|
using the I/O ports directly.
|
|
- Mouse emulation no longer sends motion to serial and PC-98 mouse
|
|
emulation unless mouse cursor has been captured.
|
|
- Mouse emulation fixed to set sensitivity and mickey count even if
|
|
int33=false on mouse emulation reset.
|
|
- Debugger fixed to paginate commands with a lot of output, including
|
|
HELP, PIC, and various commands to dump interrupts and GDT/IDT tables.
|
|
- CPU core no longer triggers Double Fault if Divide Overflow
|
|
occurs within Divide Overflow. This is needed for bizarre anti-debugger
|
|
obfuscated code seen in a demoscene production, where the program
|
|
wraps the demo in a mini-filesystem emulated by trapping INT 21h.
|
|
- cputype= dosbox.conf setting fixed to allow selecting between
|
|
new 486 emulation (cputype=486) and old 486 emulation (cputype=486old).
|
|
The "old" 486 core emulates older 486 CPUs that differ significantly
|
|
from the newer 486 CPUs that inherited features from the Pentium.
|
|
- IRQ hack setting for GUS and Sound Blaster is now a list so that
|
|
multiple hacks can be specified, but in a way that is backwards
|
|
compatible with existing dosbox.conf files.
|
|
- IRQ hack option for Gravis Ultrasound added.
|
|
- INT 20h emulation fixed to work with demoscene productions that
|
|
call INT 20h in a way that the interrupt frame wraps around the
|
|
64KB limit of the stack.
|
|
- XMS emulation now has a dosbox.conf setting to control the number
|
|
of XMS handles available.
|
|
- Added INT 33h option not to round mouse cursor coordinates to text
|
|
cell boundaries in text mode. Some demoscene productions were found
|
|
that detects mouse movement, but reads initial position from text mode
|
|
before switching to graphics.
|
|
- Removed IRQ0 error measurement hack, to match DOSBox SVN. This fixes
|
|
timing problems with some demoscene productions. The error measurement
|
|
hack was apparently added for Microsoft Flight simulator, but has not
|
|
been needed since and has been causing timing issues since.
|
|
- Fixed INT 10h VGA save state function to program the Attribute Controller
|
|
properly so that the screen is not left blank after the call.
|
|
- 8042 keyboard emulation now initializes port 60h to 0xAA on hardware
|
|
reset and initialization. Some DOS games and demoscene productions
|
|
need something with bit 7 set in the register at startup in order not
|
|
to act as if a key was immediately pressed.
|
|
- Add printer emulation from Daum's branch of DOSBox, add FreeType 2.9.1
|
|
to go with it (Alex/AT)
|
|
- Add keyboard type setting, for use in future development.
|
|
- PCjr emulation fixed to emulate PC/XT style NMI mask at port A0h
|
|
rather than emulate the secondary PIC.
|
|
- Code of Conduct revised to make it clear that forks/derivatives CAN
|
|
have their own Code of Conduct but that it only applies to that fork
|
|
or derivative version. No forking DOSBox-X, changing the code of
|
|
conduct, and enforcing it on anyone outside your fork.
|
|
- CPU normal core fixed to clear ZF flag after MUL when cputype=8086,
|
|
which fixes problems with MSD.EXE mis-detecting the CPU as a NEC V20.
|
|
- Fixed PCjr emulation not to allow UMB (upper memory blocks) since
|
|
that seems to cause stability issues with emulation. Also, PCjr
|
|
does not have UMB as far as I know.
|
|
- Fixed PCjr not to re-read port 60h from IRQ1 handler.
|
|
- Fixed PCjr not to emulate INT 15h keyboard hook.
|
|
- PCjr keyboard emulation fixed to trigger NMI and reflect to IRQ1
|
|
the way it actually works on IBM PCjr systems, which also fixes
|
|
keyboard control issues with the PCjr version of "Pitfall".
|
|
- configure.ac now provides an option for compiler optimization (Yksoft1)
|
|
- Code of Conduct, initial version, added to source tree
|
|
- PC-98 palette save/load state
|
|
- CPU, memory, VGA palette and attribute controller save/load state
|
|
- DOS SHELL now implements INT 0x2E to allow DOS programs to invoke
|
|
shell commands through COMMAND.COM (borrowed from DOSBox SVN).
|
|
- Added dosbox.conf option to control the physical memory address of the
|
|
S3 SVGA linear framebuffer.
|
|
- Save/load state system added, currently very minimal and experimental.
|
|
- Appveyor XML added to source tree (Allofich)
|
|
- Fixed *most* SDL2 refresh problems.
|
|
- Sound Blaster Pro mixer volume fixed to return reserved bits SET rather
|
|
than CLEAR. Some demoscene productions detect Sound Blaster Pro by whether
|
|
these bits remain set when written. This fix allows them to detect Sound
|
|
Blaster Pro as Sound Blaster Pro.
|
|
- VGA emulation fixed not to add 2 scanlines twice, which fixes VGA vertical
|
|
timing and scanline count and fixes the scroller in "Inconexia".
|
|
- Gravis Ultrasound emulation now prints a warning if the game/demo attempts
|
|
a DMA transfer while leaving the DMA channel masked.
|
|
- Fixed Gravis Ultrasound emulation to mask DRAM peek/poke I/O to the 1MB
|
|
offered by the card, which fixes GUS problems with a demoscene production
|
|
that has random values in DRAM address bits 23-20.
|
|
- Added dosbox.conf option that, if set, lets Gravis Ultrasound emulation
|
|
start a DMA transfer if the game/demo is polling the DMA control register
|
|
when DMA is unmasked and DMA terminal count has not occurred, which helps
|
|
some demoscene productions.
|
|
- Added "PIC unmask IRQ" option for Gravis Ultrasound emulation.
|
|
- Gravis Ultrasound emulation now has a dosbox.conf setting to initialize
|
|
the hardware at startup as if ULTRINIT had been run.
|
|
- Added dosbox.conf option for VESA BIOS emulation that, if set, instructs
|
|
non-LFB modes to report 64KB windows but map 128KB from the start of
|
|
the window, which helps (but does not fully solve) some Demoscene
|
|
productions with redraw problems handling non-LFB as if LFB.
|
|
- Fixed ET4000 emulation to support the hretrace "wobble" needed for
|
|
"Copper"
|
|
- VGA DAC/attribute controller behavior updated to reflect actual behavior
|
|
as seen on an IBM PS/2 VGA model, as well as almost any SVGA clone.
|
|
- VGA DAC behavior unique to Tseng ET4000 implemented when machine=svga_et4000.
|
|
256-color mode on the ET4000 seems to map the low 4 bits through the
|
|
attribute controller and, if enabled, the upper 4 bits through the
|
|
color select register. Note this behavior is REQUIRED for the
|
|
"copper" demo to display properly.
|
|
- VGA palette, DAC, and attribute controller emulation updated to
|
|
reflect actual VGA behavior, including the way that 256-color mode
|
|
is mapped through the attribute controller.
|
|
- Sierra highcolor DAC can now be enabled for any VGA/SVGA emulation
|
|
- Cleanup and reorganization of scaler, aspect ratio handling (Alex/AT)
|
|
- MinGW config.h builds fixed to enable Direct3D (Alex/AT)
|
|
- Build fixes for SDL1 and Linux and extended functions (JP Cimalando)
|
|
- Fixed ALSA MIDI mistake preventing the creation of subscription
|
|
ports (JP Cimalando)
|
|
- Previous release broke SVGA 16-color planar modes by masking video
|
|
memory to 64KB planar boundaries at all times, fixed code to do so
|
|
only for non-VESA modes. 1024x768 16-color mode works again.
|
|
- Fixed user-defined VESA BIOS modes to validate the required video
|
|
memory against the available memory on the emulated SVGA hardware.
|
|
- VESA BIOS modelist generation moved into its own function. Modelist
|
|
is regenerated upon editing/deletion of modes.
|
|
- VESA BIOS modes added as suggested by hail-to-the-ryzen
|
|
- VESA BIOS emulation now allows scriptable editing, deletion, and
|
|
mode renaming of VESA BIOS modes for use with picky DOS games and
|
|
demoscene productions that assume mode numbers.
|
|
- Added VESA BIOS mode 0x136 as an alias for 320x200x16bpp mode
|
|
- Enhancements to GFX_CaptureMouse and CaptureMouseNotify added
|
|
- Fixed scaler change detection to use sizeof(int) properly than assume
|
|
a certain byte count
|
|
- Fixed undefined sse2_available reference issue in certain builds
|
|
0.82.8
|
|
- New xBRZ scaler (with bilinear mode) (Alexat)
|
|
- Fixed aspect ratio correction to use the ratio given by VGA emulation
|
|
instead of assuming 4:3
|
|
- output=surface and xBRZ now permit filling the window just like
|
|
output=opengl and output=direct3d
|
|
- Added critical section around Windows SDL 1.x resize code to solve
|
|
the remaining 0.5% probability that resizing the window causes move
|
|
and resize to stop working in Windows 10.
|
|
- INT 10h AH=10h now ignores AL=3 in PCjr mode.
|
|
- Fixed keyboard handler bug in PCjr mode that caused some CPU
|
|
register corruption and general crashiness in games.
|
|
- Improved shell: (Aybe, Joncampbell123)
|
|
- Ctrl+Left and Ctrl+Right permits word-navigation.
|
|
- Added emulation of 'Ins' key behavior.
|
|
- Num Lock, Caps Lock, Scroll Lock are now synchronized at startup
|
|
and when DOSBox-X window gains focus again (Windows). (Aybe)
|
|
- Added visual feedback to Hat/D-pad buttons in mapper. (Aybe)
|
|
- Added documentation for 'dir' command sorting switches. (Aybe)
|
|
- Menu 'Show console' is now checked with '-console' (SDL1). (Aybe)
|
|
- Improved joystick support (see README.joystick): (Aybe)
|
|
- Added deadzone and response for joystick axes.
|
|
- Axes can be remapped for devices with questionable layout.
|
|
- User-settable deadzones for joystick bindings in mapper,
|
|
mappings like WSAD keys to axes is less frustrating.
|
|
- Improved mouse integration (Aybe):
|
|
- Now by default DOSBox-X does not emulate mouse movement when the mouse
|
|
is not locked. This gives a consistent experience when compared to host OS.
|
|
For the old behavior, use [sdl] mouse_emulation=always.
|
|
- Added visual or auditive feedback about auto-lock state (Windows).
|
|
This feature can be switched off, use [sdl] autolock_feedback=none.
|
|
- Added CAPMOUSE program for capturing/releasing mouse from command line. (Aybe)
|
|
|
|
0.82.7
|
|
- Mac OS X builds now honor showmenu=false by leaving the
|
|
stock SDL menu in place at startup.
|
|
- Default minimum MCB free/base is now 0x100, to sidestep
|
|
unknown unstable DOS application behavior when DOS
|
|
applications are loaded at around segment 0x800.
|
|
This also puts DOSBox-X at parity with the base memory
|
|
behavior of DOSBox SVN.
|
|
- Add dosbox.conf option to set Sound BIOS enable
|
|
bit in non-volatile RAM (PC-98) that tells older
|
|
PC-98 games the FM card is present (Yksoft)
|
|
- BOOT updated to boot D88 except for 2D format which
|
|
is generally used by PC-88 disk images.
|
|
- Added D88 disk image support
|
|
- CMake files added (Aybe)
|
|
- PIC timing updated to use "double" float type for
|
|
more precision, but as a typedef for future support
|
|
as a compile time option.
|
|
- Removed geometry checks from INT 1Bh FDC functions,
|
|
to allow non-uniform disks to work.
|
|
- MinGW builds now allowed to use Direct3D.
|
|
- Direct3D output fixed to use the same texture
|
|
coordinate, window fitting, and positioning
|
|
logic as OpenGL.
|
|
- Update zlib and libpng libraries in-tree.
|
|
- Fixed VFD disk image support to correctly signal
|
|
failure to detect geometry, to avoid divide by
|
|
zero crash with FAT driver.
|
|
- showmenu= now taken into consideration whether to
|
|
show the menu bar at startup
|
|
- Fixed get_item() E_Exit crash if menus asked to
|
|
show from dosbox.conf
|
|
- SDL drawn menus fixed to integrate with Direct3D
|
|
output on Windows.
|
|
- PC-98 mode can now boot floppy disk images where the
|
|
boot sector is 128 or 256 bytes/sector despite
|
|
track 1 and higher having 1024 bytes/sector.
|
|
- General codebase cleanup, compiler warning cleanup.
|
|
- Enable XInput support on Windows (Aybe)
|
|
- Fixed SDL drawn menus to use std::vector properly,
|
|
not to hold onto iterators while resizing the vector
|
|
and popping things off the top.
|
|
- PC-98 INT 1Bh "read id" floppy disk call fixed to
|
|
cycle through sector numbers. Some bootable PC-98
|
|
games use "MEGDOS" which polls this BIOS call before
|
|
attempting to read the disk. If the sector numbers
|
|
never cycle, "MEGDOS" will not attempt to read the
|
|
disk.
|
|
- Fixed bug that prevented some menu options (such as
|
|
"aspect ratio") from working if still in the BIOS or
|
|
booted into a guest OS.
|
|
- PC-98 mode fixed to ignore "mainline compatible mapping".
|
|
That mapping mode refers to DOSBox SVN which never
|
|
supported PC-98 mode anyway.
|
|
- Fix PC-98 INT 1Bh "test read" call, which then allows
|
|
"cherry bomb" to run.
|
|
- Remove geometry checks in PC-98 INT 1Bh BIOS call, so
|
|
that FDD images with odd sector sizes can work.
|
|
- ROM BIOS now automatically occupies E8000-FFFFF instead
|
|
of F0000-FFFFF when in PC-98 mode.
|
|
- Most 128 byte/sector FDD images appear to jump to
|
|
E800:0002. I'm guessing that's ROM BASIC, so add a
|
|
callback at that location to catch these boot disks
|
|
and show a message instead of allowing the boot
|
|
sector to jump to nothing and crash.
|
|
- PC-98 BOOT fixed to check for and support booting from
|
|
FDD images where track 0 contains 128 byte/sector
|
|
boot sectors.
|
|
- PC-98 INT 1Bh support fixed to support reading/writing
|
|
sector sizes other than the one sector size reported
|
|
by the image. It is now possible to read the other
|
|
sector sizes from an FDD/VFD image.
|
|
- Fixed somewhat serious bug that, when compiled against
|
|
Microsoft C++, causes the AVI writer to use the 32-bit
|
|
lseek() function instead of the 64-bit lseek64() function.
|
|
Prior to this fix, AVI captures would begin to corrupt
|
|
themselves after growing past 2GB in size.
|
|
- Cleanup code, fix compiler warnings, typecast problems,
|
|
C/C++ conformance problems as reported by GCC 4.8,
|
|
GCC 7.3.0 (MinGW), Visual Studio 2017, and Clang/LLVM
|
|
on Mac OS X.
|
|
- FM Towns machine type stub, for anyone interested in
|
|
forking DOSBox-X to implement FM Towns emulation.
|
|
- Code cleanup, refactor, according to compiler warnings.
|
|
- SDL drawn menus fixed to copy Direct3D backbuffer to
|
|
the SDL surface when popup occurs. This allows the
|
|
menus to overlap the Direct3D display correctly.
|
|
- Fixed Direct3D output so that when composing the next
|
|
frame in the backbuffer, it also copies the SDL drawn
|
|
menu from the SDL surface in order to keep it on
|
|
screen.
|
|
- Direct3D output updated to follow SDL clip rectangle
|
|
struct, in the same exact manner as the OpenGL output.
|
|
This also permits the Direct3D output to correctly size
|
|
itself and leave space at the top for the SDL drawn
|
|
menus.
|
|
- Fixed dynamic core entry point to push/pop EBP because
|
|
debug builds need the compiler to track the stack frame.
|
|
- Updated in-tree zlib and libpng libraries to the latest
|
|
provided by both projects.
|
|
- Fixed VFD (FDD) disk image support to signal to FAT driver
|
|
properly an error if it could not determine a geometry.
|
|
- Fixed code breakage with SDL2 that prevented compilation
|
|
with Munt (MT32) emulation enabled. SDL2 builds now allow
|
|
MT32 emulation.
|
|
- Mac OS X builds now compile against the in-tree zlib and
|
|
libpng libraries for consistency.
|
|
- MinGW builds now compile against the MinGW provided zlib
|
|
and the in-tree libpng library for consistency.
|
|
- Enabled MinGW builds to use Direct3D and Direct3D shaders.
|
|
- Added code to auto-detect the VirtualBox display driver
|
|
in Windows build, because OpenGL output doesn't work
|
|
in Windows XP under VirtualBox. The change will switch
|
|
the default output to "surface" if VirtualBox is detected,
|
|
else will retain the "opengl" default. This change applies
|
|
only to MinGW builds and not HX DOS or main VS2017 builds.
|
|
- Added PC-98 INT DCh emulation for function call that
|
|
writes a char to the screen, allowing Eve Burst Error
|
|
to clear the function row
|
|
- Added command line option to allow skipping the 1-second
|
|
wait in the BIOS startup screen.
|
|
- SDL2 builds now support use of the SDL drawn menu with
|
|
a touchscreen device.
|
|
- Fixed up SDL2 support code to compile correctly on
|
|
Mac OS X.
|
|
- Fixed up SDL2 compilation to automatically use the
|
|
SDL2 library on the system, or if that is not available,
|
|
use the SDL2 library in-tree. There are no plans to make
|
|
modifications to the in-tree SDL2 code.
|
|
- Added code to read and discard OpenGL error code before
|
|
creating font texture, to avoid false failure handling.
|
|
This fixes font rendering on Windows MinGW builds when
|
|
output=opengl.
|
|
- OpenGL SDL drawn menus fixed to ensure the menu contents
|
|
have been redrawn at least twice. One for each OpenGL
|
|
buffer because DOSBox-X uses the double-buffered mode.
|
|
- SDL drawn menus implemented for output=opengl. The menu
|
|
bar in Linux builds is now available in OpenGL mode.
|
|
- SDL drawn menus fixed to redraw only when state changes,
|
|
and to clean up menu drawing code.
|
|
- US keyboards can now enter the "Ro" key in PC-98 mode.
|
|
Default binding is set up to map the Windows Menu key
|
|
as Ro in PC-98 mode.
|
|
- VGA option change code fixed to trigger scaler redraw
|
|
correctly. Changing video modes or changing between
|
|
8/9-pixel VGA text no longer leaves artifacts on the
|
|
screen.
|
|
- Added code to force redrawing additional frames when
|
|
output=opengl, in order to correct a bug with Linux/X11
|
|
and MesaGL where the first OpenGL buffer swap after
|
|
SDL_SetVideoMode() is misplaced when the window size
|
|
changes.
|
|
- Renderer SSE line comparison fixed to use correct sizeof()
|
|
of the integer type during compare.
|
|
- Renderer fixed not to use SSE and non-SSE line comparison
|
|
at the same time, if SSE was enabled at compile time.
|
|
- Fixed in-tree SDL 1.x library to allow DOSBox-X to disable
|
|
auto-refresh of the window in Linux/X11 after SDL_SetVideoMode
|
|
to prevent visible flickering when resizing the window.
|
|
- Conditional support for Direct3D (9) output enabled for
|
|
MinGW builds, if the MinGW headers are available (yksoft1).
|
|
Option is disabled by default.
|
|
- Configuration GUI dialog box widened to accommodate buttons
|
|
that were previously cut off on the right.
|
|
- Replace E_Exit() with LOG_MSG() for key codes from the mapper
|
|
that a keyboard scan code generator does not recognize. This
|
|
fixes E_Exit() crashes if typing certain keys on a Japanese
|
|
keyboard with no equivalent in IBM PC/AT mode.
|
|
- Added code to double the size of the menu and menu items if
|
|
the window is 1280x800 or larger, for users with high
|
|
definition laptop displays and screens.
|
|
- Enforce minimum window size of 640x400 if the menu bar is
|
|
visible and DOSBox-X is drawing them, to make sure the menus
|
|
are accessible on screen.
|
|
- Removed auto-scalar-size code when output=surface that was
|
|
causing problems when resizing the window.
|
|
- Do not show "screenshot" menu item if screenshot support not
|
|
available at compile time.
|
|
- Remove "always on top" for anything but Windows at this time.
|
|
- Disable "Show debugger" option on Linux and Mac OS X if no
|
|
console attached to STDIN/STDOUT/STDERR.
|
|
- Disable "Show console" option on Linux and Mac OS X since
|
|
the console is not under our control.
|
|
- Windows "Always on top" fixed to remember selection and
|
|
enforce it between SDL_SetVideoMode and fullscreen entry/exit.
|
|
- Windows builds fixed NOT to change window Z-order on the
|
|
screen when updating the window on SDL_SetVideoMode.
|
|
- HX DOS builds fixed to keep window maximized at all times
|
|
to fill the otherwise unused space on the screen since
|
|
HXGUI only supports one window.
|
|
- Menu framework support for any other platform (including
|
|
Linux) added. The menus are drawn by DOSBox-X itself
|
|
using the 8x16 VGA font. This also gives SDL 2.x builds
|
|
a working menu. These menus are used if no other platform
|
|
specific menus are available. These menus are NOT AVAILABLE
|
|
at this time if output=opengl.
|
|
- Cycle count edit dialog box fixed to immediately place
|
|
keyboard focus in the text field, and to process
|
|
ENTER and ESCAPE keyboard input as OK and CANCEL
|
|
button input. You can type a new cycles count without
|
|
having to click on the text field first.
|
|
- Menu framework and mapper fixed so that menus always
|
|
reflect the mapper binding in the menu.
|
|
- Windows SDL 1.x fixed async hack to properly destroy
|
|
and shut down the parent window again.
|
|
- Fixed output=opengl crash on Mac OS X.
|
|
- Menu framework support for Mac OS X NSMenu objects added.
|
|
This gives DOSBox-X the same useful menu on Mac OS X
|
|
instead of the useless default menu SDL 1.x offers.
|
|
- Menu framework support for Windows win32 menu resources
|
|
added. The Windows menu is now generated at runtime,
|
|
the static IDR_MENU resource is no longer used.
|
|
- New platform independent menu framework added. Menus
|
|
that were once Windows-only are now available on
|
|
any other platform including Linux and Mac OS X.
|
|
- In-tree SDL 1.x library fixed to #define a special
|
|
variable that the code now requires to compile
|
|
SDL 1.x builds. The option to use your host SDL 2.x
|
|
library is left open.
|
|
- C++11 is now mandatory to compile DOSBox-X
|
|
0.82.6
|
|
- Resizing the window in SDL 1.x Windows builds
|
|
fixed to work correctly in the latest build
|
|
(1803) of Windows 10. Prior to this fix, resizing
|
|
the window on that build would quickly hit a deadlock
|
|
that prevented the user from moving or resizing the
|
|
window again after that point.
|
|
- PC-98 dosbox.conf option added to select between
|
|
accurate key/shift mapping, vs an alternate mapping
|
|
appropriate for US keyboards (Yksoft1)
|
|
- SDL 1.x for Linux/X11 modified to differentiate
|
|
Ro and Yen keys despite X11 xkbmap apparently
|
|
mapping both to the backslash. The keymap is
|
|
queried to detect the scancodes at startup
|
|
in order to return the correct SDLK constant.
|
|
- SDL 1.x and DOSBox-X mapper code updated to
|
|
correctly map Ro, Yen, @ ^ ; : keys on a JP
|
|
keyboard in Windows and Linux.
|
|
- PC-98 keyboard BIOS handling updated to generate
|
|
ASCII codes according to PC-98 layout, instead
|
|
of by US keyboard layout.
|
|
- Mapper updated to support @ (at sign) key,
|
|
^ (caret) key, and a few other keys that
|
|
exist on JP keyboards.
|
|
- "Hold" modifier for mapper bindings fixed.
|
|
It is now possible to tap the key again to
|
|
release the hold.
|
|
- VHD differencing disk support added (Shane32)
|
|
- INT 18h AH=0Ah updated to support 20-line
|
|
text mode. Some games use the 20-line text
|
|
mode to space the text out vertically.
|
|
Such games will display correctly now.
|
|
- INT 18h now maintains text layer state
|
|
in BIOS data area byte 0x53C, just as
|
|
the actual BIOS does.
|
|
- Added PC-98 INT 18h function AH=0Ah and
|
|
AH=0Bh to support BIOS calls that enable
|
|
"Simple Graphics" mode. This fixes
|
|
problems with other games having vertical
|
|
lines over the graphics, even though
|
|
these games do not appear to use the
|
|
simple graphics at all. (yksoft1)
|
|
- Added support for PC-98 "Simple Graphics"
|
|
mode of text layer attribute bit 4. When
|
|
enabled, the attribute bit 4 changes
|
|
meaning from vertical line to a bit
|
|
indicating that the 8-bit character is
|
|
a low resolution 2x4 bitmap to be
|
|
displayed in the text layer. This fixes
|
|
score and status display in Carat.
|
|
- PC-98 INT 18h now implements AH=31h to
|
|
report CRTC, text and graphics state and
|
|
24khz/31khz video mode selection. This
|
|
fix allows some games including Touhou
|
|
Project to pace it's gameplay correctly
|
|
in either video mode.
|
|
- MinGW HX DOS builds default to host key
|
|
F12 again
|
|
- PC-98 mode now offers selection between
|
|
24khz and 31khz video modes (yksoft1)
|
|
- KEYB.COM fixed to load only the fonts the
|
|
ROM BIOS has allocated. This fixes a guest
|
|
system crash if using KEYB.COM with
|
|
machine=ega
|
|
- Moved host key to F11 for Windows. F12 is
|
|
already taken by some internal debugging
|
|
voodoo within Windows itself.
|
|
- DOSBox-X codebase now strongly encourages
|
|
compilation with C++11, will become
|
|
required soon.
|
|
- BOOT command fixed to make it possible to
|
|
IMGMOUNT multiple floppies to drive 1, and
|
|
boot from another disk in drive 0. This
|
|
should enable the use of DOSBox-X with
|
|
PC-98 games that expect to boot from drive
|
|
A and the user to rotate through floppies
|
|
in drive B.
|
|
- IMGMOUNT fixed to support mounting with no
|
|
filesystems and multiple disk images, and
|
|
using the "swap floppy" command to rotate
|
|
through them.
|
|
- Added options to BOOT command that allows
|
|
specifying multiple disk images and an option
|
|
that says to swap disk images only through
|
|
one drive.
|
|
- VHD dynamic support added (shane32)
|
|
- INT 10 AH=9 background color fixed in 256-color
|
|
VGA modes.
|
|
- Intro text updated to reflect new default
|
|
key bindings.
|
|
- Mapper shortcuts not in common use now exist
|
|
without any default binding, and most existing
|
|
default bindings are now associated with the
|
|
"host" key.
|
|
- Added 4th modifier "host" key to the mapper.
|
|
This "host" key is F12 by default. The intent
|
|
is to eventually move most mapper shortcuts
|
|
to some combination of F12 and another key,
|
|
rather than many shortcuts scattered over the
|
|
keyboard. Existing dosbox mapper files should
|
|
continue to work.
|
|
- Renderer and 32bpp VGA display code fixed to
|
|
reorder RGBA order for correct display on Intel
|
|
Mac OS X systems. Mac OS X, on Intel systems,
|
|
uses a strange BGRA 32bpp format that requires
|
|
some adjustment on our part to display correctly.
|
|
- Added more 24bpp INT 10h VESA BIOS modes.
|
|
- Removed per-sector debug messages from VFD/FDD
|
|
image support code.
|
|
0.82.5 (04/18/2018)
|
|
- Expanded memory manager memory copy fixed to
|
|
enable A20 gate temporarily so that the copy
|
|
works correctly.
|
|
- PC-98 FM board emulation now defaults to IRQ 12
|
|
instead of IRQ 3. A lot of PC-98 games seem to
|
|
have a strong preference for that IRQ with regard
|
|
to FM music.
|
|
- PC-98 reset I/O port (F0h) fixed to emulate CPU
|
|
reset according to the SHUT0 and SHUT1 state set
|
|
by the guest. Normally writing port F0h is a
|
|
signal to reset but SHUT0 and SHUT1 can be set to
|
|
indicate alternate behavior. This fixes VEMM486.EXE
|
|
(an expanded memory manager) and allows it to run,
|
|
since this manager appears to reset by port F0h
|
|
then resume execution normally. Prior to this fix,
|
|
booting a MS-DOS disk image that loads VEMM486.EXE
|
|
at startup yielded nothing but an infinite reboot
|
|
loop.
|
|
- XMS and EMS emulation fixed not to leave A20 gate
|
|
enabled unless EMS emulation is set to EMM386 and
|
|
dosbox.conf is set to run the system in virtual
|
|
8086 mode. There are plenty of DOS games that
|
|
malfunction if loaded too low in memory with the
|
|
A20 gate enabled.
|
|
- PC-98 mouse emulation, at the 8255 level, now uses
|
|
new C++ abstraction that seems to work fairly well
|
|
even with the common PC-98 MOUSE.COM driver.
|
|
- "BOOT" command in PC-98 mode updated to no longer
|
|
require the --force switch. Booting MS-DOS from a
|
|
hard disk or floppy disk image in PC-98 mode is
|
|
generally functional now.
|
|
- Added PC-98 SCSI/SASI hard disk emulation, and fixed
|
|
BOOT to enable booting PC-98 MS-DOS from a hard drive
|
|
(HDI image)
|
|
- FAT driver fixed to read/write logical sectors vs
|
|
actual drive sectors and removed geometry remapping
|
|
hack.
|
|
- FAT driver fixed to avoid memory corruption that
|
|
may occur if reading a partition table from a drive
|
|
that has more than 512 bytes/sector.
|
|
- .BAT file parsing fixed to handle BAT files not
|
|
in the current directory (yksoft1)
|
|
- Fixed floppy controller emulation bug that failed
|
|
to advance sectors during multi-sector read/write.
|
|
- Fixed floppy emulation bug that prevented seeking.
|
|
The "head" would get stuck at track 0 and never move.
|
|
- Dynamic core allows running with paging enabled again,
|
|
IF dosbox.conf says to allow it (yksoft1)
|
|
- DOS file I/O functions AH=3Fh and AH=40h updated to
|
|
reflect undocumented MS-DOS behavior that silently
|
|
truncates read/written byte count if the offset
|
|
and byte count reach beyond the end of a 64KB segment.
|
|
This fixes some demoscene productions that read 64KB-1
|
|
bytes but apparently rely on this behavior to avoid
|
|
display errors.
|
|
- FluidSynth fixes and API updates. DOSBox-X no longer
|
|
uses a private API within FluidSynth. (heftig)
|
|
- Added dosbox.conf option to control the size of the
|
|
DOS "Swappable Data Area" which is said to help with
|
|
shelling and task swapping in WordPerfect 5.x and 6.x
|
|
- Added "minimum mcb free", and set minimum mcb segment to
|
|
value same or similar to DOSBox SVN. The "free" option
|
|
directs DOSBox-X to allocate memory before that segment
|
|
value to fill memory.
|
|
- Fixed COMMAND.COM PSP segment to correctly identify it's
|
|
resident size in memory.
|
|
- COMMAND.COM in the DOSBox shell now allocates itself
|
|
normally instead of from a special segment so that it
|
|
appears normally in the MCB allocation chain.
|
|
- BIOS now clears it's stack before booting the DOS shell.
|
|
- Fix Pause (CTRL+Pause or ALT+Pause) to release all keys
|
|
in the mapper so that CTRL, ALT, or Shift are not left
|
|
"stuck" when emulation resumes.
|
|
- Initial host keyboard recognition, and base framework
|
|
for general keyboard language/layout handling. Keyboard
|
|
layout recognition added for Windows and Linux/X11.
|
|
- Fixed 350-line INT 10h VESA modes not to apply EGA mode
|
|
adjustments, which fixes display distortion.
|
|
- INT 10h VESA modes 720x480 and 848x480 fixed.
|
|
- Fixed INT 10h VESA emulation to round up bytes/scanline
|
|
so that 4bpp planar modes display properly.
|
|
- Fixed INT 10h VESA mode 1400x1050 16-color (4bpp planar)
|
|
mode to resolve overlapping mode number.
|
|
- Pulled in VGA vtotal + 2 fix from DOSBox SVN
|
|
- Pulled in EGA display mode fixes from DOSBox SVN to fix
|
|
EGA graphics emulation.
|
|
- Fixed INT 10h AH=1Ch (save/restore VGA state) to handle
|
|
VGA attribute controller properly so that the display is
|
|
not left blank.
|
|
- PC-98 GDC emulation fixed to handle START DISPLAY properly
|
|
by un-blanking the display (fixes "Ellena")
|
|
- Fixed possible format string vulnerabilities (gnustomp)
|
|
- Added menu options to enable/disable EGC and GRCG
|
|
emulation (yksoft1)
|
|
- Added options to enable/disable EGC and GRCG emulation
|
|
(to emulate older hardware).
|
|
- Added PC-98 BIOS function to read 8x16 character bitmaps,
|
|
which fixes "Power Dolls 2"
|
|
- BIOS now reports 16-color and EGC graphics. Some games
|
|
that check the BIOS for capabilities may now begin to
|
|
use 16-color graphics and EGC functions.
|
|
- Added PC-98 INT 18h function to read character font.
|
|
This also resolves garbled text in TH01.
|
|
- PC-98 GDC emulation now uses cursor specification
|
|
(line per character row) to determine whether graphics
|
|
are doubled vertically or not. Several PC-98 games
|
|
switch between 200-line (doubled) and 400-line graphics
|
|
by programming the GDC directly, rather than through
|
|
the BIOS.
|
|
- Added various video-related BIOS variables to the data
|
|
in PC-98 mode.
|
|
- GDC RESET/SYNC debug text updated to indicate which GDC
|
|
is undergoing the RESET/SYNC.
|
|
- Debugger "LOG" command (CPU execution logging) fixed to
|
|
automatically stop logging when the BIOS begins the
|
|
POST routine after system reset. The user who invoked
|
|
"LOG" probably cares more about what happened up to the
|
|
game crash, fault and reset rather than normal BIOS startup.
|
|
- BIOS now properly unmasks the PC-98 cascade IRQ, which
|
|
allows IRQ 8-15 to function, including the mouse (IRQ13)
|
|
- Debugger interface now indicates whether 80386 paging is
|
|
enabled or not at any time.
|
|
- Help text updates to reflect DOSBox-X changes (Shane32)
|
|
- BIOS INT 13h emulation updated to support up to 4 hard
|
|
drives (Shane32)
|
|
- IMGMOUNT and BOOT code cleanup (Shane32)
|
|
- IMGMOUNT RAM drive support: Additional fixes and geometry
|
|
work done, and some hangs resolved (Shane32)
|
|
- CPU emulation fixed to allow setting a breakpoint on
|
|
ANY interrupt of a specific number, not just software
|
|
interrupts. It is now possible to use BPINT to break
|
|
upon hardware (IRQ) interrupts.
|
|
- DOS kernel fixed to drop to the debugger if the MCB
|
|
(memory control block) chain is corrupted, so that
|
|
the corrupted state can be examined. When the debugger
|
|
continues execution, a full restart of the DOS kernel
|
|
is run. If DOSBox-X was compiled without the debugger,
|
|
then the normal E_Exit() path is still taken.
|
|
- Added debugger command to show, and modify, the state
|
|
of the PIC (interrupt controller).
|
|
- Added debugger command to view or change the A20 gate.
|
|
- Added debugger command to view the state of EMS, memory
|
|
handles, allocation, and EMS page frame mapping.
|
|
- Added debugger command to view the state of XMS, memory
|
|
handles, and allocation.
|
|
- Added debugger command to view the layout of the ROM
|
|
BIOS region (0xF0000-0xFFFFF) chosen by emulation.
|
|
- DOS kernel now logs kernel allocations, which can be
|
|
seen in the debugger using the "DOS KERN" command.
|
|
- Added "RUN" command as an alternative to hitting F5.
|
|
- Added "RUNWATCH" to the debugger, so that watching the
|
|
system run in the debugger is possible.
|
|
- Debugger data window can now be used to view memory in
|
|
segmented, virtual (through paging), and physical (bus
|
|
address) modes.
|
|
- Debugger window data and code view windows now indicate
|
|
regions of memory that are beyond the end of the segment.
|
|
- Debugger window data and code view windows now indicate
|
|
regions of memory that are paged out (will cause a page
|
|
fault if accessed)
|
|
- PC-98 A20 gate I/O port F6h fixed to work properly as an
|
|
enable or disable, rather than just an enable. The PC-98
|
|
version of HIMEM.SYS no longer complains about not being
|
|
able to control the A20 gate.
|
|
- IMGMOUNT RAM drive support: Ramdrive bug fixes and changed
|
|
drive limits from ATA limits to BIOS/MBR (Shane32)
|
|
- INT 21h fixed to use BIOS INT 1Ch to read date and time in
|
|
PC-98 mode. Arrowgun now runs properly.
|
|
- Fixed EMS emulation not to claim XMS memory (and zero BIOS
|
|
extended memory size) if EMS emulation is in EMS board mode
|
|
(and therefore not allocating extended memory through HIMEM.SYS).
|
|
- PC-98 INT 1Fh extended memory copy implemented. DOS games in
|
|
PC-98 mode can now use this API to access extended memory.
|
|
- Fixed HIMEM.SYS emulation in PC-98 mode to zero BIOS extended
|
|
memory values when claiming extended memory.
|
|
- PC-98 mode now sets BIOS data area values correctly regarding
|
|
conventional and extended memory.
|
|
- Added rudimentary emulation of non-volatile RAM at the
|
|
trailing edge of text RAM (A3FE0-A3FFF).
|
|
- PC-98 mode now adds additional BIOS data values at boot time
|
|
so that guest OSes like PC-98 MS-DOS can see the floppy drive,
|
|
see keyboard input, and determine the boot drive properly.
|
|
It is now possible to boot MS-DOS in PC-98 mode.
|
|
- Added rudimentary PC-98 INT 1Bh BIOS interrupt, at least for
|
|
floppy disk emulation.
|
|
- Cleanup and formatting enhancements to IMGMOUNT ramdisk (Shane32)
|
|
- DOS CON emulation in PC-98 mode now emulates two additional
|
|
ANSI escapes to clear the screen that are specific to NEC's
|
|
MS-DOS implementation, which fixes text layer problems with
|
|
Rusty.
|
|
- PC-98 GDC dip switch 2-8 emulation fixed. It was backwards.
|
|
This may break existing dosbox.conf configurations, apologies
|
|
in advance.
|
|
- Added -xms option to LOADFIX command. When given, the command
|
|
consumes extended memory instead of conventional memory.
|
|
- HIMEM.SYS emulation fixed to behave more like Microsoft's
|
|
HIMEM.SYS implementation regarding global & local A20 gate
|
|
control.
|
|
- Mac OS X builds fixed to work from the user's home directory
|
|
if run from the Finder, instead of trying to operate at the
|
|
root of the filesystem as directed by the Finder.
|
|
- Mac OS X builds now put the FREECG98.BMP file inside of the
|
|
.app bundle, and fall back to it if not found in the current
|
|
directory.
|
|
- RPM builds now install FREECG98.BMP in /usr/share/dosbox-x
|
|
and refer to it if not in your local directory, in order to
|
|
better provide PC-98 emulation.
|
|
- PC-98 BOOT command: Loading addresses and CPU register layout
|
|
updated to match actual hardware behavior, in which the boot
|
|
sector is loaded at just under 128KB.
|
|
- Build updates to support compiling for Windows with MinGW.
|
|
- BOOT now accepts a --debug switch that causes DOSBox-X to break into
|
|
the debugger when the boot sector begins to execute.
|
|
- BOOT now accepts a --force switch to override the PC-98 lockout,
|
|
if the user wants to better understand why I locked it out in PC-98 mode.
|
|
- PC-98 support now supports reading font from FONT.ROM, if available.
|
|
- Code, data, and output now respond to arrow, page up/down and
|
|
home/end keys as a user would normally expect.
|
|
- Arrow and page up/down keyboard input now goes to active window
|
|
instead of mapping directly to any specific window.
|
|
- Debugger interface now has the concept of an "active" window, and
|
|
the title bar of each window hilights if it is active.
|
|
- Debugger interface now hides the "variables" window by default.
|
|
- Fixed window "titles" in debugger interface to fill the terminal
|
|
line they're on and use ncurses horizontal line character which
|
|
on modern systems looks better than hyphens.
|
|
- Removed one line padding around data window in debugger interface.
|
|
- Debugger interface redesigned to permit more flexible layout
|
|
- Debugger interface no longer crashes when terminal window is sized
|
|
down too small (when there is no room for the output window)
|
|
- EMM386 (ems) emulation fixed to always turn on the A20 gate when
|
|
the DOS application requests to map pages into the EMS page frame.
|
|
This fixes crashes with Creative's Sound Blaster 16 installer when
|
|
run with the A20 gate turned off.
|
|
0.82.4 (02/28/2018)
|
|
- Updated ramdisk formatting code to better match FAT12/FAT16
|
|
specifications and limits (Shane32)
|
|
- Menu items related to Gravis Ultrasound, Glide emulation, Innova SID,
|
|
and other IBM PC-specific options are now grayed out in PC-98 mode.
|
|
- Updated Windows menus to gray out CPU core and type options that
|
|
are invalid. Selecting a prefetch CPU type while core dynamic is
|
|
no longer possible, and selecting dynamic core while using a
|
|
prefetch cpu type is no longer possible.
|
|
- CPU type submenu in Windows updated to reflect all types supported
|
|
by DOSBox-X including 8086 and 286 cores.
|
|
- Fixed E_Exit() crash on Windows in PDCurses endwin() that only
|
|
happens if you had never brought up the debugger console window.
|
|
- Minor oddities with OPNA stereo panning resolved.
|
|
- Sound Blaster, Adlib, and PC-98 FM emulation now reset state
|
|
correctly when the reset signal is given to avoid stuck notes.
|
|
- Fixed BIOS logo in PC-98 mode to properly reset the graphics mode
|
|
so that the logo is visible.
|
|
- Added Windows menu items to control PC-98 GDC speed, 4-partition enable,
|
|
200-line "scanline" effect enable, and PIT timer clock control.
|
|
- Added "Restart DOS" command to the Windows menu, with code to
|
|
allow it only if at the initial DOS shell.
|
|
- Added "multi-track WAV" command to the Windows menu, under Capture
|
|
- Added "reset system" command to the Windows menu
|
|
- "Restart" menu command updated to clarify that it restarts DOSBox-X entirely.
|
|
- OpenGL HQ output removed.
|
|
- Commands to force driver (DirectX or WINDIB) removed.
|
|
- Default disk I/O limit raised to more reasonable speeds.
|
|
- FM code borrowed from Neko Project II now compiles on Mac OS X
|
|
- IMGMOUNT now supports mounting a RAM drive (using -t ram) (Shane32)
|
|
- Direct3D fullscreen aspect ratio fixes, especially for
|
|
monitors with a 5:4 aspect ratio (such as 1280x1024) (Shane32)
|
|
- "Show menu" in Windows builds system menu is now a toggle
|
|
to show/hide the menu bar (Shane32)
|
|
- Fixed broken color palette with CGA composite and EGA
|
|
machine emulation. Composite CGA and machine=ega displays
|
|
properly again.
|
|
- According to documentation, IBM PC and PC-98 use different
|
|
initial PC speaker frequencies. Update the code to match.
|
|
- 8254 I/O port alias at 3FD9h-3FDFh added, which is needed
|
|
for several PC-98 games that program the PC speaker
|
|
frequency through those ports instead of through 71h-77h
|
|
- New Intel 8255 emulation. PC-98 system 8255 emulation
|
|
now uses this emulation, along with PC speaker emulation.
|
|
- Fixed XMS memory copy functions to enable the A20
|
|
gate so extended memory copies work correctly whether
|
|
or not the DOS application in question made the call
|
|
with A20 enabled. This fixes crashes and memory
|
|
corruption while installing Windows 3.1 using SETUP.EXE.
|
|
- "CLS" now sends the proper ANSI escapes to clear the
|
|
console in PC-98 mode.
|
|
- BIOS logo in PC-98 fixed to clear graphics RAM and
|
|
set graphics back to 8-color digital mode when booting
|
|
to DOS. This should fix palette errors and color issues
|
|
with older PC-98/PC-88 games that use the 8-color
|
|
graphics modes.
|
|
- Added PC-98 INT 1Ch timer interval BIOS function,
|
|
and timer countdown routine in IRQ 0.
|
|
- Windows builds now incorporate pdcurses and enable
|
|
the debugger interface (bulletshot60)
|
|
- DOSBox-X now tracks the systemwide keyboard layout
|
|
on Windows, and acts on user changes to the keyboard
|
|
and language in the system.
|
|
- Removed hack code in SDL 1.x that sets DOSBox-X's
|
|
keyboard layout to the US layout even if the host
|
|
uses anything else.
|
|
- Fix CPU cycles count increment not to nag you to use
|
|
core=dynamic if a) dynamic core is not available or
|
|
b) you're already using dynamic core.
|
|
- Added dynamic core back, it seems to be very stable
|
|
again.
|
|
- PC-98 FM board now allows changing the base I/O port
|
|
and IRQ (interrupt) line used by the card.
|
|
- PC-98 mode now supports joystick emulation. Joystick
|
|
input is mapped through the DOSBox mapper to the
|
|
PC-98 FM board where DOS games expect to see it.
|
|
- Added dosbox.conf option to select which PC-98 FM
|
|
board to emulate.
|
|
- Fixed PC-98 FM code to enable the ADPCM and Rhythm
|
|
FM channels.
|
|
- Re-ported Neko Project II FM board emulation, this
|
|
time keeping the code intact and keeping the separate
|
|
board emulations intact for PC-98 mode.
|
|
- VGA palette errors with Crystal Dream II fixed.
|
|
- PC-98 FM synthesis fixed not to initialize itself
|
|
again when rebooting, which fixes a problem with
|
|
garbled FM synthesis after rebooting.
|
|
- Removed some now-unnecessary SDL Video quit/init
|
|
calls from Windows builds.
|
|
- machine=pc98 now starts entire emulation in PC-98
|
|
mode instead of booting up in IBM PC mode and
|
|
switching to PC-98 mode.
|
|
- Initial "BIOS" startup screen now operates in
|
|
PC-98 mode when machine=pc98.
|
|
- Prefetch core debug code now disabled at compile
|
|
time. Seems to be stable so far.
|
|
- Prefetch core now emulates partial load of the
|
|
prefetch buffer on miss, and completing the buffer
|
|
fill on hit, to better emulate (probable) 80486
|
|
behavior.
|
|
- 486_prefetch is now a valid cputype setting, despite
|
|
the setting having existed for years in the source
|
|
code. Prior to this fix, 486_prefetch was ignored.
|
|
0.82.3 (02/13/2018)
|
|
- Removed DOSBox SVN-style "fast" A20 gate emulation.
|
|
Recent changes make it infeasible to keep. "fast" is
|
|
now mapped to "mask" mode.
|
|
- RAM aliasing is now always on, even if memalias is not
|
|
set, in order to help enforce A20 gate behavior, and
|
|
to fix emulator crashes when a non-aliased RAM page
|
|
is referenced through an alias.
|
|
- Cleanup and rewrite of prefetch core, to make the code
|
|
cleaner and more readable and maintainable.
|
|
- DOS file I/O updated to apply a proper delay rather
|
|
than the old DOSBox SVN code's cycle count dependent
|
|
method. The delay by default will slow disk I/O down
|
|
to mid 1990's IDE PIO speeds, which can resolve issues
|
|
with MS-DOS demoscene or game executables that can
|
|
malfunction when disk I/O is too fast.
|
|
- PIC code updated to enforce a proper IRQ delay on ALL
|
|
IRQ signals, which fixes issues with MS-DOS executables
|
|
that have race conditions between their code and their
|
|
interrupt handlers.
|
|
- DOS Shell now shows the full intro text only at first
|
|
run, instead of every shell invocation.
|
|
- Use FCB record size of 128 bytes if the FCB record size
|
|
is zero (from DOSBox SVN).
|
|
- PC speaker fix not to generate a continuous tone if
|
|
the PIT timer was set to mode 0. This fixes issues with
|
|
many early 1990s demoscene executables leaving the PC
|
|
speaker enabled (BEEEEEEP).
|
|
- Register DEBUGBOX.COM at DOS environment start instead
|
|
of boot, which allows the command to work again.
|
|
- EXE loader sets stack pointer (SS:SP) into PSP segment
|
|
(from DOSBox SVN)
|
|
- EXE loader fixed to use the larger of the minimum and
|
|
maximum memory sizes listed in the EXE header, which
|
|
fixes some demoscene executables with a minimum size
|
|
larger than maximum.
|
|
- VGA DAC (palette) emulation updated to better match
|
|
actual SVGA chipset (Paradise SVGA) behavior, which
|
|
fixes some VGA palette errors in some demoscene
|
|
productions.
|
|
- Added -nocachedir option to internal MOUNT command, to
|
|
disable directory caching for a local folder mounted
|
|
to a drive letter. When mounted this way, changes on
|
|
the host filesystem are immediately visible in the
|
|
guest DOS environment.
|
|
- Added -ro and -rw options to internal MOUNT command, to
|
|
allow mounting local folders to a drive letter as a
|
|
read-only volume.
|
|
- MIDI Fluidsynth fixed to initialize and free state properly
|
|
so that switching to and from Fluidsynth doesn't cause
|
|
a segfault or crash.
|
|
- MPU-401 fixed to allow changes to MIDI configuration from
|
|
CONFIG.COM.
|
|
- DOS filename handling fixed to maintain ASCII conversion
|
|
to uppercase, while not converting Shift-JIS double-byte
|
|
characters in PC-98 mode. This fixes Shift-JIS filename
|
|
corruption when the trailing byte can be mistaken for
|
|
lowercase ASCII a to z.
|
|
- Windows fixes to keep menu bar items updated with
|
|
DOSBox-X state.
|
|
- Remove WM_DROPFILES handling, for now. The code remains
|
|
to allow re-enabling later.
|
|
- SDL 1.x builds fixed to process only WM_COMMAND (menu
|
|
bar) and WM_SYSCOMMAND (system menu) events so that
|
|
the general chatter in modern Windows system does not
|
|
drown out the messages. This fixes issues where the
|
|
menu bar doesn't work on some systems.
|
|
- SDL 1.x builds fixed to handle menu bar input using
|
|
SDL's WM events instead of fighting with SDL's message
|
|
pump to receive menu events. This fixes potential
|
|
issues with losing menu bar events.
|
|
- dosbox.conf reference included with Windows builds
|
|
now uses MS-DOS line endings so that the file can be
|
|
edited in NOTEPAD.EXE
|
|
- New dosbox.conf option to control whether the menu is
|
|
shown by default in Windows builds.
|
|
- titlebar= SDL dosbox.conf option, to allow showing a more
|
|
user friendly name for the program instead of just using
|
|
the EXE name.
|
|
- E_Exit() on Windows now displays the message using
|
|
MessageBox() in addition to sending to STDERR, so that
|
|
Windows users see the error even if they are running
|
|
it from the desktop instead of the command line.
|
|
- PC-98 EGC bit shifter emulation fixed to correctly support
|
|
ascending and descending bit shifting in either direction.
|
|
This fixes screen shake emulation errors with Touhou Project
|
|
TH04 and TH05.
|
|
- Linux/X11 fixes to SDL 1.x to better match and compare
|
|
Visuals (descriptions of the screen) since X11 libraries
|
|
don't seem to use the same pointer values for the same
|
|
Visuals.
|
|
- ALT+TAB or loss of focus from fullscreen in Windows now
|
|
restores the window instead of minimizing it.
|
|
- 3Dfx OpenGL will hide the minimize and maximize buttons
|
|
in Windows while active.
|
|
- Windows menu bar items are now grayed out when 3Dfx OpenGL
|
|
emulation is active (items that cannot be used at that time).
|
|
- Fix Windows system menu to always keep "show menu".
|
|
- GFX rendering fixed not to render any output while 3Dfx
|
|
OpenGL emulation is active.
|
|
- 3Dfx OpenGL bug fixes to properly restore the DOS console
|
|
when the 3Dfx card is de-initialized and the game returns
|
|
to the DOS prompt.
|
|
- Linux/X11 window output fixed to keep the window on the
|
|
screen even when switching between OpenGL and non-OpenGL,
|
|
and when setting the SDL video mode.
|
|
- Remove some init hacks and SDL forced reinitialized hacks,
|
|
so that the window is stable on the screen.
|
|
- Added code to do more OpenGL state initialization (both
|
|
output=opengl and when initializing 3Dfx OpenGL emulation)
|
|
to make more consistent output.
|
|
- 3Dfx voodoo OpenGL based emulation fixed to switch out of
|
|
fullscreen mode IF DOSBox-X was fullscreen at the time the
|
|
card is initialized.
|
|
- 3Dfx voodoo OpenGL based emulation no longer allows fullscreen
|
|
mode, and does everything it can to prevent window resizing.
|
|
- Linux/X11 disable XRandR, XV, and X modeset functions. Do not
|
|
change monitor resolution.
|
|
- MPU-401 MIDI emulation fixed to look at all conductor message
|
|
bytes for code 0xFC (ALL END) instead of just the first byte.
|
|
This fixes hangs in games that send additional bytes prior to
|
|
0xFC and then expect the MPU-401 to signal 0xFC back when the
|
|
games are waiting for music to stop.
|
|
- Fix DOS CON driver not to signal data ready for PC-98 scan
|
|
codes that have no corresponding ANSI code. Tapping numeric
|
|
keypad keys during the title screen in Touhou Project should
|
|
no longer cause the game to pause waiting for keyboard input
|
|
when going into demo mode.
|
|
- Fix DOS CON driver to signal data ready for buffered escape
|
|
code.
|
|
- Fix PC-98 keyboard emulation not to apply IBM PC "extended"
|
|
keyboard scancode filtering.
|
|
- Window maximization does not count as a user resize preference.
|
|
- Fix Windows builds to enable DirectSerial, Direct LPT, modem,
|
|
emulation.
|
|
- New mapper shortcut to restore the window's original size.
|
|
- Fix bug with SHL instruction and OF flag, which corrects some
|
|
games and their decompression routines.
|
|
- Fullscreen (monitor) modesetting removed. DOSBox-X either runs
|
|
in a window, or scales up to fill the monitor, but will not change
|
|
the monitor resolution.
|
|
- Resize handling fixed to differentiate user resize verses resize
|
|
caused by DOSBox-X changing the window dimensions.
|
|
- Linux/X11 fixes to avoid flickering when resizing the window, and
|
|
to avoid redrawing unless necessary.
|
|
- Window resize management, to scale/arrange the output to fit the
|
|
window (for output= surface, opengl, direct3d)
|
|
- Enable resizing again, except when the GUI or mapper is active.
|
|
- Fix Linux/X11 to always take resize events, instead of ignoring
|
|
all further resize events just because one resize event is forever
|
|
"pending"
|
|
- Linux/X11 builds now track the size of the window on the desktop,
|
|
to keep track of resizing and maximizing.
|
|
0.82.2 (01/29/2018)
|
|
- Linux builds no longer enable window resizing. The ability to
|
|
resize will be added back when the emulator can better handle
|
|
the user resizing the window.
|
|
- Windows and Linux now have synchronized build date and version
|
|
strings.
|
|
- Codebase begin transition to C++11
|
|
- The Windows maximize button no longer triggers fullscreen mode.
|
|
- Direct3D, OpenGL, and Surface outputs updated to fill the window
|
|
in Windows builds when the window is maximized. If aspect
|
|
correction is enabled, the Direct3D and OpenGL outputs will
|
|
scale the DOS screen (with pillarbox/letterbox padding) to the
|
|
correct aspect ratio and center within the maximized window.
|
|
- Fixed minor memory leak in MT32 (MUNT) synthesizer usage.
|
|
- Fixed uninitialized state issues with DMA channel 4 (cascade).
|
|
- IMGMOUNT now allows mounting the El Torito bootable floppy image
|
|
of a CD-ROM drive as a drive letter and accessible (read only)
|
|
filesystem. The FAT filesystem driver was fixed to support working
|
|
from sources other than a direct file.
|
|
- PC-98 mode fixed not to register certain built-in commands and
|
|
binaries to drive Z:\ that are not compatible with PC-98 mode.
|
|
MEM.EXE in particular uses IBM PC-specific techniques to gather
|
|
it's information, and is therefore incompatible with PC-98 mode.
|
|
This can be verified from the source code as MEM.EXE was evidently
|
|
borrowed from the FreeDOS project.
|
|
- EGA emulation (machine=ega) fixed to render 8bpp (256-color mode)
|
|
instead of full 32bpp VGA output. EGA video output is limited to
|
|
64-color (6-bit) by the design of the video connector (2-bit R/G/B)
|
|
therefore the full precision of 32bpp is not needed. This will also
|
|
benefit video capture as the reduced color bit depth will result
|
|
in smaller AVI files when recording gameplay.
|
|
- Added code to correctly detect 15-bit highcolor vs 16-bit highcolor
|
|
display format support, despite SDL falsely indicating 16-bit
|
|
color in both cases, which fixes incorrect colors on 15-bit display
|
|
modes.
|
|
- Fix up VGA DAC/palette mapping to display the emulator screen
|
|
properly on 16-bit true color displays. Fixed off-by-one shift
|
|
mistake in the DOSBox-X render scaler code that caused
|
|
green and purple tints to colors on 16-bit true color displays.
|
|
- Add "Show menu bar" command to the Windows "system menu" so that
|
|
the menu bar can be brought back after selecting "hide menu bar".
|
|
- Losing window focus while fullscreen no longer leaves the emulator
|
|
window blank.
|
|
- Maximize/restore fullscreen cleanup.
|
|
- Removed DDRAW output.
|
|
- Fix FAT filesystem driver to clear "success" flag at all failure
|
|
return points. This fixes problems where unrecognizable FAT
|
|
filesystems are nonetheless presented as a drive letter with
|
|
garbled filenames, when IMGMOUNT should have displayed an error
|
|
instead.
|
|
- Fix FAT filesystem driver to allow PC-98 HDI images to load that
|
|
have headcount == 0 in the BPB.
|
|
- Fix Adlib emulation not to register a mapper handler if emulation
|
|
will jump to PC-98 mode, and fix mapper handler to check if Adlib
|
|
emulation is loaded to avoid segfault.
|
|
- Add "recording" volume to control the loudness of the audio going
|
|
out to capture (WAV, AVI, etc.)
|
|
- Separate mixer rendering from master volume. Apply master volume
|
|
at the sound card only, leave audio at full volume for recording
|
|
(WAV, AVI, etc. capture).
|
|
- dosbox.conf and command line option to log CON driver output to
|
|
a file. Anything written to STDOUT/CON by a DOS application is
|
|
logged this way.
|
|
- --time-limit <n> command line option to put a time limit on the
|
|
emulator, in seconds.
|
|
- Keyboard shortcut for the mapper UI no longer leaves keys "stuck"
|
|
in the guest to cause problems when you exit the mapper UI.
|
|
- Fixed code mistake that caused OpenGL NB output when dosbox.conf
|
|
specified output=opengl
|
|
- Mapper layout fixes:
|
|
- Shortcut buttons (on the right hand side of the UI) fixed to
|
|
become two columns wide if the button text won't fit in one
|
|
column.
|
|
- Some shortcut button titles shortened.
|
|
- Mapper UI updated to show which bindings are being activated by
|
|
hilighting buttons in the UI.
|
|
- Mapper UI modifier buttons indicate status through hilighting.
|
|
- Mapper UI joystick buttons and axes now use hilighting to indicate
|
|
that there is input from the device.
|
|
- Mapper fix for 4-axis joysticks that may count zero buttons, and
|
|
then crash (divide by zero) when the user pushes a button on the
|
|
joystick device.
|
|
- BIOS emulation now allows you to specify binary blobs to execute
|
|
in the guest system as part of startup. One can be specified to
|
|
execute just after CPU reset/power-on, and the other just before
|
|
booting to the DOS shell. THE BINARY BLOBS EXECUTE IN THE GUEST
|
|
ENVIRONMENT AND NOT AS ARBITRARY CODE ON YOUR HOST. This option
|
|
is provided for both automated testing and for the curious who
|
|
may want to venture into low level ASM hacking.
|
|
- INTRO.COM fixed to accept keyboard input correctly in both
|
|
PC-98 and IBM PC mode. You can now browse the help text properly
|
|
in either mode.
|
|
- DOS shell fixed to accept DOSKEY-like input in both IBM PC and
|
|
PC-98 mode (including arrow keys, F3, tab completion, etc.)
|
|
- DOS CON emulation now provides function keys (F1-F10) in PC-98 mode.
|
|
- DOS CON emulation fixed to process PC-98 BIOS codes and generate
|
|
PC-98 ANSI escapes as real hardware normally does.
|
|
- Mapper no longer shows two sets of the shortcuts (one overlaid
|
|
over the keyboard), registration bug fixed.
|
|
- PC-98 keyboard interrupt handler now handles CTRL key and
|
|
passes most keys as-is down through INT 18h now.
|
|
- Removed non-recursive page fault option. It is now always on,
|
|
except for internal cases where it needs to be off for callback
|
|
instructions to do their work properly.
|
|
- Removed dynamic x86 core. It is old and unmaintained code that
|
|
is incompatible with the non-recursive page fault system.
|
|
- IRQ cascade interrupt fixes and cleanup.
|
|
- BAT files given on the command line fixed to occur AFTER the
|
|
registration of ULTRASND and BLASTER environment variables.
|
|
- PC-98: DOS CON emulation fixed to decode Shift-JIS itself,
|
|
with consideration that some proprietary double-byte encodings
|
|
yield single-wide characters. DOS program using NEC's proprietary
|
|
box/line drawing characters this way should display properly now.
|
|
- DOSBox shell "greeting" now displays a proper box in PC-98 mode
|
|
instead of framing the text in rows and columns of Katakana. (basic2004)
|
|
|
|
0.82.1 (12/25/2017)
|
|
- Windows builds no longer redirect stdout and stderr to
|
|
stdout.txt and stderr.txt. This also fixes problems
|
|
with crashing or hanging when run from Program Files.
|
|
- Windows releases compiled by TheGreatCodeholio again.
|
|
- SDL 1.x and SDL 2.x support in the same branch, selectable
|
|
by configuration option or VS2017 build target.
|
|
- SC400 emulation fixes
|
|
- Mac OS X pixel format fix to avoid corrupt graphics (Martin Lindhe)
|
|
- MT32 emulation now explains what ROM images it's looking for,
|
|
instead of just stating that it can't find the ROM images.
|
|
- Direct3D shaders from Daum (alex)
|
|
- NukeOPL OPL emulation
|
|
- Basic (experimental) NEC PC-98 emulation (machine=pc98)
|
|
- CG (character generator) emulation will need ANEX86.BMP
|
|
or FREECG98.BMP
|
|
- Some uninitialized state fixes
|
|
- FDI, FDD floppy disk support (especially PC-98 games)
|
|
- HDI hard disk support (especially PC-98 games)
|
|
- DOS FAT filesystem driver: added many sanity, size,
|
|
sector size and overrun checks.
|
|
- Floppy and hard disk image support now supports sector
|
|
sizes other than 512 bytes per sector (up to 1024).
|
|
- DOS FAT filesystem driver can now handle FAT filesystems
|
|
formatted with 256, 512, or 1024 bytes per sector.
|
|
- INT 29h route output to CON driver in PC-98 mode so
|
|
games can clear the screen with ANSI codes (Touhou Project).
|
|
- NEC PC-98 support for proprietary ANSI codes to clear
|
|
screen and show/hide function key row.
|
|
- NEC PC-98 FM emulation (borrowed/ported from Project Neko II).
|
|
- MPU-401 now emulates relative tempo change commands.
|
|
- When mounting folders as a drive letter, filenames are
|
|
now translated between guest and host according to the
|
|
MS-DOS code page. This allows DOS games to use extended
|
|
characters in a way that does not cause invalid filenames
|
|
on the host. The host is always assumed to support unicode.
|
|
Windows builds will use wide char (UTF-16) host names and
|
|
Linux/Mac OS X builds will use UTF-8.
|
|
- Code page translation for 437 (US MS-DOS) and 932 (PC-98 Shift-JIS).
|
|
- Emulate DOS console function key row in PC-98 mode.
|
|
- PC-98 EGC graphics emulation (minimal)
|
|
- PC-98 CG support for custom fonts (RAM portion)
|
|
- PC-98 EGC minimal ROP emulation
|
|
- PC-98 select between 2.5MHZ and 5MHz GDC (for games that demand one or the other)
|
|
- Aspect ratio menu item in Windows works correctly now
|
|
- Capture menu works correctly now
|
|
- Removed "overlay" output
|
|
- Fix Direct3D and OpenGL output to enable linear interpolation (smoothing)
|
|
- Fixed "double aspect ratio" issue with OpenGL output
|
|
- Linux builds compiled against SDL 1.x and running against PulseAudio
|
|
no longer hang/crash after some random amount of time (threading conflict)
|
|
- PC-98 minimal mouse emulation
|
|
- VGA doublescan=false fixed to display correctly, especially with scalers
|
|
- SDL 1.x Windows builds fixed to process mouse motion FIRST before
|
|
mouse buttons so that guest pointer integration with Windows 3.1
|
|
works properly.
|
|
- SDL 1.x Windows builds now enforce a 60Hz cap on mouse motion
|
|
detection because recent versions of Windows have some latency
|
|
when SDL repositions the mouse cursor. This fixes random
|
|
erratic jumps in mouse motion when playing games that respond
|
|
to mouse movement.
|
|
- SDL 2.x fix touchscreen interaction on Windows
|
|
- SDL 2.x mapper now responds to touchscreen as well as mouse.
|
|
- DOSBox Integration device no longer enables it's ISA PnP device
|
|
by default.
|
|
- SDL 2.x fix Windows 3.1 "double-click" accidents by ignoring
|
|
"mouse" events faked by Windows from the touchscreen.
|
|
- "Paper white" HGC/CGA monochrome palette (basic2004)
|
|
- CMS (GameBlaster) frequency correction (basic2004)
|
|
- SID frequency correction (basic2004)
|
|
- Maximize button in Windows now consistently triggers fullscreen mode
|
|
- SDL 2.x builds now use a different mapper file name to
|
|
avoid conflicts with SDL 1.x builds. SDL scan codes are
|
|
completely different between the two.
|
|
- Windows builds now include WinPCAP support and NE2000 emulation.
|
|
- MOUNT / IMGMOUNT convert backslash to forward slash in path on Linux to
|
|
allow dosbox.conf files from Windows to work on Linux.
|
|
- DOSBox-X officially no longer targets Windows XP.
|
|
Unofficially third party builds may support Windows XP.
|
|
- MPU-401 emulation now allows you to choose the IRQ, if desired.
|
|
- Windows builds now include reference dosbox.conf so that you
|
|
have a list of all options.
|
|
- IMGMOUNT and FAT filesystem support now check partition type
|
|
field to ensure that the partition chosen is a FAT filesystem.
|
|
- IMGMOUNT no longer requires -size parameter if mounting
|
|
a HDI disk image.
|
|
- IMGMOUNT and FAT filesystem driver updated to support both
|
|
IBM PC MBR (master boot record) and PC-98 IPL1 partition
|
|
tables.
|
|
- Fixed UMB memory selection not to overlap the EMS page frame.
|
|
- EMS updated to sit at E000h in IBM PC mode and D000h in PC-98 mode.
|
|
- Mapper interface now shows additional buttons for handlers
|
|
registered after initial emulator setup phase.
|
|
- Mapper fixed to load/save or apply default keybindings for
|
|
handlers registered after initial emulator setup phase.
|
|
- Mapper fixes now reveal "capture OPL", "hercules palette"
|
|
options as well. The fixes also allow the default key
|
|
bindings for those functions to work.
|
|
- "CTTY NUL" no longer causes DOSBox-X to hang.
|
|
- MOUNT now supports use of -q to suppress message when
|
|
successfully unmounting a drive.
|
|
|
|
9/21/2017
|
|
|
|
Pentium Pro instruction set implementation
|
|
https://github.com/joncampbell123/dosbox-x/pull/305
|
|
|
|
MMX instruction set recompiler for core=dynamic
|
|
https://github.com/joncampbell123/dosbox-x/pull/290
|
|
|
|
0.74
|
|
- 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 compatibility 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).
|
|
|
|
0.73
|
|
- 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:
|
|
- S3
|
|
- Paradise
|
|
- Tseng
|
|
- 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 existence
|
|
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.
|
|
|
|
0.72
|
|
- Fixed uninitialized 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.
|
|
|
|
0.71
|
|
- 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.
|
|
|
|
0.70
|
|
- Improve register handling and support with XMS.
|
|
- Fix some issues with deleting open files.(windows only issue)
|
|
- Add dummy LPT1 class. (windows only issue)
|
|
- Improve some of the internal dos commands. (choice, copy and shift)
|
|
- Improve ROM area. (for games that use it for random numbers or
|
|
overwrite it as some sort of detection thing)
|
|
- Improve compatibility of dynamic core by making it handle certain
|
|
pagefaults earlier.
|
|
- Move internal dos tables around so we have more umb memory.
|
|
- Add some dos tables.
|
|
- Dynamic core supports io exceptions.
|
|
- Move some interrupt handlers to XT Bios locations.
|
|
- Add a dynamic fpu on x86.
|
|
- Improve fpu on non-x86.
|
|
- Trapflag gets strict priority over hardware IRQs.
|
|
- Trapflag support for the dynamic core.
|
|
- Add dummy TRx handling.
|
|
- Fix a few rarely used character functions.
|
|
- Improve auto cycle guessing code.
|
|
- Improve and extend the joystick support.
|
|
- Add autofire support.
|
|
- Improve the mapper so you can map keys to the joystick and vice versa.
|
|
- A few game specific video card fixes.
|
|
- Fix some 64 bit cpu bugs.
|
|
- Add support for certain cdrom detection schemes.
|
|
- Improve HSG/Red Book support.
|
|
- Improve MSCDEX.
|
|
- Improve dynamic core support under intel macs.
|
|
- Add basic support for clipper programs.
|
|
- Add support for different keyboard layouts.
|
|
- Add auto core guessing.
|
|
- Fix a few flags bugs.
|
|
- Fix a few small cpu bugs.
|
|
- Improve soundblaster detection rate by various programs.
|
|
- Improve EMS emulation. (allow mapping of non standard regions)
|
|
- Improve keyboard input codes on various OS-es.
|
|
- Fix problems with filenames having stackdata in them.
|
|
- Changed a few basic operations in DOSBox so they take emulated time.
|
|
- Improve dos ioctl functions.
|
|
- Extend cpu core so they are capable of detecting and raising a few
|
|
more exception types.
|
|
- Improve DOS functions when dealing with virtual drive.
|
|
- Improve FAT drives.
|
|
- Better handling of volume-labels in file functions.
|
|
- Image disk cycling capability. (prompt)
|
|
- Try to reduce the impact of using an analog joystick.
|
|
- Several measures to avoid code invalidation on certain types
|
|
of self modification in the dynamic core.
|
|
- Add dynamic core memory function inlining.
|
|
- A few small mouse improvements. (some games are using things they
|
|
shouldn't)
|
|
- Add nullmodem emulation.(h-a-l-9000)
|
|
- Some small cga and hercules fixes.
|
|
- Add more scalers (hq2x/hq3x/sai). (Kronuz)
|
|
- Change configuration file loading support. It now supports
|
|
multiple configuration files.
|
|
- Make dynamic core capable of running some win32s programs.
|
|
- Fix and add some rare soundblaster modes. (Srecko)
|
|
- Better soundblaster mixer controls. (Srecko)
|
|
- Make soundblaster installation under windows much easier.
|
|
- Add device control channel handling.
|
|
- GEMMIS support (ems under windows).
|
|
- Support more colours in win 3. (vasyl)
|
|
- Don't show unmounted drives in windows filemanager.
|
|
- Fix some bugs in the int13 handler.
|
|
- Simulate some side-effects of bios interrupt handlers on flags.
|
|
- Add IPX functions needed by netbios.
|
|
- Make ports take emulated time.
|
|
- Tabcompletion is now aware of the CD command.
|
|
- Add support for the dac pel mask.
|
|
- Fixes to hercules emulation, better detection and bank switching.
|
|
- Fixes to tandy emulation, 640x200x16 mode and different sizes bank.
|
|
- EGA/VGA memory changes detection for faster rendering.
|
|
- Gus 16 bit fixes.
|
|
- Many timer improvements.
|
|
- Some pcjr fixes.
|
|
- Some booter fixes.
|
|
- Many small fixes.
|
|
|
|
0.65
|
|
- Fixed FAT writing.
|
|
- Added some more missing DOS functions.
|
|
- Improved PIC so that it actually honours irq 2/9.
|
|
- Improved intelligent MPU-401 mode so that more games work with it.
|
|
- Some mouse fixes.
|
|
- Changed DMA transfers a bit so they bypass the paging tables.
|
|
- Added S3 XGA functionality.
|
|
- Improved paging so that read and write faults are handled differently.
|
|
- Rewrote exception handling a bit (no exception 0x0B with dos4gw anymore).
|
|
- Added IO exceptions in all but the dynamic core.
|
|
- Some ems improvements.
|
|
- Added midi-device selection code for the windows hosts.
|
|
- Fix crashes/segfaults related to the disabling of the pcspeaker.
|
|
- Added some more FILES=XX detection tricks.
|
|
- Fixed some vga detection schemes.
|
|
- Fixed screenshot corruption when using -noconsole in a read-only directory.
|
|
- Fix wrong scaled screenshots.
|
|
- Added some hidden file functions when using diskimages. (helps with cdrom
|
|
detection schemes)
|
|
- Fixed a bug in the mixer code, that muted the music in certain games.
|
|
- Added an assembly fpu core.
|
|
- Made the shell more flexible for batch files.
|
|
- Check for unaligned memory access fixes hangups on ARM processors.
|
|
- Some 64 bit fixes.
|
|
- Added code to change configuration at runtime.
|
|
- Improved ADPCM emulation.
|
|
- Fixed a few cpu instructions.
|
|
- Always report vesa 2.0 and fix some colour issues with vesa games.
|
|
- Fix video mode 0x06 and 0x0a.
|
|
- Improvements to the joystick emulation. 4 buttons are supported as well.
|
|
- Add VCPI emulation for Origin games.
|
|
- Fixed a lot of things in the boot code. Most booters work now.
|
|
- Lots of improvements to the IPX emulation.
|
|
- Rewritten modem emulation. Should work with more games.
|
|
- Improvements to the dos memory management routines.
|
|
- Add UMB (upper memory blocks) support.
|
|
- Emulate the pause key.
|
|
- Improve Composite CGA mode emulation.
|
|
- Lots of vga compatibility changes.
|
|
- Improved support for chained video modes.
|
|
- Improved mode and palette handling in cga modes.
|
|
- Mount accepts ~ now.
|
|
- Added a few of the EGA RIL functions.
|
|
- Added TandyDAC emulation.
|
|
- OS/2 support.
|
|
- Improved and speed up the dynamic cpu core.
|
|
- Fix some errors in the CD-ROM emulation layer.
|
|
- Added an automatic work-around for some graphics chipsets.
|
|
- Add PCjr support.
|
|
- Allow mousedriver to be replaced. Fixes a few games that come with their
|
|
own (internal) driver.
|
|
- Improved dynamic cpu core so it can handle pagefaults and some obscure
|
|
types of self-modifying code.
|
|
- Added -noautoexec switch to skip the contents of [autoexec] in the
|
|
configuration file.
|
|
- Improved v86 mode emulation (mainly for Strike Commander).
|
|
- Improved timer behavior.
|
|
- Improved extended keyboard support.
|
|
- Enhanced and added several DOS tables.
|
|
- Made core_full endian safe.
|
|
- Made pagefaults endian safe.
|
|
- Add support for moviecapturing
|
|
- Add support for 15/16/32 bit videomodes.
|
|
- Add some more VESA modi (4 bit).
|
|
- Add 1024x768 output.
|
|
- Changed screenrendering so it only draws changes to the screen.
|
|
- Allow remapping of the EMS page when the dma transfer was started from
|
|
the page frame
|
|
- Made EMS and DMA work together when playing from a mapped memory page.
|
|
- Renamed several configuration options, so that they are unique.
|
|
- Merged mpu and intelligent into one option.
|
|
- Merged fullfixed and fullresolution.
|
|
- Extended keys should be handled better.
|
|
- F11 and F12 work.
|
|
- Compilation fixes for various platforms.
|
|
- Fix a few crashes when giving bad input.
|
|
- Removed interp2x and added few new scalers.
|
|
- Reintroduce the lockfree mouse. (autolock=false)
|
|
- Add a larger cache for the dynamic cpu core.
|
|
- Improved soundblaster DSP, so it gets detected by creative tools.
|
|
- Lots of bugfixes.
|
|
- Even more bugfixes.
|
|
|
|
0.63
|
|
- Fixed crash with keymapper (ctrl-f1) and output=surface.
|
|
- Added unmounting.
|
|
- Fixed multiple issues with drive labels.
|
|
- Fixed most if not all FILES=XX problems.
|
|
- Added redirection in the shell.
|
|
- Fixed crashes with subst.
|
|
- Fixed multiple crashes with the drive images support.
|
|
- Added a missing fpu instruction.
|
|
- Fixed some cpu and fpu instructions.
|
|
- Fixed a small bug related to font loading.
|
|
- Rewrote the devices support.
|
|
- Added capslock/numlock checks on startup.
|
|
- Fixed wave writing.
|
|
- A few internal DOS fixes.
|
|
- Timer fixes for the hybrid loader.
|
|
- Some small soundblaster fixes.
|
|
- The drive cache can now be cleared by a keycombo. (CTRL-F4)
|
|
- A few keyboard fixes.
|
|
- Compilation fixes on various platforms.
|
|
- Quite some debugger improvements.
|
|
- Fixed dir only showing files after the first run on cdrom drives.
|
|
- Added some cdrom detection checks.
|
|
- Enabled insert in the shell. (Easier editing of commands)
|
|
- Changed order in which executables appear with tab-completion.
|
|
- Fixed some issues with raw opl recording and using a slightly different
|
|
format
|
|
|
|
0.62
|
|
- Added blinking support in the shell and some color fixes.
|
|
- Fixed commandline parsing when .bat files involved (fixes -exit)
|
|
- Fixed issues with tabs in commandline not being processed correctly.
|
|
- Cleaned/improved shutdown sequence.
|
|
- Added some more bios functions (wait and delay functions).
|
|
- Made our XMS driver conform the specs better. (c2woody)
|
|
- Added support for some more ems functions.
|
|
- Added intelligent mpu401 emulation. (Srecko)
|
|
- Added soundblaster 16 emulation.
|
|
- Rewrote GUS emulation to sound more authentic.
|
|
- Improved pc speaker emulation.
|
|
- Added an internal (programmable) mixer.
|
|
- Added support a few soundblaster/adlib detection routines.
|
|
- Fixed lot's of bugs related to DMA transfers.
|
|
- Added interpolating prebuffering mixer routines.
|
|
- Added recording of OPL commands and raw midi.
|
|
- Fixed some bugs with the wave recording.
|
|
- Changed sensitivity settings of the mouse.
|
|
- Added ps2 mouse-emulation in bios interrupts (c2woody).
|
|
- Fixed some bugs with mouse emulation limits.
|
|
- Fixed a bug with an unterminated string in the drivelabel.
|
|
- Changed file search routines a bit to be more compatible.
|
|
- Added support for attribute-searching with fcb's.
|
|
- Added basic SDA.
|
|
- Added TPA and DIB.
|
|
- Added Lot's of missing dos tables (c2woody).
|
|
- Changed psp and dta functions to use dta.
|
|
- Returned filename in ds:dx in create-random-file (c2woody).
|
|
- Fixed a bug with date and time used on open files.
|
|
- Some mscdex fixes.
|
|
- Added the -version switch, which makes dosbox report its version.
|
|
- Added a keymapper.
|
|
- Added basic IPX emulation.
|
|
- Added cdrom iso support and floppy images support.
|
|
- Added the possibility to boot another dos version.
|
|
- Added Serial passthrough support (win32 only).
|
|
- Added the possibility to pause dosbox.
|
|
- Changed OpenGL so that it is initialized only when used.
|
|
- Make dosbox run at higher priority when active and lower when inactive.
|
|
- Added direct draw output support (win32 only).
|
|
- Added current running program to title bar.
|
|
- Rewrote video emulation to support new scalers.
|
|
- Added new graphics scalers like advmame3x,tv2x.
|
|
- Added a support for a few anti-debugger tricks.
|
|
- Improved the handling of the tab-key.
|
|
- Improved support for the numeric keyboard.
|
|
- Fixed a few cpu opcodes.
|
|
- Added cpu core simple (for lowerend machines)
|
|
- Fixed some nasty bugs in the dynamic cpu core.
|
|
- Added a few (rarely used) fpu opcodes.
|
|
- Fixed various issues with GCC 3.4.
|
|
- Many internal timer improvements (PIT and PIC).
|
|
- Added some more PIC commands (c2woody).
|
|
- Added BCD counting to the timers.
|
|
- Fix some vesa functions.
|
|
- Add some basic support for 132x25 and 132x45 textmodes.
|
|
- Improved Tandy emulation a lot.
|
|
- Lowered cpu usage when dosbox is idle.
|
|
- Allow virtualisation of some basic IO-ports (c2woody).
|
|
|
|
|
|
0.61
|
|
- Added a beta dynamic cpu for x86 hosts (very unstable)
|
|
- Added opengl and hardware overlay display output
|
|
- Rewrote the vga screen updates to go in lines
|
|
- Added paging and v86 support to cpu emulation
|
|
- Added a config option to simulate a certain type of machine
|
|
- Added hercules graphics emulation
|
|
- Made CGA/TANDY modes more compatible
|
|
- Updated textmode drawing routines to support blinking colors
|
|
- Fixed VESA set page function that was documented wrong
|
|
- Fixed some wrongly emulated cpu opcodes.
|
|
- improved exception handling
|
|
- debugger: fixes; logging of gdt,lgt,idt, new commands(Fizzban)
|
|
- fixed some mscdex issues (drive letter header error, added get directory entry)
|
|
- added/fixed some bios funcs
|
|
- added some rarely used xms functions (thanks c2woody!)
|
|
- implemented GUS emulation
|
|
- Added 16-bit DMA support (for GUS and eventually SB16)
|
|
- Fixed many small bugs in filehandling routines
|
|
- Many small FPU fixes (c2woody/Fizzban)
|
|
- Some keyboard improvements (pharlab games)
|
|
- Some Timer and cmos/rtc fixes (Mirek/Srecko/Others)
|
|
- Lot's of mouse fixes (Help from various people)
|
|
- Enabled internal modem
|
|
- Made the DOS parsing routines a bit more flexible
|
|
- Added Subst (Srecko)
|
|
- Added cdrom ioctl support for linux (prompt)
|
|
- Many internal DOS fixes: memory/files/datastructures.
|
|
- Got some help from c2woody in allowing more than 1 irq being served
|
|
- Disabled DPMI (not needed anymore. DOSBox handles almost every extender)
|
|
- Search configfile in $HOME directory if none present in current directory
|
|
- Added another way to switch to protected mode. (Thanks Morten Eriksen!)
|
|
- Fixed some odd badly documented behaviour with PSP/DTA
|
|
- Added some warnings on opening of readonly files in writemode(DOS default).
|
|
- Many shell enhancements
|
|
- Fixed a win32 specific bug dealing with filenames starting with a "."
|
|
- Fixed some bugs with the directory structure: not found/can't save errors
|
|
|
|
0.60
|
|
- rewrote memory system for future paging support
|
|
- fixed several EMS and XMS bugs and rewrite for new memory system
|
|
- added some support for tandy video modes
|
|
- added MAME Tandy 3 voice emulation
|
|
- added MAME CMS/GameBlaster emulation
|
|
- added serial port emulation with virtual tcp/ip modem (somewhat buggy)
|
|
- sound blaster emulation is now sb pro 2.0 compatible
|
|
- added basic support for 32-bit protected mode
|
|
- VGA now tries to emulate an S3 Trio 64 card with 2 MB
|
|
- VESA 2.0 support for some 256 color modes
|
|
- rewrote large piece of video bios code for better compatibility
|
|
- added support for the not inheritance flags.
|
|
- created functions for creating child psp.
|
|
- updated errorcodes of findfirst (thanks Mirek!)
|
|
- rewrote loggingsystem to generate less warnings
|
|
- added dos protected mode interface (dpmi)
|
|
- added cdrom label support
|
|
- improved cdrom audio playing
|
|
- fixed and improved directory cache
|
|
- debugger shows selector- and cpu mode info
|
|
- added SELINFO (selector information) command to debugger
|
|
- added reference counting for dos files
|
|
- added tab-completion
|
|
- added basic fpu support.
|
|
- fixed several bugs with case sensitive filesystems.
|
|
- added more shell commands and improved their behaviour.
|
|
- mouse improvements.
|
|
- real time clock improvements.
|
|
- DMA fixes.
|
|
- Improved .BAT file support.
|
|
|
|
0.58
|
|
- fixed date and time issues with fcbs
|
|
- added more commands to the internal Shell
|
|
- corrected config system when an old configfile was used
|
|
- fixed cga put and get pixel
|
|
- fixed some vga register getting reset to wrong values
|
|
- improved support for foreign keyboards
|
|
- improved joystick support
|
|
- made dosbox multithreaded again
|
|
- lot's of soundblaster fixes
|
|
- dma fixes
|
|
- cdrom support
|
|
- midi support
|
|
- added scale2x
|
|
- reenabled screenshot support
|
|
- joystick support fixes
|
|
- mouse improvements
|
|
- support for writing wavefiles
|
|
- added directory cache and longfilename support (longfilenames will be mangled)
|
|
- mouse fixes
|
|
- date and time updates at z:\
|
|
- added (partial) direct disk support. (works probably only if directory is mounted under a:\)
|
|
- added support for env variables. (must be set before starting dosbox: DOSBOX_SECTION_PROPERTY=value
|
|
like DOSBOX_SBLASTER_IRQ=1)
|
|
0.57
|
|
- added support for command /C
|
|
- fixed all fcb-write functions
|
|
- fixed fcb-parseline
|
|
- added debugger under linux/freebsd
|
|
- added debugger memory breakpoints and autolog function (heavy debug)
|
|
- added loadfix.com program that eats up memory (default 64kb)
|
|
Usage : loadfix [-option] [programname] [parameters]...
|
|
Example: loadfix mm2 (Allocates 64kb and starts executable mm2)
|
|
loadfix -32 mm2 (Allocates 32kb and starts executable mm2)
|
|
loadfix -128 (Allocates 128kb)
|
|
loadfix -f (frees all previous allocated memory)
|
|
- added echoing of characters for input function
|
|
- added support for backspace for input function
|
|
- added partial support for int10:01 set cursortype
|
|
- fixed most of the problems/bugs with character input.
|
|
- fixed allocationinfo call.(darksun series)
|
|
- improved dos support for non-existent functions
|
|
- Split screen support
|
|
- prefix 66 67 support
|
|
- rewrote timingscheme so 1000 hz timers don't cause problems anymore
|
|
- update adlib emulation
|
|
- fixed some issues with the mouse (double clicks and visible when it shouldn't be)
|
|
- improved mouse behaviour (mickey/pixel rate) and detection routines.
|
|
- basic ansi.sys support
|
|
- Disney sound system emulation
|
|
- rewrote upcase/lowcase functions so they work fine with gcc3.2
|
|
- SHELL: added rename and delete
|
|
- added support for command /C. Fixed crashes in the shell
|
|
- fixed various bugs when exiting dosbox
|
|
- fixed a bug in XMS
|
|
- fixed a bug with the joystick when pressing a button
|
|
- create nicer configfiles.
|
|
- bios_disk function improved.
|
|
- trapflag support
|
|
- improved vertical retrace timing.
|
|
- PIT Timer improvements and many bug fixes
|
|
- Many many bug fixes to the DOS subsystem
|
|
- Support for memory allocation strategy
|
|
- rewrote cpu mainloop to act more like a real cpu
|
|
|
|
0.56
|
|
- added support for a configclass/configfile
|
|
- added support for writing out the configclass into a configfile
|
|
- removed the language file and made it internal
|
|
- added support for writing the language file (will override the internal one)
|
|
- improved mousesupport
|
|
- updated readme
|
|
- support for screenshots
|
|
- some cpu-bug fixes
|
|
- dma changes
|
|
- Real Sound support
|
|
- EMM fixes and new functions.
|
|
- VGA fixes
|
|
- new wildcompare
|
|
- support for size and disktype at mount.
|
|
- added new debugger functionalities: start/trace into INTs, write processor status log,
|
|
step over rep and loop instructions, breakpoint support without using INT 03 (heavy debugging switch)
|
|
- Added more cpu instructions and changed the string operations.
|
|
- Added classes for most of the internal dos structures.
|
|
- Rewrote most of the fcb calls to use normal dos calls.
|
|
|
|
0.55
|
|
- fixed the errors/warnings in prefix_66.h and prefix_66_of.h (decimal too large becoming unsigned).
|
|
- fixed compilation error on FreeBSD when #disable_joystick was defined
|
|
- int10_writechar has been updated to move the cursor position.
|
|
- changed the basedir routines to use the current working dir instead of argv[0]. This will fix and brake things :)
|
|
- illegal command, now displays the command
|
|
- wildcmp updated to be case insensitive
|
|
- added fcb:open,close,findfirst, findnext.
|
|
- fixed rename in drive_local
|
|
- added new features to the debugger: breakpoint support / data view / command line
|
|
- partial support of list of lists (dos info block)
|
|
- full emm 3.2 support
|
|
- partial emm 4.0 support
|
|
- fixes to graphics core fonts (text in sierra games is now correct)
|
|
- improved support for user mousehandlers
|
|
- fixed EGA graphics
|
|
- fixed VGA graphics
|
|
- fixed write with size 0
|
|
- changed memory management.
|
|
- fixed and cleaned up the cpu flags.
|
|
- changed interrupt handler.
|
|
- speeded up the graphics.
|
|
- speeded up the cpu-core
|
|
- changed dma
|
|
- improved dma streams from emm memory
|
|
- added some cga videomodes
|
|
- added more functions to the keyboard handler
|