Hatari -------- Release Notes Version 2.0.0 (2016-11-04) --------------------------- Emulation: - Machine: - Support for MegaST & MegaSTE machines added (this also replaces the Real Time Clock / RTC option, since this chip is only available on the Mega machines) - The general purpose registers of the TT SCU are now correctly emulated (this fixes the problem with AHDI not finding any partitions during boot) - HD: - Fix: Disable GEMDOS opcodes after GEMDOS drive is disabled - Fix: GEMDOS HD can now be initialized multiple times, e.g. when running EmuTOS RAM image from a normal TOS - Fix: WORD access to IDE data register at 0xf00002 - Fix: '*.*' pattern with GEMDOS HD should match also files without extension - Video: - Full rewrite of the GLUE state machine, including support for the 4 wakeup states in STF mode, as well as more accurate video timings (hbl, timer b, top/bottom and left/right removal, mixing 50/60/71 Hz lines) - Correctly shows the last 8 pixels for STE 224 byte overscan - Fix: reading video counter $FF8205/07/09 after modifying it while display is ON - Fix: location of the video counter's restart when screen runs at 60 Hz - TT: sync ST & TT color registers immediately on write, handle palette bank setting correctly, fix duochrome colors - Falcon: handle byte access special case for ST color registers - Falcon: border color support also in HiColor - better hbl/timer b interrupts when CPU runs at 16/32 MHz - Sound: - Special cases for STE DMA sound when start address = end address - Increase STE DMA volume when compared to the YM2149 volume - Greatly improve Falcon DMA sound - CPU: - use WinUAE CPU for STF/STE mode too, not just Falcon (old CPU core is considered deprecated) - improved IACK and simultaneous interrupts - access IO regs on 2 cycle boundaries when possible - More accurate 68060 mode (instructions from previous CPU versions removed in 68060 aren't accepted/emulated anymore) - Misc bus error / IO mem register handling fixes for TT & Falcon (e.g. add TT DIP switch register handler) - Blitter: - Better bus arbitration when blitter is started - Don't cause bus error when accessing regions causing CPU bus error - Fixes to DSP addressing - Floppy: - Fix the value of the WPT bit when inserting/ejecting a write protected floppy Emulator: - Generic fixes: - Autosave to already existing file works first time after v1.4 (dialog for file overwrite got automatically canceled on exit) - SDL GUI: - MegaST/MegaSTe support - Shortcuts can be configured in the keyboard dialog - User can provide volume label when creating a floppy image - Show dialog on HD image size issues - Better SDL2 support: - SDL2 is now enabled by default - Resizable windows, including ST/STE screen scaling - "--desktop" option is used also for ST/STe instead of "--desktop-st" - Command line: - Renamed --fpu-type option to --fpu - Configuration: - Hatari defaults to ST both with oldUAE & WinUAE CPU core - Preferred private configuration directory is now ~/.config/hatari on Linux/Unix (the legacy location ~/.hatari is still used if the other one does not exist yet) - Windows config location is now: AppData\Local\Hatari - Support SDL key names in keymap files in addition to key codes - Comment characters (#, ;) can also be mapped in keymap file - Added NatFeats SCSI (NF_SCSI) driver for Linux version of Hatari - Debugger: - Fix: close debugger log file only when explicitly requested, not when continuing emulation from debugger - Fix: direct DSP register, disasm and memdumps to debugger log file, similarly to CPU - Fix: direct CPU and DSP symbol traces to trace file, not stderr - Fix: ':once' option when there's only one breakpoint (v1.9 regression) - Fix: NatFeats NF_DEBUGGER command now actually drops to debugger - 'n' (next) command run until (dbcc backwards branch) loop exits (in addition to running until subroutine and exception calls return) - Support Atari debugger XBios(11) / Dbmsg() API - 'variables' / 'v' command to list Hatari debugger's builtin symbols - Also trace exception can be caught - Removed features: - Support for rendering to 8-bit host screens - Support for (buggy) RsConf() interception with --bios-intercept Other: - Allow building without Zlib - zip2st tool can convert directories to .st image files, not just .zip files. Fixed games: - Chainz and Jewelz by Paradize (blitter, bus errors) Fixed demos: - spec512 image in the Intro of the Place To Be Again (video, restart counter) - Menu screen in the Place To Be Again (video, writing/reading video counter during active display) - A Little Bit Insane by Lazer (no DMA sound during the demo) - LoSTE and Closure by Sync (video, wakeup states and glue timings) - Death of the left border by TNT (video, stabilizer) - Gen4 Demo by Ziggy / Overlanders (video) - Suretrip 49% by Checkpoint (cpu, exceptions stacking) - Tymewarp by YM Rockerz (megaste mode, cpu control at $ff8e21) - overscan plasma in Graphics Sound 2 in Relapse by Cybernetic (blitter) - RGBeast by Agression (blitter) - Drone by DHS, PhotoChrome Viewer by DML (video, last 8 pixels) Notes: TOS NF_SCSI driver is available from: http://hddriver.seimet.de/en/downloads.html Version 1.9.0 (2015-09-10): --------------------------- Emulation: - STE Joypads: - Fix: Joypad A Option button - Fix: Joypad B extended buttons - ACSI / IDE: - Fix: image file attribute check when using device files - Fix: v1.8 ACSI regression with A1=0 case - GEMDOS HD: - Fix: matching exactly 8 chars long file names containing '.' - Better mapping of host errors to GEMDOS error codes - Support for mapping file names with 8-bit characters between host and Atari encodings (umlauted chars etc) - Program header (TT-RAM) allocate flags support - CPU: - update WinUAE CPU core version from 2.3 -> 2.8.1 -> 3.0 -> 3.1 - MMU emulation fixed - instruction/data cache emulation - better 68020/30 prefetch pipeline - cycle accuracy, etc. - in 68000 mode, remove some un-allowed <ea> for CMPI, BTST and TST - check for address error when new PC is set at the end of RTE, RTS and RTR - fix "move.b an,<ea>", it's not allowed and should give illegal instruction - improve stack frame for bus error and address error - allow bus control only for 030 (i.e. prevent TOS forcing 16Mhz at boot with higher CPU levels) - Memory: - TT-RAM / 32-bit addressing support both for TT & Falcon emulation (when using EmuTOS, this requires version 0.9.4 or later) - FDC changes: - for STX disks, fix type I commands with verify bit on tracks with no sector - for ST/MSA, check read address and read track are not beyond max track - MFP: - better emulation of GPIP, AER and DDR - MIDI: - some RX/TX interrupt conditions were not correctly handled - TDRE bit is status register more accurately handled - Video: - fix value when reading video counter $FF8205/07/09 in high res - Blitter: - when transfer ends, hog bit should be cleared in control register - DSP: - better emulation of the HREQ signal Emulator: - Support for compiling with libSDL2 (experimental) - SDL2 supports other than 2x scaling factors for ST/e emulation - Misc fixes: - Fix: WinUAE CPU core (FPU) memory state restore - Fix: crash with VDI extended resolution emulation when C: isn't GEMDOS HD emulated drive - Fix: invalid defaults for real joysticks - Fix: compilation when zlib is missing - Fix: bugs from Debian bug tracker: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=716536 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=716084 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=688594 - Additional TOS run-time patching: - Support fast boot also with TOS v3 & v4 - Support 32-bit addressing also with TOS v4 - Replace TOS v4 instructions unsupported on 060 - HW specific phystop value in VDI mode - Options: - Fast boot (warm boot / memory check bypass) is disabled by default - 68060 CPU level and --ttram support with new WinUAE CPU core - New --png-level option to decrease AVI compression CPU load - Mouse warping on reset & resolution change can be controlled with new --mousewarp option - Hard drive emulation: - BUS ID for ACSI drive can be specified with --acsi - GUI and command line options to enable 8-bit file name Atari <-> host charset conversion for GEMDOS HD - GUI and command line options to specify GEMDOS HD emulation drive (default = C:), or to skip recognized drives used by partitions on ACSI & IDE images - Partition count parsed by Hatari might not match count used by Atari HD driver due to driver differences in interpreting disk MBR - Refuse to mount same HD image from multiple Hatari instances (on platforms supporting BSD flock()), to avoid corrupting them - SDL GUI: - joystick navigation in options GUI - keyboard navigation & shortcuts in options GUI - sort file selector items case-insensitively with folders first - Partial support for showing Latin1 chars from UTF-8 file names - AltGr+F<1-4> keyboard shortcuts to switch mode/type for emulated joysticks and joypads - User can reset or quit emulation from CPU halt dialog - Fix: sync joystick changes with statusbar - Fix: update default max window size for 2-line statusbar NOTE: size would need to be updated in Hatari config files too! - Fix: statusbar assert when FPU/MMU/TT-RAM are enabled in WinUAE CPU core - When cpu enters 'halt' state in case ...
steppenwolf0