Jump to content
IGNORED

Mega Speedy software and logic V1.10 released


HiassofT

Recommended Posts

can you in detail describe what the fix in the high speed code was for NTSC and what the difference was PAL v NTSC etc. Delving into SIO issues, this could make the scope of understanding much better

The issue is that the highspeed serial receive code in the original Speedy ROMs is a bit too slow to keep up with full sector transfers. The timing is marginal for PAL Ataris and just too slow for NTSC Ataris (which run a tiny bit faster than PAL Ataris). Kudos to phaeron for analyzing that, more details are in his post here: http://atariage.com/forums/topic/263679-strange-u1mb-issue/page-2?do=findComment&comment=3744532

 

I've rewritten the highspeed receive code in the Speedy ROM so that it has enough headroom to synchronize on each start bit and samples the SIO data line at the correct position - in the middle of each bit. This code can now keep up both with the PAL and NTSC Atari transfer speeds and also should work better when connecting the drive to a PC (using a 1050-to-PC interface).

 

Unfortunately we don't have the source code to the Speedy ROMs, so I implemented the fix for the latest 1.6 Speedy ROM version (which came from the Super Speedy and is used as a base for the Mega Speedy ROM). I'm binary patching the 1.6 ROM with assembled code fragments and also had to move a few other Speedy ROM routines to new locations to make room for the slighly longer fixed highspeed receive code. I've also bumped the embedded Speedy ROM version number from 1.6 to 1.7 to make it clear that this ROM is not the original 1.6 version.

 

The ROMs for "Speedy mode" slots used the somewhat older 1.5 ROM version and since I didn't want to binary patch these as well I simply bumped it to the patched 1.7 version.

 

So, all Speedy modes (Speedy, Super Speedy, Mega Speedy) now use the same Speedy ROM version.

 

so long,

 

Hias

  • Like 4
Link to comment
Share on other sites

there was a book from Compyshop with the Speedy ROM listing - isn't that the source ?

The are 2 problems with that listing.

 

minor problem: noone OCRed that yet.

major problem: this is the source code of Speedy ROM version 1.0 and there have been quite a lot of changes between 1.0 and 1.6.

 

Having the original source code, full with comments, of version 1.5 or 1.6 would make things a lot easier.

 

so long,

 

Hias

  • Like 1
Link to comment
Share on other sites

Thank you... very nice and with the links and other information provides a good degree of understanding. I really am re-learning things I already should have known. But it's nice to have it all put back together and others are benefiting from it as well so I guess it's all good... I wonder if I should give myself more time to be back or if this is all part of the journey...

Edited by _The Doctor__
Link to comment
Share on other sites

I've uploaded the new V1.10 versions of the Mega Speedy software and CPLD logic to my website:

 

CPLD logic V1.10

Software V1.10

 

Changes since the last V1.00a release:

  • logic, software: add support for IS Plate mode
  • software: update Speedy ROMs to fix highspeed issues on NTSC systems
  • software: update MyPicoDos to 4.06 final version
To use the newly added IS Plate mode you first have to update the Xilinx CPLD logic - pinout of the JTAG connector pads is here: http://www.horus.com/~hias/megaspeedy/logic/jtag-connector-pinout.jpg- and then update the config and flasher ROM slots.

 

If you can't (or don't want to) update the CPLD logic just update the flasher and Speedy ROM slots with the new ROM versions. The IS Plate mode in flasher and Mega Speedy boot menu will be non-functional but everything else will work fine.

 

PS: Big thanks to Nir Dary for info about IS Plate, I didn't know about this upgrade before!

 

so long,

 

Hias

 

Hello HiassofT,

 

The flash rom SST38SF040 when config is bad how to flash it, wich tool i can use on my pc usb version where to buy.

Gr.

Marco

Link to comment
Share on other sites

The flash rom SST38SF040 when config is bad how to flash it, wich tool i can use on my pc usb version where to buy.

An easy to get and cheap solution is the well known Autoelectric TL866 - you can buy it rather cheap on ebay from various dealers in asia. Make sure you buy a set that includes a bunch of PLCC adapters. Quality of these is about as low as you can expect when buying cheap chinese stuff but they'll get the job done.

 

BTW: the flash chip used on the Mega Speedy is an SST 39SF040, just noticed there seems to be a typo in the schematic.

 

so long,

 

Hias

Link to comment
Share on other sites

Sorry for hijacking this thread, but.... The Happy has broadcast mode, making it possible to write to three drives at ones. Can the MegaSpeedy (in MegaSpeedy mode) do that too?

I haven't looked into the Happy software needed to do this (not sure if I even have it), but quite certainly it just uploads some code to the happy drives plus has some special code running on the Atari to handle this.

 

Such a feature can probably be implemented on almost any upgrade that has some RAM and allows a user to upload and run code there (eg Duplicator and Speedy) - someone "just" needs to write the software.

 

Hardware-wise the majority of upgrades are quite similar, they just add 8k (or more) of RAM and come with their own ROM and basically that's it. As soon as you can upload and run code in the RAM the ROM contents don't matter much and you can do the same things on a happy and a speedy.

 

so long,

 

Hias

  • Like 1
Link to comment
Share on other sites

An easy to get and cheap solution is the well known Autoelectric TL866 - you can buy it rather cheap on ebay from various dealers in asia. Make sure you buy a set that includes a bunch of PLCC adapters. Quality of these is about as low as you can expect when buying cheap chinese stuff but they'll get the job done.

 

BTW: the flash chip used on the Mega Speedy is an SST 39SF040, just noticed there seems to be a typo in the schematic.

 

so long,

 

Hias

Thnx i found one on banggood round 50 euro.

 

 

Gr.

Marco

Link to comment
Share on other sites

Hello Matthias

 

...- someone "just" needs to write the software.

 

If somebody would write the software, Wolfgang would probably crown him king/her queen.

 

Sincerely

 

Mathy

 

PS for those not in the know: Wolfgang is the president (and one of the founders) of the ABBUC. Wolfgang and his wife and kids have been copying zillions of floppies of the ABBUC Magazine over the last 32 years using the SuperSpeedy. One by one.

  • Like 2
Link to comment
Share on other sites

I've uploaded the new V1.10 versions of the Mega Speedy software and CPLD logic to my website:

 

CPLD logic V1.10

Software V1.10

 

Changes since the last V1.00a release:

  • logic, software: add support for IS Plate mode
  • software: update Speedy ROMs to fix highspeed issues on NTSC systems
  • software: update MyPicoDos to 4.06 final version
To use the newly added IS Plate mode you first have to update the Xilinx CPLD logic - pinout of the JTAG connector pads is here: http://www.horus.com/~hias/megaspeedy/logic/jtag-connector-pinout.jpg- and then update the config and flasher ROM slots.

 

If you can't (or don't want to) update the CPLD logic just update the flasher and Speedy ROM slots with the new ROM versions. The IS Plate mode in flasher and Mega Speedy boot menu will be non-functional but everything else will work fine.

 

PS: Big thanks to Nir Dary for info about IS Plate, I didn't know about this upgrade before!

 

so long,

 

Hias

 

Hello HiassofT,

 

question wich file rom must i used for the mega speedy slots 1 - 4 (the flasher.rom file or else ......) it is now mega speedy 1 speedy 1.5.

 

Greetings Marco

Link to comment
Share on other sites

I haven't looked into the Happy software needed to do this (not sure if I even have it), but quite certainly it just uploads some code to the happy drives plus has some special code running on the Atari to handle this.

Such a feature can probably be implemented on almost any upgrade that has some RAM and allows a user to upload and run code there (eg Duplicator and Speedy) - someone "just" needs to write the software.

 

Right. And it wouldn't be too difficult to make an universal version of the software so that it works with any combination of different 1050 enhancements (Happy, Duplicator, Speedy).

 

My VAPI imaging tool works with any of these enhancements. The uploaded code is almost identical for all of them, assembled from the same source. And once the specific code was uploaded to the drive, the external software doesn't care anymore exactly with which enhancement is operating. They are identical at that stage.

 

The problem with this type of development is that it is difficult to test and to debug. It might be easier nowadays with the advent of the MegaSpeedy and full drive emulation under Altirra.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Not sure if a dump of the IS Plate ROM is available somwehere on the 'net.

 

Some more info about this upgrade is available here:

http://atariage.com/forums/topic/254539-the-uk-1050-is-plate-upgrade/

http://www.page6.org/archive/issue_27/page_50.htm

 

so long,

 

Hias

Hello all atari users,

 

Who has the IS plate rom?

Who can upload it here at atariage.

 

Gr.

Marco

Link to comment
Share on other sites

  • 2 months later...

The issue is that the highspeed serial receive code in the original Speedy ROMs is a bit too slow to keep up with full sector transfers. The timing is marginal for PAL Ataris and just too slow for NTSC Ataris (which run a tiny bit faster than PAL Ataris). Kudos to phaeron for analyzing that, more details are in his post here: http://atariage.com/forums/topic/263679-strange-u1mb-issue/page-2?do=findComment&comment=3744532

 

I've rewritten the highspeed receive code in the Speedy ROM so that it has enough headroom to synchronize on each start bit and samples the SIO data line at the correct position - in the middle of each bit. This code can now keep up both with the PAL and NTSC Atari transfer speeds and also should work better when connecting the drive to a PC (using a 1050-to-PC interface).

 

Unfortunately we don't have the source code to the Speedy ROMs, so I implemented the fix for the latest 1.6 Speedy ROM version (which came from the Super Speedy and is used as a base for the Mega Speedy ROM). I'm binary patching the 1.6 ROM with assembled code fragments and also had to move a few other Speedy ROM routines to new locations to make room for the slighly longer fixed highspeed receive code. I've also bumped the embedded Speedy ROM version number from 1.6 to 1.7 to make it clear that this ROM is not the original 1.6 version.

 

The ROMs for "Speedy mode" slots used the somewhat older 1.5 ROM version and since I didn't want to binary patch these as well I simply bumped it to the patched 1.7 version.

 

So, all Speedy modes (Speedy, Super Speedy, Mega Speedy) now use the same Speedy ROM version.

 

so long,

 

Hias

 

 

Hello Hias,

I'm a little bit confused:

 

In the readme.txt file I found the following:

Flasher
 Speedy ROM V1.6 + Flasher
Mega Speedy
 slot 1: Speedy ROM V1.6 + flasher
 slot 2: Speedy ROM V1.6 + flasher
 slot 3: Speedy ROM V1.6 + flasher
 slot 4: Speedy ROM V1.6 + flasher
Super Speedy
 slot 1: Speedy ROM V1.5 + Super Copy
 slot 2: Speedy ROM V1.5 + Super Copy
 slot 3: Speedy ROM V1.5 + Super Copy
 slot 4: Speedy ROM V1.5 + Super Copy
Speedy
 slot 1: Speedy ROM V1.4 + Bibo DOS
 slot 2: Speedy ROM V1.4 + HSS Copy
 slot 3: Speedy ROM V1.4 + Floppy 2000 Utilities
 slot 4: Speedy ROM V1.4 + Bibo DOS

Now I replaced the descriptions above with the ROM file names included in the zip file.

Is this below correct?

Flasher
 flasher.rom
Mega Speedy
 slot 1: flasher.rom
 slot 2: flasher.rom
 slot 3: flasher.rom
 slot 4: flasher.rom
Super Speedy
 slot 1: speedy-supercopy.rom
 slot 2: speedy-supercopy.rom
 slot 3: speedy-supercopy.rom
 slot 4: speedy-supercopy.rom
Speedy
 slot 1: speedy-bibodos.rom
 slot 2: speedy-hss.rom
 slot 3: speedy-floppy2000.rom
 slot 4: speedy-bibodos.rom

Beside the fact that you bumped all Speedy ROM versions to 1.7, which ROMs were actually patched for NTSC?

 

flasher.rom only? all ROMs?

 

 

Best Regards

 

The Montezuma

Link to comment
Share on other sites

Hi Marcin!

 

Yes, your ROM file table is correct.

 

All Speedy, Super Speedy and Flasher ROMs now use identical drive firmware code with NTSC patches included.

 

This code is based on the latest Speedy version (V1.5 from the Super Speedy). Since I used V1.6 already for the previous Mega Speedy ROM I decided to name it V1.7. I dropped the separate version number for the Mega Speedy ROMs, since it already contains a version date string.

 

The drive firmware of the Mega Speedy is still slightly modified compared to the other Speedy ROMs, but that only affects the initialization code on reset and doesn't warrant a separate version number. If you look closely at the ROM you might notice there's a $4D (ASCII "M") byte (at $7FFA in the ROM file), right before the $17 version byte instead of $FF - you probably can guess what this "M" stands for :-)

 

so long,

 

Hias

  • Like 3
Link to comment
Share on other sites

Hi Marcin!

 

Yes, your ROM file table is correct.

 

All Speedy, Super Speedy and Flasher ROMs now use identical drive firmware code with NTSC patches included.

 

This code is based on the latest Speedy version (V1.5 from the Super Speedy). Since I used V1.6 already for the previous Mega Speedy ROM I decided to name it V1.7. I dropped the separate version number for the Mega Speedy ROMs, since it already contains a version date string.

 

The drive firmware of the Mega Speedy is still slightly modified compared to the other Speedy ROMs, but that only affects the initialization code on reset and doesn't warrant a separate version number. If you look closely at the ROM you might notice there's a $4D (ASCII "M") byte (at $7FFA in the ROM file), right before the $17 version byte instead of $FF - you probably can guess what this "M" stands for :-)

 

so long,

 

Hias

 

Thanks!

And how can I tell if the CPLD logic update to the version 1.10 was succesfull?

Shall it show 'I' (IS Plate) after u (SuperMax) and before FL (Flasher) when I rotate the know to the right?

How big shall the IS Plate rom be? 8K?

Link to comment
Share on other sites

And how can I tell if the CPLD logic update to the version 1.10 was succesfull?

Shall it show 'I' (IS Plate) after u (SuperMax) and before FL (Flasher) when I rotate the know to the right?

How big shall the IS Plate rom be? 8K?

There's no way for the software to determine which logic version is present.

 

You can update the config ROM with the latest version and it'll allow you to select the IS Plate slots regardless of what CPLD version is present, but when you activate them the drive will just lock up if you are using the original CPLD logic version (it doesn't know about the IS Plate mode and thus won't map any ROM or additional RAM).

 

But you can use this "feature" to easily determine if the current logic is present:

 

Run the current flasher version, use option 3 "Run drive code from RAM", select the IS Plate mode ("A") and upload the IS Plate ROM or a stock 1050 ROM (both are 4k in size and will work in IS Plate mode). If it comes back alive after uploading (you should hear the stepper and spindle motors, like on powerup) you have the current CPLD logic version installed. If it's "dead" you have the old logic installed.

 

so long,

 

Hias

Link to comment
Share on other sites

There's no way for the software to determine which logic version is present.

 

You can update the config ROM with the latest version and it'll allow you to select the IS Plate slots regardless of what CPLD version is present, but when you activate them the drive will just lock up if you are using the original CPLD logic version (it doesn't know about the IS Plate mode and thus won't map any ROM or additional RAM).

 

But you can use this "feature" to easily determine if the current logic is present:

 

Run the current flasher version, use option 3 "Run drive code from RAM", select the IS Plate mode ("A") and upload the IS Plate ROM or a stock 1050 ROM (both are 4k in size and will work in IS Plate mode). If it comes back alive after uploading (you should hear the stepper and spindle motors, like on powerup) you have the current CPLD logic version installed. If it's "dead" you have the old logic installed.

 

so long,

 

Hias

 

Test passed :)

 

But I can't activate any IS Plate slot with the rotary knob... Is it normal?

It goes like that:

FL; E(1-4); S(1-4); y(1-4); o(1-4); t(1-4); H(1-4); U(1-4); A(1-4); d(1-4); u(1-4); and then FL again.

 

I can do that from the Megaspeedy menu / Flasher menu, but the display does not show 'I1 / I2 / I3 / I4'.

Link to comment
Share on other sites

My VAPI imaging tool works with any of these enhancements. The uploaded code is almost identical for all of them, assembled from the same source. And once the specific code was uploaded to the drive, the external software doesn't care anymore exactly with which enhancement is operating. They are identical at that stage.

Was this tool developed to a point that was shared publicly? It sounds very interesting to try, even if just for analysis of a disk since I guess there are better tools for making ATX's nowadays.

Link to comment
Share on other sites

the tools were not as user friendly as most would demand today, they were available, you had to request them and show an understanding of what you were about to join in doing.

greets ijor ;) remember when 2006 http://atariage.com/forums/topic/84600-vapi-tools-for-linux/?p=1029495

 

a quick tour of vapi (for ST you can find pasti as it's relative)

http://www.atarimania.com/atari-vapi.html

http://vapi.fxatari.com/

http://vapi.fxatari.com/vapi-faq.html

http://vapi.fxatari.com/docs/sa.html

http://vapi.fxatari.com/docs/Microprose-skew.html

 

and for some silly goodness how to get from VAPI to Atari in the real world... it's a lot of miles... it takes some time... :)

https://www.makemytrip.com/routeplanner/vapi-atari.html

 

you must ask for permission, you will either get it or you won't :)

Edited by _The Doctor__
Link to comment
Share on other sites

Was this tool developed to a point that was shared publicly? It sounds very interesting to try, even if just for analysis of a disk since I guess there are better tools for making ATX's nowadays.

 

I replied on the other thread (probably a bit off topic here): http://atariage.com/forums/topic/234684-atari-8-bit-software-preservation-initiative/page-35?do=findComment&comment=3957235

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