Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

htle.h File Reference

#include "htobj.h"
#include "formats.h"
#include "relfile.h"
#include "lestruct.h"
#include "htendian.h"

Go to the source code of this file.

Classes

class  ht_le
class  ht_le_page_file
class  ht_le_reloc_entry
class  ht_le_reloc_file
struct  ht_le_shared_data

Defines

#define DESC_LE   "le - win,os2 linear exe"
#define DESC_LE_HEADER   "le/header"
#define DESC_LE_VXD   "le/vxd descriptor"
#define DESC_LE_OBJECTS   "le/objects"
#define DESC_LE_PAGEMAP   "le/page map"
#define DESC_LE_ENTRYPOINTS   "le/entrypoints"
#define DESC_LE_IMAGE   "le/image"
#define ATOM_LE_FLAGS   0x4c450000
#define ATOM_LE_FLAGS_STR   "4c450000"
#define ATOM_LE_MACHINE   0x4c450001
#define ATOM_LE_MACHINE_STR   "4c450001"
#define ATOM_LE_OS   0x4c450002
#define ATOM_LE_OS_STR   "4c450002"
#define ATOM_LE_OBJFLAGS   0x4c450003
#define ATOM_LE_OBJFLAGS_STR   "4c450003"
#define ATOM_LE_ENTRY_FLAGS   0x4c450004
#define ATOM_LE_ENTRY_FLAGS_STR   "4c450004"
#define ATOM_LE_ENTRY_BUNDLE_FLAGS   0x4c450005
#define ATOM_LE_ENTRY_BUNDLE_FLAGS_STR   "4c450005"
#define LEAddress   uint32
#define LE_ADDR_INVALID   0
#define LE_BASE_ADDR   0x400000

Functions

FILEOFS LE_get_seg_ofs (ht_le_shared_data *LE_shared, UINT i)
LEAddress LE_get_seg_addr (ht_le_shared_data *LE_shared, UINT i)
UINT LE_get_seg_psize (ht_le_shared_data *LE_shared, UINT i)
UINT LE_get_seg_vsize (ht_le_shared_data *LE_shared, UINT i)
bool LE_addr_to_segment (ht_le_shared_data *LE_shared, LEAddress Addr, int *segment)
bool LE_addr_is_physical (ht_le_shared_data *LE_shared, LEAddress Addr)
bool LE_addr_to_ofs (ht_le_shared_data *LE_shared, LEAddress Addr, FILEOFS *ofs)
bool LE_ofs_to_addr (ht_le_shared_data *LE_shared, FILEOFS ofs, LEAddress *Addr)
LEAddress LE_MAKE_ADDR (ht_le_shared_data *LE_shared, uint16 seg, uint32 ofs)
uint16 LE_ADDR_SEG (ht_le_shared_data *LE_shared, LEAddress a)
uint32 LE_ADDR_OFS (ht_le_shared_data *LE_shared, LEAddress a)

Variables

format_viewer_if htle_if


Define Documentation

#define ATOM_LE_ENTRY_BUNDLE_FLAGS   0x4c450005
 

Definition at line 54 of file htle.h.

#define ATOM_LE_ENTRY_BUNDLE_FLAGS_STR   "4c450005"
 

Definition at line 55 of file htle.h.

#define ATOM_LE_ENTRY_FLAGS   0x4c450004
 

Definition at line 51 of file htle.h.

#define ATOM_LE_ENTRY_FLAGS_STR   "4c450004"
 

Definition at line 52 of file htle.h.

#define ATOM_LE_FLAGS   0x4c450000
 

Definition at line 39 of file htle.h.

#define ATOM_LE_FLAGS_STR   "4c450000"
 

Definition at line 40 of file htle.h.

#define ATOM_LE_MACHINE   0x4c450001
 

Definition at line 42 of file htle.h.

#define ATOM_LE_MACHINE_STR   "4c450001"
 

Definition at line 43 of file htle.h.

#define ATOM_LE_OBJFLAGS   0x4c450003
 

Definition at line 48 of file htle.h.

#define ATOM_LE_OBJFLAGS_STR   "4c450003"
 

Definition at line 49 of file htle.h.

#define ATOM_LE_OS   0x4c450002
 

Definition at line 45 of file htle.h.

#define ATOM_LE_OS_STR   "4c450002"
 

Definition at line 46 of file htle.h.

#define DESC_LE   "le - win,os2 linear exe"
 

Definition at line 31 of file htle.h.

Referenced by ht_le::init().

#define DESC_LE_ENTRYPOINTS   "le/entrypoints"
 

Definition at line 36 of file htle.h.

#define DESC_LE_HEADER   "le/header"
 

Definition at line 32 of file htle.h.

#define DESC_LE_IMAGE   "le/image"
 

Definition at line 37 of file htle.h.

#define DESC_LE_OBJECTS   "le/objects"
 

Definition at line 34 of file htle.h.

#define DESC_LE_PAGEMAP   "le/page map"
 

Definition at line 35 of file htle.h.

#define DESC_LE_VXD   "le/vxd descriptor"
 

Definition at line 33 of file htle.h.

#define LE_ADDR_INVALID   0
 

Definition at line 59 of file htle.h.

Referenced by LEAnalyser::beginAnalysis(), and ht_le::init().

#define LE_BASE_ADDR   0x400000
 

Definition at line 60 of file htle.h.

Referenced by LE_addr_to_ofs(), LE_get_seg_ofs(), LE_ofs_to_addr(), and ht_le_reloc_file::reloc_apply().

#define LEAddress   uint32
 

Definition at line 57 of file htle.h.

Referenced by LEAnalyser::addressToFileofs(), LEAnalyser::addressToRealFileofs(), LEAnalyser::beginAnalysis(), LEAnalyser::fileofsToAddress(), LEAnalyser::getSegmentNameByAddress(), LE_addr_is_physical(), LE_ADDR_OFS(), LE_ADDR_SEG(), LE_addr_to_ofs(), LE_addr_to_segment(), LE_get_seg_addr(), LE_MAKE_ADDR(), LEAnalyser::realFileofsToAddress(), and LEAnalyser::validAddress().


Function Documentation

bool LE_addr_is_physical ht_le_shared_data LE_shared,
LEAddress  Addr
 

Definition at line 669 of file htle.cc.

References ht_le_objmap::count, LE_get_seg_addr(), LE_get_seg_psize(), LEAddress, ht_le_shared_data::objmap, and UINT.

uint32 LE_ADDR_OFS ht_le_shared_data LE_shared,
LEAddress  a
 

Definition at line 720 of file htle.cc.

References ht_le_objmap::count, LE_SEG_ADDR, LEAddress, ht_le_shared_data::objmap, UINT, uint32, and ht_le_objmap::vsize.

Referenced by LEAnalyser::beginAnalysis().

uint16 LE_ADDR_SEG ht_le_shared_data LE_shared,
LEAddress  a
 

Definition at line 709 of file htle.cc.

References ht_le_objmap::count, LE_SEG_ADDR, LEAddress, ht_le_shared_data::objmap, UINT, uint16, and ht_le_objmap::vsize.

Referenced by LEAnalyser::beginAnalysis().

bool LE_addr_to_ofs ht_le_shared_data LE_shared,
LEAddress  Addr,
FILEOFS ofs
 

Definition at line 679 of file htle.cc.

References ht_le_objmap::count, FILEOFS, LE_BASE_ADDR, LE_get_seg_addr(), LE_get_seg_psize(), LEAddress, ht_le_shared_data::objmap, and UINT.

Referenced by LEAnalyser::addressToFileofs(), LEAnalyser::addressToRealFileofs(), and LEAnalyser::validAddress().

bool LE_addr_to_segment ht_le_shared_data LE_shared,
LEAddress  Addr,
int *  segment
 

Definition at line 656 of file htle.cc.

References ht_le_objmap::count, LE_get_seg_addr(), LE_get_seg_psize(), LE_get_seg_vsize(), LEAddress, MAX, ht_le_shared_data::objmap, and UINT.

Referenced by LEAnalyser::beginAnalysis(), LEAnalyser::getSegmentNameByAddress(), and LEAnalyser::validAddress().

LEAddress LE_get_seg_addr ht_le_shared_data LE_shared,
UINT  i
 

Definition at line 638 of file htle.cc.

References assert, LE_SEG_ADDR, LEAddress, and UINT.

Referenced by LEAnalyser::beginAnalysis(), LE_addr_is_physical(), LE_addr_to_ofs(), and LE_addr_to_segment().

FILEOFS LE_get_seg_ofs ht_le_shared_data LE_shared,
UINT  i
 

Definition at line 632 of file htle.cc.

References assert, FILEOFS, LE_BASE_ADDR, LE_SEG_ADDR, and UINT.

Referenced by LE_ofs_to_addr().

UINT LE_get_seg_psize ht_le_shared_data LE_shared,
UINT  i
 

Definition at line 644 of file htle.cc.

References assert, ht_le_shared_data::objmap, ht_le_objmap::psize, and UINT.

Referenced by LE_addr_is_physical(), LE_addr_to_ofs(), LE_addr_to_segment(), and LE_ofs_to_addr().

UINT LE_get_seg_vsize ht_le_shared_data LE_shared,
UINT  i
 

Definition at line 650 of file htle.cc.

References assert, ht_le_shared_data::objmap, UINT, and ht_le_objmap::vsize.

Referenced by LEAnalyser::beginAnalysis(), and LE_addr_to_segment().

LEAddress LE_MAKE_ADDR ht_le_shared_data LE_shared,
uint16  seg,
uint32  ofs
 

Definition at line 704 of file htle.cc.

References LE_SEG_ADDR, and LEAddress.

Referenced by LEAnalyser::beginAnalysis(), and ht_le::do_fixups().

bool LE_ofs_to_addr ht_le_shared_data LE_shared,
FILEOFS  ofs,
LEAddress *  Addr
 

Definition at line 692 of file htle.cc.

References ht_le_objmap::count, FILEOFS, LE_BASE_ADDR, LE_get_seg_ofs(), LE_get_seg_psize(), ht_le_shared_data::objmap, and UINT.

Referenced by LEAnalyser::fileofsToAddress(), and LEAnalyser::realFileofsToAddress().


Variable Documentation

format_viewer_if htle_if
 

Definition at line 99 of file htle.h.


Generated on Fri May 7 21:15:49 2004 by doxygen 1.3.5