Jump to content
IGNORED

Alitirra BASIC, OS, and/or floating point ROMs on real hardware?


reifsnyderb

Recommended Posts

Hello,

 

I was reading through the page on Alitirra BASIC (https://atariwiki.org/wiki/Wiki.jsp?page=Altirra Basic) and found a line where it says:

 

 

"The other main source of slowness in Atari BASIC was the floating point (FP) routines. Turbo-BASIC XL replaced these for a great improvement in performance. Altirra BASIC does not, it calls whatever FP routines are found in the machine's ROMs. However, the Altirra emulator contains a second set of FP ROMs that can be optionally turned on, addressing this issue. This FP package, unlike TURBOs, remains fully compatible with Atari's original version and is suitable for burning to ROM."

 

In addition to trying out Altirra BASIC on real hardware, I've made up an EPROM with Atari BASIC Rev. C and installed it on one of my computers as an upgrade.  I've noticed Alitirra BASIC runs a lot faster than Atari BASIC and found some online comparisons as well.  Other than speed-related issues and in the interest of compatibility, I was wondering if there are any known compatibility issues with doing one of the following:

 

1.  Use Atari's OS with Altirra floating point ROMs and Alitirra BASIC.

2.  Use Altirra OS with Altirra floating point ROMs and Alitirra BASIC.

 

The idea is to put together a set of ROMs for a 320k XL computer that has an option for complete compatibility (Atari OS & Atari BASIC C), an option that is bug-free and fast (see above), and (maybe) an option with omniview (for 80 columns).

 

 

 

 

 

 

 

 

Link to comment
Share on other sites

I guess most/all combinations should be valid.

Try in emulation first, turn off all "patches" such as fast SIO and emulated devices like P: and H:

 

My first test would be Altirra Basic with stock Atari OS to see if it works with the stock FP.  Then try Altirra OS with Atari Basic.

At least one replacement FP goes beyond the default 2K using part of the $C000 portion of the OS as well.  Though I suspect Altirra's one probably doesn't.

 

My ideal would probably be Altirra FP with stock or lightly modified OS.  In fact that's also one to test out to ensure there's no extra code outside the $D800 area.

 

Or alternatively phareon will probably come in here and tell us how it all fits together anyway.

Link to comment
Share on other sites

15 minutes ago, Rybags said:

I guess most/all combinations should be valid.

Try in emulation first, turn off all "patches" such as fast SIO and emulated devices like P: and H:

 

My first test would be Altirra Basic with stock Atari OS to see if it works with the stock FP.  Then try Altirra OS with Atari Basic.

At least one replacement FP goes beyond the default 2K using part of the $C000 portion of the OS as well.  Though I suspect Altirra's one probably doesn't.

 

My ideal would probably be Altirra FP with stock or lightly modified OS.  In fact that's also one to test out to ensure there's no extra code outside the $D800 area.

 

Or alternatively phareon will probably come in here and tell us how it all fits together anyway.

Agreed.

 

Altirra BASIC runs fine on a stock Atari OS with the stock FP.  The only thing I've noticed is that since Atirra BASIC is faster that some BASIC programs have timing problems with their graphics and sound.  i.e.  The Enterprise program has very short sounds.  This, of course, is because the program was designed around the speed of Atari BASIC and not a faster BASIC.

 

Paging @phaeron...

Link to comment
Share on other sites

15 minutes ago, phaeron said:

The AltirraOS math pack is self-contained in $D800-DFFF like the original math pack, you can splice it into other OS ROM images.

 

Am I correct in assuming, then, that the best compatibility would be to have at least the following 2 configurations?

 

1.  Atari OS, Atari FP, Atari BASIC Rev. C  (for complete compatibility)

2.  Atari OS, Altirra FP, Altirra BASIC  (for higher speed BASIC execution)

 

 

Link to comment
Share on other sites

I just tried splicing an Atari Rev 4 OS with Altirra FP.  It all looked good and spliced at the right place.  Running this in the Altirra Emulator resulted in the self test being ran instantly and the first ROM block failing.  I guess the OS has some sort of checksum in it.

Link to comment
Share on other sites

1 hour ago, Rybags said:

Yes.  It's a good idea to have the checksum set properly, there's the rare bit of software that checks it and stops running if it's wrong.

I think someone has made a program to do it for you but don't have a link.

Hello,

 

If anyone has a link or copy posted somewhere that would be great! 

 

Thanks!

 

Brian

 

Link to comment
Share on other sites

I just installed the following OS's on the Flash Board I created and it works.   

 

OS                                     Order                  Offset on Flash Chip

Atari OS              Rev. 4        3      Default      0xC000-0xFFFF
Altirra OS                             2                      0x8000-0xBFFF
Omniview XE                        1                      0x4000-0x7FFF
OmniMon                             0                       0x0000-0x3FFF

 

 

1663315584_promboardinstalled2.thumb.JPG.28baa3e2e2c81bad2dd889893a311a0c.JPG

 

 

Here it is with the Altirra OS selected and running on an 800XL.

 

825436515_promaltirraoson800xl.thumb.JPG.6ade7ccf3734f4a1d681beb4b85250c2.JPG

 

 

 

 

The board has a lot of configuration options and can also be used in a 24 pin BASIC socket.

 

The board can be used for either 24 or 28 pin ROM sockets.  If it's in a 24 pin ROM socket, populate the outer pins such that the left-most 4 are empty.  There are a lot of solder jumpers on the board for configuration.  Most likely, not all will be used.  The jumpers with a "4" and "8" on each side configure the size of the ROM socket.  "4" for a 24 pin socket, "8" for a 28 pin socket.  The row of 5 are configured like the jumpers on a 600XL.  That is two jumpers are soldered together, leaving one jumper by itself.  So, if a 24 pin socket is used, the jumper closest to the "4" is soldered to the jumper next to it then the middle jumper is soldered to the jumper closer to the "8".  This leaves the jumper by the "8" alone.  

 

This board can be used for a SST39SF0x0 PLCC-32 flash RAM chip.  The chip will be flashed then soldered to the board.  The "x" I left in the chip name is because this board could be used for the 128k, 256k, or 512k chip.  However, only 128k would be used.  This is both because I could do this and because of the chip shortage.  If the 128k chips aren't available, then a 256k chip could be substituted.  If a larger chip is used, it's "NC" connections need grounded.  So, on the bottom, there are two jumpers labeled "7" and "8".  This is for A17 and A18.  If a chip larger than 128k is used, solder one or both jumpers to ground to set that address line to zero.

 

There are resistors on the top of the board.  These resistors can be configured as pull-up or pull-down resistors.  These resistors are also optional depending upon the configuration.  So, if you want to use them, install them.  On the bottom of the board are jumpers that can be soldered to set the resistor as either pull-up or pull-down.  When used with 16k banks, the A13 resistor won't be used for 16k banks because it would conflict with A13.  

 

On the left side of the board are 4 through-hole connections.  These can be connected to a switch or switches to set which bank is being used for the ROM.  "3" is A13, "4" is A14, etc.  As above, don't use the "3" connection if using the board for a 16k ROM chip.

 

 

 

 

  • Like 1
Link to comment
Share on other sites

I need to do some extensive testing but I decided to go with using Altirra OS 3.33 and Altirra BASIC 1.58 as an option.

 

-- This 800XL board now has the following:

 

   Atari OS v. 4

   Atari BASIC Revision C

 

   or

 

   Altirra OS 3.33

   Altirra BASIC 1.58

 

   This is selected by switching the RF channel switch.  Since the Altirra OS 3.33 has it's faster floating point ROMs,

   using the Alitirra option should result in BASIC programs running much faster than with the Atari option.

   (If the tests I've seen in youtube are correct, Altirra BASIC is more than twice as fast as Atari BASIC.)

 

-- There is now 320k of internal memory (RAMBO) available that can be disabled as per Atari's PBI standard.

 

-- The video has been upgraded to S-Video.  (Jumper with 100 ohm resistor is on the underside with C54 and C56 removed.) (RF is disabled.)

 

-- The PBI now has +5VDC.

 

I decided not use use the Omniview XE operating system as I found some other incompatibilities.  It's a shame because the 80 column feature is really cool. 

 

With different switches, it's quite possible to have a few cartridge options and a few operating system options with those flash RAM adapters I made up.  But the case would have to be modified.  Actually, those flash RAM chips have Omnimon, Omniview, and Speedscript 3.0 installed.  They just aren't available due to the switch only allowing for 2 options.

 

 

1731156996_Upgraded800XL.thumb.JPG.ea5f807a52e373b2c54cb054d3585088.JPG

 

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