FASMLIB is a portable general-purpose library for 32bit x86 assembly language. It has two main purposes:

First is to get assembly programmers rid of rewriting basic routines every time. FASMLIB provides basic commonly-used routines. They are well tested, easy to use, and tend to prevent bugs in code.

Second is to allow assembly programmers have single source working for multiple operation systems. FASMLIB wraps most common routines of supported OSes, with common interface for all. Thus all your code using FASMLIB can run under any supported supported platform. Of course, this multiplatform support is limited to x86 32bit processor only. Currently win32 and linux platforms are supported.

FASMLIB is designed to allow people to use it easily with only pure assembly, without need for any macros. But for FASM users, FASMLIB contains couple of optional high-level macros that can make it's usage even easier.

FASMLIB is NOT designed to be fast. Simplicity of usage, bugproofnes, powerfulness and maintability are more important.

FASMLIB is designed to be both simple to use and powerful. This is often solved by having two versions of procedures, one simple for common use, and one more complicated with lots of options.

FASMLIB comes with full source code and complete documentation. Documentation is currently only in CHM format.

Altough name may suggest FASMLIB is only for use with FASM (Flat Assembler), this is not true. FASMLIB currently has support for FASM, MASM, NASM and YASM. Support for more assemblers can be added on demand. This name is remnaint from time when it was FASM-only library. I am currently seriously considering renaming to it to LibASM.