Synch'd Scout with source from its CVS repository.
[AROS-Contrib.git] / scout / disassembler / Include / libraries / disassembler.i
blobefee8d50ab580e3e6904bea0d7f11e239383938c
1 ;*************************************************************************
2 ;** disassembler.library **
3 ;** **
4 ;** An LGPL reimplementation of disassembler.library v40 **
5 ;** © 2010 Pavel Fedin **
6 ;** **
7 ;** disassembler.libary v40 is: **
8 ;** © 1999 THOR-Software, Thomas Richter **
9 ;**---------------------------------------------------------------------**
10 ;** Definition of the library, and structures **
11 ;** **
12 ;** $VER: 41.0 (20.04.2010) **
13 ;*************************************************************************/
15 IFND LIBRARIES_DISASSEMBLER_I
17 LIBRARIES_DISASSEMBLER_I SET 1
19 IFND EXEC_TYPES_I
20 INCLUDE "exec/types.i"
21 ENDC ; EXEC_TYPES_I
23 IFND EXEC_LIBRARIES_I
24 INCLUDE "exec/libraries.i"
25 ENDC ; EXEC_LIBRARIES_I
27 ;* There's really nothing in this library base you need to care about *
29 STRUCTURE DisassemblerBase,LIB_SIZE
30 LABEL dllib_SIZE
33 DISASSEMBLERNAME MACRO
34 DC.B 'disassembler.library',0
35 ENDM
37 ;* The one and only structure you need to care about. This one is
38 ;* passed in to Disassemble() *
40 STRUCTURE DisData,0
41 APTR ds_From ;* base to start disassembly from *
42 APTR ds_UpTo ;* where to stop it *
43 APTR ds_PC ;* the disassembler prints a "*" here *
44 APTR ds_PutProc ;* to avoid casts, this is a void *. *
45 APTR ds_UserData ;* passed to the PutProc in a1 and a3 *
46 APTR ds_UserBase ;* passed to the PutProc in a4 *
47 UWORD ds_Truncate ;* limit width of the output *
48 UWORD ds_reserved ;* this is currently reserved *
49 LABEL ds_SIZE
51 ;* PutProc is actually a function pointer, but due to different compilers
52 ;* and conventions defined here as a void *. It is called with the
53 ;* character to print in d0, the user data in a1 and a3 and the user
54 ;* base in a4. This is most useful for C code.
56 ;* The library functions are interrupt-callable, provided your PutProc
57 ;* is.
59 ENDC ;LIBRARIES_DISASSEMBLER_I