Jump to content
IGNORED

Altirra 2.00


phaeron

Recommended Posts

I am not sure about emulating tapes, but maybe you can add possibility of support of tapes/cas files with non standard blocks?

http://blanty.net/atari/BombFusion.zip is cas which is stopping to read after 40 blocks - start of non standard blocks.

Wave is loaded, but file is 92 times bigger... ( http://blanty.net/atari/BombFusion.7z )

More about this format here (PL only): http://www.atari.org.pl/forum/viewtopic.php?id=9087

 

And what about support of "real" turbo formats - is it possible?

Link to comment
Share on other sites

  • 2 weeks later...

phaeron,

 

Are you planning to implement an input record and playback feature in Altirra sometime in the near future, please? It would make an excellent tool for game walkthroughs and/or High Score Club games playback. Compatibility with the MESS input file format would be a plus. Thanks.

Link to comment
Share on other sites

The BombFusion tape has A8CAS FSK extension blocks which Altirra doesn't support yet... I can support those, but haven't gotten around to doing so yet.

 

Input recording is touchy as it requires precise synchronization in order to replay properly, so I'd have to think carefully about how to do that. The issue that comes to mind with trying to read the MESS format is that the timing for the input transitions may not be defined precisely enough for other emulators to use it. Probably the most stable form of specification would be to define all inputs as changing at the beginning of vertical blank and having them recorded as such, but then we're getting into when each particular emulator issues input changes into their emulations.

Link to comment
Share on other sites

The BombFusion tape has A8CAS FSK extension blocks which Altirra doesn't support yet... I can support those, but haven't gotten around to doing so yet.

 

When you do fix this Avery, could you ensure that the sound for this particular game is completely disabled (and impossible to enable) in the emulator? :)

Link to comment
Share on other sites

Guys, Altirra see's my gamepad OK, but only one button. For games like Defender it would be nice to map the spacebar to another button - is this possible?

 

Do you see more than one button in Control Panel? You should be able to map spacebar to button 1 or any other button on the gamepad. You need to create a new input map that also has the "console" controller in order to do this. Once that is added, you can map its Space Bar input to one of the gamepad buttons.

 

When you do fix this Avery, could you ensure that the sound for this particular game is completely disabled (and impossible to enable) in the emulator? :)

 

The emulator can only objectively execute code and cannot make subjective assessments of the sound. :)

Link to comment
Share on other sites

The emulator can only objectively execute code and cannot make subjective assessments of the sound. :)

 

It's simple, a good old hardcoded routine of:

 

If(MD5(CurrentTapeFile)==MD5(Bombfusion))

{

disableSoundUntilNewGameLoaded();

}

 

 

Something like that'll do! :) :) :)

Link to comment
Share on other sites

Guys, Altirra see's my gamepad OK, but only one button. For games like Defender it would be nice to map the spacebar to another button - is this possible?

 

Do you see more than one button in Control Panel? You should be able to map spacebar to button 1 or any other button on the gamepad. You need to create a new input map that also has the "console" controller in order to do this. Once that is added, you can map its Space Bar input to one of the gamepad buttons.

 

When you do fix this Avery, could you ensure that the sound for this particular game is completely disabled (and impossible to enable) in the emulator? :)

 

The emulator can only objectively execute code and cannot make subjective assessments of the sound. :)

 

Thanks for that, it works! I didn't know about the "Controller" step - but after that it was a breeze. Thanks a lot!

Link to comment
Share on other sites

  • 4 weeks later...

Couple of questions / requests:

 

1. How does one use the BX command in the debugger?

2. Is it possible to specify break on access for a memory range? I'm trying to pinpoint rogue code which is corrupting the program area - it would be a whole lot easier if I could just mark a whole memory region as "break on write".

3. Is there any hope that state files might become a reality? This would be a real boon for collaborative development (i.e. when MrFish deftly breaks the GUI, it would be nice if he could send me a state file to study). :)

Link to comment
Share on other sites

1. How does one use the BX command in the debugger?

 

It causes a break into the debugger when the condition that you specify is true. Example: bx "pc=ciov and x=$10". What it does under the hood is attach an additional conditional expression onto a PC or memory access breakpoint. Thus, you can't do an omnipresent breakpoint like x=4 that would force the condition to be checked every cycle. In current versions the bx command can do anything that the bp and ba commands can do.

 

Note that the debugger has built-in help for all commands, i.e. .help bx.

 

2. Is it possible to specify break on access for a memory range? I'm trying to pinpoint rogue code which is corrupting the program area - it would be a whole lot easier if I could just mark a whole memory region as "break on write".

 

Yes, there are two ways to do this. One is a length argument on the break-on-access command (ba 1000 L400) and the other is a pair of comparisons in a breakpoint expression (bx "write>=$1000 and write<$2000 and pc < $c000). In the latter case, the expression has to be structured such that the debugger can fish the range conditionals out of the expression. Recent versions also allow additional address checks, i.e. bx "write>=$d400 and write<=$d4ff and write!=wsync".

 

3. Is there any hope that state files might become a reality? This would be a real boon for collaborative development (i.e. when MrFish deftly breaks the GUI, it would be nice if he could send me a state file to study). :)

 

Some day is all I can guarantee. :P

Link to comment
Share on other sites

1. How does one use the BX command in the debugger?

 

It causes a break into the debugger when the condition that you specify is true. Example: bx "pc=ciov and x=$10". What it does under the hood is attach an additional conditional expression onto a PC or memory access breakpoint. Thus, you can't do an omnipresent breakpoint like x=4 that would force the condition to be checked every cycle. In current versions the bx command can do anything that the bp and ba commands can do.

 

Note that the debugger has built-in help for all commands, i.e. .help bx.

 

Ah yes - I'd forgotten about .help <command>. ;)

 

2. Is it possible to specify break on access for a memory range? I'm trying to pinpoint rogue code which is corrupting the program area - it would be a whole lot easier if I could just mark a whole memory region as "break on write".

 

Yes, there are two ways to do this. One is a length argument on the break-on-access command (ba 1000 L400) and the other is a pair of comparisons in a breakpoint expression (bx "write>=$1000 and write<$2000 and pc < $c000). In the latter case, the expression has to be structured such that the debugger can fish the range conditionals out of the expression. Recent versions also allow additional address checks, i.e. bx "write>=$d400 and write<=$d4ff and write!=wsync".

 

 

Fantastic. This is unimaginably useful. :D

 

3. Is there any hope that state files might become a reality? This would be a real boon for collaborative development (i.e. when MrFish deftly breaks the GUI, it would be nice if he could send me a state file to study). :)

 

Some day is all I can guarantee. :P

 

Heh, OK.

 

Many thanks for these very swift answers. You've been immensely helpful.

Edited by flashjazzcat
Link to comment
Share on other sites

  • 3 weeks later...

It would be cool to be able to remap not only joysticks but also the Atari keyboard itself! There is no option to remap e.g. the start, option and select keys to other keys than the function keys.

 

Moreover there is still no sync to screen option. Emulation would be a little bit faster or slower but fluid scrolling would excuse that behavior... ;)

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...