aburi6800のブログ

コンピュータのプログラミング、ゲームに関するニッチな情報を書いていくブログです。

【MSX】インディ・ショーンズ 洞窟の秘宝 開発メモ

この記事について 恥ずかしいのですが、せっかくですので、先日公開した拙作のBASICゲームの作成メモを公開します。 だいたいこんな感じで書いていって、手元に資料化しています。参考になれば幸いです。 なお、絵はブギーボードに書いたのをスマホアプリで…

【MSX】インディ・ショーンズ 洞窟の秘宝

MSX

またまた、MSX-BASICで簡単なゲームを作ってみました。 以下のURLで遊べます。 webmsx.org 遊び方 タイトル画面 - タイトル画面でスペースキー(またはトリガボタン)でスタート。 ゲーム画面 - 洞窟にいるコウモリを倒してください。 - 決まった数を倒すと…

【MSX】KOBUTA RESCUE

MSX

ちょっとした気分転換に、MSX-BASICで簡単なゲームを作ってみました。 以下のURLで遊べます。 webmsx.org 遊び方 タイトル画面 - タイトル画面でスペースキー(またはトリガボタン)でスタート。 ゲーム画面 - 子ぶたがとことこ歩いてくるので、穴に落ちない…

【MSX】Z80マシン語入門してみた(第2回)

さて、前回から間を置いてしまいましたが、今回からは、私が制作したオールマシン語ゲーム「Corridor Runner」の制作過程を追って、どのように1つのゲームを作っていったのかを書いていこうと思います。 マシン語もゲーム制作も、私の独学ですので一般的な…

【MSX】Corridor Runner

MSX

Z80アセンブリの勉強で、ゲームを作ってみました。 こんな雰囲気のゲームです。 www.youtube.com 以下のURLで遊べます。 WebMSX 遊び方 タイトル画面でスペースキーを押すと、スタートします。 タイトル画面 カーソルキーの左右で方向変更、下でパワーを溜め…

【MSX】Z80マシン語を勉強してみた(第1回)

はじめに 往年のマイコン少年なら誰しも憧れた、マシン語。 当時のマイコン雑誌には何ページにもわたってダンプリスト(16進数の羅列)が載っていたりして、その入力すら厳しいものでしたが、そこから動くゲームはどれも本格的でBASICでは味わえないものばか…

【Python】ソーサリアンのようなタイトル表示を実現してみる

久しぶりの更新です。 昔、主にPC8801mk2SRなどの8ビットパソコン用に、「ソーサリアン」というRPGが発売されていました。 このゲームは、当時としてはとてもスケールの大きいものだったのですが、そのタイトル画面がシンプルなのに壮大で美しく、ゲームのイ…

【Obsidian】Obsidian gitプラグイン

(2022/4/13 加筆修正しました) Obsidian gitプラグインとは Obsidianからgitのローカル/リモートリポジトリ操作を行えるプラグイン。 予めVaultに対してgitの操作を行い、githubなどのリモートリポジトリと関連付けさせておく必要があるため、gitの知識があ…

【MSX】AndroidでMSXクロス開発環境を構築する(3)

今回は、ubuntuにz88dkとcode-serverをインストールし、Z80アセンブラの開発を行えるようにします。 最後に簡単なサンプルプログラムを作り、動作確認を行います。 これまでの作業については、以下の記事を参照してください。 aburi6800.hatenablog.com abur…

【MSX】AndroidでMSXクロス開発環境を構築する(2)

今回は、ubuntuにgit環境を構築し、GitHubとSSH通信するまでの設定を行います。 一般的な内容になりますので、詳細は色々と検索すると出てくるかと思います。 Android上にubuntu環境を構築するまでの手順については、前回の記事を参照願います。 aburi6800.h…

【MSX】AndroidでMSXクロス開発環境を構築する(1)

はじめに 今回から数回に分けて、Android端末にMSX開発環境を構築する手順を紹介します。 とは言え、AndroidにMSX開発用のアプリという都合のいいものはないので、AndroidにPCと同様の開発環境(※1)を構築することにします。 具体的には、gitでソースのバー…

【MSX】ubuntu20.04でopenMSX+debuggerの環境を構築する

MSX

WindowsにはblueMSXというデバッガ機能を内蔵した強力なエミュレータがあるが、Linux(ubuntu)には用意されていない。 そこで、openMSXに用意されているdebuggerを使って、デバッグ環境を構築してみる。 なお、openMSXはリポジトリからのインストールも可能だ…

【MSX】GALAXY ZONE

MSX

これまでのMSX-BASICの研究結果をもとに、ちょっとしたゲームを作ってみました。 以下のURLで遊べます。 webmsx.org 遊び方 しばらく待って、タイトルが出たらSPACE or Aボタンでスタート。 タイトル画面 カーソルキー or コントローラの左右で移動、スペー…

【MSX】MSX-BASICの研究(2) PRINTとVPOKEの性能比較

この記事について テスト方法 1文字表示編 パターン1:PRINT(セミコロンなし) プログラムリスト 結果 パターン2:PRINT(セミコロンあり) プログラムリスト 結果 パターン3:VPOKE プログラムリスト 結果 比較結果 2×2キャラクタ表示編 パターン4:P…

【MSX】MSX-BASICの研究(1) 条件分岐ロジック

この記事について テスト方法 パターン1 プログラムリスト 実行結果 パターン2 プログラムリスト 実行結果 パターン3 プログラムリスト 実行結果 比較結果 総括 パターン4 プログラムリスト 実行結果 比較結果 この記事について MSX-BASICでプログラムを…

【MSX】GitHubに置いた.dskファイルをWebMSXで実行する方法

今日書いたこちらの記事の補足です。 aburi6800.hatenablog.com 最初、WebMSXでGitHubに置いた.dskファイルを読めなかったので、フリーのWebサーバに.dskファイルを置いていたのですが、URLパラメタの指定方法を見直したらGitHubの.dskファイルでも実行でき…

【MSX】BLOCK BREAKER

MSX

唐突ですが、MSX-BASICの練習で、ブロック崩しゲームを作ってみました。 (ボールの挙動が若干怪しいのと、パドルの移動にイライラしますが…) 以下のURLで遊べます。 (※GitHubの.dskをWebMSXに直接渡せたので、URLを変更しました) webmsx.org しばらく待…

【git】GithubにSSH接続する

Githubのリポジトリへのアクセスは、主にhttpsとSSHがある。 一度cloneするだけであればhttps接続で問題ないが、GitHubではSSH接続が推奨されており、アクセスするたびにユーザー名とアクセストークンを入力することも不要になるため、普段から利用するリポ…

【Obsidian】Obsidianのモバイルアプリを試してみた

Obsidianは動作が軽く使いやすい、マークダウン形式で記述するメモアプリだが、これまでモバイルデバイス向けのアプリケーションが存在しなかった。 そのため、個人的にはAndroidのGitJournalというアプリを使用してきたが、見た目や操作感が違うためあまり…

【Python】Pythonの仮想環境を使う

例えば、複数のアプリケーションを開発していて、導入パッケージがそれぞれ異なる場合、各アプリケーションで最低限必要なものだけを導入した環境が欲しくなることがある。 また、Pythonの基本的なバージョンは上げつつ、開発中のアプリケーションは特定のバ…

【Python】PyInstallerの警告に対する対処方法について

環境 発生した環境は以下。 ubuntu 20.04 python 3.8.5 PyInstaller 4.3 pyxel 1.4.3 発生事象 上記環境にて、pyxelpackagerでアプリケーションの単体実行ファイル生成時、以下警告が発生。 単体実行ファイルが作成されない。 12467 WARNING: Tcl modules di…

【ubuntu】ubuntu20.04にEPSON EP-10VAのドライバをインストールする

ubuntu20.04をインストール後、自動的にプリンタを検出して印刷できていたが、先日改めてLibreOffice Calcで印刷したところ、何やら化けた文字が印刷されてしまった。 原因が不明なので、改めて以下手順でドライバをインストールした。 ドライバの入手元 以…

【Obsidian】Obsidian gitプラグインのメモ

マークダウンエディタのObsidionは、ドキュメントの作成や思考の整理に適したツールですが、基本的に保存先はローカルドライブになります。 そのため、複数台のPCを使用していると、ファイルの同期を何らかの方法で行う必要があります。 また、バックアップ…

【VSCode】importで未解決の警告(import ~ could not be resolved)が出る問題の対策方法

VisualStudioCodeを使ってPythonのソースを書くときに便利な拡張機能として、Pylanceがリリースされておりますが、ちょっとハマったことがあったので、記録として記事にしておきます。 似たような事象に悩まされている方のお役に立てれば幸いです。 発生した…

【Python】Pyxelでカナ文字を表示したい

さて今回は、Pythonのゲームエンジン「Pyxel」を使ったカナ文字表示処理を作った記事です。 ちょっと長文になりますが、作成の過程を赤裸々に書いていますので、何かの参考になれば幸いです。 なお、ここではPythonやPyxelのインストール等の細かい説明は割…

【Python】3D迷路の中を歩きたい②

前回は、現在の位置と方向を判断して、マップから表示に必要な情報を取得するところまで行いました。 今回は、実際に画面へ表示するための考え方になります。 なお、描画の方法(アルゴリズム)はいくつかありますが、ここでは一番簡単な手法を記載します。 …

【Python】3D迷路の中を歩きたい①

久しぶりの更新です。 いきなりですが、今回はPythonで3D迷路をやってみたいと思います。 (2020/6/1追記) 実装を進めたところ、マップの検索範囲について問題があったため、修正しました。 なぜ3D迷路? 私にとって3D迷路は、古くはWizardryからの憧れでした…

【雑記】延々と出続ける「ハングアウトのSMSのサポートは終了しました」という通知に対する対応

タブレット購入後にずっと「smsのサポートは終了しました」という通知が表示されている。 これは固定されており、消そうにも消せない。 通知をタップするとPlayストアに繋がり、SMSアプリの一覧が表示されるが、このタブレットはWifiモデルなのでSMSを使用でき…

【雑記】Androidタブレットを購入しました

10月から少し長い間、東京へ出張になりそうなので、出張先で使う端末として、Androidタブレットを購入しました。 購入した機種はこれ。 NEC PC-TE510JAW LaVie Tab E発売日: 2019/01/11メディア: エレクトロニクス Wifiモデルですね。 なぜこの機種を選択し…

【MSX】MSX-BASICとマシン語の処理速度差を体感してみる

さて、前回は開発環境を作りました。 せっかくなので、同じ処理をBASICとアセンブラで書いて、処理速度を比較してみたいと思います。 (2023/04/02) アセンブラソースで不要な部分(SET VRAM WRITE)があったため、削除しました。 BASICの場合 次のようなBASIC…