home *** CD-ROM | disk | FTP | other *** search
Wrap
Received: from arthur.cs.purdue.edu (arthur.cs.purdue.edu [128.10.2.1]) by nacm.com (8.6.10/8.6.9) with ESMTP id IAA21713 for <executor@nacm.com>; Sat, 22 Apr 1995 08:19:27 -0700 Received: from lab11.cs.purdue.edu (huntercr@lab11.cs.purdue.edu [128.10.11.111]) by arthur.cs.purdue.edu (8.6.10/PURDUE_CS-1.3) with ESMTP id <KAA03070>; Sat, 22 Apr 1995 10:18:59 -0500 Received: (huntercr@localhost) by lab11.cs.purdue.edu (8.6.10/PURDUE_CS-1.3) id <KAA02543>; Sat, 22 Apr 1995 10:18:56 -0500 From: huntercr@cs.purdue.edu (Charles Hunter) Message-Id: <199504221518.KAA02543@lab11.cs.purdue.edu> Subject: Little endian to big endian and vice versa... To: executor@nacm.com (Executor mailing list), DJGPP@sun.soe.clarkson.edu (djgpp mailing list) Date: Sat, 22 Apr 1995 10:18:55 -0500 (EST) Cc: huntercr@cs.purdue.edu (Charles Randolph Hunter) X-Mailer: ELM [version 2.4 PL24alpha3] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1102 Sender: owner-executor@nacm.com Precedence: bulk Hi gang, I know that this is inappropriate to post on either of these lists, but I hear it talked about so often that I thought I might ask here. I am working on a project that will convert simple binaries across two platforms and or back again. This is similar to a program I picked up called, "86to68", which converts 8086 asm to 68000 asm. I am attempting to do this from the assembled [binary ] level. Sort of a re-assembler. Things are working out well, but I have been ignoring, until now, the endian difference. My question is: What patterns should the program look for? What kind of strategy should the program use to check? I'll admit, I am a little ignorant on the subject. Can this be swapped statically at all? If so, Should I execute the program internally and tag all references to 16+bit data? If not... am I going to have to add a swap routine to every program that is reassembled? I'm confused. 8-) Right now, I am only implementing a 2 pass dissasemble that does nothing with what appears to be dataspace. Mat? Cliff? DJ? anyone??? Help! --Charles Hunter