desa68 library documentation.

Data Structures

struct  DESA68parm_t
 68K disassemble pass parameters. More...

Files

file  desa68.h
 

Motorola 68K disassembler.


Functions

void desa68 (DESA68parm_t *d)
 Disassemble a single 68000 instruction.

Disassembly option flags.

Use bitwise OR operation with these values to set the the DESA68parm_t::flags in order to configure the disassembler.



#define DESA68_SYMBOL_FLAG   (1<<0)
 Disassemble with symbol.

Instruction type flags.

These flags are setted in the DESA68parm_t::status field by desa68() function. It allow to determine the type of the dissassembled instruction.



#define DESA68_INST   (1<<0)
 Valid instruction.
#define DESA68_BRA   (1<<1)
 Branch always instruction (bra/jmp/dbcc).
#define DESA68_BSR   (1<<2)
 Subroutine (bsr/jsr)/ Conditionnal branch instruction (bcc/dbcc).
#define DESA68_RTS   (1<<3)
 Return from subroutine/Interruption instruction (rts/rte).
#define DESA68_INT   (1<<4)
 Software interrupt instruction (trap/chk).
#define DESA68_NOP   (1<<5)
 nop instruction.

Detailed Description

Author:
Benjamin Gerard <ben@sashipa.com>

desa68 library is a 68000 disassembler with enhanced features that help to trace branch instructions.

Optionnally the disassembler may disassemble with symbol instead of absolute address or long immediat. A supplemental control is available to choose the range of address that must be disassembled as symbol.

A good sample is may be found in the sourcer68 directory. This library is also used by debug68 programs.


Define Documentation

#define DESA68_SYMBOL_FLAG   (1<<0)

Disassemble with symbol.

If the DESA68_SYMBOL_FLAG is set in the DESA68parm_t::flags and the value of absolute long addressing mode or an immediat long is in greater or equal to DESA68parm_t::immsym_min and less than DESA68parm_t::immsym_max then the disassembler replaces the value by a named symbol. The named symbol constist on the value transformed to an 6 hexadecimal digit number with a prefixed 'L'.

#define DESA68_INST   (1<<0)

Valid instruction.

#define DESA68_BRA   (1<<1)

Branch always instruction (bra/jmp/dbcc).

#define DESA68_BSR   (1<<2)

Subroutine (bsr/jsr)/ Conditionnal branch instruction (bcc/dbcc).

#define DESA68_RTS   (1<<3)

Return from subroutine/Interruption instruction (rts/rte).

#define DESA68_INT   (1<<4)

Software interrupt instruction (trap/chk).

#define DESA68_NOP   (1<<5)

nop instruction.


Function Documentation

void desa68 ( DESA68parm_t d  ) 

Disassemble a single 68000 instruction.

param d Pointer to disassemble pass parameter structure.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines
Generated on Thu Sep 16 07:46:11 2010 for sc68fordevelopers by  doxygen 1.6.3