Jump to content
IGNORED

New Indus GT firmware


MrMartian

Recommended Posts

With additional RAM (the RAMCHARGER) a new ROM in the INDUS should be able to reach Speedy Speed. The Speedy ROM Source is available.

 

Carsten

 

Additional ram won't make much of a difference, processor speed is the key. Also, from experience, not all Ultraspeed patches support <$0A, so that speed is kind of a best of all worlds compromise.

 

Where might this Speedy source be available?

 

The Speed does approx the same speed as Synchomesh, as I understand, so the CPU should be able to handle the serial speed.

 

The Speedy-Sourcecode (Version 1.0) is available in the Speedy Manual as a ROM-Listing (temporary download). Unfortunatly all in German, but the Assembler Code should be readable. If you have questions, ask me.

 

Also we have the source for the HDI (High Density Interface), which was a 3.5" Floppy Interface created by Erhard Pütz. The HDI is Speedy Compatible.

HDI Source

 

Carsten

Edited by cas
Link to comment
Share on other sites

Aren't 3rd party A8 drives like Indus, Rana etc supposed to conform to the Atari/percom standards/protocols

 

 

If that's so, it should be a doddle to reprogram the hi-speed sio code w/i the indus GT...if it's anything like USD, it will use the DCB locations (0300h to 0311/12h) and jmp/jsr to the s/ciov location in the o/s

 

Almost but not quite right. True the DCB is used for Highspeed SIO but each high speed dos has it's own highspeed SIO routine.

Basicly, it doesn't use the IRQ vector unlike the OS SIO routine but instead monintors it in a tight loop.

It is this high speed routine that trips up most atari emulators by the way.

 

James

Link to comment
Share on other sites

I decided to tackle the Indus GT, and add US Doubler style Ultraspeed to it. Here's version 0.1! Program it into a 2732, and pop it in. Let me know if you see any issues with it. It works fine in the one I have, but that's not a great sample!

 

I've removed Syncromesh, since very little seems to support it, and added US at $0A (52Kbps). I haven't put in the custom format routine, so it only formats at the original skew. I may try adding that in, but for now I just want to make sure this seems to work for the majority of the people out there.

 

Enjoy

 

Hi-

 

I reprogrammed the 2732 today with your revised file. On a short-term test basis, my Indus recognizes and operates fine at UltraSpeed. It reads and writes well, but as you indicate, will only format with low speed skew. I never use ED, so that is a non-issue with me. Would be nice to have in the final version of this, but not essential to me.

 

Thanks for the very useful revisions.

 

-Larry

Link to comment
Share on other sites

Here's another possibility -- I think that I'll piggyback the 2732 with another + switch so that Synchromesh or UltraSpeed can be selected. By flipping the switch to Synchromesh, I can format disks to use with Ultraspeed. But I need to check that. Regular Synchromesh formats with a skew of 6. I think Super Synchromesh uses a skew of 5 (same as UltraSpeed) but it may be 4. And it's a good use for those 2732's I've collected out of old boards all these years!

-Larry

 

 

I decided to tackle the Indus GT, and add US Doubler style Ultraspeed to it. Here's version 0.1! Program it into a 2732, and pop it in. Let me know if you see any issues with it. It works fine in the one I have, but that's not a great sample!

 

I've removed Syncromesh, since very little seems to support it, and added US at $0A (52Kbps). I haven't put in the custom format routine, so it only formats at the original skew. I may try adding that in, but for now I just want to make sure this seems to work for the majority of the people out there.

 

Enjoy

Link to comment
Share on other sites

Latest, greatest! Version .04.

 

Changes:

  • Added custom format command 'f', which allows software to format Ultraspeed skew (or anything it wants...)
    Optimized code to maximize transfer speed, still needs some work

As before, test this out and let me know if you see any problems!

 

Enoy

 

I haven't tried the new one yet. Any particular keystroke combination(s) required for the format routine? Or is it self-prompting?

 

-Larry

Link to comment
Share on other sites

I haven't tried the new one yet. Any particular keystroke combination(s) required for the format routine? Or is it self-prompting?

 

-Larry

 

I'm not sure what you're asking.. The 1050 USD added another format command, from which the Atari could specify the sector arrangement. (look here for command $66) This is what I have implemented. I don't know how many actual programs support this, but SpartaDOS' xinit does. When you're formatting a disk, the last question is whether or not to use Ultraspeed skew. I remember other programs having options for it as well.

 

I could also implement it where, if the normal format command comes in at normal SIO rate, it does a normal skew format, or US skew if the command is received as US... Would that be useful?

Link to comment
Share on other sites

Hi-

 

I was asking if you had implemented your routine so that the user had to choose via keystrokes or prompt if the format will be in USD or standard skew. Since you have implemented your routine the same as USD, then that answers my question, and the USD routine works great as-is.

 

I am familiar with how Sparta Dos X handles the INIT command and also using the custom format routine. That custom format is really handy.

 

You've done a lot of good with this project! Now, I'll put my Indus in service all the time, instead of just taking it out of the garage occasionally to test something!

 

-Larry

 

I haven't tried the new one yet. Any particular keystroke combination(s) required for the format routine? Or is it self-prompting?

 

-Larry

 

I'm not sure what you're asking.. The 1050 USD added another format command, from which the Atari could specify the sector arrangement. (look here for command $66) This is what I have implemented. I don't know how many actual programs support this, but SpartaDOS' xinit does. When you're formatting a disk, the last question is whether or not to use Ultraspeed skew. I remember other programs having options for it as well.

 

I could also implement it where, if the normal format command comes in at normal SIO rate, it does a normal skew format, or US skew if the command is received as US... Would that be useful?

Link to comment
Share on other sites

Hi-

 

I was asking if you had implemented your routine so that the user had to choose via keystrokes or prompt if the format will be in USD or standard skew. Since you have implemented your routine the same as USD, then that answers my question, and the USD routine works great as-is.

 

I am familiar with how Sparta Dos X handles the INIT command and also using the custom format routine. That custom format is really handy.

 

You've done a lot of good with this project! Now, I'll put my Indus in service all the time, instead of just taking it out of the garage occasionally to test something!

 

-Larry

 

Thanks! I also have a firmware for the Trak that adds US, but I fried my Trak while developing it, so until I repair the power supply section, it's put away.. That's the reason I switched to the Indus.. :)

 

I'm going to keep tweaking this a bit more, as I think I can speed up reads just a bit more. Writes happen great, though..

Link to comment
Share on other sites

Argh! I made a stupid mistake, version .04 has a nasty bug.

 

I also applied some of the changes from that tweaked ROM. I couldn't do the faster stepping speed, as it was too fast for my drive, and I'm not sure how fast anyone else's is. It's best to leave as is, I think.

 

Here's .05!

Indus_gt_12.bin

Edited by MrMartian
Link to comment
Share on other sites

  • 2 weeks later...
Argh! I made a stupid mistake, version .04 has a nasty bug.

 

I also applied some of the changes from that tweaked ROM. I couldn't do the faster stepping speed, as it was too fast for my drive, and I'm not sure how fast anyone else's is. It's best to leave as is, I think.

 

Here's .05!

 

I've been using .05 for about a week, and it works beautifully. This is (IMO) sooo much nicer to use than Synchromesh. Great job!

 

-Larry

Link to comment
Share on other sites

I've been using .05 for about a week, and it works beautifully. This is (IMO) sooo much nicer to use than Synchromesh. Great job!

So, this is worth calling .99 or something? Maybe even 1.0? ;)

 

Hi-

 

Absolutely! I thought that .0X was pretty conservative. I usually give a program a .0X after the first 10 lines of code... :cool:

Link to comment
Share on other sites

  • 6 months later...
Argh! I made a stupid mistake, version .04 has a nasty bug.

 

I also applied some of the changes from that tweaked ROM. I couldn't do the faster stepping speed, as it was too fast for my drive, and I'm not sure how fast anyone else's is. It's best to leave as is, I think.

 

Here's .05!

How is this going? any more updates or work?

Would it b e possiable to get the source?

The z80 is very hard compared to the 6502..

 

James

Link to comment
Share on other sites

  • 2 weeks later...

Great job MrMartian!

 

Is it true that the indus inverts the data from the atari on the sio buss? I am not 100% on this. also is the FDC used in the indus the inverting data type?

 

well done. I have the USD rom disassembled here. want a copy of it?

James.

 

Nothing is inverted in this drive. AFAIK, the only drive I've seen with the inverted FDC was the 810..

 

I don't know much about the Indus, but AFAIK no drive inverts the data on the SIO bus (if you mean literally on the bus). What all drives do, is to invert the data on the disk.

 

The reason is, as I've read, a bug in the original 810 firmware. The 810 uses an FDC with an inverted data bus, so everything sent to the FDC (including both data and commands) must be inverted. It seems they inverted it twice though, once when receiving/transferring the data from/to the computer, and once again when transferring from/to the FDC. The net effect was that the data was written inverted on the disk. The bug was harmless, because it was performed both when reading and when writing.

 

Disregarding if the history is true or not, the fact is that for compatibility reasons, all Atari drives, including third party ones, write the data inverted on the disk sectors.

Link to comment
Share on other sites

Great job MrMartian!

 

Is it true that the indus inverts the data from the atari on the sio buss? I am not 100% on this. also is the FDC used in the indus the inverting data type?

 

well done. I have the USD rom disassembled here. want a copy of it?

James.

 

Nothing is inverted in this drive. AFAIK, the only drive I've seen with the inverted FDC was the 810..

 

I don't know much about the Indus, but AFAIK no drive inverts the data on the SIO bus (if you mean literally on the bus). What all drives do, is to invert the data on the disk.

 

The reason is, as I've read, a bug in the original 810 firmware. The 810 uses an FDC with an inverted data bus, so everything sent to the FDC (including both data and commands) must be inverted. It seems they inverted it twice though, once when receiving/transferring the data from/to the computer, and once again when transferring from/to the FDC. The net effect was that the data was written inverted on the disk. The bug was harmless, because it was performed both when reading and when writing.

 

Disregarding if the history is true or not, the fact is that for compatibility reasons, all Atari drives, including third party ones, write the data inverted on the disk sectors.

 

As soon as I read this, I thought to my self "Yea Right".

I then decided to check. I did 15 years ago dissemble the USD rom and put a lot of labels on things that I had worked out, not by any means complete, but enough to work out what most bits do.

I discovered that what you say is true. Any read or write to the floppy disk data sectors has a EOR $FF to invert the data.

I am trying to work my way through the Indus rom. boy is it hard but have found a few bits and the hardware registers so that is a start.

Have also done the XF551, but it is much harder to work out.....

 

James

Link to comment
Share on other sites

Only thing i remember about the indus gt...It had a built in 'poor mans version' of the USD format called 'synchromesh'

 

As Page 6 kept saying at the time...better off getting a 1050 (w/happy or USD), because, if anything goes wrong with the drive at least you've got a chance of getting it repaired

 

I remember that, way back when an Atari retailer called 'Home Entertainment Centre' in Birmingham (UK) used to import Indus GT's...I heard thaqt they went under and the premises were taken over by another well known Atari retailer 'Software Express'

Link to comment
Share on other sites

I remember that, way back when an Atari retailer called 'Home Entertainment Centre' in Birmingham (UK) used to import Indus GT's...I heard thaqt they went under and the premises were taken over by another well known Atari retailer 'Software Express'

 

I have had my Indus since 1984 (I think) and while it is built like a tank and a very nice drive, it is nowhere near as versatile as a Happy 1050 or USD 1050... at least not to me. :cool:

Link to comment
Share on other sites

I remember that, way back when an Atari retailer called 'Home Entertainment Centre' in Birmingham (UK) used to import Indus GT's...I heard thaqt they went under and the premises were taken over by another well known Atari retailer 'Software Express'

 

I have had my Indus since 1984 (I think) and while it is built like a tank and a very nice drive, it is nowhere near as versatile as a Happy 1050 or USD 1050... at least not to me. :cool:

 

It's a wounder that noone has written a software add in for the indus to make it work like a USD drive instead of syncromesh. also to make it act like an archiver.

With the ramcharger and a small hardware mod, it could be a bit writer as well. be able to copy anything then :)

 

James

  • Like 1
Link to comment
Share on other sites

  • 9 months later...
  • 2 years later...

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