* | 機械語 | ニモニックとオペランド | 説明 | |
. | 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にロード |
. | 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) |
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に返す |
以上 148命令