Dec 132017
 
Use to inspect contents of object file.
File OJ.ZIP from The Programmer’s Corner in
Category Miscellaneous Language Source Code
Use to inspect contents of object file.
File Name File Size Zip Size Zip Type
OJ.DOC 2697 1376 deflated
OJ.EXE 23660 12378 deflated

Download File OJ.ZIP Here

Contents of the OJ.DOC file


OJ(Intel)Object Juicer (1.0)OJ(Intel)



NAME

OJ - object file inspector

SYNOPSIS:

oj [-[cdefglpsv?]] [ ...]

OPTIONS:

Display record names and brief info.
-Output the module names.
-cDisasemble code segments.
-dDisplay data segments.
-eList external references.
-fList fixup information
-gList global names.
-lList debug line numbers.
-pList public procedures.
-sDisplay segments and groups.
-vVerbose mode.
-?Help

DESCRIPTION:

OJ is a object file utility used to inspect the contents of
Intel(86/186/286) object modules and libraries. It's main use
is in debugging object files and libraries of questionable
origin when the source is not available. This version has been
tested on Microsoft C 3.0, Lattice C 3.0 and Xenix 2.0 objects
and libraries.

BUGS:

The code disassembly follows the standard 86/186/286 opcode instruction
set as listed in the iAPX 286 Programmers reference manual. Fixup
records are not included in any of the disassembled code so most
direct calls and jumps which depend on fixups by the linker are not
accurate. Iterated data blocks are not expanded.

When a library is used as input - oj looks until it finds a record
with a correct checksum and continues from there. If the librarian
has changed the format or packed the object files oj will probably
output a lot of garbage. Most libraries take a while to scan.

Fixups are printed in a rather crude fashion at this point, but they
are helpful in identifing jmp's and call's in the preceeding code
segments.

NOTES:

Here's the list of supported record formats -- ones with a '*'
are shown in verbose mode, but their contents are not explained in
the Microsoft documentation.

*RHEADR *REGINT *REDATA *RIDATA *OVLDEF *ENDREC *BLKDEF *BLKEND *DEBSYM THEADR
*LHEADR *PEDATA *PIDATA COMENT MODEND EXTDEF TYPDEF PUBDEF *LOCSYM LINNUM
LNAMES SEGDEF GRPDEF FIXUPP LEDATA LIDATA *LIBHED *LIBNAM *LIBLOC *LIBDIC

As soon as I can get a copy of the Intel documentation some of these
records will be included.

If you have Intel Objects which give OJ a hard time, or any suggestions
about this utility, please contact the author on Compuserve (72457,2171).

This software is in the public domain and may be freely copied
and used by anyone.


REFERENCES:

The MS-DOS Programmer's Reference ( by Microsoft ) 1984
iAPX 286 Programmers Reference Manual - Intel 1985
Programmer's Pocket Reference Guide - Intel 1982
PC-Tech Journal, October 1985 pp. 63-81

Copyright (C) Kevin Fox 1987



 December 13, 2017  Add comments

Leave a Reply