* | 機械語 | ニモニックとオペランド | 説明 | |
00 | NOOP | 時間 | 指定時間の間何もしない | |
01 | THROW | 制御を別のプロセスに渡す | ||
08 | INC | REG | 指定レジスタに1を加算 | |
09 | DEC | REG | 指定レジスタから1を減算 | |
10 | ADD | REG パラメータ | 加算 | |
11 | SUB | REG パラメータ | 減算 | |
12 | MUL | REG パラメータ | 乗算 | |
13 | DIV | REG パラメータ | 除算 | |
14 | SHL | REG パラメータ | 左シフト | |
15 | SHR | REG パラメータ | 右シフト | |
16 | AND | REG パラメータ | ビット積 | |
17 | OR | REG パラメータ | ビット和 | |
18 | NOT | REG パラメータ | 否定 | |
19 | CMP | REG パラメータ | 比較 | |
1A | NEG | REG パラメータ | 符号反転 | |
1B | SQRT | REG パラメータ | 平方根 | |
1C | SIN | REG パラメータ | サイン 角度8倍,結果10000倍 | |
1D | COS | REG パラメータ | コサイン 角度8倍,結果10000倍 | |
1E | ATAN | REG パラメータ | アークタンジェント | |
1F | RANDOM | REG パラメータ | 乱数 | |
20 | BRA | オフセット | 無条件分岐 | |
21 | BEQ | オフセット | 演算結果が0か等しい | |
22 | BNE | オフセット | 演算結果が非0か等しくない | |
23 | BGR | オフセット | より大きい | |
24 | BGE | オフセット | より大きいか等しい | |
25 | BLS | オフセット | より小さい | |
26 | BLE | オフセット | より小さいか等しい | |
27 | BMI | オフセット | 演算結果が負 | |
28 | BPL | オフセット | 演算結果が0以上 | |
29 | LOOP | 飛び先オフセット | ループ | |
30 | CALL | 飛び先オフセット | 副手続きの呼出し | |
31 | RETURN | 副手続きからのリターン | ||
32 | PUSH | REG | レジスタのプッシュ | |
33 | POP | REG | レジスタのポップ | |
34 | CLEARA | 位置姿勢レジスタの一括クリア | ||
35 | PUSHA | 位置姿勢レジスタの一括プッシュ | ||
36 | POPA | 位置姿勢レジスタの一括ポップ | ||
37 | CLEARG | 汎用レジスタの一括クリア | ||
38 | PUSHG | 汎用レジスタの一括プッシュ | ||
39 | POPG | 汎用レジスタの一括ポップ | ||
3A | ENTER | 数値 | スタックフレームの作成 | |
3B | LEAVE | スタックフレームの解放 | ||
3C | CALLTB | REG1 REG2 | 共有メモリのテーブルで呼び出し | |
40 | LOAD | REG パラメータ | レジスタに値を格納 | |
41 | LOADM | デ-タアドレス パラメータ | レジスタにデータメモリの値を格納 | |
42 | XLOAD | REG1 REG2 | レジスタ相対でデータメモリを取得 | |
43 | CLOAD | REG1 REG2 | レジスタに共有メモリの値を設定 | |
44 | LOADBP | REG オフセット | ローカル変数をREGにロード | |
560 | 46 | PNTUV | 「物体」の頂点の定義(UV座標付き) | |
560 | 47 | DEFPUV | x y z u z | 「物体」の頂点の定義(UV座標付き) |
560 | 48 | TXFILE | ファイル番号 ファイル名 | テクスチャビットマップファイル読み込み |
560 | 49 | TXSET | テクスチャ番号 | テクスチャ指定 |
560 | 4A | TXAXIS | 中心軸 | テクスチャ貼り付け軸の指定 |
560 | 4B | TXALPH | アルファ値 | テクスチャの透明度の指定 |
560 | 4C | TXSCAL | 横の拡大率 縦の拡大率 | テクスチャの拡大率の指定 |
560 | 4D | TXCHG | ファイル番号 テクスチャ番号 | テクスチャの変更 |
560 | 4E | TXMAP | マッピング方法 | テクスチャのマッピング方法の指定 |
560 | 4F | TXBIAS | U座標 V座標 | テクスチャ座標のオフセットの設定 |
50 | STORE | REG パラメータ | レジスタをデータメモリに格納 | |
51 | XSTORE | REG1 REG2 | レジスタ相対でデータメモリに格納 | |
52 | CSTORE | REG1 REG2 | 共有メモリにレジスタの値を設定 | |
54 | STORBP | REG オフセット | REG をローカル変数に格納 | |
60 | GENPRC | サイズ 実行アドレス | プロセスの生成 レジスタをコピー | |
61 | DELPRC | プロセスの消滅 | ||
62 | WAIT | プロセスの一時停止 | ||
63 | STPALL | 全プロセスの停止消滅 | ||
64 | SEND | プロセスID メッセージ | 指定プロセスIDにメッセージ送出 | |
65 | RECEIV | REG | メッセージを取得 | |
66 | SENDTO | プロセス番号 メッセージ | 指定プロセスNoにメッセージ送出 | |
67 | CHILD | アドレス サイズ 頂点数 面数 | 子「物体」の生成 | |
80 | GRAPHM | グラフィックモードに設定 | ||
81 | TEXTM | テキストモードに設定 | ||
82 | BCOLOR | REG or 数値 | 背景色の設定 (0-255) | |
83 | ZOOM | REG or 数値 | 視野角の設定 (0:90度,1:53度) | |
4,6 | 84 | WIRE | REG or 数値 | 多角形種別 (0:polygon,1:wire) |
560 | 85 | NEAR | REG or 数値 | 近クリップ面の設定 |
560 | 86 | FAR | REG or 数値 | 遠クリップ面の設定 |
4,6 | 88 | EMIT | REG or 数値 | オブジェクトの発光 |
4,6 | 89 | PARALL | REG or 数値 | 光源の種類 |
90 | INKEY | REG | キーコードをレジスタに入力 | |
91 | RAWKEY | REG1 REG2 or キーコード | キーチェック | |
92 | MOUSE | マウス座標の取得 | ||
98 | OUTNUM | REG | レジスタ1の示す値を出力 | |
99 | OUTCHR | '文字' | 1文字の出力 | |
9A | OUTSTM | REG | データメモリの文字列を出力 | |
9B | OUTSTR | 文字列 | 文字列を出力 | |
4,5 | 9C | NOTE | ch 音符 音量 | MIDI 音階出力 |
4,5 | 9D | MIDI | mes パラメータ1 パラメータ2 | MIDIメッセージ(0. . 127, 0. . 127) |
A0 | MOVF | 時間 距離 | 前進 | |
A1 | MOVB | 時間 距離 | 後退 | |
A2 | MOVL | 時間 距離 | 左移動 | |
A3 | MOVR | 時間 距離 | 右移動 | |
A4 | MOVU | 時間 距離 | 上移動 | |
A5 | MOVD | 時間 距離 | 下移動 | |
A6 | ROTH | 時間 角度 | Head | |
A7 | ROTP | 時間 角度 | Pitch | |
A8 | ROTB | 時間 角度 | Bank | |
B0 | MOVALL | 時間 | 移動回転(RX,RY,RZ,RH,RP,RB) | |
B1 | MOVALH | 時間 | 移動回転(RX,RY,RZ,RH,RP,RB) | |
B2 | SCALE | 時間 | 「物体」の縮尺(サイズ)の変化 | |
B8 | SETGRV | REG or 数値 | 重力加速度の設定 | |
B9 | GETGRV | REG | 重力加速度の取得 | |
BA | SETACL | 加速度の設定 | ||
BB | GETACL | 加速度の取得 | ||
BC | SETVEL | 速度,角速度の設定 | ||
BD | GETVEL | 速度,角速度の取得 | ||
BE | SETWVL | 「物体」の速度を世界座標系で設定 | ||
BF | GETWVL | 「物体」の速度を世界座標系で取得 | ||
C0 | GENOBJ | 頂点数 面数 | 「物体」の生成 | |
C1 | DEFPNT | x y z | 「物体」の頂点の定義 | |
C2 | DEFPLN | REG n pl1 pl2 pl3 .. pln | 「物体」の面の定義 | |
C3 | DELOBJ | 「物体」の消滅 | ||
C4 | SETEYE | 視点の設定 | ||
C5 | POINT | 「物体」頂点の定義RX,RY,RZ | ||
4,6 | C6 | SETREF | REG or 数値 | スペキュラーの設定 |
4,6 | C7 | SETAMB | REG or 数値 | アンビエントの設定 |
C9 | GETVXN | REG | 頂点番号の取得 | |
CA | PLANE | REG | 面の定義(データメモリ使用) | |
CB | TRANSP | 頂点座標全体の平行移動 | ||
CC | UPDTVP | 頂点番号の相対指定 | ||
CD | RSETVP | 頂点番号の絶対指定 | ||
CE | SLIDE | 頂点登録時のオフセットを設定 | ||
CF | HOME | 頂点登録時のオフセットを解除 | ||
D0 | GETPOS | 「物体」の位置と姿勢を取得 | ||
D1 | SETPOS | 「物体」の位置と姿勢を設定 | ||
D2 | PRCPOS | REG or ProcID | 指定プロセスの位置と姿勢を得る | |
D3 | DISTNC | 指定プロセスIDまでの距離を得る | ||
4,6 | D4 | PRIOR | REG or 数値 | ポリゴンの表示優先順位を指定 |
D5 | RELATV | REG or プロセスID | 相対位置と角度を返す | |
D6 | LOOK | REG or プロセスID | 指定プロセスへの角度を返す | |
D7 | RELAT2 | 相対位置と角度を返す | ||
4,6 | D8 | FINDVX | 「物体」の頂点番号を取得 | |
D9 | SETVTX | 「物体」頂点位置の更新 | ||
DA | GETVTX | 「物体」頂点位置の取得 | ||
DB | SETPLN | ポリゴンデータの設定 | ||
DC | GETPLN | ポリゴンデータの読み出し | ||
4,6 | DD | SETSCL | 「物体」の縮尺の設定 | |
4,6 | DE | GETSCL | 「物体」の縮尺の取得 | |
E0 | GRNUM | REG | レジスタの示す値を出力(Graph) | |
E1 | GRCHR | '文字' | 1文字の出力(Graph) | |
E2 | GRSTM | REG | データメモリ文字列出力(Graph) | |
E3 | GRSTR | 文字列 | 文字列を出力(Graph) | |
E4 | GRCOL | 文字色 or REG | 文字色を設定(Graph) | |
E5 | GRCLR | 文字列クリア(Graph) | ||
E6 | GRCSR | 文字列位置 or REG | 文字列位置の設定(Graph) | |
E7 | GRPOS | REG | 書き込み位置取得 | |
E8 | GRLINE | ラインの設定 | ||
E9 | GRLINC | ライン番号 or REG | ラインの消去 | |
F0 | SYSTIM | REG | システム時間の取得 | |
F1 | SYSCNT | REG | ジョブ実行ループ回数の取得 | |
F2 | SYSPRC | REG | 現在のプロセス数の取得 | |
F3 | DATA | REG パラメータ | 共有メモリに書き込む数値列 | |
F4 | WRITE | "ファイル名" | 共有メモリ書出 RXY:位置,サイズ | |
F5 | READ | "ファイル名" | 共有メモリに読み込み RX:位置 | |
F6 | LIGHT | REG | 光源の強度,方向の設定 | |
4,6 | F9 | COLNUM | REG | シェイディング可能な色数を取得 |
4,6 | FA | COLWDT | REG | シェイディング段数を取得 |
FB | CNTVTX | REG | 総頂点数を取得 | |
FC | CNTPLY | REG | 総ポリゴン数を取得 | |
FD | SETCOL | REG | 色の設定 | |
FE | RSTCOL | 色をデフォルトに戻す | ||
FF | VER | バージョンをRX,RYに返す |
以上 162命令