Jump to content

Recommended Posts

I was reading the Dos 3 manual (ducks) while sitting in the smallest room of my house (guess which one that is) :

 

"In addition to the Master Diskette 3 (CX8104), your ATARI Disk Drive comes with an ATARI Formatted Diskette 3 (CX8111). Although this diskette has no files or program data on it, it has been preformatted at the factory. Preformatting means the diskette was divided into tracks and sectors before packaging (Figure 3-1) so that it has an improved sector layout. This improved sector layout makes it possible for you to store and retrieve information more rapidly than is possible with diskettes formatted on your ATARI Disk Drive."

 

How do these improved sector layouts work? Or is this bogus and Atari just wanted you to buy these "improved" disks from them?

 

 

Share this post


Link to post
Share on other sites

On a standard drive it works. You do notice the faster loading (less space between the beeps) but it's not a big boost.

 

I've reproduced the effect of the layout by reading sectors backwards per track. So that's likely what they've done with the improved layout (sort of, actual sector interleave supposedly puts each next sector half a track away).

Custom drive upgrades will usually have software that can do custom formats like that. Some drives have an optimal layout that will be a good deal slower on a normal drive.

 

Note if you reformat the improved layout will be lost. You'd need to use a utility or command that just initializes the file system to new without an actual format.

Or just use a sector copier to copy certain sectors of a fresh formatted disk to that one... for an 88K 810 disk you'd want 1-3 and 360-368.

Edited by Rybags
  • Like 3

Share this post


Link to post
Share on other sites

I suppose that's interleave, i.e. sectors are not written contiguously on the floppy but in a pattern that will result in the next logical sector to be close to the location of the physical write head once the drive is finished with sending the last sector's data to the computer.

 

Below is an excerpt from an article found at Ataripreservation. I recall that there is another format for the Indus GT and that things change when you have a drive with a track buffer that can read a whole track at once and thus would not need to wait.

 

 

Sector interleave

-----------------
An FDC needs a little time to send sectordata to a buffer. During this time the disk keeps spinning at about 300 rpm. So, when a sector is recieved, the FDC has to wait for the next sector to pass by.
To avoid the waiting the disk has to be interleaved. By sector interleaving sectors are placed on the disk in the most efficient order. E.g. if it takes less than half a rotation to send data to the buffer, it's wise to use an interleave factor which is equal to the total sectors on the track divided by two. When the sectors are positioned in a normal sequence (0, 1, 2 etc) the interleave factor is 1. The interleave factor can be defined as the amount of sectors between two successive sector numbers plus one.

For SD and ED the interleave factor is in fact half of the total amount of sectors on the track:

SD - 1050/XF551:
18 sectors per track
Interleave factor: 9
1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25,
2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26.

ED - 1050/XF551:
26 sectors per track
Interleave factor 13
1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25,
2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26.

I discovered two different interleave factors for DD (the interleave factor is sometimes revered to as 'sector skew'). The first one is 'fast' for 1050 read/write operations and the second makes things faster for the XF551 FD.

DD - 1050:
18 sectors per track
Interleave factor 15
6, 12, 18, 5, 11, 17, 4, 10, 16,
3, 9, 15, 2, 8, 14, 1, 7, 13.

DD - XF551:
18 sectors per track
Interleave factor 9
1, 3, 5, 7, 9, 11, 13, 15, 17,
2, 4, 6, 8, 10, 12, 14, 16, 18.

IBM disks doesn't need sector interleaving on FD's. Eh well, in such case the interleave factor is just 1.
1, 2, 3, 4, 5, 6, 7, 8, 9.

Custom sector interleaving
--------------------------
There are two ways to increase the disk load speed with help of custom sector interleaving;

1) Hardware interleaving:
With special hardware (like happy or speedy) we can format a disk, using the most efficient sector interleave.

2) Software interleaving:
By loading the sectors in the order which corresponds to the most efficient sector interleave.

Since we're dealing with lots of different floppy drives, there's no such thing as 'the ideal sector interleave'. Therefore it's not recommended to use hardware interleaving. A disk with a fast-load interleave for the XF-551 drive will load extremely slow on a 1050 drive.
However, software interleaving can be useful. When we're going to use this we have to keep in mind that a normal formatted disk already has a certain sector interleave.

It would be possible to make a program which can determine the best read/write interleave by measuring the time between the reading or writing of two sectors on the same track.
We also have to keep in mind that the sio (serial I/O) routines in the operating system are too slow for small interleave factors.
E.g. the XF-551 drive is able to load using a sector interleave of 7, but this is only possible if the baud rate is adjusted.

Sector shifting
---------------
Moving the read/write-head to the logical following track takes a small amount of time. Sector shifting can be helpful to make the 'change track' a little faster.
For example, if the last sector from a track is read, the head moves to the next track. While the head moves, the disk keeps rotating and skips, let's say 25% of the total sectors. Wouldn't it be nice if the first sector of the next track was positioned right on the place where the head is after moving? An example explains a lot:

track 0:
1, 2, 3, 4, 5, 6, 7, 8, 9
track 1:
4, 5, 6, 7, 8, 9, 1, 2, 3
track 2:
7, 8, 9, 1, 2, 3, 4, 5, 6
etc....

After a little experimenting I discovered that the XF-551 moves faster from track to track compared to a 1050 drive. Try to measure the time between sector 26 (the last sector on track 0) and a sector from the next track (track 1) of a normal ED disk.

  • Like 3

Share this post


Link to post
Share on other sites

I was reading the Dos 3 manual (ducks) while sitting in the smallest room of my house (guess which one that is) :

 

A fitting place to be pondering DOS 3...

  • Like 3

Share this post


Link to post
Share on other sites

I remember that somebody has a patched 1050 original ROM made with different sector orders. This has speed up the reading (writing data takes a little bit longer than normal) single density AND (!) medium density disk of about 15-20% without additional hardware or software. Every standard DOS 2.5 formatted disk with such a patched 1050 firmware were read faster in any other 1050, also if there´s no patched firmware.

 

Anybody also remember or knows about this? And maybe has the patched ROM?

Share this post


Link to post
Share on other sites

I'm not sure it'd be that much faster. Likely it's just changing the sector order and though it was some time back in my experience the speed gain was probably 10% if that.

The patched Rom shouldn't be too hard to recreate.

 

From what I've got here - there's a table called SKEWTB with sectors numbered 1, 3, 5 etc 23, 25 then 2, 4, 6 etc. 24, 26.

 

A simple reorder probably isn't possible. The problem is the table is used for single and enhanced density with the SD format only using the first 9 entries from each table part. So probably a bit of recoding needed as well.

 

The "best case" IO speed you can hope for is evident when using stock 19K bitrate with SIO2SD, APE and such devices. Generally there is next to zero latency compared to real floppy and plenty of read-ahead so read operations are much quicker.

Edited by Rybags
  • Like 1

Share this post


Link to post
Share on other sites

You can format any custom skew with a USD. I am on my phone now and don't have access to it now. It is very simple in BASIC. Poke up the DCB and call SIO.

Share this post


Link to post
Share on other sites

You can format any custom skew with a USD. I am on my phone now and don't have access to it now. It is very simple in BASIC. Poke up the DCB and call SIO.

 

I've yet to figure out how to do this with a USD other than the skews baked into the SpartaDOS formatters. Is there any pre-existing software out there where you can enter a custom sector order?

Edited by Nezgar
  • Like 1

Share this post


Link to post
Share on other sites

CX8111 Atari 810 Formatted Diskettes II (5 per box) (as it's named elsewhere) Appeared to be a workaround for the poor folk stuck with the slow formatting of the older Atari 810 drive Rev B ROM . It would format with an interleave of 12. Some old disks I have from Atari such as "Home Filing Manager" exhibit this slower skew. The later 810 Rev C ROM would format with a tighter interleave of 9 like the 1050, which is probably what the CX8111 has. In that case, it was a very marked difference, about 30% faster! It's very odd that it is referenced in the DOS 3 manual, which was designed for the 1050, since the 1050 already formats with the 'improved sector layout'.

 

There's documented evidence of the slow 12 sector interleave/skew on page 2-23 of the 810 Field Service Manual:

post-53052-0-75234700-1505021655.png

 

In another previous thread - http://atariage.com/forums/topic/104585-another-interesting-speed-comparison/?p=3759949 - I was benchmarking an interesting slightly even better skew that the Archiver/CHIP and US Doubler 1050 ROM will lay down for a 'standard' (non-ultraspeed) formatted disk, a whole disk sector copy would finish about 12% faster than one formatted on a stock 1050:

 

18 7 14 3 10 17 6 13 2 9 16 5 12 1 8 15 4 11 (12:1) 810 Rev B

1 3 5 7 9 11 13 15 11 2 4 6 8 10 12 14 16 18 (9:1) Stock 1050 & Happy. They are technically all 9:1... But the track index / gap adds a little more space between the last and first sectors, so...

11 15 13 11 9 7 5 3 1 18 16 14 12 10 8 6 4 2 GAP (8:1 or REAL 9:1) US Doubler Normal & CHIP Archiver. This layout accounts for the track index/gap, by using 8 sector interleave when crossing the Index/Gap.

 

See this "Disk Formatting Theory" section of the Archiver/SCANIT Manual:

post-53052-0-01322400-1505023274_thumb.png

 

Lastly, for some audible examples, I've recorded three quick soundbites for what these interleaves sound like on a STOCK 1050 with standard non-highspeed SIO

 

Old slow interleave:

slow interleave.mp4

 

810 Rev C / 1050 Interleave:

1050 interleave.mp4

 

US Doubler / Archiver Interleave:

US Doubler interleave.mp4

 

Sorry for geeking out... I've found this stuff quite interesting lately, having been somewhat oblivious to it back in the day. Especially as an early happy enhancement user, the skews made absolutely no difference in performance due to the track buffer...

Edited by Nezgar
  • Like 9

Share this post


Link to post
Share on other sites

 

I've yet to figure out how to do this with a USD other than the skews baked into the SpartaDOS formatters. Is pre-existing software where you can enter/select a sector order?

The information about Custom Format is on page 150 of the SpartaDOS Construction Set Owners Manual, page 162 of the PDF available at Atarimania.

  • Like 2

Share this post


Link to post
Share on other sites

I do know the sparta dos formatter (cannot remember is it was 3.2. or 4.x) Formats SD standard speed on a USD and compatible drive using one of the fastest sector layouts possible instead of the atari standard sector layout. Have had comments from people that i sent disks to that load faster on their std drives back in the day.

 

 

James

  • Like 2

Share this post


Link to post
Share on other sites

This is a fascinating topic. There has been some tangential discussion of this in the past, but I note using the SpartaDOS X "FORMAT" command, my Happy 1050 board from AtariMax is unable to format in either High Speed or Ultra Speed skews, but of course with the track buffers, that drive is already substantially faster than a stock 1050 while loading large files.

Share this post


Link to post
Share on other sites

This is a fascinating topic. There has been some tangential discussion of this in the past, but I note using the SpartaDOS X "FORMAT" command, my Happy 1050 board from AtariMax is unable to format in either High Speed or Ultra Speed skews, but of course with the track buffers, that drive is already substantially faster than a stock 1050 while loading large files.

If you use the Happy 7.1 disk first, you can set your Happy to USD compatible and then the High Speed and Ultra Speed should work. I say should, because I haven't actually tried it, but I also noticed the same issue with SpartaDOS X cart, and then I noticed the USD compatible option when I went to the happy 7.1 menu to select unhappy mode for software compatibility. I just haven't gotten around to trying it out yet.

Share this post


Link to post
Share on other sites

If you use the Happy 7.1 disk first, you can set your Happy to USD compatible and then the High Speed and Ultra Speed should work. I say should, because I haven't actually tried it, but I also noticed the same issue with SpartaDOS X cart, and then I noticed the USD compatible option when I went to the happy 7.1 menu to select unhappy mode for software compatibility. I just haven't gotten around to trying it out yet.

 

I was also curious about that, and it was investigated pretty well in this thread: http://atariage.com/forums/topic/267259-atari-1050-happy-enhancement-rom-question/?p=3797957

 

In nut shell, for a short period of time the much more rare Happy 1050 Rev 1 supported 'Ultraspeed emulation' but it was disabled by default. So only programs that supported ultraspeed SIO routines (3x standard or about 54000 bps ) would only work at 1x (19200) speed. Special SIO routines such as that in "Warp DOS" would support the happy's original "Warp Speed" mode (2x SIO or 38400bps) - but not SpartaDOS. Booting the Happy 7.x utility disk and using the "Enable Ultraspeed Emulation" would enable the ultraspeed compatible SIO commands, (except ultraspeed format) and enable write-buffering as well.

 

Happy 1050 Rev 2 - the much more common one - enabled Ultraspeed emulation by default at powerup with write buffering disabled, with one big caveat/bug: it would corrupt 3rd byte of each sector written until the drive was programmed to enable write buffering. This is what the "Enable Ultraspeed Emulation" menu option would do for Rev 2 drives. SpartaDOS X INDUS.SYS also sends the write-buffer enable command to happy drives at startup. MyCopy R sector copier, also sends this command to happy drives. All of course, until the drive was powered off.

 

The ultraspeed format command does not work in SpartaDOS X because the $66 'f' command is not supported on happy's at all. It will always format with a skew the same as a stock 1050 or Rev C 810. "High Speed" is only for XF551 drives, and I maybe Indus drives.

 

The only way to get true US Doubler emulation on a Happy 1050 is to use the HAPPY.COM included with Real.dos which uploads relocated US Doubler ROM image to the happys RAM and executes it. Then you can actually format disks with real ultraspeed sector skew.

  • Like 4

Share this post


Link to post
Share on other sites

As a side topic, all the ultraspeed ROMs I've made for the various drives, always include the 'f' command if anyone wants to play on them.

  • Like 4

Share this post


Link to post
Share on other sites

Just came across another reference to the 810 rev 'C' ROM's improved sector skew in the document "Overview Of Atari DOS Version 2.4+" which I presume was a precursor to official release of DOS 2.0S: https://archive.org/details/OverviewOfAtariDOSVersion2.4

 

post-53052-0-88002600-1513492128_thumb.png

Given that document is dated June 1980, it would seem the ROM was updated very early in the 810's life, but I guess there would have been a lot released to manufacturing and distribution before then...

  • Like 2

Share this post


Link to post
Share on other sites

Pretty sure that "new format" refers to the interleave that most 810 or 1050s will give you by default in SD. Supposedly the original 810 used an inefficient layout so that Rom revision was replaced fairly quickly.

Share this post


Link to post
Share on other sites

Pretty sure that "new format" refers to the interleave that most 810 or 1050s will give you by default in SD. Supposedly the original 810 used an inefficient layout so that Rom revision was replaced fairly quickly.

 

In early 1982, I remember getting my first 810 drive with Dos 2.0s which came with two disks that were "fast formatted." The docs said that you could use the spare disk but the drive could not format others in the "fast format." I could see no difference with those disks, and then timed some operations with a stopwatch - still no difference. So I took my drive to our user group meeting and had a techie member look into the matter. Taking off the lid, he said (to the effect) "oooh, you've got one of the new ones with the data separator and new rom." Pleased as punch!

 

-Larry

  • Like 4

Share this post


Link to post
Share on other sites

How do you tell if your 810 is a rom b or c other than timing it? Do you have to open it up or can you do a peek from basic or something?

Share this post


Link to post
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.

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