dcpu16 - an assembler, disassembler and emulator for Notch's DCPU-16 virtual CPU for the game 0x10c
# Run an object file through the emulator dcpu16 <object file> # Run an object file through the emulator and dump CPU state at each clock tick dcpu16 --debug <object file> # Run an assembler file through the emulator dcpu16 <assembler file ending in .dasm or .dasm16> # Decompile an object file to an assembler file dcpu16 --disassemble <object file> # .. or round trip an assembler file dcpu16 --disassemble <assembler file ending in .dasm or .dasm16> # Compile an assembler file to an object file dcpu16 --assemble <assembler file> > <object file> # Run a file and limit the number of instructions dcpu16 --limit 20 <file> # Run a file and simulate a 2ms penalty for each cycle dcpu16 --penalty 2 <file> # Allow a program to run past the last instruction that was loaded # (therefore allowing programs to rewrite themselves larger) dcpu --full_memory <file> # Run the CPU with a console device mapped from 0x8000 to 0x817f dcpu16 --console 32768 33151 alphabet.dasm
The Perl modules:
Simon Wistow <email@example.com>
Copyright 2011 - Simon Wistow
Released under the same terms as Perl itself.
Latest development version available from