mirror of
https://github.com/cc65/cc65.git
synced 2024-12-25 17:29:50 +00:00
Added CPU instruction set encoding
git-svn-id: svn://svn.cc65.org/cc65/trunk@2506 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
2e030b707c
commit
02d7d8faa7
@ -1,6 +1,6 @@
|
||||
/*****************************************************************************/
|
||||
/* */
|
||||
/* cpu.c */
|
||||
/* cpu.c */
|
||||
/* */
|
||||
/* CPU specifications */
|
||||
/* */
|
||||
@ -58,6 +58,15 @@ const char* CPUNames[CPU_COUNT] = {
|
||||
"sunplus",
|
||||
};
|
||||
|
||||
/* Tables with CPU instruction sets */
|
||||
const unsigned CPUIsets[CPU_COUNT] = {
|
||||
CPU_ISET_6502,
|
||||
CPU_ISET_6502 | CPU_ISET_65SC02,
|
||||
CPU_ISET_6502 | CPU_ISET_65SC02 | CPU_ISET_65C02,
|
||||
CPU_ISET_6502 | CPU_ISET_65SC02 | CPU_ISET_65C02 | CPU_ISET_65816,
|
||||
CPU_ISET_SUNPLUS
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -55,12 +55,24 @@ typedef enum {
|
||||
CPU_COUNT /* Number of different CPUs */
|
||||
} cpu_t;
|
||||
|
||||
/* CPU instruction sets */
|
||||
enum {
|
||||
CPU_ISET_6502 = 1 << CPU_6502,
|
||||
CPU_ISET_65SC02 = 1 << CPU_65SC02,
|
||||
CPU_ISET_65C02 = 1 << CPU_65C02,
|
||||
CPU_ISET_65816 = 1 << CPU_65816,
|
||||
CPU_ISET_SUNPLUS = 1 << CPU_SUNPLUS
|
||||
};
|
||||
|
||||
/* CPU used */
|
||||
extern cpu_t CPU;
|
||||
|
||||
/* Table with target names */
|
||||
/* Table with CPU names */
|
||||
extern const char* CPUNames[CPU_COUNT];
|
||||
|
||||
/* Table with CPU the instruction sets */
|
||||
extern const unsigned CPUIsets[CPU_COUNT];
|
||||
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
@ -78,7 +90,7 @@ cpu_t FindCPU (const char* Name);
|
||||
|
||||
/* End of cpu.h */
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user