Ok, I think I figured it out. To summarize, I would need to type:
Quote:
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
Bit:0 needs to be set to 1, so:
1100 0000 = C0 changes to
1100 0001 = C1
Resulting command:
F009A,C1Quote:
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
Bit:0 needs to be set to 1, Bit:2 set to 0 and Bit:7 set to 1, so:
0001 0100 = 14 changes to
1001 0001 = 91
(As you can see, Bit:3 is not set. Using a '0' results in the correct hex code.)
Resulting command:
F00E2,91What I do not understand yet:
Quote:
Byte:00EC: SpecialCacheFlags = 90
Byte:00EC: Bit:5, READ_LOOKAHEAD_DISABLED_ON_POWER_UP = 0
Byte:00EC: Bit:7, FORCE_SEQUENTIAL_WRITE = 1
This means, SpecialCacheFlags should be 1000 0000 =
80, not 90.
90 translates to
1001 0000
As Bit:4 has no use, it probably does not matter...
Considering that all bits except Bit:7 and Bit:5 are 0, I get the following solution:
Bit:5 needs to be set to 1, so:
1000 0000 = 80 changes to
1010 0000 = A0
Resulting command:
F00EC,A0Comments are greatly appreciated!