80mk2 の SD ドライブを使って、文字列を渡すと elisa フォントのビットマップを返すようにしたら、日本語表示いけるな
04.12.2025 10:38 — 👍 3 🔁 0 💬 0 📌 0@tako-two.bsky.social
PC-8001 ゲーム開発 https://www.youtube.com/@takotwo209
80mk2 の SD ドライブを使って、文字列を渡すと elisa フォントのビットマップを返すようにしたら、日本語表示いけるな
04.12.2025 10:38 — 👍 3 🔁 0 💬 0 📌 080mk2 用に何かゲーム作らないとな
30.11.2025 03:47 — 👍 6 🔁 0 💬 0 📌 0開発中の FPGA 版 80mk2 エミュ、ビープ音も HDMI に出力しているので自分の環境でもキャプチャできるのではとやってみた
25.11.2025 04:04 — 👍 10 🔁 3 💬 0 📌 0ありがとうございます!
ChatGPT に Oh!PC の話を振ってみたら見つけてくれました
Oh!PC の 1984 年 7 月号っぽいです
Oh!PC ありましたね!
すっかり失念してましたが、確かにたまに買ったりしてました
AI に聞いてみたら I/O かポプコムかと言われました^^;
いいですね、あれ
教えてもらった鳴らせ方ですが、8001 でこのような効果音を出せるとはと最初聞いたとき感動しました
やっと実機からHDMIに出力できる環境ができたので、 @tako-two.bsky.social さんのBosconia(N)のプレイの様子を録画してみた
素晴らしい…
ビープ音まで撮れるのは良いですね!
24.11.2025 08:47 — 👍 2 🔁 0 💬 1 📌 084年から85年の記事だったと思うけど、80mk2のタイルペイントのプログラムもリベンジしておかないとな
24.11.2025 05:53 — 👍 3 🔁 0 💬 1 📌 0使わないんだけど、つい作ってしまうグリーンモニターモード
23.11.2025 08:29 — 👍 7 🔁 0 💬 0 📌 0Verilog を初めていじったときは、値がレジスタにラッチされるのが 1 クロック遅れになるのを前提にする設計に苦労したり、そもそもいきなり異なるクロック間でデータをやり取りしたりでハマったけど、だいぶ慣れてきた
22.11.2025 17:06 — 👍 0 🔁 0 💬 0 📌 0アトリビュート見直してスターファイヤーもちゃんと動くようになった
22.11.2025 09:48 — 👍 8 🔁 0 💬 0 📌 0あと、画面の見た目が実機と変わらないので、ウォーターマークでも入れるとか
21.11.2025 07:30 — 👍 1 🔁 0 💬 0 📌 0SD カードの制御にサブの Z80 を載せてるけど、メモリが 8KB しか余ってなくて FatFS の簡易版しか載らず、データのセーブを省略してるんだった
SDRAM にメイン RAM を逃がしたので、サブ側のメモリを増やしてフル版の FatFS 使ってセーブできるようにしようか
結局 /M1 だけじゃ取りこぼすようなので、/M1 と /IORQ 両方がアクティブになるまで /INT を出しておかないとダメだった
それか、タイムアウト的に何クロック経過したら /INT を取り下げるでもいいのかも
対応した割り込みは VBLANK だけだけど、600Hz のほうはどうしようか
21.11.2025 05:05 — 👍 1 🔁 0 💬 0 📌 0次回の 80mk2 会は実機と FPGA エミュの 2 台体制でいけるな
21.11.2025 04:45 — 👍 3 🔁 0 💬 0 📌 0割り込みもいい感じに動くようになって、背景の星も滑らかに流れるようになった
21.11.2025 04:27 — 👍 5 🔁 0 💬 1 📌 0/INT を 1 クロック分しか出してないから、取りこぼしてるのかも
いつまで上げておくかが問題だけど、Acknowledge まで待つにしても、CPU が割り込み禁止にしてたら上げっぱなしになりかねないし
/M1 までなら、次の命令が実行されてるのがわかるから、下げても大丈夫なのか
ギャラガの前のバージョンだと動作したけど、星の動きがノロノロ
VBLANK じたいちゃんと出てるかも怪しいな
もう少し読み進めてみると、割り込みテーブルのアドレスを PC にセットした後に PC から命令を読み込むような感じでジャンプ先を読み込んでジャンプしてた
20.11.2025 13:26 — 👍 0 🔁 0 💬 1 📌 0TV80 のコアのソースコードに目を通して、IM2 のときの実装を確認してみる
複雑なのでそれとなくだけど、IM2 のコードは存在して、I レジスタとデータバスから入力した割り込みベクタを拾うところは確認できたけど、そのままジャンプしているような気もするし、どうなのか
一応ちゃんと実装できたと思うんだけど反応がない
バスに載せる割り込みベクタはそのままジャンプテーブルのアドレスに用いられるので、2バイト単位にしないといけなくて INT1 なら 0x02 にするところを 1 のままにしたとき out &hE6,2 したときに VBLANK に合わせて挙動がおかしくなったので割り込みはかかるみたいだけど、何が足りないんだか
I/O ポートの 0xE4 と 0xE6 を使うっぽいけど、機能がよくわからんな
ギャラガでは 0xE4 に 7 をセットして、0xE6 に 0b00000010 をセットするようにしてようやく動くようになったし
データバスの割り込みレベルを出すタイミングは Z80 が割り込みに対してアクノレッジを返す時点だけど、M1 と IORQ が同時にアクティブになるからそのタイミングでいい感じか
80mk2 固有のことを聞くと頼りないけど、一般的な話だと AI との会話は役に立つな
AI は 8259A だと言ってるけど、調べたら Intel の 8214 互換に IC っぽい
推測するに、/INT をアサートするタイミングでデータバスに割り込みの優先度を出力する感じかな
Z80の割り込みの仕組みから見直さないと、よくわからんな
/INTで割り込みがかかるにしても、割り込み要因をどうやって取り込んでるのか等
外部にコントローラーつけてるって話も耳にしてるし
あと、ギャラガが割り込みを使ってるから、割り込みコントローラーまわりを実装すればだいたい欲しいものがそろうかな
19.11.2025 13:51 — 👍 0 🔁 0 💬 0 📌 0確かに、実機で出たら泣きますねw
19.11.2025 13:45 — 👍 2 🔁 0 💬 0 📌 080mk2用に作ったゲームがバッチリ動くようになった
表示中のウェイトがないからパックマンとかめちゃくちゃ速いけど