投稿

HB-F500 で USB無線キーボードを使う

イメージ
 HB-F500では付属のキーボードを持ってなくて、 PS/2変換器を使っていた のだけど、X68やPC98でUSB変換器を一部導入したのに合わせ、HB-F500のもUSB変換器にしたくなった。  PS/2変換   USB変換 HRA! さん( @thara1129 )が Raspberry Pi Pico を使った変換器を公開してくれています。感謝! ・ usb_keyboard_bridge_for_msx (msx_tools)      GitHub ※ 自分でビルドせずに、とりあえず 無線キーボードに対応したHB-F500用のバイナリ(uf2)が欲しい人は「 2.USB無線キーボード対応 」にあるファイルをダウンロードしてください。 1.HB-F500用にビルド  公開されてるビルド済みのファームウェアはHB-F500では使えないので設定を変えて自分でビルドします。 こちらのプログを参考にさせてもらいました。と言うか同じことやってます。 ・ KZ80-USBKBD用 RaspberryPi Picoオブジェクトビルド方法      KUNINET BLOG 環境はWindows 11 で Microsoft Store からインストールした Ubuntu 22.04.5 LTSです。 コンパイラ等のインストール   sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi build-essential  ※詳細は詳しいサイトがいっぱいあるのでそちらで。。 msx-tools のソースを取得   git clone https://github.com/hra1129/msx_tools.git ソースをHB-F500用に修正  usb_keyboard_bridge_for_msx.c (msx_tools/usb_keyboard_bridge_for_msxフォルダ内)のパラメータをテキストエディタで以下のように修正   #define MSX_KEYMATRIX_ROW_TYPE 2 pico-SDK と cmake環境用にサンプルの取得  とりあえずSDKのバージョンが判るようにフォルダ作って バージョンを指定して取得   mkdir pico_sdk120   cd pi...

PC-9821 V166 流星モデルの音源ボードを86音源化

イメージ
  PC-9821 V166/200 の標準音源ボードでFM音源を鳴らせるのはWindows上だけらしい。ただし、 流星モデル と言われる前期型の音源ボードには、どう言うわけかFM音源チップ用の未使用回路があって パーツを追加すればMS-DOS上でFM音源が使用できる ようになるという、てことでやってみた。 ※86音源互換ですが大きな違いとして、使用するYMF288にはYM2608にあるPCM機能がないとのこと。FMPであればWSSのPCMを使用可能。CanBe音源とも呼ばれる(?) パーツの追加方法等は、こちらのブログで解説されてました ・ Lost Technology          https://madscient.hatenablog.jp/  「 9821バリュースター(流星型)の音源ボードにYMF288が載る件(その2) 」 1.パーツの追加 ブログの通りなのですが補足も含め (1)表側   ・ 音源チップ : YMF288-M ・ DAC :オリジナルは uPD6379 のようですが、uPD6379A、BU980F等も使用可  ・ブログ作成時はBU980Fが入手しやすかった   uPD6379A/BU980Fを使用する場合は   (1)ピン配置 がuPD6379とは 異なる  ・uPD6379とはピン配置が180度違うので基板のマークの取り付け方向とは逆に取り付ける(仕様書確認)   (2) 音声の 左右が入れ替わる ので対策が必要   方法1 :ICの左右の出力ピンと基板のランドをビニル電線等で逆付けするなど   方法2 :uPD6379A/BU980FへのLRCKをインバータIC(74AHC1G04等)で反転させて入力する。(この方法だと左右で位相が1サンプル ズレる。uPD6379と同等) ・ アルミ電解コンデンサ 等:16V47uF x1 ・ チップ抵抗 (1608)  ・100 Ω x3  ・10k Ω x1 ・ チップコンデンサ (1608)  ・0.1u F x2 (2)裏側   ・ チップ抵抗 (2012)  ・36k Ω x2  ※個体差か判りませんが36kΩだと音が小さい。3.6kΩ程度で良さそう。 ・ チップコンデンサ (3216)  ・1u F x2 2.FM音源の使用方法   電源投入やリセット時 の初期設定が FM音...

ArdSCSino Plus CD-DA対応版

イメージ
  ArdSCSino は たんぼ (TNB製作所)さんが Arduinoで開発され、 zato さんにより ArdSCSino-stm32 として STM32F103C8T6( Blue Pill )に移植されました。 ・ TNB製作所 ( twitter )         http://tnb216.html.xdomain.jp/ ・ ArdSCSino-stm32 ( twitter )      https://github.com/ztto/ArdSCSino-stm32   ArdSCSino Plus は ArdSCSino を 独自に機能拡張 してきたもので、最新版で 音楽CD等の音楽データ(CD-DA)の出力に対応しました。 ※ArdSCSinoは SCSIデバイスエミュレータで、現在では入手困難となった磁気媒体のSCSIハードディスクにかわり、イメージ化した(実際のハードディスクの内容全体を一つのファイルにバックアップした)ファイルを実際のハードディスクのように使用することができます。 ArdSCSino Plus CD-DA対応版 の特徴 ・ハードディスクイメージは、ベタイメージ、NHD、HDI形式に対応 ・カードスロットが2つあり 一方を疑似MOメディアとして使用可能(最大容量2GBで他PCとのデータ交換で重宝) ・疑似MOメディアはホットスワップ(PC動作中の抜き差し)が可能 ・CDイメージの、 CUE 、 CCD (CloneCD)、 CDM (CD Manipulator)ファイル に対応 ・CDDA(音楽CDデータ)の再生対応(FM TOWNSやPC98のCD-ROMソフトをイメージ化して遊ぶ!)   表   裏   X68   PC98  ケーブルの煩わしさがないコネクタ直結タイプですが、本体の背面になると SD延長ケーブルがあったほうが SD(疑似MOメディア)カードの交換がしやすい。ただ 長すぎると認識されなくなる可能性もあります。 1.使用方法 ※基板裏面の ハードディスクイメージ等を入れる スロットを SD1 、表面のスロットを SD2 とします。 ※ SD2 の 第1 パーティションを SD2-1 、 第2 パーティションを SD2-2 とします。 (1)SD1スロット 用カード  SD1用のカードはFAT32ま...

ArdSCSino のCD-DA(音楽CD)、CUE/CCD/CDMファイル対応

イメージ
 CD-DAは音楽CDなどの音声データ記録方式のことで、今回、ArdSCSinoで音楽CDなどのイメージファイルから 音声(音楽)を再生できる ようにしました。 ※今までのArdSCSinoでもISO形式などCDイメージは扱えます。  CD-DAの音声データは ゲームなどのCD-ROMでも使われています。 レトロPCでは 世界初CD-ROM標準搭載パソコン FM TOWNSの多くのソフトで使われるほか、 PC-98でもCD-ROMで発売されたソフトの一部(ポリスノーツ等)で使われています。 また、合わせてCD-DA対応に必要なCDイメージの CUE ファイル、 CCD (CloneCD)ファイル、 CDM (CD Manipulator)ファイル に対応 しました。 ・ X68 ゆみみえっくす         https://x.com/tomo_retro/status/1782042087955050702 ・ FM TOWNS アフターバーナー     https://x.com/tomo_retro/status/1784535737565909203 ・ PC-98 WinodwsのCDプレーヤー    https://x.com/tomo_retro/status/1791433842433438046 ・ PC-98 PC-FXGA on WIndows     https://x.com/tomo_retro/status/1794347347922894973 1.CDイメージの指定方法 ※CDドライブは1ドライブのみ 設定可能です。 例:   CD60_CDIMAGE.CUE    または、CD60_CDIMAGE.CCD、CD60_CDIMAGE.CDM CD60_CDIMAGE.IMG    または、CD60_CDIMAGE.BIN、CD60_CDIMAGE.ISO ・先頭 “ CD ”は固定 ・次の数字は SCSI ID と LUN ID を指定。SCSI ID は 0~6 、LUN ID は 0 を指定します。 その後は任意で文字を付けられます。※ファイル名は 拡張子を含め最大64文字 ・CUE/CCD/CDMファイルがある場合はIMG/BINファイルと同名(拡張子除く)にしてください。 CUEファイル内のファイル名は使...

FM TOWNS 用 RS-MIDI アダプタの製作

イメージ
※ここでのRS-MIDIは、RS-232C 25pin –> TRS A(MIDI 5pin) の出力のみです。  FM TOWNS用のMIDIカード(ボード)が なかなか入手できないので RS-MIDIアダプタを自作。FM TOWNSでは TownsOS標準の MIDIプレーヤー(EUPプレーヤー)や、市販ゲーム(ジェノサイド)も RS-MIDI対応していたりで標準的位置付けっぽい? ネットで探したら、こちらのサイト情報によると「 バックアップ活用テクニック PART28 」に製作記事があるとのこと ・ yu_izumi’s blog              https://yu-izumi.hatenablog.com/  (“月別アーカイブ” –> “2019/10” –> “ FM-TOWNSでのRS-MIDI ”) ・ バックアップ活用テクニック PART28     Amazon  RS-MIDIアダプタの自作は他機種でも行われてるので色々と作り方があるようですが、TOWNSでは クロック (31.25kHz)を 外部から PC本体に 供給する必要がある のが違いで、面倒なところのようです。今回 クロックの生成にはPICを使いました。   自分では (部品数も少ない方が良いし)MIDI出力しか使いませんが、PICも RS-232C I/F IC も未使用ピンがあるので 必要なら MIDI IN等の機能も追加できるかと思います。 回路図  ピンヘッダはPICへのロジック書き込み用  MIDI出力は MIDI TRS AタイプなのでMIDI DIN 5ピンへの変換が可能です PIC用ソース       main.c PIC用hex        pic12_rsmidi_clock.hex  クロックを出力してるだけです  TOWNS  X68  ちなみにTowns のMIDI対応 市販ゲームは ジェノサイドしか判っていません。MIDI対応 有無の一覧とかあると良いんですけどね。同人ゲームでは「RUMSTORM」「ドラゴンの秘宝3・4」がMIDI対応しているとの情報を頂き試したのですが RS-MIDIでは鳴らないようでした。標準ソフト等が対応していて 同人ソフトが対応していない?のは ちょっと意外ですが。  X68000のMIDI対応 市...

ArdSCSino Plus (STM32F4) の PlatformIO でのビルド

イメージ
前提 :ArdSCSino(STM32F1) がビルドできるていること。  これは ネット情報など調べれば難しくないと思いますので省略。 1.PlatformIOのパッケージ(framework-arduinoststm32-maple)ソースを修正 (1) platformio-build-stm32f4.py フォルダ: C:\Users\ユーザ名\.platformio\packages\framework-arduinoststm32-maple\tools 追加修正内容:   <貼り付け用テキスト> "netduino2plus": "discovery_f407", "genericSTM32F401CC": "blackpill_f401", "genericSTM32F411CE": "disco_f411",   <貼り付け用テキスト>                 "build.arduino.error_led_pin", "PC13")) #                "build.arduino.error_led_pin", "PD14")) (2) blackpill_f401.h フォルダ: C:\Users\ユーザ名\.platformio\packages\framework-arduinoststm32-maple\STM32F4\variants\blackpill_f401 追加修正内容:   <貼り付け用テキスト> #define BOARD_SPI1A_NSS_PIN      PA15 #define BOARD_SPI1A_SCK_PIN      PB3 #define BOARD_SPI1A_MISO_PIN     PB4 #define BOARD_SPI1A_...

ArdSCSino Plus

イメージ
 ArdSCSino の個人的な(一応の)完成形として ArdSCSino Plus を作成。要は「 ArdSCSino-stm32 を改良してみた(その3) 」で追加した機能、MO(SD)専用モード用に カードスロットを独立(追加)させたものです。実は「 ArdSCSino-stm32 を改良してみた (その2) 」「(その3)」は  Plus の作成過程で出来た副産物的なものでした。 ArdSCSino 「 SCSI / SASI エミュレータ の ArdSCSino を導入 」 ArdSCino Plus は カードスロットを2つ にしたことで、 HDD(イメージ)を使用しつつ MOディスクに見立てた SDカードで 動作中に 他PC等と の ファイル交換が可能 です。  (表面)   (裏面)     コネクタ直結タイプだと本体の背面になるので SD延長ケーブルがあったほうが SD(MO)カードの交換がしやすい。ただ 長すぎると認識されなくなる可能性もありますが。。SCSIケーブル接続タイプのも良いかな。  マイコンは 機能的な問題(ピン不足)のため BluePillの上位版の BlackPill と言われるものに変更してます。 使用方法 1. 裏面のカードスロットについて  SDカードは ArdSCSInoの通常の使い方と同じでハードディスクイメージ等を入れます。また、表側の カードスロットをMO(SD)ドライブとして認識させるために SD50_IN.TXT ファイル(SCSI IDは任意に設定可)を入れます。 ・X68の場合の参考例   HDDイメージは以下の形式が使用可能です。 ・HDS, HDN, h0等のベタイメージおよび、 NHD, HDI CD-ROMイメージは以下の形式が使用可能です。(認識できない場合もあります) ・ISO 詳細は以下のページ等を参照願います。 「 ArdSCSino-stm32 を改良してみた 」 「 X68000 / X68030 で ArdSCSino を使う 」 「 PC-9801 / 9821 で ArdSCSino を使う 」 2. 表面のカードスロットについて  SDカードは MOとして認識され使用可能です。ホットスワップ( 動作中の抜き差し)ができる のでPCとのファイル交換が容易になると思います。...