Short: V1.17 display executable file structure Author: stoecker@epost.de (Dirk Stoecker) Uploader: stoecker epost de (Dirk Stoecker) Type: dev/moni Version: 1.17 Architecture: m68k-amigaos This program allows you to display information about the structure of an Amiga executable file (or a link object). HunkFunc requires OS2.0 for work. The first version of this program is made with help of HunkFunk utility made by Olaf Barthel. But as Olaf's utility misses a lot of hunks and other information, I made my own tool. This version knows a lot more possible configurations and is shorter, as it uses Amiga functions instead of ANSI-C. Know hunk types are: HUNK_UNIT, HUNK_NAME, HUNK_CODE, HUNK_DATA, HUNK_BSS, HUNK_(ABS)RELOC32, HUNK_(REL)RELOC16, HUNK_(REL)RELOC8, HUNK_EXT, HUNK_SYMBOL, HUNK_DEBUG, HUNK_END, HUNK_HEADER, HUNK_OVERLAY, HUNK_BREAK, HUNK_DREL32, HUNK_DREL16, HUNK_DREL8, HUNK_LIB, HUNK_INDEX, HUNK_RELOC32SHORT, HUNK_RELRELOC32, HUNK_ABSRELOC16, HUNK_PPC_CODE, HUNK_RELRELOC26. The File has following argument line: "FILE/M/A,SREL=SHOWRELOC/S,SSYM=SHOWSYMBOL/S,SEXT=SHOWEXTERN/S, SEREF=SHOWEXTERNREF/S,SOVT=SHOWOVERLAYTABLE/S,STATS/S". FILE You must pass at least one file name, but may pass a lot more. Patterns are not supported. SHOWRELOC displays all reloc entries (there may be really much of them!) SHOWSYMBOL displays symbol names of HUNK_SYMBOL SHOWEXTERN displays definitions of HUNK_EXT SHOWEX-REF displays references of HUNK_EXT SHOWOVERL. display data of overlay table STATS show short statistics about file Example output: File 'C:AddDataTypes': HUNK_HEADER Numhunks = 2 (0 to 1) Hunk 000 = 5560 ($0015B8) Bytes Hunk 001 = 160 ($0000A0) Bytes HUNK_CODE 5560 ($0015B8) Bytes HUNK_RELOC32 Summary 5 entries to hunk 1 HUNK_END HUNK_DATA 160 ($0000A0) Bytes HUNK_RELOC32 Summary 14 entries to hunk 0 HUNK_END - First line shows program name. - HUNK_HEADER is the first hunk of an executable and lists all the hunks. There may be additionally comments like CHIP, FAST, ADVISORY or MEMTYPE. - HUNK_CODE and HUNK_DATA store information. - HUNK_BSS store memory space, which is filled with 0 on startup. - HUNK_RELOC32 (and other types) hold relocation information. - HUNK_END ends an hunk entry. - In HUNK_CODE, HUNK_DATA and HUNK_BSS the memory flags may be repeated in first or second longword. The flags is displayed normally when in second longword (size) and preceeded by a '_' (e.g. _CHIP), when in first longword (hunk type). - HUNK_DREL32EXE is in real a HUNK_RELOC32SHORT which uses wrong ID due to a bug in OS V37. A lot more information about executable or object file format can be found in: The Amiga Guru Book ©1989,1993 by Ralph Babel Taunusstein 1993 If HunkFunc prints a line like "HUNK_??? ($xxxx) - Aborting!", please contact me and send an example file (if the file is a correct one). Use this tool as you want, but WITHOUT ANY WARRANTY! Contact me at: ********************************************************************* * snail-mail: * e-mail: * * Dirk Stoecker * stoecker@epost.de * * Geschwister-Scholl-Str. 10 * dirk@dstoecker.de * * 01877 Bischofswerda * world wide web: * * GERMANY * http://www.dstoecker.de/ * * phone: * pgp key: * * GERMANY +49 (0)3594/706666 * get from WWW pages or keyservers * ********************************************************************* Following is my PGP signature for the corresponding LhA-File. Use ' pgpv HunkFunc.readme -o HunkFunc.lha ' to check it. Key fingerprint: B9 F2 3A 1A 29 02 75 16 6A C6 5B 7D 5E F6 16 CF. All my releases after April 2001 have a PGP signature with this key. Be alarmed if signature is missing or wrong. -----BEGIN PGP SIGNATURE----- Version: PGPfreeware 5.0i for non-commercial use MessageID: 8mz2bcSEiGdYj99G2P31H4UXinqSsxE/ iQCVAwUAPXTfCLOTsAT/iOY9AQE99wP8DLiV6h0Qoc9QqB6hajiQtiqTSKaX6fwc z5VX4vmk6x+0HefRbFaem5lbWVvd2niTFcBRBVQxuyW9EOkZ1VtMrbtgMfaDKr4B FYLxL4EPg7KHlFMML6NBdWUowAawtnC1PSZqLBxtkV8oPrEOXdFHx1vQQOrdwSNA /wmzRZmtaJc= =rnZG -----END PGP SIGNATURE-----