home *** CD-ROM | disk | FTP | other *** search
- ID MS-DOS Programmer's manual ID
-
- ID (Intelligent Disassembler) version 1.2 is a hacker's basic tool, and
- I am pretty suprised that I haven't seen other programs around that do this.
-
- Here it is, anyway. Done in Aztec C 4.2d, under the small memory model (and
- optimizing speed-over-size). The general call is:
- id program[.com] [@cmdfile] [=adjust] [[+]entry] [-exit] [:address] [~]
- where the parameters are:
-
- program Name of the program to be disassembled. If no extension is given,
- .com is assumed. ID outputs the resulting assembler code to standard
- output, so you'll have to redirect it to a file. All diagnostic and
- debug output goes to standard error - they won't get redirected into
- the file.
-
- cmdfile Name of a file containing parameter-like commands, one to a line
-
- adjust The start address of the program in memory (hex). This is assumed to
- be 100h, since .com-programs start at this address. .com style device
- drivers would need adjust 0
-
- entry A entry point into the program (hex). ID only disassembles reachable
- code, and the algorithm is very simple: if no entry points are given,
- adjust is assumed. This often is not enough for TSR programs, since
- the loader portion of the code never directly jumps to the resident
- part
-
- exit A exit address (hex). Since there is no register trace, ID cannot
- distinguish a normal DOS INT 21h from a exit request (AH=0, 4Ch...)
- However, ID will stop disassembling after a INT 20h, INT 27h or a
- illegal instruction. This parameter will enable you to set a exit
- point where disassembly will stop
-
- address A address that is forced to be referenced (hex). This means that
- constant references to this address will be translated to
- OFFSET LBaddress - though the heuristic is rather shaky...
- Initially, only the adjust address is referenced.
-
- A tilde will set device driver mode (which basically makes offsets 4,6,8 & 0xA
- referenced and marks addresses found at 6 & 8 as referenced code).
-
- I hope you will find this program as useful as I do. Further developement
- ideas could be adding 8087 and other processor commands, having a simple
- register trace to be able to distinguish different DOS interrupts etc.
-
- A really major project would be making this work with .exe-style files...
-
- (c) 1986,87,88,89,90 Otto J. Makela
- Address:Kauppakatu 1 B 18
- Sf-40100 Jyvaskyla
- Finland, Europe
- Phone: +358 41 613 847
- Email: otto@jyu.fi
- BBS: JyBox +358 41 211 562
- CCITT V.22bis/V.22/V.21 24h/day
-
- See the file COPYING for the GNU General Licence under which this program is
- distributed. Basically, you are allowed to copy this program freely along with
- it's source, but you cannot make proprietary changes to it.
-
-