Nowy rok na horyzoncie więc to doskonała okazja na zamknięcie w namacalnych klamrach kolejnego etapu programu. Nowa wersja ALTIRRA - emulatora ośmiobitowych konstrukcji firmy ATARI - prawie po roku (-4 dni;)) doczekała się kolejnej pełnej wersji.
Nie ma co się cieszyć i siadać na laurach - 4.30 właśnie zyskało pierwszą wersję testową;)
Altirra Version 4.20 [December 29, 2023]:
changes
- Command Line: Switches are no longer allowed at the end of arguments, e.g. disk.atr/f or /f/nosi. Switches must now be separate arguments.
- Input: Removed the extraneous hidden Button 1 input on light pen/gun controllers.
features added
- Additions: Added PHLOAD.COM to trigger peripheral handler loads via type 4 polling.
- Cartridge: Added Williams 16K cartridge type.
- Cartridge: Changed existing JRC cart type to JRC6 64K without RAM and added JRC RAMBOX cartridge type.
- Cartridge: Added MDDOS cartridge type.
- Cartridge: Added COS 32K cartridge type.
- Cartridge: Added Pronto cartridge type.
- Cartridge: CAR types 76, 78-93, and 160 are now supported without advanced configuration overrides.
- Cassette: Load Data as Audio option now supports raw FSK and PWM data blocks in .cas files.
- Cassette: BASIC auto-boot can now handle BASIC program tapes that require RUN "C" instead of CLOAD.
- Command Line: Added /[no]casautobasicboot, /kernelref, /basicref, and /diskemu switches.
- Debugger: Symbols escaped with '#' prefix can now include @ in their name.
- Debugger: .vbxe_traceblits command now has a compact mode.
- Debugger: .vbxe_bl command now has a compact mode and can dump a blit list at an arbitrary address.
- Debugger: Added explicit option in the disassembly window for whether the current D register state affects symbol lookup for direct page addressing modes.
- Debugger: bta (set tracepoint on access) can now supply a default trace message.
- Debugger: Math pack symbols can now be unloaded independently.
- Debugger: Added static trace PBI (stp) command to auto-trace parallel bus interface firmware.
- Debugger: Memory window now accepts arbitrary address expressions.
- Debugger: Ctrl+F in the history view moves focus to search box.
- Debugger: Added c (compare memory) command.
- Debugger: Added a menu command to export the debugger help from the .help command in HTML form.
- Debugger: @hwwritereg(addr) can be used to read back write-only system hardware registers.
- Debugger: The debugger now additionally tries to resolve source file references against the module binary path and the paths of any open source windows.
- Debugger: Source windows now have context menu options to reopen the file externally.
- Debugger: u (unassemble) now has -m option to change CPU mode used for disassembly.
- Devices: 1030 now does actual pulse/tone dialing.
- Devices: 1030 relay sound is now heard when phone is placed on-hook.
- Devices: Added SIDE 3.1 (JED 1.4) support.
- Devices: Added CPS SuperSALT Test Assembly support.
- Devices: MidiMate now exposes a serial port for custom MIDI interfacing.
- Devices: File writer device can now also be used with serial ports.
- Devices: Added networked serial port device.
- Devices: Added copy/paste support to devices UI.
- Devices: Added shortcut command to rescan a virtual FAT16/FAT32 disk.
- Devices: Added 835, full 835, and full 1030 hardware emulation.
- Devices: Added SIO serial adapter device to bridge serial devices directly to the emulated SIO bus without requiring motor control activation.
- Display: Added support for main display pan and zoom.
- Disk: Improved timing compensation when burst I/O mode is enabled.
- Input: Added support for Chalk Board PowerPad controller.
- Input: Added support for Stack Lightpen controller.
- Input: Mouse wheel can now be bound as an input.
- Input: Added an option to show pointer location when driving a tablet, pad, or light pen/gun with a non-mouse input.
- Input: Pad input area can now be moved and resized via Configure HUD.
- Network: Raised max MSS in emulation TCP stack from 512 to 1460.
- Network: Emulation gateway now supports ICMP echo requests (only to the gateway; not forwarded).
- Network: Emulation gateway now has a more distinctive Ethernet address to avoid conflicts when bridging through a VXLAN tunnel.
- PerfAnalyzer: Added support for saving and loading traces.
- PerfAnalyzer: Added trace channel for disk sectors passing under the drive head.
- PerfAnalyzer: Added approximated import for Atari800WinPLus 4.0 monitor execution traces (TRON/TROFF).
- * Save States: Devices can now opt-in to save state support.
- Save States: R-Time 8, XEP80, Black Box, MIO, Ultimate1MB, SIDE/2/3, and MyIDE[-II] are now included in save states.
- Save States: CPU mode, 65C816 high memory, and Axlon memory are now included in save states.
- System: Added 1400XL and 1450XLD emulation support (currently only minimal V:/T: support).
- UI: Added /registeruserfileassocs, /registersysfileassocs, and /unregisterfileassocs for silent registration/unregistration of file type associations.
- UI: Added support for screen readers to read out text from the emulation screen (opt-in).
- VFS: Added support for reading from .zip files that use Enhanced Deflate compression.
- VFS: Add special:// protocol to access specific images.
bugs fixed
- AltirraOS: Fixed incorrect MEMLO adjustment when loading peripheral handlers through CIO via type 4 poll.
- AltirraOS: Force C=1 on exit from CIO for compatibility (undocumented behavior).
- AltirraOS: Shift+Help and Ctrl+Help are now reported properly in HELPFG.
- AltirraOS: KEYREP and KRPDEL are now supported properly on the 65C816 build.
- AltirraOS: Improved compatibility of NOCLIK handling.
- AltirraOS: Fixed K: not applying inverse video to vertical bar ($7C) character.
- AltirraOS: Fixed timing issue in SETVBV.
- AltirraOS: S: now properly overrides the no-clear flag for GR.0.
- AltirraOS: FASC no longer clears first byte of FR0.
- AltirraOS: SIOV now resets BRKKEY when returning Break key pressed condition.
- Audio: Fix downmix setting not saving.
- Cartridge: Phoenix and Blizzard cartridge types now also react to CCTL reads as well as writes.
- Cartridge: SIC! 128K and 256K images now retain their original type rather than being converted to 512K on load.
- Cassette: Fixed FLAC decoder crashing on some files on some CPUs.
- Cassette: BASIC auto-boot detection now handles BASIC programs saved with the rev. B BASIC bug.
- Cassette: SIO data in line is now released when motor stops.
- Command line: Address specified in /soundboard switch was always overridden to default.
- CPU: 65C816 PLB and PLD instructions were not setting NZ flags.
- CPU: 65C816 PHP instruction could write bits 4/5 as zero after re-entering emulation mode from native mode with MX bits cleared.
- CPU: Improved accuracy of NMI timing when NMIs occur across a write to WSYNC.
- Custom Devices: Programmatic memory layer changes no longer bypass auto-PBI.
- Debugger: Zero page symbols were not being loaded from CC65 symbols.
- Debugger: PEI (dp) instruction no longer shows indirect data in disassembly.
- Debugger: Symbol lookup is now suppressed for (dp), (dp,X), and (dp),Y addressing modes with D != 0 like with other direct page addressing modes.
- Debugger: Fixed Step Over command not working above bank 0.
- Debugger: Disassembler now does basic block detection in 8048 mode.
- Debugger: Fixed .diskdumpsec command not working on virtual disks.
- Debugger: Fixed a crash when clearing breakpoints from debugger symbol based assert/trace directives.
- Debugger: Fixed panes that displayed the context menu at the wrong place when activated from the keyboard.
- Debugger: Debug display wasn't decoding IR mode 8 properly.
- Debugger: Improved visibility of keywords in source views in dark theme.
- Devices: R-Time 8 is now reset on a cold reset.
- Devices: SIDE 2 now returns floating bus data instead of $FF when reading from deselected CF card.
- Devices: Fixed sporadic initial interrupt state issue with MIO.
- Devices: Fixed some stack wrapping bugs with Veronica's 65C816 CPU.
- Devices: Fixed "use long path names" setting not saving properly on the H: device.
- Devices: H: no longer returns Y=$03 for imminent EOF when reading directories.
- Devices: MIDI output device from MidiMate is now reset on cold reset.
- Devices: Added missing emulation of IDE+2 CF detect in $D1FA bit 6.
- Devices: Fixed virtual FAT32 device limiting included files to FAT16 cluster limit.
- Devices: Fixed 8048 ADDC,@Rn and MOVP3 A,@A instructions and TF emulation.
- Devices: Fixed broken ATI0/1 commands for SX212.
- Disk: Fixed XF551 full drive emulation sometimes not handling write protect state properly.
- Disk: Reinterleave command wasn't marking the disk as modified.
- Disk: Fixed crash when attempting to convert a disk using an unknown or unsupported filesystem.
- Disk: Improved Happy 1050 memory map to closer match hardware, including contended regions.
- Disk: Add workaround for ATX disk images that have extra zero padding words at the end.
- Disk: Fixed 810, 1050, and XF551 based full drive emulators not consistently acting on write protect status.
- Disk: Improved accuracy when reading and writing sectors with missing data fields.
- Disk: Fixed rotational position being updated while motor is off.
- Disk: Fixed 810 post-read delay being used for 1050 emulation in single density.
- Disk: Improved timing precision for full disk drive emulators.
- Disk: Sectors are now ignored on mixed-density disks when not using the current density.
- Display: Fixed inverted field polarity detection in interlace mode (since 3.90) and improved auto-flip behavior.
- Display: Removed horizontal offset in PAL high artifacting.
- HLE: Set Y and C=1 in program loader to emulate CIO results when invoking init/run address.
- Input: Fixed paddles not responding when driven in absolute mode from a digital input (regression since 4.10).
- Input: Fix light pen not working in port 4.
- MMU: Extended RAM priority is now adjusted when U1MB is enabled to emulate difference in VBXE MEMAC behavior.
- Network: Fixed emulation TCP stack not sending final FIN packet to emunet after graceful shutdown from remote host.
- Network: Emulation dhcpd no longer reports a gateway to DHCP clients if routing is disabled (NAT off).
- Network: Fixed VXLAN tunnel code sending two extraneous bytes with each Ethernet frame.
- PerfAnalyzer: Fixed keyboard shortcuts not working in the perf analyzer's history view.
- PerfAnalyzer: Snapshot frame timing at end of session so VBI/DLIs don't get confused when emulation is restarted after the trace ends.
- PerfAnalyzer: Fixed crash in tape code after stopping trace with a tape mounted.
- POKEY: Improved accuracy of truncated/restarted POTGO scans.
- POKEY: Fixed stop bits not playing properly out audio channels 1/2 in two-tone mode.
- Recorder: Fixed bug with AVI writer not marking all uncompressed frames as key frames.
- Recorder: Fixed incorrect colors when recording WMV or MP4 video without scaling (ARM64 only).
- Save States: Fixed POKEY having keys stuck down after loading a save state.
- Save States: Fixed last 64K of extended memory not being saved properly in 128K and 320K memory modes.
- UI: Fix crash when using Calibrate Screen command without any hardware graphics acceleration.
- UI: Ensure that undocked tool windows are on-screen when restoring window layout.
- UI: Added workaround for Windows 10/11 touch keyboard sending the wrong extended key state for movement keys.
- UI: Fixed Input Setup controller diagrams displaying blank in some configurations.
- VBXE: Fixed incorrect blitter cycle speed for $00 bytes transformed by AND/XOR mask.
- VBXE: Blitter collision detection now returns the first hit instead of the last hit.
- VBXE: Fixed pixel shadows when using HR blit mode (mode 6).
- VBXE: Fix false P/M priorities on right half of screen in core 1.26 in lines that have no P/M graphics.
→ NOWSZY [ATARI] Altirra x86 i x64 4.21
Tony: Montezumas Gold (2024). Jak dla mnie jedna z najciekawszych produkcji w tym roku, obu następne były również udane.
Version 4.21 [March 16, 2024]:
features added
- UI: Added support for more direct file association setting on Windows 11.
bugs fixed
- Cassette: Fixed a crash that could occur when loading raw tape audio.
- CPU: Fixed incorrect LDA (zp) and STA (zp) execution in 65C02 mode only.
- Input: Fixed a crosstalk problem between ports 1/2 and 3/4.
- Simulation: 5200 uses floating bus again (fixes Star Raiders).
- UI: Fixed internal BASIC option not being selectable for the XEGS.
Tree Surgeon (1983, Western Technologies)
Altirra 4.10 1/01/2023
changes
- Display: Direct3D 11 and borderless mode are now enabled by default for new installs.
- Input: Light pens and light guns have been split for 4.10+. Input presets may need to be updated and offsets readjusted.
- UI: ANTIC/GTIA visualization options have been moved to the Debug menu.
features added
- Audio: Added option downmixing stereo POKEY output to mono.
- Audio: Added 800 console speaker acoustics simulation.
- Cartridge: Added support for CAR types 71-75 (5200 Super Cart, bank 0 init version of MaxFlash 8Mbit).
- Cartridge: Added support for the XE Multicart.
- Cartridge: Added support for SIC+.
- Cassette: Added config variable to manually tweak balance between mark/space bit detectors.
- Cassette: Added support for PWM encoded turbo data in CAS files.
- Cassette: Added support for SIO data out controlled turbo (Turbo Blizzard).
- Custom Devices: The priority of memory layers can now be customized.
- Debugger: Memory locations can now be edited in the Memory pane.
- Debugger: Memory pane now has an option to display 8bpp graphics.
- Debugger: Randomize Memory on EXE Load option now logs when randomization occurs and uses the global randomization seed.
- Debugger: .loadobj and .loadmem now take VFS paths.
- Debugger: Added .error command to decode various error codes.
- Debugger: Added Breakpoints pane and Ctrl+B as a shortcut for a new breakpoint.
- Debugger: Added initial support for DWARF5 debugging information from LLVM-MOS .elf files.
- Debugger: Disassembly window now supports address expressions and mixed source/disassembly view.
- Devices: Improved selection behavior when adding or removing devices.
- Devices: NVRAM can now be isolated per profile and follows the temporary profile state.
- Devices: Added SimCovox support.
- Devices: Added shortcut command to temporarily mount VHD images in Windows to access FAT32 partitions.
- Devices: APT partitions on hard disks can now be opened in Disk Explorer.
- Disk: Added emulation of buffered track reads for Happy 1050 and Speedy 1050 devices in standard emulation mode.
- Disk: 810/1050 full drive emulations now warn on attempts to use double-sided disks that can't be read in those drives.
- Display: SDR/HDR balance in HDR mode can now use the system-wide SDR intensity setting.
- Display: Added support for DXGI 1.3 seamless custom refresh rate support on integrated display panels.
- Display: Reduced buffered frame latency in display paths.
- Display: Added adaptive speed option to lock to refresh rate for reduced latency.
- Firmware: Added detection of several XF551 firmware ROMs.
- HDevice: Added full long filename mode.
- HLE: Program loader now simulates SDFS disk in Disk Boot mode to auto-trigger EXE load under SDX.
- Input: Extended immediate pots option to allow support immediate light pen/gun inputs.
- Input: Added interactive tool to recalibrate light pen/gun offset.
- Input: Improved accuracy of light pen/gun trigger pulse timing.
- Input: Added an option for light pen/gun noise.
- PerfAnalyzer: Added support for exporting to Chrome tracing format.
- Tape Editor: Bit position is now marked purple if a single bit flip is identified that would fix a bad checksum in a standard block.
- UI: The Check for Updates dialog now has a link to the internal RSS feed used to deliver the new update info.
- UI: Added support for copying and pasting characters from the interactional character set.
- UI: Keyboard shortcut dialog now has better support for binding Alt+keys and is more keyboard accessible.
- UI: Added dark mode support for checkboxes and radio buttons.
- UI: Alt+click decode can now decode MyDOS error messages.
- UI: Paste can now paste visible control characters from Unicode.
- UI: Improved clarity of screenshots captured with true aspect ratio by changing image filter.
bugs fixed
- Additions: Fixed BRK instruction in LOADEXE.COM.
- AltirraOS: Improved compatibility of TIMFLG usage and initial register values on tape boot.
- Cartridge: Fixed banking issues with SIC! during flashing and when loading save states.
- Cassette: Accelerated C: loads now handle block reads with timeouts longer than 30 seconds.
- Cassette: Accelerated C: loads now set TIMFLG.
- Cassette: Fixed FLAC decoder errors with some files.
- Custom Devices: Blocked ++/-- increment operators to avoid confusion (they were parsed as pairs of unary operators, which was usually not intended).
- Debugger: Fixed memory window horizontal scrollbar not updating after some changes.
- Debugger: Fixed long pauses or broken history listings when toggling the collapse options in the History window.
- Debugger: Fixed .printf command outputting a garbled character with %
- Debugger: Improved load speed of source windows.
- Debugger: Fixed symbol-related crash when opening source windows with deferred symbol loads.
- Debugger: Fixed Step Out/Into commands not using source mode in an undocked source window.
- Debugger: Fast boot hook now marks memory as preset to avoid tripping false uninitialized memory errors when heat map trapping is enabled.
- Debugger: Source window was keeping stale source line data when reloading symbols.
- Debugger: Fixed ##BANK annotations in MADS listings not being parsed properly with decimal bank numbers.
- Debugger: Fixed bug where memory access breakpoints would stop working after clearing other access breakpoints at the same address.
- Devices: Fixed SD card multiple-block write command.
- Devices: Fixed SD card state not being reset on SD power toggle.
- Devices: Fixed bug with virtual FAT16/FAT32 hard drives returning bad sector data when re-reading final partial data sectors of a file.
- Disk: Fixed too short timeout for Record Not Found (RNF) errors.
- Disk: Improved sound of recalibrations in 810-based standard emulation modes.
- Disk: Retuned receive rates for Happy 810 and Happy 1050 standard emulation modes.
- Disk: Fixed idle motor-off timeout occurring too quickly after long commands with retries.
- Disk: XF551 full emulator now supports IN A,BUS instruction used by some modified firmware.
- Disk Explorer: Fix incorrect Unicode mappings for control characters in viewer.
- Display: Reduced frame jitter in D3D11 windowed mode on Windows 8.1+.
- Display: Fixed monochrome modes with VBXE or high artifacting.
- Display: Fixed low quality text rendering in D3D11 mode after a change in HDR mode.
- Display: Fixed crash when forced out of D3D11 exclusive full screen mode by OS due to an overlapping window.
- HDevice: Fixed append mode not working for files on H6-H9:.
- Input: Fixed vertical offset on light pen/gun position in PAL.
- Input: Add Ctrl+Shift+Alt+0 as an alias for Ctrl+Shift+0 to work around Windows stealing this key for a keyboard layout switching shortcut.
- PerfAnalyzer: Tape channels now show proper jumps when accelerated loads occur.
- PerfAnalyzer: Fixed NMI showing as IRQ when NMI preempts IRQ.
- PCLink: Directory enumerations now report if a directory is the root or a subdirectory.
- PCLink: Improved path compatibility with standard SpartaDOS X path parser.
- POKEY: Fixed glitches in low linked timer 3 audio output when updating linked timer 3+4 state.
- POKEY: Improved accuracy of serial port clock timing.
- POKEY: Serial output bit state is no longer reset by initialization mode.
- POKEY: Improved accuracy of timer reloads.
- Profiler: Fixed negative unhalted cycle counts showing up around STA WSYNC instructions.
- SaveStates: Fixed bug where sprite engine could get desynced after loading a save state.
- Tape Editor: Fixed draw tool using wrong threshold for bit polarity with waveform display enabled.
- Tape Editor: Fixed SIO capture option not showing enable state on menu.
- Tape Editor: Captured accelerated C: loads now show sync bytes.
- Tape Editor: Block checksum status is more reliably shown during live SIO data capture.
- Tape Editor: Fixed extraneous bit data being added when saving a new CAS file after editing.
- UI: Reduced glitches when toggling the debugger or full screen mode.
- UI: /startuplog can now exclude log channels with '-' and ignores Ctrl+C.
- UI: Removed delay when switching from very slow speed (1%
- UI: Progress dialogs are now suppressed in exclusive full screen mode to avoid popping out of full screen when loading tapes.
- UI: Fixed non-native file browser not working with UNC paths.
- UI: Fixed focus glitching when selecting a docked tab with an undocked pane selected.
- UI: Fixed an issue where Unicode text would sometimes be read out of the clipboard as ANSI text.
→ [ATARI] Altirra x86 i x64 4.01 Final 2/02/2022
Altirra Version 4.01: [February] 2, 2022
bugs fixed
- Additions: Fixed LOADEXE.XEX using old $FD device SIO code for the program loader instead of $7D.
- AltirraOS: Fixed math pack compatibility issue with FDIV modifying FLPTR (fixes B-Graph pie chart routine).
- AltirraOS: Fixed a cursor position checking bug with split screen Gr.0 (fixes the BASIC game House of Usher).
- AltirraOS: Fixed compatibility issue with KEYDEL handling (fixes cursor movement in BrushupV40).
- ATBasic: IOCB#7 is now automatically closed on I/O errors to avoid SAVE files being kept open for write.
- Cassette: Fixed FLAC decoder crash with some block sizes.
- Cassette: Fixed regression with FSK blocks in CAS files being read as turbo pulses instead of FSK pulses.
- Disk: Retuned XF551 high-speed C/E to data frame delay.
- Display: Workaround for D3D11 minimum precision crash on Intel Iris Xe 30.0.101.1069 driver.
- Serial: Pad out 850 relocator to match length of original firmware relocator (fixes compatibility with loaders that hardcode the relocator length).
- VFS: Fixed wrong file being accessed when using atfs:// paths to access files inside a DOS 2 disk image.
→ [ATARI] Altirra x86 i x64 4.00 Final 13/11/2021
To bardzo zacny port... szkoda, że człowiek nie ma na tyle czasu aby w końcu skończyć Prince of Persia.
Altirra Version 4.00: [November 13, 2021]
changes
- Display: Dropped support for DirectDraw and OpenGL.
- Input: Relative mouse binding and 5200 trak-ball speeds have been adjusted for better uniformity. Existing input maps may need to have their speeds adjusted.
- Platform: Dropped support for Windows XP/Vista; Windows 7 or higher is now required.
- UI: Keyboard shortcuts have been reset to default to fix a bug with them being stored in the wrong place and to only store changes from default shortcuts.
- UI: Default shortcuts for toggling audio channels have been changed from Ctrl+Alt+[1-4] to Alt+Shift+[1-4] to fix a conflict with some AltGr+key bindings in the Spanish keyboard layout.
features added
- Additions: Replaced ALTXEP8F.SYS fast XEP80 driver with ultra-speed ALTXEP8U.SYS driver with symmetric 31Kbaud communication.
- Additions: Added ALTXEP8P.SYS and ALTXEPUP.SYS variants with auto-switching to PAL (50Hz) on initialization.
- Additions: Added XEPVHOLD.COM utility to improve XEP80 video timing compatibility with modern displays.
- Cassette: Added support for KSO Turbo 2000.
- Cassette: Added new level-based turbo decoding filter.
- Cassette: Added FLAC decoding support.
- Cassette: Added feature to hold data line across VBI to increase reliability of OS C: reads.
- Custom Devices: Scripting support added for break, while, do/while, and forward declarations.
- Custom Devices: Added support for creating alternate video outputs and PBI IRQs.
- Debugger: On-screen watches can now update continuously as well as per-frame.
- Debugger: Watch expression (wx) now has options for hex formatting.
- Debugger: Extended cartridge bank debugging support to MaxFlash 1Mbit and SDX 64K/128K cartridge types.
- Debugger: Memory window now supports scrolling, variable width, and graphics decoding.
- Debugger: Improved speed of console output window.
- Debugger: Added .fpaccel command to selectively toggle math pack acceleration routines.
- Debugger: Effective addresses are now shown in history in 65C816 mode.
- Debugger: Added .pagesums command.
- Debugger: lft -u option enables logging with microsecond timestamps, and -r enables raw timestamps.
- Debugger: "Auto-reload ROMs on cold reset" setting is now saved.
- Debugger: Go frame (gf) command now has a quiet (-q) option.
- Debugger: 65C816 M/X mode handling can now be configured in the disassembly window.
- Debugger: .diskdumpsec now has invert (-i) option.
- Debugger: Added debug link support to receive SDX symbol information from ATDEBUGX.SYS driver.
- Debugger: Added 'dbx' command to evaluate an expression over a range.
- Debugger: Added verifier options for detecting stack wrapping and stack in page zero.
- Devices: Added Percom AT88-SPD emulation.
- Devices: Percom AT-88 emulation now allows 1791/1795 FDC selection.
- Devices: Added SIDE 3 emulation.
- Devices: Added virtual hard disk device that translates a read-only host directory to a FAT16, FAT32, or SDFS partition image.
- Devices: Added temporary write filter hard disk device.
- Devices: Added preview SoundBoard 2.0 emulation.
- Devices: Added 1090 80 Column Video Card and Bit 3 Full-View 80 emulation.
- Devices: Added parallel port buses to all devices that support printer output and file writer device to sink printer output to a file.
- Disk: Disk rotational positions are now randomized on periperal reset.
- Disk: ATR loader now matches 77-track disk geometries for 8" disks.
- Disk: Added support for Happy 810 Autospeed mod.
- Disk: Percom RFD-40S1 double-clock mode is now implemented.
- Disk: Added option in Disk Drives dialog to show location of mounted disk images in File Explorer.
- Disk: Added full emulation for the Atari 815 disk drive (read only).
- Disk: Added support for reading from and writing to Indus GT CP/M 2.2 filesystems.
- Disk Explorer: Added options to import/export files with text (line ending) translation.
- Display: New Palette Solver in Adjust Colors dialog to derive color parameters from a palette file or photograph of a palette image.
- Display: Added white monochrome mode.
- Display: Added option to constrain mouse pointer to active display in full-screen mode.
- Display: Added high dynamic range (HDR) display support (requires Windows 10 / DXGI 1.6).
- Firmware: Warn if ROM image being added is blank.
- Firmware: Added autodetection of 1200XL rev. 11 OS and 1050 rev. H.
- HDevice: Lifted 16MB file size limit for untranslated access (H1-H4:).
- IDE: VHD differencing mode images can now be mounted.
- Input: Added support for XInput 1.4.
- Input: Added an option to use the Raw Input API (Configure System > Input).
- Input: Added an option for immediate potentiometer updates to reduce paddle and 5200 controller latency.
- Input: Mouse, trackball, and 5200 controllers now accept mouse delta bindings to Left/Right/Up/Down, and paddle controllers accept digital bindings to Left/Right.
- Input: Added preset template generator for input maps to make it easier to set up less common controller setups.
- Input: Ctrl/Shift are now optionally blocked from virtual key mappings when used by input maps with the 'share' option off. (They are still processed for character mappings due to OS limitations.)
- PerfAnalyzer: Added trace channel for SIO command state.
- Platform: Added option to poll virtual disk and H:/PCLink sources for systems that have broken file change notifications.
- POKEY: Improved audio filters for better performance and aliasing rejection.
- Simulator: Added centralized randomization control under boot options.
- Simulator: Throttling code updated with waitable timers for better efficiency.
- UI: Dark mode improved with reskinned buttons.
- UI: Added option to auto-hide menu in windowed mode.
- UI: Added advanced configuration dialog to expose hidden, unsupported parameters.
- UI: Performance analyzer now supports dark mode.
- UI: Added /reset to load last profile without the device tree.
- UI: Right-clicking on a menu item now provides a direct path to open Keyboard Shortcuts to bind a key to that menu item.
- UI: Added /tapepos to pre-seek tape to specified position.
- XEP80: Improved accuracy of XEP80 bit and byte timing based on measurements on real hardware.
- XEP80: Added NS405 FIFO timing emulation.
bugs fixed
- 5200: Rewrote noise implementation again to work around games with buggy joystick position filters (Galaxian) and to avoid drift for relative bindings.
- Additions: BOOT850 no longer leaves CRITIC set on failure.
- ANTIC: Fixed unstable horizontal scrolling in IR mode 3.
- ANTIC: JVB instructions now have the correct replayed height when ending a vertical scroll region.
- Audio: Changes to the default audio device are now tracked in WASAPI mode.
- Audio: Improved aliasing rejection of output audio filter.
- Cartridge: Fixed MegaCart 512K (3) banking disable behavior to only use bit 7.
- Cassette: Fixed regression with proceed/interrupt turbo modes not working.
- Cassette: Turbo decoding/filtering settings now apply to the "Analyze tape decoding" command.
- Cassette: Motor and play/record/pause state is no longer reset when switching tapes.
- Custom Devices: Fixed script compiler allowing async methods to be called from handler contexts that don't support async operations.
- Debugger: The Find Source File dialog now strips subdirectories when populating the file filter.
- Debugger: Fixed heat map not reflecting reads from some read-modify ALU instructions (e.g. ADC zp,X).
- Debugger: Improved performance of tracepoints that check return values by suppressing UI updates on the hidden breakpoint.
- Debugger: .disktrack command now works with geometries other than 18 sectors/track.
- Debugger: .diskreadsec now always uses the virtual sector length for consistency with .diskwritesec.
- Debugger: Fixed disassembler prescanner using the wrong instruction length for COP n instructions.
- Debugger: Removed JSR (abs,X) and added RTL and BRL to list of opcodes that trigger a procedure separator.
- Debugger: Fixed crash in 65C816 mode with access breakpoints with the same page address but different bank address.
- Debugger: Step Over at disassembly level now handles JSR (abs,X), JSL, and MVN/MVP opcodes.
- Debugger: Added .vbxe_pal command.
- Debugger: Fixed disassembly window repeatedly trying to scroll near the top of address space.
- Devices: Fixed a case where Rapidus could fail to cleanly switch from the 65C816 to the 6502.
- Devices: Fixed bug where debug reads from SIDE/SIDE2 flash windows could trigger side effects during sector erase operations.
- Devices: Rapidus fast RAM windows no longer have priority over ROM.
- Devices: Fixed Rapidus main RAM speed override sometimes being reverted; main RAM is now always at slow speed and extended RAM is also slow speed.
- Devices: Fixed R-Time 8 state being changed by debug reads in the debugger.
- Disk: Fixed name mangling on virtual SDFS disks for files and directories with names starting with periods.
- Disk: Fixed corrupted double-density ATRs being written in some cases from full disk drive emulators.
- Disk: Fixed bug with final write from full drive emulators not always triggering auto-flush.
- Disk: Fixed corruption of first byte sent by 810/1050 full drive emulators.
- Disk: Recalibrated ACK-to-Complete delays for the standard disk emulator for Status and Read PERCOM Block commands based on firmware timings.
- Disk: Virtual SDFS volumes now use creation timestamps for directories.
- Disk: Added workaround for 1050 Turbo firmware not detecting density if the drive is powered up with a disk already inserted.
- Disk: Fixed hang when loading ATX images with extra data pointing to out-of-range sectors.
- Disk: Fixed XF551 formatting side 2 of disks with incorrect interleave.
- Disk: Motor off timer adjusted for 1050 timing and to not count down during disk operations.
- Disk: Accurate sector timing mode now waits for the full length of long sectors in 1050-based emulation modes.
- Disk: Fixed broken audio output from Indus GT disk drives.
- Disk: Generic disk emulation profile supports XF551 acceleration again.
- Disk: Fixed several broken/missing instructions in Z80 emulation.
- Display: Fixed chroma signal having reversed phase in NTSC high artifacting mode, causing chroma artifacts in mono mode to move in the wrong direction.
- Display: D3D9 driver now allocates swap chain immediately to force a fallback with useless D3D drivers that report PS3.0 but only have 1MB of VRAM.
- Display: Fixed intensity scale color setting not affecting saturation in NTSC high artifacting mode.
- Display: Fixed issues in the high artifacting chroma filters causing some excessive banding.
- HDevice: Fixed burst writes not returning error status correctly.
- HLE: CRITIC is no longer zeroed from PBI-based SIO acceleration to fix key repeat issues with some versions of SpartaDOS X.
- IDE: Fixed Rev. S not supporting some Rev. D registers and being detected as Rev. C.
- Input: Fixed arrow keys getting stuck down in emulation when pressing Alt+arrow and then releasing Alt first, with arrow keys bound to a controller.
- Input: Quick maps are now always cycled in sorted name order.
- Input: Fixed controller triggers getting stuck down in some cases when detaching light gun controllers.
- Input: Fixed flipped horizontal relative movements for tablets.
- Input: Trigger targets are now collapsed properly so that multiple mappings to the same target cooperate, e.g. Left -> Numpad7, Up -> Numpad7, Up -> Numpad8, with both keys being pressed and released in any order.
- Input: Direct keyboard layout had incorrect mappings for Ctrl/Shift+Space.
- PCLink: Fixed reversed directory sort order.
- PCLink: Now uses last write timestamp for files instead of creation timestamp.
- PerfAnalyzer: Fixed painting bug with ANTIC DL event channel at some zoom levels and scroll positions.
- PerfAnalyzer: Fixed timing error for bytes sent to the computer from a full disk drive emulator, which were shown starting at their actual end times.
- POKEY: Channel mixing updated to use more representative per-channel non-linear steps.
- POKEY: Fixed channels occasionally having their timing disrupted when toggling timer IRQs.
- POKEY: Fixed extra audio pulse when timer 1/2 underflow coincides with two-tone timer reset.
- POKEY: Fixed keys not being re-reported in raw non-full scan mode when enabling debounce with keyboard scan already enabled.
- UI: Fixed mouse wheel scrolling when the system wheel scroll setting is set to pages instead of lines.
- UI: Profile editor no longer allows parenting a profile to itself or its children.
- UI: Settings load/save code now detects profile loops due to the profile editor bug and forces a reparent to the global profile so settings saving still works.
- UI: ARM64 emulation dialog no longer allows saving "OK" response.
- UI: Added 5 second timeout when notifying an existing instance in single instance mode to prevent processes piling up if the instance is hung.
- UI: Full-screen file browser scrolls back to top when changing folders.
- VBXE: Improved GTIA state syncing when toggling VBXE on the fly.
- XEP80: Scrolling now always removes one physical line, not a logical line as E: does.
- XEP80: Fixed an occasional issue with indeterminate state after cold reset.
- XEP80: Printing a char at the right margin now only inserts a line when EOL is overwritten.
- XEP80: Delete line can now slice a multi-line logical line like the real XEP80 does.
- XEP80: Fill EOL ($1C6) command was using the wrong fill byte.
→ [ATARI] Altirra x86 i x64 3.90 Final
Altirra Version 3.90: [July 12, 2018]
features added
AltirraOS: The boot screen in the XL/XE version now continues boot on disk insertion rather than forcing a reboot.
AltirraOS: Extended memory scan limit for 800 version to $D000 to support 52K expanded configurations.
Audio: Individual channels on the secondary POKEY can now be muted.
Cartridge: Added JRC 64K + RAM cartridge type.
Cassette: Optimized cassette tape emulation routines.
Cassette: Added option for high-pass prefiltering before the turbo tape decoder.
Debugger: Improved loop detector in history view to more precisely capture loop.
Debugger: Added @tapepos pseudovariable.
Debugger: Specifying ? for a path argument now opens a file dialog to select the path.
Debugger: The disassembly window now has support for showing procedure dividers, previewing called procedures, and jumping to call targets.
Debugger: Disassembly and History views now save their disassembly settings.
Debugger: Added option to disable automatic system symbols.
Debugger: Alt+Shift+click on the display jumps to History at the corresponding beam position.
Debugger: Verifier supports detecting access to non-canonical hardware addresses.
Debugger: .caslogdata command superceded by updated CASDATA/CASDATA2 logging channels.
Devices: XEP80 can now be switched to different controller ports.
Disk: Added full emulation for 810 Turbo, Amdek AMDC-I/II, and Percom AT-88 disk drives.
Disk: A warning is now displayed when attempting to insert a disk into a drive that doesn't support it (e.g. double-density disk into an 810).
Disk: Detailed errors are displayed when a disk image write fails on the host and is remounted virtual read/write.
Disk Explorer: Added Import File and Export File commands so that drag and drop is not needed to copy files.
Display: Added option for frame blending in linear color space for better accuracy.
Display: Color settings can be saved and loaded from external files.
Display: Added new default preset for PAL.
Display: The Hue Start slider in color settings now has the same I-Q angle definition in PAL quirks mode and works in PAL high artifacting mode.
Firmware: Add Firmware now detects OS ROM images even if the specific image is not recognized.
Firmware: Added detection for more MIO firmware images and support for auto-trimming padded 16K images down to 8K.
Input: The keyboard layout editor now warns if the key mapping being added conflicts with a keyboard shortcut.
Recorder: Added options for pixel aspect ratio and frame scaling.
Recorder: Added support for recording to WMV and H.264 through Media Foundation on Windows 7 and later.
SaveStates: Save state format rewritten to v2 (*.atstate2), now based on JSON within a .zip file for better accessibility and versioning.
SaveStates: CPU state can now be saved mid-instruction.
Simulator: Reordered frame wait and device poll timing around VBLANK to reduce input and output latency.
UI: Added experimental dark theme support.
UI: Added /reset command-line switch to selectively reset settings.
UI: Audio monitor now shows modified frequencies for two-tone mode, indicators for two-tone mode and asynchronous receive mode, and better shows ultrasonic effects.
UI: Added audio scope for viewing raw POKEY output.
UI: Added options for controlling mouse pointer visibility.
UI: Audio monitor positioning can now be customized.
Video: Added PERITEL adapter and monochrome monitor emulation.
bugs fixed
AltirraOS: Audio configuration is reset more often on tape reads to produce familiar sounds.
AltirraOS: Disk boot can now occur after cassette boot and right cartridge non-boot.
AltirraOS: OLDADR usage adjusted for compatibility with SDX QUICKED.SYS.
AltirraOS: SIO transmit operations can now be interrupted by User Break.
AltirraOS: The Display Handler now properly sets the default background color (COLOR4) to $06 when opening a GR.11 screen.
AltirraOS: KRPDEL is now set and keyboard repeat rates are NTSC/PAL adjusted on the XL/XE/XEGS version.
AltirraOS: Fixed an SIO issue with an out-of-spec short delay from asserting the command line to first command byte.
AltirraOS: Fixed disk boot issues if a PBI device or cartridge init routine issued an SIO request with DAUX2 > 0 before the disk boot.
AltirraOS: The boot screen now resets the Break key state properly after a boot is interrupted by the Break key.
AltirraOS: Improved native mode compatibility of 816 version.
ANTIC: RNMI (400/800 System Reset) is now always synchronized to VBI.
Audio: Fixed stereo mixing being twice as loud as mono mixing.
CPU: Fixed cycle timing for indexed illegal read-modify-write instructions and ARR #imm ($6B).
CPU: Fixed extra instruction being run occasionally for a DLI delayed by WSYNC.
CPU: 65C816 (dp,X) addressing mode now always wraps in emulation mode when accessing high byte regardless of DP.
CPU: 65C816 (dp) addressing mode properly wraps in emulation mode with DP aligned, except for PEI (dp).
CPU: 65C816 WDM instruction now properly fetches two bytes.
Debugger: .dumpdsm -s option now interprets 6809 instructions.
Debugger: Line number information is now updated properly when using cartridge bank mapping in MADS listings.
Debugger: Disassembly window now accepts cartridge bank addresses.
Debugger: Fixed broken option to auto-load kernel ROM symbols.
Debugger: Reduced frequency of stale memory in the disassembly window.
Debugger: Fixed incorrect call nesting in history window in Z80 mode.
Debugger: Fixed some disassembly errors in 6809 mode.
Debugger: Input byte (ib) now correctly issues read cycles with side effects in the main CPU address space.
Devices: Fixed crash on ANTIC reading from SoundBoard hardware registers.
Devices: 65C816 emulation fixes for Veronica.
Disk: Fixed some illegal indexed RMW instructions taking too few cycles for 6502 coprocessors in full disk emulators.
Disk: Full drive emulation FDC now allows Write Track commands to proceed immediately when the index signal is already active.
Disk: Improved accuracy of RIOT interval timer.
Disk: Corrected FDC head load and initial DRQ timings for Write Track command.
Disk: Implemented FDC Write Track quirk for back-to-back CRC ($F7) tokens.
Disk: Fixed some 6809 coprocessor emulation bugs.
Disk: Corrected side 2 sector mappings for ATR8000, Percom, and XF551 full drive emulators.
Disk: Fixed case where drive timing could be disrupted after hitting a drive coprocessor breakpoint.
Disk: Seek sounds no longer overlap when disk access is accelerated.
Disk: Fixed crash when ejecting disk at specific point during disk read command.
Disk: FD1771 FDC now properly times out in two revolutions instead of five in 810 full drive mode.
Disk: Fixed bogus FDC interrupts from Force Interrupt commands.
Disk: Indus GT ignores ready status to match hardware.
Disk Explorer: Fixed a filename validation bug with DOS 2 disks where duplicate files could be written if the original filename had extra characters after the extension.
Disk Explorer: Modifying a mounted disk image now forces a disk change to flush caches on emulated full drives that do track buffering.
Display: Fixed an issue with color profiles having the wrong color matching setting when initially established.
Display: Fixed crash when pasting into enhanced text display in CIO mode.
Display: Typing in enhanced text display (CIO mode) now clears the attract mode counter.
Firmware: Fall back to next available firmware if default firmware for a type is removed.
Input: Character mappings in custom keyboard layouts didn't work for non-ASCII extended characters.
Input: Changes to custom keyboard layouts didn't take effect immediately.
PerfAnalyzer: Joystick state (PIA port A) is now captured in traces.
POKEY: Improved accuracy of two-tone mode timing at 1.79MHz.
Recorder: Fixed SAP type R initial silence detector checking AUDFx registers instead of AUDCx registers.
SaveStates: POKEY serial input state is now saved.
SCSI: Fixed BSY being asserted in selection phase even for non-existent devices.
Simulator: Improved accuracy of power-up values for POKEY and GTIA registers.
Simulator: Display message via placeholder ROM if kernel ROM file could not be loaded.
VBXE: Fixed a crash when toggling shared memory option.
VBXE: Fixed double correction of display with gamma or color correction options enabled.
VFS: Fixed zip/gz paths with non-ASCII characters not being encoded properly and getting dropped on restart.
Altirra Version 3.20: [June 23, 2019]
Highlights:
- Accuracy: Fixes to several cartridge types, VBXE, Black Box, raw Shift key handling.
- Disk: Fixes to address and data CRC error handling, non-standard sector size encoding support, ATX physical sector size chunk support, rotate disk now works with full disk drives.
- Debugger: Additional disk debugging features, bank-sensitive breakpoints and symbol lookup for AtariMax carts, deferred auto-loading of symbols, more Turbo-Basic XL debugging support, minor fixes to various commands.
- Devices: APE Warp+ OS 32-in-1 is now emulated, Ultimate1MB can soft-control stereo and Covox, fixes to some broken modem and CIO acceleration options.
- Display: Hardware accelerated effects support including distortion and bloom, new color preset for the NTSC 800 model, new overscan preset to match modern widescreen displays.
- Firmware: Updated to Altirra BASIC 1.56 with minor startup fix, AltirraOS 3.17 with fixes to the math pack, SIO, boot screen, and keyboard handler.
- Software: The ColorMap tool on the Additions disk now supports CTIA systems.
- UI: Easier enabling/disabling of portable mode, enhanced drag-and-drop support, system overview/recommendations, escaped text paste, Alt+click to decode BASIC PEEK/POKE addresses, mounted tapes and non-internal BASIC carts now persist, fixes to input state and console controllers in 5200 mode, bogus DOS/Windows executable detection, automatic BASIC/binary switching for tape boot.
changes
- Debugging symbols and debugger scripts are no longer automatically loaded by default unless the debugger is active. This can be changed in the Debugger section of Configure System.
- AltirraOS is now versioned independently of the main emulator. See changelog in export ROM set output for details.
- The direct read filter for cassette tapes has been lowered in bandwidth to reduce load failures on FSK-encoded glitches. The filter bandwidth can now be adjusted in Configure System, Cassette.
features added
- Additions: Colormap now supports CTIA systems.
- AltirraOS: Minor improvements to text I/O performance.
- Cartridge: Flash memory type can now be changed for Maxflash 8mb cartridges.
- Cassette: Added option for detecting and automatically switching BASIC when booting tapes based on whether the tape starts with a BASIC or binary program.
- Debugger: #comments can now be used in .atdbg files.
- Debugger: @(...) within an expression causes that subexpression to be evaluated immediately.
- Debugger: .diskdumpsec now dumps phantom sectors for a virtual sector.
- Debugger: .disktrack now has an option for drive number.
- Debugger: Added support for bank-specific addresses in MaxFlash cartridges using t:$XX'YYYY syntax.
- Debugger: Added options for controlling auto-load of symbols and debugger scripts.
- Debugger: Added menu option to list source files associated with line debugging information.
- Devices: Added emulation of APE Warp+ OS 32-in-1 device.
- Disk: Added support for physical sector size chunk in ATX images.
- Disk: Fixed XF551 standard emulation mode to force SD format with command $21 when the current mode is enhanced density.
- Display: Added new overscan mode for typical widescreen displays.
- Display: Added controls for scanline intensity and scaling overall display intensity.
- Display: Optimized standard NTSC artifacting algorithm.
- Display: Added option to hide all on-screen indicator overlays.
- Display: Added color preset for NTSC 800 computer.
- Display: Added option to accelerate some screen effects using shaders when Direct3D 11 is enabled.
- Firmware: Version numbers are now displayed for the internal OS and BASIC ROM images.
- HLE: Program loader now detects and throws an error on an attempt to load an MS-DOS or Windows program into the emulator.
- Input: Added Arrow Keys -> Paddle A preset.
- Input: Digital sources can now be bound to the Paddle Knob input on paddle controllers to use the paddle lines as switches.
- U1MB: Stereo POKEY and Covox control is automatically enabled when Ultimate1MB and stereo/Covox are both enabled.
- UI: Added a GUI option in settings for switching between portable and registry mode.
- UI: Added visual drop targets for different drag and drop modes, formerly only available via right-drag-drop.
- UI: Added overview and recommendation pages to Configure System.
- UI: Escaping is now supported for text copy and paste.
- UI: Alt+click message help has been extended to also decode common POKE and PEEK addresses.
bugs fixed
- AltirraOS: FDIV no longer returns 0 for 0/0.
- AltirraOS: AFP(".") properly returns an error instead of 0.
- AltirraOS: EXP10() was returning an error instead of underflowing to 0 for some large negative inputs.
- AltirraOS: Pressing reset on the boot screen now forces BASIC to do a cold boot.
- AltirraOS: Type 3 poll loop is now exited on user break error to fix infinite boot loop with Black Box firmware.
- AltirraOS: Corrected ICBLLZ/ICBLHZ values after CIO get commands.
- AltirraOS: Pressing Help now sets HELPFG.
- ATBasic: Fixed crash when Break is pressed prior to startup banner.
- Audio: Fixed crash on system with no sound card.
- Cartridge: Manually inserted BASIC cartridges are now persisted across runs of the emulator.
- Cartridge: Fixed broken DB 32K mode (CAR type 5).
- Cartridge: The!Cart 16K banking modes no longer use the secondary bank write protect flag.
- Cartridge: Fixed The!Cart disable mode sometimes leaving bank windows active.
- Cartridge: Corrected definition of MegaMax 2M mode (CAR type 61) to support banking on reads.
- Cartridge: Corrected definition of 2M megacart mode (CAR type 64).
- Cassette: References to tapes mounted directly as .zip files without a direct reference to a file within the zip are now persisted properly across runs.
- Debugger: Improved Turbo-Basic XL support in the .basic_vars and .basic_dumpstack commands.
- Debugger: Fixed listing directives getting executed twice for carts.
- Debugger: Step Over past an interrupt no longer exits the current scope.
- Debugger: Mini-assembler no longer emits ROR opcodes as LSR.
- Debugger: Fix crash in MADS symbol parser with single-character labels.
- Debugger: .readmem and .writemem now accept quoted paths.
- Devices: Black Box no longer powers up disabled on startup if exactly DIP switches 1-4 are enabled.
- Disk: Full disk emulators now report address CRC errors properly ($E7).
- Disk: Improved accuracy of disk errors from XF551 full drive emulation.
- Disk: Improved emulation of FDC not ready bit ($80).
- Disk: Read Address now returns sectors with data CRC errors.
- Disk: The non-standard sector size option of the 1771 is now partially supported.
- Disk: Deleted sector marks can now be written by the Write Sector command.
- Disk: Interrupted Write Sector commands now affect the disk image.
- Disk: Rotate disk command now works with full disk drive emulation.
- Disk Explorer: Fixed crash when write flush fails due to another program locking the disk image file.
- Display: Fixed a high CPU usage issue with enhanced text display when paused.
- HLE: FP acceleration no longer returns 0 for 0/0.
- SAP: Lowered SAP type D player from $0800 to $0400 to improve compatibility with files that have a low load address.
- Input: Toggling Held Keys On Reset back off no longer queues Ctrl+Shift+A for next reset.
- Input: Fixed Shift key state sometimes being incorrect when Shift was pressed/released while holding another key. The emulated Shift key state is now updated on Shift key changes while other keys are held.
- Input: The Input State and Console controllers are no longer blocked in 5200 mode.
- PerfAnalyzer: Fixed sporadic errors in profiling sub-view when profiling short CPU trace ranges.
- Profiler: Fixed a bug causing the function and basic block modes to misattribute some interrupt time to the parent function/block.
- Profiler: Fixed broken BASIC line profiling mode.
- Save States: Fixed save state errors with 65C816 CPU modes.
- Simulator: Fixed crash when single-stepping prior to computer being turned on with disk drive CPU selected.
- UI: Fixed CIO acceleration options not being bound correctly in new configure system dialog.
- UI: Disk drives dialog no longer appears hidden the first time it is ever used.
- UI: Fixed argument parsing error when emulator is launched with argv[0] containing forward slashes.
- UI: Fixed incorrect partial switch matching on command line, e.g. "/disk1" being interpreted as "/disk 1".
- VBXE: Overlay width setting %11 now correctly selects narrow width instead of wide width
Altirra Version 3.10: [August 12, 2018]
changes
- Default keyboard shortcuts have changed. Reset in Tools > Keyboard Shortcuts to use the new bindings.
- Modems now default to handshaking disabled rather than RTS/CTS due to differences in default RTS state for R: devices. Use AT&K0 to disable handshaking and AT&K3 to use RTS/CTS.
features added
- AltirraOS: Added 65C816 native mode capable version.
- Audio: Added support for XAudio2 and WASAPI sound APIs.
- Cartridge: Added support for .CAR types 60, 67-70 (Blizzard 32K, XEGS 64K alternate, Atrax 128K raw ordered, aDawliah 32K/64K).
- Cartridge: Added show-all override to cartridge mapper dialog.
- Debugger: Added FDCWTDATA logging channel to dump the raw track stream for Write Track commands.
- Debugger: Added several new verifier modes.
- Debugger: .basic_rebuildvnt now has a -t option for TurboBasic XL support.
- Debugger: Added extended memory bank tracking support to the history window and breakpoint systems.
- Debugger: Add custom symbol (ya) command can now add read-only and write-only symbols.
- Devices: Added loopback serial device.
- Devices: UI now shows when a device is missing firmware.
- Disk: Adjusted default sector interleave patterns to more accurately match real disks.
- Disk: Added options to UI disk dialog to reinterleave disk images and to convert disk images to different filesystems.
- Disk: Added option to revert a disk in virtual read/write mode back to last saved contents.
- Disk: Added full emulation for the I.S. Plate disk drive.
- Disk Explorer: Added options to relax filename checking and automatically rename conflicting filenames.
- Display: Added option for color correction from NTSC/PAL colors to sRGB and Adobe RGB color spaces.
- Display: Added option for auto-switching between NTSC and PAL artifacting modes.
- Firmware: 400/800 firmware ROM images can now use XL-like 16K layout for $Cxxx extension firmware.
- HLE: Program loader now has modes to allow the load to be triggered by a type 3 poll or a loader program.
- HLE: Program loader detects conflicts with and offers to disable internal BASIC.
- HLE: Fixed main memory not being completed cleared on startup in some cases with Fast Boot enabled.
- PerfAnalyzer: Profiler view can now be opened on trace sections.
- PerfAnalyzer: Writes to WSYNC are now considered idle processing.
- Platforms: Added native ARM64 build.
- Serial: Added support for emulating modem dialing and handshake sound.
- Serial: Modem registers S8 and S11 are now supported.
- Simulator: Added command to cold reset (power-cycle) the computer without power cycling peripherals.
- UI: Combined many menu options into a combined system configuration dialog.
- UI: Clicking on non-text area now clears text selection.
- UI: Added /d3d9 and /d3d11 command-line switches.
- UI: Reworked command-line help (/?).
- UI: More system configuration changes now confirm before resetting the computer.
- UI: Automatic reset for configuration changes is now configurable.
- UI: The image types automatically unloaded in the Boot Image command can now be configured.
- UI: The Disk Drives dialog is now modeless.
- UI: Added overscan option to reserve bottom margin space on screen for the indicators.
- UI: Enlarged the hit area for dockable pane splitters to make them easier to hit.
- UI: Main window caption can now be customized.
- UI: Added option to automatically switch to default profile when launched to start images.
- VFS: Added support for accessing files within filesystems in disk images (atfs://).
bugs fixed
- 5200: Default cartridge is now correctly loaded if last mounted cartridge fails to load.
- Cartridge: Fixed XEGS banking modes in The!Cart emulation.
- Cassette: Dirty state is now tracked for tapes.
- Debugger: .dumpdsm command can now be used above bank 0.
- Debugger: Fixed Y/P register display issues in history with special registers enabled.
- Debugger: Fixed repaint issue in history window related to removing NEXT node.
- Debugger: .vectors now reports the native IRQ and emulation COP vectors correctly and no longer reports a bogus native reset vector.
- Debugger: Fixed invalid effective address being displayed in disassembly for [dp] and [dp],Y addressing modes.
- Debugger: Suppress operand label decoding for direct page modes in 65C816 mode if D<>0.
- Debugger: 6502 coprocessors no longer show a 65C816-style 16-bit accumulator in register dumps.
- Debugger: Fixed power-on delay option clearing pending step operations immediately after cold reset.
- Devices: Added cooldown timer to browser (B:) device on deny to prevent modal dialog spamming.
- Devices: Fixed kernel ROM override conflict between Rapidus and U1MB.
- Devices: Rapidus no longer switches back to 6502 on warm reset.
- Disk: Fixed crash when attempting to recursively expand .ARC files on disk image with unrecognized filesystem.
- Disk: Fixed some issues with zero-byte file and subdirectory creation on MyDOS disks.
- Disk: Fixed occasional filesystem errors when expanding .ARC files on an SDFS disk.
- Disk: Adjusted DD 512 SDFS boot sector to pass CLX validation.
- Disk: Attempting to boot an .ARC sourced disk image no longer crashes in the boot process.
- Disk: DOS 1 format now uses correct VTOC signature.
- Disk: Fixed directory update bug on DOS2/MyDOS disks when deleting the last file on the last directory sector.
- Disk Explorer: Creation timestamp is now preserved when dragging files in and out of an SDFS volume.
- Display: Added workaround for fullscreen mode failing on some versions of VMWare SVGA 3D driver.
- Display: Gamma correction setting now works in PAL high artifacting mode.
- Display: ANTIC DMA analysis mode now displays when artifacting is enabled.
- Display: Fixed bug with PAL high artifacting ignoring odd hires pixels.
- Display: Artifacting phase and saturation are now hooked up for PAL high artifacting.
- HLE: Improve tolerance for nonstandard CIO path termination (fixes MultiBASIC DIR command with H:).
- Input: Fixed startup crash when DirectInput 8 is not available.
- Input: Fixed "allow Shift key to be detected on cold reset" option not working when disabled and full raw keyboard scan was enabled.
- MMU: Fixed another Axlon/PORTB memory aliasing issue.
- POKEY: Improved accuracy of high-pass filter.
- Serial: Fixed crash in R-Verter emulation if remote connection sent characters before the CONNECT message had been sent.
- Serial: Fixed slightly inaccurate baud rates at high speeds with 850 full emulation.
- Serial: Fixed block output mode, two stop bit mode, external input buffer sizing, and other misc bugs in the full 850 handler.
- Serial: Modem S12 register now controls command sequence guard time.
- Serial: Socket handling rewritten so that hanging up while a connection is still in progress no longer hangs the emulator until the connection attempt times out.
- Simulator: Corrected mapping issue for 24K/32K/40K memory modes.
- U1MB: $D500-D5BF memory is now forced on in config unlocked state.
- UI: Save states and SAP files now load correctly when dragged from .zip files.
- VBXE: ANTIC hires pixels now always have PF2/PF3 priority except with XCOLOR=1 on FX1.26 core where enabled pixels have PF1 priority.
Altirra Version 3.00: [December 28, 2017]
[changes]
- Devices: Internal device tree storage has changed. Device trees may need to be remade.
- Input: Added detection and button naming for DualShock 4 controllers.
- VBXE: VideoBoard XE configuration has been moved from the menu to a device entry.
[features added]
- Cassette: Added initial support for turbo tape decoding.
- Cassette: Mounted tape is now persisted along with other mounted images.
- Cassette: %%-age position is now shown on HUD.
- Cassette: Improved FSK decoder.
- Cassette: Added analysis tool to compare raw signal against FSK and turbo decoder outputs.
- Cassette: Added option to export decoded tape back out as audio.
- Debugger: History pane now has a more powerful loop detector that can handle larger loops and call/loop nesting.
- Debugger: History pane can now label each instruction with tape position.
- Debugger: .tapedata command now accepts position by sample (-s).
- Debugger: Added bsc command to change condition on a breakpoint.
- Debugger: Undocumented store and read/modify/write instructions are now shown with write symbols rather than read symbols.
- Debugger: Extended .pia command output.
- Debugger: .basic_dumpline now supports reading program text from extended memory.
- Debugger: ~ (target info) command displays coprocessor types and speeds.
- Debugger: Added support for per-instruction breakpoints.
- Debugger: u (unassemble) command now has switches to track 65C816 M/X/E state.
- Debugger: Memory access breakpoints are now supported in banks $01-FF.
- Debugger: added bta (set tracepoint on memory access) command.
- Debugger: db/dw/dsb/dsw/dsd expression operators now accept 24-bit addresses.
- Debugger: Symbols can now be present above bank 0.
- Devices: Added browser device (B:).
- Devices: Added feature to IDEPlus 2.0 to guard against NVRAM corruption on reset during clock reads.
- Devices: Added XEL-CF adapter emulation.
- Devices: Added Rapidus Accelerator emulation.
- Devices: An automatic reboot is now requested before adding or removing devices that practically require one.
- Disk: ATX images are now saved with a unique creator code.
- Disk: Added support for ATX images with MFM tracks.
- PCLink: Added option to use creation timestamps passed in commands.
- SCSI: Fast/slow block storage speed is now implemented on SCSI buses.
- UI: Added support for per-monitor V2 DPI awareness in Windows 10 Creator's Update.
- VBXE: Added option to emulate FX1.24 or FX1.26 behavior.
- VBXE: Overlay collision detection is now implemented.
- VBXE: Improved blitter timing precision to sub-scanline.
[bugs fixed]
- AltirraOS: Fixed polarity of CKEY flag.
- ATBasic: Added compatibility workaround for programs that use locations 183 and 184 to read the current DATA line.
- Cartridge: Fixed error when loading untagged cartridge from drag-and-drop stream source.
- Cheats: Fixed sorting issues in active list.
- CPU: Fixed 65C816 being reverted to emulation mode when changing CPU speed dynamically.
- CPU: Interrupts in 65C816 emulation mode now force K=0.
- CPU: Fix incorrect extra cycle for opcode $04 (NOP zp).
- Debugger: Disassembly window now scrolls properly above bank 0.
- Debugger: Improved breakpoint and stepping behavior with coprocessors.
- Debugger: Fixed incorrect execution history timings for Percom disk drives.
- Debugger: Fixed crash when toggling breakpoints through UI on top of hidden break/tracepoints from loaded symbols.
- Debugger: Fixed crash with certain command alias patterns using wildcards.
- Devices: Fixed IDEPlus 2.0 to have internal SDX at higher priority than external cart.
- Devices: Fixed MIDI SysEx message parsing issues with MidiMate emulation.
- Disk: Tightened validation when mounting MyDOS filesystems.
- Disk: Fixed crash when expanding archives in filesystems with empty directories.
- Display: Improved display recovery when secondary monitors are turned on or off.
- Display: Added workaround for breaking change in Windows 10 build 1709 that caused D3D9 exclusive fullscreen mode to not render.
- Display: Fixed some reporting and stability issues in custom D3D9 shader effect system.
- IDE: Serial number field in identify command data is now padded with spaces.
- PCLink: Directory search operations now return creation time instead of last write time.
- POKEY: Serial output data is now truncated when the output clock is stopped.
- POKEY: Fixed keys not being immediately recognized in raw mode when exiting init mode.
- UI: Fixed /type not working on cold boot.
- UI: Fix garbage when pasting text copied from WordPad.
- VBXE: Attribute map is now constrained to 43 cells rather than a lower limit of 8 pixels horizontally.
- VBXE: Added emulation of color 0 bug in GR.11 in FX1.24 core.
- VBXE: Blit pattern width field is now 6 bits instead of 7.
- VBXE: Overlay priority is reset to $FF at top of XDL.
Authors comment:
As usual, thanks to everyone providing feedback on its development. 3.00 is the same as 2.99-test25 except for version and date fixups. Here are the highlights since 2.90:
- Accuracy: Illegal 6502 opcode and 65C816 fixes, VBXE fixes and timing improvements, POKEY serial and keyboard fixes, MIDI parsing fixes.
- Cassette: Turbo decoding support, improved FSK decoding, improved OSD, analysis mode for diagnosing raw tape decoding problems, export tapes back to raw audio.
- Debugger: Faster history engine with more powerful loop/call detector, fixes and enhancements to 65C816 and coprocessor debugging.
- Performance Analyzer: New tracing engine enables visualization of CPU, display, serial bus, disk, and tape activity simultaneously. Capture multi-minute traces and easily match glitched frames with CPU activity without trying to catch the bug as it occurs, or trace an entire disk load to diagnose SIO errors. Automatic thread detection identifies idle and interrupt times within a frame to guide optimization.
- Devices: Browser (B:) device, XEL-CF and Rapidus emulation, VBXE core behavior selection.
- Disk: ATX MFM support, IDE identify command improvements, SCSI timing selection support, filesystem parsing fixes.
- UI: Enhanced high DPI support on Windows 10 version 1703 and up (per-monitor V2) so that dialogs now dynamically scale, full-screen fixes and workarounds.
Altirra Version 2.90 Final [July 15, 2017]:
changes
- Display: Direct3D 9 bicubic filtered display support has been removed for pixel shader 1.x video cards.
- Display: Default color presets have been updated.
- Firmware: The HLE kernel has been removed, as it was out of date and did not have enough advantages. The 800 LLE kernel is now loaded for any profiles that used the HLE kernel.
- HDevice: The escape character for reserved device name conflicts is now !. $ is still accepted on read.
features added
- Cartridge: Added /nocartchecksum command line switch for loading .CAR files without an initialized checksum field for development.
- Cassette: Motor restarts and individual sample timings are now randomized when the randomize option is enabled.
- Cassette: Automatic rewind on cold reset can now be disabled.
- CPU: 65C816 CPU speed can now be changed on the fly without a restart.
- Debugger: History window now shows preview of next instruction.
- Debugger: Added directive and debugger script support for cartridge images.
- Debugger: Added 'ir' command to read from input ports that have side effects on read.
- Debugger: Added .tracesio command.
- Debugger: Added .crc command.
- Debugger: db (dump bytes) now takes a -w (width) argument.
- Debugger: st (static trace) now has a -m option to add a symbol for the starting address.
- Debugger: Added .logopen and .logclose commands.
- Devices: Improved usability of Devices dialog.
- Devices: BlackBox and MIO now support multiple devices on the SCSI bus.
- Disk: Disk drives dialog now supports drag-and-drop.
- Disk: Disk drives dialog is now resizable (horizontally).
- Disk: Initial Happy 810 support (memory read/write commands only).
- Disk: Added support for full disk drive emulation of 810, Happy 810, 810 Archiver, 1050, 1050 Duplicator, US Doubler, Speedy 1050, Happy 1050, Super Archiver, TOMS 1050, Tiger 1050, 1050 Turbo, Indus GT, XF551, ATR8000, and PERCOM RFD-40S1 drives.
- Disk: Virtual DOS 2 disk image handler now supports preallocation of blocks to work with track buffering.
- Disk Explorer: Compressed disk images can now be loaded from the Disk Explorer.
- Disk Explorer: Read/write access is now allowed to SDFS filesystems that have less serious VTOC/bitmap errors (inaccessible sectors only).
- Display: Added borderless windowed / windowed fullscreen mode (enabled in Options).
- Display: Added 16-bit surface option for low-end graphics devices.
- Display: Sharp bilinear filter mode avoids sharpening horizontally if high artifacting is enabled.
- Display: Reduced luma bleed-through in NTSC artifacting algorithm and added support for modifying the color conversion matrix.
- Firmware: Added option to export the internal ROM set.
- GTIA: Added CTIA emulation mode.
- HLE: Fast boot now accelerates OS startup when Ultimate1MB is active.
- IDE: KMK/JZ IDE now has a setting to change the PBI device ID.
- Input: "Hold keys" now allows console button and key combinations to be held down on the next Reset that might be difficult or impossible to hold down normally.
- Input: Added a keyboard option to allow host keys to be shared between by the keyboard and input maps.
- POKEY: Improved SIO transfer logging.
- Profiler: Tabular data can now be copied to the clipboard via right-click option.
- Simulator: Added power-on delay setting to simulate turning on the computer later than peripherals.
- Simulator: Added some optional confirmations before automatic resets.
- UI: Copy/Save Frame now works for XEP-80 display.
- UI: Added variant of Copy/Save Frame which uses the true pixel aspect ratio with filtering.
- VBXE: Implemented config latch.
bugs fixed
- Additions: Colormap now restores palette properly on exit.
- Additions: Fixed an uninitialized variable in SX212.COM that could cause speed-switching issues on init.
- AltirraOS: Modified values of PALNTS for better compatibility with XL/XE OS.
- AltirraOS: Fix short block flag not being handled by direct SIO calls for the cassette device.
- AltirraOS: Suppress type 3 poll to disk boot only (fixes Pole Position and Missile Command cartridge audio).
- ANTIC: Fixed bogus abnormal playfield DMA condition on playfield clock speed switch with blank line in between.
- ATBasic: Fixed READ line not getting reset after NEW.
- ATBasic: PMBASE is no longer altered if PMGRAPHICS has not been executed.
- Cassette: Improved stability of modified bit decoding algorithm.
- Cassette: Fixed sporadic crash when re-recording in the middle of an existing tape.
- Cassette: Fixed "randomize" setting not saving properly.
- Cassette: Acceleration patch now updates the POKEY SERIN register after reading a block.
- CPU: Fixed broken STZ zp,X instruction in 65C02 mode only.
- Debugger: Fixed breakpoints not being disabled on detach if simulator was running.
- Debugger: Blocked rich text paste into command line.
- Debugger: Disk write from .diskwritesec was not always auto-flushed to disk.
- Debugger: Static trace (st) and dump disassembly (.dumpdsm) commands now work with coprocessor targets.
- Debugger: Watches now work with coprocessor targets.
- Debugger: Heat-map based uninitialized effective address trap is now filtered properly.
- Debugger: Fixed crash when examining I/O bus memory in the debugger in 800 mode.
- Devices: Fixed SX212 auto-speed switching issues in the emulated R: handler.
- Devices: SX212 now powers up in high speed.
- Disk: Improved timing of SIO burst transfers for more reliable operation at very high speeds.
- Disk: Added workaround to SDFS formatter and virtual disk handler for unusual disk format check in IDE+2 executable loader.
- Disk: Adjusted high speed C/E-to-data delay for 1050 Turbo emulation mode.
- Disk: Adjusted serial timing for Indus GT.
- Disk: Fixed double density and quad density .XFD disk images.
- Disk: Fixed disk position not being deterministic on a cold reset.
- Disk Explorer: Fixed failures when trying to drag a zero byte file from Explorer into a disk image.
- Display: Fixed saving of non-fullscreen window positioning after exiting in fullscreen mode.
- Display: Enhanced CIO display now sets cursor position properly on Delete Line.
- Display: XEP80 display no longer renders with point sampling when filter mode is set to bicubic.
- Display: Added workaround for display issues on Intel graphics in Direct3D 11 mode.
- Display: Fixed display not updating scaling properly after toggling VBXE.
- HDevice: Fixed crash when doing wildcard rename with filename that matches a reserved device name.
- HLE: Removed DSKINV acceleration hook to work around nonstandard DSCTLN handling in QMEG OS.
- HLE: Fixed incorrect handling of an accelerated SIO command interrupting a non-accelerated SIO command.
- HLE: Fixed AFP allowing exponent zero with FP acceleration enabled.
- PCLink: Fixed characters after ? in a wildcard pattern being ignored.
- POKEY: High-pass flip flop update was off by one cycle.
- POKEY: Three-cycle offset between low and high linked timers is now properly maintained in passive timer mode.
- Serial: Added delay between ATA/ATD and CONNECT to deal with programs that expect to be able to close and reopen R: in between.
- Simulator: Corrected machine clock rate for SECAM machines.
- UI: Main window now autoselects a new active pane when the current active pane is undocked.
- UI: Audio monitor now shows correct frequencies for PAL.
- VBXE: The xcolor bit now also gates bit 0 of colors in attribute map cells.
- XEP80: Tab stops are now set properly on soft reset.
Inne treści związane z tematem
[VCS] Gopher 0.35.0 2/10/2024
Stella ma całkiem rozwiniętego konkurenta, który jak większość multiplatformowych aplikacji potrafi doprowadzić mnie do szewskiej pasji kiedy chce załadować gry z innej partycji;) Po za tym, to całkiem przyjemny emulator ATARI 2600 posiadający dość dobry filtr "psujący" obraz i parę dodatkowych ustawień pozwalających na dopicowanie naszego wirtualnego VCS.
[Atari] AtariOnLine: Miniaturowe Atari #2
Dnia 18 września 2024 roku Piotr "Osa" Ostapowicz ponownie spotkał się z nami na platformie Zoom, aby opowiedzieć co nowego w jego projekcie Miniaturowego Atari (składającego się z procesora 6502, ANTIC, GTIA, POKEY i innych elementów, symulowanych w FPGA). Projekt jest w zaawansowanej fazie, bo prace nad nim trwają już od kilku lat. Zainteresowanie ...
[Atari] AtariOnLine: Wkrótce "Bubble Bobble" na Atari
Bubble Bobble to jeden z tych tytułów, które na 8-bitowe Atari w epoce się nie pojawiły. Gra powstała w 1986 roku w formie automatu arcade i zdobyła tak ogromną popularność, że zaowocowało to w następnych latach wieloma innymi grami opartymi na podobnym schemacie, a także z chęcią portowano ją na komputery domowe. Pojawiła ...
[Atari] AtariOnLine: Pokłosie KWAS #34 - Projektowanie cartów Atari
Dnia 24 sierpnia 2024 roku po raz trzydziesty czwarty spotkaliśmy się w ramach imprezy K.W.A.S., tym razem w Krakowie, na Uniwersytecie Jagiellońskim, w pracowni UBU Lab. Spotkanie trwało ponad 6 godzin, udział wzięło 25 osób, co wypełniło salkę do ostatniego miejsca. Więcej o zlocie na AtariOnline.pl znajdziecie w wielu artykułach, a ...
[Atari] AtariOnLine: Nocne Retro Granie w Poznaniu
Organizatorzy imprezy Nocne Retro Granie i Przyjaciele napisali do nas:Zapraszamy serdecznie na wyjątkowe wydarzenie w Poznaniu, które odbędzie się w dniach 12-13 października 2024 roku! To idealna okazja, by przenieść się w świat retrokomputerów oraz wziąć udział w inspirujących prelekcjach na temat demosceny – kultury cyfrowej, ...