Tenie Remmel's 1990s collection of x86 assembly code — browse the sources, edit them, assemble them with JWasm and run them in DOSBox, all in your browser.
Welcome
Pick a file on the left. Assembly sources open in an editor with Assemble & run: your (edited) source is translated from Borland TASM syntax to MASM syntax, assembled by a real DOS build of JWasm running inside js-dos (DOSBox compiled to WebAssembly), and the resulting .COM/.EXE is started right away.
Most programs also come with the original 1997 binary from the collection, which you can run with one click. Text files and documentation are shown as-is (CP437 decoded).
The virus/ directory is included for reading only: nothing in it is ever assembled or run.
Collected and maintained by Tenie Remmel (1996–1997). This page exists to keep that effort alive. See About & credits.
DOSBox
Click inside the screen to give it keyboard focus. Programs that wait for a key need it. The DOS prompt stays open after the program exits so you can re-run it (type PROG) or look around (DIR).
About this page
The Assembly Snippets, version 4.0 (April 1997) was collected and maintained by Tenie Remmel. It gathers the Fido 80xxx echo Snippets, the ASM0-Z collection and a great deal of other public domain x86 assembly code: over 500 source files and 200,000 lines of code, plus documentation, tools and games. Tenie released the collection into the public domain. This page is dedicated to him and to the many authors whose work he preserved. The individual files carry their own authors' names and notices.
Every file of ASNIP40A/B/C.ZIP is browsable; text is decoded from CP437. Nothing was modified; all files are included, including the virus/ sources, which are shown but never assembled or executed here.
The sources were written for Borland TASM (MASM mode and IDEAL mode). A small translator (asm-prep.js, in this page) rewrites TASM-only syntax into MASM 6 syntax: IDEAL mode directives, multi-register PUSH/POP, @@local labels, JUMPS, 8086 shift expansion, segment prefixes, COMMENT \ and so on.
At build time, every snippet outside virus/ was translated and assembled with a native build of JWasm 2.21; the results are shown as badges. Where the original 1997 binary exists in exes/, it is available to run and was compared byte for byte.
In the browser, Assemble & run translates your edited source and assembles it with the DOS build of JWasm (Sybase Open Watcom Public License) running inside js-dos 8.5.3 (GPL-2.0, DOSBox core), then runs the result. Nothing leaves your browser.
Every file has a permanent link: the address bar updates as you browse (for example #code-2stdout-asm), and Copy link next to the file name copies it.
Build statistics
Limits
This is DOSBox: programs that poke real hardware (CMOS, serial ports, protected mode tricks, timing loops) may misbehave or do nothing. Multi-module programs (DSKPATCH, GETE, PMODE examples) need a linker and are shown as source with their original binaries. The translator is heuristic; if a translated file fails to assemble, the error output of JWasm is shown on the DOS screen and the translated source view shows what was actually fed to the assembler.