Multiarc FreeArc Addon

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

Moderators: white, Hacker, petermad, Stefan2

User avatar
m^2
Power Member
Power Member
Posts: 1413
Joined: 2006-07-12, 10:02 UTC
Location: Poland
Contact:

Post by *m^2 »

MVV wrote:Hm-m, you're right, it really works. But it doesn't work when I try to unpack specific file from archive, e.g.:

Code: Select all

unarc.exe x "data-9.freearc.bin" "Character Pimper\AutoPlay\Repository\EP1 Game\_Hybrid\Notes.rtf"
And it works when I specify arc.exe instead of unarc.exe using same parameters.


I found reason why unarc is unable to extract files using full path - its chec k function checks only filename, so we need to use -ap parameter. So following works fine:

Code: Select all

unarc.exe x "data-9.freearc.bin" -ap"Character Pimper\AutoPlay\Repository\EP1 Game\_Hybrid" "Notes.rtf"
But does it mean that I can't unpack list of files from different directories at once?


And anyway it won't work if you specify folder name using wrong character case (e.g. pimper instead of Pimper) - it compares paths using strncmp i.e. check is case sensitive. :!: It will only work right for Unix-like systems.


And, unarc.exe doesn't support filelists with @.


As I see, main Arc.exe application is written in Haskell !! :shock: And it processes wrong character case or full path inside of archive correctly.
It is strange why they have such bad unpacker tool. :?
Mhm. Overall, FreeArc is not very mature yet and it seems that unarc is very bad. Guess it's because hardly anybody uses it. I pointed the author to your post, so he can fix those.
MVV wrote:As I see, main Arc.exe application is written in Haskell !! :shock:
Haskell was a great language for a project like this.
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

I don't see any reason to mess C++-modules of packers with Haskell-modules of main program. IMHO file size would be greatly decreased if only C++ used.
User avatar
m^2
Power Member
Power Member
Posts: 1413
Joined: 2006-07-12, 10:02 UTC
Location: Poland
Contact:

Post by *m^2 »

MVV wrote:I don't see any reason to mess C++-modules of packers with Haskell-modules of main program. IMHO file size would be greatly decreased if only C++ used.
Possibly. But I think it's a fair price for huge productivity gains. Seeing the (rather low) speed of FA development, it's like 2 years saved.
Note: the estimation is extremely rough, obviously.
User avatar
dindog
Senior Member
Senior Member
Posts: 315
Joined: 2010-10-18, 07:41 UTC

Post by *dindog »

very potential archiver as i notice. I do wish somebody make a real plugin for this archiver

full features, cryption, parts... and it's open source
but most outstanding part is its efficient.

compress level m2, roughly beat rar standard, time consuming about standard zip
m4, about 7z compression % while take much less time.
http://www.maximumcompression.com/data/summary_mf2.php
User avatar
Matthias030
Senior Member
Senior Member
Posts: 417
Joined: 2007-03-04, 10:48 UTC
Location: Berlin

Post by *Matthias030 »

I have done a new test with a 3.10 GB pc game folder. I was using 7zip and Freearc at ultra compression settings. Freearc makes a 1080 MB archive and 7zip 1180 MB. Freearc archive is 100MB smaller and it tooks less time (~30 minutes). 7zip tooks ~ 40 minutes.

Current Multiarc addon provided by FreeArc Team is good. But while packing, unpacking inside TC there is no status bar visible. TC freezes for the time that arc.exe is active in the background. For multiarc it is also possible to use Freearc.exe instead of arc.exe. After that you see Freearc GUI and progress bar. Here is the changed addon:

Code: Select all

; -----------------------------------------------------------------------
; TotalCommander MultiArc config addon for FreeArc archives.
; To install it, append contents of this file to multiarc.ini
; Arc.exe and unarc.exe should be in your PATH - or write paths here.
; -----------------------------------------------------------------------
; Version: FreeArc 0.66
; Available at: http://freearc.org
; Comments: none
; WARNINGS: none
; -----------------------------------------------------------------------
;
[FreeArc]
ID=41 72 43 01
IDPos = 0, -38, -39, -40, <SeekID>
Extension=arc
Description="FreeArc 0.66"
Archiver=c:\Program Files\wincmd\Packer\FreeArc\bin\freearc.exe
List="c:\Program Files\wincmd\Packer\FreeArc\bin\arc.exe v --noarcext -- %AQA"
Format0="yyyy tt dd hh mm ss aaaaaaa zzzzzzzzzzzzzzz ppppppppppppppp rrrrrrrr nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
Start="^--"
End="^--"
Test="%P t --noarcext -sclANSI -- %AQA"
Add="%P a {-ap%RA} --noarcext -sclANSI {%S} -- %AQA @%LA"
Move="%P m {-ap%RA} --noarcext -sclANSI {%S} -- %AQA @%LA"
Extract="%P e -y --noarcext -sclANSI -- %AQA @%LA"
ExtractWithPath="%P x -y --noarcext -sclANSI -- %AQA @%LA"
Delete="%P d --noarcext -sclANSI -- %AQA @%LA"
AskHistory0=-mx -ld1600m
AskHistory1=-m2
AskHistory2=-mx
IgnoreErrors=0
Debug=0
UnixPath=1
SkipDirsInFileList=0
SkipEmptyNames=1
BatchUnpack=1
SearchForUglyDirs=0
AskMode=2
SkipLIST=1
SkipSfxHeader=1

It is not needed to have arc.exe and unarc.exe inside multiarc folder. Install Freearc to any folder you want and change the path in lines "ARCHIVER" and "LIST". I always compress with Ultra compression level. So my line for "ADD" is without History dialog. If you always want to compress at Ultra Level so change the line this way: (note that you need 2GB Ram to compress/decompress)
Add="%P a {-ap%RA} --noarcext -sclANSI -mx -ld1600m -- %AQA @%LA"


Still there are some things that are not working inside TC:
- no encryption support.
- nasty multiarc error message for archive testing.
- no self extracting archive support

Please write your suggestions and improvements if you like.
User avatar
dindog
Senior Member
Senior Member
Posts: 315
Joined: 2010-10-18, 07:41 UTC

Post by *dindog »

Matthias030 wrote:I have done a new test with a 3.10 GB pc game folder. I was using 7zip and Freearc at ultra compression settings. Freearc makes a 1080 MB archive and 7zip 1180 MB. Freearc archive is 100MB smaller and it tooks less time (~30 minutes). 7zip tooks ~ 40 minutes.

Current Multiarc addon provided by FreeArc Team is good. But while packing, unpacking inside TC there is no status bar visible. TC freezes for the time that arc.exe is active in the background. For multiarc it is also possible to use Freearc.exe instead of arc.exe. After that you see Freearc GUI and progress bar. Here is the changed addon:

Code: Select all

; -----------------------------------------------------------------------
; TotalCommander MultiArc config addon for FreeArc archives.
; To install it, append contents of this file to multiarc.ini
; Arc.exe and unarc.exe should be in your PATH - or write paths here.
; -----------------------------------------------------------------------
; Version: FreeArc 0.66
; Available at: http://freearc.org
; Comments: none
; WARNINGS: none
; -----------------------------------------------------------------------
;
[FreeArc]
ID=41 72 43 01
IDPos = 0, -38, -39, -40, <SeekID>
Extension=arc
Description="FreeArc 0.66"
Archiver=c:\Program Files\wincmd\Packer\FreeArc\bin\freearc.exe
List="c:\Program Files\wincmd\Packer\FreeArc\bin\arc.exe v --noarcext -- %AQA"
Format0="yyyy tt dd hh mm ss aaaaaaa zzzzzzzzzzzzzzz ppppppppppppppp rrrrrrrr nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
Start="^--"
End="^--"
Test="%P t --noarcext -sclANSI -- %AQA"
Add="%P a {-ap%RA} --noarcext -sclANSI {%S} -- %AQA @%LA"
Move="%P m {-ap%RA} --noarcext -sclANSI {%S} -- %AQA @%LA"
Extract="%P e -y --noarcext -sclANSI -- %AQA @%LA"
ExtractWithPath="%P x -y --noarcext -sclANSI -- %AQA @%LA"
Delete="%P d --noarcext -sclANSI -- %AQA @%LA"
AskHistory0=-mx -ld1600m
AskHistory1=-m2
AskHistory2=-mx
IgnoreErrors=0
Debug=0
UnixPath=1
SkipDirsInFileList=0
SkipEmptyNames=1
BatchUnpack=1
SearchForUglyDirs=0
AskMode=2
SkipLIST=1
SkipSfxHeader=1

It is not needed to have arc.exe and unarc.exe inside multiarc folder. Install Freearc to any folder you want and change the path in lines "ARCHIVER" and "LIST". I always compress with Ultra compression level. So my line for "ADD" is without History dialog. If you always want to compress at Ultra Level so change the line this way: (note that you need 2GB Ram to compress/decompress)
Add="%P a {-ap%RA} --noarcext -sclANSI -mx -ld1600m -- %AQA @%LA"


Still there are some things that are not working inside TC:
- no encryption support.
- nasty multiarc error message for archive testing.
- no self extracting archive support

Please write your suggestions and improvements if you like.
Incredible format, doesn't it? I use -m2,-m3 and -m4 mostly.

The biggest problem for me is not the interface, but multiarc just don't support unicode, can't decompress any file name containing Chinese characters.
cnnnc
Junior Member
Junior Member
Posts: 30
Joined: 2007-05-21, 01:31 UTC

Post by *cnnnc »

dindog wrote: The biggest problem for me is not the interface, but multiarc just don't support unicode, can't decompress any file name containing Chinese characters.
Replace

Code: Select all

List="c:\Program Files\wincmd\Packer\FreeArc\bin\arc.exe v --noarcext -- %AQA"
With

Code: Select all

List="c:\Program Files\wincmd\Packer\FreeArc\bin\unarc.exe v --noarcext -- %AQA"
User avatar
Matthias030
Senior Member
Senior Member
Posts: 417
Joined: 2007-03-04, 10:48 UTC
Location: Berlin

Post by *Matthias030 »

Is arc.exe not unicode able? I thought that arc.exe and unarc.exe are doing the same.
Original Plugin provided with FreeArc setup 0.666 also uses arc.exe for LIST-command. I can't test it here, because I have no unicode files with special characters.

Thanks for the hint.
cnnnc
Junior Member
Junior Member
Posts: 30
Joined: 2007-05-21, 01:31 UTC

Post by *cnnnc »

I had told the author of FreeArc about the bug of arc.exe, but he think it's multiarc's problem that not support unicode.
But then I try every CharSet of arc.exe still show there is a bug that arc.exe has a DBC(Double-Byte-Char) problem.
Here is the link to FreeArc forum about what I reported.
Post Reply