Jump to content
IGNORED

Patch the stock OS with faster FP routines


morelenmir

Recommended Posts

Hi!

 

Errr.... Technically, yes, but this is because IEEE 754 uses only four bytes, The Atari BCD uses six bytes. With a six-byte binary representation, you could reach a higher precision than the math pack. This is because the BCD representation (to the base 100) has a much higher average round-off error than a binary representation (to the base of 2).

Yes, I know, that why i said "about 30 bits".

 

As there is no IEEE-754 format with 6 bytes (only 4 and 8 ), IMHO for an 8-bit computer, a custom binary format with 6 bytes, 32 bits of mantisa, no implicit bits, and a sign bit at top (for easier comparisons) would be more appropriate. This way, you can reuse a 32bit multiplication and you could have a range of 2^-16384 to 2^16383 (about 10^-4930 to 10^4930).

 

But, remember that for BASIC, the decimal floating point has the advantage of exactly printing the tokenized values, using a binary FP would mean not tokenizing numbers or accepting that "A=0.01" could be changed to "A=.0099999999984" or "A=.010000000002".

Link to comment
Share on other sites

Hello Michael

 

My 1200XL is in a cardboard box most of the time. So maybe F1-F12 are in the test. Maybe somebody who uses his or her 1200XL daily could check out what's in the selftest.

 

Sincerely

 

Mathy

 

Mathy if I recall correctly (I don't have an Atari here to verify), the self test is missing only those keys I mentioned in my last email (i.e., no CTRL+SHIFT combos and any unmapped keys in the A8's normal matrix). Since the PS/2 keyboard is capable of sending out ALL the CTRL+SHIFT combos and has a few unmapped keys as well, we are missing quite a few keys in the normal keyboard test. If those keys were included, it would be much more thorough.

 

And having a status display of the actual KBCODE Peek(764) would also be a nice extra touch, and prove handy if you are writing an alternative keyboard handler.

 

After all, part of this discussion was about replacing Atari's self test, so why not make it better :) .

  • Like 1
Link to comment
Share on other sites

Hello Michael

 

My 1200XL is in a cardboard box most of the time. So maybe F1-F12 are in the test. Maybe somebody who uses his or her 1200XL daily could check out what's in the selftest.

 

Sincerely

 

Mathy

On screen, in the keyboard test, In the top function key row above the 1200XL keyboard it has from left to right RESET, START, SELECT, OPTION, F!, F2, F3, F4, HELP, INVERSE, BREAK laid out just like the 1200XL keyboard. They all respond in the keyboard test, though RESET resets and HELP goes back to the self test menu. My BREAK key also doesn't respond, but I forget if that is normal or if I just found a broken key. I'll have to goto BASIC (did you catch that pun just then?)and see. But I don't recall what the layout was on my old 130XE self test, and my 800XL is down for repairs and I don't recall it's layout either.

 

I mention this because I was thinking they all had the same layout on screen for the keyboard test that the 1200XL had originally and the F1-F4 keys were N/C on the keyboard test. Because I'm NOT using the 1200XL OS right now, I'm using Warp+ OS*. The rest of the keyboard all works, with CONTROL and SHIFT only responding when pressed in conjunction with another key.

 

Now to check some of the other standard OS's on my 32-in-1...I guess Warp+ OS uses the 1200XL self-test because I just tried XEGS Rev. D OS and it's layout has HELP START SELECT OPTION RESET along the top and that is it, INVERSE and BREAK are down on the keyboard...just a happy coincidence that *WARP+ OS uses the original 1200XL Self-test I guess. So I can go to the other XL/XE OS's and relearn what their layouts are too.

 

I better go check the real 1200XL OS's now...Oh, yeah, 1200XL OS's go to the ATARI splash screen and you push HELP to enter Self-Test mode! Otherwise exactly the same as WARP+ OS's 1200XL Self-Test mode...

 

Can someone else verify that they have the 1200XL keyboard layout on their 32-in-1 Warp+ OS? Or is the 32-in-1 smart enough to test which computer it is in and run the appropriate self-test for that computer?

 

I just discovered that XL/XE Rev. A (NOT the 1200XL Rev. 10 & 11) has the exact keyboard layout as 1200XL 10 & 11 OS's! So does XL/XE Rev. B, so apparently all XL's have the same 1200XL keyboard self-test and all XE's have a newer one as XL/XE Rev. C and D OS from XE's and XEGS are the same too...among the standard revisions.

 

XL/XE Rev. "x" OS's are just called that on the 32-in-1 I assume, and A & B are XL and C & D XE. Of course ti's probably not that cut and dry, Like memory test? The extra memory banks of the 130XE aren't displayed on the 65XE or XEGS memory tests, but I'd think they would test RED for bad if that part wasn't enabled/disabled between the 64/128K computers...

Edited by Gunstar
Link to comment
Share on other sites

One of my 800xls has a custom OS I threw together years ago, with fast FP and fast E:.

 

It would be an interesting ABBUC Software Competition entry to write a program to build custom OS images - add a variety of patches, change some options (screen colour on boot, OPTION function on boot, key repeat etc)... heck, even replace Self Test with a small game or something.

Wasnt the self test not an instore demo? I felt like magician typing in BYE and select the sound test ;)

Link to comment
Share on other sites

Hello Michael

 

My 1200XL is in a cardboard box most of the time. So maybe F1-F12 are in the test. Maybe somebody who uses his or her 1200XL daily could check out what's in the selftest.

 

Sincerely

 

Mathy

Atari themselves, in a 1200XL ad I have, only claims 8 function keys including START, SELECT, OPTION, HELP and F1-F4, that serve up to 16 functions in conjunction with CONTROL for the second 8. (twice as many as the Commodore 64-they brag)

Edited by Gunstar
  • Like 1
Link to comment
Share on other sites

The PBI mechanism already allows for OS extensions such as hard disk drivers, high speed SIO, and additional CIO handlers ("Z:" for instance), so if you couple that with an OS with a fast FP package, you're already more than half way there. The rest (80 column display, etc) can be accomplished via soft-loaded drivers (see the extensive capabilities of SpartaDOS X in that respect).

 

A modular approach beats the monolithic approach every time, IMO.

Absolutely! Especially in the operational context of Incognito and Ultimate (and their elaborate and more sophisticated firmware loads)...

 

Here are good examples, that lend themselves to a "modular" environment, and with the FASTEST FP routines I have found (and extensively tested) to this day... 300% to 500% improvement in multiply / divide operations...

 

http://atariage.com/forums/topic/280107-atari-800-incognito-bringing-back-the-help-key/?do=findComment&comment=4059357

 

Cheers!

Edited by Faicuai
Link to comment
Share on other sites

I am absolutely fascinated with all these different projects that have been done to improve and customize the OS. It is nice to come across something implemented in the existing hardware!

 

I would certainly like to extract the Altirra OS FP and even math routines and put them into the stock OS. However that is my sticking point at the moment. I know--more or less!--what these patches are for, but I currently don't understand how to apply them physically to a file image of the stock OS.

 

Did anyone ever produce that ABBUC project to write a custom rom 'factory' patcher that David_P mentioned?

Link to comment
Share on other sites

Here are good examples, that lend themselves to a "modular" environment, and with the FASTEST FP routines I have found (and extensively tested) to this day... 300% to 500% improvement in multiply / divide operations...

 

http://atariage.com/forums/topic/280107-atari-800-incognito-bringing-back-the-help-key/?do=findComment&comment=4059357

 

 

Where did those fast FP routines come from?

  • Like 1
Link to comment
Share on other sites

Where did those fast FP routines come from?

NO IDEA!!! It is a very good question, indeed...

 

I originally found them already blended into an early 800XL rom available for download somewhere... I was very intrigued by its content when binary-comparing (on screen, side by side) with OEM rom. The first thing I noticed was the invasion / replacement of International character set (not that used, anyway).... and then evaluating its performance with System Information v2.x, as well as multiple basic interpreters and benchmarks... They turned out to be such a piece of work, that I decided to properly patch v3 and v4 (XEGS) roms with the code....

 

A MUST have if you have multi-rom capable platform like Incognito or Ultimate! You will be surprised by they performancr, in relative terms.

 

Cheers!

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