Jump to content
IGNORED

High-speed SIO patch source code


Shawn Jefferson

Recommended Posts

Hi,

 

I have been trying to track down source code for a high-speed SIO patch for a project I am working on, but haven't had any luck.  I was hoping someone here may have some source for one they can post for me?

 

Thanks!

 

Atari Programmers Wiki -> http://www.strotmann.de/twiki/bin/view/APG...eedyLoadFastSIO

 

Mini Speedy Handbook --> http://www.strotmann.de/twiki/bin/view/Inf...ek/MiniSpeedyCs

 

Speedy Handbook and ROM Listing --> http://www.strotmann.de/twiki/bin/view/Inf.../SpeedyTemFifty

English Version --> http://www-user.tu-chemnitz.de/~sgl/atari/...eedyhb_eng.html

 

Carsten

Link to comment
Share on other sites

Thanks for posting that, Carsten, however, it seems that this would only work with the Speedy drives, since I cannot download any code from a happy drive, or more importantly APE/SIO2PC ?

 

I didn't see any code that actually patches the OS there, just code to download the high-speed driver from a speedy drive.

Link to comment
Share on other sites

Thanks for posting that, Carsten, however, it seems that this would only work with the Speedy drives, since I cannot download any code from a happy drive, or more importantly APE/SIO2PC ?

 

I didn't see any code that actually patches the OS there, just code to download the high-speed driver from a speedy drive.

 

Hello Shwan,

 

that's right. I will download and disassemble the Speedy Driver and will post the SOurcecode on the Wiki.

 

It would be nice if APE and SIO2PC would support these SIO Commands. AtariSIO ( http://www.horus.com/~hias/atari/ ) for Linux already supports these commands.

 

If you download the latest Source, look into

highspeedcode.src

 

This should be the Speedy High Speed SIO Driver Code in 6502 Assembler.

It's GPL'd code, be aware if your code has a different license.

 

Best regards

 

Carsten

Link to comment
Share on other sites

Full HDI OS ROM Sourcecode

 

http://www.strotmann.de/twiki/bin/view/APG/HdiSource

 

HDI - High-Density Disk Interface

 

The interface for connecting up to 4 standard drives to the XL/XE. Here you can mix 3,5" and 5,25" floppies at will. Required is that the drive supports the Disk Change signal at pin 34 of the Shugart bus. It doesn't support Medium Density (128 bytes/sector in MFM mode and 1.2 MB drives). Maximum transfer rate: 500 Kbit/s (1.44 MByte disks).

 

The HDI is designed, build and all Source written by Erhard Pütz, (aka ABBUC Floppy Doc, Atreju).

 

Best Regards

 

Carsten Strotmann

Link to comment
Share on other sites

Ok, I did some experimenting using this code as a basis.

 

When I send the $3F (get high speed index) command to the drive, where does it return the speed index? DSTATS?

 

http://www2.asw.cz/~kubecj/asio.htm

 

This page is confusing, it shows a table with the speeds and two columns command and data. What does that mean?

Link to comment
Share on other sites

Ok, I did some experimenting using this code as a basis.

 

When I send the $3F (get high speed index) command to the drive, where does it return the speed index?  DSTATS?

 

http://www2.asw.cz/~kubecj/asio.htm

 

This page is confusing, it shows a table with the speeds and two columns command and data.  What does that mean?

 

Data send back from Floppy will always stored in the memory location pointed to by

DBUF = $304/$305

 

So you decide where the SIO Handler will store the information.

 

The different floppy types use different speed for Data frames and command frames. Some floppies (US Doubler/Speedy) will send Command Frame and Data Frame in High Speed.

XF551 will send Command Frame in normal Speed ($28) and Data in High Speed ($10)..

 

Because of that it is good to load the High Speed SIO Driver from the Floppy instead of writing a bulky driver that includes code for all possible combinations.

 

Best regards

 

Carsten Strotmann

Link to comment
Share on other sites

A question for anyone who might know:

 

When you send $3F to APE, what speed index should it respond with?

 

I haven't gotten anywhere with this code unfortunately. I can't seem to grok what it is doing with the table.... it seems to store a 1 into the DUNIT index of the table (8 bytes in the table) when it seems to me that it should be storing the speed index there shouldn't it?

 

Also, you put your speed index number into AUDF3 right? The code seems to do that in the SIO handler, but how that value get there is beyond me. Also, using this code, as is, doesn't work for me at all.... it does all sorts of wierd stuff, like trying to format D3 as ultraspeed, changing the DUNIT to 8, etc... very wierd.

 

I guess I will have to disassemble another high-speed sio driver and try to figure out what it is doing.

Link to comment
Share on other sites

Hi,

 

I found this sourcecode of the BiboSoft Sector Copy distributed with the Speedy

 

http://www.strotmann.de/twiki/bin/view/APG...riSioSectorCopy

 

In the file DSKSYS there are routines to check for High Speed Drives and an universal HighSpeed Sio Routine.

 

All comments are in german, I'll try to translate tomorrow the High Speed parts.

 

Best regards

 

Carsten

Link to comment
Share on other sites

Thank you!  For some reason this code seems easier for me to understand, even with the German comments!  I'll try it out as soon as possible and see if I can get it working with my project.

 

Thanks for your help with this!

 

I have translated parts of the source

 

and attached an ATR and the Assembled Version of the Sector Copy to test it with your floppies.

 

Best regards

 

Carsten

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