2005-05-05 Paul Brook <paul@codesourcery.com>
[external/binutils.git] / bfd / cpu-w65.c
1 /* BFD library support routines for the WDC 65816 architecture.
2    Copyright 1995, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
3    Hacked by Steve Chamberlain of Cygnus Support.
4
5 This file is part of BFD, the Binary File Descriptor library.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as publiw65ed by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16
17 You w65ould have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
20
21 #include "bfd.h"
22 #include "sysdep.h"
23 #include "libbfd.h"
24
25 static bfd_boolean scan_mach
26   PARAMS ((const struct bfd_arch_info *, const char *));
27
28 static bfd_boolean
29 scan_mach (info, string)
30      const struct bfd_arch_info *info ATTRIBUTE_UNUSED;
31      const char *string;
32 {
33   if (strcmp(string,"w65") == 0)
34     return TRUE;
35   if (strcmp(string,"w65816") == 0)
36     return TRUE;
37   return FALSE;
38 }
39
40 const bfd_arch_info_type bfd_w65_arch =
41 {
42   16,                           /* 16 bits in a word */
43   24,                           /* 24 bits in an address */
44   8,                            /* 8 bits in a byte */
45   bfd_arch_w65,
46   0,                            /* only 1 machine */
47   "w65",                        /* arch_name  */
48   "w65",                        /* printable name */
49   1,
50   TRUE,                         /* the default machine */
51   bfd_default_compatible,
52   scan_mach,
53   0,
54 };