|WinUAE 4.0.0 Beta7 ||[witek], 2018-05-02 07:58:30|
- Added debugger ex command: e command with extended data: last value written and PC of CPU or Copper when value was written.
- UAEGFX RTG 15/16/24-bit graphics corruption fixed (b1).
- If multimonitor mode and aviout/screenshot: capture/record from window that has focus.
- Added horizontal doubling to Cirrus Logic emulation, enabled if screen height * 0.75 >= width. Keeps aspect ratio if CGX doublescan graphics mode is configured.
- Native screen OSD was drawn twice in some multimonitor configurations, also could have caused crashes or some other weird behavior.
Extended precision host FPU mode updates:
- Some FPU instructions used wrong precision.
- Supports divbyzero, underflow, overflow and inexact2 status bits and exceptions. Only in non-JIT FPU mode. (and no software really cares)
- FCMP uses softfloat comparison code if more compatible is enabled (FCMP cant be directly mapped to host FPU), if not, it uses simple and quick test. (Difference: infinities, nans etc.. special cases only work in more compatible mode. No normal programs care, as usual)
- Uses softfloat routines for rarely used functions (most trigometric, fexpman, fscale etc). Previously: extended to double conversion -> c-library math function -> double to extended conversion. Which probably wasnt noticeably faster.
I think this is good compromise between speed and accuracy, commonly used operations use native code (that native FPU supports directly, x86 FPU does not directly support all operations that 6888x supports), complex and rarely used operations use softfloat code.
NOTE: Host FPU extended precision FPU emulation is now enabled by default and always overrides config file saved 64-bit mode. If something works strangely, load your config, change FPU mode to 64-bit/softfloat and try again: if it fixes the problem -> report the problem immediately.