Strike Aces (a.k.a. Fighter Bomber) (Accolade, Inc., 1990)
Winuae 4.0.0 Beta XII 03/06/2018
1-2 weeks to go, some fixes remaining..
- Don't allow lagless vsync in normal windowed mode.
- Hide lagless vsync slice count in GUI if lagless vsync is not selected.
- Fixed crash if screen mode open failed and error dialog was shown. (b11)
- D3D11 fullscreen mode opened in primary monitor if selected non-default monitor was connected to another GPU.
- New debugger didn't load 3.1 (and probably older) amiga.lib files.
- Added debugger_options config entry, currently only supported sub entry is pathprefix=x where x is string that gets appended to stabs source file paths.
- Try harder to find working path for stabs source files and when working path combination is found, remember it instead of enumerating all possible variants every time source file is loaded.
- uaedbg now breaks to debugger when debugged application causes unhandled exception via tc_TrapCode.
→ NOWSZY [AMIGA] Winuae 4.0.0 beta XVI
Winuae 4.0.0 Beta XVI 20/06/2018
- Beta tags removed.
- Unminimizing didn't refresh display in certain situations.
This may become final tomorrow or thursday.
Winuae 4.0.0 Beta XV 18/06/2018
Hopefully last beta
- JIT cache size limit was in wrong validation routine, was ignored by on the fly changes (for example uae-configuration).
- Harddrive imager now also supports native (mainboard/expansion board) IDE connected CHS-only drives.
- Softfloat: 68040 only FPU undocumented feature emulated, FCMP with either (or both) parameters NaN with sign bit set: N-flag gets set.
→ NOWSZY [AMIGA] Winuae 4.0.0 beta XIV
Winuae 4.0.0 Beta XIV 17/06/2018
Possibly final or almost final
- Virtual RDB (generated when partition hardfile is mounted in non-UAE controller) now also supports >512 block size partitions.
- Some more code analyzer fixes.
- Paula audio GUI volume setting was ignored if audio mode was mono.
- Restrict minimum allowed JIT cache size to 128. (Previously too small unsupported size was allowed)
- Fixed uaescsi.device reset memory corruption if CD filesystem uses TD_ADDCHANGEINT.
- Logarithmic softfloat functions returned infinity when source value was nan.
→ NOWSZY [AMIGA] Winuae 4.0.0 beta XIII
Winuae 4.0.0 Beta XIII 12/06/2018
Beta 13: (Hopefully final next week)
- Toccata sound was not fully closed when reset/reset and caused crash if new config was loaded and started.
- Returning back to D3D11 fullscreen from GUI didn't automatically recapture mouse. (b12)
- Debugger f <start> <end> was broken.
- Corrupted OSD graphics (if OSD was enabled) and extra dark/bright line was drawn at the bottom of display in lagless D3D11 fullscreen mode after exiting GUI.
- Second to last line was not drawn in lagless mode. Very last line is invisible by design.
- FMOVE and FMOVEM to memory didn't check if destination addressing mode was invalid (PC relative) and didn't generate F-line.
- FMOVE to control register didn't check if more than 1 control register bit was set which is also invalid and should generate F-line.
- FMOVEM to (An)+ and from -(An) are invalid.
- Softfloat FABS and FNEG didn't handle infinity correctly.
Winuae 4.0.0 Beta XI 22/05/2018
- D3D11 fullscreen mode after alt-tab/gui was not restored properly if emulation was in paused state.
- D3D9 lagless vsync partial updates (introduced in b5) used incorrect (full, D3DLOCK_DISCARD) texture update mode.
- Decrease/increase emulation speed input events didn't do anything.
- Power led dim config option is now integer (0 = fully off, 1 to 100 = brightness level)
- Hardware emulated graphics boards didn't update properly without enabled OSD led (uaegfx was already fixed in b9)
- A2410 didn't support multiple monitor mode.
- Merged Aranym JIT updates.
- Fixed old (since the beginning?) JIT bug: many instructions always cleared V-flag (ADDX, SUBX, NEGX, BTST/BCHG/BCLR/BSET, possibly others). Fix by Thorsten Otto.
Winuae 4.0.0 Beta X 15/05/2018
- Full-window mode captured mouse (and moved it to center of screen) even when window didn't have focus.
- Removed single buffer display option, it was only useful when using old low latency vsync mode.
- Help button now asks for opening online help version if help file is not installed. (not finished yet)
- Added windowed mode resize enable/disable option. Default is enabled.
- Added D3D11 standard vsync black frame insertion support. (100Hz/120Hz)
- Action Replay II/III statefile support improved. (For example AR state was invalid when loading AR statefile when AR was already active)
- On the fly switching between fastest possible <> non-fastest possible CPU modes in lagless vsync caused hang in certain situations.
- Debugger: show number of cycles used when tracing (t, z, breakpoints). Only shown if max 2 frames since last debugger activation. (TODO: should also count number of memory accesses and no-wait state minimum cycle count)
- Freezer cartridge automatic RTG switch on/off wasn't reliable.
- Removed forgotten, useless and obsolete "The selected screen mode can't be displayed in a window, because.." check.
- 68030 MMU PLOAD R variant (R/W bit=1) caused f-line exception.
- Clear both ping-pong buffers when pausing/unpausing WASAPI exclusive sound mode.
Winuae 4.0.0 Beta IX 59/05/2018
- D3D11 mode s creen was not fully refreshed when returning back to fullscreen RTG mode with ALT-TAB/GUI exit
- Inserting or removing USB device with very long internal device name caused a crash.
- Inserting USB device may have also logged some other already connected device as newly inserted.
- Fixed JIT FPU FETOXM1.
- If D3D11 mode with level 9.x hardware: test in init phase if main texture creation succeeds, fallback to D3D9 if it fails. It may unexpectedly fail with some old and broken drivers. Previously it would have caused blank screen.
- RTG screen was not updated if only hardware mouse cursor moved and RTG OSD was not enabled or multithreaded RTG was not enabled. (b8)
Winuae 4.0.0 Beta VIII 5/05/2018
- CL horizontal doubling used wrong width size, fixed buffer overflow (b7).
- CL horizontal doubling multiplier changed to 9/10. Old value missed 320*200 resolution.
- 64-bit host FPU FMOVECR constants that didn't fit in double were clamped to max when they should have been set to infinity.
- All logarithmic and trigonometric functions now use assembly code from existing JIT functions in new 80-bit host FPU mode. This should be feature complete now.
- Multithreaded RTG now only does color conversion/copy in separate thread, present() is done in main thread because of possible thread safety problems.
- Added quite pointless power led switches off/dims misc panel option. Affects OSD power led and D3D led overlay power led brightness.
Winuae 4.0.0 Beta VII 1/05/2018
- 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 can't 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 wasn't 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.