Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ disassemb(3x) — 4D1 2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ldfcn(4)



     DISASSEMBLER(3X)                                 DISASSEMBLER(3X)



     NAME
          disassembler - disassemble a MIPS instruction and print the
          results

     SYNOPSIS
          int disassembler (iadr, regstyle, get_symname, get_regvalue,
                    get_bytes, print_header)
          unsigned  iadr;
          int       regstyle;
          char      *(*get_symname)();
          int       (*get_regvalue)();
          long      (*get_bytes)();
          void      (*print_header)();

     DESCRIPTION
          Disassembler disassembles and prints a MIPS machine
          instruction on stdout.

          Iadr is the instruction address to be disassembled.
          Regstyle specifies how registers are named in the
          disassembly; if the value is 0, compiler names are used;
          otherwise, hardware names are used.

          The next four arguments are function pointers, most of which
          give the caller some flexibility in the appearance of the
          disassembly.  The only function that MUST be provided is
          get_bytes. All other functions are optional.  Get_bytes is
          called with no arguments and returns the next byte(s) to
          disassemble.

          Get_symname is passed an address, which is the target of a
          jal instruction. If NULL is returned or if get_symname is
          NULL, the disassembler prints the address; otherwise, the
          string name is printed as returned from get_symname. If
          get_regvalue is not NULL, it is passed a register number and
          returns the current contents of the specified register.
          Disassembler prints this information along with the
          instruction disassembly.  If print_header is not NULL, it is
          passed the instruction address iadr and the current
          instruction to be disassembled, which is the return value
          from get_bytes. Print_header can use these parameters to
          print any desired information before the actual instruction
          disassembly is printed.

          If get_bytes is NULL, the disassembler returns -1 and errno
          is set to EINVAL; otherwise, the number of bytes that were
          disassembled is returned.  If the disassembled word is a
          jump or branch instruction, the instruction in the delay
          slot is also disassembled.

          The program must be loaded with the object file access
          routine library libmld.a.



     Page 1                                        (last mod. 8/20/87)





     DISASSEMBLER(3X)                                 DISASSEMBLER(3X)



     SEE ALSO
          ldfcn(4).

     ORIGIN
          MIPS Computer Systems


















































     Page 2                                        (last mod. 8/20/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026