4 * Copyright 2006 Eric Pouech
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
35 const IMAGE_DOS_HEADER
* dh
;
37 if ((dh
= PRD(0, sizeof(IMAGE_DOS_HEADER
))))
39 printf("DOS image:\n");
40 printf(" Signature: %.2s\n", (const char*)&dh
->e_magic
);
41 printf(" Bytes on last page: %u\n", dh
->e_cblp
);
42 printf(" Number of pages: %u\n", dh
->e_cp
);
43 printf(" Relocations: %u\n", dh
->e_crlc
);
44 printf(" Size of header: %u\n", dh
->e_cparhdr
);
45 printf(" Min extra paragraphs: %u\n", dh
->e_minalloc
);
46 printf(" Max extra paragraphs: %u\n", dh
->e_maxalloc
);
47 printf(" Initial stack: %x:%x\n", dh
->e_ss
, dh
->e_sp
);
48 printf(" Checksum: %x\n", dh
->e_csum
);
49 printf(" Initial address: %x:%x\n", dh
->e_cs
, dh
->e_ip
);
50 printf(" Relocation (file): %u\n", dh
->e_lfarlc
);
51 printf(" Overlay number: %u\n", dh
->e_ovno
);
52 printf(" OEM id(info): %x(%x)\n", dh
->e_oemid
, dh
->e_oeminfo
);
53 printf(" Offset to ext header: %x\n", (UINT
)dh
->e_lfanew
);