|
An update for UnRAR ? |
Posted on: 12/8 12:33
#1 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
For any developer around
![]() Any chance to found someone that can update the good old UnRAR ? Latest version we have is the old 3.9.7 and it was ported in 2010 or so, however it's probably too old as it still unable to open lots of the recent archives compressed with this format... Here is the current OS4 source based to the 3.9.7: http://os4depot.net/index.php?functio ... ity/archive/unrar-src.lha A fast investigation let me found this 5.6.8 repository: https://github.com/pmachapman/unrar/commits/master Don't know if this one it's really the latest or if it's a fork from some other place .. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/8 17:12
#2 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
AFAIK the official place to get the latest unrar sources is: https://www.rarlab.com/rar_add.htm It has version 5.6.8 source code. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/8 22:03
#3 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Yep, i confused because it was marked as 5.61 Browsing around there are other versions for Amiga at http://amiga.sf.net/ The newser there Is the 3.80 and it's compiled for all 68k flavours, including MorphOS, WarpOS and AmigaOS4 ... then still there also an ancient 3.4.3 that include localization support Both were made by Diego Cassoran and others |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 9:06
#4 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
I think the 5.61 version is for the full WinRAR/RAR distribution (?) and the 5.6.8 version is for the free unrar. I did some work on porting unrar 5.6.8 and it is now compiling and almost linking apart from three undefined dependencies which I still need to fix: Quote:
I also haven't yet moved all the Amiga specific changes from the 3.9.8 port to this version yet. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 12:29
#5 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@salass00
Small update: I just got unrar 5.6.8 compiled and linked and I was able to use it to extract a RAR archive. There is still an issue however in that the output to the console is not quite working, that I will have to look into (the help text is printed fine but for instance "unrar l archive.rar" outputs a whole lot of empty space rather than the contents of the archive). |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 12:34
#6 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Quote: I think the 5.61 version is for the full WinRAR/RAR distribution (?) and the 5.6.8 version is for the free unrar. Probably ... Quote: I did some work on porting unrar 5.6.8 and it is now compiling ... Wow, thanks a lot ... crossing fingers then ![]() Aniway only now I read a comment on OS4Depot when YesCop talk about big RAR archives, for what i've understand apparently there is a problem extracting big files in the current official version we have (3.9.7 on OS4Depot) I asked here for a new port mostly because in general i was unable to extract big archives from it, i though this was caused by the relative age of our version ... but maybe it was not ? In the same comment Yescop suggest some modification for the code, maybe you might be interested to read: http://os4depot.net/index.php?functio ... ity/archive/unrar-src.lha |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 13:21
#7 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
Quote:
Adding large file support to unrar looks like it should not be very hard to do as the file i/o seems to be limited to only a couple of files. Basically to support large files with newlib some functions need to be replaced, like fopen() => fopen64(), fseek() => fseek64(), stat() => stat64(), ... and some types like struct stat => struct stat64 and off_t => _off64_t. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 17:24
#8 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/24 17:54 From Sanremo
Posts: 1809
|
Thanks Samo for the request and Salass for updating it
![]() |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 18:52
#9 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
After looking over my vswprintf() function about a hundred times and doing a little debugging I finally found why it wasn't working correctly.
It turns out that I had mistakenly written "if ((ch == *fmt++) == '\0')" instead of "if ((ch = *fmt++) == '\0')" in a piece of code and then reused this wrong line of code in a lot of places in the function. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 19:06
#10 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Oh sorry to hear ![]() Well .. atleast this step was done ... well now that output to console should be ok, what still missed ? I counted two atleast ... 1 - big file support, that you say it's not hard to implement Then ? Localization maybe .. seems not working, atleast in diego archive .. but certainly its not a priority |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 22:14
#11 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
https://www.dropbox.com/s/uz9pcuixynxu ... ar-5.6.8-20181210.7z?dl=0 Large files should be supported with this version. I haven't tested it though apart from with a couple of RAR archives that I happened to have on hand and they were not particularly big. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 22:40
#12 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Ok still testing with 2 multipart archives (of 900mb each) and is going ... I'm on a poor Sam440 ... give me 10 minutes and i will confirm if everything will be extracted ![]() |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 23:09
#13 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Ok, tested ... i need some more time because i had a freeze during the extraction, but quite probably because i was doing something else at computer ... The extraction worked perfecty ,, maybe only bit slower compared to the previous version in the sense that my Sam seems suffered a bit when doing other operations .. for example play music in AmigaAMP sometimes stopped for a few seconds when UnRAR switched to the next archive to extract ... nothing drammatic aniway ![]() Now, just another request, time permitted of course, are you able to make localization to work ? I'm close to finish the italian translation ;.) |
|
|
Re: An update for UnRAR ? |
Posted on: 12/9 23:32
#14 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
Quick report 2
Shell cannot be closed during the work, so i trìed with ctrl-c but got a crash ----------------------------------- Crash log for task "unrar" Generated by GrimReaper 53.19 Crash occured in module newlib.library.kmod at address 0x01B5588C Type of crash: DSI (Data Storage Interrupt) exception Alert number: 0x80000003 Register dump: GPR (General Purpose Registers): 0: 80808080 4A617270 00000000 4A617288 00000000 0000007F 0195177C 00000000 8: 4A617288 0000001F 00000000 4A617288 000007C8 4A64D318 00000000 55DAB340 16: 6CA2A400 00000001 55DA5760 49C31058 02280000 02280000 00000000 00000021 24: 4A619A50 49BDE030 4A639868 00000002 4A6397D8 4A639988 0000007F 4A617288 FPR (Floating Point Registers, NaN = Not a Number): 0: nan 933 947 538 4: 0 750.8 55.8 538 8: 0 4.5036e+15 750.8 55.8 12: 1146 1003 0 -0 16: 0 0 0 0 20: 0 0 0 1.61895e-319 24: 4.94066e-324 0 0 0 28: 0 1.35808e-312 1.3581e-312 -3.40282e+38 FPSCR (Floating Point Status and Control Register): 0x82004000 SPRs (Special Purpose Registers): Machine State (msr) : 0x0002F030 Condition (cr) : 0x46C86DA0 Instruction Pointer (ip) : 0x01B5588C Xtended Exception (xer) : 0x018233AC Count (ctr) : 0x00000000 Link (lr) : 0x00000000 DSI Status (dsisr) : 0x01842B34 Data Address (dar) : 0x00000000 680x0 emulated registers: DATA: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ADDR: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FPU0: 0 0 0 0 FPU4: 0 0 0 0 Symbol info: Instruction pointer 0x01B5588C belongs to module "newlib.library.kmod" (HUNK/Kickstart) Stack trace: native kernel module newlib.library.kmod+0x0003058c module unrar at 0x6CA2B6E0 (section 5 @ 0x16BC) module unrar at 0x6CA3C004 (section 5 @ 0x11FE0) module unrar at 0x6CA5ACD8 (section 5 @ 0x30CB4) module unrar at 0x6CA32774 (section 5 @ 0x8750) module unrar at 0x6CA34C40 (section 5 @ 0xAC1C) module unrar at 0x6CA35990 (section 5 @ 0xB96C) module unrar at 0x6CA308F0 (section 5 @ 0x68CC) module unrar at 0x6CA47194 (section 5 @ 0x1D170) module unrar at 0x6CA47A30 (section 5 @ 0x1DA0C) module unrar at 0x6CA59438 (section 5 @ 0x2F414) module unrar at 0x6CA2A5F8 (section 5 @ 0x5D4) native kernel module newlib.library.kmod+0x000020ac native kernel module newlib.library.kmod+0x00002d14 native kernel module newlib.library.kmod+0x00002ef0 unrar:_start()+0x2c8 (section 1 @ 0x2C4) native kernel module dos.library.kmod+0x000255c8 native kernel module kernel+0x0003e7b4 native kernel module kernel+0x0003e7fc PPC disassembly: 01b55884: 7d2903a6 mtctr r9 01b55888: 60008080 ori r0,r0,32896 *01b5588c: 816a0000 lwz r11,0(r10) 01b55890: 3d2bfeff subis r9,r11,257 01b55894: 3929feff subi r9,r9,257 System information: CPU Model: AMCC PPC440EP V1.3 CPU speed: 799 MHz FSB speed: 133 MHz Extensions: Machine Machine name: Sam440EP Memory: 1048576 KB Extensions: bus.pci |
|
|
Re: An update for UnRAR ? |
Posted on: 12/10 11:03
#15 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
Quote:
Was it prompting for a password when you pressed ctrl-c? According to the stack trace the crash was in the GetPasswordText() function. A NULL return value from getpass() function could be the cause of the DSI and would be easy to fix. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/10 11:13
#16 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
Quote:
In theory it should be relatively simple to add locale support using standard AmigaOS catalogs. It is however made a little more complicated by the fact that unrar expects strings in wide char format (ucs4) so I might have to look over the conversion routines to see how they are handling non-ASCII characters. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/10 12:31
#17 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Quote: Was it prompting for a password when you pressed ctrl-c? Yes exactly, i was trying to close the shell in that situation, altrough the password was already given and the archive was already extracted .. that's why i didn't say to you, i though there were no relation with that Quote: In theory it should be relatively simple to add locale support using standard AmigaOS catalogs. I found an old 3.20 version when some work seems already done, there is a catalog descriptor file (old of course) and some related code for the translation (loclangAmiga.h and loclangAmiga.hpp files) Have a look here: http://www.winrar.es/descargas/62 |
|
|
Re: An update for UnRAR ? |
Posted on: 12/10 13:38
#18 |
---|---|---|
Just can't stay away
![]() ![]() Joined:
2006/11/30 11:30 From Finland
Posts: 1690
|
@samo79
I already made a catalog descriptor file: https://www.dropbox.com/s/h5p46sxxfoe7ba7/unrar-cd.7z?dl=0 I use the same names for the strings as unrar so I don't have to make too many code changes. Writing the descriptor file took quite a bit work as there are 381 strings. Catcomp complains a bit about trailing spaces in some of the strings but fortunately it doesn't strip them out as they are needed. It is a bit odd that formatting is included in the strings to be translated. |
|
|
Re: An update for UnRAR ? |
Posted on: 12/10 14:05
#19 |
---|---|---|
Home away from home
![]() ![]() Joined:
2006/12/2 3:55 From Italy, Perugia
Posts: 3146
|
@salass00
Ok i'm already started working on it, it's just almost done as i've already done somethings with the previous catalog ... btw what is the real name of the original author ?? Alexander or Eugene ? I understand he is russian but in some place they refer to him as Alexander but in other place as Eugene ! |
|
|
Re: An update for UnRAR ? |
Posted on: 12/10 16:05
#20 |
---|---|---|
Home away from home
![]() ![]() Joined:
2007/9/11 11:31 From Russia
Posts: 5542
|
@samo
They 2 brothers, Eugeniy seems to be main author and Alexand have rights on. |
|