Subversion Repositories pentevo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1186 savelij 1
/* headids.c */
2
/*****************************************************************************/
3
/* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only                     */
4
/*                                                                           */
5
/* Makroassembler AS                                                         */
6
/*                                                                           */
7
/* Hier sind alle Prozessor-IDs mit ihren Eigenschaften gesammelt            */
8
/*                                                                           */
9
/*****************************************************************************/
10
 
11
#include "stdinc.h"
12
 
13
#include <string.h>
14
 
15
#include "headids.h"
16
 
17
/*---------------------------------------------------------------------------*/
18
 
19
static const TFamilyDescr Descrs[] =
20
{
21
  { "680x0"        , 0x0001, eHexFormatMotoS   },
22
  { "DSP56000"     , 0x0009, eHexFormatMotoS   },
23
  { "MPC601"       , 0x0005, eHexFormatMotoS   },
24
  { "PALM"         , 0x000e, eHexFormatIntel   },
25
  { "M-CORE"       , 0x0003, eHexFormatMotoS   },
26
  { "XGATE"        , 0x0004, eHexFormatMotoS   },
27
  { "68xx"         , 0x0061, eHexFormatMotoS   },
28
  { "6805/HC08"    , 0x0062, eHexFormatMotoS   },
29
  { "6809"         , 0x0063, eHexFormatMotoS   },
30
  { "68HC12"       , 0x0066, eHexFormatMotoS   },
31
  { "S12Z"         , 0x0045, eHexFormatMotoS   },
32
  { "68HC16"       , 0x0065, eHexFormatMotoS   },
33
  { "68RS08"       , 0x005e, eHexFormatMotoS   },
34
  { "052001"       , 0x0022, eHexFormatMotoS   },
35
  { "H8/300(H}"    , 0x0068, eHexFormatMotoS   },
36
  { "H8/500"       , 0x0069, eHexFormatMotoS   },
37
  { "H16"          , 0x0040, eHexFormatMotoS   },
38
  { "SH7x00"       , 0x006c, eHexFormatMotoS   },
39
  { "HMCS400"      , 0x0050, eHexFormatMotoS   },
40
  { "PPS-4"        , 0x0010, eHexFormatIntel   },
41
  { "65xx"         , 0x0011, eHexFormatMOS     },
42
  { "MELPS-7700"   , 0x0019, eHexFormatMOS     },
43
  { "MELPS-4500"   , 0x0012, eHexFormatIntel   },
44
  { "M16"          , 0x0013, eHexFormatIntel32 },
45
  { "M16C"         , 0x0014, eHexFormatIntel   },
46
  { "MCS-48"       , 0x0021, eHexFormatIntel   },
47
  { "MCS-(2)51"    , 0x0031, eHexFormatIntel   },
48
  { "MCS-96/196"   , 0x0039, eHexFormatIntel   },
49
  { "PDP-11"       , 0x0023, eHexFormatMotoS   },
50
  { "WD16"         , 0x0024, eHexFormatMotoS   },
51
  { "VAX"          , 0x0026, eHexFormatMotoS   },
52
  { "4004/4040"    , 0x003f, eHexFormatIntel   },
53
  { "8008"         , 0x003e, eHexFormatIntel   },
54
  { "8080/8085"    , 0x0041, eHexFormatIntel   },
55
  { "8086"         , 0x0042, eHexFormatIntel16 },
56
  { "i960"         , 0x002a, eHexFormatIntel32 },
57
  { "8X30x"        , 0x003a, eHexFormatIntel   },
58
  { "2650"         , 0x0037, eHexFormatMotoS   },
59
  { "XA"           , 0x003c, eHexFormatIntel16 },
60
  { "AVR"          , 0x003b, eHexFormatAtmel   },
61
  { "AVR(CSEG8)"   , 0x003d, eHexFormatAtmel   },
62
  { "29xxx"        , 0x0029, eHexFormatIntel32 },
63
  { "80C166/167"   , 0x004c, eHexFormatIntel16 },
64
  { "Zx80"         , 0x0051, eHexFormatIntel   },
65
  { "Z8"           , 0x0079, eHexFormatIntel   },
66
  { "Super8"       , 0x0035, eHexFormatIntel   },
67
  { "eZ8"          , 0x0059, eHexFormatIntel   },
68
  { "Z8000"        , 0x0034, eHexFormatIntel   },
69
  { "KCPSM"        , 0x006b, eHexFormatIntel   },
70
  { "KCPSM3"       , 0x005b, eHexFormatIntel   },
71
  { "Mico8"        , 0x005c, eHexFormatIntel   },
72
  { "TLCS-900"     , 0x0052, eHexFormatMotoS   },
73
  { "TLCS-90"      , 0x0053, eHexFormatIntel   },
74
  { "TLCS-870"     , 0x0054, eHexFormatIntel   },
75
  { "TLCS-870/C"   , 0x0057, eHexFormatIntel   },
76
  { "TLCS-47xx"    , 0x0055, eHexFormatIntel   },
77
  { "TLCS-9000 "   , 0x0056, eHexFormatMotoS   },
78
  { "TC9331"       , 0x005a, eHexFormatIntel   },
79
  { "16C8x"        , 0x0070, eHexFormatIntel   },
80
  { "16C5x"        , 0x0071, eHexFormatIntel   },
81
  { "17C4x"        , 0x0072, eHexFormatIntel   },
82
  { "ST6"          , 0x0078, eHexFormatIntel   },
83
  { "ST7"          , 0x0033, eHexFormatIntel   },
84
  { "ST9"          , 0x0032, eHexFormatIntel   },
85
  { "6804"         , 0x0064, eHexFormatMotoS   },
86
  { "TMS3201x"     , 0x0074, eHexFormatTiDSK   },
87
  { "TMS3202x"     , 0x0075, eHexFormatTiDSK   },
88
  { "TMS320C3x/C4x", 0x0076, eHexFormatIntel32 },
89
  { "TMS320C5x"    , 0x0077, eHexFormatTiDSK   },
90
  { "TMS320C54x"   , 0x004b, eHexFormatTiDSK   },
91
  { "TMS320C6x"    , 0x0047, eHexFormatIntel32 },
92
  { "TMS9900"      , 0x0048, eHexFormatIntel   },
93
  { "TMS7000"      , 0x0073, eHexFormatIntel   },
94
  { "TMS370xx"     , 0x0049, eHexFormatIntel   },
95
  { "MSP430"       , 0x004a, eHexFormatIntel   },
96
  { "TMS1000"      , 0x0007, eHexFormatIntel   },
97
  { "IMP-16"       , 0x0017, eHexFormatIntel   },
98
  { "IPC-16"       , 0x0018, eHexFormatIntel   },
99
  { "SC/MP"        , 0x006e, eHexFormatIntel   },
100
  { "807x"         , 0x006a, eHexFormatIntel   },
101
  { "COP4"         , 0x005f, eHexFormatIntel   },
102
  { "COP8"         , 0x006f, eHexFormatIntel   },
103
  { "SC14XXX"      , 0x006d, eHexFormatIntel   },
104
  { "NS32000"      , 0x0008, eHexFormatIntel   },
105
  { "ACE"          , 0x0067, eHexFormatIntel   },
106
  { "CP-3F"        , 0x000f, eHexFormatIntel   },
107
  { "F8"           , 0x0044, eHexFormatIntel   },
108
  { "75xx"         , 0x005d, eHexFormatIntel   },
109
  { "78(C)xx"      , 0x007a, eHexFormatIntel   },
110
  { "75K0"         , 0x007b, eHexFormatIntel   },
111
  { "78K0"         , 0x007c, eHexFormatIntel   },
112
  { "78K2"         , 0x0060, eHexFormatIntel16 },
113
  { "78K3"         , 0x0058, eHexFormatIntel   },
114
  { "78K4"         , 0x0046, eHexFormatIntel16 },
115
  { "7720"         , 0x007d, eHexFormatIntel   },
116
  { "7725"         , 0x007e, eHexFormatIntel   },
117
  { "77230"        , 0x007f, eHexFormatIntel   },
118
  { "V60"          , 0x000d, eHexFormatIntel32 },
119
  { "uCOM-43"      , 0x0028, eHexFormatIntel   },
120
  { "SYM53C8xx"    , 0x0025, eHexFormatIntel   },
121
  { "F2MC8"        , 0x0015, eHexFormatIntel   },
122
  { "F2MC16"       , 0x0016, eHexFormatIntel   },
123
  { "MN161x"       , 0x0036, eHexFormatIntel   },
124
  { "OLMS-40"      , 0x004e, eHexFormatIntel   },
125
  { "OLMS-50"      , 0x004d, eHexFormatIntel   },
126
  { "1802"         , 0x0038, eHexFormatIntel   },
127
  { "SX20"         , 0x0043, eHexFormatIntel   },
128
  { "KENBAK"       , 0x0027, eHexFormatIntel   },
129
  { "ATARI_VECTOR" , 0x0002, eHexFormatIntel   },
130
  { "XCore"        , 0x0006, eHexFormatMotoS   },
131
  { "PDK13"        , 0x001a, eHexFormatIntel   },
132
  { "PDK14"        , 0x001b, eHexFormatIntel   },
133
  { "PDK15"        , 0x001c, eHexFormatIntel   },
134
  { "PDK16"        , 0x001d, eHexFormatIntel   },
135
  { "1750"         , 0x004f, eHexFormatIntel   },
136
  { "CP1600"       , 0x000a, eHexFormatIntel   },
137
  { "NANO"         , 0x000b, eHexFormatIntel   },
138
  { "IM6100"       , 0x000c, eHexFormatIntel   },
139
  { "RX"           , 0x001e, eHexFormatIntel32 },
140
  { "SC61860"      , 0x001f, eHexFormatMotoS   },
141
  { "SC62015"      , 0x0020, eHexFormatMotoS   },
142
  { NULL           , 0xffff, eHexFormatDefault }
143
};
144
 
145
/*---------------------------------------------------------------------------*/
146
 
147
const TFamilyDescr *FindFamilyByName(const char *Name)
148
{
149
  const TFamilyDescr *pRun;
150
 
151
  for (pRun = Descrs; pRun->Name != NULL; pRun++)
152
    if (!strcmp(Name, pRun->Name))
153
      return pRun;
154
 
155
  return NULL;
156
}
157
 
158
const TFamilyDescr *FindFamilyById(Word Id)
159
{
160
  const TFamilyDescr *pRun;
161
 
162
  for (pRun = Descrs; pRun->Name != NULL; pRun++)
163
    if (Id == pRun->Id)
164
      return pRun;
165
 
166
  return NULL;
167
}
168
 
169
/*---------------------------------------------------------------------------*/
170
 
171
void headids_init(void)
172
{
173
}