このページは前回と前々回の内容の理解を前提とした、まとめページとなります。そのため、直接こちらに飛んできた場合は、先に準備と実装のページを読んでいただくと助かります。準備 実装 前回までの実装で Z80 のニーモニックのままで、展開処理を実行できる前準備が整いま ...
Z80 を C# で再現する - 実装
このページでは、Z80 の動作を C# でシミュレートするための技法について解説しています。いきなりこちらに飛んできた場合は、先に準備編を読んでから先にお進み頂ければ、理解がしやすいと思います。準備 Acc アキュムレーターZ80 で計算を行う際は、この Acc に値を入れて ...
Z80 を C# で再現する - 準備
Exomizer は圧縮率で ZIP をも凌ぐ大変優れたソリューションです。欠点としては解凍速度が遅いことですが、絶対的な圧縮が欲しい時は、これの選択が唯一無二とまで思っています。例えば、データロードの時間を短くする時も、Exomizer を使って圧縮すれば、その後数秒の展開時 ...
Newシティヒーロー配布終了のお知らせ
本日、ゲーム開始時に紹介された登場する怪物と、実際にゲームが始まってからの怪物に相違があるというバグ報告がありました。確かめてみると、ゲーム中の登場怪物が間違っているようでした。どうやらボーナスステージ追加の時にエンバグしてしまったようです。あと、私の手 ...
エンドロール/ラインコピー
バッファに新しい行の文字列画像が出来たら、後はそれを画面にコピーするだけです。ただ、そのコピーの前に現在表示済みの画像も1ラインコピーして上げる処理が必要です。コピー元がバッファか画面上かの違いだけで、やってることは同じです。そのため、ここを如何に高速に処 ...
エンドロール/新しい行の表示
画面下部に新しい文字を表示するには、ダブルバッファに文字を描画していく事は、前回のプログラムの流れで説明しました。 今回は如何に処理の負担を分散しながら新しい行を作成していくかについて説明します。バッファをクリアする文字数が多いと、当然描画には時間がかかり ...
エンドロール/プログラムの流れ
メッセージデータの形式が決まれば、次は実際の処理の流れです。スクロールは、1ドット単位で行われます。そのため、画面下部で文字を描いているのが見えるのは、あまりエレガントとは言えません。また、スクロール中は、その追加文字列の表示を壊すわけにもいかずで、意外と ...
エンドロール/メッセージデータ
映画やゲームなどで最後に制作者名や権利表示が出てくるのがエンドロールです。これは主に制作関係者に対する感謝の気持ちとして、その作品の末尾に名前を載せていたりします。何気なく見てると気が付きませんが、結構作るのに手間がかかります。また、これをレトロPCで実現 ...
#80mk2 携帯カバン購入
プライムセールで購入したカバンが届いたので、ちょっとご紹介したいと思います。購入したカバンはこちらです。このカバンの特徴ですが、まずなんといっても軽いです。届いた時に妻が片手で私のところまで持ってきました。中に何も入ってなければひょいっと持ち上げられます ...
ゲーム学科に進む意味
ゲームクリエイターになる登竜門として、ゲーム学科がある専門学校に進む人はそれなりに多いです。夢を追い求めるのは結構ですが、だいたい最初の1年で現実を突きつけられて、夢は夢としてちょっとコンピュータに強い一般職として、ゲーム業界以外に就職していく人は本当に多 ...
素数算出と実行速度の差
某所で素数を列挙するプログラムを見かけて、自分も作ってみようという気になりました。また、ついでに C言語、C++、C# でも同じように作成して、そのコードの違いや実行速度の差を検証もしてみました。私の当初の予定では、圧倒的に C++ が高速だと思ってました。さて、その ...
無茶してたNECマシンたち
1980年代に発売された NEC の PC は、過渡期にあったためなのか、或いは他社製品と差別化を図るためなのか、ちょっとおまそれは無理とか無茶だってばという仕様で発売されたのも多かった印象です。今回は私から見て、そりゃ無茶だろうって思った点について言及していきます。 ...