-
Notifications
You must be signed in to change notification settings - Fork 1
An MS-DOS COM executables disassembler for Linux. Part of a university assignment in Assembly languages.
License
rakuco/decompify
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
decompify An MS-DOS COM files disassembler for Linux. ============================================= Introduction ------------ This project comes from an Assembly Languages and Computer Organization class assignment from State University of Campinas, Brazil. The code is licensed under the General Public License (GPL) and should be used by other students who want to learn Assembly. It's written for NASM and should compile under any Linux 2.6.x kernel. Acknowledgements ---------------- The design of the program was heavily influencied by Marius Gedminas' Disasm, which was also a school project and had the same purpose, but it generated a disassembly suitable for TASM. For more information, please check Marius' site: http://gedmin.as/disasm Christian Fowelin's libASM was of great help as well. Even though I only used one of his functions (WriteHex) directly, the simple looking at his code is of great value. libASM: http://www.fowelin.de/christian/computer/libASM Instruction set --------------- decompify follows the university assignment and only implements the Intel 186 instruction set (not even 386 instructions are implemented). The instructions which are implemented can be found in assignment/proj02.pdf. Multiple mnemonics ------------------ Some instructions have more than one possible mnemonic which corresponds to the same opcode, such as WAIT/FWAIT and XLAT/XLATB. In these cases, the mnemonic output by ndisasm was chosen. Invalid bytes ------------- In case decompify finds an erroneus byte in the code, it just writes a db BYTE in the code. Jumps and labels ---------------- Currently, jumps and branches do not generate labels. The code generated inserts the literal address of the jump after the mnemonic.
About
An MS-DOS COM executables disassembler for Linux. Part of a university assignment in Assembly languages.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published