エスケープシーケンスを使ったアニメをご存知ですか?
はるか昔、といっても20年ほどですが、テキストベースの パソコン通信が主流だった時代、 AA(アスキーアート)を使ったアニメーションが エスケープシーケンスという技術を使って流行っていました。
エスケープシーケンスとは Escape (0x1b) の文字コード ^[ で始まる、制御コードを使って、画面位置を指定したり、色をつけたりする技術でした。
規格は vt100j(vt100の日本語版) が使われていたのですが、主に、こんな命令がありました。
コマンド | 例 | 意味 |
^[[p1;p2....;pnm | ^[[33m | 色変更: 0 規定値 1 ハイライト 2 縦線 4 下線 5 ブリンク 6 反転 30 黒 31 赤 32 緑 33 黄色 34 青 35 紫 36 水色 37 白 4x 30番台の反転 |
^[[nA | ^[[2A | n個上へ |
^[[nB | ^[[1B | n個下へ |
^[[nC | ^[[3C | n個右へ |
^[[nD | ^[[10D | n個左へ |
^[[y;xH | ^[[1;1H | 座標 (x,y)へ |
^[[s | ^[[s | 座標と文字属性を保存 |
^[[u | ^[[u | ^[[sで保存した内容を復元 |
^[[2J | ^[[2J | 画面全消去 |
^[[>1h | ^[[1h | ファンクションキーを消す |
^[[>5h | ^[[5h | カーソルを消す |
^[[nM | ^[[3M | n行削除 |
^[[nL | ^[[3L | n行挿入 |
^[[nK | ^[[3L | 2:行削除 1:カーソルの左削除 0:カーソルの右削除 |
これだけだと、よく分からないので、実際の作品を再生してみましょう。
なつかしいですねー。昔のCUIの画面だとメニューを作成したりするのに良くエスケープシーケンスを使ったり、UNIXのワークステーション上で自作のファイラー(X68Kのmintっぽい奴)等でもエスケープシーケンスを多用してました。パソコン通信上ではアスキーアート発表専門のフォーラムなどもあって盛況でしたね。
なつかしいですねー。昔のCUIの画面だとメニューを作成したりするのに良くエスケープシーケンスを使ったり、UNIXのワークステーション上で自作のファイラー(X68Kのmintっぽい奴)等でもエスケープシーケンスを多用してました。パソコン通信上ではアスキーアート発表専門のフォーラムなどもあって盛況でしたね。