88mkIIからFR/MR までの機種には、タートルグラフィック拡張命令と、そのデモが添付されました。タートルグラフィックは、LOGOのようにペンを持ったタートル(亀)を操作する感覚で、様々な線が描ける拡張命令です。何ができるかは、デモの仕上がりを見た方が説明が早そうです。
なお、88も8MHz時代を迎えると、この拡張命令はシステムディスクから姿を消します。理由はおそらく、この拡張命令を何の手直しもなしに 8MHz 駆動させると CMD SING の音程が高くなってしまうことと、V2モードではFM音源の拡張命令とセットで混在させないといけないため、フリーエリアが少なく、積極的に使うユーザが少なかったからではないかと推測しています。
タートルグラフィック拡張命令は、本体添付のシステムディスク(mkII/SR/FR model 20/30, TR/MR)及びデモンストレーションテープ(mkII/SR/FR model 10)に保存されている、ユーティリティプログラムを実行することで追加します。
機種 | テープ | ディスク | ||
---|---|---|---|---|
V1 | V2 | V1 | V2 | |
PC-8801mkII添付 | load "cas2:@exst" run |
- | load "@load.n88" run |
- |
PC-8801mkIISR以降添付 | load "cas2:@exst1" run |
load "cas2:@exst2" run |
load "@load.v1" run |
load "@load.v2" run |
以下、プログラムを実行した様子です。
タートルグラフィック拡張命令のローダーを起動した時の画面。mkII のシステムディスクでは素っ気無い表示です。
SR 以降のものは V1/V2 モード対応(それぞれロードされるアドレス等が違う)のため、画面でそれが識別できるようになっています。以下にメモリマップを掲載します。
Addr. | N88-BASIC V1 | Addr. | N88-BASIC V2 | |
---|---|---|---|---|
8400 |
ファイルバッファ Disk code |
8400 |
ファイルバッファ Disk code |
|
XXXX (不定) |
フリーエリア | XXXX (不定) |
フリーエリア | |
D600 |
タートルグラフィック 拡張命令処理ルーチン |
|||
DC00 |
タートルグラフィック 拡張命令処理ルーチン |
E100 |
拡張命令(NEW CMD)用 ワークエリア |
|
E600 FFFF |
ワークエリア | E600 FFFF |
ワークエリア |
また、mkII/SR/FR model10 用に、カセットテープでも供給されていました。
Pattern 1 は、ペン色を変えながら渦巻模様を描きます。画面には、CMD TURTLE 文をどう使っているかも表示されています。
CMD TURTLE "pc(cl)fd(i)rt91"
Pattern 2 は、三角形/四角形/六角形を描きながら円を描きます。画面には、CMD TURTLE 文をどう使っているかも表示されています。
CMD TURTLE "sthd0pumv320,100pdpc(cl)rp(n)[rp(i)[fd(ds)rt(dg)]rt(dl)]ht"
Pattern 3 は、応用問題です。画面に花火を描画します。
Pattern 4 は、フラクタルで樹木曲線を描きます。これはかなり時間を要します。
♪BGM:グリーンスリーブス / イングランド民謡 |
Pattern 5 は、PAINT などタートルグラフィック以外の描画命令を組み合わせて絵を描くデモです。描画が終わると、CMD SING で1曲流れます。
タートルグラフィックス拡張命令は、(mkII 以降で拡張されたハードウェアを利用する)CMD SING 命令を除けば PC-8801 でも動作します。また、以下のようにパッチを当てることで、一応 CMD SING の音も鳴るようになります。
@load/@exst | BASIC | アドレス |
---|---|---|
PC-8801mkII添付 | V1 | DEE1 |
PC-8801mkIISR以降添付 | V1 | DF3C |
V2* | D973 |
*V2モード用プログラムは PC-8801 では動作しませんが、参考のため載せています。
書き込む値 | CMD SING | BEEP | 備考 |
---|---|---|---|
80 | ON | OFF | オリジナル |
20 | OFF | ON | BEEP で演奏する |
A0 | ON | ON | CMD SING が有効なハードウェア以外では BEEP で演奏する |
例:PC-8801mkII のシステムディスク (@load.n88/@exst.n88) を PC-8801 で利用したい場合、run "@load.n88" を実行した後に、次のコマンドを入力すれば OK です。
POKE &HDEE1,&HA0
上記以外のバージョンがあるかも知れませんので、実際に試す前に PEEK して、POKE 先のアドレスに 80H が書かれていることを確認することをおすすめします。
ADR=&HDEE1:IF PEEK(ADR)=&H80 THEN POKE ADR,&HA0
デモンストレーションへ戻る
今だから使うPC-88へ戻る