- 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.