Welcome

This part of my homepage has been created specially for Engilsh-speaking assembly language programmers. You're welcome to use anything found here, according to the licenses of these files (most are uder the GNU GPL right now, macros are under the BSD licence). I hope you'll find these useful.

All of these have English comments.

Contents:

Mirros of this site:




AsmDoc - HTML documentation generator

(skip to C header file converters)

A Perl script which generates HTML documentation form the given source files, just like javadoc for Java: asmdoc.txt (2016-03-20).
The script is UTF-8 encoded and easy to translate into other languages. It generates valid HTML pages with no JavaScript, in any supported human language. Requires Perl 5.8 and a bunch of core modules. Run with no arguments to get help. Open in a text editor to read instructions on how to write documentation comments.
Supports some basic IDA Pro's comments, thanks to Rick Foos (www.solengtech.com/downloads).


C header file converters

(skip to Source file converters)

A simple C header file parser, required by all of the scripts: CallbackCParse.txt (2016-03-20)

A Perl script which converts C header files to FASM-compatible header files: konw-fasm.txt (2016-03-20)

A Perl script which converts C header files to NASM-compatible header files: konw-nasm.txt (2016-03-20)

A Perl script which converts C header files to GNU as-compatible header files: konw-gas.txt (2016-03-20)

NOTE: the end-of-line should be consistent in a file. That is, these scripts can hang if in one part of the file the EOL was MS-style (CR+LF) and in the other it was Unix-style (bare LF).

NOTE: if the header files use C macroes extensively and these scripts can't detect some external definitions, structures or other objects, you can do the following steps:

  1. run these scripts on the original file to get the preprocessor directives correctly
  2. run a C preprocessor (like gcc -E) on the original file and save the output
  3. run the scripts again on the saved output to process the rest of the elements

Source file converters

(skip to Kate/KWrite syntax highlighting)

A Perl script which converts GNU assembler source files to FASM-compatible files: gas2fasm.txt (2016-03-20)
Requires Asm::X86 (below).

A Perl script which converts GNU assembler source files to NASM-compatible files: gas2nasm.txt (2016-03-20)
Requires Asm::X86 (below).

A Perl script which converts FASM source files to GNU assembler-compatible files: fasm2gas.txt (2016-03-20)
Requires Asm::X86 (below).

A Perl script which converts NASM source files to GNU assembler-compatible files: nasm2gas.txt (2016-03-20)
Requires Asm::X86 (below).

A Perl script which converts NASM source files to FASM files: nasm2fasm.txt (2016-03-20)

A Perl script which converts FASM source files to NASM files: fasm2nasm.txt (2016-03-20)


Kate/KWrite syntax highlighting

(skip to macros for FASM)

BIG thanks to Nicola Gigante, who made the original NASM syntax highlighting file.
For NASM (2017-05-07) - improved original

For FASM (2016-08-16), based on the NASM one.

(just copy these to $HOME/.kde/share/apps/katepart/syntax/).


Some macros for FASM

(skip to Makefile generator for FASM)

A few macros for FASM you might find useful. More details inside: makra-fasm.txt (2016-03-20)


Makefile generator for FASM

(skip to Linux kernel module helper for FASM)

A Perl script which generates a Makefile for each FASM-compatible source file found in the directory (and all subdirectories, if requested): make4fasm.txt (2016-03-20)


Linux 2.6 kernel module helper for FASM

(skip to Autoconf macros)

A Perl script which generates the __versions section for a FASM-syntax Linux 2.6 kernel module source file: symvers-fasm.txt (2016-03-20)


A set of Autoconf macros

(skip to Assembly converter for Doxygen)

These macros check for existence and command-line options of the following assemblers: NASM, FASM, YASM, TASM, MASM and HLA. It's very easy to support more than just these. More details inside: ac_prog_asm.zip (2016-03-20)

Also available from Autoconf Macro Archive.

Assembly converter for Doxygen

(skip to Asm::X86 Perl module)

A Perl script which converts specially-documented assembly language files into pseudo-C files, from which Doxygen can generate documentation: asm4doxy.txt (2016-03-20)
Documentation commets' syntax is the same as for AsmDoc above. Run with no arguments to get help. Open in a text editor to read instructions on how to write documentation comments.
Supports some basic IDA Pro's comments and syntax, thanks to Rick Foos. Go to www.solengtech.com/downloads and to wingraph-to-graphviz for additional useful tools.


Asm::X86 Perl module



A Perl module which provides useful subroutines to the user: Asm-X86-0.25.tar.gz (2017-05-07) (signature)
perl-Asm-X86-0.25-1.fc12.noarch.rpm (2017-05-07) - built on Fedora, requires RPM packages containing the following libraries: perl-Asm-X86-0.25-1.fc12.src.rpm (2017-05-07) - built on Fedora, requires RPM packages containing the following libraries:

Current possibilities:
This module is now available on CPAN: search.cpan.org/~bogdro/


Other Free Software



Check out the page listing my other free software.

Contact info

[poczta] Contact me: bogdandr AT op . pl
(English accepted, just say 'ASM' somewhere in the title).

[certificate] My public certificate: crt format, cer format, pem format, p7b format, p7c format
Certificate MD5 fingerprint: 68:0D:78:15:1F:6E:24:7A:48:82:EB:CA:0F:3B:5A:A0
Certificate SHA1 fingerprint: 8C:9B:7A:AB:A9:8E:39:FE:3A:B0:34:35:C1:41:10:89:38:4B:42:E2

[certificate] Issuer certificate: der format
Issuer certificate MD5 fingerprint: EB:77:B9:23:0F:21:02:2A:29:54:8A:78:A3:A4:8F:20
Issuer certificate SHA1 fingerprint: FE:E7:83:1D:AA:8D:1E:10:32:40:2D:08:1D:23:00:0F:86:C4:48:46

[certificate] Revocation list of the previous certificates: crl format, pem format.

[keys] My public GnuPG / PGP key: asc format
Number 1C56DA1E, Key SHA1 fingerprint: E91E 699F 1026 D0EF 745E EC3B 353A D368 1C56 DA1E


Page info

This page is written using valid HTML 4.01 [Check my HTML 4.01], [Checked by HTML Validator (based on HTML Tidy)], for all browsers: [For all browsers]

This page uses a valid CSS [Check my CSS]

The channels on this page are compatible with the Atom 1.0 standard [Check my Atom 1.0] and RSS 2.0 [Valid RSS]

This page has a content security policy.

This page doesn't use GIF images and doesn't use JPG images.

This page displays dates in the international ISO-8601 format: YYYY-MM-DD.

This page is JavaScript-free, Java-free and Flash-free.