Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/3/84; site caelum.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!vax135!ariel!caelum!rick From: rick@caelum.UUCP (R.MAUS) Newsgroups: net.sources.bugs Subject: unc bugs (M68K disassembler) and kudos to the author (46 lines) Message-ID: <130@caelum.UUCP> Date: Fri, 23-Aug-85 01:18:27 EDT Article-I.D.: caelum.130 Posted: Fri Aug 23 01:18:27 1985 Date-Received: Sat, 24-Aug-85 18:24:25 EDT Distribution: net Organization: AT&T-ISL, Holmdel, NJ Lines: 42 This line intentionally left non-blank for obsolete netnews installations. There is a small, but VERY annoying bug in "unc" for those of us running UNIPLUS+ SYS V ports that prevents final load modules from being disassembled. "unc" assumes that the entry point is always 0 when dealing with unmapped instructions. Find the section around line 389 in "heur.c" that reads: 385 /* 386 * Deal with unmapped instructions. 387 */ 388 389 for (pos = 0; pos < endt;) { Change the "for" loop to read: for (pos = mainfile.ef_entry; pos < endt;) { There are some other bugs (anomalies, quandaries?) with stripped modules where "unc" can't properly pair together text string labels with absolute addresses that were pushed onto the stack. Rather, the strings addresses are viewed as data at absolute addresses in memory. Another problem sometimes occurs where the first two characters are interpreted as a "word" followed by text, as in: DS119: .word 0x466c | Should be "Floppy disk" .asciz "oppy disk" In closing, I wish to present an open letter to the author of "unc", John M. Collins: John, Did you ever consider working with Dr. Richard M. Stallman of the GNU (GNU is Not UNIX(tm)) project? You two seem like a natural. :-) Any way you look at it - I owe you one. When I get the "Prolog" decompiler working on the tail of your program to produce "C" source, I'll return the favor. -- Richard L. Maus, Jr. (Rick) AT&T-ISL HO 1K313 201-834-4532 ...!ho???!ariel!rick