[Joystick対応ゲーム] joystick#1にカーソルキーとボタンを割り当て,Disable keys set on Joystickにチェック
ロードランナー・・・・完璧に動作
マッピー・・・・完璧に動作
スペースバーガー・・・・完璧に動作
The Castle・・・・完璧に動作。カーソルキーによる斜めジャンプ、ジャンプボタンによるジャンプもスムーズ
XEVIOUS・・・・完璧に動作。もちろん同時押しによる斜め移動もOK.
フラッピー・・・・完璧に動作
ニュートロン・・・・完璧に動作。斜めの枝を同時押しで移動できるので感動。
ドアドア・・・・完璧に動作
※Disable keys set on Joystickがオフの方がよいケースとして、キー入力とJyostickの両方が必要なゲーム(例えばシューティングとADVやSLGが場面によって切り替わるゲームとか)を探してみたんですが、ちょうどよいものが見つかりませんでした。逆にDisable keys set on Joystickにチェックしないと、おおむね動作がおかしくなるので、joystick#1使用時は必須でした。
np2fmgen(2022/6/21)
FMGenDll=ymfm2608f.dll or ymfm2608fp.dll
OPNA_CLK=7987248 or 7987200
FMG_RATE=55467 or 55466
で、YU-NOだと、最初のエルフロゴから「音が」なにか変です(OPNA_CLK、FMG_RATEを削っても、MIX_TYPEを0 or 1にしても同様)。
同様に、出力も fmopna_t 内に定義されています
「変数名,番号,機能」の順に対応を記すと
int o_gpio_a,17〜10,汎用I/Oポート A0(最下位ビット)〜A7(最上位ビット)
int o_gpio_b,25〜18,汎用I/Oポート B0(最下位ビット)〜B7(最上位ビット)
int o_spoff,34,スピーカー ON/OFF 用スイッチ
int o_a8,42,外部メモリへのアドレス出力 A8
int o_romcs,43,外部メモリに ROM を使用した場合のデータ取り込み用タイミング信号
int o_mden,44,外部メモリに DRAM を使用した場合のデータ取り込み用タイミング信号
int o_we,45,外部メモリインターフェース 有効化信号
int o_cas,46,外部メモリインターフェース CASアドレスラッチ信号
int o_ras,47,外部メモリインターフェース RASアドレスラッチ信号
int o_dm,48〜55,外部メモリへのアドレス出力 A0〜A7、外部メモリへのデータ入力 DI0〜DI7
float o_analog,27,SSG部アナログ信号(ソースフォロワ出力)
int o_sh1,29,DACインターフェース CHANNEL1 ラッチ出力(同期信号)
int o_sh2,30,DACインターフェース CHANNEL2 ラッチ出力(同期信号)
int o_opo,31,DACインターフェース シリアルデータ
int o_s,64,DACインターフェース DAC用ビットクロック
int o_irq_pull,56,CPUインターフェース 割り込み要求信号
int o_data,2〜9,CPUインターフェース データバス D0(最下位ビット)〜D7(最上位ビット)
パッチ
7D00:
C5 CD 84 7D CB 6F 28 2E CB 77 28 36 47 E6 06 78 28 4C E6 0A 78 28 4B E6 05 78 28 4A E6 09 78 28 49 CB 47 28 31 CB 4F 28 31 CB 57 28 25 CB 5F 28 1D 3A 2E 00 C1 C9 3A 23 FC B7 3E 58 28 F6 3E 20 18 F2 3A 23 FC B7 3E 5A 28 EA 3E 20 18 E6 3E 36 18 E2 3E 34 18 DE 3E 38 18 DA 3E 32 18 D6 3E 31 18 D2 3E 33 18 CE 3E 37 18 CA 3E 39 18 C6 C5 CD 84 7D CB 6F 28 0A CB 77 28 06 3A 2E 00 C3 34 7D 3E 20 18 B0 01 00 1C 3E 07 ED 79 06 1B ED 78 E6 3F 06 1C ED 79 3E 0E ED 79 06 1B ED 78 A7 C0 3E FF C9
ゾンビパニック(B000,FEFF,C500)
実機でもJoystick対応パッチ
C600: 01 00 1C 3E 07 ED 79 06 1B ED 78 E6 3F 06 1C ED 79 3E 0E ED 79 06 1B ED 78 47 E6 60 FE 40 28 38 FE 20 28 34 78 E6 0F FE 0E 28 27 FE 0D 28 26 FE 0B 28 1C FE 07 28 15 AF CD 1B 00 FE 1C 28 0D FE 1D 28 0C FE 1E 28 0B FE 1F 28 0A C9 3E 36 C9 3E 34 C9 3E 38 C9 3E 32 C9 3E 20 C9
D527: 1B 00 -> 00 C6 game start用
F123: 1B 00 -> 00 C6 上下左右移動
ちゃっくんぽっぷ
公式では移動しかJoystick対応していないので、Z、X、C(同時推し)も対応パッチ
オリジナルバイナリは暗号化(圧縮?)されていて、IPLから読み込みスタートすると複合化されるので、その状態のメモリダンプをdebugで取得して
"Chack'n Pop .Sys",0000,CFFF,0000
で保存し以下のパッチ。
FE20:
01 00 1C 3E 07 ED 79 06 1B ED 78 E6 3F 06 1C ED 79 3E 0E ED 79 06 1B ED 78 C9 CD 55 37 C5 CD 20 FE A7 28 32 47 E6 60 78 28 2F CB 77 28 31 CB 6F 28 33 E6 06 78 28 4C E6 0A 78 28 4D E6 05 78 28 4E E6 09 78 28 4F CB 47 28 2D CB 4F 28 2F CB 57 28 1F CB 5F 28 15 7D C1 C9 2E 43 CB FC 18 3C 2E 5A CB FC 18 36 2E 58 CB FC 18 30 2E 36 CB BC 18 2A 2E 34 CB BC 18 24 2E 38 CB BC 18 1E 2E 32 CB BC 18 18 2E 31 CB BC 18 12 2E 33 CB BC 18 0C 2E 37 CB BC 18 06 2E 39 CB BC 18 00 CB B4 7D C1 C9 CD 55 37 C5 CD 20 FE C1 A7 28 08 CB 77 28 06 CB 6F 28 02 7D C9 CB FC CB B4 2E 20 7D C9
D700: 11 0E 00 21 1E D7 01 00 18 ED 51 03 7E ED 79 23 14 1D 20 F2 01 03 1A 3E 0C ED 79 C3 00 00 6F 50 59 38 1F 02 19 1C 00 07 60 07 00 00
16EC: 55 37 -> 3A FE
39F3: 55 37 -> C0 FE
最後に開始アドレスD700で保存(0000,FEFF,D700)
※トリガー12交換時
FE4B: 77→6F
FE4F: 6F→77