English Amiga Board


Go Back   English Amiga Board > Support > support.Other

 
 
Thread Tools
Old 21 October 2013, 15:47   #21
thomas
Registered User
 
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 6,985
Quote:
Originally Posted by Sim085 View Post
So you mean,

1. Extract the contents of RecoRDB.lha
2. Copy this to the SCSI hard disk
3. Run recordb scsi.device 1

?

if yes, is scsi.device correct?

Yes, that's what I meant. I don't know if scsi.device is correct. It depends on the controller's firmware. Also 1 may not be correct. This depends on the SCSI IDs assigned to the devices.
thomas is offline  
Old 22 October 2013, 20:53   #22
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
When I run RDBrecov scsi.device 0 I get the following error:

"Trying to open scsi.device unit 0"
"OpenDevice failed; error = -1 (open failed)"
(see screenshot attached)

I tried to put 1 up to 9 instead of the 0 but I always got the same error. Could it be because I should not use scsi.device? My drive is a GrandSlam 500, i.e. - this with this inside. Instead of a SCSI hard disk I have a SCSI > IDE adapter and an IDE to CF adapter. It is listed under SCSI controller on The Big Book of Amiga Hardware website.

What else could I use instead scsi.device when working on real Amiga hardware?

Quote:
Originally Posted by thomas View Post
Yes, that's what I meant. I don't know if scsi.device is correct. It depends on the controller's firmware. Also 1 may not be correct. This depends on the SCSI IDs assigned to the devices.
Attached Thumbnails
Click image for larger version

Name:	2013-10-22 19.36.31.jpg
Views:	183
Size:	494.1 KB
ID:	37373  
Sim085 is offline  
Old 22 October 2013, 21:54   #23
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
You might need to use ivsscsi.device (but I'm not sure). Use a utility like show to print a list of device names in your system. Which one applies to your SCSI controller should be obvious.

Don't randomly try different unit numbers! The unit number to use corresponds to the SCSI ID you set the SCSI/IDE adapter to (there should be jumpers on it to select the ID).

And once again: I'd strongly recommend you create another image file from the CF card before doing anything with it.
mark_k is offline  
Old 22 October 2013, 23:00   #24
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Downloaded show and used it (show DE) and found that I must use "IVS_SCSIpro.device". However I am going from one stumble block to another!

When I enter the command RDBrecov IVS_SCSIpro.device 0 I get the following error:

"Trying to open IVS_SCSIpro.device unit 0"
"TD_GETGEOMETRY ERROR = 45 (status and/or sense error)"

I know that 0 is the right SCSI ID as I checked jumper on SCSI > IDE adapter and if I enter 1 instead of 0 I get a different error.

I attached screenshot of error (note, I the attempt with SCSI ID 1 is just to show the different errors).

Note: I tried this both with a working CF card (i.e. one with a working Workbench installed) and also with the corrupt CF card (the one I am trying to recover). I get the same error on both.

What am I doing wrong this time?

Quote:
Originally Posted by mark_k View Post
You might need to use ivsscsi.device (but I'm not sure). Use a utility like show to print a list of device names in your system. Which one applies to your SCSI controller should be obvious.

Don't randomly try different unit numbers! The unit number to use corresponds to the SCSI ID you set the SCSI/IDE adapter to (there should be jumpers on it to select the ID).

Made a copy of CF card from WinUAE. The original is in a safe place (with my backups). I did some additional copies from the original copy in order to test some things on WinUAE.

Quote:
Originally Posted by mark_k View Post
And once again: I'd strongly recommend you create another image file from the CF card before doing anything with it.
Attached Thumbnails
Click image for larger version

Name:	2013-10-22 22.42.38.jpg
Views:	158
Size:	483.2 KB
ID:	37378  
Sim085 is offline  
Old 22 October 2013, 23:38   #25
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Quote:
Originally Posted by Sim085 View Post
Downloaded show and used it (show DE) and found that I must use "IVS_SCSIpro.device". However I am going from one stumble block to another!

When I enter the command RDBrecov IVS_SCSIpro.device 0 I get the following error:

"Trying to open IVS_SCSIpro.device unit 0"
"TD_GETGEOMETRY ERROR = 45 (status and/or sense error)"
...
What am I doing wrong this time?
You're probably not doing anything wrong, as such. Many/most Amiga SCSI device drivers (including Commodore's own A590/A2091) don't support the TD_GETGEOMETRY command.

It would be good if a future version of RDBrecov could attempt to issue a READ CAPACITY command instead. But anyway, quoting from RDBrecov.guide: "In order to process the hard disk anyway, you must specify all three parameters SECTORSIZE, CYLINDERS and CYLSECTORS."

SECTORSIZE=512
However CYLINDERS and CYLSECTORS are trickier. Ideally, choose them such that
cylinders*cylsectors = total number of sectors in card

But whichever partitioning program you originally used to set up the CF card might have chosen different values. And how to determine the total number of sectors in the card using your Amiga? You should be able to use SCSIUtil to do that. (Or just divide the byte size of the CF image file you created by 512, it should be the same.)

Which partitioning program did you use originally? HDToolBox?

Last edited by mark_k; 22 October 2013 at 23:44.
mark_k is offline  
Old 22 October 2013, 23:58   #26
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Quote:
Originally Posted by mark_k View Post
Which partitioning program did you use originally? HDToolBox?
Yes I had used HDToolBox. Does that make finding CYLINDERS and CYLSECTORS values any simpler?
I download SCSIUtil. Reading documentation to see how I can use it.
Sim085 is offline  
Old 23 October 2013, 09:17   #27
thomas
Registered User
 
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 6,985
Quote:
When I enter the command RDBrecov IVS_SCSIpro.device 0 I get the following error:
Why don't you try RecoRDB first?


Quote:
Yes I had used HDToolBox. Does that make finding CYLINDERS and CYLSECTORS values any simpler?
Please read the documentation of RDBRecov before you use it.
thomas is offline  
Old 23 October 2013, 23:33   #28
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Quote:
Originally Posted by thomas View Post
Please read the documentation of RDBRecov before you use it.
Sorry about that. Read the guide and found the part related to how to use HDToolBox to get the Cylinders and Block per Cylinder. Now the first thing I noticed is that the results I get on WinUAE (uaehf.device) are different then the results I get on the A500+ (IVS_SCSIpro.device). That said, using RDBrecov using both results give me the same error message; "device does not support harddisks larger then 4GB", this even though the CF card is only 2GB large (see attachment).

Note: something strange I noticed is that when using HDToolBox, on start up the same CF card was listed twice, on SCSI_ID 0 and on SCSI_ID 4. This also happened for another CF card I have. Do not know what that means.

Quote:
Originally Posted by thomas View Post
Why don't you try RecoRDB first?
I therefore decided to try RecoRDB. I used the following command.

> RecoRDB IVF_SCSIpro.device 0

This returned one partition even though if I remember well I had two partitions. I decided to still try to rebuild the partition using the following command

> RecoRDB IVF_SCSIpro.device 0 rebuild

I restarted the amiga, it looks like there is activity (LED turns on, before this did not happen) but it never boots up

I do not know if I ran out of options.
Attached Thumbnails
Click image for larger version

Name:	2013-10-23 22.45.52.jpg
Views:	156
Size:	487.4 KB
ID:	37409  

Last edited by Sim085; 24 October 2013 at 16:46.
Sim085 is offline  
Old 24 October 2013, 10:52   #29
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Quote:
Originally Posted by Sim085 View Post
I do not know if I ran out of options.
I was reading again the part on FFS in the RDBRecov.guide and I thought of a possible solution.

- Given that I know that I only had 2 partitions on the CF card.
- Given that I know that I used the HDToolBox option "Read Configuration"
- Assuming that I did not bother to change the default size of each partition

Then shouldn't this work;

- Mount a copy of the image file I have of the CF card
- Boot in workbench, open HDToolBox (uaehf.device)
- Click "Change Drive Type"
- Click "Define New"
- Click "Read Configuration" and "Ok"
- Click "Partition Drive"

(here kicks in my assumption that when I partitioned this CF card I did not bother to change from the default 2 partition setup, so I am keeping Start Cyl and End Cyl as default)

- Click "Ok"
- Click "Save Changes to Drive"

Like that the FFS root block will be stored in the middle of each partition which should hypotetically be the same place as it was originally.

At the moment I am at work (no access to WinUAE), however I want to check if my logic is correct or not!?
i.e. - if data on the CF card is in a recoverable state, and my assumptions are correct (number of partitions is 2 and their size is the same) then would the above work? Or there is something which I am not taking in consideration?
Sim085 is offline  
Old 24 October 2013, 13:20   #30
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Providing you definitely used the HDToolBox default two partition layout before that should work.

If you still have no luck, here's what I would do. Using a binary file editor on your PC, load the image file you created and find where your partitions start manually. Search for the DOS\0 signature aligned to a multiple of 512 bytes, around where you expect the partitions to start. For the first partition that would be near the start of the image file; within the first few MB. For the second that would be roughly 1GB into the image file, assuming both partitions were the same size.

Once you've done that you'll probably find the first partition ends immediately before the second one. You can then create a mount file for that partition to mount it manually. Hopefully your files are accessible. Similarly, the end of the second partition will be near the end of the image file, and knowing the start and end sectors of it you can create a mount file for it too.

Quote:
That said, using RDBrecov using both results give me the same error message; "device does not support harddisks larger then 4GB", this even though the CF card is only 2GB large (see attachment).
Hmm. What values did you enter for Cylinders and CylSectors?
Quote:
Note: something strange I noticed is that when using HDToolBox, on start up the same CF card was listed twice, on SCSI_ID 0 and on SCSI_ID 4. This also happened for another CF card I have. Do not know what that means.
Could that be a feature of your SCSI-IDE converter? Maybe it allows access to both master and slave IDE drives on different SCSI IDs, but the CF card responds to both master and slave accesses? Just guessing.
mark_k is offline  
Old 24 October 2013, 13:25   #31
thomas
Registered User
 
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 6,985
Quote:
Originally Posted by Sim085 View Post
That said, using RDBrecov using both results give me the same error message; "device does not support harddisks larger then 4GB", this even though the CF card is only 2GB large (see attachment).
This should not happen. Which version of RDBRecov do you use?

I'll have to check the source code tonight at home.


Quote:
Originally Posted by Sim085 View Post
- Given that I know that I only had 2 partitions on the CF card.
- Given that I know that I used the HDToolBox option "Read Configuration"
- Assuming that I did not bother to change the default size of each partition

Then shouldn't this work;
Yes, if all of the above is true, it should work.
thomas is offline  
Old 24 October 2013, 14:42   #32
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
I went home to try the steps I wrote before ... but I guess I did change the size of the partitions as I got the same NDOS icons

Quote:
Originally Posted by mark_k View Post
You can then create a mount file for that partition to mount it manually.
How do you do that? Create a mount file? Is this done from HDToolBox? Or you mean from WinUAE Hardfile Settings window?

Quote:
Originally Posted by mark_k View Post
Hmm. What values did you enter for Cylinders and CylSectors?
s 512 c = 992 cs = 4034 ... these are the values I got from HDToolBox when used on WinUAE, also tried with the value returned by HDToolBox when used on the A500+ but I still got the same error message.

Quote:
Originally Posted by thomas View Post
This should not happen. Which version of RDBRecov do you use?
The one linked from this thread. The guide says 1.8 (05.10.02).

Last edited by prowler; 24 October 2013 at 20:48. Reason: Back-to-back posts merged.
Sim085 is offline  
Old 24 October 2013, 16:10   #33
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Quote:
Originally Posted by Sim085 View Post
How do you do that? Create a mount file? Is this done from HDToolBox? Or you mean from WinUAE Hardfile Settings window?
Once you have determined exactly where the partition is on your CF card, i.e. you know the starting sector and size (number of sectors), you can create a mount file for it.

By a mount file, I mean a plain text file which contains lines like
LowCyl = xxx
HighCyl = yyy
BlocksPerTrack = zzz
(See existing mount files in DEVS:DOSDrivers and SYS:Storage/DOSDrivers to see what I mean.)
You can then use the Mount command from CLI to mount the partition.

But in order to do that, you need to determine the exact location and size of the partition. You could do my suggestion of using a binary file editor on your PC to examine the image file you created. Unfortunately it's not really practical to give an easy step-by-step guide, other than what I wrote in the previous posting.
Quote:
s 512 c = 992 cs = 4034 ... these are the values I got from HDToolBox when used on WinUAE, also tried with the value returned by HDToolBox when used on the A500+ but I still got the same error message.
I don't know why you got the error message, but it's probably best to use the fake geometry values which HDToolBox used (since you used HDToolBox to create the partitions originally), as opposed to the (different) fake values WinUAE used.
mark_k is offline  
Old 24 October 2013, 16:22   #34
thomas
Registered User
 
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 6,985
This is exactly what RDBRecov is meant for. Give me some time to fix the error message, then it will do all this automatically for you.
thomas is offline  
Old 24 October 2013, 17:22   #35
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Quote:
Originally Posted by thomas View Post
This is exactly what RDBRecov is meant for. Give me some time to fix the error message, then it will do all this automatically for you.
Thanks thomas, I really appreciate your and mark_k help on this.

I also have a question on the 's' parameter. Is this always 512. In the guide it refers to this as "Bytes per Block" but in HDToolBox I can only see "Cylinders" (flag c) "Bytes per Track" and "Bytes per Cylinder" (flag cs)
Sim085 is offline  
Old 24 October 2013, 17:40   #36
thomas
Registered User
 
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 6,985
You may safely assume that it's always 512 for harddrives.

It may be 4096 for "advanced format" harddrives. But they may not be supported by AmigaOS anyway.
thomas is offline  
Old 25 October 2013, 02:18   #37
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Quote:
Originally Posted by mark_k View Post
Unfortunately it's not really practical to give an easy step-by-step guide, other than what I wrote in the previous posting.
Just have a quick question; When I opened the image file with a Hex Editor and searched for "DOS\0" I only found 1 instance of this within the whole file in the middle of the file (see attachment)! What does this mean? Should I have 2 DOS\0 if I had two partitions?
Sim085 is offline  
Old 25 October 2013, 12:44   #38
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Quote:
Originally Posted by Sim085 View Post
Just have a quick question; When I opened the image file with a Hex Editor and searched for "DOS\0" I only found 1 instance of this within the whole file in the middle of the file (see attachment)! What does this mean? Should I have 2 DOS\0 if I had two partitions?
[You didn't attach anything?]

When I wrote "DOS\0" I meant the ASCII letters DOS followed by a zero byte. In hex, those bytes are: 44 4F 53 00

In the block at the start of each partition, the rest of the block is probably filled with zero bytes. So you could search for the bytes 44 4F 53 00 00 00 00 00 00 00 00 00
which should narrow down the possibilities.

Last edited by mark_k; 25 October 2013 at 12:58.
mark_k is offline  
Old 25 October 2013, 14:33   #39
thomas
Registered User
 
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 6,985
Most likely the partitions begin with DOS\1 a.k.a. 44 4F 53 01 (FFS) or DOS\3 a.k.a. 44 4F 53 03 (FFS INTL).


Anyway, find attached the latest version of RDBRecov. I didn't find any problem with the 4GB limit. The message only appears if the offset of the last block of the disk is larger than the maximum for 32 bits. The only way it could appear wrongly is that the 64 bit math (utility.library/UMult64) doesn't work correctly.
I've recompiled the source code with a more modern compiler (VBCC) and used the compiler's internal 64bit math. I've also added a message which outputs the resulting offset if it still calculates as >4GB.

Last edited by thomas; 26 October 2013 at 15:18.
thomas is offline  
Old 26 October 2013, 02:53   #40
Sim085
Registered User
 
Join Date: Apr 2009
Location: N/A
Posts: 962
Quote:
Originally Posted by thomas View Post
Anyway, find attached the latest version of RDBRecov.
Hi thomas, tried it out but gave me an error message "Program Failed (error #80000005) Wait for disk activity to finish" (screenshot attached).

I tried it with the following command:

RDBrecov IVF_SCSIpro.device 0 s 512 c 992 cs 4034

Next week I should have the required cable to connect a CF card to the A1200 I have. If you want I can try RDBrecov on the A1200 if you suspect that my A500 (GrandSlam + SCSI > IDE + IDE > CF) might be the culprit.
Attached Thumbnails
Click image for larger version

Name:	2013-10-25 22.26.02.jpg
Views:	159
Size:	488.5 KB
ID:	37472  
Sim085 is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Can I recover my Cf? Retrofan support.Hardware 2 11 February 2013 11:40
Best way to move files to my A1200's CF card? RMK Retrogaming General Discussion 11 24 January 2011 20:23
Recover a Harddiskdrive cosmicfrog support.Hardware 6 03 July 2010 19:33
I need to recover stuff from old Amiga floppys... zardoz New to Emulation or Amiga scene 4 01 November 2004 21:19
Recover memory Tony Landais Coders. General 6 07 May 2003 15:21

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 16:11.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.11479 seconds with 14 queries