メッセージデータの形式が決まれば、次は実際の処理の流れです。スクロールは、1ドット単位で行われます。そのため、画面下部で文字を描いているのが見えるのは、あまりエレガントとは言えません。また、スクロール中は、その追加文字列の表示を壊すわけにもいかずで、意外と ...
タグ:プログラミング
エンドロール/メッセージデータ
映画やゲームなどで最後に制作者名や権利表示が出てくるのがエンドロールです。これは主に制作関係者に対する感謝の気持ちとして、その作品の末尾に名前を載せていたりします。何気なく見てると気が付きませんが、結構作るのに手間がかかります。また、これをレトロPCで実現 ...
80mk2 1200baudで読み込ませる
PC-8001 シリーズの中で唯一 mk2 だけが 1200baud でのカセット読み込み機能を有しています。ですが、折角の 1200bayd 読み込みは、N80-BASIC では使用されず封印されています。今回はその 1200baud を使って、様々なゲームを読み込ませる手法について解説します。 ファン ...
シューティングゲームを制作中!
公式のブログネタに制作中!というお題があったので、昨年から作り続けている PC-8001mk2 用のゲーム制作の進捗状況について、簡単に説明していきたいと思います。このゲームはひみつをときあかす要素もあったりあるので、そういう謎部分には殆ど触れないように説明していき ...
Z80 switchのような連番分岐
Z80 でプログラムを組んでいると、Acc の内容によって、それぞれの処理にジャンプしたいことが割と多くあります。例えば、Acc が 0,1,2... という場合に、それぞれ対応したラベル L0, L1, L2... にジャンプしたい場合です。今回はその実装方法について解説していきたいと思い ...
DMAを意識したGVRAMアクセス
現在、趣味のゲーム制作で PC-8001mk2 専用のソフトを鋭意制作中です。とはいえ、趣味の範囲なので、余暇の時間を使っている関係で、なかなか進捗は遅いのですが…。そして、最近知ったのですが、PC-8001mk2 では、例えテキストの DMA を停止しても、GVRAM(グラフィック画面 ...
C# 左右判定(外積と内積)
前回 Z80 で左右判定を行いました。Z80 ではアナログの扱いではなく 8方向で表現してた事もあり、各方向毎に専用判定を記述することで対応しました。C# ではベクトルで座標を、向きはベクトルや角度で扱っているため、角度毎の専用処理では判定できません。そこで数式を用い ...
Z80 左右判定
自分から見て、相手が左右どちらにいるのかを判定したいことがよくあります。コンパイラ系であれば、内積を使えば一発なのですが、Z80 ではなかなかそういう訳にもいきません。そこで今回は、8方向に移動している自分から見て、相手が左右どちらにいるのかをどう判定すれば良 ...
C# 行列演算で画像表示
前回の記事で、メインループからプレイヤーを自由自在に動かせるようになりました。ですが、キャラはずっと正面を向いたままです。方向に応じた画像表示に入れ替えたら、それなりに見えるのは分かりますが、例えば自動車のように、各方向にアナログ的に回転させて表示しよう ...
C# ベクトル移動
前回でメインループの基本形が出来たので、このまま次はプレイヤーを動かしてみたいと思います。プレイヤーを動かすのに、上下左右では味気がないので、ここはベクトルを使ってアナログ的に移動させてみます。内容に関しては今回も、前回の続きとなりますので、直接こちらに ...








