Jump to content
IGNORED

DUMP1050 utility - possible disk corruption bug, do not use!


Recommended Posts

Hi,

 

   A while back (2019), I wrote a utility (DUMP1050) for dumping the firmware (ROM) of a Happy (or "compatible") 1050 disk drive to a file.

 

   I'm investigating whether the Happy corrupt 3rd byte in sector bug can be triggered in certain circumstances, so at the moment, I'm asking that people don't use the DUMP1050 utility at all.

 

   The issue looks like it may be triggered when high speed SIO code is used, so with a DOS that uses high speed I/O, or with a patched OS ROM for high speed I/O. Turning the drive off and on again will fix the problem, but it may continue to corrupt written data from the time the utility is run, to the time the drive is turned off then on.

 

   I'll update this thread once I know more, but given that this may lead to data loss, I'm posting this as early as possible, and then seeing if I can reproduce/test the existence of the actual bug.

 

   Apologies to anyone effected by this bug.

 

   

Link to comment
Share on other sites

  • 1 year later...
On 8/4/2022 at 3:56 PM, E474 said:

Hi,

 

   A while back (2019), I wrote a utility (DUMP1050) for dumping the firmware (ROM) of a Happy (or "compatible") 1050 disk drive to a file.

 

   I'm investigating whether the Happy corrupt 3rd byte in sector bug can be triggered in certain circumstances, so at the moment, I'm asking that people don't use the DUMP1050 utility at all.

 

   The issue looks like it may be triggered when high speed SIO code is used, so with a DOS that uses high speed I/O, or with a patched OS ROM for high speed I/O. Turning the drive off and on again will fix the problem, but it may continue to corrupt written data from the time the utility is run, to the time the drive is turned off then on.

 

   I'll update this thread once I know more, but given that this may lead to data loss, I'm posting this as early as possible, and then seeing if I can reproduce/test the existence of the actual bug.

 

   Apologies to anyone effected by this bug.

 

   

 

Hi @E474. Is DUMP1050 working now? I need to try and dump a soldered in 1050 ROM. It's not soldered to the 1050, just to the upgrade chips.

Link to comment
Share on other sites

Hi @TZJB,

 

   I haven't had time to fix it, the bug can happen with high speed I/O (it's the Happy corruption bug). If you have a stock 8-bit computer (one that doesn't have high speed I/O added in to the OS in as custom firmware), and just use the Atari DOS 2.5 on the ATR you should be fine, but I would boot the ATR, dump the drive ROM, then reboot everything and power cycle the drive as code is uploaded to it as part of the ROM dump routine. Also, don't use a high speed DOS like SpartaDOS, etc., with DUMP1050. The ATR can be downloaded from the DUMP 1050 github repo.

 

   DUMP1050 is very "rough and ready", as it's not much more than a wrapper to save memory read from the drive using the routines from the German publication "Atari Magazin". Hopefully I will have time to revisit my various Atari projects later in the year, but I know am going to be very busy for the next few months with more pressing matters. Any feedback would, of course, be appreciated though.

  • Like 1
Link to comment
Share on other sites

22 hours ago, E474 said:

Hi @TZJB,

 

   I haven't had time to fix it, the bug can happen with high speed I/O (it's the Happy corruption bug). If you have a stock 8-bit computer (one that doesn't have high speed I/O added in to the OS in as custom firmware), and just use the Atari DOS 2.5 on the ATR you should be fine, but I would boot the ATR, dump the drive ROM, then reboot everything and power cycle the drive as code is uploaded to it as part of the ROM dump routine. Also, don't use a high speed DOS like SpartaDOS, etc., with DUMP1050. The ATR can be downloaded from the DUMP 1050 github repo.

 

   DUMP1050 is very "rough and ready", as it's not much more than a wrapper to save memory read from the drive using the routines from the German publication "Atari Magazin". Hopefully I will have time to revisit my various Atari projects later in the year, but I know am going to be very busy for the next few months with more pressing matters. Any feedback would, of course, be appreciated though.

 

At the moment I am having problems dumping using a stock 800XL and Fujinet.

 

Cannot read command table from drive.

 

DUMP1050error.thumb.JPG.fa6381c512e52f66d7c62c4f9350995d.JPG

Link to comment
Share on other sites

Hi @TZJB,

 

   IIRC, the Fujinet uses high speed I/O when loading its config program, so the drive may already have been set to ignore commands, etc.

 

   Simplest path is to get to the "Cannot read command table" bit, and then power cycle just the Lazer drive and try to dump the drive again (so don't reboot the 800XL, just hit #4 again).

 

   You can also try making a physical Dos 2.5 boot disk, and copy the utility on to that - it should be OK if you use the same drive to boot and dump the data to (you'll need to change the drive number from #4 to #1 in the above example). This cuts the Fujinet out of the loop, which makes things simpler to trouble shoot (I would unplug it from the SIO chain, and only have the Lazer drive you want to dump the ROM of on the SIO bus). Also, maybe verify that the Lazer utilities disk recognises the drive as a Lazer drive (maybe check in the same "only the Lazer on the SIO bus" configuration?).

 

   Hope this helps!

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

On 3/19/2024 at 4:59 PM, E474 said:

Hi @TZJB,

 

   IIRC, the Fujinet uses high speed I/O when loading its config program, so the drive may already have been set to ignore commands, etc.

 

   Simplest path is to get to the "Cannot read command table" bit, and then power cycle just the Lazer drive and try to dump the drive again (so don't reboot the 800XL, just hit #4 again).

 

   You can also try making a physical Dos 2.5 boot disk, and copy the utility on to that - it should be OK if you use the same drive to boot and dump the data to (you'll need to change the drive number from #4 to #1 in the above example). This cuts the Fujinet out of the loop, which makes things simpler to trouble shoot (I would unplug it from the SIO chain, and only have the Lazer drive you want to dump the ROM of on the SIO bus). Also, maybe verify that the Lazer utilities disk recognises the drive as a Lazer drive (maybe check in the same "only the Lazer on the SIO bus" configuration?).

 

   Hope this helps!

 

Some progress, but not what I wanted.

 

This utility seems to only be able to dump a programmable OS.

 

I did what was suggested and created a bootable disk from the ATR file. With nothing but the drive on the SIO bus I booted from my drive set to D1:. However, switched to 1050 mode and USD mode neither will dump, but in Lazer mode the OS dumps straight away.

 

I was trying to dump the 1050 mode OS to see why it worked with a WD2797, but it is not to be. Time for the soldering iron!

 

 

Link to comment
Share on other sites

Hi @TZJB,

 

   Thanks for the feedback on DUMP1050!  

 

   Good to hear that it did dump the Lazer ROM when set up as a boot floppy, single drive - this might be the easiest way around the data corruption issue, though I think DUMP1050 still needs updating with error handling, etc.

 

   I think I need to make it a bit clearer that it only dumps the Happy/Lazer ROM so I'll also add this to the documentation/description (when I get time to update it).

 

   Btw, I saw in the new thread you had started that you had used the Happy Utilities sector copier, have you tried the Lazer utilities disk - I posted a copy of it a while back,  see: 

 

Link to comment
Share on other sites

47 minutes ago, E474 said:

Hi @TZJB,

 

   Thanks for the feedback on DUMP1050!  

 

   Good to hear that it did dump the Lazer ROM when set up as a boot floppy, single drive - this might be the easiest way around the data corruption issue, though I think DUMP1050 still needs updating with error handling, etc.

 

   I think I need to make it a bit clearer that it only dumps the Happy/Lazer ROM so I'll also add this to the documentation/description (when I get time to update it).

 

   Btw, I saw in the new thread you had started that you had used the Happy Utilities sector copier, have you tried the Lazer utilities disk - I posted a copy of it a while back,  see: 

 

 

Thanks, I did download them a while ago and have the Lazer floppy disks physically, and virtually on my Fujinet.

 

However as they are a copy of the Happy 6.6 software anyway, I went with the original which also assured me by passing the diagnostics.

 

I do need to try the Lazer software though, to make sure the diagnostics are the same. I seem to remember I had problems. More to do there I think.

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