Jump to content
IGNORED

Altirra 2.70 released


phaeron

Recommended Posts

Yeesh, I don't know what happened to the PAM Diagnostics v2.0 ROM. It looks like a valid dump, but the banks are in the wrong order -- needed to reorder the existing banks 2-0-3-1 before it would run as two-chip, almost like it was dumped with the chips swapped. Where did these dumps come from and what were they intended to be used with?

 

Quintana Roo is copying uninitialized memory into PRIOR, which is triggering GTIA mode 11 in the emulator. Changing the power-up memory initialization mode from DRAM to Cleared will bypass this issue, but cleared memory is not generally realistic. Looking at the schematic, the 5200 appears to wire up the address bus to row/address in non-sequential order, which would change which bytes show non-zero patterns (usually half of the DRAM is wired inverted, giving stripe patterns). Unfortunately, the manufacturers don't typically indicate how the banks are wired internally within the chip, so I don't know what pattern the MB8118 uses.

  • Like 2
Link to comment
Share on other sites

Not sure if test-24 (and 23 too, for that matter) handles 65C816 interrupts in native mode correctly.

A program I have runs in native mode with interrupts on. It can be interrupted by hitting any key. I do not remember it having any problems on real hardware, but now on the emulator I can see that after pressing any key the program crashes instead of returning to DOS.

The instruction history produced by Altirra ends abruptly, apparently in the place where the keyboard IRQ was signalled. The interrupt vector $FFEE points to $C9A9. This is also the PC value the emulator was stopped at. The stack apparently contains the correct return address to the same place where the instruction history ended (in this case: $22 $06 $2A $00, where $22 is the P register), but the rest of the stack is completely filled up with $22 $a9 $c9 $00 $22 $a9 $c9 $00 $22 $a9 $c9 $00 and so on (I set a breakpoint on write to $FF), as if the interrupt sequence was occurring repeatedly before the first instruction of the interrupt handler (which is a JML). The flag register does not have the I bit set.

Edited by drac030
Link to comment
Share on other sites

Nice catch. 65C02 mode was also not clearing the D flag, so I've fixed up both issues.

 

http://www.virtualdub.org/beta/Altirra-2.80-test25.zip

http://www.virtualdub.org/beta/Altirra-2.80-test25-src.zip

 

The warm reset is also clearing too many flags... but I'll fix that later when I can look up exactly what changes occur on the various CPUs. It's much less likely to be noticed unless you're running a custom OS ROM.

 

Other changes:

  • The DRAM A memory reset pattern has been adjusted to reflect the reordered address lines in 5200 mode. Quintana Roo now displays correct text without forcing cleared as the reset pattern.
  • Shell hack of the day: The drag and drop handler can now detect when a file has been dragged from within a .zip file in Windows Explorer. If so, and if the .zip file is compatible, Altirra will store the zip-based path so that the image can be auto-remounted later. This will only work with .zip files in Explorer; it will not work with non-shell based file managers as there is no way for the emulator to tell the full path to the file (no PIDL). Also, if you are dragging from a .zip file within a .zip file, this won't work as the built-in .zip handler seems to create a temporary .zip file for the interior archive.
  • Like 3
Link to comment
Share on other sites

Update:

http://www.virtualdub.org/beta/Altirra-2.80-test26.zip

http://www.virtualdub.org/beta/Altirra-2.80-test26-src.zip

 

  • ATBasic updated to v1.51: Fixed INT() crash with some large values; roll back variable list on a parse error; fixes a minor issue with error location for some syntax errors.
  • AltirraOS: Fixed regression that was causing a GR.0 screen clear to overrun the screen buffer. (Fixes a simple but fun BASIC game called Biker Dave.)
  • Improved accuracy of fast math acceleration for ZFR0/ZF1/ZFL calls.

 

atbasic.bin

atbasicx.xex

  • Like 9
Link to comment
Share on other sites

Avery, I found a mistake in the emulator.

error associated with tapes recording in the emulator.

 

1.

 

This video shows the record cassette image "River raid".
normal recording and working fine.
use Altirra 2.80 test 20 and copier programm "cas_dup_3t".

(cassette recording 07.01 - 10.56. video time.)

 

2.

 

This video shows the record cassette image "River raid".
normal recording ???
use Altirra 2.80 test 26 and copier programm "cas_dup_3t".

 

pay attention to the record in the video 2.

record sounds absolutely others.

and besides, it is visible as in the second video, seconds in recording time of the cassettes - make the jump.

(see "cassette tape control" menu in video).

 

it really a mistake?
which option is the right one?

Edited by serj
Link to comment
Share on other sites

Serj, I have to admire your dedication, its wonderful, the depth you go to is excellent..

 

Well done and thank you, its this level of beta testing that gets results that could be missed..

 

And as always, a huge thanks to Avery for keeping the faith up...

  • Like 1
Link to comment
Share on other sites

Avery, any chance of a Atari800win Plus clickable icons to swap Pal / NTSC, SIO Patch etc, yeah I know SIO has already got a keyboard shortcut and there's a really nifty way to make other keyboard shortcuts easily but the clickable icons in Win Plus are so easy and don't require you to remember a 101 keyboard shortcuts.

 

Hey, I know its a GUI change which you hate but I'm just throwing it out there as an idea, no more, no less.

 

Paul..

Link to comment
Share on other sites

Update:

http://www.virtualdub.org/beta/Altirra-2.80-test27.zip

http://www.virtualdub.org/beta/Altirra-2.80-test27-src.zip

 

This build contains a couple of changes to try to smooth out the first time run experience.

 

First, this build fixes a couple of issues in input map handling. The default 5200 profile now has private input maps (you might need to reset profiles or edit the 5200 profile to fix this if you already have it), and there was a bug that prevented quick map settings from saving properly. What was happening was that the active map list was getting saved to the quick map list too, so afterward the Cycle Quick Maps command only toggled on and off the maps you last had enabled. That's now fixed and a fresh install should now be loading up with the controller enabled in 5200 mode. Previously it was initializing with no controller enabled, which was pretty useless.

 

Also added is a new setup wizard for first time runs that walks the user through setting up ROM images and selecting a few basic options like 5200/computer. It should only be coming up on the first run and if no command-line arguments are specified other than /resetall or /portable[alt]. There is a /skipsetup option to forcibly bypass, but this shouldn't generally be needed. Interested in feedback on this; if you want to try it out without messing with your existing install, launch with a side INI file (altirra /portablealt:test.ini).

 

One thing I haven't figured out yet is how to deal with the relative/absolute mapping modes of the 5200 controller. Directional games want the absolute mode, while games like Missile Command really want relative mode. It's kind of hard to get this across when you're not actually holding the 5200 controller in your hand, and I'm not actually trying to emulate its famous mediocrity....

 

pay attention to the record in the video 2.

record sounds absolutely others.

and besides, it is visible as in the second video, seconds in recording time of the cassettes - make the jump.

(see "cassette tape control" menu in video).

 

it really a mistake?
which option is the right one?

 

You probably have burst I/O transfers enabled, which is why the blocks are getting recorded faster than usual. What's the error?

 

Avery, any chance of a Atari800win Plus clickable icons to swap Pal / NTSC, SIO Patch etc, yeah I know SIO has already got a keyboard shortcut and there's a really nifty way to make other keyboard shortcuts easily but the clickable icons in Win Plus are so easy and don't require you to remember a 101 keyboard shortcuts.

 

Hey, I know its a GUI change which you hate but I'm just throwing it out there as an idea, no more, no less.

 

Mmm, I dunno. I could add a status bar like that, but the set of options probably needs to be different. Icon scaling would also be necessary since Altirra is high DPI capable. There are some other layouts too... VMWare Player uses a toolbar on top instead for this kind of stuff.

 

  • Like 2
Link to comment
Share on other sites

How do you mean how to deal with relative/absolute modes on the 5200 stick mapping stuff?

 

How to make the user aware that there are two different mappings for the analog stick and to switch between them for games that work better with one than the other. Missile command is unplayable with an absolute mapping, for instance. Even with an analog controller, a thumbstick is not as easy to move in small increments than the >1" 5200 stick.

Link to comment
Share on other sites

I thought that's what you meant.

 

I say make a Joystick troubleshooting section in the help file. And perhaps make a separate menu item/option.

 

Commodore 64 and Vic-20 VICE emulator uses a simple <ctrl>-J to swap the stick between ports 1 & 2. Seems to be an annoyance with C64 games, some use 1 and some use 2 with no readily apparent logic behind the decision. Perhaps a certain key combo can be made to switch between relative and absolute will work here?

Link to comment
Share on other sites

Basic rule of user interface design: Users don't read.

 

The absolute and relative modes bound as quick maps now. It just occurred to me that I never actually set a keyboard shortcut for the cycle quick maps function, though -- I've had it bound to Shift+F1 in my config but never set it as default. Perhaps it's time to change that. I'm not willing to put in special case functions beyond that because that doesn't work with the general input mapping scheme (which I would like to make even more general in the future).

 

The real problem is that with an emulator it's harder to tell when the 5200 is being fed inappropriate inputs. With a real console you're controlling the stick directly and it's pretty obvious how what you're doing directly translates to what the game is doing. The problem with emulation is that there's a second layer of translation between the physical keyboard or controller to the emulated controller, and that's where things can go sideways without it being obvious. This is made worse by the inconsistency in when 5200 games do calibration, which means that pushing the stick at the wrong time can totally screw your controls. I'm considering putting stick readouts on the insert cartridge screen so whenever there's no cart inserted you can see what the emulated controllers are doing.

  • Like 1
Link to comment
Share on other sites

Is this related to the fact that there are two versions of the same CX80 trackball controller? In true trackball mode, earlier models send a pattern compatible with the old CX22 trackball controller, while later are compatible to ST mouse. There is no visible difference between versions, except that games work or don't.

Link to comment
Share on other sites

The link killed me LOL...

 

Its spot on...

 

As for the controller, I wrote about the issues of input delay and the levels that input has to go through causing delay a little while back but on the other side it must be hell for the emulation author to make sure the emulated machine gets to see the input as its seen on the real hardware especially using joysticks that differ both digitally and electronically from the original.

 

It must be bloody annoying to emulate the game hardware nigh on perfectly but to not be able to play the game because the controls are all over the place..

 

The stick readouts sound great if there is a problem as to when and when not to press the controls therefore screwing up configuration.

Edited by Mclaneinc
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...