USB制御ファームウェアについて

GIMICをPCから制御するファームウェアです。
USB制御を行うには専用ファームウェアの導入、PC側へ専用ドライバの導入、PC側アプリケーションから制御する為の中継ソフトウェアの導入が必要です。

対応OSはWindowsXP 32bit、WindowsVista 32/64bit、Windows7 32/64bit、Windows8 32/64bitです。
なお各OSは最新のサービスパックが適用され、Microsoft Updateで最新の状態に更新されていることを前提条件としています。
意図的にサービスパックを適用していない、Microsoft Updateを実施していないような環境での動作検証は一切行っていませんのでご注意下さい。

ファームウェアのアップデート方法についてはこちらをご確認下さい。
なお、ファームウェアのアップデート作業は自己責任でお願い致します。

更新履歴

最新版ダウンロード

初代マザーボードと2代目マザーボードでファームウェアが異なりますので間違えないようにご注意下さい。

このファームウェアを書き込むとGIMIC単体での演奏は一切できなくなりますのでご注意下さい(スタンドアロンFWの上位版ではありません)

※上記FW及び下記ドライバを使うことで初代マザーボードと2代目マザーボードの併用が可能になります。
 ただし接続するUSBポートは必ず同じUSBコントローラの配下である必要があります。
 マザーボードに複数のコントローラ(USB2.0とUBS3.0など)が搭載されているPC、USB増設ボード・カードを搭載しているPCはご注意下さい。

専用ドライバの導入

C84より頒布を開始した2代目マザーボード及び、2013/09/02公開の初代マザーボード用USB制御FWから専用ドライバの導入が必要になりました。
ただしWindows8はOS標準でドライバが導入されている為不要です。WindowsXP,Vista,7の場合は以下のドライバを事前にインストールして下さい。

※32bitOSではdpinst-x86.exeを、64bitOSではdpinst-amd64.exeを実行して下さい。

中継ソフトウェアの導入

PC上のアプリケーションからGIMICを制御する為には中継ソフトウェア(c86ctl)の導入が必要です。
以下よりc86ctlをダウンロードして下さい。

※32bit版と64bit版を同梱していますが、現状c86ctlを使う対応ソフトは全て32bitです。32bit版をお使い下さい。

またc86ctlはVC2010のランタイムを必要とするので以下をインストールし、MicrosoftUpdateを行って最新の状態にアップデートして下さい。
なおご利用のOSに関わらず、全て32bit版(ファイル名に_x86が含まれる物)をインストールして下さい。

旧バージョンダウンロード

※必ず2012/02/20版のc86ctlとセットで使って下さい。またMB2との混在はできません。

PCとの接続方法

ファームウェアの書き換えが終わったらUSBケーブルをGIMICの左側のUSBポートに接続して下さい。
なお2代目マザーボードではUSBコネクタは1つに統一されました。ファームアップが終わったらリセットボタンを押すかUSBケーブルを再接続して下さい。

gm002.jpg

GIMICを利用可能なソフトウェアのご紹介

これよりご紹介させて頂くソフトウェアはGIMIC Projectによる制作物ではなく、第三者の方々が制作・公開された物になります。
これらのソフトウェアなくしてGIMICのUSB制御は成り立ちません。制作・公開に携わられた方々のご尽力に感謝致します。

※お願い事項※
GIMICのUSB制御は試行錯誤の段階である物をプレビューリリースとして公開しています。全ての環境で動作する保証は一切ございませんのでご了承下さい。
GIMIC Project公式以外の作者様へのお問い合わせはご遠慮頂けますようお願い致します。

hootを利用したGIMIC制御

hootとはDMP SOFT.さんが作成された、一昔前のパソコンやコンシューマゲーム機のハードウェアをエミュレートし、当時のゲームミュージックを再現する為のソフトウェアです。
OPN3L、OPNA、OPM、OPL3モジュールに対応しています。

更新履歴

導入方法

DMP SOFT.さんのサイトよりhoot(2013/06/02版)をダウンロードして任意のフォルダに解凍して下さい。
またhootはVC2005とDirectXのランタイムを必要とするので以下をインストールし、MicrosoftUpdateを行って最新の状態にアップデートして下さい。
なおご利用のOSに関わらず、全て32bit版(ファイル名に_x86が含まれる物)をインストールして下さい。

hoot.exeが入っているフォルダにc86ctl.dllをコピーし、hoot.iniをメモ帳などで開き以下の項目を書き換えて下さい。

hoot.iniの項目説明
sampling_rate=55466OPN3L/OPNAモジュールでPC-88/PC-98関連の曲を演奏したい場合*1
62500OPMモジュールでX1/X68000関連の曲を演奏したい場合*2
49716OPL3モジュールでSoundBlaster16 (ISA/98)の曲を演奏したい場合*3
buffer=8標準値16から8に変更
time_slice=16bufferの下に行を追加して下さい
もし一部の曲で演奏にモタつきが感じる場合は値を8や6に下げてください(要CPUパワー)
値を下げ過ぎるとhoot側の音声出力が間に合わなくなっておかしくなるので注意
lpf=0ADPCM/PCMをクリアに聞きたい場合はLPFをオフにして下さい
ym2151_type=0標準値0から変更しないで下さい
ym2203_type=0標準値0から変更しないで下さい
ym2608_type=0標準値0から変更しないで下さい
romeo_delay=任意の値単位[ms] 後述します
romeo_ym2608_gain_fm=0標準値3から0に変更して下さい
romeo_ym2608_gain_rhythm=0標準値1から0に変更して下さい
romeo_ym2203_gain_fm=0標準値3から0に変更して下さい

sampling_rateの値は非常に重要です。
実機でFM音源チップに入力されるマスタークロックからチップ内部で行っている合成周波数を調べて正しく記載する必要があります。
(この値が異なると音程が狂ったり演奏自体にモタつきが発生しますのでご注意下さい)
PC-88/98、X1/X68000の場合は上述した値で問題はありませんが、左記以外の場合(特にアーケード物)は正しい合成周波数を調べて記載して下さい。

またsampling_rateは一つの値しか設定できませんのでGIMICのモジュールを繋ぎ換える度に変更する必要があります。
hootの起動オプションに「-ini ファイル名.ini」を追加することで読み込むiniを切り替えることができますので
各モジュール用のsampling_rate値を記載したiniを切り替えて使うことも可能です。
個人的にはhoot自体を対応モジュール及びsampling_rate毎に完全に別フォルダで分けて管理した方が良いと思います。

romeo_delayはGIMICへのデータ出力を遅延させる働きがあります。
通常はPC上で音声(X68000のADPCMなどGIMIC側が対応していない部分)が合成されてサウンドカードから出力されるよりも、GIMICの方が先に音声を出力してしまいます。
GIMICへのデータ出力を遅らせることでPC上で合成される音声をGIMICと同期することができます。
この値は環境により全く異なりますので自分の環境に合う値を試行錯誤して貰うことになります。romeo_delayの値はms(ミリ秒)になります。

romeo_ym2608_gain_fm/rhythm、romeo_ym2203_gain_fmはOPN3Lモジュール搭載時にFM/リズム音源の音量を意図的に下げる働きがあります。
OPN3Lモジュールに搭載されるYMF288ではFMとSSGが一緒にデジタル出力されている為、OPNAモジュールのようにFMとSSGの音量バランスを調整することができません。
FMとSSGの音量バランスは86ボードと同等なので、26KボードやPC-8801系の音量バランスに変えたい場合はここの値で調整して下さい。
ここで指定した値がYMF288のレジスタに書き込まれるTL(TotalVolume)値に加算されます(加算と書きましたが実際には音量が低くなります)

複数モジュール制御

hootから複数台のGIMICを制御できるようになりました。ただし現状は同じモジュールの複数制御には対応していません。
現在利用可能な機種は以下の通りです。

注意事項

FMP7を利用したGIMIC制御

FMP7とはぐぅさんが作成された、PC-9800シリーズ及びその互換機用に作成されたFM音源ドライバ「FMP」の流れを汲むWindows用の音源ドライバで、
OPNA相当のFM音源部を32音、OPM相当のFM音源部を32音、SSG32音、PCM32音(最大発音数64音)という驚異的なスペックを誇ります。
またFMP7はアドオンで機能を拡張することが可能であり、FMPv4、PMD、MXDRVなどの曲データも演奏することが可能です。

アドオンの中の一つ、exS98Pを使うことでFMP7でS98データをGIMICを使って再生することができます。OPN3L、OPNA、OPMモジュールに対応しています。
またHypSさんが作成されたFMP7用ビューワーFMDSP7を使うことで、S98ファイルの演奏状況を鍵盤表示&パラメータ表示することが可能になります。

GIMICでの演奏に対応しているのはexS98Pのみです。FMP7、FMPv4、PMD、MXDRVの曲データをGIMICで再生することはできません。

導入方法

FMP Official WebsiteよりFMP7(v7.10d以降)exS98PFMDSP7をダウンロードして任意のフォルダに解凍して下さい。exS98PはFMP7のaddonフォルダに入れて下さい。
またFMP7はVC2008のランタイムを必要とするので以下をインストールし、MicrosoftUpdateを行って最新の状態にアップデートして下さい。
なおご利用のOSに関わらず、全て32bit版(ファイル名に_x86が含まれる物)をインストールして下さい。

FMP7は詳細なマニュアルがWeb上にて公開されていますのでそちらにリンクを張らせて頂きます。

なおexS98Pに絞ってご紹介をさせて頂きましたが、FMP7の曲データも是非聴かれることをお勧めします。

PC-8801関連のソフトウェアを利用したGIMIC制御

QUASI88

QUASI88とはShowzoh Fukunagaさんが作成されたPC-8801エミュレータで、nueさんがc86ctl/ROMEOに対応したバージョンを公開されています。
導入方法や使い方はShowzoh Fukunagaさんのサイト、c86ctl/ROMEO対応QUASI88のドキュメントをご参照下さい。
OPN3L、OPNAモジュールに対応していますが、OPN3LではFM/SSG音量バランスの問題とADPCMの問題があるのでOPNAモジュールを使って頂くのが無難です。

※注意事項※
OPNAモジュールのFM/SSG音量バランスの自動設定には対応していない為、そのまま起動するとPC-98 OPNA系の音量バランスになります。
PC-88 OPN系/OPNA系の音量バランスに変更したい場合は都度c86winを使って音量調整を行って下さい。

M88

M88とはciscさんが作成されたPC-8801エミュレータで、rururuさんがc86ctlに対応したバージョンを公開されています。
OPN3L、OPNAモジュールに対応していますが、OPN3LではFM/SSG音量バランスの問題とADPCMの問題があるのでOPNAモジュールを使って頂くのが無難です。

※注意事項※
そのまま起動するとPC-88 OPNA系の音量バランスになります。
PC-88 OPNの音量バランスに変更したい場合は都度c86winを使って音量調整を行って下さい。

PC-9801関連のソフトウェアを利用したGIMIC制御

ねこープロジェクトII

ねこープロジェクトIIとはyuiさんが作成されたPC-9801エミュレータで、rururuさんがc86ctlに対応したバージョンを公開されています。
OPN3L、OPNAモジュールに対応しています。

サウンドボードの選択で118、86、86+ちびおと、スピークボードのどれかを選んで下さい。
前者2つはOPN3L/OPNAモジュールで有効、後者2つはOPNAモジュールで有効です。86を選択した場合は86PCMのみがPC側から再生されます。

※注意事項※
OPNAモジュールのFM/SSG音量バランスの自動設定には対応していない為、そのまま起動するとPC-98 OPNA系の音量バランスになります。
PC-98 OPN系の音量バランスに変更したい場合は都度c86winを使って音量調整を行って下さい。

SHARP X68000関連のソフトウェアを利用したGIMIC制御

XM6 TypeG For Win32

XM6とはPI.さんが作成されたSHARP X68000エミュレータで、XM6 TypeG For Win32はGIMONSさんがXM6に機能強化を行われた物になります。
GIMICへの対応はnueさんとrururuさんにご尽力を頂いております。
またX68000のOPMに加え、満開製作所のまーきゅりーゆにっとV4のOPN3-L×2にも対応します(再現する為にはGIMIC×3とOPMモジュール、OPNAモジュール×2必要です)
現行のGIMICのファームウェアでOPN3Lモジュールを使うと高周波ノイズが出ますので使わないようにご注意下さい。

gimic_pcidebug

gimic_pcidebugとはnueさんが作成されたGIMICを制御する為の中継ソフトウェアです。
来須川電工製のPCI接続FM音源ボードROMEOのインターフェイスを使ってGIMICを制御します。

c86ctl対応X68Sound

X68Soundとはm_puusanさんが作成されたX68000のFM音源/ADPCM音源をWindows上で再現するライブラリです。
nueさんがc86ctlに対応したバージョンを公開されています。

けろぴー(WinX68k)

けろぴーとはけんじょさんが作成されたSHARP X68000エミュレータで、うささんがROMEOに対応したバージョンを公開されています。
nueさんのgimic_pcidebugを併用することでROMEOインターフェイスを使ってGIMICにデータを出力することが可能になります。

※注意事項※ Option→Sound→ROMEO使用にチェックを入れて下さい。

MXDRV for Win32 (MXDRVg)

MXDRV for Win32とはGORRYさんがMXDRVをWindowsに移植したものです。
nueさんのc86ctl対応X68Soundを併用することでGIMICにデータを出力することが可能になります。

※注意事項※ MXVのMXDRVg設定で「ROMEOで演奏する」にチェックを入れて下さい。

ZMDRIVE

ZMDRIVEとはfixerさんが作成されたZ-MUSICをWindows上で再現するソフトウェアです。
nueさんのc86ctl対応X68Soundを併用することでGIMICにデータを出力することが可能になります。

超連射68k

超連射68kとはよっしんさんが作成されたX68000用シューティングゲームです。
nueさんのc86ctl対応X68Soundを併用することでGIMICにデータを出力することが可能になります。

※注意事項※ 超連射68kのアーカイブに既にX68Sound.dllがありますが、c86ctl対応X68Soundを上書きして下さい。

SHARP X1関連のソフトウェアを利用したGIMIC制御

X Millenium

X Milleniumとはyuiさんが作成されたSHARP X1エミュレータです。
nueさんのgimic_pcidebugを併用することでROMEOインターフェイスを使ってGIMICにデータを出力することが可能になります。

※注意事項※ オプションにあるFM Boardにチェックを入れて下さい。

PC/AT関連のソフトウェアを利用したGIMIC制御

DOSBox

DOSBoxとはDOSBox Teamの皆様が作成されたPC/AT互換機上で動作するMS-DOS環境をエミュレートするソフトウェアです。
RuRuRuさんがc86ctlに対応したバージョンを公開されています。対応するモジュールはOPL3です。

MSX関連のソフトウェアを利用したGIMIC制御

BlueMSX

BlueMSXとはDaniel Vikさん及びblueMSX Develope Teamの方々が作成されたMSXエミュレータで、nueさんがc86ctlに対応したバージョンを公開されています。
導入方法や使い方は付属のドキュメントをご参照下さい。

OPNAモジュールの音量調整

c86ctlのアーカイブに含まれるc86win.exeでOPNAモジュールのFM/SSG音量バランスを設定することができます。
他にc86ctlを使うソフトが立ち上がっていない状態でc86winを起動して下さい。

c86win.jpg
ボタン機能説明
Initialize押さないで下さい(開発用)
DeInitialize押さないで下さい(開発用)
GetMBInfoマザーボードの情報を表示
GetModuleInfo接続されているモジュールの情報を表示
GetFWVerファームウェアバージョンを表示
TEST1押さないでください(開発用)
adpcmZeroReset押さないでください(開発用)
GetSSGVolOPNAモジュールのSSG音量バランスを取得(初期値31)
SetSSGVolOPNAモジュールのSSG音量バランスを設定
GetPLLClockモジュールのPLLクロックを取得
SetPLLClockモジュールのPLLクロックを設定

SetSSGVolで以下の値をセットすることで各機種のFM/SSG音量バランスに変化します。
初期値はPC-98 OPNA系(86ボードと同等)の31です。値の範囲は0~127です。
なおc86ctlを使うソフトの動作中にc86winを使って音量を変化させることはできないのでご注意下さい。

機種設定値
PC-98 OPN系(PC-9801-26K相当)38
PC-98 OPNA系(PC-9801-86相当)31
PC-88 OPN系(PC-8801-11、PC-8801mkIIFR相当)69
PC-88 OPNA系(PC-8801FA/MA相当)63

*1 供給クロック3.9936MHz÷72分周
*2 供給クロック4MHz÷64分周
*3 供給クロック14.31818MHz÷288分周、14.31818MHzはISAバスのOSCに由来

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS