source: trunk/src/binutils/include/oasys.h@ 683

Last change on this file since 683 was 10, checked in by bird, 23 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 4.7 KB
Line 
1/* Oasys object format header file for BFD.
2
3 Copyright 2001 Free Software Foundation, Inc.
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2, or (at your option)
8 any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA.
19
20 Contributed by Cygnus Support. */
21
22#define OASYS_MAX_SEC_COUNT 16
23/* **** */
24
25typedef struct oasys_archive_header
26 {
27 unsigned int version;
28 char create_date[12];
29 char revision_date[12];
30 unsigned int mod_count;
31 file_ptr mod_tbl_offset;
32 unsigned int sym_tbl_size;
33 unsigned int sym_count;
34 file_ptr sym_tbl_offset;
35 unsigned int xref_count;
36 file_ptr xref_lst_offset;
37 }
38oasys_archive_header_type;
39
40typedef struct oasys_extarchive_header
41 {
42 bfd_byte version[4];
43 bfd_byte create_date[12];
44 bfd_byte revision_date[12];
45 bfd_byte mod_count[4];
46 bfd_byte mod_tbl_offset[4];
47 bfd_byte sym_tbl_size[4];
48 bfd_byte sym_count[4];
49 bfd_byte sym_tbl_offset[4];
50 bfd_byte xref_count[4];
51 bfd_byte xref_lst_offset[4];
52 }
53oasys_extarchive_header_type;
54
55typedef struct oasys_module_table
56 {
57 int mod_number;
58 char mod_date[12];
59 unsigned int mod_size;
60 unsigned int dep_count;
61 unsigned int depee_count;
62 file_ptr file_offset;
63 unsigned int sect_count;
64 char *module_name;
65 unsigned int module_name_size;
66 }
67oasys_module_table_type;
68
69typedef struct oasys_extmodule_table_a
70 {
71 bfd_byte mod_number[4];
72 bfd_byte mod_date[12];
73 bfd_byte mod_size[4];
74 bfd_byte dep_count[4];
75 bfd_byte depee_count[4];
76 bfd_byte sect_count[4];
77 bfd_byte file_offset[4];
78 bfd_byte mod_name[32];
79 }
80oasys_extmodule_table_type_a_type;
81
82typedef struct oasys_extmodule_table_b
83 {
84 bfd_byte mod_number[4];
85 bfd_byte mod_date[12];
86 bfd_byte mod_size[4];
87 bfd_byte dep_count[4];
88 bfd_byte depee_count[4];
89 bfd_byte sect_count[4];
90 bfd_byte file_offset[4];
91 bfd_byte mod_name_length[4];
92 }
93oasys_extmodule_table_type_b_type;
94
95typedef enum oasys_record
96 {
97 oasys_record_is_end_enum = 0,
98 oasys_record_is_data_enum = 1,