|
Portal Board index » .:: Firmware Flashing ::. » DVD-RW/+RW/RAM Firmware
All times are UTC [ DST ]
|
| Author |
Message |
|
|
Posted: Wed Jun 29, 2011 5:56 pm |
|
Joined: Wed Jun 29, 2011 5:50 pm Posts: 2
|
|
Hi there,
I wondered if anyone has any pointers for figuring out how to read the firmware from HL-DT drives (specifically HL-DT GU40N though I am interested in a generic technique that will work for other HL-DT drives). I would like to put a tool together like Flasher for LG drives and I want to start by writing something that can dump the existing firmware. Any pointers would be appreciated (e.g. even a high level approach or an approach that worked for other drives would be useful).
J
|
|
| Top |
|
 |
|
|
Posted: Wed Jun 29, 2011 10:51 pm |
|
Joined: Wed Jun 29, 2011 5:50 pm Posts: 2
|
|
Ok so I just found Flasher, sorry I didn't spot that earlier. It doesn't support my HL-DT drive but its definitely a great start ... any pointers on how to add new drive support to it?
|
|
| Top |
|
 |
|
|
Posted: Thu Jun 30, 2011 6:42 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
I am the one who made flasher and I looked at a firmware file for your drive and it seems that it uses the same read command as the drives supported by the flasher. the firmware format is completely different and it may use different memory sections. I don't have one of these drives so I really can't do much to help.
The firmware I looked at seem to be 2mb in size for the firmware data and a 0x34 header size. other then that I don't know much.
The other thing I noticed is that it had a lot of 0xFF in the file which would equal either unrealized data or readable/writable and there for when writing or reading to ignore errors at those locations, I would doubt that any error is ever good so it most like means not initialized.
|
|
| Top |
|
 |
|
|
Posted: Thu Jun 30, 2011 11:58 pm |
|
| ala42 |
| Firmware Patcher |
 |
Joined: Sun Nov 02, 2003 4:18 am Posts: 990 Location: Germany
|
|
The GU40N uses a Panasonic chipset, not a Renesas chipset as the drives supported by devilsclaw's firmware dumper.
|
|
| Top |
|
 |
|
|
Posted: Fri Jul 01, 2011 3:49 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
this is correct but I got to look at the firmware and it had some of the info that was in the Renesas chipse, some things I specifically look for in firmwares for compatibility. it happens that this firmware has the same debug info as the Renesas firmwares I just has a different format. I am pretty sure looking at the debug info will allow a way to figure out dumping this drives firmware. I just don't have one right now.
|
|
| Top |
|
 |
|
|
Posted: Thu Dec 22, 2011 10:36 pm |
|
Joined: Thu Dec 22, 2011 9:28 pm Posts: 12
|
|
devilsclaw, would it be possible to get flasher to work with other drives (GT30N here, Pioneer chipset I believe, though maybe also Panasonic) if the drive gets shipped to you? I'm willing to ship my entire laptop to you (with a clean Debian installed for convenience) to get flasher to work with my drive. I can't find any working links for FlashWinX118.exe anywhere -- the RapidShare ones posted here and elsewhere are all dead as of now.
|
|
| Top |
|
 |
|
|
Posted: Sat Dec 24, 2011 2:00 pm |
|
| Puma |
| Administrator |
 |
Joined: Tue May 11, 2004 3:02 pm Posts: 10124 Location: UK
|
Speeddymon wrote: devilsclaw, would it be possible to get flasher to work with other drives (GT30N here, Pioneer chipset I believe, though maybe also Panasonic) if the drive gets shipped to you? I'm willing to ship my entire laptop to you (with a clean Debian installed for convenience) to get flasher to work with my drive. I can't find any working links for FlashWinX118.exe anywhere -- the RapidShare ones posted here and elsewhere are all dead as of now. see post and reply, this is not possible at the moment, but official flasher with MCSE to patch can.
_________________ Read The FAQ Firmware Request Rules MCSE Thread Utilities
|
|
| Top |
|
 |
|
|
Posted: Sat Dec 24, 2011 4:06 pm |
|
| chef |
| Administrator |
 |
 |
Joined: Fri Aug 09, 2002 11:39 am Posts: 23431 Location: .de #...still playing LLAMATRON! # sprite killing around level 138 and higher....
|
Speeddymon wrote: devilsclaw, would it be possible to get flasher to work with other drives (GT30N here, Pioneer chipset I believe, though maybe also Panasonic) if the drive gets shipped to you? I'm willing to ship my entire laptop to you (with a clean Debian installed for convenience) to get flasher to work with my drive. I can't find any working links for FlashWinX118.exe anywhere -- the RapidShare ones posted here and elsewhere are all dead as of now. Who told you that??
_________________ .:The rpc1.org FAQ:. Please read & follow our firmware request rules precisely! .:The DiscInfo tool:. I am looking for DVD-R for Authoring DVD-R (A) & HD-DVD media, any size, any brand. Please pm me if you can help.
|
|
| Top |
|
 |
|
|
Posted: Mon Dec 26, 2011 2:21 am |
|
Joined: Thu Dec 22, 2011 9:28 pm Posts: 12
|
[_chef_] wrote: Speeddymon wrote: devilsclaw, would it be possible to get flasher to work with other drives (GT30N here, Pioneer chipset I believe, though maybe also Panasonic) if the drive gets shipped to you? I'm willing to ship my entire laptop to you (with a clean Debian installed for convenience) to get flasher to work with my drive. I can't find any working links for FlashWinX118.exe anywhere -- the RapidShare ones posted here and elsewhere are all dead as of now. Who told you that?? Read it on here, it's one of the P companies.. Not Plextor tho haha. Either Phillips, Pioneer, or Panasonic..
|
|
| Top |
|
 |
|
|
Posted: Mon Dec 26, 2011 4:10 am |
|
Joined: Thu Dec 22, 2011 9:28 pm Posts: 12
|
So I just tried MCSE on the default firmware and it worked great to make it region free. So I downloaded the LE12 firmware from the DB and ran MCSE on it as well. Unfortunately, both the LE12 flasher and the ASS2 (my asus's flasher) refuse to even start flashing this firmware to my drive, offering up the error "Invalid Buyer". 
|
|
| Top |
|
 |
|
|
Posted: Mon Dec 26, 2011 7:24 pm |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
I found a dell oem of this drive on ebay for less then 25$ so I bought it. I will let you know what I find.
|
|
| Top |
|
 |
|
|
Posted: Wed Dec 28, 2011 12:06 pm |
|
| chef |
| Administrator |
 |
 |
Joined: Fri Aug 09, 2002 11:39 am Posts: 23431 Location: .de #...still playing LLAMATRON! # sprite killing around level 138 and higher....
|
Speeddymon wrote: [_chef_] wrote: Speeddymon wrote: devilsclaw, would it be possible to get flasher to work with other drives (GT30N here, Pioneer chipset I believe, though maybe also Panasonic) if the drive gets shipped to you? I'm willing to ship my entire laptop to you (with a clean Debian installed for convenience) to get flasher to work with my drive. I can't find any working links for FlashWinX118.exe anywhere -- the RapidShare ones posted here and elsewhere are all dead as of now. Who told you that?? Read it on here, it's one of the P companies.. Not Plextor tho haha. Either Phillips, Pioneer, or Panasonic.. Where? I didnt ask to waste time, you know. BTW, this thread gets locked because you posted all the same in another thread....
_________________ .:The rpc1.org FAQ:. Please read & follow our firmware request rules precisely! .:The DiscInfo tool:. I am looking for DVD-R for Authoring DVD-R (A) & HD-DVD media, any size, any brand. Please pm me if you can help.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 8:16 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
I am unlocking this due to the fact of the original post and that I got the drive and that I was able to read the firmware with my current stock flasher and the already built in dumploc parameter. the drive I got is a dell oem GU40N with firmware rev A104 which I dont think has been released yet but that is only based off a quick search. right now I was able to dump the firmware by flasher -d <drive id> -l firmware.bin 1 80000000 00200000 That only produces a raw dumped firmware and no header which I need to see if it has anything special or just a simple header.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 8:21 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
Here is the raw dumped firmware file for those who are interested. also Ala if your around do you happen to know anything about this drives firmware header info and where the check sum might be.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 8:45 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
as for the GT30N I looked at the firmware and it looks to work exactly the same as the GU40N so I would say the same trick should work to dump the firmware.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 9:18 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
I found that the original dump included eeprom data for my drive. I am currently going to leave it there so that if someone builds a header builder or dumps there own firmware they can compare the two to tell what data to wipe to remove the eeprom data.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 8:13 pm |
|
| ala42 |
| Firmware Patcher |
 |
Joined: Sun Nov 02, 2003 4:18 am Posts: 990 Location: Germany
|
devilsclaw wrote: Here is the raw dumped firmware file for those who are interested. also Ala if your around do you happen to know anything about this drives firmware header info and where the check sum might be. Sure  Bootcode size is four bytes at $30, main firmware size is four bytes at $36, main checksum two byte at $3C, header checksum two byte at $3E. $2B is 0x01, $3B is $20, 4 byte boot code revision at $2C Code: unsigned short CSpeededitDlg::Calc1ByteSum(byte *data, int len) { unsigned short sum=0; byte *p=data; for(int i=0; i<len; i++) { sum += *p++; } return sum; }
// BlockSize is $1D8000 for the GU40, which is the size of the main firmware without the $8000 boot code. Older H5x drives use 0x198000. bool CSpeededitDlg::HandleLgH5xBinChecksum(byte *data, int len, int BlockSize, bool set) { bool CheckSumOk = false; unsigned short HeaderSum; unsigned short DataSum = Calc1ByteSum(data+0x40+0x8000, BlockSize-2); if( !set) { HeaderSum = Calc1ByteSum(data, 0x3e); CheckSumOk = (HeaderSum == *(unsigned short*)(data+0x3e)) && (DataSum == *(unsigned short*)(data+0x3c)); } else { *(unsigned short*)(data+0x3c) = DataSum; *(unsigned short*)(data+0x8000 + BlockSize + 0x3e) = DataSum; HeaderSum = Calc1ByteSum(data, 0x3e); *(unsigned short*)(data+0x3e) = HeaderSum; CheckSumOk = true; }
return CheckSumOk; }
_________________ LiteOn/Benq/LG/NEC/Pioneer/Samsung/Toshiba stuff: MediaCodeSpeedEdit V 1.2.0.10, released October 3rd 2011
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 9:37 pm |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
ala42 wrote: Bootcode size is four bytes at $30, main firmware size is four bytes at $36, main checksum two byte at $3C, header checksum two byte at $3E. $2B is 0x01, $3B is $20, 4 byte boot code revision at $2C
after looking at the firmware header a bit more and based off your information, I would actually say its a bit off but was definitely what I needed to understand it a lot better. The values starting at $30 up to but not including $3C are in sets of 3 bytes using Intel style LSB I am guessing the reason why is to save space and to have a even size header. $30 3 bytes in size and designates size of boot code $33 3 bytes in size and designates unknown $36 3 bytes in size and designates size of main firmware $39 3 bytes in size and designates size of entire firmware [$30] + [$36] = $1E0000 total firmware size $200000 so $20000 is unaccounted. since the total size of the firmware if 2MB and still with 3 bytes you can go up to 16MB there is no need for the 4th byte and since only $1E0000 was accounted for original and switching to 3 bytes instead of 4 turns the 20 in the firmware size and accounts for the other data.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 08, 2012 10:10 pm |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
The above also explains why the last four bytes of the firmware seems to be a checksum also since the last $20000 bytes are not in the top checksums in the header. which makes me wonder is the last four bytes only for the last $20000 bytes or the whole firmware.
|
|
| Top |
|
 |
|
|
Posted: Mon Jan 09, 2012 5:39 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
As you know I was able to dump the firmware of the GU40N and as I have done more research and I found that I had accidentally found the exact address to dump the firmware by accident. When I originally was reading the firmware header for the A102/A02 firmware the section that tells the size of the bood code I read as 80000000 since I was using MSB format. I have ran many test to see if maybe the 80000000 address was a wraparound and its not.
So that leave me to well dang was I lucky to accidentally pick the exact correct dumping address lol. btw Thanks again Ala.
|
|
| Top |
|
 |
|
|
Posted: Wed Jan 11, 2012 1:14 am |
|
Joined: Wed Jan 11, 2012 1:07 am Posts: 2
|
As an aside, and as a replacement for FlashWinX118.exe flasher, (because I saw multiple threads where others were looking for this file to crossflash) devilsclaw himself posted a link to a patched flasher that ignores vendor and buyer details for the GT30N Panasonic-based drive: Heed the warning: viewtopic.php?p=228036#p228036With this patched flasher, I was able to cross-flash a HL-DT STDVD-RAM GT30N 1.01 drive from an Acer notebook w/ the latest Lenovo LE12 firmware. *continue on topic now*
Last edited by luiset83 on Wed Jan 11, 2012 6:25 am, edited 1 time in total.
|
|
| Top |
|
 |
|
|
Posted: Sun Jan 15, 2012 8:20 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
|
Ok. So I took the firmware I dumped and took the firmware flashing program I patched and patched it a bit more to ignore the checksum of the header and the data and added the header from the A102 to the dumped firmware and changed the version info from A102 to A104 and flashed the drive.
Just to make sure that it actually worked I flashed my drive to A102 first and then flashed it back to A104. So this gives me at least the option to be able to flash these drives with dump firmwares.
I have a log of how the flashing program works with the A102 firmware update now I need to do it with the A104 and see if there is a difference since the flashing program does some weird stuff.
|
|
| Top |
|
 |
|
|
Posted: Mon Jan 23, 2012 8:06 am |
|
| devilsclaw |
| Moderator |
 |
 |
Joined: Sat Jan 12, 2002 6:08 am Posts: 331
|
As you know I have managed to dump the firmware of the GU40N drive which contained the A104 unreleased firmware. As you know the dump contains information that a firmware should not have if you want to flash it to a new drive. So I cleaned out the EEPROM info and I also had to clean out some other data in memory that is active when the drive is active but is considered FF in the firmware updates. After cleaning up all the sections and testing the checksum against the the one in the dump I was able to verify that the main firmware is as it should be and the boot code should be just fine the code that I dont know what it is used for I am pretty sure I cleaned it up correctly also. After all that I generated a header for the firmware corrected the checksums in it. Zipped it up replaced the data in the original GU40N A102 update with the A104 that I dumped and setup the dos flasher to use the new firmware and packaged it up to put here. So after all of that here is the GU40N A104 firmware that from my testing works to flash to the drives. The flashing program has not been patched to bypass checksums or anything it is testing them. DOWNLOAD: GU40N-A104.zipHey Ala do you know if the flashing program detects and chooses what part of the firmware to flash or is it something in the header. From my testing the A102 only ever flashes the main firmware and not the boot or the other data.
|
|
| Top |
|
 |
|