Yoji Suzuki

メインで使っているSNSはGitHubです。 https://github.com/s…

Yoji Suzuki

メインで使っているSNSはGitHubです。 https://github.com/suzukiplan

記事一覧

固定された記事

東方BGM on VGS(実機版)

私は、2013年の春先頃から東方BGM on VGS(東方VGS)というスマートフォンアプリ(iOS, Android)を配信しています。 VGSとは、2012年ごろに私が開発した波形メモリ方式の…

Yoji Suzuki
9か月前
15

自転車のコンポーネント交換

以下の記事でも少し触れた昨年購入した中古自転車のコンポーネントを9速のTiagra(R4500)から前世代の105(R5800)に自力換装してみました。 具体的に交換したコンポーネ…

Yoji Suzuki
3日前
3

底辺ユーチューバーを目指してみる話

VGS-ZeroでNSF形式をサポートしましたが、FamiStudioの操作に慣れる目的で東方紅魔郷の全17曲をRP2A03(拡張音源無しのファミコン本体音源)縛りで作ってみました。 当初…

Yoji Suzuki
2週間前
1

VGS-Zero で NSF(ファミコン形式の音声)の再生に対応

VGS-ZeroカーネルでNSF(NES Sound Format)形式のBGMの再生をサポートしてみました。 従来のVGS(Video Game Sound)形式のサポートも継続していて、追加の音源フォーマ…

Yoji Suzuki
1か月前
4

VGS-Zero版Battle Marineをゲームギアに移植している件

Steamで販売中のVGS-Zero版Battle Marine(以下)を現在ゲームギア(GG)に移植中です。 GG版の進捗はTwitterの方でだいたいデイリー頻度で呟いています。 VGS-Zero とゲ…

Yoji Suzuki
3か月前
9

VGS-Zeroができるまでの流れ

無事、VGS-Zeroのローンチタイトル「Battle Marine」をSteamでリリースすることができました。 Qiitaの方でVGS-Zeroの技術中心の紹介記事を投稿してます。 本書は、どう…

Yoji Suzuki
4か月前
5

Battle Marine 開発記 Part 2

RaspberryPi Zero 2W で動作する自作ゲーム機「VGS-Zero」のローンチタイトル「Battle Marine」の開発状況を記します。 1月1日〜1月5日(過去分)今のところ、1月1日から1…

Yoji Suzuki
6か月前
2

Twitterで日々のゲーム開発進捗をツイートしてみる

VGS-Zero版Battle Marineの開発状況をツイッター(X)で日々報告してみるようにしているところです。 ツイッター上で色々なクリエイターさんが実践されているヤツの真似事…

Yoji Suzuki
6か月前

VGS-Zeroをリリース

2024年1月1日に自作ゲーム機「VGS-Zero」のバージョン1.0.0をリリースしました。 VGS-Zeroの特徴をざっくり挙げると、 RaspberryPi Zero 2W(ベアメタル環境)で動作 HD…

Yoji Suzuki
6か月前
5

RaspberryPi Zero 2W の限界を探る

現在、RaspberryPi Zeroのベアメタル環境で動作する自作ゲーム機VGS-Zeroを開発中です。 VGS-Zeroは、メインコアにZ80を搭載しています。 Z80のクロックレートとしては3,…

Yoji Suzuki
6か月前
6

FCS80→VGS0

RaspberryPi Zero (ベアメタル環境)で動作する自作ゲーム機の開発状況です。 前回までのあらすじベアメタル環境で開発するのに際して、ユーザープログラムのライセンス…

Yoji Suzuki
7か月前
2

FCS80のC言語クロスコンパイル対応(SDCC)

以下の記事の続きです。 FCS80(自作の架空ゲーム機)のプログラミングを、Z80アセンブリ言語だけではなくC言語でもできるようにしてみました。 Z80クロスコンパイラの選…

Yoji Suzuki
7か月前
4

自作ゲーム機の開発進捗

現在妄想中の自作ゲーム機開発の進捗を記します。 当初想定 & 現在の課題当初はvgssdk-picoをベースにしたRaspberryPi Zero(ベアメタル)用の新しいSDK(vgssdk-zero)を…

Yoji Suzuki
7か月前
5

RaspberryPi Zero のベアメタル環境で動くMSXエミュレータを作ってみた

私が開発している micro MSX2+ という組み込み用MSXエミュレータで、RaspberryPi Zeroシリーズのベアメタル環境での動作に対応してみました。 対応したのはRaspberryPi Ze…

Yoji Suzuki
7か月前
9

M5StampS3でUSBキーボードを動かしてみる

以前Qiitaの方でM5StampS3に3.2インチのLCD(ILI9341)を繋ぎ、自作のMSXエミュレータを動かして音を鳴らすところまで記事化しました。 Part 1: まずは機材調達や配線など…

Yoji Suzuki
7か月前
6

RaspberryPi Zeroで自作ゲーム機を作るための下準備(環境構築+基礎知識)

以下の記事で、自作アケコンをベースにしてRaspberryPi Zeroを使って自作ゲーム機の開発を妄想しました。 下図のようにアケコンケースにゲーム機本体を収納した形のものを…

Yoji Suzuki
7か月前
1
固定された記事

東方BGM on VGS(実機版)

私は、2013年の春先頃から東方BGM on VGS(東方VGS)というスマートフォンアプリ(iOS, Android)を配信しています。 VGSとは、2012年ごろに私が開発した波形メモリ方式のチップチューン音源です。 そして、東方VGSは東方Projectの楽曲をVGS向けに耳コピ&アレンジしたものを配信するスマホアプリ(東方Project二次創作)です。 2013年〜2016年の間、当時の東方Projectの二次創作ガイドラインではスマホでのマネタイズがグレーだっ

自転車のコンポーネント交換

以下の記事でも少し触れた昨年購入した中古自転車のコンポーネントを9速のTiagra(R4500)から前世代の105(R5800)に自力換装してみました。 具体的に交換したコンポーネントは以下の12点です。 STIレバー(変速やブレーキのレバー)※中古 クランク(フロントギア+ペダルのアーム)※中古 前後両方のブレーキ ※中古 フロントディレイラー(フロントギアの変速装置)※中古 リアディレイラー(リアギアの変速装置)※中古 カセットスプロケット(リアギア)※中古

底辺ユーチューバーを目指してみる話

VGS-ZeroでNSF形式をサポートしましたが、FamiStudioの操作に慣れる目的で東方紅魔郷の全17曲をRP2A03(拡張音源無しのファミコン本体音源)縛りで作ってみました。 当初、純粋なFamiStudioの練習目的で始めた試みですが、折角なのでFamiStudioの動画エクスポート機能を使って出力した動画(東方NSF)をYouTubeで公開してみました。 赤より紅い夢 ほおずきみたいに紅い魂 妖魔夜行 ルーネイトエルフ おてんば恋娘 上海紅茶館 ~

VGS-Zero で NSF(ファミコン形式の音声)の再生に対応

VGS-ZeroカーネルでNSF(NES Sound Format)形式のBGMの再生をサポートしてみました。 従来のVGS(Video Game Sound)形式のサポートも継続していて、追加の音源フォーマットとしてファミコン音源に対応してみた形です。 なお、拡張音源はVRC6(KONAMIのSCC相当の波形メモリ音源)だけサポートしていて、VRC7(OPLLのFM音源)、FME7(AY-3-8910のPSG音源)、MMC5(拡張メモリマッパー)、FDS(ディスクシステ

VGS-Zero版Battle Marineをゲームギアに移植している件

Steamで販売中のVGS-Zero版Battle Marine(以下)を現在ゲームギア(GG)に移植中です。 GG版の進捗はTwitterの方でだいたいデイリー頻度で呟いています。 VGS-Zero とゲームギアは全く異なるゲーム機ですが、VGS-Zeroを開発する前段階でゲームギアやMSX(TMS9918A)のエミュレータを作ってVDPの仕様を学習した関係で、アーキテクチャの細部にそれらのDNAのようなものが意図せず組み込まれているのかもしれません。(互換性はありませ

VGS-Zeroができるまでの流れ

無事、VGS-Zeroのローンチタイトル「Battle Marine」をSteamでリリースすることができました。 Qiitaの方でVGS-Zeroの技術中心の紹介記事を投稿してます。 本書は、どういった経緯でVGS-Zeroが開発されたのかを時系列でまとめてみました。 プロローグ2016年ごろ、当時の勤務先の会社で「ゲームプラットフォーム事業を立ち上げる」とのことで事業の方向性を検討するブレストに参加して、その席で「新しいゲーム機作りたいッス!!」と発言したところ、発

Battle Marine 開発記 Part 2

RaspberryPi Zero 2W で動作する自作ゲーム機「VGS-Zero」のローンチタイトル「Battle Marine」の開発状況を記します。 1月1日〜1月5日(過去分)今のところ、1月1日から11日連続で日々ツイートを継続中です。 1月6日 メインBGM作曲そろそろ効果音を入れていきたかったのですが、効果音を入れるためには音楽が必要です。 音楽無しで効果音を入れてしまうと音量バランスが想定外になってしまい、効果音の演出が意図した通りにならないことがよくある

Twitterで日々のゲーム開発進捗をツイートしてみる

VGS-Zero版Battle Marineの開発状況をツイッター(X)で日々報告してみるようにしているところです。 ツイッター上で色々なクリエイターさんが実践されているヤツの真似事ですね。 ゲーム開発内容を短文で説明するのが大変なので、短い動画付きツイートをするようにしています。(別に動画縛りという訳ではないですが、今の所100%動画ツイートのみ) 動画ならSlack等のチャットでも齟齬が無く伝わり易いので、本業(※フルリモート)の方でもガリガリ活用していることもあり

VGS-Zeroをリリース

2024年1月1日に自作ゲーム機「VGS-Zero」のバージョン1.0.0をリリースしました。 VGS-Zeroの特徴をざっくり挙げると、 RaspberryPi Zero 2W(ベアメタル環境)で動作 HDMI接続によりテレビに映像と音声を出力 カーソル(D-Pad)、A/Bボタン、Start/Selectボタンの8ボタン式(ファミコン方式)のUSBゲームパッドでの入力に対応(キー割当のカスタマイズ可) 16MHz の Z80 (8bit) CPU搭載 BG/F

RaspberryPi Zero 2W の限界を探る

現在、RaspberryPi Zeroのベアメタル環境で動作する自作ゲーム機VGS-Zeroを開発中です。 VGS-Zeroは、メインコアにZ80を搭載しています。 Z80のクロックレートとしては3,579,545Hz(Z80A)が有名ですが、VGS-Zeroは通常のエミュレータ開発とは異なり過去のソフトウェアとの互換性を気にする必要が無いので、敢えてそのクロックレートに拘る必要がありません。 そこで、VGS-ZeroのZ80はRaspberryPi Zeroのベアメタ

FCS80→VGS0

RaspberryPi Zero (ベアメタル環境)で動作する自作ゲーム機の開発状況です。 前回までのあらすじベアメタル環境で開発するのに際して、ユーザープログラムのライセンス上の課題(GPL汚染)を回避するため、FCS80という過去に開発した架空のゲーム機エミュレータを用いて開発を進めることにしました。 FCS80は通常、Z80アセンブリ言語でゲームを開発しますが、より効率的にゲーム開発できるようにするため、C言語対応を進めていました。 新たなる課題(性能)アセンブリ

FCS80のC言語クロスコンパイル対応(SDCC)

以下の記事の続きです。 FCS80(自作の架空ゲーム機)のプログラミングを、Z80アセンブリ言語だけではなくC言語でもできるようにしてみました。 Z80クロスコンパイラの選定Z80用のCクロスコンパイラとしては、z88dkとSDCCの2つが有名です。 どちらかといえばz88dkの方が情報量が多いので主流だと思われますが、今回は敢えてSDCCを採用しました。 z88dkを採用しなかった理由z88dkはコンパイル(zccコマンド実行)時にターゲットオプションを指定する必要

自作ゲーム機の開発進捗

現在妄想中の自作ゲーム機開発の進捗を記します。 当初想定 & 現在の課題当初はvgssdk-picoをベースにしたRaspberryPi Zero(ベアメタル)用の新しいSDK(vgssdk-zero)を開発する気マンマンだったのですが、ベアメタル環境での開発が思っていた以上に大変だと実感しているところです。 しかし、幸いなことにRaspberryPiであればCircleというOSSを使えば比較的簡単にベアメタル開発ができます。 そこで、Circleの試食を兼ねてmic

RaspberryPi Zero のベアメタル環境で動くMSXエミュレータを作ってみた

私が開発している micro MSX2+ という組み込み用MSXエミュレータで、RaspberryPi Zeroシリーズのベアメタル環境での動作に対応してみました。 対応したのはRaspberryPi Zeroの全シリーズ(無印、W、WH、2W)です。 以下、RaspberryPi Zeroの無印、W、WHを「Zero1」、RaspberryPi Zero 2Wを「Zero2」と表記します。 MSXエミュレータとはいってもエンドユーザ向けのもの(OpenMSXやWebM

M5StampS3でUSBキーボードを動かしてみる

以前Qiitaの方でM5StampS3に3.2インチのLCD(ILI9341)を繋ぎ、自作のMSXエミュレータを動かして音を鳴らすところまで記事化しました。 Part 1: まずは機材調達や配線など Part 2: 描画速度を実用的にする Part 3: 自作MSXエミュレータ(micro MSX2+)を動かす Part 4: DAC(UDA1334A)を繋いで音を鳴らす 本書は上記の続きで、USBキーボードを繋いでキー入力できるようにする方法を記します。 部品調

RaspberryPi Zeroで自作ゲーム機を作るための下準備(環境構築+基礎知識)

以下の記事で、自作アケコンをベースにしてRaspberryPi Zeroを使って自作ゲーム機の開発を妄想しました。 下図のようにアケコンケースにゲーム機本体を収納した形のものを想定しています。 本記事では、この妄想の実現に向けた下準備の内容を記します。 RaspberryPi Zeroの準備まず、本書執筆時点ではRaspberryPi Zeroを持っていないので、とりあえず以下の3点を発注しました。 RaspberryPi Zero(以下、無印Zero) Raspb