Jump to content
IGNORED

Altirra 1.5 final


phaeron

Recommended Posts

Gonna have to check this out.

 

Reverse-engineering parts of Pole Position is a bit of a pain. Expect some possible feature requests.

 

There's a trick that may help you with this. If you enable path tracking in CPU options, you can use the .pathreset and .pathdump commands to write out all of the code paths that are currently executing. The emulator will automatically insert a label for every instruction that is a branch, JSR, or interrupt target.

Link to comment
Share on other sites

IANAL, but here are the reasons I have such a stance about the Atari logo:

  • I've already been burned a couple of times in the past with legal issues, one of them being about a trademark.
  • The Atari trademark is an ACTIVELY used trademark, as in products have been shipped with it recently. Yes, we know it isn't the same Atari, but it's still being used.

I'm leaning on the safe side as I write Altirra, doing things like writing the replacement LLE/HLE kernels that allow software to be run without the Atari ROM images. If I end up with legal issues doing Altirra, I'd like for it not to be over an icon. I hope all of you understand. Besides, using the fuji for this wouldn't be very distinctive. If someone does come up with some cool icons, though, I'd be very interested.

Link to comment
Share on other sites

There's more to Atari than the Fuji, are the images of the disk drives and computers copyright?

 

Surely not?

 

An 810 face on is distinctive as is a 1050 and should lead it a suitable icon?

 

Atariwin has two such icons to choose from or copy as an idea.

Link to comment
Share on other sites

Just discovered something very odd indeed. Been debugging my word processor with Altirra and Atari800WinPlus: both configured to 1088K PAL machines. I got the program working in Atari800Win, then tried the same executable in Altirra:

 

Atari800WinPlus:

 

post-21964-126512248561_thumb.png

 

Altirra:

 

post-21964-126512253723_thumb.png

 

It's working fine in Atari800Win (apart from a few cosmetic glitches), but hangs with all the garbage in Altirra. It's crashed before hooking into Reset, so pressing Reset just exits to DOS. VBXE emulation is turned off.

 

EDIT: Just tested it on real hardware, and it works fine. I thought the ATR attached to drive 1 in Altirra might have been the problem, but I swapped it for the one Atari800Win was using and the problem persists. As far as I can tell from the debugger, the self-test ROM is being switched in. This doesn't happen elsewhere. The banking code is somewhat lengthy but I can confirm it works on a real machine.

 

Ah... forgot the 1MB expansion code is broken in the emulator. Forgetting that cost me a lot of wasted hours. icon_sad.gif Works fine with a compy upgrade.

Edited by flashjazzcat
Link to comment
Share on other sites

Ah... forgot the 1MB expansion code is broken in the emulator. Forgetting that cost me a lot of wasted hours. icon_sad.gif Works fine with a compy upgrade.

 

I fixed that a while back, and it was the opposite case (the self-test ROM wasn't ever enabling). I checked, and the self-test ROM seems to be working normally in current versions -- it only appears when extended RAM is disabled and both the kernel and self-test ROMs are enabled. Can you supply the output of the .pia command when the self-test ROM is unexpectedly?

Link to comment
Share on other sites

Phaeron, do you think you could add the source level debugger/profiler for the .lst files generated by CC65?

 

I may give you all the needed information + my sample source code is available here:

http://www.alamak0ta.republika.pl/profiler.html

 

I've had this in mind, although I have to say that when I actually tried cc65, I found its code output to be worse than I had expected.

 

I haven't gotten around to source mode yet, but I suppose it wouldn't be too hard to load cc65 labels at least.

  • Like 1
Link to comment
Share on other sites

I fixed that a while back, and it was the opposite case (the self-test ROM wasn't ever enabling). I checked, and the self-test ROM seems to be working normally in current versions -- it only appears when extended RAM is disabled and both the kernel and self-test ROMs are enabled. Can you supply the output of the .pia command when the self-test ROM is unexpectedly?

No problem:

 

Port A control:   3c
Port A direction: 00
Port A output:	00
Port B control:   3c
Port B direction: ff
Port B output:	31

 

Hope that helps. I've updated the program somewhat but it's still crashing will a bad instruction at 57FD under Altirra when 1088K is selected.

Edited by flashjazzcat
Link to comment
Share on other sites

I've had this in mind, although I have to say that when I actually tried cc65, I found its code output to be worse than I had expected.

 

Agreed! It doesn't do much optimisation for you. You have to do it the hard way and use the "register" keyword on frequently used variables or change the way that you solve the problem. Even then it might produce worse code than you had before :(.

Link to comment
Share on other sites

I've had this in mind, although I have to say that when I actually tried cc65, I found its code output to be worse than I had expected.

 

Indeed, even the old Action compiler generates faster code in most of cases.

However the CC65 is the only C compiler that is still actively developed, has a large library of useful functions and is very close to the language C standard.

 

This profiler in Altirra would be very useful for all the CC65 users.

 

regards,

Link to comment
Share on other sites

Also, the CC65 suite consists of the assembler (CA65) and linker (LD65) which many of us use to develop for the Atari, i.e. without involving any C compilation. The label file is produced by the linker so is not specific to C development. Indeed, you'd possibly have to have the C compiler not delete the temporary assembler file it generates and then you could swap between C and assembler views in the debugger ;)

Edited by Wrathchild
Link to comment
Share on other sites

I'm unable to get Altirra to run properly under wine. Keyclicks are immediate but there is a solid 8 second lag between a keypress and any activity on the screen.

 

I'm running OpenSuse 11.2, kernel version 2.6.31.5-0.1-default, with * cough * KDE.

 

Admittedly with just 1667 Mhz Athlon based system I'm running on a less than state-of-the-art machine. However, I can't imagine this could be the cause of my problems.

 

Suggestions anyone?

 

- Steve Sheppard

Link to comment
Share on other sites

+1 for cc65/ca65 debugging support.

 

cc65 package is like having a gcc + binutils for 6502, except that it's faster and better documented (I mean it, try to write a custom linker script for ld65 and then for ld, you'll see what I mean :)). If you add Altirra debugging/profiling support to this, it would be the dream 6502 development environment.

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