|WinUAE 3.4.10 Beta4 ||[powerzx], 2017-04-02 14:28:15|
- BPLCON4 bitplane XOR values didn`t affect background color between end of bitplanes and end of horizontal diw.
- FPU packed decimal datatype conversions are now accurately emulated. (AG). Softfloat mode is now mostly complete.
- -serlog command line parameter without -log now only logs serial output (and reads serial input).
- Lightpen emulation absolute coordinate HID pointing device support. (For example Aimtrak Light Gun) No extra configuration needed, absolute coordinates are automatically used in lightpen mode.
- American Laser Games second player light gun support added. ALG #2 horizontal/vertical input event.
- Fixed buffer overflow when screen was extremely wide internally with bitplane dma overrun.
- Escape old style directory and hardfile paths if it contains "," (which is config file separator)
- Bitplane overrun didn`t work in lines that didn`t have any other chip bus accesses or when mode was non-CE.
- M-Tec AT-500 Megabody v1.33 ROM added. Slightly different than M-Tec AT-500 v1.33w ROM.
- Debugger now shows softfloat mode FPU register contents correctly, also both internal binary format and decimal value is shown.
- More FPU updates and fixes. Arithmetic/unimplemented instruction/datatype exceptions should be mostly complete now. (AG)
- FPU packed decimal format conversions are now accurately emulated (AG)
- JIT FPU works properly again.
- Bitplane overrun emulation was wrong if line didn`t have any custom register changes.
- Tablet/touch screen lightpen emulation. (Game Ports panel -> Insert Touchscreen light pen -virtual device in either port) Only listed if Windows touch API or wintab compatible tablet or touch screen is detected.
- Added lightpen_crosshair config entry, set it to false (true is default) to disable yellow lightpen targeting cursor.
- Multiple gfxboards didn`t work (b2).
- Fastest possible mode was very slow in some situations (b2)
- Slirp updates merged from Basilisk II.
- Final MSVC 2017 compiled.
M-Tec AT-500 v1.33 vs M-TEC AT-500 v1.33w:
- v1.33w is from external M-Tec AT-500, v1.33 from Megabody.
- w = word? v1.33w uses MOVE.W, v1.33 uses MOVE.L in unrolled transfer loop code.
- ROM has 2 16k banks, one for autoboot off mode, other for autoboot on mode.
- Oddly enough v1.33 and v1.33w have same autoboot off 16k bank. Unused driver code and version strings are 100% identical ("v1.33w").
- FM801 16-bit audio corruption fixed.
- Some 68020 CE mode cycle-counting is back.
- Clear button state mask when mouse capture state changes. If mouse or joystick button was kept pressed when mouse was uncaptured, button was kept pressed when capture state was restored even if real button was already pressed.
- G-REX and Cirrus Logic graphics board state was reset if autoconfig board info was re-scanned (entering RAM or HW Info panels) and emulation was already running (3.4.0)
- Middle mouse button default is back to enabled. (was changed in b1)
- Magic mouse on the fly on change didn`t work.
- FPU exception handling rewrite, arithmetic exceptions partially implemented (Andreas Grabher), 68040 unimplemented FSAVE exception frame compatibility improved. Arithmetic exceptions are not that useful in Amiga emulation, programs that use FPU arithmetic exceptions are very rare. I don`t know any, report if you find one
- FPU arithmetic exceptions checkbox added to GUI for easier testing. Will be removed when exceptions are fully implemented. Even when exceptions are disabled, they are still logged. Softfloat FPU only only.
- Quickstart Blizzard modes (except if JIT enabled) enabled 24-bit addressing which caused new autoconfig/fallback mode support to think Blizzard is in 68020 fallback mode, disabling autoconfig.
- Added Apollo 1240/1260 SCSI module installed on/off option.
- IDE Identify drive command didn`t reset multiple sector offset value. If previous read was partial multiple transfer, identity drive returned previously read data block.
- Added Lock drive option to real harddrive mount dialog. If checked, all partitions in selected drive will be locked and unmounted when emulation is running, enabling full read/write access even if drive has Windows mounted FAT partition(s). Lock will be ignored if drive has one or more NTFS partitions.
- Add harddrive didn`t accept magneto-optical devices.
- Lots of softfloat FPU mode and normal FPU mode fixes and updates. (Andreas Grabher and me)
- Softfloat FPU mode added to GUI, supports on the fly switching.
- Untrap middle mouse button option was stuck.
- Implemented accurate 68020+ T0 trace mode emulation. (Original one has not been changed for ages..)
- Fixed crash when sound card audio play started and mono sound channel mode and "Include CD and FMV audio" was ticked.
- 271b3 "Blitter final D write don`t increase "nasty" count" That is not true, I think this was only added to fix demo that randomly glitches on real hardware too.. Fixes intro Himalaya by Avalanche.
- Added illegal instruction at the end of each memory bank allocation, just outside of last available byte to force exception if execution falls of the edge of memory. This can happen if "more compatible" is not checked. Currently this causes bus error exception. May become halt in the future.
- Audio interrupts are delayed by 2 cycles, logic analyzer confirmed. Emulated only in cycle-exact mode. (Mission Elevator)
- Emulated sprite special case when DMA mode sprite`s start X-coordinate is less than sprite`s DMA slot position.
- Fixed AGA HAM6/8 behavior when BPLCON4 XOR value is non-zero. Planes 6 and 7 never affect palette selection if HAM8, Planes 4 to 7 if HAM6. If HAM control bits select hold mode, selected direct R/G/B value bypasses XOR operation. (Thanks to dissident for test cases)
- AGA EHB plane 6 half-brite selection bit is taken before BPLCON4 XOR adjustment. (Same)
- HAM mode and BPLCON4 BPLAM bit changes or HAM mode and BPLCON4 sprite bank bit changes and sprites in same scanline may have caused wrong sprite or HAM colors.
- >2M chip RAM didn`t work in non-JIT compatible modes.
- Added -ldlog 1/2 command line parameter, logs all laserdisc commands.
- Recursive mode ROM scanner now skips directories starting with dot.
- HDF creator used old style dialog type.
- 68030 CE/prefetch mode cache access fix.
- JIT direct broke 512k and 1M chip RAM size detection.
- If statefile is loaded with one or more floppy images that can`t be opened: keep fake disk in drive (like previously) and ask for new disk path when missing disk is accessed for the first time. (access = read or write attempt) Old disk path is shown in disk dialog title bar.
- SCSI emulation SCSI buffer re-sizing didn`t handle READ(6) zero size length correctly.
- Added memory cycle-exact Quickstart step for A1200 and CD32 configurations. Less CPU heavy than full cycle-exact and usually not much more worse (or better). At least not until 68020 CE gets better.
- Memory cycle exact mode incorrectly counted internal CPU cycles partially.
- Memory cycle exact mode also enables more accurate custom chipset mode.
- 68020 CE mode adjustments, fixed Chip RAM access speed (was too fast previously), removed all extra cycle counting temporarily. Work in progress.
- Include key scancode in Input panel key events.
Softfloat FPU mode is now officially supported, Andreas Grabher (Previous) implemented required 6888x-specific features to softfloat support library. Only needed if "weird" features are required (denormals and unnormals, invalid operands) or extended precision (that WinUAE does not support due to MSVC not supporting it) or accurate status register flags or 100% accurate rounding/NaN handling, FMOD/FREM quotient etc.
Arithmetic exceptions are not yet supported. Trigonometric and logarithmic functions are currently implemented using normal native C-library functions and won`t return 100% same results as real 6888x.
Not compatible with JIT FPU emulation.