serj Posted July 27, 2014 Share Posted July 27, 2014 Altirra 2.50 released. http://www.virtualdub.org/downloads/Altirra-2.50.zip http://www.virtualdub.org/downloads/Altirra-2.50-src.zip changelog: Version 2.50: [features added] BASIC: Altirra BASIC is now the default when no BASIC ROM is included. Cartridge: Added support for another 512K/4MB/8MB flash cartridge. Cartridge: Added support for The!Cart and MegaMax 2M cartridge types. Cassette: Tape control UI now has a waveform graph. Cassette: Added support for FSK blocks in .cas files. CPU: Extended 65C816 speed options to include 17MHz (10x) and 21MHz (12x). Debugger: Register ® command can now set the emulation (E) flag. Debugger: Improved display of 65C816 register state. Debugger: Disassembly window now steps properly above bank $00. Debugger: Added search capability to History pane. Debugger: Added some 65C02 and 65C816 instructions to assembler. Debugger: Added .loadobj command. Debugger: Keyboard shortcuts are now configurable. Debugger: .basic_dumpline now decodes BASIC XL/XE tokens. Debugger: Added x (examine symbols) command. Debugger: Added module!symbol syntax for resolving symbols specific to a module. Debugger: .sdx_loadsyms command now works on more versions of SpartaDOS X. Debugger: .printf now supports string output and variable width/precision. Debugger: Failed assertions now report file/line info if available. Debugger: Added .basic_dumpstack command to dump BASIC runtime stack. Debugger: Added option to hide namespaces for nested symbols in history window. Debugger: .dumpsnap command now applies compression. Debugger: Added partial CC65 dbgfile support. Disk: .ARC files can now be mounted as SpartaDOS X disk images. Disk: Added option to format new disks with the SpartaDOS File System (SDFS). Disk: Added support for 8KB sectors. Disk Explorer: DOS2 filesystem validator no longer checks directory entries after end of directory. Display: Fixed update problems when stepping with frame blending active. Input: Middle mouse button (MMB) can now be used to release mouse capture if it is not already bound. Input: Added XInput support. Network: DragonCart emulation support. POKEY: Audio output path now emulates analog decay effects. Printer: Added Clear option to printer output pane. Profiler: Added columns for unhalted cycles. Serial: Service field in ATDI command is now optional and defaults to telnet (port 23). Serial: Added Telnet terminal type negotiation support. Serial: Added Telnet binary transfer support. Serial: Added full 850 Interface Module SIO protocol and handler support. UI: Added some touch device support. UI: Added Attach Disk and Detach Disk menu options. UI: Added direct keyboard layout mode. Ultimate1MB: Added SST39SF040, Am29F040B, and BM29F040 as alternate flash chip options. [bugs fixed] 65C816: RTI can no longer clear the X flag in emulation mode. Cartridge: Fixed swapped 5200 two-chip and one-chip modes. Cartridge: Cold reset now resets flash emulation. Cartridge: Fixed some cases where flash writes would stop working with emulated MaxFlash cartridge. Cartridge: Fixed incorrect flash device ID for MaxFlash 1MB+MyIDE cartridge. CPU: Fixed crashes when disabling heat map tracking. CPU: Reverted unintentional change to IRQ timing (affected PM 2.0). CPU: Fix hang when saving state with heat map activated. Debugger: lm (list modules) and .unloadsym now work by IDs instead of indices to avoid index renumbering problems. Debugger: Improved M/X tracking in disassembly window. Debugger: Fixed disassembly of absolute long addressing mode. Debugger: Memory window now updates properly above bank 0. Debugger: Fixed memory access value reporting above bank 0 in step disassembly. Debugger: Fixed infinite loop bug in static trace (st) command. Debugger: CC65 label parser now strips the first leading period from label names. Debugger: Fixed truncated call stack when encountering reused function epilog code paths. Disk: Fixed crash when host file is modified on virtual SDFS mounted path and accessed before emulator can notice the change. Disk: Fixed a bug that caused some root files on virtual SDFS disks to not hot-update reliably. Disk: Writes to virtual disks are now blocked. Disk: Fixed density detection issue with Set PERCOM Block command in XF551 mode. Disk Explorer: SDFS directory entries are now reused properly. Disk Explorer: SDFS sparse files are now supported. Disk Explorer: Dragged files are no longer placed in the root when viewing a subdirectory. GTIA: Fixed 2cclk transitions from modes 9/10/11 to mode 8. HDevice: Files can now be created in append mode. HDevice: Improved error handling in delete, rename, lock, and unlock operations. HLE: Acceleration hooks no longer fire in 65C816 native mode or with a non-standard emulation mode environment. HLE: Program loader now detects and rejects SpartaDOS X executables. HLE: Fixed state of carry flag when exiting DSKINV after failure (fixes Micropainter with SIO patch enabled). HLE: Fixed EXP(-1) returning an error with FP acceleration enabled. HLE: Added alternate hooking mechanism so that CIO device hooks can activate on OSes that don't use the standard CIOINV vector. Input: Relative binding to the axis 0/1 inputs of a tablet controller now works. Input: Fixed mouse capture malfunctioning when activated by keyboard shortcut when the mouse is outside of the window. LLE: Writes to S: in mode 0 now extend logical lines properly. LLE: CIO now checks permissions on get/put operations. LLE: Improved accuracy of power series for ATN(x). PCLink: Fixed race condition in completion of fwrite() command. POKEY: Fixed POTn registers changing without POTGO being strobed. Printer: High bit is now stripped on printed characters so that inverse characters can be read instead of becoming ?. Serial: Fixed escaping of $FF bytes over Telnet protocol. Serial: Cold reset now forces modem back to command state. Serial: Modem command handling is now case-insensitive. Serial: Fixed control line status from status commands issued between OPEN and XIO 40 (was causing ForemXEP drops). SIDE2: Fixed SDX banking register address. Simulation: Fixed some issues with GTIA and POKEY state desyncing across save states. UI: Shift modifier is allowed again for Start/Select/Option. VBXE: Extended color bit now enables LSB of GTIA color registers. VBXE: Fixed blit mode 4 (bitwise AND) not working properly with src=0. VBXE: Fixed blitter collision behavior with dest=0. Thanks you Avery for the best emulator. 7 Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 27, 2014 Share Posted July 27, 2014 Yup, thanks Avery.. Great work as always.. Roll on the 2.60 goodies... Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted July 27, 2014 Share Posted July 27, 2014 Thank you Avery. Always great to see a point release. Quote Link to comment Share on other sites More sharing options...
+Stephen Posted July 27, 2014 Share Posted July 27, 2014 Awesome! Updating all of my machines now. Quote Link to comment Share on other sites More sharing options...
+MrFish Posted July 27, 2014 Share Posted July 27, 2014 Great, you added a feature from Atari800Win PLus that I've hoping to see for a while: "UI: Added Attach Disk and Detach Disk menu options." Nice touch: "Input: Middle mouse button (MMB) can now be used to release mouse capture if it is not already bound." It's all icing on the cake at this point. Many thanks... Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 27, 2014 Share Posted July 27, 2014 Just adding a link to JAC's post re the non working demo as Avery will most likely read here first, keeps it on topic.. http://atariage.com/forums/topic/228112-raving-vieprz-demo/?do=findComment&comment=3040642 Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted July 27, 2014 Share Posted July 27, 2014 I tend to agree with Xuel, though: the NMI set-up is poorly coded so we shouldn't be too quick to call the emulation into question. Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 27, 2014 Share Posted July 27, 2014 (edited) As said in that thread, it needs subtle changes to make it work via Altirra where as the same file sent to real hardware works as is, I just would love if Avery have a look as perhaps this does not affect just one item. I know it seems almost pedantic but I know Avery wants the best accuracy he can possibly add and as the mention of the WinUAE beta testing I made it seems Demo's offer the most stringent accuracy tests. If it cannot be fixed or isn't down to Altirra then so be it but I personally wish I had the ability to put something in to Altirra more than just simple testing. Helping to make sure Avery see's items picked up by good eyes other than mine is a second best but its good enough for me Now Jon, get back to that Centron 3D gui you wrote for RPC... At least your code is real and works Edited July 27, 2014 by Mclaneinc 1 Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted July 28, 2014 Share Posted July 28, 2014 Avery explains why it could also fail on real hardware, given the appropriate (unusual) conditions. I applaud the quest for perfection, but it's annoying when a program makes assumptions about shadows being copied because of some circumstantial delay which "normally" happens. I remember in The Last Word, I sometimes wrote to both the shadow and the hardware register when making DL changes immediately prior to calling the CIO, just in case DOS set CRITIC before the deferred VBL had copied the shadows. Either that, or just idle for a jiffy before calling DOS. On the other hand, of course, you want the emulator to work faithfully with the broadest possible range of software, quirks and all. I suppose the pleasure is in the emulator being so good that corner cases like these are the only issues which crop up. 1 Quote Link to comment Share on other sites More sharing options...
phaeron Posted July 28, 2014 Share Posted July 28, 2014 It's always a tradeoff, and in this case, it shouldn't be too hard to fix. I'm always in favor of writing software the right way, but the reality is that there is almost no software for the Atari 8-bit that is fully clean -- they almost always do at least something out of spec, like reading random ROM locations (I'm looking at you, Atari DOS 2.5). I don't have a full test build of 2.60 ready yet, but I do have some goodies. First, attached are updated versions of Altirra BASIC (atbasic.bin) and the built-in OS (kernelxl.rom). They can be used separately, but the OS contains optimizations to the math pack FPI routine and the BASIC interpreter has faster stack handling. I realized that the runtime stack handling could be rewritten to cache the top of stack in FR0, which sped up the stack handling considerably. This makes it close to competitive in speed with BASIC XE, although I don't think it'll be possible to catch Turbo Basic XL. This also freed up ROM space to fix the error messages and the exponentiation operator (^). I've been having some fun testing it with a BASIC game called NAZZ, which runs much faster and is way more playable on the alternative BASICs than on stock Atari BASIC. Also attached is an additions disk, which contains some misc utilities: a replacement 850 R: handler, a universal 850 loader, and a replacement XEP-80 driver. The 850 loader in particular is designed to do a blind load of the R: handler from the device even if the device has already answered poll and without having to know the length of the relocator, via a special SIO routine. Would be interested in hearing if it works on a real 850 device. The R: handler also has fixes for not working under BobTerm, which uses an unusual XIO 40 call. atbasic.bin kernelxl.rom Additions.atr 8 Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 28, 2014 Share Posted July 28, 2014 (edited) Thanks for looking at the demo issue Avery and thanks to all the tech info from all the other people, nothing is beyond solving with you guys around. So when do you all start on world peace, the economy, global warming and the one that may be the toughest, the release date for Centron 3D Atari8bit?? Edited July 28, 2014 by Mclaneinc Quote Link to comment Share on other sites More sharing options...
TXG/MNX Posted July 28, 2014 Share Posted July 28, 2014 Damn cool to get the DRAGON support :-) Quote Link to comment Share on other sites More sharing options...
atarixle Posted July 28, 2014 Share Posted July 28, 2014 Did you add "Don't erase RAM-Disk after resetting the machine"? My machine actually works this way and my GUI uses this feature actively. I'd like to have it to work with Altirra. Quote Link to comment Share on other sites More sharing options...
atx4us Posted July 28, 2014 Share Posted July 28, 2014 Can someone please give a quick hint on how to make use the "kernelxl.rom" and how to verify that it is set up correctly? Thanks. Quote Link to comment Share on other sites More sharing options...
atarixle Posted July 28, 2014 Share Posted July 28, 2014 in the menubar you click System > Firmware > ROM Images then pick XL/XE in the window, press the […] (three dots) button at the bottom right, and chose your ROM file on your computer. Click [Open] to apply, and then [ OK ]. if it now shows the Self Test (may be after typing BYE {Return} in BASIC under the READY prompt), then Altirra is using the external ROM file. Quote Link to comment Share on other sites More sharing options...
Rybags Posted July 28, 2014 Share Posted July 28, 2014 What's the deal with "Altirra Basic" ? Is it an improved version of Atari Basic? (still running on 2.40 here) 1 Quote Link to comment Share on other sites More sharing options...
atarixle Posted July 28, 2014 Share Posted July 28, 2014 (edited) I think of it as a free replacement (just like the free PS1 ROM in PCSXreloaded) for making it ready-to-run without an unlicensed version of the still copyrighted software in the ROM ... Edited July 28, 2014 by atarixle Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted July 28, 2014 Share Posted July 28, 2014 What's the deal with "Altirra Basic" ? Is it an improved version of Atari Basic? (still running on 2.40 here) As Mirko said, plus the fact it's much faster than the stock BASIC. Works great on real hardware too. Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted July 28, 2014 Share Posted July 28, 2014 Not specific to 2.50 final, but can't seem to get an AtariMax 1Mbit cart image to boot here unless I turn off Ultimate1MB completely. Quote Link to comment Share on other sites More sharing options...
Roydea6 Posted July 28, 2014 Share Posted July 28, 2014 Atbasic.bin doesn't list just one line. If I try to LIST a specific block the listing continues on to end of listing.. Quote Link to comment Share on other sites More sharing options...
atx4us Posted July 29, 2014 Share Posted July 29, 2014 What's the deal with "Altirra Basic" ? Is it an improved version of Atari Basic? (still running on 2.40 here) I did a simple speed test a while ago and posted the results. Impressive speed improvement over Atari BASIC. http://atariage.com/forums/topic/218202-altirra-240-final-out/?p=2909121 Quote Link to comment Share on other sites More sharing options...
atx4us Posted July 29, 2014 Share Posted July 29, 2014 in the menubar you click System > Firmware > ROM Images then pick XL/XE in the window, press the […] (three dots) button at the bottom right, and chose your ROM file on your computer. Click [Open] to apply, and then [ OK ]. if it now shows the Self Test (may be after typing BYE {Return} in BASIC under the READY prompt), then Altirra is using the external ROM file. Thank you! Quote Link to comment Share on other sites More sharing options...
danielcg Posted July 29, 2014 Share Posted July 29, 2014 It's always a tradeoff, and in this case, it shouldn't be too hard to fix. I'm always in favor of writing software the right way, but the reality is that there is almost no software for the Atari 8-bit that is fully clean -- they almost always do at least something out of spec, like reading random ROM locations (I'm looking at you, Atari DOS 2.5). I don't have a full test build of 2.60 ready yet, but I do have some goodies. First, attached are updated versions of Altirra BASIC (atbasic.bin) and the built-in OS (kernelxl.rom). They can be used separately, but the OS contains optimizations to the math pack FPI routine and the BASIC interpreter has faster stack handling. I realized that the runtime stack handling could be rewritten to cache the top of stack in FR0, which sped up the stack handling considerably. This makes it close to competitive in speed with BASIC XE, although I don't think it'll be possible to catch Turbo Basic XL. This also freed up ROM space to fix the error messages and the exponentiation operator (^). I've been having some fun testing it with a BASIC game called NAZZ, which runs much faster and is way more playable on the alternative BASICs than on stock Atari BASIC. Also attached is an additions disk, which contains some misc utilities: a replacement 850 R: handler, a universal 850 loader, and a replacement XEP-80 driver. The 850 loader in particular is designed to do a blind load of the R: handler from the device even if the device has already answered poll and without having to know the length of the relocator, via a special SIO routine. Would be interested in hearing if it works on a real 850 device. The R: handler also has fixes for not working under BobTerm, which uses an unusual XIO 40 call. I found a bug in Altirra BASIC V.9 (atbasic.bin). If I used inline command immediately BEFORE starting a programming, Altirra Basic will not remember programming at all. Example: If I type setcolor 2,4,0 without line number and press enter, it will change a color as expected. However if I start to program IMMEDIATELY after this command by type "5 GR.8". Altirra BASIC accepted an entry but failed to remember programming! Type "LIST" will reveal NOTHING! If I used "LIST" or "NEW" command and type programming then Altirra BASIC will remember programming. Quote Link to comment Share on other sites More sharing options...
phaeron Posted July 30, 2014 Share Posted July 30, 2014 Oops. Fixed LIST command issues, and the parser sometimes trying to put lines after the immediate line (needed to disable optimized line lookup). atbasic.bin 4 Quote Link to comment Share on other sites More sharing options...
w1k Posted August 1, 2014 Share Posted August 1, 2014 dragon cart doesnt work...... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.