Jump to content

Photo

XF551 OSes


46 replies to this topic

#26 bob1200xl OFFLINE  

bob1200xl

    River Patroller

  • 2,455 posts

Posted Mon Sep 24, 2007 5:40 PM

I believe this is the Woolley 5.25 version:


I will burn and try this one but I think, do to the included text file, that this is the 3.5 720K rom. I'm really looking for any mod that will fix the drives ability to switch densities, as I am trying to images a collection of disks and the drive will not recognize the change between double side or single side disks.


The XF551 will switch densities if it gets a data check in the first three sectors, as I recall. There is a patch "out there" to allow it to switch on any sector but it isn't entirely satisfactory. DOS still gets an error on the first read and may get cranky, although the second attempt will retry in the alternate density. The right way to fix this is to read the disk internally in the drive when you close the disk and not return a data error. The problem is that DOS still doesn't know that you have changed disks and will be looking for the wrong sector size. The controllers have 'disk change' status but nobody uses it that I have seen.

Bob

#27 MEtalGuy66 OFFLINE  

MEtalGuy66

    River Patroller

  • 2,732 posts
  • If it aint broke, fix it anyway!
  • Location:Houston, TX, USA

Posted Tue Sep 25, 2007 1:19 AM

I would like to thank Steve for the PAL XF551 firmware image.

I would also note that it does not work very reliably with NTSC machines. The HyperXF, on the other hand, works better than the factory NTSC firmware. It appears to greatly improve (if not eliminate altogether) the density-switching bug. It also appears to support "normal" ultraspeed with OSes that support it (eg. spartados)...

If the HyperXF ROM does indeed work on both PAL and NTSC systems, that is quite a piece of good work.

Edited by MEtalGuy66, Tue Sep 25, 2007 1:20 AM.


#28 sup8pdct OFFLINE  

sup8pdct

    Dragonstomper

  • 819 posts
  • Location:australia

Posted Wed Sep 26, 2007 9:16 PM

Ok. I need a PAL compatable ROM image for use in an XF551.

Someone has recently mailed me his XF551 mainboard from Europe, for repairs. He purchased this drive off of EBAY, and could not get it to work reliably with his PAL 130xe. Upon recieving the board, I hooked it up to my NTSC machine, and it worked fine.

I went ahead and fixed the crappy solder joints on the SIO connectors, but I do not want to ship this mainboard back without correcting the true problem.

From what I understand, the timing incompatability lies in a bug in the eariler released US/NTSC firmware. The later firmware supposedly would work with both PAL and NTSC.

I know that the HyperXF ROM was written in Germany. Is this ROM compatable with both PAL and NTSC? or is there 2 different versions of it? I burned the HyperXF-A rom and it seems to work fine in the drive on my NTSC system (but so did the original ROM). Unfortunately, I do not have a PAL system to test it on.

I need a ROM image that I can burn on an 2764 EPROM and install in this drive, that is guaranteed to work with a PAL system, so I can mail this guy his board back.

Any help I can get on this would be GREATLY appreciated.

could you please send me a copy of the NTSC rom? I either don't have it or all my xf551 rom images are pal. I at one time had both but finding it now.......

James

#29 sup8pdct OFFLINE  

sup8pdct

    Dragonstomper

  • 819 posts
  • Location:australia

Posted Sun Oct 28, 2007 5:51 AM

I would like to thank Steve for the PAL XF551 firmware image.

I would also note that it does not work very reliably with NTSC machines. The HyperXF, on the other hand, works better than the factory NTSC firmware. It appears to greatly improve (if not eliminate altogether) the density-switching bug. It also appears to support "normal" ultraspeed with OSes that support it (eg. spartados)...

If the HyperXF ROM does indeed work on both PAL and NTSC systems, that is quite a piece of good work.

After a lot of digging, I have finally found the changes for the pal/ntsc xf551 roms. At least I hope these are the differences.
Could someone please let me know if they are part of the xf sio routine.
$9af was $99 change to $24
$9b0 $ef -$e0
$9e0 Was $ff -$09
9e1 ff-53
9e2 ff 08
9e3 ff c6
9e4 ff f0
9e5 ff 9a
9e6 ff cf
9e7 ff 8a
9e8 ff 10
9e9 ff 99
9ea ff e7
9eb ff 24
9ec ff b1
9f0 ff 8a
9f1 ff 30
9f2 ff 89
9f3 ff 08
9f4 ff 99
9f5 ff ef
9f6 ff 24
9f7 ff b1

Hope this is very informative.

James

#30 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,231 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Tue Oct 30, 2007 9:07 AM

Here is the *correct* XF551 Pal rom image (thanks JR>).
I've just received the eprom (thanks classics) and successfully tested it in Switzerland in a new XF551 disk drive bought in the USA connected to a PAL Atari 130XE.

Attached Files


Edited by Philsan, Tue Oct 30, 2007 11:50 AM.


#31 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,104 posts
  • Location:United Kingdom

Posted Sat Jul 24, 2010 2:35 PM

Late to the party, but I just flashed my XF ROM with the XF-Hyper OS and it really flies with SpartaDOS X. Wish I'd had it fifteen years ago...

Edited by flashjazzcat, Sat Jul 24, 2010 2:35 PM.


#32 sup8pdct OFFLINE  

sup8pdct

    Dragonstomper

  • 819 posts
  • Location:australia

Posted Mon Jul 26, 2010 1:36 AM

Has anyone dissembled and commented the orignal xf551 code? I started to but discovered a real strange part where code crosses the 2K boundry, but every spec I find for the 4050 says code cannot cross this boundry with out first selecting the bank select bit and doing a jump instruction.

James

Edited by sup8pdct, Mon Jul 26, 2010 1:43 AM.


#33 bob1200xl OFFLINE  

bob1200xl

    River Patroller

  • 2,455 posts

Posted Mon Jul 26, 2010 9:13 AM

I did - sort of...

I'll see if I can find it. This is code at $0800?

What did you use for a disassembler?

Bob


Has anyone dissembled and commented the orignal xf551 code? I started to but discovered a real strange part where code crosses the 2K boundry, but every spec I find for the 4050 says code cannot cross this boundry with out first selecting the bank select bit and doing a jump instruction.

James



#34 sup8pdct OFFLINE  

sup8pdct

    Dragonstomper

  • 819 posts
  • Location:australia

Posted Mon Jul 26, 2010 2:35 PM

dis 8038 i think. something i found on the internet. the code in question appears to start in $700 page then gois over the $800 border. will have to dig it up and look.

james





I did - sort of...

I'll see if I can find it. This is code at $0800?

What did you use for a disassembler?

Bob


Has anyone dissembled and commented the orignal xf551 code? I started to but discovered a real strange part where code crosses the 2K boundry, but every spec I find for the 4050 says code cannot cross this boundry with out first selecting the bank select bit and doing a jump instruction.

James



#35 StefanD OFFLINE  

StefanD

    Star Raider

  • 56 posts

Posted Mon Jul 26, 2010 6:10 PM

If the HyperXF ROM does indeed work on both PAL and NTSC systems, that is quite a piece of good work.

I designed the serial I/O of HyperXF for PAL systems. But since the deviation to NTSC is less than 1%, there are no problems with NTSC:

In ultra speed every bit has ten 8048 cycles giving 10*1.8=18us per bit or 55555 bps. Pokey divisor 9 is used, which runs the serial bus at 1773447/2/(7+9)=55420 bps. With NTSC it runs at 1789790/2/16=55931 bps.

Could someone please let me know if they are part of the xf sio routine.

No, this is part of the density check routine, when the FDC is resetted and the head repositioned at track 0 to detect the density. The second code seems to be a correction of the first. It jumps just before the FDC reset to $9E0 and executes the following code:

lda p
and #8
beq f0       branch if configured for MFM
anq #cf
orq #10      set quad density
anp #e7      set MFM, FDC reset
jmp 9b1      jump back

9f0
orq #30      set medium density
orp #8       set FM
anp #ef      FDC reset
jmp 9b1      jump back
Note: I used a 6502 like notation in my disassembly (didn't like 8048 code): p is p1, q is p2, x is p0, anp #v is "and p with #v" (p=p&#v), orq is "or q with #v" (q=q|#v)

Thus this code switches to quad density if previously configured for fm and medium density if previously configured for mfm. After that, a restore is sent to the FDC to position the head on track 0 for reading an address field. Obviously this should help the XF551 to switch between quad/double and single density. My XF-ROM has the old code and never switches automatically from single to double - except when booting a disk. Of course, I'm using the HyperXF ROM, which doesn't have this problem ;-)
Thanks for posting the differences, I didn't know that ATARI made a correction of the XF code.

something i found on the internet. the code in question appears to start in $700 page then gois over the $800 border. will have to dig it up and look.

No, the code on page 7 goes until $7ED. The last statement on this page is jmp 67a, which jumps back to format the next track.

Stefan

Edited by StefanD, Mon Jul 26, 2010 6:17 PM.


#36 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,104 posts
  • Location:United Kingdom

Posted Tue Jul 27, 2010 6:26 AM

Is the HyperXF 80 track ROM (for 3.5" drives) backward compatible with 5.25" mechanisms? I ask because I'm half way through fitting a 3.5" drive to my XF, and it would be nice to be able to pop the 5.25" mechanism back in if I ever need to without swapping the ROM. If I have to, I'll buy a spare EPROM and keep the 40 track firmware on there.

I had three 3.5" mechanisms to try, and the second - a Sony unit - worked. Funnily enough, it works off either the drive "A" or drive "B" connector on the long ribbon cable I bought (which has the "twist" for drives A and B, and dual 3.5" and 5.25" connectors). Does this mean the FDD is already jumpered as drive 1? A little confused there, but happy enough...

I took that 3.5"/5.25" floppy cable, trimmed off the PC motherboard edge connector, prised off the original Atari ribbon cable from the XF mainboard header (by unclipping the plastic retainer), and then pressed the new ribbon connector in place, before replacing the plastic clip with a few well-judged taps with a screwdriver handle. Result is a ribbon cable ready for both 3.5" and 5.25" drives, no resoldering... in fact pretty neat.

The other variable with all this is disks. I reckon some of them must have been 1.44MB disks, since they didn't work. It took about four tries to find a 720K disk which formatted under SDX in the pile of old Amiga/ST floppies.

Edited by flashjazzcat, Tue Jul 27, 2010 6:27 AM.


#37 StefanD OFFLINE  

StefanD

    Star Raider

  • 56 posts

Posted Tue Jul 27, 2010 4:39 PM

Hi flashjazzcat,

I haven't tried it, but the HyperXF 80 track ROM probably will not work with 5,25" drives. The reason is that there is no auto detection and I changed the step rate (12ms for 5,25", 3ms for 3,5") and FDC precompensation and of course the track accessing logic: I don't know what happens if the ROM tries to access track 79 of a 5,25" drive *grind* (hopefully the 5,25" drive will survive this). If you want to switch between two drives, you can burn both HyperXF ROMs in one 2764 (in fact the ROM has only 4KB) and switch A12 of the 2764 to activate one ROM or the other.

And yes, the drive must be jumpered as drive 1. Otherwise the XF hardware won't be able to access it (the motor spins but sectors can't be read). This is a hardware problem and has nothing to do with the ROM. Probably pin 10 of the drive connector (called "drive select") is the reason for this - it is connected to the motor on line in the XF551.

To distinguish disks: 1.44 MB disks have an extra hole in one edge while 720 KB disks don't have this.

Stefan

#38 MEtalGuy66 OFFLINE  

MEtalGuy66

    River Patroller

  • 2,732 posts
  • If it aint broke, fix it anyway!
  • Location:Houston, TX, USA

Posted Tue Jul 27, 2010 8:50 PM

Flashjazzcat: Here's what you do:

Get BOTH HyperXF ROM images (the 3.5" and the 5.25")

Concatenate them together into a single 16k ROM image, using a sector editor..

Burn the 16k image onto a 27128 EPROM..

Bend up Pin 26 of the 27128 (so that it doesnt go into the socket) and solder a 4.7k resistor from pin 26 to pin 28.

Solder a wire from pin 26 to one pole of a SPST switch..

Solder a wire from the other pole of the switch to ground (pin 14 of the 27128 is GND)..

You can now switch between 3.5" and 5.25" HyperXF OS..

Edited by MEtalGuy66, Tue Jul 27, 2010 8:55 PM.


#39 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,104 posts
  • Location:United Kingdom

Posted Wed Jul 28, 2010 2:13 AM

Nice tips! Thanks both. I have the parts to make a switchable ROM: I might go down that route, although I probably won't put the 5.25" mechanism back in very often: only to read 360K floppies that the 1050 can't manage.

What would be really cool is to have a dual 3.5"/5.25" mech (as has been done and demonstrated elsewhere on this forum), but make one drive show up as drive 1, and the other show up as drive 2. The example I recall of this set-up had a switch on the back to swap the drives, IIRC.

Anyhow: it's hard to imagine how I'll use either a 5.25" or 3.5" disk drive except for nostalgia reasons. That said, swapping the drive mech and getting it to work has been very satisfying (something I've wanted to try for twenty years), and there really is no substitute for real floppies, and double the standard XF capacity is a nice bonus.

I'm going to trim the ribbon cable down and put the XF's original 5.25" connector on the end of it. I also got myself some "window grey" plastikote spray-paint, and I'm going to do the drive bay adapter and 3.5" FDD fascia with that (it ought to be a good match for the XF casing). The drive should look smart when it's finished. I'll post a pic or two.

#40 Mathy OFFLINE  

Mathy

    River Patroller

  • 2,306 posts
  • Location:Heerlen, NL

Posted Wed Jul 28, 2010 11:46 AM

Hello Jon

Bob Woolley's upgrade uses the switch, Bob Puff's (CSS"s) upgrade switches automatically between the two drives.

sincerely

Mathy

#41 BillC OFFLINE  

BillC

    Stargunner

  • 1,551 posts
  • Location:BC Canada

Posted Wed Jul 28, 2010 12:28 PM

Nice tips! Thanks both. I have the parts to make a switchable ROM: I might go down that route, although I probably won't put the 5.25" mechanism back in very often: only to read 360K floppies that the 1050 can't manage.

What would be really cool is to have a dual 3.5"/5.25" mech (as has been done and demonstrated elsewhere on this forum), but make one drive show up as drive 1, and the other show up as drive 2. The example I recall of this set-up had a switch on the back to swap the drives, IIRC.

Anyhow: it's hard to imagine how I'll use either a 5.25" or 3.5" disk drive except for nostalgia reasons. That said, swapping the drive mech and getting it to work has been very satisfying (something I've wanted to try for twenty years), and there really is no substitute for real floppies, and double the standard XF capacity is a nice bonus.

I'm going to trim the ribbon cable down and put the XF's original 5.25" connector on the end of it. I also got myself some "window grey" plastikote spray-paint, and I'm going to do the drive bay adapter and 3.5" FDD fascia with that (it ought to be a good match for the XF casing). The drive should look smart when it's finished. I'll post a pic or two.

The only XF551 dual-drive upgrade I'm aware of that assigned a separate drive ID to the second mechanism is the CSS dual drive upgrade, which allowed use of both mechanisms without using any switch. This consisted of a replacement ROM and some circuitry to add drive select. I don't know if this upgrade is still available from NLEaudio/CSS, you can contact them to see if it is. If they no longer sell this upgrade, perhaps they will release the ROM/schematic of the drive select circuitry.

#42 bob1200xl OFFLINE  

bob1200xl

    River Patroller

  • 2,455 posts

Posted Wed Jul 28, 2010 3:27 PM

My XF551 switches D1: between the 5.25 and the 3.5. You can only use one at a time, but they are both on D1:. There are then, two drive enclosures.

Be kinda fun to put it all in an 810 case...

Bob




Hello Jon

Bob Woolley's upgrade uses the switch, Bob Puff's (CSS"s) upgrade switches automatically between the two drives.

sincerely

Mathy



#43 BillC OFFLINE  

BillC

    Stargunner

  • 1,551 posts
  • Location:BC Canada

Posted Thu Jul 29, 2010 1:41 AM

Isn't it also recommended to power off the drive before switching with your dual upgrade?
The CSS upgrade while being more expensive, if it is even still available, is much easier to use and allows direct copying of files from one mechanism to the other.

I was thinking about the 810 case option myself, a complete case is $35.00 from B&C, but this would require black mechanisms to look correct. I don't have a 360KB black floppy, and they are hard to find/getting expensive, especially with shipping to Canada(5.25" drives are fairly heavy!). Instead I recently purchased an SF314 drive to put on top of the XF551 and hold a 3.5" mechanism for my CSS dual drive upgrade, even complete with power supply this was much less than the cost of a 360KB 5.25" and didn't require the purchase of an 810 case. When I get to it I plan to use a DB37 or similar keyed connector, so the 3.5" drive can't be hooked up backwards, with the extra wires carrying power eliminating the need for a separate lead.

BillC

My XF551 switches D1: between the 5.25 and the 3.5. You can only use one at a time, but they are both on D1:. There are then, two drive enclosures.

Be kinda fun to put it all in an 810 case...

Bob


Edited by BillC, Thu Jul 29, 2010 2:03 AM.


#44 bob1200xl OFFLINE  

bob1200xl

    River Patroller

  • 2,455 posts

Posted Thu Jul 29, 2010 8:16 AM

No need to power off. Both drives are powered on while you are using them. I just switch the EPROM bank and the SELECT line with a DPDT switch. I switch them all the time while I'm running. Sometimes, it has to re-do the density, but it works pretty well. I have many, many 3.5 and 5.25 disks and I need to be able to boot from either.

Bob



Isn't it also recommended to power off the drive before switching with your dual upgrade?
The CSS upgrade while being more expensive, if it is even still available, is much easier to use and allows direct copying of files from one mechanism to the other.

I was thinking about the 810 case option myself, a complete case is $35.00 from B&C, but this would require black mechanisms to look correct. I don't have a 360KB black floppy, and they are hard to find/getting expensive, especially with shipping to Canada(5.25" drives are fairly heavy!). Instead I recently purchased an SF314 drive to put on top of the XF551 and hold a 3.5" mechanism for my CSS dual drive upgrade, even complete with power supply this was much less than the cost of a 360KB 5.25" and didn't require the purchase of an 810 case. When I get to it I plan to use a DB37 or similar keyed connector, so the 3.5" drive can't be hooked up backwards, with the extra wires carrying power eliminating the need for a separate lead.

BillC

My XF551 switches D1: between the 5.25 and the 3.5. You can only use one at a time, but they are both on D1:. There are then, two drive enclosures.

Be kinda fun to put it all in an 810 case...

Bob



#45 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,104 posts
  • Location:United Kingdom

Posted Thu Jul 29, 2010 9:14 AM

The Plastikote spray paint gave a nice finish on the bezel and bay adapter. The grey is close to that of the 130XE but a ways off the weird murky olive of the XF:

XF551 Mod.jpg

#46 BillC OFFLINE  

BillC

    Stargunner

  • 1,551 posts
  • Location:BC Canada

Posted Thu Jul 29, 2010 10:30 AM

It was the Matthew Ratcliff review of the ICD XF35 Kit based on your upgrade which led me to believe that switching the drive off was recommended before switching mechanisms.
Since there was never any commercial software for the Atari 8-bits available on 3.5" disks booting from them wasn't a high priority, and it is possible for me to boot from any drive when using my MIO.

Bill


No need to power off. Both drives are powered on while you are using them. I just switch the EPROM bank and the SELECT line with a DPDT switch. I switch them all the time while I'm running. Sometimes, it has to re-do the density, but it works pretty well. I have many, many 3.5 and 5.25 disks and I need to be able to boot from either.

Bob



Isn't it also recommended to power off the drive before switching with your dual upgrade?
The CSS upgrade while being more expensive, if it is even still available, is much easier to use and allows direct copying of files from one mechanism to the other.

I was thinking about the 810 case option myself, a complete case is $35.00 from B&C, but this would require black mechanisms to look correct. I don't have a 360KB black floppy, and they are hard to find/getting expensive, especially with shipping to Canada(5.25" drives are fairly heavy!). Instead I recently purchased an SF314 drive to put on top of the XF551 and hold a 3.5" mechanism for my CSS dual drive upgrade, even complete with power supply this was much less than the cost of a 360KB 5.25" and didn't require the purchase of an 810 case. When I get to it I plan to use a DB37 or similar keyed connector, so the 3.5" drive can't be hooked up backwards, with the extra wires carrying power eliminating the need for a separate lead.

BillC

My XF551 switches D1: between the 5.25 and the 3.5. You can only use one at a time, but they are both on D1:. There are then, two drive enclosures.

Be kinda fun to put it all in an 810 case...

Bob



#47 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,104 posts
  • Location:United Kingdom

Posted Tue Aug 3, 2010 12:05 PM

Flashjazzcat: Here's what you do:

Get BOTH HyperXF ROM images (the 3.5" and the 5.25")

Concatenate them together into a single 16k ROM image, using a sector editor..

Burn the 16k image onto a 27128 EPROM..

Bend up Pin 26 of the 27128 (so that it doesnt go into the socket) and solder a 4.7k resistor from pin 26 to pin 28.

Solder a wire from pin 26 to one pole of a SPST switch..

Solder a wire from the other pole of the switch to ground (pin 14 of the 27128 is GND)..

You can now switch between 3.5" and 5.25" HyperXF OS..

I understand pin 26 is A13, and 28 VCC. So the switch is basically toggling the highest bit of the address, thereby switching between the 2 8K banks?

Edited by flashjazzcat, Tue Aug 3, 2010 12:06 PM.





0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users