---- START NEW MESSAGE --- Received: from cherry.ease.lsoft.com [209.119.0.109] by dpmail10.doteasy.com with ESMTP (SMTPD32-8.05) id A79E94201DE; Wed, 28 Jan 2004 01:57:50 -0800 Received: from PEAR.EASE.LSOFT.COM (209.119.0.19) by cherry.ease.lsoft.com (LSMTP for Digital Unix v1.1b) with SMTP id <1.00CC09B6@cherry.ease.lsoft.com>; Wed, 28 Jan 2004 4:57:39 -0500 Received: from MITVMA.MIT.EDU by MITVMA.MIT.EDU (LISTSERV-TCP/IP release 1.8e) with spool id 4420 for PICLIST@MITVMA.MIT.EDU; Wed, 28 Jan 2004 04:57:33 -0500 Received: from MITVMA (NJE origin SMTP@MITVMA) by MITVMA.MIT.EDU (LMail V1.2d/1.8d) with BSMTP id 3787; Wed, 28 Jan 2004 04:56:17 -0500 Received: from dwalin.rl.ac.uk [130.246.135.131] by mitvma.mit.edu (IBM VM SMTP Level 430) via TCP with ESMTP ; Wed, 28 Jan 2004 04:56:16 EST X-Comment: mitvma.mit.edu: Mail was sent by dwalin.rl.ac.uk X-RAL-MFrom: X-RAL-Connect: Received: from sstdwkiwi (sstdwkiwi.ag.rl.ac.uk [130.246.189.231]) by dwalin.rl.ac.uk (8.12.8/8.12.8) with SMTP id i0S9uHOt005247 for ; Wed, 28 Jan 2004 09:56:17 GMT References: <40169421.10488.6C642E4@localhost> MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-CCLRC-SPAM-report: -4.9 : BAYES_00 X-Scanned-By: MIMEDefang 2.35 Message-ID: <11de01c3e584$f9354ed0$e7bdf682@space.rl.ac.uk> Date: Wed, 28 Jan 2004 09:56:17 -0000 Reply-To: pic microcontroller discussion list Sender: pic microcontroller discussion list From: "Alan B. Pearce" Subject: Re: [PIC:] Disassemblers To: PICLIST@MITVMA.MIT.EDU Precedence: list X-RCPT-TO: Status: U X-UIDL: 371856060 >> Does anyone remember the tool that would take a PIC hex file and >> produce ASM from it? > > MPLAB will disassemble the code for you, but won't replace > numbers with symbols; I don't know of a PIC disassembler that > will do that. However, the tedious process of MANUALLY labeling > addresses and constants seems -- in my experience -- to be a > critical element in the success of any reverse-engineering > effort. I have a disassembler written in VB3 which will do that. It was originally written by someone else for a 16F84, and I expanded it to cover the 16F87x series. It identifies the destination register and bits by name, and gives all possible definitions for a given address, depending what bank it may be in. It is then up to the operator to select the correct one by inspection, as the disassembler does not keep track of the actual bank settings. -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics .