flat assembler
Message board for the users of flat assembler.
![]() Goto page 1, 2, 3, 4 Next |
Author |
|
narada
How about fasm LZMA (e.g. 7-Zip) sources? ))
LZ too. All LZ* sources - let put they here )) |
|||
![]() |
|
edfed
what for?
there are still working versions of fasm archives, i don't see why to make it in another way |
|||
![]() |
|
edfed
there, yes, very interresting, it is a code we all need to devellop enormous applications.
a good thing would be to build a macro that will compress the code during compilation, but too hard or impossible to do i presume. |
|||
![]() |
|
MHajduk
edfed wrote: to build a macro that will compress the code during compilation, but too hard or impossible to do i presume. |
|||
![]() |
|
bitRAKE
This macro generates optimal huffman codes:
(not good compression compared to LZ*) Code: @inproceedings{mk95:wads, author = "A. Moffat and J. Katajainen", title = "In-place calculation of minimum-redundancy codes", booktitle = "Proc. Workshop on Algorithms and Data Structures", address = "Queen's University, Kingston, Ontario", publisher = "LNCS 955, Springer-Verlag", Month = aug, year = 1995, editor = "S.G. Akl and F. Dehne and J.-R. Sack", pages = "393-402", }
|
|||||||||||
![]() |
|
MHajduk
bitRAKE
I haven't tested your macros carefully, but I think that there is a small typographic error: you use 'tre' label, but it isn't defined. I suppose that there should be 'tree' (which is defined). Hmm... there was one man of genius called Leonardo da Vinci, which intentionally inserted some faulty or incorrect informations in his projects because he wanted to "encrypt" them... ![]() ![]() |
|||
![]() |
|
bitRAKE
MHajduk, that's a label from the decompressor. The macro generates correct huffman codes, but does not apply them or build the suffix tree. PRESSME is a macro of code/data to compress. It is most certainly incomplete.
|
|||
![]() |
|
narada
but w/o macro, x86 arch needed. for exmpl to make archiver for specified OS (Kol/Menuet or own)
)) |
|||
![]() |
|
AlexP
Quote: Hmm... there was one man of genius called Leonardo da Vinci, which intentionally inserted some faulty or incorrect informations in his projects because he wanted to "encrypt" them... but maybe I'm too distrustful in this case... ![]() |
|||
![]() |
|
Rahsennor
Porting LZMA to fasm sounds like a good idea. I'd have a go myself, if I could understand the SDK.
![]() |
|||
![]() |
|
DOS386
> Porting LZMA to fasm sounds like a good idea.
YES ![]() ![]() > I'd have a go myself, if I could understand the SDK. Hey, Igor intends to release a plain C LZMA SDK (also compress) ASAP - better than C++ ![]() > How about fasm LZMA (e.g. 7-Zip) sources? Buh ![]() ![]() _________________ Bug Nr.: 12345 Title: Hello World program compiles to 100 KB !!! Status: Closed: NOT a Bug |
|||
![]() |
|
f0dder
What's the point of re-writing the LZMA SDK in fasm? It would be a maintenance nightmare, if you wanted to keep up with updates (but OK, they're very infrequent these days, so it's at least doable, even if silly).
The sane thing to do would be writing some include files for interfacing with the LZMA SDK libraries, and simply link against those. But the LZMA SDK is a pretty mangled piece of work, hard to "dive into", and a good example of you shouldn't do C++ code ![]() |
|||
![]() |
|
revolution
There is no reason to have to keep up with the LZMA-SDK. Once it is written in ASM then why do you need to follow the updates, just go your own way and do whatever.
Plus there is the intangible benefit of learning when writing and debugging it. I can recall my time writing a ZIP compressor/expander. It was, of course, not needed to be done, but there is no substitute for the understanding and knowledge I gained, not just with the algos involved, but also the extra things like performance and interfacing etc. |
|||
![]() |
|
f0dder
revolution wrote: There is no reason to have to keep up with the LZMA-SDK. Once it is written in ASM then why do you need to follow the updates, just go your own way and do whatever. Of course the the learning experience can be valuable, but it sounded like the original purpose was reimplenting the algorithms in fasm just for the sake of reimplementing them - which is a waste of time. But I do remember I had that same idea around 8+ years ago, code simply wasn't good enough if it wasn't omfgassembly ![]() |
|||
![]() |
|
bitRAKE
If we valued software by global time in use then LZMA might be high on the list of software to optimize? For example, if every hour of computer use equates to 77 seconds of LZMA runtime then we should get a team of 77 people to optimize the hell out of it, lol.
I doubt it's high on the list though. Hopefully, everyone can see the implications for open source here. It'd be nice it there was a global list of software use. So, people that wanted to optimize software or even algorithms could approach it from a this perspective of global benefit. |
|||
![]() |
|
narada
Hey, sorry for topic name. My english is sooooo... bad (((
Napishu na russkom )). Chto jesli portirovat' ishodniki LZMA na fasm... |
|||
![]() |
|
MHajduk
Как я понял, ты уже что-то сделал и хочешь здесь выложить результаты своей работы? Всем форумчанам будет интересно посмотреть исходники LZMA на FASM.
![]() |
|||
![]() |
|
MichaelH
Greater than 100 (definitely), less than 1000 (?) ...... that's a guess at the number of posts I read from f0dder telling someone not to do something cause it wasn't worth it
![]() IF IT'S WORTH DOING, IT'S WORTH DOING IT IN ASSEMBLER! |
|||
![]() |
|
bitRAKE
MichaelH wrote: Greater than 100 (definitely), less than 1000 (?) ...... that's a guess at the number of posts I read from f0dder telling someone not to do something cause it wasn't worth it ![]() (Я буду искать в архивах для x86 LZ* содержимому.) |
|||
![]() |
|
Goto page 1, 2, 3, 4 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.