FASM — x86 assembler and debugger

A local environment for 16-bit FASM programs: compile with real FASM, run in DOSBox, and debug step by step through Debug/X.

Source code

CPU

Changed on this step Changed during session Flag is set

Registers

ax ----
bx ----
cx ----
dx ----
si ----
di ----
bp ----
sp ----
cs ----
ip ----
ds ----
es ----
ss ----

Flags

CF
PF
AF
ZF
SF
IF
DF
OF

Disassembly

FASM, DOSBox, CWSDPMI, and Debug/X run locally in your browser. Source code is not sent to the server.

How to use this tool

A local environment for educational 16-bit FASM programs: source is assembled by the real FASM, the .COM executable runs in DOSBox, and Debug/X exposes program state for step-by-step inspection.

Steps

  1. Write a FASM program using use16 and org 100h. Run and Debug automatically rebuild modified source.
  2. Use Run for normal execution, Debug to stop at the entry point, and Restart to repeat the last launch mode.
  3. Set breakpoints from the source gutter, then inspect registers, flags, stack, memory, and persistent disassembly history while debugging.

Useful for

  • x86 and DOS laboratory exercises
  • Checking FASM .COM programs
  • Learning registers, flags, stack, and memory

Limits and accuracy

  • The environment targets DOS .COM programs; protected mode and modern operating systems are outside its scope.
  • Runtime files are fetched by a project preparation script at build time and then execute locally in the browser.

Privacy

Source code, binaries, and debugger state stay in the browser; the server only serves static runtime files.

Sources