YACASL2
Loading...
Searching...
No Matches
exec.h
Go to the documentation of this file.
1#ifndef YACASL2_EXEC_H_INCLUDED
2#define YACASL2_EXEC_H_INCLUDED
3
4#include <stdbool.h>
5#include <stdio.h>
6#include <assert.h>
7#include <time.h>
8#include "struct.h"
9#include "word.h"
10#include "cmem.h"
11#include "cerr.h"
12
13enum {
14 INSIZE = 256
15};
16
24CLOCK clock_str2clock(const char *str);
25
29void addcerrlist_exec();
30
36
43void exec();
44
50void nop();
51
58
64void ld_r1_r2();
65
71void st();
72
78void lad();
79
86
93
100
107
114
121
128
135
142
149
156
162void or_r1_r2();
163
170
177
184
191
198
205
213void sla();
214
223void sra();
224
230void sll();
231
237void srl();
238
244void jpl();
245
251void jmi();
252
258void jnz();
259
265void jze();
266
272void jov();
273
279void jump();
280
286void push();
287
293void pop();
294
300void call();
301
307void ret();
308
314void svc();
315
322void dumpmemory(WORD start, WORD end);
323
328void dspregister();
329
334void dsp_trace_dump();
335
336#endif
void exec()
COMET II仮想マシンを実行する
void and_r_adr_x()
AND命令 - オペランドr,adr,x。語長2.
void st()
ST命令。語長2.
void jmi()
JMI命令。語長2.
void svc()
SVC命令。語長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 pop()
POP命令。語長1.
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 jnz()
JNZ命令。語長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 jump()
JUMP命令。語長2.
void subl_r1_r2()
SUBL命令 - オペランドr1,r2。語長1.
void cpa_r1_r2()
CPA命令 - オペランドr1,r2。語長1.
void push()
PUSH命令。語長2.
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 call()
CALL命令。語長2.
void jpl()
JPL命令。語長2.
void lad()
LAD命令。語長2.
void xor_r_adr_x()
XOR命令 - オペランドr,adr,x。語長2.
void jze()
JZE命令。語長2.
void or_r1_r2()
OR命令 - オペランドr1,r2。語長1.
void jov()
JOV命令。語長2.
void ld_r1_r2()
LD命令 - オペランドr1,r2。語長1.
CLOCK clock_str2clock(const char *str)
クロック周波数を表す数値文字列を、正の整数値であるCLOCK型の数値に変換。変換できない場合は、エラーを表示して0を返す
Definition exec.c:92
@ INSIZE
Definition exec.h:14
void dumpmemory(WORD start, WORD end)
COMET IIのメモリを表示する
Definition dump.c:6
void addcerrlist_exec()
実行エラーをエラーリストに追加する
Definition exec.c:221
void dspregister()
COMET IIのレジスタを表示する
Definition dump.c:40
void dsp_trace_dump()
COMET IIのレジスタとメモリを実行状況と設定に応じて表示する
Definition dump.c:61
unsigned int CLOCK
Definition struct.h:12
unsigned short WORD
16ビットの数値を表すデータ型
Definition word.h:9