goo blog サービス終了のお知らせ 

[FM]FULLMSX for BLOG

詳しいMSXパソコンなどの情報はホームページで!
https://fullmsx.web.fc2.com/

MSX2でアニメを 整合性チェック BEEP音でテスト 実行までの流れ

2011-03-07 18:44:09 | MSXマシン語適当講座

プログラミングはMSX-DOS環境がある1chipMSXで行ってみました!

オペコードとニーモニックが正常に入力されているかのチェックです。
入力された数値と合っていればテキストは正常ということです。
データの欠損、不正な値などが含まれている場合はエラーで停止します。

このようにテキストでチェックしても見落とす場合があります。
正確な重要なデータを必要とする場合に目視のほかにPCで検査します。
2エラーありましたが、チェックは終わりました。

早速、コードCDを書き換えました。ちょっと文字長をみてみました。
この程度の長さまで書けるので、わかりやすいですね。

とりあえず、C9を実行して試したのですが、あまりスッキリしないので、
BEEP音を出すプログラムで動作検証を再度やってみます。

こんなことも★

今度はショートのマシン語が機能するかを試します。
まだ、ラベルの準備をしていないので、絶対アドレス指定でBIOSを実行させます。
MSXマガジン永久保存版3号p194にBEEPがあります。アドレスが017Dhです。
プログラムを実行するとポッと音が鳴ります。

MSXBASICでは8000hにするとMSXBASICプログラムにカブってしまうので、
9000hにロードさせます。さらっと考えると

ORG 9000h
CALL 00C0h
RET

これがラベルになると

BEEP     EQU  00C0h
            ORG  9000h
            CALL BEEP
            RET

となります。さて、ハンドアセンブラで始めていきます。

10 SCREEN8
20 VPOKE &H9000,&HCD
30 VPOKE &H9001,&HC0
40 VPOKE &H9002,&H00
50 VPOKE &H9003,&HC9
90 BSAVE"BEEP.BIN",&H9000,&H9003,S

SオプションでVRAMに保存します。
実行するとBINファイルができます。これを

BLOAD"BEEP.BIN",R

MSXから音が出ます。

流れとして、開始アドレスを9000hに固定させます。
本体プログラムは拡張性と自動化を重視するためBASICで作ります。
この為にフリーエリアを多く使うためにマシン語領域が減ります。
そこで、VRAMを仮想のマシン語のメモリ領域として配置する方法を採用します。
9000hに設定したのはマシン語を実行後にBASICデバッグするためです。
この領域は0000h~D400hまで使うことが出来ます。
と、いう考えがあるのですが、
これ以上は~ボロが出ますのでこのへんにしておきます。
ある程度、動作チェックが済みしだい機能を拡張させていくことにします。
オンラインエディタは手抜きじゃないのか?Delキーで改行が増えたりしているなぁ。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« MSXでアニメを アセンブラを... | トップ | MSX2でアニメを オペコード... »
最新の画像もっと見る

コメントを投稿

MSXマシン語適当講座」カテゴリの最新記事