LBrenkus@MIT-MULTICS.ARPA (07/04/84)
Are there any disassemblers available in the public domain? The only programs which I have seen rely on MANUAL recognition of data vs. code. Much more useful would be a program that disassembled as data (DB) any area that wasn't "reachable": e.g., locations which follow a non-conditional jump but preceed any address referenced by a jump or call. This wouldn't be foolproof (because of indirect jumps and locations referenced by INT vectors) but would be relatively easy to clean up. Even without bells and whistles (e.g. ability to label variables, use of commented macros for DOS function calls and BIOS interrupts) this would greatly simplify patching programs. Please post any suggestions.
jph@whuxle.UUCP (07/06/84)
#R:sri-arpa:-158300:whuxle:22700033:000:478 whuxle!jph Jul 6 14:38:00 1984 On several BBSs there is a program called ASMGEN that does a reasonable job of disassembling programs. You still have to specify with a `command' file where the data and code sections are, but it will put labels on all the locations that are referenced and also allows you to define the `structure' of the data if it is other than words or bytes. This program is in the public domain and if you can't find a copy, give me a call. Jim Holtman ...harpo!whuxle!jph (201) 361-3395
knight@nmtvax.UUCP (03/11/85)
I'm looking for a disassembler to run on a PC under DOS. Anyone got a public domain one they could send me? Thanks in advance, Bob
jchapman@watcgl.UUCP (john chapman) (03/15/85)
> > > I'm looking for a disassembler to run on a PC under DOS. Anyone got a public > domain one they could send me? > > Thanks in advance, > Bob The U command of the msdos debugger will do this. John ....!watmath!watcgl!jchapman
george@mnetor.UUCP (03/18/85)
> > > > > > I'm looking for a disassembler to run on a PC under DOS. Anyone got a public > > domain one they could send me? > > > > Thanks in advance, > > Bob > > The U command of the msdos debugger will do this. > > John > ....!watmath!watcgl!jchapman Technically correct. The U command does disassemble. However it has no symbolic replacment capabilities nor any ability to store disassembled code into a disk file. Trying to browse unfamiliar code in Debug is onerous at best since there is no scrolling and only limited search capability. I tried to use Debug to figure how to make GRAPHICS.COM work with my Epson RX-80. It's only about 800 bytes long but it wasn't any fun. There's got to be something better around! George !{cbosgd, decvax, harpo, ihnp4}!utcs!mnetor!george
jchapman@watcgl.UUCP (john chapman) (03/19/85)
> > > > > > > > > I'm looking for a disassembler to run on a PC under DOS. Anyone got a public > > > domain one they could send me? > > > > > > Thanks in advance, > > > Bob > > > > The U command of the msdos debugger will do this. > > > > John > > ....!watmath!watcgl!jchapman > > Technically correct. The U command does disassemble. However it has no > symbolic replacment capabilities nor any ability to store disassembled > code into a disk file. Trying to browse unfamiliar code in Debug is > onerous at best since there is no scrolling and only limited search capability. > I tried to use Debug to figure how to make GRAPHICS.COM work with my Epson > RX-80. It's only about 800 bytes long but it wasn't any fun. > > There's got to be something better around! > > George > !{cbosgd, decvax, harpo, ihnp4}!utcs!mnetor!george This has been pointed out to me by others - so yes I probably should have realized that something more powerful was desired. In defence of debug though, I personally don't find it onerous to use (in fact I know someone who corrected bugs in the original distribution of edlin quite rapidly using debug) and on many ocasions I would think that debug's ability to dynamically monitor the code behaviour might tell you a lot more about the code than an offline disassembler with symbolic replacement capabilities (although both programs/features would obviously be superior to just one or the other). You should be able to store disassembled code to a disk file by redirecting stdout (if you have > dos 2.0). John
brown@nic_vax.UUCP (03/21/85)
> > > > > > > > > I'm looking for a disassembler to run on a PC under DOS. Anyone got a public > > > domain one they could send me? > > > > > > Thanks in advance, > > > Bob > > > > The U command of the msdos debugger will do this. > > > > John > > ....!watmath!watcgl!jchapman > > Technically correct. The U command does disassemble. However it has no > symbolic replacment capabilities nor any ability to store disassembled > code into a disk file. Trying to browse unfamiliar code in Debug is > onerous at best since there is no scrolling and only limited search capability. > I tried to use Debug to figure how to make GRAPHICS.COM work with my Epson > RX-80. It's only about 800 bytes long but it wasn't any fun. > > There's got to be something better around! > > George > !{cbosgd, decvax, harpo, ihnp4}!utcs!mnetor!george Would you believe the there is a little better debugger around. It is called FSDBUG (Full Screen DeBUG) and is available by hook or by crook. Why is that? Well, it was written by an IBM employee in Germany and, so far, is only for use inside of IBM. It has five areas on the screen that one could work in. 1. All the the registers are displayed and are changable 2. A memory dump, 8 bytes wide by 8 lines deep, in HEX 3. A disassembled code area, about 10 line long. 4. Another memory dump area, but 16 bytes wide by 8 lines deep. 5. To the right of #4 is the same data shown in ASCII. All of the areas are changed by using the cursors to scroll around in the data. The program is really nice. I have only begun to use what it can do. IBM really should release it to the public. (NO I don't work for IBM) Mr. Video
rick@sesame.UUCP (Rick Richardson) (03/24/85)
> > > > > > > > > > > > I'm looking for a disassembler to run on a PC under DOS. > > > > Anyone got a public domain one they could send me? > > I tried to use Debug to figure how to make GRAPHICS.COM work with my Epson > > RX-80. It's only about 800 bytes long but it wasn't any fun. > > There's got to be something better around! I picked up a copy of "ASMGEN.COM" from a local RBBS, which seems to do what you want. It disassembles to a file any .com or .exe file. You then can assign symbolic names and the type of data to various addresses in a "sequence" file. You re-run asmgen, and the output becomes more symbolic. By iterating this procedure, you can disassemble and analyze the functions of any unknown piece of software, and end up with a reasonably symbolic file which you can easily modify. It is actually fun to use this program to discover the inner workings of small programs. -- Rick Richardson, PC Research, Inc. {genrad|ihnp4|ima}!wjh12!talcott!sesame!{rick|pcrat!rick} {cbosgd|harvard}!talcott!sesame!{rick|pcrat!rick} rick%sesame@harvard.ARPA
dcc@osu-eddie.UUCP (Daniel C. Chang) (03/25/85)
There is indeed a disassembler available, but I am not sure how you can get a copy of it... The program is called ASMGEN.COM, and it is written by J. Gersbach and J. Damke. I believe the program is user-supported (or maybe public domain), and you should be able to get a copy of it on your local bulletin board. To use ASMGEN, you build a second file describing where code and data is located in the file you are disassembling. In this second file you can define labels and add comments. ASMGEN will produce an assembler-ready source file as output. You can use ASMGEN iteratively, examining the program's output to further modify the description file. If you want more information, please send me mail. Daniel Chhang ...!cbosgd!osu-eddie!dcc
dwight@timeinc.UUCP (Dwight Ernest) (03/28/85)
ASMGEN (a p-d disassembler) and many other pub domain software packages can be downloaded from our semi-public-access system that's reachable at 300/1200 baud on 212-603-8747. Hit a few returns to get in; then have a look around.