Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?

Submission + - Introducing JWASM - MASM's unofficial successor??? 7

Odoital writes: January 2010 is an exciting month for x86 assembly language developers. Software developer Andreas Grech, better known to the x86 assembly language community and the rest of the world by his handle "japheth," has released another version of JWASM — a steadily growing fork of the Open Watcom (WASM) assembler.

JWASM is a 16/32/64-bit x86 macro assembler that is written in portable C and can build/run on multiple platforms such as Windows, Linux, FreeBSD and DOS. JWASM also supports assembling to popular object formats such as 32/64-bit ELF, 32/64-bit MS COFF, Intel OMF, BIN (flat binary) and even DOS MZ files. The current version at the time of writing this article, JWASM 2.02, can also compile under Mac OS 10.6 using the latest version of XCode, after a bit of error placating with GCC and LD that is.

Since JWASM doesn't currently support Mach-O object output, I went an alternate route and decided to assemble a variation of the "FreeBSD 32 Hello world" example, found on the author's site, to ELF and use Agner Fog's OBJCONV utility to convert the ELF object to Macho-O for linking with LD. As a result, while running JWASM on Mac OS X, it failed to produce valid ELF object files, something the compiled Windows counterpart did with flying colors, indicating that there is some work ahead in providing JWASM as a more mature, consistent and reliable cross-platform assembler.

Despite the current limitations in Mac OS X support, JWASM still packs a punch. The main benefit of JWASM, arguably, is the nearly full support of Microsoft's Macro Assembler (MASM) syntax. As those in the assembly language community may already know, Microsoft's desire to continually support the development of MASM has been dwindling over the years — if only measurable by a decreasing lack of interest, updates and bug fixes — and thus the future of MASM remains uncertain.

Furthermore, JWASM does not have the "non open-source" and "Windows-centric" development restrictions that the MASM license entails. JWASM allows for unrestricted MASM-style operating system and embedded development, as well as development on/for other platforms, e.g. Linux. With all of that in mind, and as it matures, the choice of utilizing JWASM for software development, within toolchains, etc... is becoming more of a serious consideration for software developers.

While Intel-style syntax x86 assemblers such as NASM have been around for a while, JWASM opens up a new possibility to those familiar with MASM-style syntax to develop in the domains (i.e. other than Windows) in which assemblers such as NASM currently thrive. JWASM is a welcomed tool that supplements the entire x86 assembly language community and will hopefully, in time, generate new low-level interests and solutions.

JWASM binaries, source, documentation, license information and examples can be found at
This discussion was created for logged-in users only, but now has been archived. No new comments can be posted.

Introducing JWASM - MASM's unofficial successor???

Comments Filter:
  • The author of this review is canvassing for support on Wikipedia. The "article" on Wikipedia about JWASM is up for deletion for lack of sources. The author of this review wrote it explicitly (and only) to try to provide some kind of reliable source for the Wikipedia article on JWASM. Now, the author is canvassing at Wikipedia in an attempt to game Slashdot's system, as a way to get you guys to post this. I just wanted to make you aware of this, as you may be getting a lot of gamed supports for this "review.
    • by adam613 ( 449819 )

      This seems kind of short-sighted and foolish.

      Does Wikipedia even consider Slashdot a reliable source?

    • "Gamed support" is rather a foolish and insulting notion. The request was that anyone truly interested in JWASM (including usage) post a reply here. No one was asked to spam this place. If JWASM is notable, it will be in its own right and reporting it to Slashdot is just another means of measuring the current level of notability/interest. My effort to write this review is a result of an AfD situation that occurred at Wikipedia, yes, but my desire to do so is for the sake of the tool itself, i.e. personal i
      • "Personal vendettas"?!? I had no interaction with you before you wrote this review in an attempt to save a Wikipedia article for deletion. Nothing personal, it's just not acceptable practice.
        • Based on your reactions at Wikipedia regarding this particular situation and the people involved, you seem like you are seeing "red" now. In short, whether you realize it or not, you have lost your objectiveness of the situation at hand. Again, I wrote this review independently of the need to "save" the Wikipedia article. If it happens to "save" it, then fine. If not, that's just as fine. However, posting here to Slashdot is in itself a worthy endeavor... I've often come to this place to find interesting
          • The fact that it's posted within hours of your having written it, does not speak well for Slashdot's review process, or reliability as a source of information.
            • I cannot speak for the integrity or review process of Slashdot or its editors, as I don't have any facts or documentation on the entire process. Unless you are willing to claim firsthand knowledge on said process, and supply facts/documentation, your assertions aren't very reliable. Reliable sources have been reporting news, events, etc. in much quicker time than this review has been accepted, for well over a decade... its a sign of the times and technology available. Moreover, is it that difficult to conc

"If it's not loud, it doesn't work!" -- Blank Reg, from "Max Headroom"