Monday, July 23, 2007

MTAPPACK - asm/libc Linux port - done!

OK, here we go. It was already done the day before yesterday, but I had a problem running it resulting in segmentation fault. The problem was that I didn't add a simple line into mtappack.asm which looks like "add esp, 16" (damn "C" call convension) and thought that was LZMA library causing the error. I figured out later that I defined "__stdcall" as nothing, which I then replaced with "__attribute__((stdcall))".
I think this port cannot be compiled with MASM anymore since I added "if"/"end if" and escaped some lines with "\" in mtappack.asm and not sure if MASM supports them. But it compiles with FASM quite fine (why would anyone use MASM? maybe its COFF files are incompatible with Microsoft's linker used on Win32). You are welcome to help me there.
Ported binaries along with source code are available from my site, but I've also mailed it to diamond so it may be further available from his site. Get them as mtappack-bin.tar.bz2 (17K) and mtappack-src.tar.bz2 (177K) archives respectively. I've also included APlib library into source package (which is not in the original MTAPPACK archive). Everything is under GPL, and copyrights holder of MTAPPACK, including this Linux port, is diamond.

I feel like I have to work on standard libraries now a bit more because I know they have some bugs and just need to be better.

0 comments: