2 #define _HDLOAD_OSECPU 1
4 // プロジェクトのすべてのファイルで読み込むヘッダ
7 /* Visual Studio で fopen()やsprintf() などの古い関数を使用する時に出る警告を抑止する*/
8 #define _CRT_SECURE_NO_WARNINGS 1
23 struct Ptr { /* 32バイト(=256bit!) */
26 unsigned char *p0, *p1;
29 int flags, dummy; /* read/writeなど */
33 unsigned char *p, *p1;
41 * 将来的には UInt8, SInt32, Flt64, UInt8, VPtr が使えるようになる http://osecpu.osask.jp/wiki/?page0053
47 int ireg[64]; /* 32bit整数レジスタ */
48 struct Ptr preg[64]; /* ポインタレジスタ */
50 int debugInfo0, debugInfo1, dmy[2]; /* 2304 */
51 struct PtrCtrl *ptrCtrl; /* 2320 */
52 char winClosed, autoSleep;
57 const unsigned char **argv;
58 unsigned char *buf0, *buf1, *junkStack, lastConsoleChar, *junkStack1;
60 struct LabelTable *label;
62 unsigned char *jitbuf, *jitbuf1;
63 void(*errHndl)(struct Regs *);
68 #define KEY_ENTER '¥n'
70 #define KEY_BACKSPACE 8
72 #define KEY_PAGEUP 0x1020
73 #define KEY_PAGEDWN 0x1021
74 #define KEY_END 0x1022
75 #define KEY_HOME 0x1023
76 #define KEY_LEFT 0x1024
78 #define KEY_RIGHT 0x1026
79 #define KEY_DOWN 0x1027
80 #define KEY_INS 0x1028
81 #define KEY_DEL 0x1029
83 static int *keybuf, keybuf_r, keybuf_w, keybuf_c;
84 static int *vram = NULL, v_xsiz, v_ysiz;
86 //デバッグ用。プログラム中の随所で加算される変数
87 static int di1_serial = 0;
90 void putKeybuf(int i);
94 #include "dependent.h"
101 /* tek.cを移植するのは大変だと思ったので、断念 */
102 #error "tek is not supported. edit switch.h and set USE_TEK5=0"
105 // int tek5Decomp(unsigned char *buf, unsigned char *buf1, unsigned char *tmp);