ZaurusでMSX もう少し修正編 [Zaurus]
いろいろいじった描画周りはほとんど意味が無いので、元のコードに戻す。Filterも復活。まあSL-C860で使うと不幸になりますが。音回りも多分floatの計算がいけないんだろうということで、floatを除いただけの元に近いコードに変更、MsxAudioとStereoを復活。ヘルプは無効化してテキストをつけました。
コードを見るとジョイパッドをキーエミュレートしている部分があるので、joyオプションを有効化。A、BボタンをX、Zキーに割り当ててみる。-joy 1オプションで起動。おお、認識した・・・けど連射が効かない。
AutofireのコードをいじってAボタンの連射をエミュレート。SPACEキーのAutofireと同じ方法ではうまくいかなかったけれど、なんとか成功。これでkeyhelperの設定をいちいち書き換えなくても良くなったかな?
というかA、Bボタンの位置はこの方向でいいのだろうか・・・?
ちなみにキーの割り当てはかなりトンデモな感じです。
SL-C860のキー表示に出来るだけ合わせるために、[Fn]+Keyの入力で、勝手にShiftを入れたり消したりしています。それでも[¥]は合わせられなかったので、これは元の割り当てのバックスラッシュの所です。目的の文字が見つからない場合は[Shift]+[Fn]+Keyも探してみてください。
[Shift]+[Fn]+[I]でかなモード。ローマ字入力の場合はいいのですが、かな入力の場合、どこにどの文字があるかは私もわかりません。これはロムによるのかも。
[Shift]+[Fn]+[U]でGRAPH文字入力。かなと違いこちらは修飾キーなのですが、入力が難しくなるのでトグルにしてあります。もう一度このキーを押すまでGRAPH文字の入力になります。
[Fn]+[D]をCtrlに割り当てています。これもトグルです。[Shift]+[Fn]+[D]はリセットになっていますので、注意してください。
[Fn]+[I]はSTOP、[Fn]+[U]はSELECTです。[Shift]+[BS]でInsキー。
コマンドキーは[Fn]+[L]と[Fn]+カーソルキーにしました。[Fn]+[UP]でStateLoad、[Fn]+[DOWN]でStateSave。[Fn]+[LEFT]でAutofire、[Fn]+[RIGHT]でフィルタ変更です。ただしカーソルキーのコマンドはQVGAのときは反時計回りに90度回りますので要注意です。
[Fn]+[L]はディスクAの入れ替え。[Shift]+[Fn]+[L]でディスクB。この辺りは未チェック。
これでkeyhelper_SDL.xmlでファンクションキーを割り当てれば大体キーの入力が可能になっていると思います。ファンクションキー以外はノーマルのSDLでも入力可能にしたつもりです。
20xx系のキーコードがSDLで認識できればもっと楽に割り振れるんですけど、さすがにそこまではわかりませんし。
あとポーズが欲しいです。つけるのは無理でした。ループを止めればいいんじゃん、とか素人考えで思ったんですが、それやると解除のキーも受け付けなくなって暴走になるような・・・。
すみません。なにやらサーバエラーでコメントやトラックバックが最新記事の方に移動してしまいました。
http://blog.so-net.ne.jp/sorakaze/2005-06-19
どうなってるんだ、so-net・・・
by 新瀬 (2005-06-19 14:06)