52 {
"POP",
R_, 0x7100,
pop },
90 HKEY *keys[2] = {NULL};
100 keys[1]->
val.
i = (int)(type & 070);
103 FREE(keys[0]->val.
s);
173 HKEY *keys[1] = {NULL};
179 keys[0]->
val.
i = (int)(code >> 8);
191 const void *ptr = NULL;
246 sprintf(str,
"GR%d", word);
264 for(
int i = 0; i <
GRSIZE; i++) {
void and_r_adr_x()
AND命令 - オペランドr,adr,x。語長2.
void suba_r1_r2()
SUBA命令 - オペランドr1,r2。語長1.
void cpl_r_adr_x()
CPL命令 - オペランドr,adr,x。語長2.
void sra()
SRA命令 - オペランドr,adr,x。語長2.
void adda_r1_r2()
ADDA命令 - オペランドr1,r2。語長1.
void xor_r1_r2()
XOR命令 - オペランドr1,r2。語長1.
void subl_r_adr_x()
SUBL命令 - オペランドr,adr,x。語長2.
void sla()
SLA命令 - オペランドr,adr,x。語長2.
void srl()
SRL命令 - オペランドr,adr,x。語長2.
void ld_r_adr_x()
LD命令 - オペランドr,adr,x。語長2.
void adda_r_adr_x()
ADDA命令 - オペランドr,adr,x。語長2.
void addl_r1_r2()
ADDL命令 - オペランドr1,r2。語長1.
void cpl_r1_r2()
CPL命令 - オペランドr1,r2。語長1.
void subl_r1_r2()
SUBL命令 - オペランドr1,r2。語長1.
void cpa_r1_r2()
CPA命令 - オペランドr1,r2。語長1.
void nop()
NOP命令。語長1(OPのみ)
void cpa_r_adr_x()
CPA命令 - オペランドr,adr,x。語長2.
void and_r1_r2()
AND命令 - オペランドr1,r2。語長1.
void ret()
RET命令。語長1(OPのみ)
void or_r_adr_x()
OR命令 - オペランドr,adr,x。語長2.
void suba_r_adr_x()
SUBA命令 - オペランドr,adr,x。語長2.
void addl_r_adr_x()
ADDL命令 - オペランドr,adr,x。語長2.
void sll()
SLL命令 - オペランドr,adr,x。語長2.
void xor_r_adr_x()
XOR命令 - オペランドr,adr,x。語長2.
void or_r1_r2()
OR命令 - オペランドr1,r2。語長1.
void ld_r1_r2()
LD命令 - オペランドr1,r2。語長1.
#define FREE(ptr)
メモリを解放するマクロ
char * strdup_chk(const char *s, const char *tag)
malloc_chkを実行してメモリを確保し、コピーした文字列を返す
void * calloc_chk(size_t nmemb, size_t size, const char *tag)
領域の数とサイズを指定してメモリーを確保するcallocを実行する
#define ARRAYSIZE(array)
配列のサイズを返すマクロ
void * malloc_chk(size_t size, const char *tag)
mallocを実行し、0で初期化する
unsigned hash(int keyc, HKEY *keyv[], int tabsize)
ハッシュ値を取得する
void reset(int memsize, int clocks)
char * getcmdname(WORD code)
CMDTYPE getcmdtype(WORD code)
bool create_cmdtable(CMDTAB_HASH hash)
命令ハッシュ表を作成する
static CMDTAB * cmdtab[HASH_MAX][CMDTABSIZE]
unsigned hash_code(WORD code)
void free_cmdtable(CMDTAB_HASH hash)
SYSTEM * sys
COMET IIの仮想実行マシンシステム
const void * getcmdptr(WORD code)
static const COMET2CMD comet2cmd[]
char * grstr(WORD word)
汎用レジスタの番号からレジスタを表す文字列を返す
WORD getcmdcode(const char *cmd, CMDTYPE type)
unsigned hash_cmdtype(const char *cmd, CMDTYPE type)
COMET IIの仮想実行マシンシステムを表すデータ型
unsigned short WORD
16ビットの数値を表すデータ型