Hacking a Seagate Hard Drive to work in the Xbox 360

Over the past couple of months, I have been on a quest. This quest has led me to many different locales, and it is still ongoing. Unfortunately, my quest has hit a roadblock of sorts for the moment, but it has not ended. I will explain more on that in a minute, but for now, I wanted to document the things I have found out thus far.

After hours of searching the net for a solution of using a Seagate hard drive in my Xbox, there was not a whole lot of happy news, however I have pieced together many sources, and have been able to change many of the drive’s parameters manually, effectively mirroring the functions of HDDHACKR. This is the main holdup that Seagate drives face. There is no automated way of doing this like there is with a Western Digital Drive. Just for your information, the information in my post is not for the faint of heart, and you probably will kill your hard drive if you are not very careful. I take no responsibility for what you do to your hard drive. This is in no way a complete tutorial, nor can I guarantee that this will work for you. My hope is that someone will benefit from the information that I have pieced together. Even though I have not completed this project, I believe I have found enough information that someone somewhere will have better luck than I have.


It is about 2:00 in the morning as I finish typing this, and I am on my way to bed. This is a work in progress, so pictures will come at a later date. For now, I am happy with what has been written, and it will suffice for now.

Required Materials

-Hex Editor (I use HxD. It’s free, and it works quite nicely. wxHexEditor works nicely for our *Nix friends as well. You need one that is able to open a physical disc.)

-RS232 to TTL Adapter (Max32 or similar. You can even use an Arduino if you don’t have anything else)

-Jumper wires for adapter-Official Xbox 360 HDDSS.bin FROM a Seagate drive (more on this in a minute, but luckily I have found this for you, and will upload it for you.)  http://minus.com/lw50E2TwPtkJz 

-External SATA enclosure (Makes it easier to control the power to your hard drive, without having to take apart your computer.)

-A SATA Controller that is compatible with HDDHACKR(We will not be flashing the firmware with this, but we will still be creating the partitions. You can do this manually also, but I will not detail that here)

-Plenty of time to experiment, and learn how to navigate the Seagate TMOS. I will tell you the commands I used to get as far as I did, but some of these commands vary from drive to drive. Even the same model numbers with different firmware revisions will have different command sets. BE VERY CAREFUL PLAYING WITH THESE SETTINGS. Take the time to learn what the commands do for yourself. The biggest mistake I made was trying a command that wasn’t made for my drive, and I have effectively bricked it for the moment.

-An Understanding of Hex. We will be dealing with hex addresses, and hex offsets. It will be much easier to follow if you understand Hex.

-Patience. You will mess something up somewhere along the way. I can almost guarantee it. If you are not a patient person, you will just get frustrated then definitely screw something up. If you are feeling a bit frustrated, do yourself and your hard drive a favor, and take a break. It won’t do you any good to work on it while you are upset, and you’ll likely mess something else up in the process.-SeDiv (Not a requirement, but highly recommended. You can use Putty or Hyper-Terminal if you wish, but SeDiv is designed for the work that we are doing. If you do decide to download SeDiv, you will need Windows XP SP2. It does not work on Windows Vista or 7. You will also need to set your system clock back to 2007 or 2008.)

A Little Background Information

My first spark of inspiration was this site: http://tinyurl.com/6y75pxj. In this thread is a detailed list of how to manually place the security sectors of an official Xbox drive onto a different hard drive. The poster states that he has used this method to use a Seagate drive in his Xbox; however the tutorial itself was performed on a Western Digital drive. After numerous failed attempts at contacting the author of this thread and a few others, I did a bit more digging.

In short, what I learned was that when HDDHACKR modifies a hard drives firmware it changes 4 main things in the Hard Drive’s Firmware. These changes are taken from a valid hddss.bin that has been dumped from an official Xbox Hard Drive.

  1. It changes the Model Number
  2. It changes the Serial Number
  3. It changes the LBA
  4. It changes the Firmware Revision

After changing these things, it will then copy the information in the hddss.bin file to sectors 16-22 of the hard drive itself.

http://www.users.on.net/~fzabkar/HDD/HddHackr_analysis.html

The previous link details the security sector of an official drive, and how it is structured. Basically the Xbox compares the information in these sectors (or the hddss.bin) to the physical drive’s information. If even one of the things in this list is not correct, the Xbox will refuse to see the hard drive as available local storage.

So, our goal is to change all of this information on the drive ourselves. This proves somewhat difficult however because there is not very much documentation on how this is done. There is a lot of guess work, and crying. In the end, our goal will be to change the previous 4 items to the following.

  1. Model number will be ST9250315AS (Will be entered in Hex)
  2. Serial Number will be 5VCF5J11
  3. LBA will be will be 70 59 1C 1D (Hex value)
  4. Firmware Revision will be 0002CE02 (Will be entered in Hex)

Another problem that exists is that a Seagate hard drive only allows 8 character serial numbers, and most of the available hddss.bin files freely available on the net are dumped from Hitachi drives. These drives have serial numbers that are up to 15 characters. Since this is the case, there is no way to successfully spoof the drive into looking like a Hitachi. The only real solution is to use an hddss.bin file that has been dumped from an official Seagate drive.

Oh yeah, for your information, all of my findings were done on a Seagate ST9250827AS Rev. 3.AAA

Connecting with SeDiv or Putty
To test your connection, open Putty or SeDiv, and open the connection with 9600 for your baud rate, 8 data bits, no parity, 1 stop bit, and no flow control. Plug the power into the hard drive, but not the data cable. If it works you will see some text come up in the terminal. If not you may have your Tx and Rx wires reversed.If you look to the left of the Power/SATA connector on the drive you are working on you will notice a few small pins. These pins are for the diagnostics port of the drive. From right to left, the pins are Rx, Tx, Gnd. There is a fourth pin, but you need not concern yourself with it. When connecting your TTL adapter, Rx on the Drive goes with Tx on the adapter, and Tx on the drive goes with Rx on the adapter. If you use an external enclosure to supply power to the drive, you shouldn’t have to worry about the ground connection because the USB connector should take care of that. Otherwise, you will have to find a way to ground them together.

For me, it says something like:

Buzz HM SFI

!

(P)S

If you get this point, great! If not, you will need to do some more research on your own. There are quite a few tutorials about this lying around. You may have a look at https://sites.google.com/site/seagatefix/ – This will show you all the steps involved in creating a TTL adapter. The Baud rate is different from my drive, but you may need to try some different speeds to get yours working.

Basic Terminal Structure and Changing the Serial Number

So, once you have gotten the output in Putty or SeDiv, press Ctrl-Z. This should bring you to a prompt that says something like:

T>

So you know, every command that you enter in this prompt is case sensitive, so you will need to watch what you are entering. Some commands have completely different effects whether you use the upper case or lower case command. Know that if you are not paying attention you can easily brick your drive with a one letter command. Please be careful. The prompt does not recognize backspace, so if you make an error, you are kind of stuck with it. If you have a doubt about what you entered, your best option is to press Ctrl-C BEFORE hitting enter. This will restart the terminal. Sometimes this means you will probably have to re-enter everything you just did, but it’s better than overwriting something that could brick your drive. Please also know that copy and paste doesn’t work very well with the prompt. It will usually end poorly, so even though it’s a pain, I highly recommend typing every command manually.

The command prompt is separated into different levels. Each level has a different function, and different commands to go along with it. Some of the commands you can enter at a level work completely different that they would at a different level, so keep an eye on which level you are on. There is a level for the numbers 1-9, a few different letters. The letter levels I know about are C, F, and T. We will be mainly dealing with Level T. The level is shown before the > at the prompt. So the above example would be at Level T. If you want to change to Level 2 for instance, you can do so with the following command:

T>/2

(note: you only type the “/2”)

This would change the prompt to:

2>

Some Seagate hard drives can tell you a list of the commands available to you, but mine did not, at least not with the examples I found. You can try this on your drive however, by changing to Level C and using the “Q” command.

As I stated however, basically everything we need to do can be accessed from Level T. If you are not there currently, then type /T to get there and we should be back to:

T>

The first thing we are going to change is the Serial Number of the drive. This is the easiest thing to do in the console, so we are going to do this first.

At the prompt type “#

The prompt will then ask you to enter the drive’s serial number. If you open the hddss.bin file I have supplied with a hex editor, and compare it to the site I linked to before, you can see that the serial number is “5VCF5J11”. Enter this Serial Number into the prompt and hit enter. It will then ask you for the Pack-Writer Serial Number. I just left this blank, so hit enter and go on.

It will look something like this:

T>#

Enter Drive S/N 5VCF5J11

Enter Packwriter S/N

T>

Congrats! You are a fourth of the way there. You have successfully changed the Serial Number (hopefully :D)

AT Stuff, SetStuff, and Changing the Model Number

Back at Level T, the next thing you will want to do will help you find the offset of your model number. This is called “AT Stuff”. This is accomplished by pressing Ctrl-U at the prompt. (If you read the data sheets I’ve linked documenting how to use the console this will be shown as ^U. Any command in this manual with ^ in it means Ctrl+ whatever the key was. (ie: ^Z is Ctrl-Z, etc.)

So pressing Ctrl-U at the T> prompt brings something like:

T>^U

AT Stuff

0000: 0c5a  3fff  c837  0010   0000  0000  003f  0000 

0008: 0000  0000  2020  2020   2020  2020  2020  2020 

0010: 3556  4346  354a  3131   0000  4000  0004  332e 

0018: 4141  4120  2020  5354   3932  3530  3832  3741 

0020: 20ff  2020  2020  2020   2020  2020  2020  2020 

0028: 2020  2020  2020  2020   2020  2020  2020  8010 

0030: 3331  2f00  4000  0200   0200  4153  3fff  0010 

0038: 003f  3235  0000  0010   ffff  0fff  0000  0007 

0040: 0003  5320  0078  0078   0078  0000  0000  0000 

0048: 0000  0000  0000  001f   0506  0000  0048  0040 

0050: 01f0  0029  346b  2020   6103  0461  1000  4103 

0058: 007f  0000  0000  8080   fffe  0000  fe00  0000 

0060: 0000  0000  0000  0000   5970  1d1c  0000  0000 

0068: 0000  0000  4000  0606   0000  0000  0000  0000 

0070: 0004  0000  0000  0000   0000  0040  0f41  0000 

0078: 0000  0000  0040  0000   0440  0400  0800  0180 

0080: 0001  5970  1d1c  5970   1d1c  2020  0002  0ab6 

0088: 8002  0000  3c06  3c06   ffff  07c6  0100  0000 

0090: 100f  1800  0002  0080   0000  0000  6080  0000 

0098: 0000  0000  0000  0000   0000  0000  1e00  000b 

00a0: 000f  0006  0003  0000   0032  0014  0033  0024 

00a8: 000f  001e  0032  0000   0013  0022  0032  0014 

00b0: 0032  0000  003a  0000   0022  002d  0032  0000 

00b8: 0032  0000  0022  0000   001a  0000  0012  0000 

00c0: 0010  0000  003e  0000   0000  0000  0032  0000 

00c8: 0000  0000  0000  0000   0000  0000  0000  0000 

00d0: 0000  0000  0000  0000   0000  0000  0000  0000 

00d8: 0000  0000  0000  0000   0001  0002  ffff  ffff 

00e0: 0000  0000  0003  0066   1770  0015  0025  1200 

00e8: 0000  0000  0000  0000   0000  0000  0000  0096 

00f0: 0001  0000  0000  0200   0001  0000  0000  0000 

00f8: 0000  0000  0000  1556   0000  0000  0000  0000 

 

DRIVE HAS BEEN SET-STUFFED –

This is a lot of information for us, but fortunately it is also quite useful. Make sure when you run this command, you copy what you see in the windows to a text file. We will refer to it a couple more times.

On the left before the colon is the starting offset of that line. So,

0000: 0c5a  3fff  c837  0010   0000  0000  003f  0000 

        (0000)(0001)(0002)(0003)(0004)(0005)(0006)(0007)

starts at the beginning. This offset begins with 0000. So in this line offset “0000” is “0c5a”. Offset “0003” is “0010” These lines are only 8 offsets long, running from 0000 to 0007. The next line runs from 0008 to 000f, and so on. What we are looking for here at the moment is our drive’s Model number. An easy way of accomplishing this is copying and pasting each line, minus the offset number, into out hex editor. This will display the Plain Text of what our hex codes mean. So,

0c5a  3fff  c837  0010   0000  0000  003f  0000 

Translates into:

.Z?ÿÈ7…….?..

Not exactly the most helpful information in the world, but if we keep going, we find some interesting things. In particular, look for a line that has a value with “5354” this value is translates to “ST” and that is the beginning of our model number. I found mine at offset 1b. This is the line:

4141  4120  2020  5354   3932  3530  3832  3741 

Which translates into:

AAA   ST9250827A

Even though the rest of the model number spills onto the next line, we can clearly see that this is valuable information. We obviously need to change this, so we do that with the SetStuff command, which is F. This is also accessed through Level T. Our Target Model number is ST9250315AS, which in hex is 5354 3932 3530 3331 4153. We need to change the offsets one at a time, so the commands would be as follows.

T>F

SetStuff->ASCI1B5354

Stuff key 1b -> 53 54

So, we type F, which prompts us with SetStuff->, to which we enter ASCI1B5354. Every command we will enter with SetStuff will always begin with ASCI (Not to be confused with ASCII) immediately followed by the offset (1B), which is also immediately followed by what hex value we want to change it to (5354). If our command was correct, it will give us Stuff key 1b -> 53 54, showing that the operation was successful. If it doesn’t show Stuff Key ->, the operation was not successful, and you will have to try again. Make sure you typed it correctly.

So, we need to do this to all the offsets of our model number. According to some websites that I checked it is good to enter spaces (hex 20) after the model number for a few offsets to make sure that the model number doesn’t have any garbage characters after it. So,

SetStuff->ASCI1C3932

Stuff key 1c -> 39 32

T>F

SetStuff->ASCI1D3530

Stuff key 1d -> 35 30

T>F

SetStuff->ASCI1E3331

Stuff key 1e -> 33 31

T>F

SetStuff->ASCI1F4153

Stuff key 1f -> 41 53

T>F

SetStuff->ASCI202020

Stuff key 20 -> 20 20

T>F

SetStuff->ASCI212020

Stuff key 21 -> 20 20

T>F

SetStuff->ASCI222020

Stuff key 22 -> 20 20

T>F

SetStuff->ASCI232020

Stuff key 23 -> 20 20

T>W

When we finish overwriting the model number, we send the W command. This writes the changes to disc.

At this point, I would suggest restarting the terminal, and running ^U again. You can look at the AT Stuff log again, and check the offsets to see if your changes are intact. If they are ok here, power off the drive and disconnect the serial cable. Connect the data and power cables to the drive, and turn it back on. When Windows detects it, keep an eye on what model number shows up in the Device Manager. If it is our new model number, then you have been successful. If junk characters or anything extra appear next to the drive name, you may need to go back and use the SetStuff command to add spaces to a few more offsets.

Writing the LBA and the Firmware Revision

These last two are basically the same as writing the model number. I wasn’t really sure what I was looking for when I was trying to find the LBA offset, but I found this site: http://tinyurl.com/cxgvqva – This is also where I found out how to use SetStuff in the first place. If you know what your drive’s LBA is in hex before you start, you will have a huge advantage over me, but I did not. I noticed that since their Model Number Offset started at 1B, the same as mine, I figured the LBA offsets could quite possibly be the same, so I used SetStuff to modify offset 83 and 84. (NOTE: On this site, they put the whole string of numbers they wanted to change into one offset instead of doing them one by one like we did with the model number. I tried this, and it did not work for me. Instead, it started changing offsets that were incorrect, or it would just not do anything. I still think the best/safest way is to do them one at a time, even if it takes longer.) They also recommend changing offsets 3C and 3D to the same values; however I did not see that the first time I read it. After this, send ^T

So it will look something like this:

T>F

SetStuff->ASCI837059

Stuff key 83 -> 70 59

T>F

SetStuff->ASCI841C1D

Stuff key 84 -> 1c 1d

T>F

SetStuff->ASCI3C7059

Stuff key 3C -> 70 59

T>F

SetStuff->ASCI3D1C1D

Stuff key 3D -> 1c 1d

T>W

T>^T

I was never 100% I did the LBA correctly, but this was the best information that I found about that portion of the change.

Same goes for the Firmware Revision, and this is one part I got stuck on.

If you look in the AT Stuff dump you took earlier, you will notice that 3.AAA, or the Firmware Revision number for me anyways, was directly in front of the drive’s model number. It populated offsets 17-1A on my drive. I did the same SetStuff we have been doing to change it, but the drive reverts to its old offset when it is restarted. I will post what I did anyways so you can look, and hopefully have better luck than I did. We want to change the revision to the hex value of 3030 3032 9495 4345 3032

T>F

SetStuff->ASCI173030

Stuff key 17 -> 30 30

T>F

SetStuff->ASCI183032

Stuff key 18 -> 30 32

T>F

SetStuff->ASCI194345

Stuff key 19 -> 43 45

T>F

SetStuff->ASCI1A3032

Stuff key 1a -> 30 32

T>W

Like I said, running ^U before resetting the drive shows the changes I made in the correct place. After restarting the drive, it resets the offsets to what they were previously. I don’t know if this will happen to you as well, so try it out and see what happens. I have no way of testing anything else at the moment, so if it doesn’t work, I won’t be of much help.

Using HxD to Copy the Security Sectors

Power down the drive, and disconnect it from the serial cable and power. In HxD you will want to open two things. First, you will want to open the HDDSS.bin file you got from me. Second you will want to put the hard drive in your external enclosure and connect it to your computer. Inside of HxD, you will want to go to extras, then select open disk. In the physical disks section, select the last one (usually). It’s best to only have 2 disks total to make it easier. (Your main OS disk, and the Seagate we are working on.) Make sure read only is unchecked. Go back to the HDDSS.bin tab, and select everything. Edit copy. Go back to the disk tab. Scroll down to Sector 16. Select all of Sector 16 down to Sector 22. Edit paste insert. When you are feeling brave, File Save.

Using HDDHACKR to Create the Partitions

You will need to make a bootable USB stick or cd with a copy of MS-DOS on it. There are quite a few tutorials how to do this, so I won’t cover it here. You will need to copy HDDHACKR onto whatever bootable medium you choose.

Power down the computer you are going to connect the drive to, and hook your Seagate drive up. It is also a good idea to disconnect the other drives in the computer to prevent overwriting the wrong one. Power up the machine with the bootable medium connected. Boot into MS-DOS, and then run HDDHACKR. It will scan your system for discs. Select your Seagate drive from the list. We don’t need to worry about flashing the bin file, since it won’t work anyways. Select Create Partitions instead. It will probably say it was successful, but it won’t go back to the command prompt. Power down the computer when the partitions are created successfully.

What Happens When You Make a Mistake

This is where I got before I bricked my drive. I was trying a new command that I wasn’t too sure about, and it ended up disallowing me to enter the T> prompt. Instead, I am stuck in Level F, and I am unable to change levels. Currently, I am getting the following error when the device is powered on:

Buzz HM SFI

!

    Code – 43  Track 0F82F.0.01E  Sns 01E

F>

So, that is as far as I got. I had just about everything (I think, minus the Firmware Revision), and then made a mistake.

Will this guide let you use your Seagate drive in your Xbox? I can’t say for sure. I am fairly confident that if someone were able to find a way to change the firmware revision successfully, the Xbox would recognize the drive.

I do hope that the information is somewhat helpful to someone. I would love to hear back from you, and know if this has helped someone. I have no intention of quitting on this project. I hope someday soon to figure out my way past the error I am plagued with at the moment, and continue figuring out how to make this work. If anyone has any tips on what things to try, I’m all ears.

Other Sites I Found Useful

http://forum.hddguru.com/seagate-terminal-commands-t6411.html – List of Terminal Commands for Seagate Drives. It’s kind of a mess, but there a quite a few better forma

http://beta.ivc.no/wiki/index.php/Xbox_360_Hard_Drive_Upgrade – Explains the Structure of the Xbox 360s Hard Drive.

http://forums.xbox-scene.com/index.php?showtopic=690435 – Very Basic overview of the same steps I just explained.

http://files.hddguru.com/download/Datasheets/Seagate/Seagate%20Diagnostic%20RS-232%20Port/ – Datasheets for the Seagate Terminal Console. Also includes pictures of how to setup correctly the TTL Adapter

http://sediv2008.narod.ru/Easy1014.rar – Download the SeDiv Program. This serves basically the same purpose as putty or hyperterminal, but it is much more powerful when dealing with Seagate drives, as this is what it was made for.

http://www.xboxhacker.org/index.php?topic=11813.0 – hddhackr was made for western digital drives, but we can still use it to make partitions for us.

Tagged , , , , , , , ,

92 thoughts on “Hacking a Seagate Hard Drive to work in the Xbox 360

  1. […] as the replacement. But if your new drive is a Seagate this tool will not work. [Darth Circuit] set out to make his Seagate work in the Xbox 360, but his manual changes ended up bricking the drive because of just one little […]

  2. […] as the replacement. But if your new drive is a Seagate this tool will not work. [Darth Circuit] set out to make his Seagate work in the Xbox 360, but his manual changes ended up bricking the drive because of just one little […]

  3. […] as the replacement. But if your new drive is a Seagate this tool will not work. [Darth Circuit] set out to make his Seagate work in the Xbox 360, but his manual changes ended up bricking the drive because of just one little […]

  4. John Barthle says:

    Saw this on hack a day. Have you seen the following page yet? https://sites.google.com/site/seagatefix/

    • darthcircuit says:

      Thank you for the suggestion :) – I did go through that guide before, and I thought about trying it, but unfortunately they are already at the T> prompt when they power on the drive. This is where I’m stuck. I am unable to change to this level from the F> prompt.

  5. Panikos says:

    also if you run the following google search:

    https://www.google.com/search?q=Buzz+HM+SFI++!++++++Code+%E2%80%93+43+++Sns+01E&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a

    you get several russian websites with results that seemed to indicate application code has read errors.

    Based on that this sounds as if its close to what you want:

    http://forum.hddguru.com/seagate-momentus-5400-problem-t11419.html

    Another useful tidbit is a list of terminal commands including some level F:

    http://forum.hddguru.com/seagate-7200-terminal-commands-t11926.html

    dont understand this very well but links should be useful

    • darthcircuit says:

      Thanks for all the help! I certainly have many hours of reading again when I get some more time. I have had the most luck so far from russian websites, so I think it will be good to delve back into some more.

  6. John Barthle says:

    The following page mentions the ‘repair’ command from f level. They said it is useless for data recovery as it overwrites drive data. I am wondering if this command copies data back to the flash from the platters. This may not work for you either since you wrote to the service area. Do you have an unmodified drive that you could connect the borked pcb to and then run the repair command?

    http://www.disk-imager.com/data-recovery-blog/?p=498

    • darthcircuit says:

      Thanks! I’ll try that again. I’m pretty sure I tried that once before, but I don’t think my Hard Drive recognized the command, or it needed another parameter. Good find though :)

  7. cetverooki says:

    Did You try to restore original AT STUFF? As it looks to me last change that You have done is what is making problems. Try to restore one by one what You have changed (reverse order) and after each change test HDD.

    • darthcircuit says:

      The command I tried I did not include in this post because I did not want someone else getting confused and trying it as one of the steps. Unfortunately, I can only change the AT STUFF from level T, and I cannot get there currently.

      Thank you for your suggestion though! I need all of them I can get!

  8. Vorian says:

    I think you tried w or W command in level F… If you did, the only way to get your drive up and running is to selfscan it. But you’ll need to upload a compatible firmware before setting age to 2. and that needs a specialized tool that can “sdld” the firmware (I think the sediv paid version can do that). Anyway changing a seagate serial number is not a good idea because it tells the drives how much heads it has…

    • darthcircuit says:

      I think you are correct. I have been trying to get hold of the creator sediv, but he does not respond. You have to set your system clock back to 2008 for the free one to work as it is, so I doubt he’s working on it anymore.

      do you know of any other utilities that will let me do this? I will start doing some more research. Thank you very much! I think this is the path I must try first.

      • vorian says:

        Ok, so you erased the drive adaptives (the tables containing default read-write preamp values ) so the drive has trouble loading what is called the app code and other firmware overlays. AFAIK the SEDIV version you are talking about is the free one which is pretty limited. The paid one contains a lot more features and seems “linked” to a computer (that’s the one you need). I do not want to advertise but it seems salvationdata tools is the easiest solution but it cost far more than a new drive. There’s a tool called st_mem_sdld that is very hard to find but seems to be free. This tool can send firmware objects with the sdld protocol. You have to send a app code, cert code and cert table compatible with your flash and then launch the selfscan procedure. I won’t go into further details here as this procedure is destructive for the data and maybe for the drive if you don’t strictly follow the procedure.

      • Panikos says:

        st_mem_sdld and other tools seem to be here:

        http://www.algrit.narod.ru/hdd_prog.html

      • darthcircuit says:

        Wow! Thank you so much! That will save me quite a bit of time. When I get back to my pc, I will download those and repost them on my cloud so they will be easier for others to find. Thank you very much.

      • darthcircuit says:

        Good to know. Since Panikos has found this utility for me, I will set out to find the firmware that I need, and some more information on the utility. Thank you so much for all of your tips. They have been a huge help!

  9. Vorian says:

    I have 3.aaa available if you need it ;)

  10. any thing skywalker says:

    anything new here?

    • darthcircuit says:

      Unfortunately, not at the moment. I haven’t been able to overcome the problems I’ve been facing with stmem. It’s incredibly buggy. From the documentation I’ve been able to find, I have used the correct settings. Then again, everything I have found has been in Russian, so that is also a barrier.

      Fear not though! I am still confident I will find a solution soon enough.

  11. N00B says:

    will this work on 3.5inch drive?

    • darthcircuit says:

      I doubt it. I don’t know of anyone that has gotten a 3.5″ drive working from a western digital pov even, so the chances of a seagate drive working are alot slimmer.

      That said, alot of people also doubt that a 2.5″ seagate will work either, but it definitely will. There is no harm in trying, and if you were able to spoof the things mentioned in my post, you could probably get it working.

      • N00B says:

        i am gonna try with my 80gb sata i will post the result when i am finished . as noobie i tried changing the serial number in hddss.bin to match my drive i injected it to the hdd sectors 16-22 created the partitions 0,2 using HxD and even injected the partition 2 files xplorer360 recognized my drive but my xbox didnt. i was wondering is the 256bit RSA code below the model number hddss.bin has to do anything with the detection ? please explain
        thanks in advance .

      • darthcircuit says:

        As far as I’m aware, the hddss.bin has a checksum that verifies that it has not been tampered with. If you inject your own serial number, model, etc, it will fail this check.

        Xplorer360 looks for the actual partitions and not the hddss.bin. That is why you were able see it.

        I wish you the best of luck. Please let me know what you learn.

  12. N00B says:

    okay so now i got my drive hooked up to an Arduino’s Fdti chip i have used PuTTY
    started the drive
    terminal window:

    Rst 0x10M
    (p) SATA Reset

    ^Z
    ^Z
    ASCII Diag Mode

    F3 T>/2

    this is far as i got after that the drive is not responding :(
    i think i might need a new drive
    even i tried Arduino serial monitor same result
    please tell me what i am doing wrong

    • darthcircuit says:

      Check your wires. Did you type the /2 or is it not responding at all to keyboard commands? If that is the case, make sure your transmit wire is connected correctly from the arduino. Receive looks like it’s working. Also check your ground. The PC and the hard drive need to have a common ground to work correctly.

      After that, I’m afraid you are on your own. The console is different for each hard drive, and it takes quite a bit of trial and error. Do some research on hddguru.com – they aren’t very keen on helping newcomers that ask alot of questions, but there is ALOT of info in the forums.

      Like I said in my post: Be very careful at which commands you type. You can easily brick your drive if you something wrong. If you are not sure of what you typed, I’d unplug the drive before hitting enter.

      Most everything you need to change is explained in my first post. I have done some more tweaking and found out some more information that I will be posting soon. I have alot of utilities on my cloud space you may find useful as well. I will probably be moving those soon, however because Minus no longer accepts executable or zips for upload.

      I will try to help you where I can, but like I said, it’s alot of trial and error I’m afraid.

      • N00B says:

        hi i have succeeded in changing the serial number and model number of my 3.5in 320GB drive it detected perfectly now i have to do the LBA and Firmware rev and im gonna need a segate 320GB hddss.bin to use the entire 320gig i will keep you posted and i got the serial command list for all the levels so i will see if i can dump the entire firmware.

      • darthcircuit says:

        That’s awesome :) good luck! I don’t have an hddss.bin from a 320 unfortunately. You will need to have one from a Seagate drive though. The normal dumps you see on the net are from hitatchi drives normally, and their serial numbers are too long to program into the seagate firmware. You can try it with the 250 gig hddss.bin, but you will be limiting your size quite a bit.

        I hope you make it further than I did. If you do, please document your results, particularly with the LBA change and Firmware Rev. I was not quite sure I did those correctly.

      • N00B says:

        okay so now the second method in changing the Firmware rev worked for me now For the LBA and i am having a difficult time calculating the LBA

      • darthcircuit says:

        http://www.users.on.net/~fzabkar/HDD/HddHackr_analysis.html

        Check out this website. I forgot to post it when I was working on this initially, but it explains very well (In my eyes anyways) how to calculate the LBA of the hard drive you are working with. It will be different for each one, but you can delve into the hddss.bin file you are working with, and calculate which values you need to change it to on your drive.

      • N00B says:

        okay all i have to do now is set the lba of the drive according to hddss.bin i’m currently going through the command list and i will post the results when i change the LBA and please tell me which command you used to brick your drive?

      • darthcircuit says:

        I believe I was at level f when I tried to use the W command to write the changes to the disk.

      • N00B says:

        there is a significant improvement in modifying the Firmware rev and but when i change the LBA i get cyclic redundancy error (expected due to limiting space ) but the dive became very slow so in the other hand i have found few diagnostic commands which will help in restoring the drives . I have ordered the ST9250315AS drive and i will be doing further more research on that . right now im searching for my original drive’s firmware .

  13. itsover8000 says:

    As of right now I am trying to get this seagate momentus 5400.6 250GB hdd to work in my 360 slim 4gb model. If there is any easy way of doing this let me know, unless it is impossible.

    • darthcircuit says:

      Anything is possible, if you put your mind to it. I thought I never would have gotten as far as I have, but I just have not perfected the process yet. That said, I have not finished this mod yet, nor is there an “easy” way to do this at the moment.

      Everything I have learned thus far has been through trial and error. Unfortunately I’m still stuck because of my error. haha. I’m still working on this however, and once I figure out how to make the mod work to begin with, then I can start on making it easy for everyone else. Unfortunately in this day and time, having things instantly has ruined mankind’s ability to be patient. That is all I ask for though. Please be patient with me while I figure out the next steps.

  14. Roberto says:

    Hi, I followed your awesome guide, but when I hit CTRL+Z in PuTTy, the drive goes in busy mode (status: LED:000000CE/CC). I already tried to unscrew the PCB board and try without the HDD but the result is the same. My HDD is a Seagate momentus 250gb, do you have any idea?

    Thanks

    Roberto

    • darthcircuit says:

      According to this website: https://sites.google.com/site/seagatefix/ – you are pressing Ctrl-Z to quickly after the drive powers up. I would recommend waiting about 10-20 seconds after the power on.

      • Roberto says:

        Already done, I waited 1,2,3,4,5 minutes but nothing, the result is the same EVERY time, I can’t even press # that this shows up :(

      • darthcircuit says:

        Hmmmmm….

        This guy: http://forum.hddguru.com/led-000000ce-t21086.html was able to get his to respond by pressing Ctrl-A every few seconds until it shows the drive as stable, then pressing Ctrl-Z. (If I read that correctly :)) – From what he posts, Ctrl-A shows the firmware information, and when the drive shows that it has stablized, Ctrl-Z should work to access the terminal.

        Other than that, I haven’t found much, but I will keep looking.

  15. thomas martin costello says:

    THANKS FOR THIS REAL HACK JOB !!!

  16. software says:

    hello!,I like your writing so much! proportion we communicate extra approximately your post on AOL?
    I require a specialist on this area to unravel my problem.
    May be that is you! Taking a look forward to look you.

    • darthcircuit says:

      I am hardly a specialist, and haven’t worked on this project in several months. I can try to help you where I am able, but I think your best bet for questions for a specialist can be answered at http://www.hddguru.com – They are much more knowledgable about this than I.

  17. daniel says:

    Hello,
    can´t change my serialnumber.

    Putty works, i have access to all levels, but the command “#” in T is an unknow command.

    Anyone an idea for change the serial?

    Many THX

    • darthcircuit says:

      Have you tried Sediv? It kind of acts as a super terminal for seafate drives. There is a button in there that you can click to try and change the serial.

      You can download it from my dropbox.

      • daniel says:

        Yes, doesnt work.
        I can post a picture.

        But # doesnt work.

        i think, seagate kill this command in never firmwares.
        After work i post 2-3 pictures.

        With firmware an more.

        Thx for fast answear.

      • darthcircuit says:

        If you look in the AT Stuff section, you can see the Serial number in HEX Codes.

        T>^U

        AT Stuff

        0000: 0c5a 3fff c837 0010 0000 0000 003f 0000

        0008: 0000 0000 2020 2020 2020 2020 2020 2020

        0010: 3556 4346 354a 3131 0000 4000 0004 332e

        ——-

        If you convert the hex to text you will see the serial number starts at 0010 and ends at 0013. If you are feeling adventurous, you can try to SET STUFF the drive with the serial number. You can just follow the instructions for changing the model number above. It’s the same principal, just different offsets.

  18. daniel says:

    No, mine is complete different.

    Look my log please:

    Start seadiv and type ^Z:

    I see this:

    ASCII Diag mode

    F3 T>

    ok, now i type ^U:

    i can´t see “AT STUFF”:

    Here the log:

    ASCII Diag mode

    F3 T>
    00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
    0000: B0 05 00 00 00 08 53 43 80 00 00 00 01 10 01 00
    0010: 00 00 00 00 00 00 0E 00 01 00 0A 00 9A 00 00 00
    0020: 03 00 16 00 A6 00 00 00 04 00 16 00 BE 00 00 00
    0030: 07 00 0A 00 D6 00 00 00 08 00 12 00 E2 00 00 00
    0040: 0A 00 0A 00 F6 00 00 00 1A 00 0A 00 02 01 00 00
    0050: 3A 00 36 00 0E 01 00 00 3C 00 3E 00 46 01 00 00
    0060: 00 00 42 00 86 01 00 00 7C 01 24 00 CC 01 00 00
    0070: 7C 02 0C 01 F4 01 00 00 7C 03 38 01 04 03 00 00
    0080: 3E 00 70 01 40 04 00 00 28 05 00 00 01 10 00 00
    0090: 00 00 00 00 FF FF 01 00 81 0A C0 10 FF 00 00 00
    00A0: 05 00 FF FF 83 16 00 01 00 00 00 00 00 02 00 03
    00B0: 02 00 00 01 00 00 00 00 40 00 00 00 84 16 00 00
    00C0: 04 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00D0: 15 18 00 00 87 0A 00 10 FF 00 00 00 00 00 FF FF
    00E0: 88 12 14 00 FF FF 00 00 FF FF FF FF 80 20 00 00
    00F0: 00 00 00 00 8A 0A 02 00 00 00 00 00 00 00 00 00
    0100: 9A 0A 00 02 00 00 00 05 00 00 00 04 BA 36 00 00
    0110: 00 00 00 00 00 08 00 00 00 00 00 00 31 08 08 08
    0120: 00 0A 3A 02 00 10 00 00 00 00 08 00 00 00 00 00
    0130: 00 00 00 00 04 04 13 88 03 E8 00 C8 00 00 00 00
    0140: 00 00 00 00 BC 3E 00 70 00 00 00 00 00 00 00 00
    0150: 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 78
    0160: 00 C8 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0180: 00 00 00 00 80 42 30 32 37 4A 4A 30 44 54 58 20
    0190: 20 20 20 20 20 20 20 00 00 00 01 00 53 54 39 32
    01A0: 35 30 33 31 35 41 53 20 20 20 20 20 20 20 20 20
    01B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
    01C0: 20 20 20 20 00 00 08 00 FC 01 24 00 00 11 11 11
    01D0: 11 11 11 11 12 11 11 11 11 11 11 11 11 11 11 11
    01E0: 11 11 11 11 11 11 11 11 11 11 11 11 10 00 00 00
    01F0: FC 02 0C 01 00 00 00 00 00 00 00 00 00 00 00 00
    0200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0210: 80 00 00 00 F2 E8 80 00 00 A0 80 00 80 00 00 00
    0220: F2 E8 80 00 00 A0 80 00 80 00 00 00 F2 E8 80 00
    0230: 02 A0 80 00 80 00 00 00 F2 E8 80 00 00 A0 80 00
    0240: 80 00 00 00 71 00 80 00 00 A0 80 00 80 00 00 00
    0250: 71 C8 80 00 00 A0 80 00 80 00 00 00 F2 E8 80 00
    0260: 00 A0 80 00 80 00 00 00 F2 E8 80 00 00 A0 80 00
    0270: 00 00 00 00 11 C8 80 00 00 A0 80 00 80 00 00 00
    0280: F2 E8 80 00 00 A0 80 00 80 00 00 00 F2 E8 80 00
    0290: 00 A0 80 00 00 00 00 00 00 00 00 00 00 00 00 00
    02A0: 80 00 00 00 F2 E8 80 00 00 A0 80 00 80 00 00 00
    02B0: 71 C8 80 00 00 A0 80 00 00 00 00 00 F2 C8 80 00
    02C0: 00 A0 80 00 00 00 00 00 00 00 00 00 00 00 00 00
    02D0: 80 00 00 00 71 C8 80 00 00 A0 80 00 00 00 00 00
    02E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    02F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0300: FC 03 38 01 00 00 00 00 00 05 80 00 00 00 00 00
    0310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    03A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    03B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    03C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    03D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    03E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    03F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0430: 00 00 00 00 00 00 00 00 00 00 00 00 BE 00 70 01
    0440: FF 3F 10 00 3F 00 04 00 10 00 00 02 00 02 FF 3F
    0450: 10 00 3F 00 10 01 07 7F 03 00 78 00 78 00 78 00
    0460: 78 00 1F 00 0E 05 00 00 48 00 40 00 F0 01 29 00
    0470: 6B 34 09 7D 23 61 69 34 09 BC 23 61 00 00 80 80
    0480: FE FF 00 FE 00 00 00 00 00 00 00 00 00 00 00 00
    0490: 00 00 00 00 00 00 00 01 00 00 2E 40 28 40 08 10
    04A0: 00 00 01 00 0F 00 06 00 03 00 00 00 32 00 14 00
    04B0: 33 00 24 00 0F 00 1E 00 32 00 00 00 13 00 61 00
    04C0: 32 00 14 00 32 00 00 00 3A 00 00 00 22 00 2D 00
    04D0: 32 00 00 00 32 00 00 00 32 00 00 00 22 00 00 00
    04E0: 1A 00 00 00 12 00 00 00 10 00 00 00 3E 00 00 00
    04F0: 32 00 63 00 32 00 00 00 00 00 00 00 00 00 00 00
    0500: 00 00 00 00 00 00 00 00 32 00 00 00 00 00 00 00
    0510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3B 10
    0520: 00 00 00 00 04 00 00 00 00 00 00 00 80 00 01 00
    0530: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0540: 00 00 00 00 FF 00 28 23 20 00 2C 01 00 00 00 00
    0550: 80 A0 00 08 00 3F 00 00 FF FF 00 00 00 00 00 00
    0560: 00 00 00 00 03 00 00 00 00 00 00 00 CE 18 3C 00
    0570: 02 00 00 00 00 00 00 00 00 08 00 00 06 00 01 0A
    0580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    05A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    DriveNativeInfo Mode Page
    DriveNativeInfo Group
    Byte:0186: PartNumber = 30 32 37 4A 4A 30 44 54 58
    ‘027JJ0DTX’
    Byte:018F: PartNumberWhitespacePad = 20 20 20 20 20 20 20 20
    ‘ ‘
    Byte:0197: PartNumberPad = 00
    Byte:0198: ProcessControlVersion = 00 00

    Byte:019A: CongenConfigurationState = 01
    Byte:019B: WrittenCount = 00

    Byte:019C: InternalSeagateModelNumber =
    53 54 39 32 35 30 33 31 35 41 53 20 20 20 20 20
    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
    20 20 20 20 20 20 20 20
    ‘ST9250315AS ‘
    Byte:01C4: BuildFlags = 00 00
    Byte:01C4: Bit:0, QNR_SUPPORTED = 0
    Byte:01C6: RealTimeUpdatedFlags = 08 00
    Byte:01C6: Bit:3, CONGEN_READ_FROM_MEDIA = 1

    now i type “F”:

    F3 T>F

    RWErrorRecovery Mode Page
    RWErrorRecovery Group
    Byte:009A: RWRecoveryFlags = C0
    Byte:009A: Bit:0, DISABLE_CORRECTION = 0
    Byte:009A: Bit:1, DISABLE_TRANSFER_ON_ERROR = 0
    Byte:009A: Bit:2, POST_ERROR = 0
    Byte:009A: Bit:3, ENABLE_EARLY_RECOVERY = 0
    Byte:009A: Bit:4, READ_CONTINUOUS = 0
    Byte:009A: Bit:5, TRANSFER_BLOCK = 0
    Byte:009A: Bit:6, READ_SPARING_ENABLED = 1
    Byte:009A: Bit:7, WRITE_SPARING_ENABLED = 1
    Byte:009B: ReadRetries = 10
    Byte:009C: CorrectionSpan = FF
    Byte:009D: HeadOffset = 00
    Byte:009E: DataStrobeOffset = 00
    Byte:00A0: WriteRetries = 05
    Byte:00A2: RecoveryLimitMSB = FF

    Byte:00A3: RecoveryLimitLSB = FF

    FormatParameters Mode Page
    FormatParameters Group
    Byte:00A6: TracksPerZoneMSB = 00
    Byte:00A7: TracksPerZoneLSB = 01
    Byte:00A8: AltSectorsPerZoneMSB = 00
    Byte:00A9: AltSectorsPerZoneLSB = 00
    Byte:00AA: AltTracksPerZoneMSB = 00
    Byte:00AB: AltTracksPerZoneLSB = 00
    Byte:00AC: AltTracksPerVolumeMSB = 00
    Byte:00AD: AltTracksPerVolumeLSB = 02
    Byte:00AE: SectorsPerTrackMSB = 00
    Byte:00AF: SectorsPerTrackLSB = 03
    Byte:00B0: BytesPerSectorMSB = 02

    Byte:00B1: BytesPerSectorLSB = 00
    Byte:00B2: InterleaveMSB = 00
    Byte:00B3: InterleaveLSB = 01
    Byte:00B4: TrackSkewMSB = 00
    Byte:00B5: TrackSkewLSB = 00
    Byte:00B6: CylinderSkewMSB = 00
    Byte:00B7: CylinderSkewLSB = 00
    Byte:00B8: FormatFlags = 40

    DriveGeometry Mode Page
    DriveGeometry Group
    Byte:00BE: CylindersMSB = 00
    Byte:00BF: CylindersMDB = 00
    Byte:00C0: CylindersLSB = 04
    Byte:00C1: Heads = 02
    Byte:00C2: WritePrecompMSB = 00
    Byte:00C3: WritePrecompMDB = 00

    Byte:00C4: WritePrecompLSB = 00
    Byte:00C5: ReducedCurrentMSB = 00
    Byte:00C6: ReducedCurrentMDB = 00
    Byte:00C7: ReducedCurrentLSB = 00
    Byte:00C8: StepRateMSB = 00
    Byte:00C9: StepRateLSB = 00
    Byte:00CA: LandingZoneMSB = 00
    Byte:00CB: LandingZoneMDB = 00

    Byte:00CC: LandingZoneLSB = 00
    Byte:00CD: PositionLocking = 00
    Byte:00CE: RotationalOffset = 00
    Byte:00D0: RotationRateMSB = 15
    Byte:00D1: RotationRateLSB = 18

    VerifyError Mode Page
    VerifyError Group
    Byte:00D6: VerifyRecoveryFlags = 00
    Byte:00D6: Bit:0, VE_DISABLE_CORRECTION = 0
    Byte:00D6: Bit:1, VE_DISABLE_TRANSFER_ON_ERROR = 0
    Byte:00D6: Bit:2, VE_POST_ERROR = 0
    Byte:00D6: Bit:3, VE_ENABLE_EARLY_RECOVERY = 0
    Byte:00D7: VerifyRetryCount = 10
    Byte:00D8: VerifyCorrectionSpan = FF
    Byte:00DE: VerifyTimeLimitMSB = FF
    Byte:00DF: VerifyTimeLimitLSB = FF

    CacheControl Mode Page
    CacheControl Group
    Byte:00E2: CacheFlags = 14
    Byte:00E2: Bit:0, READ_CACHING_DISABLED_ON_POWER_UP = 0
    Byte:00E2: Bit:1, MULTIPLICATION_FACTOR = 0

    Byte:00E2: Bit:2, WRITE_CACHING_ENABLED_ON_POWER_UP = 1
    Byte:00E2: Bit:4, DISCONTINUITY = 1
    Byte:00E2: Bit:5, CACHING_ANALYSIS_PERMITTED = 0
    Byte:00E2: Bit:6, ABORT_PREFETCH = 0
    Byte:00E2: Bit:7, DISABLE_ADAPTIVE_READ_AHEAD = 0
    Byte:00E3: RetentionPriority = 00
    Byte:00E4: DisablePrefetchLengthMSB = FF
    Byte:00E5: DisablePrefetchLengthLSB = FF

    Byte:00E6: MinPrefetchMSB = 00
    Byte:00E7: MinPrefetchLSB = 00
    Byte:00E8: MaxPrefetchMSB = FF
    Byte:00E9: MaxPrefetchLSB = FF
    Byte:00EA: MaxPrefetchCeilingMSB = FF
    Byte:00EB: MaxPrefetchCeilingLSB = FF
    Byte:00EC: SpecialCacheFlags = 80
    Byte:00EC: Bit:5, READ_LOOKAHEAD_DISABLED_ON_POWER_UP = 0
    Byte:00EC: Bit:7, FORCE_SEQUENTIAL_WRITE = 1
    Byte:00ED: CacheSegmentNum = 20
    Byte:00EE: CacheSegSizeMSB = 00
    Byte:00EF: CacheSegSizeLSB = 00
    Byte:00F1: NonCacheSegSizeMSB = 00
    Byte:00F2: NonCacheSegSizeMDB = 00
    Byte:00F3: NonCacheSegSizeLSB = 00

    ControlMode Mode Page
    ControlMode Group
    Byte:00F6: LogFlags = 02
    Byte:00F7: QueueFlags = 00
    Byte:00F8: AllegianceFlags = 00
    Byte:00FA: RAERHoldOffMSB = 00
    Byte:00FB: RAERHoldOffLSB = 00
    Byte:00FC: BusyTimeoutMSB = 00
    Byte:00FD: BusyTimeoutLSB = 00
    Byte:00FE: ExtendedDstestTimeMSB = 00

    Byte:00FF: ExtendedDstestTimeLSB = 00

    PowerCondition Mode Page

    PowerCondition Group
    Byte:0103: PowerFlags = 02

    Byte:0103: Bit:0, STANDBY = 0
    Byte:0103: Bit:1, IDLE = 1
    Byte:0104: IdleTimerMSB = 00
    Byte:0105: IdleTimerNMSB = 00
    Byte:0106: IdleTimerNLSB = 00
    Byte:0107: IdleTimerLSB = 05
    Byte:0108: StandbyTimerMSB = 00
    Byte:0109: StandbyTimerNMSB = 00
    Byte:010A: StandbyTimerNLSB = 00
    Byte:010B: StandbyTimerLSB = 04

    BackgroundMediaScan Mode Page
    BGMS Group
    Byte:010F: BGMSBusIdleIn100ms = 00
    Byte:0110: OtherScanFlags = 00
    Byte:0110: Bit:0, IRAW_ENABLE = 0
    Byte:0110: Bit:1, IRAW_DISABLE_REASSIGNMENTS = 0
    Byte:0111: IRAWWriteCachePercentage = 00

    Byte:0112: IRAWDelayInMilliSecs = 00
    Byte:0113: IRAWMaxQDepth = 00
    Byte:0114: BGMSFlags = 00
    Byte:0114: Bit:1, BGMS_DISABLE_DATA_REFRESH = 0
    Byte:0114: Bit:2, BGMS_DISABLE_TEMPERATURE_LIMITATION = 0
    Byte:0115: BGMSECCTLevel = 08
    Byte:011C: ReadAfterWriteControl = 31
    Byte:011C: Bit:0, MP_RAW_ENABLE_BIT = 1
    Byte:011C: Bit:1, MP_RAW_TRIP_1ST_N_WRITES = 0
    Byte:011C: Bit:2, MP_RAW_FORCE_RAW_MODE = 0
    Byte:011C: Bit:3, MP_RAW_UDS_DEBUG_MODE = 0
    Byte:011C: Bit:4, MP_RAW_DISABLE_AR_ON_GOOD_READ = 1
    Byte:011C: Bit:5, MP_RAW_DISABLE_SOFT_AR = 1
    Byte:011C: Bit:6, MP_RAW_DISABLE_SERIAL_DEBUG_MSG = 0

    Byte:011D: NWritesAfterSWDFail = 08
    Byte:011E: NWritesAfterRAWFail = 08
    Byte:011F: NWritesAfterIRAWFail = 08
    Byte:0120: N1stWrites = 00
    Byte:0121: RAWOnColdThreshold = 0A
    Byte:0122: RAWOnHotThreshold = 3A
    Byte:0123: RAWATAMode = 02
    Byte:0124: RAWVerifyNSectors = 00 10 00 00
    Byte:0128: RAWVerifyNSectorsATAMode3 = 00 00
    Byte:012A: NWritesAfterSWDSumFail = 08
    Byte:012C: SWDControl = 00
    Byte:012C: Bit:0, MP_SWD_ENABLE_BIT = 0
    Byte:012C: Bit:1, MP_SWD_DONT_REPORT_BIT = 0
    Byte:012C: Bit:2, MP_SWD_DEBUG_MODE_BIT = 0
    Byte:012D: SWDDvgasEventsBeforeFail = 00
    Byte:012E: SWDRvgasEventsBeforeFail = 00
    Byte:012F: SWDFvgasEventsBeforeFail = 00
    Byte:0130: SWDSumOfEventsBeforeFail = 00
    Byte:0134: DOSOughtToScanThreshold = 04
    Byte:0135: DOSNeedToScanThreshold = 04

    Byte:0136: DOSNeedToGraceMilliseconds = 13 88
    Byte:0138: DOSNeedToRegraceMilliseconds = 03 E8
    Byte:013A: DOSNeedToMinimumScanMilliseconds = 00 C8
    Byte:013C: RAWOnForNPowerCycles = 00 00
    Byte:013E: RAWOnForNHours = 00 00
    Byte:0140: RAWOnForNSpinups = 00 00

    UnifiedDebugGeneral Mode Page
    UDSGeneral Group
    Byte:0146: Revision = 00

    Byte:0147: GlobalTraceTriggerFlags = 70
    Byte:0147: Bit:3, UDS_GEN_SVIN_BIT = 0
    Byte:0147: Bit:4, UDS_GEN_SVEN_BIT = 1
    Byte:0147: Bit:5, UDS_GEN_GTGE_BIT = 1
    Byte:0147: Bit:6, UDS_GEN_TREN_BIT = 1
    Byte:0147: Bit:7, UDS_GEN_TGTD_BIT = 0
    Byte:0148: MethodParameterFlags = 00
    Byte:0148: Bit:7, UDS_CLR = 0
    Byte:014C: DetailedExternalTriggerFlags = 00

    Byte:014E: ErrorTypeMSB = 00
    Byte:014F: ErrorTypeLSB = 00
    Byte:0150: ErrorLBABigEndian = 00 00 00 00 00 00 00 00

    Byte:015C: AutomaticTraceSaveFlags = 80
    Byte:015C: Bit:5, UDS_GEN_INTR_BIT = 0

    Byte:015C: Bit:6, UDS_GEN_DTFS_BIT = 0
    Byte:015C: Bit:7, UDS_GEN_TSEN_BIT = 1
    Byte:015E: MSBAutomaticTraceSaveIntervalInMinutes = 00
    Byte:015F: LSBAutomaticTraceSaveIntervalInMinutes = 78

    Byte:0160: MSBMinimumIdleTimeBeforeAutoTraceSaveInMilliseconds = 00
    Byte:0161: LSBMinimumIdleTimeBeforeAutoTraceSaveInMilliseconds = C8
    Byte:0162: TimestampFormatIdentifierMSB = 00
    Byte:0163: TimestampFormatIdentifierLSB = 00
    Byte:0164: CustomerSystemTimeInCustUniqueFormat = 00 00 00 00 00 00 00 00

    DriveNativeInfo Mode Page
    DriveNativeInfo Group
    Byte:0186: PartNumber = 30 32 37 4A 4A 30 44 54 58
    ‘027JJ0DTX’
    Byte:018F: PartNumberWhitespacePad = 20 20 20 20 20 20 20 20
    ‘ ‘
    Byte:0197: PartNumberPad = 00
    Byte:0198: ProcessControlVersion = 00 00
    Byte:019A: CongenConfigurationState = 01
    Byte:019B: WrittenCount = 00
    Byte:019C: InternalSeagateModelNumber =
    53 54 39 32 35 30 33 31 35 41 53 20 20 20 20 20
    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20

    20 20 20 20 20 20 20 20

    ‘ST9250315AS ‘
    Byte:01C4: BuildFlags = 00 00

    Byte:01C4: Bit:0, QNR_SUPPORTED = 0
    Byte:01C6: RealTimeUpdatedFlags = 08 00
    Byte:01C6: Bit:3, CONGEN_READ_FROM_MEDIA = 1

    UDSFastTraceClassesLevels Mode Page
    UDSFastTrace Group
    Byte:01CC: Revision = 00

    Byte:01CD: FastTraceLevels_0 = 11
    Byte:01CE: FastTraceLevels_1 = 11
    Byte:01CF: FastTraceLevels_2 = 11
    Byte:01D0: FastTraceLevels_3 = 11
    Byte:01D1: FastTraceLevels_4 = 11
    Byte:01D2: FastTraceLevels_5 = 11
    Byte:01D3: FastTraceLevels_6 = 11
    Byte:01D4: FastTraceLevels_7 = 12
    Byte:01D5: FastTraceLevels_8 = 11
    Byte:01D6: FastTraceLevels_9 = 11
    Byte:01D7: FastTraceLevels_10 = 11
    Byte:01D8: FastTraceLevels_11 = 11
    Byte:01D9: FastTraceLevels_12 = 11
    Byte:01DA: FastTraceLevels_13 = 11
    Byte:01DB: FastTraceLevels_14 = 11
    Byte:01DC: FastTraceLevels_15 = 11
    Byte:01DD: FastTraceLevels_16 = 11
    Byte:01DE: FastTraceLevels_17 = 11
    Byte:01DF: FastTraceLevels_18 = 11
    Byte:01E0: FastTraceLevels_19 = 11
    Byte:01E1: FastTraceLevels_20 = 11
    Byte:01E2: FastTraceLevels_21 = 11
    Byte:01E3: FastTraceLevels_22 = 11
    Byte:01E4: FastTraceLevels_23 = 11
    Byte:01E5: FastTraceLevels_24 = 11
    Byte:01E6: FastTraceLevels_25 = 11
    Byte:01E7: FastTraceLevels_26 = 11
    Byte:01E8: FastTraceLevels_27 = 11
    Byte:01E9: FastTraceLevels_28 = 11
    Byte:01EA: FastTraceLevels_29 = 11
    Byte:01EB: FastTraceLevels_30 = 11
    Byte:01EC: FastTraceLevels_31 = 10

    UDSTriggerControl Mode Page
    UDSTrigger Group
    Byte:01F4: Revision = 00
    Byte:01F8: TriggerControlFlags1_0 = 00
    Byte:01FC: TriggerCaptureFlags1_0 = 00
    Byte:01FD: TriggerCaptureFlags2_0 = 00
    Byte:01FE: SpecialTriggerCaptureFlags_0 = 00
    Byte:0200: TriggerResponseFlags1_0 = 00
    Byte:0201: TriggerResponseFlags2_0 = 00
    Byte:0202: SpecialTriggerResponseFlags_0 = 00
    Byte:0204: TriggerControlFlags1_1 = 00
    Byte:0208: TriggerCaptureFlags1_1 = 00
    Byte:0209: TriggerCaptureFlags2_1 = 00
    Byte:020A: SpecialTriggerCaptureFlags_1 = 00
    Byte:020C: TriggerResponseFlags1_1 = 00
    Byte:020D: TriggerResponseFlags2_1 = 00
    Byte:020E: SpecialTriggerResponseFlags_1 = 00

    Byte:0210: TriggerControlFlags1_2 = 80
    Byte:0214: TriggerCaptureFlags1_2 = F2
    Byte:0215: TriggerCaptureFlags2_2 = E8
    Byte:0216: SpecialTriggerCaptureFlags_2 = 80
    Byte:0218: TriggerResponseFlags1_2 = 00
    Byte:0219: TriggerResponseFlags2_2 = A0
    Byte:021A: SpecialTriggerResponseFlags_2 = 80
    Byte:021C: TriggerControlFlags1_3 = 80
    Byte:0220: TriggerCaptureFlags1_3 = F2
    Byte:0221: TriggerCaptureFlags2_3 = E8
    Byte:0222: SpecialTriggerCaptureFlags_3 = 80
    Byte:0224: TriggerResponseFlags1_3 = 00

    Byte:0225: TriggerResponseFlags2_3 = A0
    Byte:0226: SpecialTriggerResponseFlags_3 = 80
    Byte:0228: TriggerControlFlags1_4 = 80
    Byte:022C: TriggerCaptureFlags1_4 = F2
    Byte:022D: TriggerCaptureFlags2_4 = E8

    Byte:022E: SpecialTriggerCaptureFlags_4 = 80
    Byte:0230: TriggerResponseFlags1_4 = 02
    Byte:0231: TriggerResponseFlags2_4 = A0
    Byte:0232: SpecialTriggerResponseFlags_4 = 80
    Byte:0234: TriggerControlFlags1_5 = 80
    Byte:0238: TriggerCaptureFlags1_5 = F2
    Byte:0239: TriggerCaptureFlags2_5 = E8
    Byte:023A: SpecialTriggerCaptureFlags_5 = 80
    Byte:023C: TriggerResponseFlags1_5 = 00
    Byte:023D: TriggerResponseFlags2_5 = A0
    Byte:023E: SpecialTriggerResponseFlags_5 = 80
    Byte:0240: TriggerControlFlags1_6 = 80
    Byte:0244: TriggerCaptureFlags1_6 = 71
    Byte:0245: TriggerCaptureFlags2_6 = 00
    Byte:0246: SpecialTriggerCaptureFlags_6 = 80
    Byte:0248: TriggerResponseFlags1_6 = 00
    Byte:0249: TriggerResponseFlags2_6 = A0
    Byte:024A: SpecialTriggerResponseFlags_6 = 80
    Byte:024C: TriggerControlFlags1_7 = 80
    Byte:0250: TriggerCaptureFlags1_7 = 71
    Byte:0251: TriggerCaptureFlags2_7 = C8
    Byte:0252: SpecialTriggerCaptureFlags_7 = 80
    Byte:0254: TriggerResponseFlags1_7 = 00
    Byte:0255: TriggerResponseFlags2_7 = A0
    Byte:0256: SpecialTriggerResponseFlags_7 = 80
    Byte:0258: TriggerControlFlags1_8 = 80
    Byte:025C: TriggerCaptureFlags1_8 = F2

    Byte:025D: TriggerCaptureFlags2_8 = E8
    Byte:025E: SpecialTriggerCaptureFlags_8 = 80

    Byte:0260: TriggerResponseFlags1_8 = 00
    Byte:0261: TriggerResponseFlags2_8 = A0
    Byte:0262: SpecialTriggerResponseFlags_8 = 80
    Byte:0264: TriggerControlFlags1_9 = 80
    Byte:0268: TriggerCaptureFlags1_9 = F2
    Byte:0269: TriggerCaptureFlags2_9 = E8
    Byte:026A: SpecialTriggerCaptureFlags_9 = 80
    Byte:026C: TriggerResponseFlags1_9 = 00
    Byte:026D: TriggerResponseFlags2_9 = A0
    Byte:026E: SpecialTriggerResponseFlags_9 = 80
    Byte:0270: TriggerControlFlags1_10 = 00
    Byte:0274: TriggerCaptureFlags1_10 = 11
    Byte:0275: TriggerCaptureFlags2_10 = C8
    Byte:0276: SpecialTriggerCaptureFlags_10 = 80
    Byte:0278: TriggerResponseFlags1_10 = 00
    Byte:0279: TriggerResponseFlags2_10 = A0
    Byte:027A: SpecialTriggerResponseFlags_10 = 80
    Byte:027C: TriggerControlFlags1_11 = 80
    Byte:0280: TriggerCaptureFlags1_11 = F2
    Byte:0281: TriggerCaptureFlags2_11 = E8
    Byte:0282: SpecialTriggerCaptureFlags_11 = 80

    Byte:0284: TriggerResponseFlags1_11 = 00
    Byte:0285: TriggerResponseFlags2_11 = A0
    Byte:0286: SpecialTriggerResponseFlags_11 = 80
    Byte:0288: TriggerControlFlags1_12 = 80
    Byte:028C: TriggerCaptureFlags1_12 = F2
    Byte:028D: TriggerCaptureFlags2_12 = E8
    Byte:028E: SpecialTriggerCaptureFlags_12 = 80
    Byte:0290: TriggerResponseFlags1_12 = 00

    Byte:0291: TriggerResponseFlags2_12 = A0
    Byte:0292: SpecialTriggerResponseFlags_12 = 80
    Byte:0294: TriggerControlFlags1_13 = 00
    Byte:0298: TriggerCaptureFlags1_13 = 00

    Byte:0299: TriggerCaptureFlags2_13 = 00
    Byte:029A: SpecialTriggerCaptureFlags_13 = 00
    Byte:029C: TriggerResponseFlags1_13 = 00
    Byte:029D: TriggerResponseFlags2_13 = 00

    Byte:029E: SpecialTriggerResponseFlags_13 = 00
    Byte:02A0: TriggerControlFlags1_14 = 80
    Byte:02A4: TriggerCaptureFlags1_14 = F2
    Byte:02A5: TriggerCaptureFlags2_14 = E8
    Byte:02A6: SpecialTriggerCaptureFlags_14 = 80
    Byte:02A8: TriggerResponseFlags1_14 = 00
    Byte:02A9: TriggerResponseFlags2_14 = A0
    Byte:02AA: SpecialTriggerResponseFlags_14 = 80
    Byte:02AC: TriggerControlFlags1_15 = 80
    Byte:02B0: TriggerCaptureFlags1_15 = 71
    Byte:02B1: TriggerCaptureFlags2_15 = C8
    Byte:02B2: SpecialTriggerCaptureFlags_15 = 80
    Byte:02B4: TriggerResponseFlags1_15 = 00
    Byte:02B5: TriggerResponseFlags2_15 = A0
    Byte:02B6: SpecialTriggerResponseFlags_15 = 80

    Byte:02B8: TriggerControlFlags1_16 = 00
    Byte:02BC: TriggerCaptureFlags1_16 = F2
    Byte:02BD: TriggerCaptureFlags2_16 = C8
    Byte:02BE: SpecialTriggerCaptureFlags_16 = 80
    Byte:02C0: TriggerResponseFlags1_16 = 00
    Byte:02C1: TriggerResponseFlags2_16 = A0
    Byte:02C2: SpecialTriggerResponseFlags_16 = 80
    Byte:02C4: TriggerControlFlags1_17 = 00
    Byte:02C8: TriggerCaptureFlags1_17 = 00
    Byte:02C9: TriggerCaptureFlags2_17 = 00
    Byte:02CA: SpecialTriggerCaptureFlags_17 = 00
    Byte:02CC: TriggerResponseFlags1_17 = 00
    Byte:02CD: TriggerResponseFlags2_17 = 00
    Byte:02CE: SpecialTriggerResponseFlags_17 = 00
    Byte:02D0: TriggerControlFlags1_18 = 80
    Byte:02D4: TriggerCaptureFlags1_18 = 71
    Byte:02D5: TriggerCaptureFlags2_18 = C8
    Byte:02D6: SpecialTriggerCaptureFlags_18 = 80

    Byte:02D8: TriggerResponseFlags1_18 = 00
    Byte:02D9: TriggerResponseFlags2_18 = A0
    Byte:02DA: SpecialTriggerResponseFlags_18 = 80
    Byte:02DC: TriggerControlFlags1_19 = 00
    Byte:02E0: TriggerCaptureFlags1_19 = 00
    Byte:02E1: TriggerCaptureFlags2_19 = 00
    Byte:02E2: SpecialTriggerCaptureFlags_19 = 00
    Byte:02E4: TriggerResponseFlags1_19 = 00

    Byte:02E5: TriggerResponseFlags2_19 = 00
    Byte:02E6: SpecialTriggerResponseFlags_19 = 00
    Byte:02E8: TriggerControlFlags1_20 = 00
    Byte:02EC: TriggerCaptureFlags1_20 = 00

    Byte:02ED: TriggerCaptureFlags2_20 = 00
    Byte:02EE: SpecialTriggerCaptureFlags_20 = 00
    Byte:02F0: TriggerResponseFlags1_20 = 00
    Byte:02F1: TriggerResponseFlags2_20 = 00

    Byte:02F2: SpecialTriggerResponseFlags_20 = 00
    Byte:02F4: TriggerControlFlags1_21 = 00
    Byte:02F8: TriggerCaptureFlags1_21 = 00
    Byte:02F9: TriggerCaptureFlags2_21 = 00
    Byte:02FA: SpecialTriggerCaptureFlags_21 = 00
    Byte:02FC: TriggerResponseFlags1_21 = 00
    Byte:02FD: TriggerResponseFlags2_21 = 00
    Byte:02FE: SpecialTriggerResponseFlags_21 = 00

    UDSTraceBufferConfig Mode Page
    UDSBuffer Group
    Byte:0304: Revision = 00
    Byte:0308: MinimumAllocationInTraceBlocksMSB_0 = 00
    Byte:0309: MinimumAllocationInTraceBlocksLSB_0 = 05
    Byte:030A: TraceBufferControlFlags1_0 = 80
    Byte:030C: MinimumAllocationInTraceBlocksMSB_1 = 00
    Byte:030D: MinimumAllocationInTraceBlocksLSB_1 = 00
    Byte:030E: TraceBufferControlFlags1_1 = 00
    Byte:0310: MinimumAllocationInTraceBlocksMSB_2 = 00
    Byte:0311: MinimumAllocationInTraceBlocksLSB_2 = 00
    Byte:0312: TraceBufferControlFlags1_2 = 00
    Byte:0314: MinimumAllocationInTraceBlocksMSB_3 = 00
    Byte:0315: MinimumAllocationInTraceBlocksLSB_3 = 00
    Byte:0316: TraceBufferControlFlags1_3 = 00
    Byte:0318: MinimumAllocationInTraceBlocksMSB_4 = 00
    Byte:0319: MinimumAllocationInTraceBlocksLSB_4 = 00
    Byte:031A: TraceBufferControlFlags1_4 = 00
    Byte:031C: MinimumAllocationInTraceBlocksMSB_5 = 00
    Byte:031D: MinimumAllocationInTraceBlocksLSB_5 = 00
    Byte:031E: TraceBufferControlFlags1_5 = 00
    Byte:0320: MinimumAllocationInTraceBlocksMSB_6 = 00
    Byte:0321: MinimumAllocationInTraceBlocksLSB_6 = 00
    Byte:0322: TraceBufferControlFlags1_6 = 00
    Byte:0324: MinimumAllocationInTraceBlocksMSB_7 = 00
    Byte:0325: MinimumAllocationInTraceBlocksLSB_7 = 00
    Byte:0326: TraceBufferControlFlags1_7 = 00
    Byte:0328: MinimumAllocationInTraceBlocksMSB_8 = 00
    Byte:0329: MinimumAllocationInTraceBlocksLSB_8 = 00
    Byte:032A: TraceBufferControlFlags1_8 = 00
    Byte:032C: MinimumAllocationInTraceBlocksMSB_9 = 00
    Byte:032D: MinimumAllocationInTraceBlocksLSB_9 = 00
    Byte:032E: TraceBufferControlFlags1_9 = 00
    Byte:0330: MinimumAllocationInTraceBlocksMSB_10 = 00
    Byte:0331: MinimumAllocationInTraceBlocksLSB_10 = 00
    Byte:0332: TraceBufferControlFlags1_10 = 00
    Byte:0334: MinimumAllocationInTraceBlocksMSB_11 = 00
    Byte:0335: MinimumAllocationInTraceBlocksLSB_11 = 00
    Byte:0336: TraceBufferControlFlags1_11 = 00
    Byte:0338: MinimumAllocationInTraceBlocksMSB_12 = 00
    Byte:0339: MinimumAllocationInTraceBlocksLSB_12 = 00
    Byte:033A: TraceBufferControlFlags1_12 = 00
    Byte:033C: MinimumAllocationInTraceBlocksMSB_13 = 00
    Byte:033D: MinimumAllocationInTraceBlocksLSB_13 = 00
    Byte:033E: TraceBufferControlFlags1_13 = 00

    Byte:0340: MinimumAllocationInTraceBlocksMSB_14 = 00
    Byte:0341: MinimumAllocationInTraceBlocksLSB_14 = 00
    Byte:0342: TraceBufferControlFlags1_14 = 00
    Byte:0344: MinimumAllocationInTraceBlocksMSB_15 = 00
    Byte:0345: MinimumAllocationInTraceBlocksLSB_15 = 00
    Byte:0346: TraceBufferControlFlags1_15 = 00
    Byte:0348: MinimumAllocationInTraceBlocksMSB_16 = 00
    Byte:0349: MinimumAllocationInTraceBlocksLSB_16 = 00

    Byte:034A: TraceBufferControlFlags1_16 = 00
    Byte:034C: MinimumAllocationInTraceBlocksMSB_17 = 00
    Byte:034D: MinimumAllocationInTraceBlocksLSB_17 = 00
    Byte:034E: TraceBufferControlFlags1_17 = 00
    Byte:0350: MinimumAllocationInTraceBlocksMSB_18 = 00
    Byte:0351: MinimumAllocationInTraceBlocksLSB_18 = 00
    Byte:0352: TraceBufferControlFlags1_18 = 00
    Byte:0354: MinimumAllocationInTraceBlocksMSB_19 = 00
    Byte:0355: MinimumAllocationInTraceBlocksLSB_19 = 00
    Byte:0356: TraceBufferControlFlags1_19 = 00
    Byte:0358: MinimumAllocationInTraceBlocksMSB_20 = 00
    Byte:0359: MinimumAllocationInTraceBlocksLSB_20 = 00
    Byte:035A: TraceBufferControlFlags1_20 = 00
    Byte:035C: MinimumAllocationInTraceBlocksMSB_21 = 00
    Byte:035D: MinimumAllocationInTraceBlocksLSB_21 = 00
    Byte:035E: TraceBufferControlFlags1_21 = 00
    Byte:0360: MinimumAllocationInTraceBlocksMSB_22 = 00

    Byte:0361: MinimumAllocationInTraceBlocksLSB_22 = 00
    Byte:0362: TraceBufferControlFlags1_22 = 00
    Byte:0364: MinimumAllocationInTraceBlocksMSB_23 = 00
    Byte:0365: MinimumAllocationInTraceBlocksLSB_23 = 00
    Byte:0366: TraceBufferControlFlags1_23 = 00
    Byte:0368: MinimumAllocationInTraceBlocksMSB_24 = 00
    Byte:0369: MinimumAllocationInTraceBlocksLSB_24 = 00
    Byte:036A: TraceBufferControlFlags1_24 = 00
    Byte:036C: MinimumAllocationInTraceBlocksMSB_25 = 00
    Byte:036D: MinimumAllocationInTraceBlocksLSB_25 = 00
    Byte:036E: TraceBufferControlFlags1_25 = 00
    Byte:0370: MinimumAllocationInTraceBlocksMSB_26 = 00
    Byte:0371: MinimumAllocationInTraceBlocksLSB_26 = 00
    Byte:0372: TraceBufferControlFlags1_26 = 00
    Byte:0374: MinimumAllocationInTraceBlocksMSB_27 = 00
    Byte:0375: MinimumAllocationInTraceBlocksLSB_27 = 00
    Byte:0376: TraceBufferControlFlags1_27 = 00

    Byte:0378: MinimumAllocationInTraceBlocksMSB_28 = 00
    Byte:0379: MinimumAllocationInTraceBlocksLSB_28 = 00
    Byte:037A: TraceBufferControlFlags1_28 = 00
    Byte:037C: MinimumAllocationInTraceBlocksMSB_29 = 00
    Byte:037D: MinimumAllocationInTraceBlocksLSB_29 = 00
    Byte:037E: TraceBufferControlFlags1_29 = 00
    Byte:0380: MinimumAllocationInTraceBlocksMSB_30 = 00
    Byte:0381: MinimumAllocationInTraceBlocksLSB_30 = 00

    Byte:0382: TraceBufferControlFlags1_30 = 00
    Byte:0384: MinimumAllocationInTraceBlocksMSB_31 = 00
    Byte:0385: MinimumAllocationInTraceBlocksLSB_31 = 00
    Byte:0386: TraceBufferControlFlags1_31 = 00
    Byte:0388: MinimumAllocationInTraceBlocksMSB_32 = 00
    Byte:0389: MinimumAllocationInTraceBlocksLSB_32 = 00
    Byte:038A: TraceBufferControlFlags1_32 = 00
    Byte:038C: MinimumAllocationInTraceBlocksMSB_33 = 00
    Byte:038D: MinimumAllocationInTraceBlocksLSB_33 = 00
    Byte:038E: TraceBufferControlFlags1_33 = 00
    Byte:0390: MinimumAllocationInTraceBlocksMSB_34 = 00
    Byte:0391: MinimumAllocationInTraceBlocksLSB_34 = 00
    Byte:0392: TraceBufferControlFlags1_34 = 00
    Byte:0394: MinimumAllocationInTraceBlocksMSB_35 = 00
    Byte:0395: MinimumAllocationInTraceBlocksLSB_35 = 00
    Byte:0396: TraceBufferControlFlags1_35 = 00
    Byte:0398: MinimumAllocationInTraceBlocksMSB_36 = 00

    Byte:0399: MinimumAllocationInTraceBlocksLSB_36 = 00
    Byte:039A: TraceBufferControlFlags1_36 = 00
    Byte:039C: MinimumAllocationInTraceBlocksMSB_37 = 00
    Byte:039D: MinimumAllocationInTraceBlocksLSB_37 = 00
    Byte:039E: TraceBufferControlFlags1_37 = 00
    Byte:03A0: MinimumAllocationInTraceBlocksMSB_38 = 00
    Byte:03A1: MinimumAllocationInTraceBlocksLSB_38 = 00
    Byte:03A2: TraceBufferControlFlags1_38 = 00
    Byte:03A4: MinimumAllocationInTraceBlocksMSB_39 = 00
    Byte:03A5: MinimumAllocationInTraceBlocksLSB_39 = 00
    Byte:03A6: TraceBufferControlFlags1_39 = 00
    Byte:03A8: MinimumAllocationInTraceBlocksMSB_40 = 00
    Byte:03A9: MinimumAllocationInTraceBlocksLSB_40 = 00
    Byte:03AA: TraceBufferControlFlags1_40 = 00
    Byte:03AC: MinimumAllocationInTraceBlocksMSB_41 = 00
    Byte:03AD: MinimumAllocationInTraceBlocksLSB_41 = 00
    Byte:03AE: TraceBufferControlFlags1_41 = 00

    Byte:03B0: MinimumAllocationInTraceBlocksMSB_42 = 00
    Byte:03B1: MinimumAllocationInTraceBlocksLSB_42 = 00
    Byte:03B2: TraceBufferControlFlags1_42 = 00
    Byte:03B4: MinimumAllocationInTraceBlocksMSB_43 = 00
    Byte:03B5: MinimumAllocationInTraceBlocksLSB_43 = 00
    Byte:03B6: TraceBufferControlFlags1_43 = 00
    Byte:03B8: MinimumAllocationInTraceBlocksMSB_44 = 00
    Byte:03B9: MinimumAllocationInTraceBlocksLSB_44 = 00

    Byte:03BA: TraceBufferControlFlags1_44 = 00
    Byte:03BC: MinimumAllocationInTraceBlocksMSB_45 = 00
    Byte:03BD: MinimumAllocationInTraceBlocksLSB_45 = 00
    Byte:03BE: TraceBufferControlFlags1_45 = 00
    Byte:03C0: MinimumAllocationInTraceBlocksMSB_46 = 00
    Byte:03C1: MinimumAllocationInTraceBlocksLSB_46 = 00
    Byte:03C2: TraceBufferControlFlags1_46 = 00
    Byte:03C4: MinimumAllocationInTraceBlocksMSB_47 = 00
    Byte:03C5: MinimumAllocationInTraceBlocksLSB_47 = 00
    Byte:03C6: TraceBufferControlFlags1_47 = 00
    Byte:03C8: MinimumAllocationInTraceBlocksMSB_48 = 00
    Byte:03C9: MinimumAllocationInTraceBlocksLSB_48 = 00
    Byte:03CA: TraceBufferControlFlags1_48 = 00
    Byte:03CC: MinimumAllocationInTraceBlocksMSB_49 = 00
    Byte:03CD: MinimumAllocationInTraceBlocksLSB_49 = 00
    Byte:03CE: TraceBufferControlFlags1_49 = 00
    Byte:03D0: MinimumAllocationInTraceBlocksMSB_50 = 00

    Byte:03D1: MinimumAllocationInTraceBlocksLSB_50 = 00
    Byte:03D2: TraceBufferControlFlags1_50 = 00
    Byte:03D4: MinimumAllocationInTraceBlocksMSB_51 = 00
    Byte:03D5: MinimumAllocationInTraceBlocksLSB_51 = 00
    Byte:03D6: TraceBufferControlFlags1_51 = 00
    Byte:03D8: MinimumAllocationInTraceBlocksMSB_52 = 00
    Byte:03D9: MinimumAllocationInTraceBlocksLSB_52 = 00
    Byte:03DA: TraceBufferControlFlags1_52 = 00
    Byte:03DC: MinimumAllocationInTraceBlocksMSB_53 = 00
    Byte:03DD: MinimumAllocationInTraceBlocksLSB_53 = 00
    Byte:03DE: TraceBufferControlFlags1_53 = 00
    Byte:03E0: MinimumAllocationInTraceBlocksMSB_54 = 00
    Byte:03E1: MinimumAllocationInTraceBlocksLSB_54 = 00
    Byte:03E2: TraceBufferControlFlags1_54 = 00
    Byte:03E4: MinimumAllocationInTraceBlocksMSB_55 = 00
    Byte:03E5: MinimumAllocationInTraceBlocksLSB_55 = 00
    Byte:03E6: TraceBufferControlFlags1_55 = 00

    Byte:03E8: MinimumAllocationInTraceBlocksMSB_56 = 00
    Byte:03E9: MinimumAllocationInTraceBlocksLSB_56 = 00
    Byte:03EA: TraceBufferControlFlags1_56 = 00
    Byte:03EC: MinimumAllocationInTraceBlocksMSB_57 = 00
    Byte:03ED: MinimumAllocationInTraceBlocksLSB_57 = 00
    Byte:03EE: TraceBufferControlFlags1_57 = 00
    Byte:03F0: MinimumAllocationInTraceBlocksMSB_58 = 00
    Byte:03F1: MinimumAllocationInTraceBlocksLSB_58 = 00

    Byte:03F2: TraceBufferControlFlags1_58 = 00
    Byte:03F4: MinimumAllocationInTraceBlocksMSB_59 = 00
    Byte:03F5: MinimumAllocationInTraceBlocksLSB_59 = 00
    Byte:03F6: TraceBufferControlFlags1_59 = 00
    Byte:03F8: MinimumAllocationInTraceBlocksMSB_60 = 00
    Byte:03F9: MinimumAllocationInTraceBlocksLSB_60 = 00
    Byte:03FA: TraceBufferControlFlags1_60 = 00
    Byte:03FC: MinimumAllocationInTraceBlocksMSB_61 = 00
    Byte:03FD: MinimumAllocationInTraceBlocksLSB_61 = 00
    Byte:03FE: TraceBufferControlFlags1_61 = 00
    Byte:0400: MinimumAllocationInTraceBlocksMSB_62 = 00
    Byte:0401: MinimumAllocationInTraceBlocksLSB_62 = 00
    Byte:0402: TraceBufferControlFlags1_62 = 00
    Byte:0404: MinimumAllocationInTraceBlocksMSB_63 = 00
    Byte:0405: MinimumAllocationInTraceBlocksLSB_63 = 00
    Byte:0406: TraceBufferControlFlags1_63 = 00
    Byte:0408: MinimumAllocationInTraceBlocksMSB_64 = 00

    Byte:0409: MinimumAllocationInTraceBlocksLSB_64 = 00
    Byte:040A: TraceBufferControlFlags1_64 = 00
    Byte:040C: MinimumAllocationInTraceBlocksMSB_65 = 00
    Byte:040D: MinimumAllocationInTraceBlocksLSB_65 = 00
    Byte:040E: TraceBufferControlFlags1_65 = 00
    Byte:0410: MinimumAllocationInTraceBlocksMSB_66 = 00
    Byte:0411: MinimumAllocationInTraceBlocksLSB_66 = 00
    Byte:0412: TraceBufferControlFlags1_66 = 00
    Byte:0414: MinimumAllocationInTraceBlocksMSB_67 = 00
    Byte:0415: MinimumAllocationInTraceBlocksLSB_67 = 00
    Byte:0416: TraceBufferControlFlags1_67 = 00
    Byte:0418: MinimumAllocationInTraceBlocksMSB_68 = 00
    Byte:0419: MinimumAllocationInTraceBlocksLSB_68 = 00
    Byte:041A: TraceBufferControlFlags1_68 = 00
    Byte:041C: MinimumAllocationInTraceBlocksMSB_69 = 00
    Byte:041D: MinimumAllocationInTraceBlocksLSB_69 = 00
    Byte:041E: TraceBufferControlFlags1_69 = 00

    Byte:0420: MinimumAllocationInTraceBlocksMSB_70 = 00
    Byte:0421: MinimumAllocationInTraceBlocksLSB_70 = 00
    Byte:0422: TraceBufferControlFlags1_70 = 00
    Byte:0424: MinimumAllocationInTraceBlocksMSB_71 = 00
    Byte:0425: MinimumAllocationInTraceBlocksLSB_71 = 00
    Byte:0426: TraceBufferControlFlags1_71 = 00
    Byte:0428: MinimumAllocationInTraceBlocksMSB_72 = 00
    Byte:0429: MinimumAllocationInTraceBlocksLSB_72 = 00

    Byte:042A: TraceBufferControlFlags1_72 = 00
    Byte:042C: MinimumAllocationInTraceBlocksMSB_73 = 00
    Byte:042D: MinimumAllocationInTraceBlocksLSB_73 = 00
    Byte:042E: TraceBufferControlFlags1_73 = 00
    Byte:0430: MinimumAllocationInTraceBlocksMSB_74 = 00
    Byte:0431: MinimumAllocationInTraceBlocksLSB_74 = 00
    Byte:0432: TraceBufferControlFlags1_74 = 00
    Byte:0434: MinimumAllocationInTraceBlocksMSB_75 = 00
    Byte:0435: MinimumAllocationInTraceBlocksLSB_75 = 00
    Byte:0436: TraceBufferControlFlags1_75 = 00
    Byte:0438: MinimumAllocationInTraceBlocksMSB_76 = 00
    Byte:0439: MinimumAllocationInTraceBlocksLSB_76 = 00
    Byte:043A: TraceBufferControlFlags1_76 = 00

    Congen Mode Page
    Congen Group
    Byte:0440: NumDefaultATCyls = FF 3F
    Byte:0442: NumDefaultATHeads = 10 00
    Byte:0444: NumDefaultATSectors = 3F 00
    Byte:0446: NumECCBytesForLongCmds = 04 00
    Byte:0448: MaximumMultipleSize = 10
    Byte:0449: LogicalSectorAlignment = 00
    Byte:044A: PIOModeTiming = 00 02
    Byte:044C: DMAModeTiming = 00 02
    Byte:044E: NumCurrentATCyls = FF 3F
    Byte:0450: NumCurrentATHeads = 10 00

    Byte:0452: NumCurrentATSectors = 3F 00
    Byte:0454: CurrentMultipleSize = 10 01
    Byte:0456: MultiwordDMAModesSupported = 07
    Byte:0456: Bit:0, MULTIWORD_DMA_MODE_0_SUPPORTED = 1
    Byte:0456: Bit:1, MULTIWORD_DMA_MODE_1_SUPPORTED = 1
    Byte:0456: Bit:2, MULTIWORD_DMA_MODE_2_SUPPORTED = 1
    Byte:0457: UltraDMAModesSupported = 7F
    Byte:0457: Bit:0, ULTRA_DMA_MODE0_SUPPORTED = 1
    Byte:0457: Bit:1, ULTRA_DMA_MODE1_AND_BELOW_SUPPORTED = 1
    Byte:0457: Bit:2, ULTRA_DMA_MODE2_AND_BELOW_SUPPORTED = 1
    Byte:0457: Bit:3, ULTRA_DMA_MODE3_AND_BELOW_SUPPORTED = 1
    Byte:0457: Bit:4, ULTRA_DMA_MODE4_AND_BELOW_SUPPORTED = 1
    Byte:0457: Bit:5, ULTRA_DMA_MODE5_AND_BELOW_SUPPORTED = 1

    Byte:0457: Bit:6, ULTRA_DMA_MODE6_AND_BELOW_SUPPORTED = 1
    Byte:0458: AdvancedPIOModesSupported = 03 00
    Byte:0458: Bit:0, PIO_MODE_3_SUPPORTED = 1
    Byte:0458: Bit:1, PIO_MODE_4_SUPPORTED = 1
    Byte:045A: MinimumMultiwordDMACycleTime = 78 00
    Byte:045C: RecommendedMultiwordDMACycleTime = 78 00
    Byte:045E: MinimumPIOTimeWithoutFlowControl = 78 00
    Byte:0460: MinimumPIOTimeWithFlowControl = 78 00
    Byte:0462: QDepth = 1F 00
    Byte:0464: SATACapabilities = 0E 05
    Byte:0465: Bit:0, SATA_NCQ_SUPPORTED = 1
    Byte:0465: Bit:1, HOST_INITIATED_PHY_POWER_MANAGEMENT_SUPPORTED = 0
    Byte:0465: Bit:2, SATA_PHY_EVENT_COUNTERS_SUPPORTED = 1
    Byte:0465: Bit:3, UNLOAD_WHILE_NCQ_CMDS_OUTSTANDING_SUPPORTED = 0
    Byte:0465: Bit:4, NCQ_PRIORITY_SUPPORTED = 0
    Byte:0468: SATAFeaturesSupported = 48 00
    Byte:0468: Bit:2, DMA_AUTOACTIVATE_SUPPORTED = 0
    Byte:0468: Bit:3, DEVICE_INITIATED_POWER_MANAGEMENT_SUPPORTED = 1

    Byte:0468: Bit:6, PRESERVE_SETTINGS_ON_COMRESET_SUPPORTED = 1
    Byte:046A: SATAFeaturesEnabled = 40 00
    Byte:046A: Bit:2, DMA_AUTOACTIVATE_ENABLED = 0
    Byte:046A: Bit:3, DEVICE_INITIATED_POWER_MANAGEMENT_ENABLED = 0

    Byte:046A: Bit:6, PRESERVE_SETTINGS_ON_COMRESET_ENABLED = 1
    Byte:046C: MajorVersionNumber = F0 01
    Byte:046C: Bit:1, ATAPI_1_SUPPORTED = 0
    Byte:046C: Bit:2, ATAPI_2_SUPPORTED = 0
    Byte:046C: Bit:3, ATAPI_3_SUPPORTED = 0
    Byte:046C: Bit:4, ATAPI_4_SUPPORTED = 1
    Byte:046C: Bit:5, ATAPI_5_SUPPORTED = 1
    Byte:046C: Bit:6, ATAPI_6_SUPPORTED = 1
    Byte:046C: Bit:7, ATAPI_7_SUPPORTED = 1
    Byte:046D: Bit:0, ATAPI_8_ACS_SUPPORTED = 1
    Byte:046E: MinorVersionNumber = 29 00
    Byte:0470: CommandSetSupported = 6B 34
    Byte:0470: Bit:0, SMART_SUPPORTED = 1
    Byte:0470: Bit:1, SECURITY_MODE_FEATURE_SET_SUPPORTED = 1
    Byte:0470: Bit:5, WRITE_CACHE_SUPPORTED = 1
    Byte:0470: Bit:6, READ_LOOKAHEAD_SUPPORTED = 1
    Byte:0471: Bit:2, HOST_PROTECTED_AREA_SUPPORTED = 1
    Byte:0471: Bit:4, WRITE_BUFFER_CMD_SUPPORTED = 1
    Byte:0471: Bit:5, READ_BUFFER_CMD_SUPPORTED = 1
    Byte:0471: Bit:6, NOP_CMD_SUPPORTED = 0
    Byte:0472: CommandSetsSupported = 09 7D
    Byte:0472: Bit:1, READ_WRITE_DMA_QUEUED_SUPPORTED = 0
    Byte:0472: Bit:3, ADVANCED_POWER_MANAGEMENT_SUPPORTED = 1
    Byte:0472: Bit:5, POWER_UP_IN_STANDBY_SUPPORTED = 0
    Byte:0472: Bit:6, SET_FEATURES_SPINUP_REQUIRED_SUPPORTED = 0
    Byte:0473: Bit:0, SET_MAX_SECURITY_EXTENSION_SUPPORTED = 1
    Byte:0473: Bit:1, AUTO_ACOUSTIC_MANAGEMENT_SUPPORTED = 0
    Byte:0473: Bit:2, FOURTYEIGHT_BIT_SUPPORTED = 1
    Byte:0473: Bit:3, DCO_COMMAND_SETS_SUPPORTED = 1
    Byte:0473: Bit:4, FLUSH_CACHE_SUPPORTED = 1
    Byte:0473: Bit:5, FLUSH_CACHE_EXT_SUPPORTED = 1
    Byte:0474: CommandSetSupportedExtension = 23 61
    Byte:0474: Bit:0, SMART_ERROR_LOGGING_SUPPORTED = 1
    Byte:0474: Bit:1, SMART_SELF_TEST_SUPPORTED = 1
    Byte:0474: Bit:2, MEDIA_SERIALNUMBER_SUPPORTED = 0
    Byte:0474: Bit:4, STREAMING_FEATURE_SET_SUPPORTED = 0
    Byte:0474: Bit:6, FUA_WRITE_EXT_COMMANDS_SUPPORTED = 0
    Byte:0474: Bit:7, FUA_WRITE_QUEUED_EXT_COMMANDS_SUPPORTED = 0
    Byte:0475: Bit:0, SIXTYFOUR_BIT_WWN_SUPPORTED = 1
    Byte:0475: Bit:3, AV_LITE_SUPPORTED = 0
    Byte:0475: Bit:4, AV_LITE_RC_WC_SUPPORTED = 0
    Byte:0475: Bit:5, IDLE_IMMEDIATE_UNLOAD_SUPPORTED = 1
    Byte:0476: CommandSetEnabled = 69 34
    Byte:0476: Bit:0, SMART_ENABLED = 1
    Byte:0476: Bit:1, SECURITY_MODE_FEATURE_SET_ENABLED = 0
    Byte:0476: Bit:5, WRITE_CACHE_ENABLED = 1
    Byte:0476: Bit:6, READ_LOOKAHEAD_ENABLED = 1
    Byte:0477: Bit:2, HOST_PROTECTED_AREA_ENABLED = 1
    Byte:0478: CommandSetsEnabled = 09 BC
    Byte:0478: Bit:3, ADVANCED_POWER_MANAGEMENT_ENABLED = 1
    Byte:0478: Bit:5, POWER_UP_IN_STANDBY_ENABLED = 0
    Byte:0478: Bit:6, SET_FEATURES_SPINUP_REQUIRED_ENABLED = 0
    Byte:0478: Bit:7, ADDRESS_OFFSET_RESERVED_AREA_BOOT = 0
    Byte:0479: Bit:0, SET_MAX_SECURITY_EXTENSION_ENABLED = 0
    Byte:0479: Bit:1, AUTO_ACOUSTIC_MANAGEMENT_ENABLED = 0
    Byte:047A: CommandSetEnabledExtension = 23 61
    Byte:047A: Bit:2, MEDIA_SERIALNUMBER_IS_VALID = 0
    Byte:047B: Bit:3, AV_LITE_ENABLED = 0
    Byte:047B: Bit:4, AV_LITE_RC_WC_ENABLED = 0
    Byte:047C: FreeFallSensitivity = 00 00
    Byte:047E: CurrentAPMValue = 80 80
    Byte:0480: MasterPasswordRevisionCode = FE FF
    Byte:0482: AcousticLevel = 00 FE
    Byte:0484: StreamMinRequestSize = 00 00
    Byte:0486: StreamXferTimeDMA = 00 00
    Byte:0488: StreamAccessLatency = 00 00
    Byte:048A: StreamPerformanceGranularity = 00 00 00 00
    Byte:048E: StreamXferTimePIO = 00 00
    Byte:0490: Max512ByteUnitsPerDownloadMicrocode = 00 00
    Byte:0492: PhysicalLogicalSectorSize = 00 00
    Byte:0492: Bit:0, TWO_X_LOG_SECTORS_PER_PHY_SECTOR_B0 = 0
    Byte:0492: Bit:1, TWO_X_LOG_SECTORS_PER_PHY_SECTOR_B1 = 0
    Byte:0492: Bit:2, TWO_X_LOG_SECTORS_PER_PHY_SECTOR_B2 = 0
    Byte:0492: Bit:3, TWO_X_LOG_SECTORS_PER_PHY_SECTOR_B3 = 0
    Byte:0493: Bit:4, DEV_LOG_SEC_LEN_GREATER_THAN_256W = 0
    Byte:0493: Bit:5, DEV_HAS_MUL_LOG_SECTORS_PER_PHY_SECTOR = 0
    Byte:0494: AVLiteWorstCaseTimer = 00 00
    Byte:0496: WordsPerLogicalSector = 00 01 00 00
    Byte:049A: ATACommandSetSupportedExt2 = 2E 40
    Byte:049A: Bit:1, WRITE_READ_VERIFY_SUPPORTED = 1
    Byte:049A: Bit:2, WRITE_UNCORRECTABLE_SUPPORTED = 1
    Byte:049A: Bit:3, READ_AND_WRITE_DMA_EXP_GPL_COMMANDS_SUPPORTED = 1

    Byte:049A: Bit:5, FREEFALL_SENSOR_SUPPORTED = 1
    Byte:049C: ATACommandSetEnabledExt2 = 28 40
    Byte:049C: Bit:1, WRITE_READ_VERIFY_ENABLED = 0
    Byte:049C: Bit:3, READ_AND_WRITE_DMA_EXP_GPL_COMMANDS_ENABLED = 1
    Byte:049C: Bit:5, FREEFALL_SENSOR_ENABLED_BY_DEFAULT = 1
    Byte:049E: ATATransportMajorRevisionNumber = 08 10
    Byte:04A0: ATATransportMinorRevisionNumber = 00 00
    Byte:04A2: ATSMARTDefaultFlags = 01 00

    Byte:04A2: Bit:0, SMARTDEFAULTON = 1
    Byte:04A4: ATSMARTConfig =
    0F 00 06 00 03 00 00 00 32 00 14 00 33 00 24 00
    0F 00 1E 00 32 00 00 00 13 00 61 00 32 00 14 00
    32 00 00 00 3A 00 00 00 22 00 2D 00 32 00 00 00

    32 00 00 00 32 00 00 00 22 00 00 00 1A 00 00 00
    12 00 00 00 10 00 00 00 3E 00 00 00 32 00 63 00
    32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 32 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00
    Byte:04A4: SMART1Status = 0F 00
    Byte:04A6: SMART1Threshold = 06
    Byte:04A8: SMART2Status = 03 00
    Byte:04AA: SMART2Threshold = 00

    Byte:04AC: SMART3Status = 32 00
    Byte:04AE: SMART3Threshold = 14
    Byte:04B0: SMART4Status = 33 00
    Byte:04B2: SMART4Threshold = 24
    Byte:04B4: SMART5Status = 0F 00
    Byte:04B6: SMART5Threshold = 1E
    Byte:04B8: SMART6Status = 32 00
    Byte:04BA: SMART6Threshold = 00
    Byte:04BC: SMART7Status = 13 00
    Byte:04BE: SMART7Threshold = 61
    Byte:04C0: SMART8Status = 32 00
    Byte:04C2: SMART8Threshold = 14
    Byte:04C4: SMART9Status = 32 00
    Byte:04C6: SMART9Threshold = 00

    Byte:04C8: SMART10Status = 3A 00
    Byte:04CA: SMART10Threshold = 00
    Byte:04CC: SMART11Status = 22 00
    Byte:04CE: SMART11Threshold = 2D
    Byte:04D0: SMART12Status = 32 00
    Byte:04D2: SMART12Threshold = 00
    Byte:04D4: SMART13Status = 32 00

    Byte:04D6: SMART13Threshold = 00
    Byte:04D8: SMART14Status = 32 00
    Byte:04DA: SMART14Threshold = 00
    Byte:04DC: SMART15Status = 22 00
    Byte:04DE: SMART15Threshold = 00
    Byte:04E0: SMART16Status = 1A 00
    Byte:04E2: SMART16Threshold = 00

    Byte:04E4: SMART17Status = 12 00
    Byte:04E6: SMART17Threshold = 00
    Byte:04E8: SMART18Status = 10 00
    Byte:04EA: SMART18Threshold = 00
    Byte:04EC: SMART19Status = 3E 00
    Byte:04EE: SMART19Threshold = 00
    Byte:04F0: SMART20Status = 32 00

    Byte:04F2: SMART20Threshold = 63
    Byte:04F4: SMART21Status = 32 00
    Byte:04F6: SMART21Threshold = 00
    Byte:04F8: SMART22Status = 00 00
    Byte:04FA: SMART22Threshold = 00
    Byte:04FC: SMART23Status = 00 00
    Byte:04FE: SMART23Threshold = 00

    Byte:0500: SMART24Status = 00 00
    Byte:0502: SMART24Threshold = 00
    Byte:0504: SMART25Status = 00 00
    Byte:0506: SMART25Threshold = 00
    Byte:0508: SMART26Status = 32 00
    Byte:050A: SMART26Threshold = 00
    Byte:050C: SMART27Status = 00 00

    Byte:050E: SMART27Threshold = 00
    Byte:0510: SMART28Status = 00 00
    Byte:0512: SMART28Threshold = 00
    Byte:0514: SMART29Status = 00 00
    Byte:0516: SMART29Threshold = 00
    Byte:0518: SMART30Status = 00 00
    Byte:051A: SMART30Threshold = 00

    Byte:051E: SCTCommandSetSupported = 3B 10
    Byte:051E: Bit:0, SCT_SUPPORTED_COMMAND_SET = 1
    Byte:051E: Bit:1, SCT_SUPPORTED_LONG_SECTOR_ACCESS = 1
    Byte:051E: Bit:2, SCT_SUPPORTED_LBA_SEGMENT_ACCESS = 0
    Byte:051E: Bit:3, SCT_SUPPORTED_ERROR_RECOVERY_CONTROL = 1
    Byte:051E: Bit:4, SCT_SUPPORTED_FEATURES_CONTROL = 1
    Byte:051E: Bit:5, SCT_SUPPORTED_DATA_TABLE = 1
    Byte:0520: SCTFanControlMaxOperatingTemp = 00
    Byte:0521: SCTFanControlOverRangeTemp = 00
    Byte:0522: SCTFanControlUnderRangeTemp = 00
    Byte:0523: SCTFanControlMinOperatingTemp = 00
    Byte:0524: SCTVendorFlags = 04 00
    Byte:0524: Bit:0, SCT_VENDORFLAGS_SEATOOLS = 0
    Byte:0524: Bit:1, SCT_VENDORFLAGS_WRITE_SAME = 0

    Byte:0524: Bit:2, SCT_VENDORFLAGS_CORRECTABLE_BIT = 1
    Byte:0525: Bit:7, SCT_VENDORFLAGS_DEBUG_MODE = 0
    Byte:0526: SCTTimerReadDefault = 00 00
    Byte:0528: SCTTimerWriteDefault = 00 00
    Byte:052A: SCTTenMsecCount = 00
    Byte:052B: SCTPerformanceFlags = 00
    Byte:052C: SCTTempDataTableSize = 80 00
    Byte:052E: SCTSamplingPeriod = 01 00
    Byte:0530: SCTInterval = 01 00
    Byte:0532: ATAPadSlewRate = 00
    Byte:0533: ATAIORDYPadControl = 00
    Byte:0534: PreampHotTweak = 00
    Byte:0535: PreampColdTweak = 00
    Byte:0536: LubeMitigationRetries = 00 00
    Byte:0538: LengthOfWriteSpaceToFlush = 00 00

    Byte:053A: LengthOfWriteCommandToTriggerFlush = 00 00
    Byte:053C: NDSLBAThresholdA = 00 00
    Byte:053E: NDSLBAThresholdB = 00 00
    Byte:0540: NDSPartitionDependencies = 00 00
    Byte:0542: NDSODOffsetConfig = 00
    Byte:0543: NDSIDOffsetConfig = 00

    Byte:0544: APMTimer1mSec = FF 00
    Byte:0546: APMTimer2mSec = 28 23
    Byte:0548: APMStandByTimer = 20 00
    Byte:054A: APMTimerForDither = 2C 01
    Byte:054C: ReadDelayMinimum = 00
    Byte:054D: WriteDelayMinimum = 00
    Byte:054E: WriteDelayIncremental = 00
    Byte:054F: ReadDelayIncremental = 00

    Byte:0550: FeatureFlags = 80 A0 00 08
    Byte:0550: Bit:0, WRITE_CONFIG_DATA_TO_FLASH = 0
    Byte:0550: Bit:1, SPINUP_WRITE_FAULT_THRESHOLDS_ENABLED = 0
    Byte:0550: Bit:2, IOEDC_CHECK_ENABLED = 0
    Byte:0550: Bit:3, IOEDC_ERROR_ENABLED = 0
    Byte:0550: Bit:4, DOWNLOAD_MICROCODE_FUTURE_USE_ONLY = 0

    Byte:0550: Bit:5, SUPPRESS_SERIAL_PORT_PRINTS = 0
    Byte:0550: Bit:6, DRQ_CLEAR_ON_PIO_READ_ERR_SUPPORTED = 0
    Byte:0550: Bit:7, OFFLINE_SEEK_AWAY = 1
    Byte:0551: Bit:0, DELAY_SLEEP_STANDBY_CMDCOMPLETE = 0
    Byte:0551: Bit:1, IDLE_IMMEDIATE_UNLOAD_EMERGENCY = 0
    Byte:0551: Bit:2, ENABLE_ALLOW_RAW_ERROR_RATE_UPDATE = 0
    Byte:0551: Bit:3, OP_SHOCK_DETECTION_ENABLED = 0
    Byte:0551: Bit:4, LOG99_CONTROL = 0
    Byte:0551: Bit:5, READ_WRITE_LONG_EXTENDED_ENABLED = 1
    Byte:0551: Bit:6, WRITE_REORDERING_DISABLED = 0
    Byte:0551: Bit:7, ALLOW_AAM_FEATURE_SET = 1
    Byte:0552: Bit:0, DATA_LOG_ENABLED = 0
    Byte:0552: Bit:1, HOST_STREAM_RECORD_FIRST_ERROR_BLOCK = 0
    Byte:0552: Bit:2, SAVE_ATA_COMMAND_HISTORY_TO_DISC = 0
    Byte:0552: Bit:3, EIB_ON_POWERUP = 0
    Byte:0552: Bit:4, LEFT_JUSTIFY_SERIAL_NUMBER = 0
    Byte:0552: Bit:5, SUN_MICRO_MODEL_NUMBER_UPDATE = 0
    Byte:0552: Bit:6, REVERTING_TO_POWER_ON_DEFAULTS_SUPPORTED = 0
    Byte:0552: Bit:7, RIGHT_JUSTIFY_FIRMWARE_REVISION = 0

    Byte:0553: Bit:0, SEGMENT_INITIALIZED = 0
    Byte:0553: Bit:1, DISPLAY_SMART_COMMANDS_ON_SERIAL_PORT_ENABLED = 0
    Byte:0553: Bit:2, DISABLE_SMART_AUTO_UPDATES = 0
    Byte:0553: Bit:3, DISABLE_LEGACY_READ_WRITE_LONG = 1
    Byte:0553: Bit:4, VERSION_ENFORCEMENT_SUPPORTED = 0
    Byte:0553: Bit:5, ENABLE_MICKEY_CERT = 0
    Byte:0553: Bit:6, RETAIN_AMPS_VALUE_ON_DOWNLOAD = 0

    Byte:0554: PerformanceFlags = 00 3F
    Byte:0554: Bit:0, REDUCED_RAW_TRANSITION_FLUSH = 0
    Byte:0554: Bit:1, REDUCED_AV_RETRIES = 0
    Byte:0554: Bit:4, VJIT_DISABLED = 0
    Byte:0554: Bit:5, ZERO_LATENCY_RD_ENABLED = 0
    Byte:0555: Bit:0, DAR_ENABLED = 1
    Byte:0555: Bit:1, OFFLINE_SPARING_ENABLED = 1
    Byte:0555: Bit:2, JIT3 = 1
    Byte:0555: Bit:3, JIT2 = 1
    Byte:0555: Bit:4, JIT1 = 1
    Byte:0555: Bit:5, JIT0 = 1
    Byte:0555: Bit:6, DISABLE_IDLE_ACTIVITY = 0
    Byte:0555: Bit:7, ENABLE_SELF_SEEK = 0
    Byte:0556: AggressivelyScanThisManyTimes = 00 00
    Byte:0558: LongSeekEventTime = FF FF
    Byte:055A: SleepStandbyDelay = 00 00
    Byte:055C: CustomerUniques = 00 00 00 00

    Byte:0560: CustomerType = 00 00 00 00
    Byte:0564: AdditionalSATAFeatureConfig = 03 00 00 00
    Byte:0564: Bit:0, SATA_FORCE_EARLY_STATUS = 1
    Byte:0564: Bit:1, SATA_EARLY_STATUS_FORCE_COMRESET = 1
    Byte:0564: Bit:2, SATA_INTRACOMMAND_PHY_MANAGEMENT_ENABLED = 0
    Byte:0564: Bit:3, SATA_ENABLE_PHY_PM_CALIBRATION = 0
    Byte:0564: Bit:4, SATA_ENABLE_SPI_VIS_MODE = 0
    Byte:0564: Bit:5, SATA_ENABLE_RERR_TESTING = 0
    Byte:0564: Bit:6, SATA_ENABLE_SSC = 0
    Byte:0564: Bit:7, SATA_EYE_DIAGRAM_TEST = 0
    Byte:0565: Bit:0, SATA_DISABLE_PRIMITIVE_SCRAMBLING = 0
    Byte:0565: Bit:1, SATA_ULTRA_AGGRESSIVE_INTER_COMMAND_PHY_SUPPORTED = 0
    Byte:0565: Bit:2, SATA_ULTRA_AGGRESSIVE_INTRA_COMMAND_PHY_SUPPORTED = 0
    Byte:0568: FactoryODScanMBytes = 00 00
    Byte:056A: FactoryIDScanMBytes = 00 00
    Byte:056C: MaxDSTSelfTestTime = CE 18
    Byte:056E: DSTShortTestTimeLimit = 3C 00
    Byte:0570: BootFlagsForROM = 02 00
    Byte:0570: Bit:0, BOOT_FLAG_POWER_ON_IN_STANDBY = 0
    Byte:0570: Bit:1, BOOT_FLAG_PARTIAL_OOB = 1
    Byte:0570: Bit:2, USE_SMALL_ID_FORMAT = 0
    Byte:0570: Bit:3, LOW_CURRENT_SPINUP = 0
    Byte:0572: LastCongenWriteCaller = 00 00
    Byte:0574: HostStreamJumpSizeInSectors = 00 00
    Byte:0576: HostStreamTotalJumpSteps = 00
    Byte:0577: SerialDebugLevel = 00
    Byte:0578: DefaultStandbyTimer = 00
    Byte:0579: ATAInterSectorTime = 08
    Byte:057A: StandbyDelayBeforePostingStatus = 00 00
    Byte:057C: StandbyPostingStatusFlags = 06 00
    Byte:057C: Bit:0, ENABLE_WAIT_FOR_DRIVE_SPINDOWN_BEFORE_POSTING_STATUS_AFTER_STANDBY = 0
    Byte:057C: Bit:1, ENABLE_HEADS_ON_RAMP_BEFORE_POSTING_STATUS_AFTER_STANDBY = 1
    Byte:057C: Bit:2, ENABLE_DELAY_BEFORE_POSTING_STATUS_AFTER_STANDBY = 1
    Byte:057F: LTTCPowerOnHours = 0A
    Byte:0580: DebugAddress0 = 00 00 00 00
    Byte:0584: DebugValue0 = 00 00 00 00
    Byte:0588: DebugAddress1 = 00 00 00 00
    Byte:058C: DebugValue1 = 00 00 00 00
    Byte:0590: MaxDSTUnrecoverableFailures = 00 00
    Byte:0592: Bit:0, EIB_WRT_MSG_ENABLE = 0
    Byte:0592: Bit:1, EIB_SWD_MSG_ENABLE = 0
    Byte:0592: Bit:2, EIB_SIM_MSG_ENABLE = 0
    Byte:0592: Bit:3, EIB_DEBUG_MSG_ENABLE = 0
    Byte:0593: Expansion =
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    00 00 00 00 00 00 00 00 00 00 00 00 00

    F3 T>

    and here my command list from /C – Q:

    F3 C>Q

    Online CR: Rev 0011.0000, Flash, Abort
    Online ESC: Rev 0011.0000, Flash, AbortLoopOrBatchFile
    Online ‘ ‘: Rev 0001.0000, Flash, PauseOutput
    Online ‘.': Rev 0011.0000, Flash, DisplayActiveStatus
    Online ‘?': Rev 0011.0000, Flash, DisplayDiagBufferInfo
    Online ‘!': Rev 0011.0000, Flash, DisplayRdChannelRegs
    Online ‘$': Rev 0012.0000, Flash, DisplayRwStatsByZone
    Online ‘`': Rev 0012.0000, Flash, DisplayRwStats
    Online ”: Rev 0011.0000, Flash, IncRwScopeSync
    Online ‘{‘: Rev 0011.0000, Flash, ToggleEibTracing
    Online ‘~': Rev 0011.0000, Flash, DisplayInterfaceCmdState
    Online ^A: Rev 0012.0000, Flash, DisplayFirmwareRev
    Online ^B: Rev 0012.0000, Flash, GetThermistorTemperature
    Online ^C: Rev 0011.0000, Flash, FirmwareReset
    Online ^D: Rev 0011.0000, Flash, ToggleRwTracing
    Online ^E: Rev 0011.0000, Flash, DisplayInterfaceConfig
    Online ^F: Rev 0011.0000, Flash, DisplayInterfaceRdCacheInfo
    Online ^I: Rev 0011.0000, Flash, DisplayControllerRegs
    Online ^K: Rev 0011.0000, Flash, DisplayDstStatus
    Online ^L: Rev 0013.0000, Flash, DisplaySignOnMsg
    Online ^N: Rev 0011.0000, Flash, ToggleRwTracing
    Online ^P: Rev 0011.0000, Flash, ToggleDiagIdleMode
    Online ^Q: Rev 0011.0000, Flash, ResumeInterfaceTask
    Online ^R: Rev 0011.0000, Flash, EnableAsciiOnlineSerialPortMode
    Online ^S: Rev 0011.0000, Flash, PauseInterfaceTask
    Online ^T: Rev 0011.0000, Flash, EnableEslipSerialPortMode
    Online ^U: Rev 0011.0000, Flash, DisplayCongen
    Online ^V: Rev 0011.0000, Flash, ToggleInterfaceCmdEcho
    Online ^W: Rev 0011.0000, Flash, RwStatsEnableAndInit
    Online ^X: Rev 0011.0000, Flash, DisplayInterfaceAndRwCmdHistory
    Online ^Y: Rev 0011.0000, Flash, DisplayDstStatus
    Online ^Z: Rev 0011.0000, Flash, EnableAsciiDiagSerialPortMode

    Online ^\: Rev 0011.0000, Flash, ToggleDebugDisplayEnable
    All Levels CR: Rev 0011.0000, Flash, Abort
    All Levels ‘/': Rev 0001.0000, Flash, ChangeDiagLevel, /[Level]
    All Levels ‘+': Rev 0011.0001, Flash, PeekMemoryByte, +[AddrHi],[AddrLo],[Opts]
    All Levels ‘-‘: Rev 0011.0001, Flash, PeekMemoryWord, -[AddrHi],[AddrLo],[Opts]
    All Levels ‘=': Rev 0011.0001, Flash, PokeMemoryByte, =[AddrHi],[AddrLo],[Data],[Opts]
    All Levels ‘@': Rev 0001.0000, Overlay, BatchFileLabel, @[LabelNum]
    All Levels ‘|': Rev 0001.0000, Overlay, BatchFileTerminator, |
    All Levels ‘*': Rev 0011.0000, Overlay, SpecialBatchFileFunction, *[FuncId],[FuncParm0],[FuncParm1]
    All Levels ‘A': Rev 0011.0000, Overlay, SetTestSpace, A[OptsOrParmSelect],[ParmValue],[AddrType],[HdForCylLimit]
    All Levels ‘L': Rev 0001.0002, Overlay, EnableLooping, L[Opts],[CountOrStopOnErrCode]
    Level 1 ‘S': Rev 0011.0001, Flash, EditProcessorMemoryByte, S[AddrHi],[AddrLo],[MemValue],[NumBytes],[Opts]
    Level 1 ‘U': Rev 0011.0001, Flash, EditBufferMemoryByte, U[AddrHi],[AddrLo],[MemValue],[NumBytes]
    Level 1 ‘e': Rev 0011.0000, Flash, SpinDownAndResetDrive, e[MsecDelay],[Opts]
    Level 1 ‘m': Rev 0011.0001, Flash, EditProcessorMemoryWord, m[AddrHi],[AddrLo],[MemValue],[NumBytes],[Opts]
    Level 1 ‘B': Rev 0011.0000, Overlay, BufferDisplay, B[DisplayBlk],[RefBlk],[NumBlks],[Opts],[SymBits]

    Level 1 ‘D': Rev 0011.0001, Overlay, DisplayMemoryBlock, D[AddrHi],[AddrLo],[CompVal],[NumBytes],[Opts],[SizeInBytes]
    Level 1 ‘G': Rev 0011.0000, Overlay, GenericRwRequest, G[Parm0],[Parm1],[Parm2],…[Parm9]
    Level 1 ‘I': Rev 0001.0000, Overlay, BufferDllTune, I[action][DLL]
    Level 1 ‘N': Rev 0011.0001, Overlay, SmartControl, N[SubCmd],[SubCmdParm0],[SubCmdParm1]
    Level 1 ‘c': Rev 0011.0000, Overlay, BufferCompare, c[SrcBlk],[RefBlk],[NumBlks],[ContOnErr]
    Level 2 ‘U': Rev 0011.0000, Flash, SpinUpDrive, U[HoldState],[Hd],[Cyl]
    Level 2 ‘Z': Rev 0011.0000, Flash, SpinDownDrive, Z
    Level 2 ‘B': Rev 0011.0000, Overlay, BufferDisplay, B[DisplayBlk],[RefBlk],[NumBlks],[Opts],[SymBits]
    Level 2 ‘C': Rev 0011.0000, Overlay, BufferCopy, C[SrcBlk],[DestBlk],[NumBlks]
    Level 2 ‘E': Rev 0011.0000, Overlay, DisplayEditLog, E[LogNum],[ErrCodeOrSpecialFuncKey],[SpecialFunc]
    Level 2 ‘F': Rev 0011.0000, Overlay, ModTrkDfctLst, F[PSctr/LBA],[Action]
    Level 2 ‘H': Rev 0011.0000, Overlay, SelectHd, H[Hd],[SkType],[Options]
    Level 2 ‘I': Rev 0011.0002, Overlay, DisplayModifyAdaptiveParm, I,[GroupId]
    Level 2 ‘K': Rev 0011.0000, Overlay, SetTrackingOffset, K[OffsetValue],[PersOrTempOpt],[UnitsOpt],[ChanReload]
    Level 2 ‘M': Rev 0011.0000, Overlay, SetDiagIdleMode, M[ModeSelect],[ModeMask],[ResetToPowerOn]
    Level 2 ‘N': Rev 0001.0000, Overlay, SetDirectWrite, N[EnableDirWrtModeOpt]
    Level 2 ‘O': Rev 0011.0000, Overlay, SeekFromCylToCyl, O[StartPhyCyl0],[StartPhyCyl1],[NumSkPairs],[NumSeconds],[Hd]
    Level 2 ‘P': Rev 0011.0000, Overlay, BufferSetPattern, P[PatternSelOrPatternLow],[PatternHi],[PatternBits],[Opts],[BlkNum],[NumBlks]
    Level 2 ‘Q': Rev 0011.0000, Overlay, WrRdRdChs, Q[Sec],[NumSecs],,[PhyOpt],[Opts]
    Level 2 ‘R': Rev 0011.0000, Overlay, RdChs, R[Sec],[NumSecs],,[PhyOpt],[Opts]
    Level 2 ‘S': Rev 0011.0000, Overlay, SkToLogCyl, S[Cyl],[Hd],[Offset],[OffsetUnitsOpt],[SkType],[Options]
    Level 2 ‘T': Rev 0011.0000, Overlay, MeasureThroughput, T[Opts],[MinSkew],[MaxSkew],[SkewStep]
    Level 2 ‘V': Rev 0011.0000, Overlay, RdVerifyChs, V[Sec],[NumSecs],[CompareBlk],[Opts]
    Level 2 ‘W': Rev 0011.0000, Overlay, WrChs, W[Sec],[NumSecs],,[PhyOpt],[Opts]
    Level 2 ‘X': Rev 0011.0000, Overlay, DisplayTrkSectorInfo, X[LogCyl],[Hd],[SysAreaOpt],[Opts],[RowsPerPage]
    Level 2 ‘Y': Rev 0011.0000, Overlay, SetDerpRetries, Y[Mode],[MaxRdRetries],[MaxWrtRetries],[OtcTLevel],[Options]
    Level 2 ‘c': Rev 0011.0000, Overlay, BufferCompare, c[SrcBlk],[RefBlk],[NumBlks],[ContOnErr]
    Level 2 ‘h': Rev 0011.0000, Overlay, XlatePhySec, h[Sec],[NumSecs]
    Level 2 ‘i': Rev 0011.0000, Overlay, DisplayDefectsOnCurrentTrk, i
    Level 2 ‘j': Rev 0011.0000, Overlay, RdWedge, j[WedgeAddr],[NumWedges],[NumSkipedWedges],[TranSize],[Opts],[RegAddr0],…,[RegAddr13]
    Level 2 ‘l': Rev 0011.0000, Overlay, XlateLogSec, l[Sec],[NumSecs]
    Level 2 ‘o': Rev 0001.0000, Overlay, CorruptLba, o[Lba],[NumBlocks],[NumBytes],[ByteOffset],[Flags]
    Level 2 ‘r': Rev 0011.0000, Overlay, RdLongOrSystemChs, r[LongSec],[LongSecsOrSysSec],[SysSecs],[LongPhySecOpt],[LongOpts],[SysOpts]
    Level 2 ‘s': Rev 0011.0000, Overlay, SkToPhyCyl, s[Cyl],[Hd],[ValidKey],[Offset],[OffsetUnitsOpt],[SkType],[Options]
    Level 2 ‘t': Rev 0011.0000, Overlay, XlateWedge, t[Wdg],[NumWdgs]
    Level 2 ‘u': Rev 0011.0000, Overlay, EnableDisableChannelPreampRegDisplay, u[EnableDisableOpt]
    Level 2 ‘v': Rev 0011.0000, Overlay, ConvertTrackPercentageToOffsetCount, v[Percentage]
    Level 2 ‘w': Rev 0011.0000, Overlay, WrLongOrSystemChs, w[LongSec],[LongSecsOrSysSec],[SysSecs],[LongPhySecOpt],,[SysOpts]
    Level 2 ‘x': Rev 0012.0001, Overlay, DisplayZoneInfo, x[Partition],[Hd],[Zone],[DisplayWedgeOpSyms]
    Level 2 ‘y': Rev 0011.0000, Overlay, SetDerpRetryState, y[Type],[PathState],[RetryStateCnt],[LoopCnt1],[LoopCnt2]
    Level 2 ‘z': Rev 0011.0000, Overlay, WrWedge, z[WedgeAddr],[NumWedges],[NumSkipedWedges],[TranSize],[Opt],[RegAddr0],…,[RegAddr13]
    Level 2 ‘7’: Rev 0011.0000, Overlay, WrVerifyChs, 7[Sec],[NumSecs],[WrBufBlk],[Opts]
    Level 3 ‘U': Rev 0011.0000, Flash, SpinUpDrive, U[HoldState],[Hd],[Cyl]
    Level 3 ‘V': Rev 0011.0000, Flash, RwPowerAsicReg, V[RegAddr],[RegValue],[WrOpt]
    Level 3 ‘Z': Rev 0011.0000, Flash, SpinDownDrive, Z
    Level 3 ‘D': Rev 0011.0000, Overlay, MeasureSkAccessTime, D[SkLength],[SkType],[NumSks]
    Level 3 ‘E': Rev 0011.0000, Overlay, DisplayEditLog, E[LogNum],[ErrCodeOrSpecialFuncKey],[SpecialFunc]
    Level 3 ‘H': Rev 0011.0000, Overlay, SelectHd, H[Hd],[SkType],[Options]
    Level 3 ‘O': Rev 0011.0000, Overlay, SeekFromCylToCyl, O[StartPhyCyl0],[StartPhyCyl1],[NumSkPairs],[NumSeconds],[Hd]
    Level 3 ‘Q': Rev 0011.0000, Overlay, WrRdWrRdChs, Q[Sec],[NumSecs],[Opts]
    Level 3 ‘R': Rev 0011.0000, Overlay, ReadCurrentServoDestination, R
    Level 3 ‘S': Rev 0011.0000, Overlay, SkToLogCyl, S[Cyl],[Hd],[Offset],[OffsetUnitsOpt],[SkType],[Options]
    Level 3 ‘b': Rev 0001.0000, Overlay, LoadUnloadHeads, b[Cmd],[Velocity],[Dwell],[Lock]
    Level 3 ‘f': Rev 0012.0000, Overlay, RealTimeServoTrace, f[SubCmd],[SubCmdParm0],[SubCmdParm1]
    Level 3 ‘p': Rev 0011.0000, Overlay, XlatePhySec, p[Sec],[NumSecs]
    Level 3 ‘q': Rev 0011.0000, Overlay, XlateLogSec, q[Sec],[NumSecs]

    Level 3 ‘s': Rev 0011.0000, Overlay, SkToPhyCyl, s[Cyl],[Hd],[ValidKey],[Offset],[OffsetUnitsOpt],[SkType],[Options]
    Level 4 ‘B': Rev 0011.0000, Overlay, EnableDisableRvff, B[NewRvffControlMode]
    Level 4 ‘D': Rev 0011.0000, Overlay, MeasureSkAccessTime, D[SkLength],[SkType],[NumSks]
    Level 4 ‘E': Rev 0011.0000, Overlay, DisplayEditLog, E[LogNum],[ErrCodeOrSpecialFuncKey],[SpecialFunc]
    Level 4 ‘H': Rev 0011.0000, Overlay, SelectHd, H[Hd],[S

    • daniel says:

      Level 4 ‘K': Rev 0011.0000, Overlay, SetTrackingOffset, K[OffsetValue],[PersOrTempOpt],[UnitsOpt],[ChanReload]
      Level 4 ‘O': Rev 0011.0000, Overlay, DisplayMicroJogForLogChs, O[LogCyl],[Hd],[Opts],[SysAreaOpt]
      Level 4 ‘S': Rev 0011.0000, Overlay, SkToLogCyl, S[Cyl],[Hd],[Offset],[OffsetUnitsOpt],[SkType],[Options]
      Level 4 ‘U': Rev 0011.0000, Overlay, ServoBatchTest, U[SubCmd],[SubCmdParm0],[SubCmdParm1],[SubCmdParm2]
      Level 4 ‘c': Rev 0001.0000, Overlay, FindMinOrMaxCylinders c[Head],[Mode],[RangeMultiplier],[RetryCountLimit],[FilterTimeConstant]
      Level 4 ‘e': Rev 0011.0000, Overlay, EnableDisablePesOutput, e[PesLeftShiftCnt],[DisablePesOut]
      Level 4 ‘k': Rev 0001.0000, Overlay, GetVgaData, k[OpType],[StartHt],[EndHt],[HtInc]
      Level 4 ‘l': Rev 0011.0000, Overlay, ScanTrackForServoDefectsAndZap, l[RdPositionOpt]
      Level 4 ‘q': Rev 0001.0000, Overlay, DisplayServoEventLog, q
      Level 4 ‘s': Rev 0001.0000, Overlay, DisplayServoSectorErrorCount, s
      Level 4 ‘t': Rev 0011.0000, Overlay, DisplayModifyZapTable, t[EntryNum],[EntryValue]
      Level 4 ‘u': Rev 0011.0000, Overlay, SetSkSpeed, u[Opts],[SkSpeed]
      Level 4 ‘v': Rev 0011.0000, Overlay, ButterflySeekTest, v[StartPhyCyl0],[StartPhyCyl1],[NumSkPairs],[NumSeconds],[Hd]

      Level 5 ‘S': Rev 0011.0000, Flash, EnterServoMatlabShell, S
      Level 5 ‘B': Rev 0011.0000, Overlay, Servo Bode Plot, B[BodeType],[InjAmp],[Fmin],[Fmax],[NumFreq],[NumSamples],[EnableTracing]
      Level 5 ‘C': Rev 0011.0000, Overlay, GenericServoCmd, C[CmdNum],[Parm1],…[Parm7]
      Level 5 ‘D': Rev 0011.0000, Overlay, ReadUnlockDdrBuffer, B[OperateCode]

      Level 5 ‘E': Rev 0001.0000, Overlay, MeasureDiscEccentricity
      Level 5 ‘F': Rev 0011.0000, Overlay, DriveFreeFallProtection, F[OpCode],[SimDur],[SimSensorOutputs]
      Level 5 ‘G': Rev 0011.0000, Overlay, SelectServoController, G[Head],[Controller],[InputShift]
      Level 5 ‘R': Rev 0011.0000, Overlay, RdServoRamAtAddr, R[Addr],[NumBytes]
      Level 5 ‘U': Rev 0011.0000, Overlay, EnableDisableServoUpdates, U[VcmDacUpdateOpt],[AToDUdateOpt]
      Level 5 ‘W': Rev 0011.0000, Overlay, WrServoRamAtAddr, W[Addr],[NumBytes],[Data]
      Level 5 ‘Z': Rev 0011.0000, Overlay, RdZapFromDiscToTable, Z
      Level 5 ‘d': Rev 0011.0000, Overlay, DisableEnableServoZap, d[ZapControlMode]
      Level 5 ‘i': Rev 0011.0000, Overlay, RdServoSymbolTableAtIndex, i[Index]
      Level 5 ‘r': Rev 0011.0000, Overlay, RdServoRamAtIndex, r[Index],[NumBytes],[ByteOffset]
      Level 5 ‘w': Rev 0011.0000, Overlay, WrServoRamAtIndex, w[Index],[NumBytes],[Data],[ByteOffset]
      Level 6 ‘B': Rev 0011.0000, Overlay, RunBatchFile, B[BatchFileNum],[DisplayOpt]
      Level 6 ‘D': Rev 0011.0000, Overlay, DisplayBatchFile, D[BatchFileNum]
      Level 6 ‘E': Rev 0011.0000, Overlay, EnterBatchFile, E[BatchFileNum]
      Level 7 ‘Z': Rev 0011.0000, Flash, SpinDownDrive, Z
      Level 7 ‘s': Rev 0011.0000, Flash, WrPeripheralReg, s[OpType],[RegAddr],[RegValue],[RegMask],[RegPagAddr]
      Level 7 ‘t': Rev 0011.0000, Flash, RdPeripheralReg, t[OpType],[RegAddr],[NumRegs],[RegMask],[RegPagAddr]
      Level 7 ‘B': Rev 0011.0000, Overlay, BufferDisplay, B[DisplayBlk],[RefBlk],[NumBlks],[Opts],[SymBits]
      Level 7 ‘C': Rev 0011.0000, Overlay, BufferCopy, C[SrcBlk],[DestBlk],[NumBlks]
      Level 7 ‘D': Rev 0012.0000, Overlay, DisplayTemperature, D,[DevSelect]

      Level 7 ‘E': Rev 0011.0000, Overlay, DisplayEditLog, E[LogNum],[ErrCodeOrSpecialFuncKey],[SpecialFunc]
      Level 7 ‘H': Rev 0011.0000, Overlay, SelectHd, H[Hd],[SkType],[Options]
      Level 7 ‘I': Rev 0011.0002, Overlay, DisplayModifyAdaptiveParm, I,[GroupId]
      Level 7 ‘K': Rev 0011.0000, Overlay, SetTrackFormat, K[UserAreaTrkFormatType],[SysAreaTrkFormatType]
      Level 7 ‘P': Rev 0011.0000, Overlay, BufferSetPattern, P[PatternSelOrPatternLow],[PatternHi],[PatternBits],[Opts],[BlkNum],[NumBlks]

      Level 7 ‘Q': Rev 0011.0000, Overlay, WrRdRdChs, Q[Sec],[NumSecs],,[PhyOpt],[Opts]
      Level 7 ‘R': Rev 0011.0000, Overlay, RdChs, R[Sec],[NumSecs],,[PhyOpt],[Opts]
      Level 7 ‘S': Rev 0011.0000, Overlay, SkToLogCyl, S[Cyl],[Hd],[Offset],[OffsetUnitsOpt],[SkType],[Options]
      Level 7 ‘U': Rev 0011.0000, Overlay, ChannelTemperatureAdj, U[TweakTemperature],[Partition],[Hd],[Zone],[Opts]
      Level 7 ‘W': Rev 0011.0000, Overlay, WrChs, W[Sec],[NumSecs],,[PhyOpt],[Opts]
      Level 7 ‘X': Rev 0011.0000, Overlay, DisplayPreampHdResistance, X
      Level 7 ‘Y': Rev 0011.0000, Overlay, SetDerpRetries, Y[Mode],[MaxRdRetries],[MaxWrtRetries],[OtcTLevel],[Options]
      Level 7 ‘b': Rev 0011.0000, Overlay, EraseTrk, b[AdjacentTrkCnt],[EraseCntPerTrk],[AcEraseOpt]
      Level 7 ‘c': Rev 0011.0000, Overlay, OffTrackCapability, c[Sec],[NumSecs],[SecIncrement],[Offset]
      Level 7 ‘h': Rev 0011.0001, Overlay, MarkMediaFlaw, h[PhyCyl],[Hd],[PhySec],[UndisturbedRadius],[EraseBandTrks],[PtrLen],[WgSpec],[Od/Id]
      Level 7 ‘i': Rev 0011.0000, Overlay, GenericRwRequest, i[Parm0],[Parm1],[Parm2],…[Parm9]
      Level 7 ‘m': Rev 0011.0000, Overlay, DOS, m[Flags],[StartLba],[EndLba],[MinCount]
      Level 7 ‘r': Rev 0011.0000, Overlay, RdNonVolatileAdaptiveParms, r[Opts]
      Level 7 ‘u': Rev 0011.0000, Overlay, EnableDisableWrFault, u[Op]
      Level 7 ‘x': Rev 0012.0001, Overlay, DisplayZoneInfo, x[Partition],[Hd],[Zone],[DisplayWedgeOpSyms]
      Level 7 ‘y': Rev 0011.0000, Overlay, SetDerpRetryState, y[Type],[PathState],[RetryStateCnt],[LoopCnt1],[LoopCnt2]
      Level 8 ‘U': Rev 0011.0000, Flash, SpinUpDrive, U[HoldState],[Hd],[Cyl]

      Level 8 ‘Z': Rev 0011.0000, Flash, SpinDownDrive, Z
      Level 8 ‘C': Rev 0011.0000, Overlay, ServoDiagSubCmds, C[SubCmd],[Parm0],[Parm1],[Parm2]
      Level 8 ‘R': Rev 0011.0000, Overlay, ReadCurrentServoDestination, R
      Level 8 ‘S': Rev 0011.0000, Overlay, SkToLogCyl, S[Cyl],[Hd],[Offset],[OffsetUnitsOpt],[SkType],[Options]
      Level 8 ‘d': Rev 0001.0000, Overlay, HeadSmashTest, d[HeadDirection],[AccelerationDuration],[DecelerationDuration],[AccelerationCurrent],[DecelerationCurrent]
      Level A ‘C': Rev 0011.0000, Overlay, XlatePba, C[PbaHi],[PbaLow],[NumPbas]
      Level A ‘D': Rev 0011.0000, Overlay, XlateSfi, D[PhyCyl],[Hd],[Sfi],[NumSfis]
      Level A ‘E': Rev 0011.0000, Overlay, DisplayEditLog, E[LogNum],[ErrCodeOrSpecialFuncKey],[SpecialFunc]
      Level A ‘F': Rev 0011.0000, Overlay, XlateLba, F[LbaHi],[LbaLo],[SysAreaOpt],[NumLbas]
      Level A ‘M': Rev 0011.0000, Overlay, SetControllerTestPort, M[Port],[Value]
      Level A ‘Q': Rev 0011.0000, Overlay, WrRdRdLba, Q[Lba],[NumLbas],[Opts]
      Level A ‘R': Rev 0011.0000, Overlay, RdLba, R[Lba],[NumLbas],,[Opts]
      Level A ‘S': Rev 0011.0000, Overlay, SkToLba, S[LbaHi],[LbaLo],[Offset],[OffsetUnitsOpt],[SkType],[Options]
      Level A ‘W': Rev 0011.0000, Overlay, WrLba, W[Lba],[NumLbas],,[Opts]
      Level A ‘Y': Rev 0011.0000, Overlay, SetDerpRetries, Y[Mode],[MaxRdRetries],[MaxWrtRetries],[OtcTLevel],[Options]
      Level A ‘c': Rev 0011.0000, Overlay, XlateLllChs, c[Cyl],[Hd],[Sec],[SysAreaOpt],[NumSecs]
      Level A ‘d': Rev 0011.0000, Overlay, XlatePlpChs, d[Cyl],[Hd],[Sec],[NumSecs]
      Level A ‘e': Rev 0011.0000, Overlay, XlateNominalCyl, e[Cyl],[Hd],[Sec],[SysAreaOpt]
      Level A ‘f': Rev 0011.0000, Overlay, XlatePlpChw, f[Cyl],[Hd],[Wdg],[NumWdgs]
      Level A ‘l': Rev 0011.0000, Flash, DisplayTrkInfo, l[LogCyl],[Hd],[SysAreaOpt],[Opts],[RowsPerPage]
      Level A ‘y': Rev 0011.0000, Overlay, SetDerpRetryState, y[Type],[PathState],[RetryStateCnt],[LoopCnt1],[LoopCnt2]
      Level C ‘Q': Rev 0001.0000, Overlay, DisplayAsciiCmdInfo, Q[CmdLevel],[Cmd]
      Level C ‘T': Rev 0011.0000, Overlay, GoopPlot, T[Hd],[StartTrk],[EndTrk],[ECCLvl],[NoFrcSync],[SkipCnt]
      Level E ‘B': Rev 0011.0000, Overlay, WrWedge, B[WedgeAddr],[NumWedges],[NumSkipedWedges],[TranSize],[Opt],[RegAddr0],…,[RegAddr13]

      Level E ‘C': Rev 0011.0000, Overlay, RdWedge, C[WedgeAddr],[NumWedges],[NumSkipedWedges],[TranSize],[Opts],[RegAddr0],…,[RegAddr13]
      Level E ‘G': Rev 0001.0000, Overlay, HeadDegradation, G[OperationControlOptions],[MeasurementControlOptions]
      Level E ‘m': Rev 0011.0000, Overlay, FastMseserMeasurement, m[]
      Level E ‘o': Rev 0011.0000, Overlay, FineRwOffset, o[NumAvgs],[TrkStepSize],[NumGuardTrks]
      Level E ‘w': Rev 0011.0001, Overlay, SlowWrChs, w[Sec],[NumSecs],[ConSec],[Skip],[UnitOfSkip]
      Level F ‘U': Rev 0011.0000, Flash, SpinUpDrive, U[HoldState],[Hd],[Cyl]
      Level F ‘Z': Rev 0011.0000, Flash, SpinDownDrive, Z
      Level F ‘b': Rev 0011.0000, Flash, SetBaudRate, b[BaudRate],[MsecDelay]
      Level F ‘t': Rev 0011.0000, Flash, WrPeripheralReg, t[OpType],[RegAddr],[RegValue],[RegMask],[RegPagAddr]
      Level F ‘B': Rev 0011.0000, Overlay, BufferDisplay, B[DisplayBlk],[RefBlk],[NumBlks],[Opts],[SymBits]
      Level F ‘C': Rev 0011.0000, Overlay, BufferCopy, C[SrcBlk],[DestBlk],[NumBlks]

      Level F ‘D': Rev 0011.0001, Overlay, DisplayMemoryBlock, D[AddrHi],[AddrLo],[CompVal],[NumBytes],[Opts],[SizeInBytes]
      Level F ‘E': Rev 0001.0000, Overlay, SymbolErrorMap, E[trk],[hd],[srt sctr],[sctr cnt],[action],[mx err]
      Level F ‘P': Rev 0011.0000, Overlay, BufferSetPattern, P[PatternSelOrPatternLow],[PatternHi],[PatternBits],[Opts],[BlkNum],[NumBlks]
      Level F ‘V': Rev 0011.0000, Overlay, BufferCompare, V[SrcBlk],[RefBlk],[NumBlks],[ContOnErr]
      Level F ‘Y': Rev 0011.0000, Overlay, SetDerpRetries, Y[Mode],[MaxRdRetries],[MaxWrtRetries],[OtcTLevel],[Options]
      Level F ‘r': Rev 0011.0000, Overlay, RdSystemChs, r[LogSec],[NumSecs],[Opts]
      Level F ‘s': Rev 0011.0000, Overlay, SkToPhyCyl, s[Cyl],[Hd],[ValidKey],[Offset],[OffsetUnitsOpt],[SkType],[Options]
      Level F ‘y': Rev 0011.0000, Overlay, SetDerpRetryState, y[Type],[PathState],[RetryStateCnt],[LoopCnt1],[LoopCnt2]
      Level F ‘z': Rev 0011.0000, Overlay, SataDebug, z[SubCmd],[Parm1],[Parm2],[Parm3]
      Level G ‘B': Rev 0011.0000, Overlay, FillCorrectionBuffer, B[StartAddr],[EndAddr],[Pattern],[Opts]
      Level G ‘C': Rev 0011.0000, Overlay, CopyCorrectionBuffer, C[SrcAddr],[DestAddr],[NumSyms]
      Level G ‘D': Rev 0011.0000, Overlay, DisplayCorrectionBuffer, D[StartAddr],[EndAddr],[CompareData]
      Level G ‘F': Rev 0011.0000, Overlay, FillSuperParityRam, F[StartAddr],[EndAddr],[Pattern]
      Level G ‘G': Rev 0011.0000, Overlay, DisplaySuperParityRam, G[StartAddr],[EndAddr]
      Level H ‘B': Rev 0011.0000, Overlay, BufferDisplay, B[DisplayBlk],[RefBlk],[NumBlks],[Opts],[SymBits]
      Level H ‘P': Rev 0011.0000, Overlay, BufferSetPattern, P[PatternSelOrPatternLow],[PatternHi],[PatternBits],[Opts],[BlkNum],[NumBlks]

      Level H ‘S': Rev 0011.0000, Overlay, SkToLogCyl, S[Cyl],[Hd],[Offset],[OffsetUnitsOpt],[SkType],[Options]
      Level H ‘b': Rev 0012.0000, Overlay, ContactDetect, b[Flags],[Revs],[BaselineRevs],[StartWedge],[A],[B],[C],[D],[E],[StartHt],[HtInc],

      [FixedPESThresh],[FilterDelta],[RangeStart],[RangePts],[AdjThreshSigmaLimit],[VarContactThreshBackup]
      Level H ‘c': Rev 0001.0000, Overlay, CalClearanceCoefsAdjustment, c[Flags],[NumRevsToAvg],[PctOfFreq],[PctOfTgtClr],

      [LowerHIWPLimit],[UpperHIWPLimit],[CTFFR],[ATT2R],[VGA],[StartHtr],[EndHtr],[HtrIncr]
      Level L ‘C': Rev 0011.0000, Overlay, CopyLogFile, C[SrcLog],[DestLog],[AppendOpt]
      Level L ‘D': Rev 0011.0000, Overlay, DisplayLogFile, D[Log],[ErrCode]
      Level L ‘E': Rev 0011.0001, Overlay, EnableDisableLogging, E[ErrLoggingOpt],[AsciiLoggingOpt],[RwStatsLoggingOpt]
      Level L ‘I': Rev 0011.0000, Overlay, DisplayLogFileInfo, I[Log]
      Level L ‘c': Rev 0011.0000, Overlay, CreateLogFile, c[Log],[LogType],[BufferOrDiskOpt],[NumBytes]
      Level L ‘d': Rev 0011.0000, Overlay, DeleteLogFile, d[Log]
      Level L ‘i': Rev 0011.0000, Overlay, InitLogFile, i[Log]
      Level T ‘B': Rev 0011.0000, Flash, SetBaudRate, B[BaudRate],[MsecDelay]
      Level T ‘m': Rev 0012.0024, Flash, FormatPartition, m[Partition],[FormatOpts],[DefectListOpts],[MaxWrRetryCnt],[MaxRdRetryCnt],[MaxEccTLevel],[MaxCertifyTrkRewrites],[ValidKey],[DataPattern],[2ndMaxWrRetryCnt],[2ndMaxRdRetryCnt][2ndMaxEccTLevel]
      Level T ‘E': Rev 0011.0000, Overlay, DisplayEditLog, E[LogNum],[ErrCodeOrSpecialFuncKey],[SpecialFunc]
      Level T ‘F': Rev 0011.0000, Overlay, SetCongenParmCmdHelpMsg, F[ValueRef],[Data],[ResetEnable]
      Level T ‘J': Rev 0011.0000, Overlay, DisplayModifyCap, J[ParmValue],[ParmId],[ParmArrayBytes],[ParmByteArrayOffset]
      Level T ‘O': Rev 0001.0000, Overlay, SelectDataOutputMode, O[Mode],[VerboseOpts]
      Level T ‘P': Rev 0011.0000, Overlay, DownloadGenericFile, P[FileBytes]
      Level T ‘R': Rev 0011.0000, Overlay, RdNonVolatileAdaptiveParms, R[Opts]
      Level T ‘T': Rev 0011.0000, Overlay, OddEvenEncroachmentTest, T[strt tk],[end tk],[hd],[rtry thrshld][ECC thrshld
      Level T ‘V': Rev 0012.0000, Overlay, DisplayDefectLists, V[DefectListSelect],[Hd],[StartCyl],[NumCyls],[DisplaySummaryOpt]
      Level T ‘i': Rev 0011.0001, Overlay, InitDefectList, i[DefectListSelect],[SaveListOpt],[ValidKey]
      Level T ‘[‘: Rev 0011.0000, Overlay, AsciiLogControl, [[LogFunction],[Log]
      F3 C>

      I must only change the serial and firmware. Model and LBA is right. Is 100% the same drive.

      But all seagate diagnostic commands lists works for my drive :-(

  19. daniel says:

    F3 T>J

    CAP:

    (P1=00) Validation Key: FFFFFFFF
    (P1=01) HDA Serial Number: XXXXXXXX
    (P1=02) PCBA Serial Number: XXXXXXXXXXXXXX
    (P1=03) PCBA Part Number: Invalid
    (P1=04) Head Count: 02
    (P1=05) Node Name Validation Key: 01
    (P1=06) Node Name: 50 00 C5 00 5B 4C 92 2B
    (P1=07) Product Family ID: 3C
    (P1=08) Product Family ID: 04

    (P1=09) PCBA Build Code: Invalid
    (P1=0A) ASIC Info:
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF

    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF FF
    (P1=0B) Firmware Key: FF FF FF FF FF FF FF FF FF FF FF FF FF FF

    (P1=0C) Firmware Key Checksum: FFFF
    (P1=0D) Date of Manufacture: ????????
    (P1=0E) Destroked Buf Size Index: FF
    (P1=0F) Final Mfg Op: Invalid
    (P1=10) Final Mfg Erc: Undefined
    (P1=11) System Area Prep State: FF
    (P1=12) SPT Auto Run Delay: 00
    (P1=13) Reserved:
    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF FF FF FF FF FF FF FF
    (P1=14) Checksum: FFFF

    Please delete my serial number after reading.

    I cant change with /T ^U F

  20. John Bourke says:

    Hi, thanks for the research and writing it up! I now have a ST9120817AS talking through my Arduino thinking he’s a ST9250315AS :-) Anyway I have run into the same problem as yourself, firmware version # seems to be dynamic. I guess it’s copied from flash at boot time? I’ll be looking further into that.

    • darthcircuit says:

      Good luck with that! Please let me know if you find out how to change it permanently. I have not been able to recover my drive yet and so, not been able to discover anything else just yet.

  21. Oh my goodness! Awesome article dude! Thank you, However I am encountering issues with your RSS.
    I don’t understand why I cannot subscribe to it. Is there anybody having similar RSS problems? Anybody who knows the solution can you kindly respond? Thanx!!

  22. Heya i am for the first time here. I came across this board and I find It truly
    useful & it helped me out a lot. I hope to give something back and aid
    others like you aided me.

  23. I do trust all the ideas you’ve presented in your post. They are very convincing and can certainly work. Still, the posts are very short for newbies. May just you please lengthen them a bit from subsequent time? Thanks for the post.

  24. Admiring the persistence you put into your blog and in depth information
    you provide. It’s awesome to come across a blog every once in a while that isn’t the same out
    of date rehashed information. Wonderful read!
    I’ve bookmarked your site and I’m including your RSS feeds to my Google account.

    • darthcircuit says:

      Thanks for your support :) I hope to have some cool stuff coming soon. I’m just trying to figure out how to juggle work, and all the projects I want to do at the same time!

  25. Tom says:

    Just for background information, I analyzed HddHackR by supplying modified HDDSS.bin’s to it. I modified HDDSS.bin in such a way that it represented my original HDD serial number, and compared the ‘UNDO.BIN’ files, hereby verifying that HddHackR in fact only changes these 4 numbers, and there is no other magic. (Except for writing sector 16-22 and making the partition table). I will post a summary somewhere soon.

  26. Evergreen2 says:

    Do you have the HDDSS.bin ?? the link is broken!! :(

    • darthcircuit says:

      If you read one of my post about moving to drop box, you there is an upadated link to all the files in the article, including hddss.bin :)

  27. TheFatDemon says:

    Any luck on the firmware revision thing?
    I’m willing to help test this but I don’t have the adapter and I want to make sure it’s all (semi) working.

    • darthcircuit says:

      not yet. I started working shortly after posting all this, and that has consumed most of my time. I plan figuring it out in the near future, but I’m not so sure when that is going to happen yet.

  28. bisha says:

    Any update on Seagate F3 drives? the # command to change the serial wont work on this F3 firmware Drives :(

    • darthcircuit says:

      I’m sorry, no. I don’t have access to a drive like that, so I am unable to offer any advice. I haven’t even had enough time to finish fixing the problem I have had with my own drive.

  29. tuta says:

    So did anyone manage to change serial# on drives where ‘#’ command does not work?

    • darthcircuit says:

      Not that I’m aware of…. I haven’t heard back from anyone that has tried for a few months. I never ran into this problem with my drive. About the only advice I can give is to try Sediv. It is available on my dropbox. I know it has a utility to change the serial number. I’m not sure if those drives are limited to not work that way either though.

  30. […] Hacking a Seagate Hard Drive to work in the Xbox 360 … – 2> Some Seagate hard drives can tell you a list of the commands available to you, but mine did not, at least not with the examples I found. You can try this on your …… […]

  31. joshua says:

    if i let you remote connect to my pc could you help me do this for my 320 gb seagate hard drive?

    • darthcircuit says:

      I don’t know if I’d be much help. I never was able to get it to work. After I bricked my drive, I tried for a few weeks to get it going again, but then I got a new job and have been too busy to give it the attention it needs to figure out. That was two years ago lol.

      If you tell me what you have done so far, maybe i can help. One problem I see is that even if we do get this to work somehow, you will be limited to a 250gb partition on your drive. I am unable to find an hddss.bin file from a 320gb Seagate drive, and that would be necessary to get the full size.

      • joshua says:

        im just going to go to a local computer repair shop and see if the owner would tradea 250 gb western digital for my 320 gb seagate. but thanks anyway

  32. Psigraf.Com says:

    It’s very straightforward to find out any topic on net as compared to textbooks, as I
    found this article at this website.

  33. DVS_DVIT says:

    Long Story Short, I Guess I’m On The Same Quest Here…

    I have An Original Xbox 360 Console,

    I’ve Swapped the 20GB Hard Drive inside the Caddy with 120GB befrand have 3 now, (Toshiba Drives)

    However i’m at the point now where i have 3 hard drives full and i dont want to delete anything more on them,

    i had a spare 500GB Seagate Hdd and wanted to upgrade the 120 GB with it.

    Question:

    Did you end up finding a way to use a seagate 500gb as a replacement for an existing Original Xbox 360 Console

    Sincere DVS_DVIT

  34. DVS_DVIT says:

    :QUOTE:
    The above Was supposed to read

    I’ve Swapped the 20GB Hard Drive inside the Caddy with 120GB before and have 3 now, (Toshiba Drives)

    :QUOTE:

    I have downloaded “HDDSS500.BIN”
    I have downloaded “HDDHACKR.EXE”

    sorry i know your probably very busy but can u provide me with a step thru for formatting The 500GB Seagate to use as a replacement HDD?

    Sincerely
    DVS_DVIT

  35. DVS_DVIT says:

    PS

    I have downloaded Putty 0.63 (nice Tool!)
    I have downloaded HxD

    Im trying to find instructions for the 500GB

    Prepared to do it but i need to know if you got it working for the 500GB

    • DVS_DVIT says:

      can i simply use a cable normally found attached to the back of a cdrom and plug it into my motherboard via the cd port or straight to the serial port or usb port?

      • darthcircuit says:

        Sorry, in our of the country at the moment, but I’ll give you as much info as I can right now. First, no I have not figured out the entire process yet. It has not worked for me. Second, I don’t have an hddss.bin file from a 500gb Seagate drive, so even if we do get this working, you will be limited to 250gb. Lastly, no you cannot use a cable from your CDROM and plug it into the serial port. You need a TTL adapter. You can find these on eBay for around $5.

  36. […] Hacking a Seagate Hard Drive to work in the Xbox 360 … – 2> Some Seagate hard drives can tell you a list of the commands available to you, but mine did not, at least not with the examples I found. You can try this on your …… […]

  37. […] Hacking a Seagate Hard Drive to work in the Xbox 360 … – 2> Some Seagate hard drives can tell you a list of the commands available to you, but mine did not, at least not with the examples I found. You can try this on your …… […]

  38. henda79 says:

    Do you have any idea why # is not a valid command when at the T> prompt ? The drive comms work fine and so do most other commands but many what are given don’t work under the T> prompt.

  39. DVS_DVIT says:

    Thanks Darthcircuit. Appreciate your time.

  40. […] Hacking a Seagate Hard Drive to work in the Xbox 360 … – 2> Some Seagate hard drives can tell you a list of the commands available to you, but mine did not, at least not with the examples I found. You can try this on your …… […]

  41. […] Hacking a Seagate Hard Drive to work in the Xbox 360 … – 2> Some Seagate hard drives can tell you a list of the commands available to you, but mine did not, at least not with the examples I found. You can try this on your …… […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: