Jump to content
IGNORED

Altirra 3.10 released


phaeron

Recommended Posts

http://www.virtualdub.org/beta/Altirra-3.20-test15.zip

http://www.virtualdub.org/beta/Altirra-3.20-test15-src.zip

  • Automatically held keys are now re-enabled when a soft-reset occurs through the WarpOS 32-in-1.
  • AltirraOS 3.14: Fix for boot loop with BlackBox 2.16 firmware, which intercepts type 3 poll requests. The boot code now exits the poll loop on Y=$80 (user break).
  • Fixed crash with no sound card.
  • Like 10
Link to comment
Share on other sites

Thank you!

 

Premature I'm afraid...Still doing it..

 

Easy way to recreate, 32 in 1, Happy 1050 and boot Jumpman..

 

No key held and Jumpman says to remove carts (tried other software and BASIC is enabled)

 

Shift F5 and hold Option / F4, same thing...

 

Shift F5 with slight delay and hold Select / F3 and Jumpman boots fine..

 

I showed the key numbers just to prove I'm holding the right keys..

 

Clear my settings and made sure no ini file was ini (ha) there...All same..

 

Showing as beta 15 but will reset the cache and try again..

Edited by Mclaneinc
Link to comment
Share on other sites

Sadly its the same, even tried a few different XL OS's and 32 in 1 dumps.(of the 3 I know of)

 

Sorry to be a pain..

 

ED: And I'm getting that odd thing where cold resets sometimes after holding select and cold resetting Jumpman then boots fine with no keys held but if you cold reset it again its back to saying remove cart....

 

And then some times it works with holding F4....Its like its holding a memory of other keys being pressed after a cold reset and sort of acting on the last set of keys held and then completely not doing it the next reset...Again some times if F3 has been held it acts like it was F4..

 

I am totally confused....

 

This is all from a complete cleaned out Altirra and using only the roms that ALtirra scans in plus manual insert of the 32 in 1 OS....Warp OS

 

And to confirm that enable basic is not ticked in firmware and no Basic shows up in the menu bar..

Edited by Mclaneinc
Link to comment
Share on other sites

Are you seeing [Option] show up in the lower right corner on the reset when the emulator should be holding it?

 

The part I really don't understand here is the Select key (F3). Holding that after Shift+F5 shouldn't do anything with the standard OS unless you're using the XEGS OS.

Link to comment
Share on other sites

Just curious, I noticed Axlon emulation goes to 4MB. Is there a reason for this ? I thought the largest Axlon compatible board for the 800 was the 1MB card from Magna Systems.

Since the banking register for Axlon is not shared for any other purpose (unlike PORTB) all 8 bits are theoretically usable for bank selection. 256 banks of 16KiB = 4MiB.

 

Although technically 1 of those 16K banks is your base bank so it's really 4096-16 = 4080KiB extended RAM

  • Like 2
Link to comment
Share on other sites

Since the banking register for Axlon is not shared for any other purpose (unlike PORTB) all 8 bits are theoretically usable for bank selection. 256 banks of 16KiB = 4MiB.

 

Although technically 1 of those 16K banks is your base bank so it's really 4096-16 = 4080KiB extended RAM

 

Yes, I get that. However he refused to add 65816 memory beyond 4MB because that was the largest upgrade, until someone pointed out that Rapidus had all 16MB. So I'm just wondering why Axlon is 4MB. Is there an upgrade somewhere that gives 4MB to an 800 ?

Link to comment
Share on other sites

 

Yes, I get that. However he refused to add 65816 memory beyond 4MB because that was the largest upgrade, until someone pointed out that Rapidus had all 16MB. So I'm just wondering why Axlon is 4MB. Is there an upgrade somewhere that gives 4MB to an 800 ?

Not sure about the 800, but the Antonia upgrade for XL/XE has 4MB, which can be configured for various combinations of PORTB, linear 65816, and Axlon banked RAM.
  • Like 1
Link to comment
Share on other sites

Are you seeing [Option] show up in the lower right corner on the reset when the emulator should be holding it?

 

The part I really don't understand here is the Select key (F3). Holding that after Shift+F5 shouldn't do anything with the standard OS unless you're using the XEGS OS.

 

Hi Avery,

 

Sorry its a pain, I've added the roms I'm using, I totally isolated every thing and made a new folder, used the roms that came Rainbow or whatever it was called, the origina AtariXL.rom and the AtariBAS.rom and Nezgars 32 in 1 dump. That was the only dir I scanned and it found them, I manually added the 32 in 1 and set it to A for the warp os (although I think it defaults to that anyway). All setting were previously removed so its all from this dir only. Yes, the Option button comes up in bottom right but it seems to be booting with BASIC as Jumpman complains about carts. I then manually held the Option down and it stilled complained re cart. I sat there randomly trying lengths of time holding the cold start combination and even held the F3 just in case and randomly it would work and then a cold reboot brought back the cart complaint...

 

Its all very odd, its like there's something mixed happening in the space of time from boot to the time the keys are held either virtually or not???

 

I don't know if that makes sense..

 

Anyway, roms added and the CRC of the XL rom suggests its a version 2 XL rom, the Bas is version 3 and Nezgars dump seems to work and I get the same problem on a different 32 in one dump.

 

System scanned for any resident naughties and none..

 

Apologies for this...The simple answer is not to use the warp OS and 32 in 1 and I'm happy to do that but I just thought it was worth mentioning..

 

Paul..

roms used.zip

Edited by Mclaneinc
  • Like 2
Link to comment
Share on other sites

Okay, now things make sense.

 

The issue is that the Warp OS has the Option button behavior reversed from normal -- holding Option enables internal BASIC instead of disabling it. The problem is that the emulator has no way of knowing this, so it tries to hold down Option to turn off BASIC and the Warp OS turns it on instead. This is a common mod, so the emulator has a setting you can check on OS ROMs to indicate that the Option button works the other way. You can only set this on loose OS ROMs, though, and not the slots in the 32-in-1. This means that you should flip the BASIC option and tell it to enable BASIC so it doesn't hold Option.

 

There is an additional complication, which is that if the OS ROM setting in the emulator points to an OS ROM that is set to invert BASIC behavior, it will use that even though the 32-in-1 is overriding the OS ROM. I have an override in place for Ultimate1MB to disable this, which I need to extend to 32-in-1.

  • Like 4
Link to comment
Share on other sites

Thanks Avery, I thought I was going mad, I'm betting that depending on if you choose to hold down F4 by mistake that itself muddles the way it boots.

 

Thanks for looking at it, at least it was a genuine issue but not really with Altirra other than you kindly compensated for holding down the OPTION internally....And hopefully that will not get changed :)

 

Look forward to the change for the 32 in 1...Hardly the most pressing change in terms of your time :)

Edited by Mclaneinc
Link to comment
Share on other sites

This may be a stupid question, but: I just downloaded Curt's Integrator ROM. I believe it goes @ $C000. Is there currently a way in Altirra to add a $C000 block ROM to the OS? Doesn't OmniMon, etc. also work this way?

 

Yes, 3.10 will let you use a 16K XL/XE OS ROM image layout in 800 mode. The first 4K of that image is mapped to $C000-CFFF, and the last 10K to $D800-FFFF.

  • Like 4
Link to comment
Share on other sites

Bug in the debugger. It's duplicating bytes, must be an error in advancing the PC. Example:

 

42D0: 60 RTS
42D1: 20 29 32 JSR $3229
42D4: 20 C8 42 JSR $42C8
42D6: 42 KIL
42D7: 85 D4 STA FR0
42D9: A2 00 LDX #$00
42DB: 86 D6

 

42D6 appears twice, first as part of the JSR at 42D4 and then again as 42D6 by itself. So it incremented the PC correctly but the data byte fetcher only advanced 2 and not three bytes looks like.

Link to comment
Share on other sites

Bug in the debugger. It's duplicating bytes, must be an error in advancing the PC. Example:

 

42D0: 60 RTS

42D1: 20 29 32 JSR $3229

42D4: 20 C8 42 JSR $42C8

42D6: 42 KIL

42D7: 85 D4 STA FR0

42D9: A2 00 LDX #$00

42DB: 86 D6

 

42D6 appears twice, first as part of the JSR at 42D4 and then again as 42D6 by itself. So it incremented the PC correctly but the data byte fetcher only advanced 2 and not three bytes looks like.

 

You'll have to be more specific as to where you're seeing this.

 

If it's in the Disassembly window, this is intentional and it happens when the current PC or frame address doesn't line up with the prior disassembly. The debugger has to do a reverse disassembly in order to determine instructions prior to the given address. Since those instructions may not have been executed and the CPU never executes instructions backwards, this is not well defined. The reverse disassembler tries to find a reasonable path to the anchor address, but if it doesn't, the disassembler will force the anchor address to appear in the disassembly. For instance, in the above, if the CPU jumped to $42D6 and crashed, you would see the above because that address is where the PC is actually at even though the PC would never get there in the normal instruction sequence.

  • Like 3
Link to comment
Share on other sites

Yes, this is in the disassembly window. I set the address to $42C8 and that is the output I see. It's all code in that section, no data bytes to mess things up. I wasted quite a bit of time poking into CLSN pascal before I realized the disassembly had to be wrong, and then there it was.

Link to comment
Share on other sites

Cosmetic observations: I notice on non-65C816 machines (i.e. with only 64K of linear RAM), the memory window still does not wrap back to $0000, but shows an inaccessible numbered segment:

 

post-21964-0-15308100-1551452749.png

 

Also (not sure if it even matters or is intentional or not), the IDE IO indicator overwrites the file size indicator on the OSD when a video is recording:

 

post-21964-0-50297900-1551452841.png

 

Link to comment
Share on other sites

Is anyone else having a problem with full 1050 emulation? When I enable it, it just drops to self test on reboot like a drive isn't attached...

With Altirra 3.10 you need to coldstart only the computer. Otherwise it seems that the disk drive is still reseting when the Atari tries to boot.

  • Like 1
Link to comment
Share on other sites

Ah, just saw it was 3.10 you are using..Seriously, go to 3.20 and the latest beta, there's been so many fixes since 3.10...Its perfectly stable....

 

Works here...I have a mouse gesture bind to do a standard cold start and the emulated 1050 (full) boots every time..Latest beta.(15)

 

There's also a Power on delay setting you can adjust...

 

Just to reaffirm, Phaerons beta's rarely ever have regressions or introduce extreme faults let alone any faults, the old wait for a stable release syndrome is not really an issue with Altirra...

Edited by Mclaneinc
  • Like 2
Link to comment
Share on other sites

http://www.virtualdub.org/beta/Altirra-3.20-test16.zip

http://www.virtualdub.org/beta/Altirra-3.20-test16-src.zip

 

  • Inverted Option flag for internal BASIC is forced off when 32-in-1 is active.
  • AltirraOS 3.15: Adjusted ICBALZ/ICBAHZ to improve compatibility with Lightspeed DOS.
  • Fixed the Customize button being enabled too often in the keyboard customization page (when custom layout isn't enabled).
  • Fixed an issue with Shift key down not being reflected in SKSTAT while another key was already being held. (Thanks to MaPa)
  • The Recommendations page now has a note if the keyboard is set to cooked mode.
  • Fixed crash in Disk Explorer when write flush fails due to another program locking the disk image file, like a virus scanner.
  • Disk Explorer now forces read-only mode when the disk image file being mounted is marked read-only.

 

The SpartaDos Menu program fails with error 130, which implies the D: handler is missing. I have H: and P: intercepts on but not CIO Burst, but I don't see how those would cause that error.

 

I can't reproduce this with the menu utility in SpartaDOS 3.2g. The one in SpartaDOS X doesn't use CIO at all to access the disk, so the options you mentioned wouldn't matter for that version.

  • Like 2
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...