forked from hissorii/px68k
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreadme.txt
392 lines (261 loc) · 12.6 KB
/
readme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
ポータブルX68000エミュレータ
PX68K ( Portable (x)keropi PRO-68K )
2013/10/01
いろいろなデバイスで X68000 エミュレータが動作したら楽しいな、
と思い立ち、この PX68K を作りはじめました。
「Portable」とは「移植しやすいよ」という意味です。
タブレットや PSP 等のポータブルデバイスで動いたらいいな、
という意味もこめています。
PX68K は以下の成分からできています。
けんじょさん (http://retropc.net/kenjo/) が
作成された SHARP X68000エミュレータ WinX68k (通称けろぴー)
NONAKA Kimihiro さん(http://www.asahi-net.or.jp/~aw9k-nnk/keropi/) が
けろぴーを UNIX/X11 環境で動作する様に移植した xkeropi
Stephane Dallongeville さんが開発したものを、
NJ氏が PSP 用 CPS1/CPS2/MVSP/NCDZ に組み込んだ MC68000 MPU エミュレータ
cisc氏([email protected])が作成された FM/PSG 音源実装 fmgen
(詳細は ソースリポジトリの fmgen/readme.txt を参照)
PX68K への実装にあたり、以下の変更を行っています
・Sample 型を int32 から int16 に変更
・PSP 用に 11k, 22k から 44k データ作成ロジックを追加
0. 注意事項
0.1 全機種共通
・マウス等、まだ未対応です。
0.2 Android 版について
・Android 2.3.3以上でないと動きません。
0.3 PSP 版について
・CFW を導入していないと動きません。
・現在、PSPの終了処理に10秒程度かかります。
fopen()/fclose()のコストが高いようなので今後見直します。
・キー入力は未対応です。
・PSP 版でメモリ設定を 2MB にしたい場合は、PC 上の winx68k(keropi) や
WinX68k 高速版で HUMAN68K の SWITCH.X コマンドを起動、設定してください。
現在エミュレータ側でメモリ上限を 2MB にしていますので、それより
大きな値を SWITCH.X で設定しないでください。
PC 上のエミュレータを終了すると、sram.dat ファイルが生成されるので、
それを本エミュレータの BIOS ROM と同じディレクトリにコピーしてください。
(本処置は px68k で仮想キーボードが実装されるまでの暫定処置です)
Unix版、Android版では、キーボードまたはソフトウェアキーボードにて
SWITCH.X コマンドを実行できますので、本処置は不要です。
1. 下準備
・BIOS ROM ファイルを用意してください。
ファイル名は以下のいずれかで、小文字でも大文字でも構いません。
iplrom.dat, iplrom30.dat, iplromco.dat, iplromxv.dat
・フォントファイルを用意してください。
ファイル名は以下のいずれかで、小文字でも大文字でも構いません。
cgrom.dat, cgrom.tmp
フォントファイルがない場合は PC 上で WinX68k 高速版を実行すると、
cgrom.tmp が生成されますので、それを使ってください。
・Human68K は立ち上がるけれど、ゲームが起動できない場合は
標準のメモリ 1MB では動作しないゲームである可能性が高いです。
HUMAN68K を起動後、キーボードまたはソフトウェアキーボードで
「switch」と入力後リターンキーを押し、SWITCH.X コマンドを起動して
メモリ設定してください。
現在エミュレータ側でメモリ上限を 2MB にしていますので、それより
大きな値を SWITCH.X で設定しないでください。
PSP版については、「0.3 PSP 版について」を参照してください。
2. Android 版について
2.1 ファイルの配置について
・/sdcard/px68k/ ディレクトリを作成し、BIOS ROM, フォントファイルを置く
エミュレータを開始してもすぐに終了してしまう場合は、これらのファイルの
置き場所、ファイル名について見直してみてください。
2.2 イメージファイルについて
・/sdcard/px68k ディレクトリにイメージファイルを置いて下さい。
サブディレクトリを作成し、その中にファイルを置くこともできます。
・読み込み対象となるファイルの拡張子は以下となります。
.D88 .88D .HDM .DUP .2HD .DIM .XDF .IMG
・ ディレクトリを深く掘りすぎたり、長いファイル名の場合、UI 画面から
はみ出すのは仕様です。
2.3 メニュー UI
・イメージファイルの選択や各種設定には、メニュー UI を使用します。
・UI に入る、または抜けるには「メニューキー」を押してください。
・値の設定には「トリガー1ボタン」を使用します。
・値の解除には「トリガー2ボタン」を使用します。
・メニュー UI で設定した内容は、UI にて [SYSTEM]->[QUIT] を選択するか、
[バックキー(戻るキー)] を 2 回タップしてエミュレータを終了させた
タイミングで保存されます。
・設定を初期値に戻す場合は /sdcard/px68k/config ファイルを削除します。
・Android 版は今のところ日本語ファイル名 (UTF-8) の表示が正しくできません。
・各設定の詳細は、「5. メニュー UI について」を参照してください。
2.4 ジョイスティック
・画面左側の D-pad っぽいのでスティック移動、画面右側のボタンっぽいのが
トリガー1, 2に対応します。
2.5 キーボード
・画面右上隅の黄色ボタンを長押し(0.3秒位)するとソフトウェアキーボードが
出現します。
・キーボードを指でなぞると、移動できます。
・キーボードを画面の右側に追いやるとソフトウェアキーボードが消えます。
・緑色の仮想キーを使って、キーボード上のキーを選択します。
選択されたキーは黒色で表示されます。
・緑色の仮想ボタン(TRG1)を押すと、選択されたキーが入力されます。
・緑色の仮想ボタン(TRG2)を押すと、BS(Back Space)キーが入力されます。
2.6 サウンド出力
・サンプリング周波数は 22050Hz 固定です。
今のところ config に書いた値は反映されません。UI 実装時に考えます。
現在 ADPCM と OPM のみ対応済みで、マーキュリーユニット、MIDI については
未対応です。
2.7 エミュレータの終了
・バックキー(戻るキー)を 2 回タップするか、メニュー UI から終了してください。
3. PSP 版について
3.1 ファイルの配置について
・EBOOT.PBP と同じディレクトリに .keropi というディレクトリを作成し、
BIOS ROM, フォントファイルを置く
3.2 イメージファイルについて
・EBOOT.PBP と同じ ディレクトリにイメージファイルを置いて下さい。
サブディレクトリを作成し、その中にファイルを置くこともできます。
・読み込み対象となるファイルの拡張子は以下となります。
.D88 .88D .HDM .DUP .2HD .DIM .XDF .IMG
・ ディレクトリを深く掘りすぎたり、長いファイル名の場合、UI 画面から
はみ出すのは仕様です。
3.3 メニュー UI
・イメージファイルの選択や各種設定には、メニュー UI を使用します。
・UI に入る、または抜けるには [START] ボタンを押してください。
・値の設定には [○] ボタンを使用します。
・値の解除には [×] ボタンを使用します。
・メニュー UI で設定した内容は、UI にて [SYSTEM]->[QUIT] を選択するか
[HOME]ボタンを押してエミュレータを終了させたタイミングで保存されます。
・PSP版では、VKey/VBtn 関連の設定は反映されません。
・設定を初期値に戻す場合は .keropi/config ファイルを削除します。
・各設定の詳細は、「5. メニュー UI について」を参照してください。
3.4 ジョイスティック
・D-pad でスティック移動、○ボタン、×ボタンがトリガー1, 2に対応します。
3.5 キーボード
・未実装
3.6 サウンド出力
・PSP は今のところサンプリング周波数が 11025Hz 固定です。
2.7 エミュレータの終了
・[HOME] ボタンを押すか、メニュー UI から終了してください。
電源ぶちっ、だと config や SRAM の保存がされません。
4. Unix 版について
4.1 ファイルの配置について
・~/.keropi に BIOS ROM、フォントファイルを置いてください。
4.2 イメージファイルについて
・実行ファイル xkeropi と同じ ディレクトリにイメージファイルを置いて下さい。
サブディレクトリを作成し、その中にファイルを置くこともできます。
・読み込み対象となるファイルの拡張子は以下となります。
.D88 .88D .HDM .DUP .2HD .DIM .XDF .IMG
・ ディレクトリを深く掘りすぎたり、長いファイル名の場合、UI 画面から
はみ出すのは仕様です。
・以下の様に引数で指定することもできます。最初が FDD1, 次が FDD2 。
$ ./xkeropi hoge.xdf hogege.xdf
4.3 メニュー UI
・イメージファイルの選択や各種設定には、メニュー UI を使用します。
・UI に入る、または抜けるには [F12] キーを押してください。
・値の設定には [リターン] キーを使用します。
・値の解除には [ESC] キーを使用します。
・メニュー UI で設定した内容は、UI にて [SYSTEM]->[QUIT] を選択して
エミュレータを終了させたタイミングで保存されます。
・Unix 版では、VKey/VBtn 関連の設定は反映されません。
・設定を初期値に戻す場合は ~/.keropi/config ファイルを削除します。
・Unix 版は今のところ日本語ファイル名 (UTF-8) の表示が正しくできません。
・各設定の詳細は、「5. メニュー UI について」を参照してください。
4.4 ジョイスティック
・JoyKey モードを有効にすると、キーボードのカーソルキーでスティック移動、
z キー、x キーがそれぞれトリガー 1, 2 に対応します。
現在UIがないため、~/.keropi/config をエディタで修正する必要があります。
4.5 キーボード
・アルファベットキーやリターンキー等、ある程度のキーに対応。
全てのテーブルをまだ書き換えていないので中途半端です。
4.6 サウンド出力
・サンプリング周波数は 22050Hz 固定です。
今のところ config に書いた値は反映されません。UI 実装時に考えます。
現在 ADPCM と OPM のみ対応済みで、マーキュリーユニット、MIDI については
未対応です。
5. メニュー UI について
・メニューの階層と、それぞれの内容を以下に示します。
設定キー、解除キーについては、各装置向けの説明を参照してください。
[SYSTEM]-+-[RESET]
| エミュレータをリセットします。
| イメージファイルを選択した後は、これを実行します。
|
+-[NMI RESET]
| NMI リセットします。とりあえず使わないと思います。
|
+-[QUIT]
エミュレータを終了します。
UI で行った設定変更を保存します。
[FDD1]-+-[イメージファイル名] または [-- no disk --]
| イメージファイルを選択している場合はイメージファイル名が
| 表示され、選択していない場合は no disk 表示となります。
|
| これを選択するとファイラモードに移行します。
| ファイラモードでは、設定キーでディレクトリの移動、
| イメージファイルの選択を行います。
| 解除キーでファイラモードを終了します。
|
+-[EJECT]
イメージファイルを解除します。
[FDD2]
[FDD1] と同じです。
ディスクドライブ2についての設定となります。
[Frame Skip]
フレームスキップの設定をします。
とりあえず Auto、とてつもなく早いマシンなら Full、
遅いマシンは 1/2 -> ... -> 1/8 と変更してみてください。
[VKey Size]
本設定は Android 版のみ有効です。
仮想パッド、仮想ボタンの大きさを指定します。
[VBtn Swap]-+
| 本設定は Android版 のみ有効です。
| 二つの仮想ボタンを入れ替えます。
| 常にトリガー1が UI の設定キー、
| トリガー2が UI の解除キーとなるのでご注意ください。
|
+-[TRG1 TRG2]
| 画面上、左側がトリガー1、右側がトリガー2になります。
|
+-[TRG2 TRG1]
画面上、左側がトリガー2、右側がトリガー1になります。
[No Wait Mode]
[on] にすると同期をとらずに全速力で動きます。
X68000実機よりも早く動作してしまう場合があります。
遅い装置で使うと効果があるかもしれません。
通常は [off] でよいです。
7. その他
7.1 X68000 のメインメモリ
・現在 2MB にしています。
7.2 キー入力できないのですが?
7.3 PSP で実行すると動作がものすごく遅いんですけど?
7.4 説明の番号が5から7に飛んでるんですけど?
-> とりあえず現状はそんなものです。すみません。
8. 履歴
2013/08/02 PSP 版 Ver0.00 リリース
2013/08/07 Android 版 Ver0.00 リリース
2013/08/12 256x256, 512x512 の場合に画面比率4:3になるように修正 (Unix)
2013/08/12 256x256 画面を横 2.666 倍、縦 2 倍の拡大表示に変更 (Unix)
2013/08/12 画面描写を OpenGL ES 1.1 を使用する様に変更 (Android)
2013/08/17 画面描写を HW Graphics Engine を使用する様に変更 (PSP)
2013/08/19 ジョイスティックのサポートを追加 (PSP)
2013/08/20 PSP 版 Ver.0.01 リリース
2013/08/21 画面タッチによるジョイスティックのサポートを追加 (Android)
2013/08/22 Android 版 Ver0.01 リリース
2013/08/29 サウンド出力の追加 (Unix, Android)
2013/08/29 Android 版 Ver0.02 リリース
2013/08/30 プチノイズの原因となる、サウンドバッファの underrun が
発生しないよう修正 (common)
2013/08/30 CPU クロックを 222MHz から 333MHz に変更 (PSP)
2013/08/30 サウンド出力の追加 (PSP)
2013/08/31 PSP 版 Ver0.02 リリース
2013/09/03 戻るボタン、メニューボタンでクラッシュするのを修正
(Android, thanks to @173210)
2013/09/03 常に横向き (landscape) 固定に変更 (Android, thanks to @173210)
2013/09/04 スリープするとエミュレータが異常終了する問題を修正
(Android, thanks to @173210)
2013/09/04 バックキー 2 回タップでエミュレータを終了する様に変更 (Android)
2013/09/04 機種により仮想キーが効かない問題を修正 (Android)
2013/09/04 Android 版 ver0.03 リリース
2013/09/17 menu UI を追加 (Unix系)
2013/09/18 menu UI を追加 (PSP)
2013/09/19 menu UI を追加 (Android)
2013/09/20 PSP 版 Ver0.03リリース
2013/09/20 Android 版 Ver0.04リリース
2013/10/01 ソフトウェアキーボードの追加 (Android)
2013/10/01 仮想キーの押下判定に少し遊びを持たせた (Android)
9. 免責
本ソフトウェアを使用したことによる、いかなる損害も作者は責任を負いません。
あくまでも自己責任での使用をお願い致します。
ひっそりぃ(hissorii)/sakahi
http://hissorii.blog45.fc2.com (ひっそりぃドットコム)
http://emuhani.seesaa.net (えみゅはに - Emulator Hacking 日記)
GitHub: https://github.com/hissorii/px68k
Twitter: @hissorii_com