Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!purdue!bu-cs!dartvax!eleazar.dartmouth.edu!earleh From: earleh@eleazar.dartmouth.edu (Earle R. Horton) Newsgroups: comp.sys.mac.programmer Subject: Re: Disassembler info needed Message-ID: <15995@dartvax.Dartmouth.EDU> Date: 9 Oct 89 02:56:47 GMT References: <15994@dartvax.Dartmouth.EDU> Sender: news@dartvax.Dartmouth.EDU Reply-To: earleh@eleazar.dartmouth.edu (Earle R. Horton) Organization: Thayer School of Engineering Lines: 30 In article <15994@dartvax.Dartmouth.EDU> jskuskin@eleazar.dartmouth.edu (Jeffrey Kuskin) writes: >I admit to ignorance in the following area, so please >bear with me. > >I need to write a disassembler for the Mac (the 68000 >only, to be specific). Could someone point me in the >right direction in terms of how to decode the opcodes. Look at this: pascal void Disassembler(long DstAdjust,short *BytesUsed,Ptr FirstByte, char *Opcode,char *Operand,char *Comment,Ptr LookUpProc); /* Disassembler is a Pascal routine to be called to disassemble a sequence of bytes... This is from the C language header file for the Disassembler module included in the Runtime library which comes with MPW 3.0. If I needed to write a disassembler, then I would certainly use this, rather than reinvent the wheel. This is new with MPW 3.0, but if past behavior is any indication with this sort of thing, then this module should become available as part of other development systems before long. Why do you need to write a disassembler? If you just need to "acquire" one, then MPW comes with three disassemblers if you include MacsBug, there are a number of others available, and there is a free one on sumex. Earle R. Horton