Updated on 01.23.2005 はじめにお読みください。 Please read this file first. 読みにくくてすみません... m(_ _)m I'm sorry for this file being so hard to read... Correction of my English would be greatly appreciated. ---- [Important Note] ---- "pc2ecfg.exe" をダブルクリックすると、"PC2E.DAT" 内の設定 を変更することができます。 By double-clicking on the "pc2ecfg.exe", you can configure settings in "PC2E.DAT". 新バージョンの pc2e.exe もしくは pc2ecfg.exe に、古いバージョンの コンフィグファイル(PC2E.DAT)を読み込ませないようお願いします。 pc2e.exe の動作がおかしくなることがあります。 Please do not let newer release of pc2e.exe or pc2ecfg.exe to read older version of configuration file (PC2E.DAT), as this may cause pc2e.exe to malfunction.  実行結果については、一切責任を負いません。 The author is not responsible for any damage resulting from execution of this program. ---- ○ PREFACE  PCエンジン+CD-ROM^2 エミュレータです。 C/ASM で書いています。 Win32版 の GCC (MinGW)でコンパイルされています。 本プログラムはベータ版です。 再配布は GNU-GPL に従ってください。 This program is a PC Engine + CD-ROM^2 system emulator written in C/ASM, compiled with Win32 (MinGW) build of GCC. This program is a beta version. Please follow the GNU-GPL for redistribution. ○推奨環境 (Recommended Environment) Windows98/Me + DirectX 5 runtime library Pentium 3 1GHz or the successors (MMX instruction set is required) 256MB of memory SoundBlaster Live! Series A game pad having 4 buttons or more ○インストール (Install) アーカイブを展開後、好きな場所に移動してください。 Please extract the archive and move to a place you like. ○アンインストール (Uninstall) レジストリは使用していません。 インストールしたファイルをそのまま削除してください。 The registry is not used. Please delete the files you have installed. ○起動 (Invoke)  起動は、実行ファイルのアイコンをダブルクリックするか、 もしくはコマンドプロンプトから To invoke, you can either double click on the exe's icon, or type one of the following from the command prompt: pc2e (File Dialog 表示) pc2e file.rom (HuCard/BIOS を起動) pc2e "filename containing spaces .rom" (HuCard/BIOS を起動) のいずれかを入力します。ファイル名は例です。 ヘッダー付きの ROM イメージは動きません。 File names above are examples. ROM images with header are not accepted.  CD-ROM^2 初期化時に、実行ファイル内の TOC 情報と CD の TOC 情報の照合を行ないます。 TOC 情報が一致すると、タイトル名が表示されます。 タイトル名の最後にある [!] は、現時点で TOC 情報に 間違いのないことが確認できていることを示すマークです。 TOC 情報が一致しない CD は起動しません。 On initialization of CD-ROM^2, the program verifies CD's TOC data with its internal TOC database. If they match, game title is shown in the console window. The "[!]" mark at the end of game title indicates that the TOC information is confirmed to be correct. The program will refuse to boot CD-ROM games if the TOC doesn't match. ○実行時の操作 (Operations during execution)  実行中はゲームパッドの入力しか受付けません。 ボタン1とボタン2がIボタンとIIボタンで、 3と4が SELECT と RUN です。実行中にESCキーを押すと 終了します。 While running, only game pad is accepted as input. button 1 and button 2 are "I" and "II" buttons, and 3 and 4 are "SELECT" and "RUN". ESC key on the keyboard exits from the program. その他実行中のキーボード入力: 画面を左クリック --- 画面モード変更(5パターン) F1 --- CPUリセット F4 --- パーシャルメモリロード(後述) F5 --- 状態を保存 F6 --- プレイ記録開始/終了 (1時間まで) F7 --- 状態を復帰 F8 --- プレイ記録再生/終了 (1時間まで) F12 --- フルスクリーン/ウインドウモード切替 6 --- 6 ボタンパッド/2 ボタンパッド space - 新たに開くファイルの選択 F5, F6, F7, F8 キーは、CDからデータ読み出し中は 使わないでください。 あるゲームで保存した状態ファイルもしくはレコードを別のゲームで 復帰・再生させないでください(よくないことしか起こりません)。 Other keyboard input while running: left-click on the screen --- change screen mode (5 patterns) F1 --- resets the CPU F4 --- partial memory load (see below) F5 --- save state to file F6 --- start/end recording game play (up to 1-hour) F7 --- load state from file F8 --- start/end playback game play (up to 1-hour) F12 --- switch fullscreen / windowed mode 6 --- 6-button pad / 2-button pad space - select new file to open Don't use F5, F6, F7, and F8 keys while the program is reading data from CD. ○パーシャルメモリロード (Partial Memory Load) 主にデバッグ用ですが、うまく使えば cheat として も機能します。フォーマットは、行ごとに This feature is mainly for debug purpose, but can be used as cheat as well. The format of each line is MEMORYTYPE OFFSET DATA を記述します。行のはじめにスペースを入れると誤動作します。 The program won't read values correctly if you put space in the first column. MEMORYTYPE には次の3つが指定できます。 Three types of MEMORYTYPE can be specified: MAINRAM --- CPU main RAM ( 0000 - 1FFF) BUFFERRAM --- CD-ROM^2 buffer RAM ( 00000 - 3FFFF) ARCADERAM --- Arcade Card buffer RAM (000000 - 1FFFFF) 例) メインRAMの $13FF に $7F をロードします。 ex) Load $7F at offset $13FF of the main RAM. MAINRAM 13FF 7F ゲームファイル名が Game.pce だとすると、F4 キーを 押すことにより、 Game.pce_PM.TXT からロードしようとします。 If the game file name is Game.pce, the program attempts to load from Game.pce_PM.TXT when F4 key is pressed. ○ 現バージョンの注意点 (Notes on the current version) 以下の動作はさせないでください。 Please don't do the following operations: - CDからデータを読み出している間は状態保存(F5)/復帰機能(F7)を 使用しないでください。CD音楽再生中はシーク時を除けばOKなはずです。 Don't save(F5)/load(F7) state while the program is reading data from CD. It should be OK while playing CD-DA, except for during seek time. - CDからデータを読み出している間はレコード(F6)/プレイバック(F8) 機能を使用しないでください。 Don't record(F6)/playback(F8) while the program is reading data from CD. 現バージョンでは、レコード(F6)/プレイバック(F8)時間は最大1時間です。 record(F6)/playback(F8) time is limited to 1-hour in the current version. 現バージョンで保存した状態保存ファイルおよびレコードファイルは、次の バージョンでは使えなくなっている可能性が高いです。 It is very likely that state files and record files created on the current version will not work on the next version. CD-ROM ドライブのアクセスタイミングの都合で CD-ROM^2 のゲームを レコードしても、プレイバックできないと思います。 Due to CD-ROM drive's access timing, CD-ROM^2 games will not be able to playback recorded game play. ○作者からのお願い 本エミュレータを利用する場合は、以下の項目に同意していただきます。 1. このプログラムを著作権のある ROM イメージとともに 配布することを禁じます。 2. このプログラムを違法に入手した ROM イメージで利用 することを禁じます。ご自分で吸い出した ROM イメージ でのみこのプログラムを利用してください。 違法に入手可能な ROM イメージの多くはヘッダ情報が付加 されているため、本エミュレータはヘッダ情報が付加されている イメージでは動作しません。 本エミュレータを開始すると、以下のメッセージが表示されます。 内容は、上記の1および2と同じです。 Before using this program, please accept the following terms: 1. This program must not be distributed with any copyrighted ROM images. 2. This program must not be used with illegally obtained ROM images. Use this program only with ROM images dumped by yourself. 上記項目を受諾される方は「はい」ボタンをクリックしてください。 受諾されない方は「いいえ」ボタンをクリックしてください。 (受諾されない方はこのプログラムを実行しないでください)  エミュレータを合法的に遊ぶために、 エミュレートステーション: http://www.emusta.net/ では ROM イメージを自分で吸い出す努力をされています。 エミュレータを合法的に使う方以外には exe ファイルを 配布したくないというのが作者の本音です。 Please stop illegal actions regarding to ROM image. There is a website that make effort to dump ROM images themselves: http://www.emusta.net/ (the page is written in Japanese) The bottom line is that I don't want to release the exe file to those who don't use it right. ○謝辞 (Credits) 次の諸氏に感謝いたします。 bero氏 FPCE のソースコードを参考にさせていただきました。 I referred to the source code of FPCE. hmmx氏 xpce のソースコードを参考にさせていただきました。 I referred to the source code of xpce. David Shadoff氏 tgsim のソースコードを参考にさせていただきました。 "TURBO ROM" カードおよび ADPCM デコーダを提供していただきました。 For the source code of tgsim, offering me the "TURBO ROM" card, and ADPCM decoder. Charles MacDonald氏 tgemu のソースコードを参考にさせていただきました。 pcetech.txt および sgxtech.txt でお世話になりました。 For the source code of tgemu, pcetech.txt, and sgxtech.txt. David Michel氏 Magic Kit を利用させていただいています。 For the Magic Kit. nyef氏 darcnes のソースコードを参考にさせていただきました。 For the source code of darcnes. zeograd氏 hu-go! のソースコードを参考にさせていただきました。 For the source code of hu-go!. Squaresoft74氏 Windows XP での詳細なバグ報告をしていただきました。 TOC データベースを提供していただきました。 For detailed reports of pc2e behaviour under the Windows XP. And for providing me the TOC database. --> TOC データベースの完成にご協力願います。 --> Please help complete the TOC database. --> http://pce-toc-db.no-ip.com/ すぎ氏 入力の実装を DirectInput 化していただきました。 SPTI のコードを提供していただきました。 For implementing the input interface with DirectInput. For providing SPTI code. ○ TIPS Windows Me にてゲーム中にハードディスクの激しい アクセスが発生し、ゲームの進行に支障をきたす場合は、 スタート→設定→コントロールパネル→タスク→詳細設定→ タスクスケジューラの停止 を行なうと解消できるかもしれません。 If you suffer from severe hard disk access during game play under Windows Me, the following operation may solve the problem: Start --> Settings --> Control Panel --> Scheduled Tasks --> Advanced --> Stop Using Task Scheduler  ゲーム中、ADPCM の連続再生が行なわれると、PC2E は CD にアクセスしながら ADPCM を再生することになります。 このとき、たいていの CD-ROM ドライブでは、ドライブ内の バッファにデータが先読みされ、再生開始後しばらくは このバッファからデータが出力されるようです。 この状態がある程度続くと、CD がスピンダウンしてしまう (回転が止まってしまう)場合があります。  バッファのデータがなくなると、CD からデータを読むことに なりますが、このとき CD がスピンダウンしていると、再び スピンアップするために、非常に時間がかかってしまいます。  この結果、ADPCM 再生のためのデータが間に合わず、 再生が途切れてしまったり、途絶えてしまったりします。 対策としては、CD-ROM ドライブの「スピンダウン時間」を 延長する方法があります。 PC2E がこれを行なうと、好みや 相性の問題が出てくると思いますので、とりあえずは "CD-ROM Tool" などのフリーのツールを利用してください。 「スピンダウン時間」は 8 〜 16 分程度にしておけば快適に 遊べるのではないかと思います。また、CD アクセス中の回転が 速すぎる場合は同ツールで 8 倍速程度に設定すると良いようです。 なお、ツールで変更した設定はコンピュータを再起動すると ドライブのデフォルト値にリセットされるはずです。 If streaming ADPCM playback doesn't work on your CD-ROM drive due to "spin-down" of disc during playback, try a free tool such as "CD-ROM Tool" and change the "spin-down time" to several minutes (8 or 16 minutes are recommended). You can also change your drive speed if it spins too fast. The 8x drive speed seems to work without any problem. These modifications on your drive should be reset to the default values after restarting your PC. ○ History 2005.01.23: - Improved the mixer device handling - mixer volumes are now configurable with pc2ecfg.exe - Supported pause/resume operation on CDDA playback - Fixed some bugs regarding to the 6-button pad - Fixed a bug in PSG master volume attenuation - Restored the "stretched" screen mode with some improvements - Restored the hardware-accelerated fullscreen mode - Added an option "Use Hardware Acceleration" - Added an option "Sync to 60Hz fullscreen" - "READ Q SUB-CHANNEL" operation is temporarily disabled for performance - Updated the simple configurator (pc2ecfg.exe) - Updated the TOC database 2005.01.09: - Supported 6-button pad (press '6' key to enable/disable) - Supported SPTI for CD-ROM access (code provided by Sugi) - Fixed some bugs in CPU - Improved CD read operation - Minor corrections in VDC - Updated the TOC database 2004.12.26: - Fixed a bug which often corrupted the backup RAM - Fixed a bug in the input code - Fixed a bug in the configurator (pc2ecfg.exe) - Fixed the VDC read operation - "pc2esgfx.exe" is not included on this release - Updated the TOC database 2004.12.20: - The input functions are now implemented using DirectInput (by courtesy of Sugi) - Implemented "READ Q SUB-CHANNEL" operation to some extent - Revised implementation of VDC - Revised windowed screen modes - Improved compatibility - The "stretched" screen mode is disabled on this release - Stopped running the emulator on a different thread - Updated the simple configurator (pc2ecfg.exe) - Updated the TOC database 2004.09.11: - Fixed a bug in 200% stretch code - Fixed input detection code (joystick) - Fixed behaviour of VDC status flags - Fixed timer interrupt code - Fixed initial state of VDC - Fixed a bug that it did not respond to joystick input after drag & drop - Added preliminary support for the SuperGrafx (pc2esgfx.exe) 2004.08.28: - Changed the "windowed + stretched" screen mode to older version - 200% stretch code is now optimized using MMX instructions - Updated the TOC database 2004.08.15: - Fixed a major bug that it did not respond to any keyboard input in fullscreen mode on Windows2000/XP - Improved CD play command - Improved implementation for joystick input - Speeded up things - Changed implementation of "stretched" screen modes ("stretched" fullscreen mode now attempt to use hardware acceleration) - Made a simple configuration program (pc2ecfg.exe) - Updated the TOC database 2004.07.19: - Fixed some minor bugs - Some inner loops are optimized with MMX inline assembly - Updated the TOC database 2004.07.16: - Fixed a serious bug which could lead to indefinite result 2004.07.11: - Fixed some VDC timings - Added preliminary sprite collision detection (not tested) - Added some more code to Arcade Card emulation - Added another screen mode - Added "partial memory load" feature - Updated the TOC Database - CPU reset (F1) now resets the APU as well 2004.07.04: - Fixed a CD detection bug - Fixed a bug that the state/record file name isn't updated when a new game is loaded by drag & drop - Fixed a bug in BIOS version detection code - Fullscreen mode bug maybe fixed - Added preliminary Arcade Card emulation (the code is taken from hu-go!) - Updated the TOC Database 2004.06.27: - (Probably) supported hi-resolution screen mode (works OK on the "HiRes Slideshow" demo by Chris Covell) - Improved PSG sound (some bugs left) - Changed BRAM file name from "bram.bin" to "BRAM.DAT" 2004.06.20: (not released) - Improved emulation of VDC registers $0C, $0D, and $0E - Changed VRAM-SATB DMA timing - VRAM-SATB DMA taking extra CPU cycles is disabled on this version - Pressing F5/F7 will save/load state of emulation (mainly for debug purpose) - Pressing F6/F8 will record/playback game play - File names containing space(s) can be specified using "" - Rewritten the input code 2004.06.13: (not released) - CPU cycles per scanline is set back to 455 (as the number of scanlines per frame seems to be 262) - Main function now runs on a different thread - Some configurations are now saved/restored 2004.06.06: - Fixed a bug that the VDC did not end display on the display-end line under a certain condition - Fixed VDC timing to 453 CPU cycles per scanline - Implemented as the VRAM-SATB DMA takes 1024 CPU cycles - Interrupt timing may be better (but far from perfect) - Now the initial "overscan" colour is set to white - Updated the TOC database for detecting proper CD - Changed the CD detection to solely rely on the TOC database 2004.05.30: - Improved VDC emulation - Fixed fullscreen/window switching bug - Implemented ADPCM streaming playback - Track #2 data file is not supported anymore - Added TOC database for detecting proper CD - Improved CD repeat play - Implemented "overscan" colour 2004.05.17: - fixed CD-ROM^2 CD detection bug - more precise timer emulation - fixed a bug in HuC6280 interrupt code 2004.05.15: - Added a message box at the beginning - ROM images containing header don't work anymore - Preliminary ADPCM support (streaming playback is not supported) - Now it tries to find CD-ROM^2 CD in CD-ROM drive(s) - Now it shows file dialog when no game is specified - Supported drag & drop (windowed mode) - F12 toggles fullscreen/window 2004.05.05: - 高速化 - 画面モード追加(クライアントエリアをクリック) - 描画バグ修正 - CD-ROM^2 改善(CDフェーダー) - ASPI まわりのバグ修正 (Windows NT/2000/XP) 2004.04.27: - サウンド改良(擬似ノイズ、直接D/Aモード、音質) - 画面描画バグ直し - VDC バグ直し(ラスタカウンタとスプライト) - ウインドウ内をクリックすると画面サイズ変更(でも遅くなる) ---- Author : Ki WebPage: http://www.geocities.jp/team_zero_three/ Email : stonefield_k@hotmail.com