Jump to content
IGNORED

Altirra 1.7 released


phaeron

Recommended Posts

I've finally gotten a bit of a break, so I've released version 1.7 of my 8-bit Atari emulator, Altirra:

 

http://www.virtualdub.org/altirra.html

 

This version supersedes all 1.7 test releases. There won't be surprises for anyone who's been following those, but here are some highlights since 1.6 (full changelist is on the website):

 

  • Display is now accelerated on secondary monitors.
  • Support for emulation of flash cartridges and MyIDE.
  • Keyboard tweaks.
  • Portable mode.
  • Video recording.
  • Many fixes to undocumented CPU instruction execution.
  • Debugger stability fixes.
  • Disk write corruption fixes.
  • Several compatibility fixes and improvements to the HLE kernel.

 

I've also updated the Hardware Manual, which now documents a few other corner cases such as the asymmetry in two-tone mode. I also corrected all of the cycle count numbers in the doc to be one lower to match the HPOS counter, with missile DMA at cycle 113 rather than cycle 0. Altirra itself still uses 0 for now since it's a big change to fix that, which I wasn't going to try for 1.7.

 

Thanks for everyone who has tested the emulator, given feedback, submitted bug reports, etc. If you have suggestions, feel free to drop me a note. I've got a big backlog already, so I don't know what I'm going to be doing for 1.8, but I've love to hear what you think. I have some known hardware issues I plan to address, like bits 6/7 of PACTL/PBCTL, but I was thinking of also trying to address some UI issues, like not dumping into the debugger by default on a crash.

 

Thanks for developing a new Emulator for the Atari 8-bit computers. It works great! The H/W Manual is excellent, too!

 

I noticed on your website you said, "Second: kernel ROMs...Therefore, you may want to consider hooking up real kernel ROM images, which will greatly increase Altirra's software compatibility. I'm afraid I can't offer these for download, but if you have downloaded ROM images from your Atari, Altirra uses the same format and filenames as most other popular Atari 8-bit system emulators."

 

I believe that this is no longer true based on a statement at the Atari800 Emulator website. It said, "Darek Mihocka got the permission from Atari corp. to distribute the images of Atari 800XL's OS and BASIC ROMs. The XFormer 2.5 package that contains these ROM images is free now so download and unpack it to get the ROM files needed for Atari800 run."

 

The ROM files are found in a "ROM" folder at the very end of the page of the "Original XL ROM" link:

 

http://sourceforge.net/project/shownotes.php?release_id=64318

 

I hope this helps anyone looking for the "legit" copies of the Atari 8-bit ROMs.

Link to comment
Share on other sites

There is something wrong with compatibility with QMEG 4.04 when selected as "OTHER" OS. On the main QMEG screen:

 

1) SHIFT + 2 sets #8 drive as D1

2) SHIFT + 6 doesn't work at all, no drive mapping change

3) SHIFT + 7 sets #6 drive as D1

4) SHIFT + 8 goes through the "active to list" drive with every pressing

5) SHIFT + 3/4/5 correctly set #3/#4/#5 drives as D1

 

It was the same with 1.6, the bug is still present in 1.7 and 1.8test.

Edited by Jacques
Link to comment
Share on other sites

There is something wrong with compatibility with QMEG 4.04 when selected as "OTHER" OS. On the main QMEG screen:

 

1) SHIFT + 2 sets #8 drive as D1

2) SHIFT + 6 doesn't work at all, no drive mapping change

3) SHIFT + 7 sets #6 drive as D1

4) SHIFT + 8 goes through the "active to list" drive with every pressing

5) SHIFT + 3/4/5 correctly set #3/#4/#5 drives as D1

 

It was the same with 1.6, the bug is still present in 1.7 and 1.8test.

 

This is correct, and is a result of the ASCII mapping. If you look at your keyboard, SHIFT+2 is an @ sign on the PC, and that is SHIFT+8 on the Atari. Similarly, SHIFT+6 is a ^ or SHIFT+* on Atari, and SHIFT+7 is & or SHIFT+6.

  • Like 2
Link to comment
Share on other sites

Here's what I think would be a useful feature. Since we have MyIDE support, I'm considering testing the new SDX MyIDE driver using Altirra. Unfortunately, since SDX can't access the "H:" device from the command prompt, I have to compile to MADS's target folder, run LW in the emulator, use the disk menu to copy MYIDE.SYS from H: to D1:, then drop back to the DOS prompt and run the relocatable app. If only (like APE) PC folders could be mapped onto "Dn:" rather (or as well as) "Hn:" at the SIO level, I could mount the compiler's target folder on - say - D2:, and providing I had the ATARIDOS.SYS driver loaded, run my .COM apps from that drive without any copying.

Link to comment
Share on other sites

Finally got a chance to try out the MyIDE emulation again. I made the mistake of unchecking MyIDE in the hard disk dialogue. When I went to set it up again, it won't let me press "OK" - it just beeps at me. I also tried to load several SpartaDOS X cart images as "MaxFlash+MyIDE" but the emulator always crashes on boot if I do that. I did manage to get the MyIDE disk set up and just attached a "normal" SDX cart image, but when I ran my MyIDE FDISK program (which works fine on real hardware), the application locked up.

 

The MyIDE emulation isn't working too well for me, then. icon_sad.gif It's even harder to get working than the real thing.icon_ponder.gif

 

And I have to (reluctantly) say that the sound is still rather odd.

Edited by flashjazzcat
Link to comment
Share on other sites

Hey thanks, guys. I think I'm going to need some help to track down these issues, though.

 

Bomb Jake just needed a different Corina cartridge configuration (512K ROM + 512K SRAM instead of 1M ROM):

http://www.virtualdub.org/beta/Altirra-1.8-test4.zip

http://www.virtualdub.org/beta/Altirra-1.8-test4-src.zip

 

However, both cartridges are still busted. Yie Another Kung Fu flickers because its display list is too long (241 scanlines) and the display list pointer isn't reset by the VBI. Atari++ allows this, but it doesn't work on my NTSC Atari 800XL, which wraps around and executes the wait-for-vbl instruction at the beginning of the next frame, like Atari800 and Altirra do. Unfortunately, I don't have PAL hardware, so I can't check whether a PAL ANTIC acts differently here. Bomb Jake doesn't have this problem because it resets the display list pointer in its VBI routine, but it breaks because the DLI entry at scan line 55 is occasionally a hair too long, causing a STA WSYNC to occur too late. Can anyone confirm that these are final images or that they work on real hardware? The disk version has bankswitching code and doesn't have this problem since its DLI is shorter.

 

I took a whack at redoing the audio code, so if you're bothered by the variation, try 1.8-test4. I don't recommend DirectSound mode as it will repeat whenever the emulator has UI up, but it does have shorter latency and works better under Vista. You can now adjust the buffering.

 

The MyIDE+Flash cartridge has different bankswitching than the standard cartridge ($D52x), so you need to use a special SDX image for that. As for the hard disk dialog, it should have moved the focus to the missing field; one of the C/H/S values must have been missing. You have to specify the geometry since the emulator can't detect it. Finally, I'm not sure on the hang so I'd need more info about what's going on. The IDE logic doesn't have any loops so I'm not sure why it would hang if it was a hard hang; if it was the program in the emulator that locked up, it might be due to missing IDE command support.

  • Like 2
Link to comment
Share on other sites

I tried CTetris4e with Altirra 1.7. It works great except there is a small problem. There is a green line across the screen between the GTIA 10 and the Graphics 0 modes. It does not do this on an actual Atari 800 or the other Atari emulators - Atari800, Atari800WinPlus & Atari++. I hope this is an easy fix.

 

Here is the link to CTetris4d & CTetris4e

 

http://www.atariage.com/forums/topic/147244-ctetris4d-release-pre-final-version/page__fromsearch__1

Link to comment
Share on other sites

Hey thanks, guys. I think I'm going to need some help to track down these issues, though.

 

I took a whack at redoing the audio code, so if you're bothered by the variation, try 1.8-test4. I don't recommend DirectSound mode as it will repeat whenever the emulator has UI up, but it does have shorter latency and works better under Vista. You can now adjust the buffering.

 

The MyIDE+Flash cartridge has different bankswitching than the standard cartridge ($D52x), so you need to use a special SDX image for that. As for the hard disk dialog, it should have moved the focus to the missing field; one of the C/H/S values must have been missing. You have to specify the geometry since the emulator can't detect it. Finally, I'm not sure on the hang so I'd need more info about what's going on. The IDE logic doesn't have any loops so I'm not sure why it would hang if it was a hard hang; if it was the program in the emulator that locked up, it might be due to missing IDE command support.

Thanks for this quick work. I probably haven't configured the MyIDE device properly but I tried the dialogue box again with the previous version and I can only assume I'm typing in the wrong values: all the boxes had numbers in and it still wouldn't let me press OK. I have a go with the new version tonight and I'll make sure I'm using the correct cart image.

 

I look forward to testing out the new sound features, too. :)

Link to comment
Share on other sites

Can anyone confirm that these are final images or that they work on real hardware?

 

Well, I've taken YAKF image from AtariOnline news, so it must be the the latest one.

As for Bomb Jake I've found it in the "Bomb Jake" package on sources.atari.pl, so I'm pretty sure it's also correct one.

But to make sure, maybe it would be also good to contact Vega to confirm it.

Link to comment
Share on other sites

Any chance you could support 'drag and drop' feature (like a800win plus does)

 

Nice pause feature as well (press f8)

 

well done for adding .zip support

 

I second the request for 'drag and drop' feature. That's one of my favorite features on A8W.

 

Also, how do you specify paths with the H: drive? For example, with Action! in A8W, I would type PATH>FILENAME.EXT to load or save a file. The ">" character is used to designate the path(s). Thanks.

Link to comment
Share on other sites

I'm having some trouble getting Altirra 1.7 to see my OB-B and XL ROM operating systems. I copied the ROM files into the same directory as the Altirra application, but it keeps saying something about the kernel and that it can't find the ROM file. What am I doing wrong?

Link to comment
Share on other sites

I took a whack at redoing the audio code, so if you're bothered by the variation, try 1.8-test4. I don't recommend DirectSound mode as it will repeat whenever the emulator has UI up, but it does have shorter latency and works better under Vista. You can now adjust the buffering.

 

Very nice! To my ear, it sounds like you've completely eliminated the variation. Excellent enhancement!

Link to comment
Share on other sites

Wow, feedback comes in spurts -- appreciated!

 

Thanks for this quick work. I probably haven't configured the MyIDE device properly but I tried the dialogue box again with the previous version and I can only assume I'm typing in the wrong values: all the boxes had numbers in and it still wouldn't let me press OK. I have a go with the new version tonight and I'll make sure I'm using the correct cart image.

 

There are limits on those values: 1-64K for cylinders, 1-16 for heads, 1-63 for sectors. The current dialog unfortunately doesn't tell you this.

 

I tried CTetris4e with Altirra 1.7. It works great except there is a small problem. There is a green line across the screen between the GTIA 10 and the Graphics 0 modes. It does not do this on an actual Atari 800 or the other Atari emulators - Atari800, Atari800WinPlus & Atari++. I hope this is an easy fix.

 

Sadly, no. It looks like the problem is that Altirra has the wrong timing for when a write to PRIOR to clear GTIA modes can affect an incoming hires scan line, so it is rendering the first scan line as lores. Currently this is set at cycle 113 (missile DMA) and that is clearly too early. In order to fix this I need to write some unit tests to determine the exact deadline, since I'd be wary of just guessing it. Shouldn't be too bad, though, since I can guess somewhere around the end of horizontal blank to start (the command from ANTIC to GTIA to end HBLANK is also what sets the hires flag).

 

Any chance you could support 'drag and drop' feature (like a800win plus does)

 

It already does, but it does an open image instead of boot image. I need to rewrite the drag-and-drop handler to use a different interface so I can check the shift key, IDropTarget. (UI coding sucks.)

 

Nice pause feature as well (press f8)

 

I'd need to do a little bit of legwork on this, as there is pause functionality, but it's not what I'd call nice. Oh, and I'd need to reevaluate the keyboard again. I grudgingly pushed the break-into-debugger key from F5 to F8, but I'm kind of running out of F-keys again and probably need to put in separate debug/non-debug key mapping modes.

 

Also, how do you specify paths with the H: drive? For example, with Action! in A8W, I would type PATH>FILENAME.EXT to load or save a file. The ">" character is used to designate the path(s). Thanks.

 

Altirra doesn't support subdirectories through H:. Actually, I didn't know an emulator supported that. I'd be reluctant to put that in without some safeguards, because I'd like not to be the first person to enable an Atari program to 0wn a Windows box, at least not without permission.

 

I'm having some trouble getting Altirra 1.7 to see my OB-B and XL ROM operating systems. I copied the ROM files into the same directory as the Altirra application, but it keeps saying something about the kernel and that it can't find the ROM file. What am I doing wrong?

 

Hard for me to say, but I'm guessing you might have forgotten to restart the emulator...? Altirra only reads the ROMs at startup -- I got lazy and just allocated RAM for all of them.

  • Like 1
Link to comment
Share on other sites

Can anyone confirm that these are final images or that they work on real hardware?

 

Well, I've taken YAKF image from AtariOnline news, so it must be the the latest one.

As for Bomb Jake I've found it in the "Bomb Jake" package on sources.atari.pl, so I'm pretty sure it's also correct one.

But to make sure, maybe it would be also good to contact Vega to confirm it.

 

Could someone contact him please, until it's known if said carts work on a real PAL Atari and what configuration it needs (ie does it needs some hardware mod to work or is it a bog standard as produced Atari) then Phaeron has no easy way to figure out what can or cannot be done.

 

Cheers..

Edited by Mclaneinc
Link to comment
Share on other sites

Altirra doesn't support subdirectories through H:. Actually, I didn't know an emulator supported that. I'd be reluctant to put that in without some safeguards, because I'd like not to be the first person to enable an Atari program to 0wn a Windows box, at least not without permission.

This is a remarkably useful feature for developers, and I use it in Atari800WinPlus all the time. The Last Word will happily navigate the directory tree on H: as if it was a Sparta disk.

Link to comment
Share on other sites

Can anyone confirm that these are final images or that they work on real hardware?

 

Well, I've taken YAKF image from AtariOnline news, so it must be the the latest one.

As for Bomb Jake I've found it in the "Bomb Jake" package on sources.atari.pl, so I'm pretty sure it's also correct one.

But to make sure, maybe it would be also good to contact Vega to confirm it.

 

Could someone contact him please, until it's known if said carts work on a real PAL Atari and what configuration it needs (ie does it needs some hardware mod to work or is it a bog standard as produced Atari) then Phaeron has no easy way to figure out what can or cannot be done.

 

Cheers..

 

They definitely work on PAL ATARI. Guaranteed :-)

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...