Skip to content

DOSBox-X 0.82.18 2019-04-27 22:25

Compare
Choose a tag to compare
@joncampbell123 joncampbell123 released this 28 Apr 05:26
· 11273 commits to master since this release

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: 3834, 3839, 3840, 3843,
    3845, 3849, 3850, 3853 (Allofich)
  • 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.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.