見出し画像

Raspberry Pi Zero2で作るPC-9801!エミュ”NP2kai”を使ったらBGMノイズが解消されたよ!

Raspberry Pi Zero2の購入

やっと買えましたRaspberry Pi Zero2

半導体不足なのか、
しばらく定価で購入ができませんでした。

が、
ここにきて流通が回復したようです!

ついに、公式販売店で購入できました!

念願のZero2!待ってました!!嬉しい!!!
ほぼ3000円でお手頃?!
送料入れたりで4000円弱っす。

Zero2はZeroの5倍の性能

処理性能はZeroの5倍ですって!

かねてより悩みがありまして。

Raspberry Pi Zero上で
PC98を動かすため
"np2pai"をインストールしましたが
動かすと、BGMノイズが気になります・・・。
(BGMの始まりに必ずノイズが載るみたい)

同じ内容を、Zero2でも試したのですが、
あえなく撃沈・・・。
相変わらず、BGMにノイズが載ります。

こうなると、
エミュの"np2pi"がダメなのかなぁって。
(np2piの作者様すみません・・・)

ってことで、
今度はNP2の別系統である"NP2Kai"をZero2で色々試してみました!
(ちなみにNP2Kaiは、Zeroだと処理性能不足で
 かなりもっさりしてしまい・・・
 遅すぎて遊ぶどころではありませんでした)

試した結果(Zero2で検証)
× NP2Kai GTK2版 × Raspberry Pi OS bullseye
  フルスクリーンだとZero2でもパワー不足
  GUIモード上で動くのでそもそも遅い。

× NP2Kai SDL2版 × Raspberry Pi OS Lite bullseye
  マウスカーソルがほとんど動かない。
  Raspberry Pi OS Lite bullseyeと
  SDK2の相性の問題かなぁ・・・。

× NP2Kai SDL1版 × Raspberry Pi OS Lite bullseye
  画面が2重になって操作できない
  Raspberry Pi OS Lite bullseyeと
  SDK1の相性の問題かなぁ・・・。

◎ NP2Kai SDL2版 × Raspberry Pi OS Lite buster
  画面フルスクリーンでも
  Zero2なら動作速度に問題無し!

以上から、今回はZero2で
NP2KaiのSDL2版 × Raspberry Pi OS Lite buster の構築手順を紹介します!

Raspberry Pi OS Lite busterの構築

Raspberry Pi OS Liteのインストール

PI Imager*をダウンロードしよう。
*SDカードにOSイメージを展開するツールです

今回使うライブラリ「SDL2」は、
Raspberry Pi OSの中でも
2世代前の古いバージョン「buster」でないと
マウスカーソルがほとんど動かない。

だから、
古いバージョンのOSイメージを以下からダウンロードしよう。
ファイルは「2023-05-03-raspios-buster-armhf-lite.img.xz」です。

ダウンロードできたら、
Pi Imagerを起動します。

RaspberryPiデバイスは「RASPBERRY PI ZERO2」を選択し、
さらにOSは「カスタムイメージを使う」を選択して

イメージを選ぶでは上記でダウンロードしたOSイメージ「2023-05-03-raspios-buster-armhf-lite.img.xz」を選択しよう。

ストレージはMicroSDカードをPCに挿して*、
*自分はMicroSDカードをUSB変換するアダプタでPCに認識させてます

Pi Imagerのストレージでは上記のUSB変換アダプタを指定します。
*自分の場合はUSBメモリとしてPCは認識してます

「次へ」を押すと
カスタマイズ設定する?って聞いてくるので「いいえ」で。

「はい」を押す。

しばらく待つと、
SDカードへの書き込みが終わるので「続ける」ボタンを押す。

SDカードをRaspberry Pi Zeroに挿して

Raspberry Pi Zeroを起動しよう。
*PI OS Lite busterの
 初期OSユーザは「pi」、パスワードは「raspberry」

Raspberry Pi OS Liteの初期設定

PI OS Liteの初期設定として以下を実施すること。
・「WiFi」の設定
・「SSH」の有効化
・「キーボード」の日本語キーボードへ変更
・「自動ログイン」の有効化

以下のコマンドで上記の4つの設定を入れよう。

sudo raspi-config

まずは、Wifi設定
[1 System Options]からの[S1 Wireless LAN]設定へ

JP Japanを選んで

Okで

SSID入れて

パスワードいれてOkね

SSH有効設定
[3 Interface Options]からの[P2 SSH]

Yesで

Okで

キーボード設定
[5 Localisation Options]からの[L3 Keyboard]

Generic 105-key PC (intl.)を選んで

Otherで

Japaneseを選んで

Japanese-Japanese(OADG 109A)を選び

defaultで

No compose keyで

自動ログイン
[1 System Options]からの[S5 Boot / Auto Login]を選び、

B2 Console AutoLoginを選ぶ。

4つの設定が出来たら、SSHによるリモートで設定しよう。
(その方が本記事からコピペできて楽だからね)

その前に以下コマンドでIPは調べよう。

ip a

NP2Kai SDK2版構築

TeraTermでPI OS Liteに接続しよう。

必要ライブラリインストール

sudo apt-get update
sudo apt install git cmake ninja-build build-essential libx11-dev libglib2.0-dev libgtk2.0-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev  libusb-1.0-0-dev libfontconfig1-dev libssl-dev

NP2kaiインストール

cd ~
git clone https://github.com/AZO234/NP2kai
cd NP2kai
mkdir build
cd build
cmake .. -D BUILD_SDL=ON
make -j3
sudo make install

Raspberry Pi Zero2 オーバークロック

CPUオーバクロック設定

sudo nano /boot/config.txt

以下を[all]の下に追記

over_voltage=4
arm_freq=1300
core_freq=500

PC9801起動準備

PC9801のフォントを配置

以下コマンドでフォルダを作っておく。
*「~/」は、ログインユーザのホーム「/home/pi/」であり、
 「~/.config/sdlnp21kai」は今回構築するNP2Kaiの初期フォルダ位置になる

mkdir ~/.config
mkdir ~/.config/sdlnp21kai

Windows版のNP21Wをダウンロードして解凍し、

解凍フォルダの中のbinフォルダの中のnp21w.exeを起動する*と

*起動の際に「WindowsによってPCが保護されました」ってなったら、
「詳細情報」リンクをクリックすると実行ボタンが現れるよ!

「font.tmp」ってファイルができる。

そのファイルをリネームする。
「font.tmp」⇒「font.bmp」

そうしたら、WinSCPを使ってファイルを転送しよう。
まず、ログインし、

メニュー>オプション>環境設定で

パネル>「隠しファイルを表示する」にチェックを入れて
OKぽちー。

これで隠しフォルダが見えるようになるから、
以下隠しフォルダに「font.bmp」をコピー。
 /home/pi/.config/sdlnp21kai

PC9801のソフトウェアを配置

以下コマンドでフォルダを作っておく。

mkdir ~/.config/sdlnp21kai/soft

上記で作成したフォルダ「/home/pi/.config/sdlnp21kai/soft」の中に
ソフト名のフォルダを作って、
PC9801のFDイメージファイルを転送しよう。

FDイメージファイルを転送しよう。

転送できました。

PC9801自動起動の設定

nano ~/.bashrc

一番下に以下のように記述しよう。

cd /usr/local/bin/
./sdlnp21kai

再起動

sudo reboot

BGM遅延を最小化

NP2Kaiが起動するから、F11を押して、

Emulate>Configureを選択し、

SoundのBufferを一番左へ下げよう。
最小は20msのようだ。

OKボタンを押して

Emulate>Resetで再起動しよう!

さぁ、遊ぼう!

F11キーでメニューバーが出るから
FDDにフロッピディスクを指定しよう。

FDDがセット出来たら、
Emulate>Resetで。

おぉ。動いた!

キャラを作って・・・

冒険!楽しいね!(ソーサリアン)

あと、悩みだった
BGMノイズはまったく無し!
ソーサリアンの美しいBGMにうっとりです!
嬉しい!

今回は以上です。
では、また!

いいなと思ったら応援しよう!