|
1 | | -np2debug |
2 | | -======== |
| 1 | +=============================== |
| 2 | +Neko Project II - Debug Edition |
| 3 | +=============================== |
3 | 4 |
|
4 | | -A NEC PC-98 emulator with extended debugging features |
| 5 | +__([Windows binaries are here] (http://thpatch.net/wiki/PC-98_hacking))__ |
| 6 | + |
| 7 | + |
| 8 | + |
| 9 | + |
| 10 | +About |
| 11 | +----- |
| 12 | + |
| 13 | +This is a fork of [Xnp2] (https://github.com/nonakap/xnp2) with extended debugging features. The aim is to achieve a level of debugging comfort high enough to thoroughly modify PC-98 binaries and add new features to it. |
| 14 | + |
| 15 | +In addition to the assembly, memory and register viewers for emulated code already present in Xnp2, this version also includes: |
| 16 | + |
| 17 | +* single-step execution |
| 18 | +* code breakpoints |
| 19 | + |
| 20 | +What's still missing: |
| 21 | + |
| 22 | +* memory breakpoints |
| 23 | +* Shift-JIS memory display and modification |
| 24 | +* assembly modification |
| 25 | +* read emulated files from a directory instead of using .hdi images |
| 26 | + |
| 27 | +As Xnp2 (and, most importantly, its debugging features already present) doesn't come with a cross-platform method for GUI coding, these extended features are currently _exclusive to the Win9x build_. After all that refactoring, it probably doesn't even build on Linux anymore... |
| 28 | + |
| 29 | +This is, and probably ever will be, only tested against the Touhou Project games 01-05. While it is fully compatible with them, both the debugging functions and the rather outdated code base make it __noticeably laggier__ than the recommended [fmgen build] (http://www.shrinemaiden.org/forum/index.php?topic=11117.0). Thus, this edition is not what you're looking for if you want to actually _play_ the games. |
| 30 | + |
| 31 | + |
| 32 | + |
| 33 | +Building |
| 34 | +-------- |
| 35 | + |
| 36 | + |
| 37 | + |
| 38 | +### Windows |
| 39 | +Visual C++ 2010 is required for building. I don't really see a reason in maintaining project configurations for previous versions. Once you've understood property sheets, you really don't want to go back. |
| 40 | + |
| 41 | +You'll also need: |
| 42 | + |
| 43 | +* the **DirectX SDK**. Apparently, this is included in the Windows SDK now. |
| 44 | +Starting with the June 2010 release, the required `ddraw.lib` is no longer included. You can get it from [here] (http://thpatch.net/wiki/File:Ddraw_lib.zip). Since we're only using legacy functionality though, any old version of the SDK will do. |
| 45 | + |
| 46 | +* **[YASM] (http://yasm.tortall.net/)** to build the assembly code. |
| 47 | +Get the VS2010 archive and install it globally into Visual Studio's *BuildCustomizations* directory. |
| 48 | + |
| 49 | + |
| 50 | + |
| 51 | +### Linux |
| 52 | +(via http://eru-cool.blogspot.com/2012/02/emulador-pc-98-nativo-para-linux-para.html) |
| 53 | + |
| 54 | +You need the development libraries of `GTK2`, `SDL` and `SDL_mixer`, as well as `nasm` to build the assembly code. On Ubuntu, the required packages are: |
| 55 | + |
| 56 | + build-essential nasm libsdl1.2-dev libsdl-mixer1.2-dev libgtk2.0-dev libxxf86vm-dev |
| 57 | + |
| 58 | +Also, the Touhou games require the build to be configured with IA-32 support: |
| 59 | + |
| 60 | + ./configure --enable-ia32 |
| 61 | + make |
| 62 | + |
| 63 | + |
| 64 | + |
| 65 | +Debugging |
| 66 | +--------- |
| 67 | +The debugging window can be accessed under `Tools ? Debug utility`. |
| 68 | + |
| 69 | +##### Unassemble |
| 70 | +* Current instruction is always at the top of the window |
| 71 | + |
| 72 | + |
| 73 | +Contributing |
| 74 | +------------ |
| 75 | +Don't be shy. This fork is basically a sandbox anyway, so feel free to send pull requests. |
| 76 | + |
| 77 | +I especially appreciate if someone is willing to waste the time to: |
| 78 | + * port the legacy DirectDraw code to Direct3D, or even |
| 79 | + * port the entire Win32 API code to GTK2, similar to the Linux version. |
0 commit comments