HLP/MVB decompilation plugin

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, sheep, Hacker, Stefan2

User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

HLP/MVB decompilation plugin

Post by *Flint »

I wrote a plugin for unpacking (decompiling) the HLP and MVB help files. The plugin is based on the HelpDeco source code.

Download version 1.0.2.0 (18.09.2011):
x32+x64 / mirror (167 Kb)
x32 without SSE / mirror (for old processors)
Source code (C++) / mirror (62 Kb)
Last edited by Flint on 2011-09-19, 22:14 UTC, edited 8 times in total.
User avatar
Peter
Power Member
Power Member
Posts: 2002
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Post by *Peter »

Hello Flint

maybe you should add the link of this thread to the plugin-info at totalcmd.net?

Peter
TC 9.51 / #266191
Win 10 x64
horsi
Junior Member
Junior Member
Posts: 13
Joined: 2009-06-14, 17:45 UTC
Location: Poland

Re: HLP/MVB decompilation plugin

Post by *horsi »

Flint wrote:I wrote a plugin for unpacking (decompiling) the HLP and MVB help files. The plugin is based on the HelpDeco source code.
Completely doesn't work for me :cry:

---------------------------
Error
---------------------------
Error in packer plugin "hlp" calling OpenArchiveW for
"c:\TotalCmd\TOTALCMD.HLP" !
Please report this error to the plugin author!

The reported error is:
External exception C000001D
---------------------------
OK
---------------------------

TC 7.55a
WinXP SP3 32-bit
TC 8.0b17a (32-bit) #41627 / WinXP Pro SP3 32-bit
User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

horsi
What processor is in your computer? Not only AMD/Intel, but exact model number, please.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
horsi
Junior Member
Junior Member
Posts: 13
Joined: 2009-06-14, 17:45 UTC
Location: Poland

Post by *horsi »

Flint wrote:horsi
What processor is in your computer? Not only AMD/Intel, but exact model number, please.
AMD Athlon Model 6 Stepping 2
Commonly known as AMD Athlon-XP 1600+.

CPU-Z version 1.55 report:

Code: Select all

Processors
-------------------------------------------------------------------------

Number of processors		1
Number of threads		1
Processors Information
-------------------------------------------------------------------------

Processor 1			ID = 0
	Number of cores		1 (max 1)
	Number of threads	1 (max 1)
	Name			AMD Athlon XP
	Codename		Palomino
	Specification		AMD Athlon(tm) XP 1600+
	Package 		Socket A (462)
	CPUID			6.6.2
	Extended CPUID		7.6
	Core Stepping		A5
	Technology		0.18 um
	Core Speed		1400.2 MHz
	Multiplier x FSB	10.5 x 133.3 MHz
	Rated Bus speed		266.7 MHz
	Instructions sets	MMX (+), 3DNow! (+), SSE
	L1 Data cache		64 KBytes, 2-way set associative, 64-byte line size
	L1 Instruction cache	64 KBytes, 2-way set associative, 64-byte line size
	L2 cache		256 KBytes, 16-way set associative, 64-byte line size
	FID/VID Control		no

	K7 Thermal sensor	yes
TC 8.0b17a (32-bit) #41627 / WinXP Pro SP3 32-bit
User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

horsi
Just as I suspected… :( I was hoping such old processors will never meet my plugin and turned the SSE+SSE2 optimizations on.

Oh well, here the binary without SSE (WCX file only):
http://flint-inc.ru/files/mlang/hlp_nosse_1.0.0.0.rar
Last edited by Flint on 2010-10-17, 23:34 UTC, edited 1 time in total.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
User avatar
Peter
Power Member
Power Member
Posts: 2002
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Post by *Peter »

Which TC version is required?

Peter
TC 9.51 / #266191
Win 10 x64
User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

Peter
As written in ReadMe, 7.50 and later.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
User avatar
Peter
Power Member
Power Member
Posts: 2002
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Post by *Peter »

Flint wrote:Peter
As written in ReadMe....
Thanks. I looked only at the info-page of totalcmd.net.

Peter
TC 9.51 / #266191
Win 10 x64
User avatar
Matthias030
Senior Member
Senior Member
Posts: 408
Joined: 2007-03-04, 10:48 UTC
Location: Berlin

Post by *Matthias030 »

Are there any advantages against old helpdeco multiarc plugin?
http://wcx.sourceforge.net/

Does your plugin uses newer helpdeco source code?
User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

Matthias030 wrote:Are there any advantages against old helpdeco multiarc plugin?
I tried some MultiArc addon for decompiling help files, I'm not sure if there is one or more such addons (the one I tried used the original HelpDeco.exe program). I work on translating the TC help file into Russian, and I tried this plugin on a compiled Russian HLP file. I entered the archive, saw its contents, but when I returned back, I discovered that all the source files from which I compiled the HLP vanished completely.

As I reconstructed the events, MultiArc just called HelpDeco, it decompiled everything into the same directory where HLP lied, overwriting the originals, and used the resultant list of files as source for presenting archive contents to TC. After that it just removed the extracted files. Just an excellent idea it is! Luckily, I had a copy of my work files. Needless to say that the addon together with MultiArc itself immediately went from my hard disk directly into /dev/null to never return again.

My plugin does not use the program but includes its complete source code, modified in such a manner as to avoid writing files when not explicitly requested. And, yes, I included the latest changes from HelpDeco project comparing to the latest available binary version 2.1 (more exactly, I looked what they did, and reimplemented the necessary changes myself to avoid using the new code: the latest versions are distributed under GPL, so if I used the code directly I would have to switch to GPL too, but this license does not allow writing plugins for TC; the author did not reply to my request on relicensing).
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
User avatar
Matthias030
Senior Member
Senior Member
Posts: 408
Joined: 2007-03-04, 10:48 UTC
Location: Berlin

Post by *Matthias030 »

As I reconstructed the events, MultiArc just called HelpDeco, it decompiled everything into the same directory where HLP lied, overwriting the originals, and used the resultant list of files as source for presenting archive contents to TC.
I only know 1 multiarc addon. But it has not the problem you describes.
I included the latest changes from HelpDeco project comparing to the latest available binary version 2.1
Sounds good. I also notice that opening archives by your plugin are little bit faster than multiarc. :)
User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

Matthias030 wrote:But it has not the problem you describes.
Well, maybe the addon or MultiArc itself was improved since then (e.g. by creating temporary directory and unpacking there instead of the current dir), but I assure you that I didn't imagine this problem. :)
Matthias030 wrote:I also notice that opening archives by your plugin are little bit faster than multiarc.
Nice to hear. :) I didn't do measurings, but probably it's because my plugin does all the unpacking into memory and not into files.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
horsi
Junior Member
Junior Member
Posts: 13
Joined: 2009-06-14, 17:45 UTC
Location: Poland

Post by *horsi »

Flint wrote:Just as I suspected… :( I was hoping such old processors will never meet my plugin and turned the SSE+SSE2 optimizations on.
Sorry for that.
Flint wrote:Oh well, here the binary without SSE (WCX file only):
http://flint-inc.ru/files/mlang/hlp_nosse_1.0.0.0.rar
This version works without any errors (yet) :wink:
TC 8.0b17a (32-bit) #41627 / WinXP Pro SP3 32-bit
User avatar
Flint
Power Member
Power Member
Posts: 3367
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

horsi wrote:Sorry for that.
It's not your fault, surely, but mine. :)
horsi wrote:This version works without any errors (yet)
That's good, thanks for checking.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
Post Reply