How to increase speed for a specific media type

vbimport

#1

Hello there,
I am using a NEC 3520A and Media “POMSI002 01”. It’s labeled 4x but I know various burners can do 8x on it. However the NEC only does 2,4x which is too slow for me (got 200 of those DVD’s).
So my question is: is it possible to increase the write speed for this media by hex editing the firmware? Maybe herries knows more about it since he tweaked the Nec 1300A firmware for it.
Also is there a tool to change speeds like there is for Lite-On drives? I really would like to see the speed for this media increased, otherwise I’ll have to get a new drive.
Thanks, Zak

Update: I played around with a dump of the firmware and saw the media entries. However there is NO entry for the POMSI002 01 media so I wonder if I could add one? Also if I modify another entry i don’t need, do I need to update some checksums of the entire file or can I just write back the dump?
Thanks for your tips in advance


#2

Well I looked around some more, tried Nec Dump on the modified firmware and saw that the media ID is nowhere to be found.
Unlike the Lite-On tool omnipatcher it apparently isn’t possible to modify the strategies or the max write speed.
So here goes my additional questions:

  1. Is speed and strategy encoded in the last two bytes after the media ID? If so, how?
  2. Should it be possible to replace an existing entry with the media ID i need and change the write speed setting?
  3. Do I need to adjust the checksum and how is it calculated?

Any info is greatly appreciated!


#3

Meanwhile I figured out how the checksums work, so that is no longer an issue. Info about the media table would still be greatly appreciated.


#4

It’s not near as simple as you might think. =)
MIDs are grouped… so one MID group can have 0-n MIDs. Each group has it’s number… then there is a table of write speeds flags on a different location… the group number tells the write speed flags offset. The first part of the write speed flags is the write strategy offset (for the first speed…) the second part are then the flags. Flags are then 1x, 2x, 2.4x, 4x, 6x, 8x, 10x, 12x, 14x, 16x and other flags that I don’t know what they are for except one that is for switching between 12x Z-CLV and 13x CAV writing if 12x is used. Now if you have selected speeds 2x and 4x. this means 2 write startegies are necessary because the write startegies are for different speeds and not for all speeds. Now if the first offset in write speed flags is set to 0… and you used 2 flags for the speed… the next offset MUST be 2.
The easiest way to add a MID would be… you add it into a MID group… one that’s not very importants (some MIDs for old discs) and then you modify the write startegy offset in write speed flags to point to good startegies for example to point to the strategies of MCC003 or MCC02RG20… And also you have to modify the write speed flags accordingly. Simple huh ? =)

OK the most simple way would be to overwrite one good MID in the first place so in this case none of this would be necessary. =P


#5

Actually that’s roughly what I expected :slight_smile:

Like I said I am willing to “sacrifice” a good MID, at least temporarily until those old discs are all burnt. Can I take any MID that has 2x, 4x, 8x speed or is there one that you would suggest? The media is DVD+R and it was working fine in the older Nec 1300A firmware.

After having played around with the firmware the entire day I am really curious about modding it. I realize there’s only a few people playing around with the firmware and I am glad that you took the time to explain it to me.

Has anyone actually tried adding new MID groups? Or to add new MIDs to the existing groups? I believe herrie did this in the good old days but to be honest I’m not certain if there’s enough space in the firmware. I just don’t know the layout well enough yet.

Fixing my problem should be fairly easy, but integrating it into a modded firmware like LD3520 1.UC might be harder if you don’t want to deleted another MID.
Question to Dee-27: if I figure out a good write strategy for this media type, could you then add it to the next firmware?

Well all in all it was a nice first day for me in the Nec3520 modding scene, I learned a lot. I got a little angry at first when it seemed everyone is just holding back information.
But now that I know otherwise, I hope I can help further increase the quality of the firmware. After all, that’s what we’re all here for :wink:


#6

You can overwrite every MID you like… even the 16x ones if you wish =)
Well you can’t add something into a MID group without deleting some other MID… but there are some MIDs that are duplicated or really old and unused. Actually the entire MID group section must remain the same size all the time however you can copy a MID from one group to another. However the change write strategy offset in write speed flags approach is a easier (not so with 3520 firmwares as it was with 25x0 and 3500 where the MIDs were divided into 2 parts! ).


#7

Thanks again for the infos, I will compare the output of your tool with the binary to find out the proper flags. I will also crosscheck with 1300 firmwares to see what media is burnt similarly.
But now I really need sleep, it’s 4am here and my body asks for rest. Expect more annoying questions tomorrow :wink:


#8

LoL it’s 4 am here to =P At this time the best programs are being done =P


#9

Ok quick update: I replaced the string MCC 003 with POMSI002 01 and apparently it works to some extend. I can now select up to 4x, not more.
But shouldn’t the write allow speeds up to 12x since I switched the media IDs?
Will do some writing tests later, 4x already is better than 2x :slight_smile:


#10

Yes it should be up to 12x… what does NecDump tell you ?


#11

[POMSI002 01 ] -> 2.4x 4x 6x 8x 12x
0x4D 0x41 0x58 0x45 0x4C 0x4C 0x00 0x00 0x30 0x30 0x32 0x00 0x01 0x00

The only thing that might be wrong is that I had to add the split between POMSI002 and 01, maybe I got that wrong.
I also got some troubling output from DVD Identified:

** INFO : Drive = _NEC DVD_RW ND-3520AW [FW 1.UC]
** INFO : Write Capabilities = DVD+RW DVD+R DVD+R-DL
** INFO : Write Capabilities = DVD-RW DVD-R DVD-R-DL
** INFO : Disc = [DVD+R:POMSI002-01-000]

** INFO : An Empty Writable Disc Is Recommended For Accurate Results
** INFO : Write Speeds (Supported By This Drive On This Disc) Listed Below

** INFO : GET PERFORMANCE Write Speed Descriptor(s)
Descriptor #1 = 5540 KBPS ( 4.00x) - [CLV/Non-Pure CAV]
Descriptor #2 = 3324 KBPS ( 2.40x) - [CLV/Non-Pure CAV]

** INFO : MODE SENSE Write Speed Descriptor(s) [Legacy Command]
** INFO : MODE SENSE Is Obsolete And Not Properly Supported By Some Drives
Descriptor #1 = 8467 KBPS ( 6.00x) - [CLV/Non-Pure CAV]
Descriptor #2 = 7056 KBPS ( 5.09x) - [CLV/Non-Pure CAV] - [Invalid Entry]
Descriptor #3 = 5645 KBPS ( 4.00x) - [CLV/Non-Pure CAV]
Descriptor #4 = 4234 KBPS ( 3.06x) - [CLV/Non-Pure CAV] - [Invalid Entry]
Descriptor #5 = 2822 KBPS ( 2.04x) - [CLV/Non-Pure CAV] - [Invalid Entry]
Descriptor #6 = 1411 KBPS ( 1.00x) - [CLV/Non-Pure CAV]
** WARNING : Drive May Have Returned Incorrect Descriptors

Here’s the full media block:

** INFO : Hex Dump Of ‘Media Code’-Block Listed Below
** INFO : 4-Byte Header Preceding ‘Media Code’-Block Discarded
** INFO : Format 11h (Method 1) - ADIP Information
0000 : a1 0f 02 00 00 03 00 00 00 26 05 3f 00 00 00 00 …&.?..
0010 : 00 00 03 50 4f 4d 53 49 30 30 32 30 31 00 00 38 …POMSI00201…8
0020 : 23 54 37 15 02 52 6c 02 b4 63 15 15 0b 0a 08 08 #T7…Rl…c…
0030 : 01 19 1b 0c 0c 0c 0d 01 00 00 00 00 00 00 00 00 …
0040 : 01 00 38 38 02 26 64 1e 07 2e 23 10 04 1e 1d 01 …88.&d…#…
0050 : 00 00 02 26 64 1e 07 2e 23 10 04 1e 1d 01 00 00 …&d…#…
0060 : 02 00 54 70 02 4b 63 67 20 14 0b 0b 01 20 00 00 …Tp.Kcg … …
0070 : 00 00 02 80 63 67 20 14 0b 0b 01 20 00 00 00 51 …cg … …Q
0080 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
0090 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
00a0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
00b0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
00c0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
00d0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
00e0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
00f0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
0100 : 00 00 …


#12

Hmm… you have to add it exactly as DVD Identifier tells you I think…
so you have to add this: POMSI00201… -> HEX: 50 4f 4d 53 49 30 30 32 30 31 00 00
However I’m not 100% sure.


#13

I would have done that but it would have shortened the string by one byte. I think the firmware matches the string since I can already write at 4x instead of 2.4x.

Instead of the MCM media id I now overwrote the MAM M02 id. The first burn worked fine but the quality is awfull. And again, I was only able to set the speed to 4x, not that anything else would have been sensible considering the quality of a 4x burn. I must be doing something wrong, I just can’t figure out what.

It would be great if you could have a look at the firmware:

EDIT by Dee-27
Please use PM for unverified firmware


#14

No you’re not 1 byte short… there are 2 bytes between MIDs… MID length for DVD+R is 12 bytes… 8 Bytes for Manufacturer… 3 for MID and 1 for Revision.