• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Altirra 3.10

Version 3.10: [August 12, 2018]

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.
Version 3.00: [December 28, 2017]
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.
Version 2.90 [July 15, 2017]:
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.
Version 2.81 [October 16, 2016]:
[bug fixes]
Cartridge: Fixed saving SIDE 1 cartridge images.
Cartridge: Fixed crash with XEGS cartridge types.
HLE: Fixed crash when viewing PBI region in debugger with PBI acceleration disk ROM enabled.