To dla tych, którzy już nacieszyli się pełną wersją emulatora Phaerona, udającego 8 bitowe mikrokomputery firmy ATARI - test nr 1, zaczyna nową serię 2.99.
Ostatnia pełna wersja tego emulatora, jaka publicznie została udostępniona to Alirra 2.90 z 15 lipca 2017 r.
→ [ATARI] Altirra x86 i x64 2.99 test 25
Altirra 2.9.9 Beta 25 16/12/2017
- Support parsing MIDI running status and truncated messages.
→ [ATARI] Altirra x86 i x64 2.99 test 24
Centurion Defender of Rome (Sword Soft 1995)
Altirra 2.9.9 Beta 24 15/12/2017
- Devices: Fixed MIDI SysEx message parsing issues with MidiMate emulation.
- Display: Fixed some reporting and stability issues in custom D3D9 shader effect system.
- Fixes MIDI SysEx message parsing bug with MidiMate.
- Fixes some bugs in the custom shader system.
→ [ATARI] Altirra x86 i x64 2.99 test 23
Altirra 2.9.9 Beta 23 12/12/2017
- fix for a crash in the debugger's execution history view: Happened to catch a case where the history window was crashing when refreshing the view: it was caused by trying to remove the preview ("NEXT") node when the whole view had already been cleared. Might have been responsible for the repaint issue too, as it could have caused tree node pool corruption.
→ [ATARI] Altirra x86 i x64 2.99 test 22
Wstęp do Elite na Atarii, dziwny prototyp albo eksperyment... wygląda bardzo obiecująco.
Altirra 2.9.9 Beta 22 20/11/2017
- Rapidus added to help file.
- Rapidus NVRAM is now saved.
- Adjusted scroll bounds on history view.
→ [ATARI] Altirra x86 i x64 2.99 test 20
Altirra emuluje dopałkę Rapidus.
Altirra 2.9.9 Beta 20 20/11/2017
Polishes up the built-in Rapidus bootstrap firmware so you can actually configure the accelerator even if you don't have the real images to flash, so it's usable out of the box. Figured, as long as we're working with the decadence of a 20MHz accelerator and I have to implement the menu from scratch, might as well try to fancy it up a bit:
Note that the bootstrap flash is not meant to work on a real Rapidus and should not be flashed to one. The menu is "real" in that it uses stock hardware features, but the accelerator configuration takes shortcuts like not uploading the FPGA core and not following all setup and timing reqs for talking to the EEPROM. So don't do it. There is also currently no Rapidus OS in the image, though you could flash one into it.
- Removed the strong/weak indicator from the turbo waveform in tape analysis output. Begone, weird notches.
- Fixed MADS label parser not resolving banks properly for banks above $A0. (Stupid bug.)
- Fixed symbols not resolving in expressions above 64K.
- Relicensed the Additions disk and the .dumpsnap loader from GPLv2+ to permissive. This is just a formality as there is not a flood of people looking to enforce or violate the license on replacement firmware for 300 baud modems, but I noticed it while setting up license text for some other files and it's suboptimal for stuff that can be used independently of the emulator.
→ [ATARI] Altirra x86 i x64 2.99 test 19
The Way of Exploding Fist, konwersja Fandal/Miker z Commodore 16 (2017)
Altirra 2.9.9 Beta 19 16/11/2017
- Devices: An automatic reboot is now requested before adding or removing devices that practically require one.
Fixes for Rapidus:
- HLE system is aware of Rapidus OS switching so that acceleration hooks no longer cause a crash when switching OSes.
- Fixed issues with the $FFD000-FFD7FF hardware mirror.
- Additional 16MB of banked SDRAM is now supported.
- Fast_mem_0 ($0000-3FFF write-through disable) is now supported.
- Hardware protect unit is now supported. (Who wants to write a VM?)
- Added .rapidus command to debugger to dump control register and EEPROM state.
- Implemented enough functionality in the 16-bit bootstrap PBI for the stock menu options to work -- this means you can flash the 6502 PBI and firmware images and the menu will be functional. The bootstrap flash will also apply options, but that's of limited use since it still has no menu.
- Rapidus, and several other "internal" device types, will now auto-reset the computer when added or removed.
Special thanks to laoo and drac030 for assistance.
→ [ATARI] Altirra x86 i x64 2.99 test 18
Joe Blade 2
Altirra 2.9.9 Beta 18 07/11/2017
- The issue was that pulling Rapidus at the wrong times left the CPU core trying to run '816 microcode on the 6502. This stems from an issue in the device framework with devices not being able to signal that they need the computer power cycled when added or removed, so right now mucking around with the devices causes them to be hotplugged. As usual, no smoke or smells are emulated... but generally not the cleanest experience. I changed the CPU to force a warm reset there so at least the CPU core won't go off into the weeds.
Altirra 2.9.9 Beta 17 05/11/2017
- Display: Added workaround for breaking change in Windows 10 build 1709 that caused D3D9 exclusive fullscreen mode to not render.
Figured out what Microsoft did with their "fullscreen optimizations" in Windows 10 version 1709 (Fall Creators Update) and got a workaround in so that D3D9 exclusive fullscreen should work again. Needless to say that's a few hours of my life I wish I could get back.
Fixed 400/800 mode crash with Rapidus, which is nonsensical but shouldn't crash. CPU mode setting is now split so that the UI option is disabled when Rapidus is active and the original mode is restored when the device is removed.
→ [ATARI] Altirra x86 i x64 2.99 test 16
Altirra 2.9.9 Beta 16 05/11/2017
- Debugger: Symbols can now be present above bank 0.
- Implemented two undocumented registers needed for the 6502C and SDRAM 4K options to work (though the latter has no effect). Note that all of the menu options are still unoperational unless you have the firmware dump of the 16-bit PBI ROM, until I figure out a solution for the bootstrap one. Pulling it out of the FPGA core isn't really an option....
- Fixed Rapidus flash residing on the chip bus instead of the fast bus.... though that may be too fast, if I'm reading the specs on the flash chip correctly.
- Fixed bugs with the page 0 mirroring option which could cause a crash if you did enough cold resets with it on.
- Fixed several bugs with bogus symbol decoding in disassembly above bank 0, notably JMP/JSR instructions still showing bank 0 OS symbols and other indirect jumps using the wrong banks (0/PBK/DBK depending on addressing mode).
- Unassemble (u) command now decodes symbols by default like the Disassembly pane unless -n is specified.
- Added some support for having debug symbols in bank 1+.
- Added an explicit Copy menu command to the console log window. Never minded its absence since I always use Ctrl+C instead. That keyboard shortcut also works in the disassembly view, but I couldn't trivially add a menu option there due to the way that the right-click currently clears the selection.
Enabling Rapidus OS seems to crash in emulation unless you have the same OS flashed to Rapidus and the base machine -- from what I can tell the firmware is trying to do a hot swap of the OS. CPU mode staying stuck is not fixed yet.
→ [ATARI] Altirra x86 i x64 2.99 test 15
Altirra 2.9.9 Beta 15 01/11/2017
- 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.
- Devices: Added Rapidus Accelerator emulation.
- POKEY: Fixed keys not being immediately recognized in raw mode when exiting init mode.
Adds preliminary Rapidus emulation. Some caveats:
- The emulator has bootstrap firmware built-in, but it simply boots in 65C816 mode and has no menu support.
- Flashing is supported (SST39SF040, 4K sectors). There are four components to flash: the 6502 New Device firmware, the boot firmware, the core firmware, and the 65C816 OS.
- Speed is approximate. The 65C816 runs at 11x synchronous (19.7MHz) and SDRAM wait states are not emulated.
- Supported hardware features: 6502/65C816 switching, SRAM overlay in bank 0, SRAM write-through, flash OS mapping, page zero mirroring into bank 1, $FF:D000-D7FF mirroring, EEPROM access.
- Not supported hardware features: fast IO cycles, U1MB compatibility mode, fast self test, high fast RAM mirroring, USB serial, SDRAM caching.
- The emulation also requires the 65C816 PBI firmware, which unfortunately is not readily available since it is built into the FPGA core. If you have the 2K image, it has an additional firmware slot.
- The real Rapidus firmware can be used but currently the menu options will not work, for unknown reasons. The most likely reason is the the missing 65C816 PBI firmware; the bootstrap firmware allows the menu to display and the system to boot but it appears that part of the configuration logic is also supposed to be in that firmware.
This involved a fairly heavy rewrite of the memory handling code, so there may be regressions. Other changes:
- C++ compiler updated to VS2017 15.4.2.
- Memory access expressions (db addr) and memory access breakpoints are now supported above bank 0.
- The u (unassemble) command now supports 65C816 M/X/E flag prediction like the Disassembly window and has mode override switches.
- Added bta (set tracepoint on memory access) debugger command to make it easier to trace reads/writes.
- Fixed a bug where held keys wouldn't be recognized immediately in raw key mode when exiting POKEY initialization mode (this affected the inverse key shortcut for entering the Rapidus menu).
→ [ATARI] Altirra x86 i x64 2.99 test 14
Drol (Broderbund, 1983)
Altirra 2.9.9 Beta 14 22/10/2017
- CPU: Fix incorrect extra cycle for opcode $04 (NOP zp).
- 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.
Fixes debugger alias and toggle breakpoint crashes, fixed $04 opcode to be 3 cycles, fixed a DirectSound initialization issue that didn't seem to be causing functional issues but was triggering warnings, fixed an occasional pause in emulation when switching from PAL to NTSC.
Compatibility note: if you've upgraded to Windows 10 Fall Creator's Update, full screen mode may fail to work in all versions. From what I can tell, Microsoft broke some methods of doing full screen mode in D3D9 with their "fullscreen optimizations," and I'll have to make some major changes to the display code to work around their breakage. I've verified this on two independent systems, one with an Intel graphics card and another with NVIDIA, so it's not a driver problem. To work around it, either enable D3D11 mode or check the "disable fullscreen optimizations" compatibility option on the program's Compatibility property tab in Explorer.