Skip to content

kemusiro/jr100-emulator-v2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JR-100 Emulator version 2

松下電子工業が1981年に発売した8ビットマイコンJR-100のエミュレータのバージョン2です。

前提条件

  • Java SE 12以上のJava実行環境
  • JR-100実機

インストール

1. エミュレータの最新版ZIPファイルをダウンロードする。

Releasesから最新版のZIPファイルをダウンロードします。ファイル名はjr100v2-2.x.x.zipという形式です。

2. zipファイルを解凍する。

適当なフォルダ内にダウンロードしたzipファイルを解凍します。

3. JR-100 BASIC ROMのデータを用意する。

JR-100実機からBASIC ROMデータを読み出して、JR-100エミュレータ用のPROG形式のファイルに格納します。読み出しにはJR-100 Emulator Libraryのfskloaderコマンドを使うのが便利です。コマンドの詳細はFSK Loaderのマニュアルを参照してください。ここではBASIC ROMの読み出し方を抜粋します。

取り込み環境の作成

JR-100とオーディオキャプチャデバイスを接続します。キャプチャ条件は以下を推奨します。

  • サンプリング周波数: 22050Hz
  • サンプリング ビット数: 16bit
  • チャンネル数: 1 (モノラル)

JR-100 Emulator Libraryのインストール

JR-100 Emulator LibraryはPython 3.7以上の実行環境が必要です。あらかじめPC上にPython環境を構築してから、pipでパッケージをインストールします。これによりPythonパッケージと音声データ取り込み用のコマンドfskloaderがPC上にインストールされます。

$ pip install jr100emulib

JR-1oo上でBASIC ROM領域をセーブ

PCでキャプチャ開始してから、JR-100上でBASIC ROM領域($E000〜$FFFF)全てをマシン語データとしてセーブするコマンドを実行します。MSAVEで指定するプログラム名(この例ではJR100ROM)は任意の文字列で構いません。

MSAVE "JR100ROM", $E000, $FFFF

セーブが完了したらキャプチャを停止し、音声データを以下の内容でファイルに保存します。現時点でFSK LoaderはMP3には未対応です。

  • ファイル名: jr100rom.wav (任意で良いです)
  • ファイル形式: WAV形式 (必須)

WAVファイルから取り込み

fskloaderコマンドに先ほど保存したWAVファイルを指定し、jr100rom.prgというファイル名でPROG形式のファイルに保存してください。

$ fskloader jr100rom.wav -o jr100rom.prg

4. JR-100のBASIC ROMファイルをコピー

あらかじめ用意しておいたJR-100のBASIC ROMファイルをjr100rom.prgというファイル名で、ZIPファイルを解凍したフォルダ直下に格納します。

jr100v2 -+- external -+- jinput.jar         # ゲームパッド用ライブラリ
         |            +- README-jinput.md   # jinputのREADME
         |            +- nativelib -+- jinput-dx8.dll    # ゲームパッド用ライブラリ(ネイティブ)
         |                          +- jinput-dx3_64.dll
         |                          +- jinput-raw_64.dll
         |                          +- libjinput-linux.so
         |                          +- libjinput-linux64.so
         |                          +- libjinput-osx.jnilib
         +- jr100v2.jar   # エミュレータ本体
         +- jr100v2.sh    # エミュレータ起動用シェルスクリプト(macOS, Linux)
         +- jr100v2.vbs   # エミュレータ起動用シェルスクリプト(Windows)
         +- jr100rom.prg  # JR-100 BASIC ROMデータ
         +- manual.jar    # エミュレータ画面から呼び出すマニュアル

実行方法

jar100v2.jarを実行してください。

$ java -Djava.library.path=./external/nativelib -jar jr100v2.jar

なおOS毎に同梱のシェルスクリプトを実行するのが便利です。

  • jr100v2.vbs (Windows)
  • jr100v2.sh (macOS, Linux)

アンインストール

解凍したフォルダを丸ごと削除してください。このフォルダ以外の場所にファイルを作成することはありません。

ライセンス

JR-100 Emulator

JR-100 Emulator version 2 is licensed under the MIT License. See the LICENSE file for details.

JR-100 Emulator version 2はMITライセンスの元にライセンスされています。詳細はLICENSEを参照してください。

JInput

Licensed under BSD License, copyright is attributed in each source file committed.

ゲームパッドからの入力を処理するためにJInputのJARファイル及びDLLファイルを取り込んでいます。