Give me something

We've released Neko Project 21/W and various other things.

Neko Project 21/W is based on the original Neko Project 21, with various added features to enable emulation of PC-98 systems from the mid-to-late period (around 1993 onwards).

This emulator can only run on hosts running Windows 2000 (SP4 SRP1v2 required) or later. It cannot run on Linux or other systems. For non-Windows environments, you can use AZO's modified Neko Project II (NP2) to get almost identical functionality.

Aside from Neko Project 21/W, the rest are a mix of things like hardware applications, drivers, and tools.

Neko Project 21/W related

*Please note that save state/resume compatibility may be lost during version updates.
* *If this is your first time using this feature, please also see the notes at the bottom of the page.*

Neko Project 21/W Main Unit

Neko Project 21/W Download (ver0.86 rev101β12)
This
is a beta version. Source code is included.
Neko Project 21/W Download (ver0.86 rev100) This is the standard version of
Neko Project 21/W (ver0.86 rev100) . Source code is included. (Added on 2/25) Around 10:30 PM, a fix for cursor jitter in the MS-DOS version of Seamless Mouse was added. There are no other effects.

Neko Project 21/W Download (ver0.86 rev99)
This is an older version of Neko Project 21/W
. Source code is included.
This is a prototype of the Neko Project 21/W Starter Set,
designed to allow for easy use with FreeDOS + HOSTDRV. The version is ver0.86 rev100. To change the version, simply overwrite the exe file.
Archives of past versions
: For those who want to test or compare older versions (includes versions with critical bugs; disk image backup recommended).
Version History

Neko Project 21/W Tools

Neko Project II Utility Disk (np2tool.d88)
Neko Project II Support Tools (Can also be used with the original game)
HOSTDRV.COM (new edition)
The emulator accesses the host PC's directory as a virtual drive.
PWOFF.COM
Exit Neko Project II from within the emulator.
NP2IDLE.COM
This reduces the host CPU load by calling the HLT instruction during idle periods in MS-DOS.
NP2CHK.COM
This tool determines whether a product is part of the Neko Project 21/W series, Neko Project II series, or something else.
Neko Project 21/W Utility & Disk Image:
Neko Project 21/W Support Tools (Nothing will happen if you use this with the original np2/np21)
NPCNGCLK.EXE
The CPU clock is dynamically and temporarily changed from within the emulator.
NPCNGCFG.EXE
This temporarily changes the hardware configuration from within the emulator.
NPCCxx.COM/NPCCxx.SYS
This is a lightweight COM and SYS (for CONFIG.SYS) version of NPCNGCLK and NPCNGCFG.
NPCNGIRQ.COM
This temporarily changes the IRQ of a specified device from within the emulator.
NPMAPIRQ.COM
This displays a list of IRQs for emulation devices.
GETBIOS
is a tool for creating BIOS images from your own hardware (link to the official page).
A tool to cut or add cylinders 77-79 to a 1.25MB flat floppy disk image
. As the name suggests, this tool allows you to add or remove cylinders 77-79 from a 1.25MB flat floppy disk image.

Neko Project 21/W Drivers

Neko Project 21/W System Port Driver & Utility for Windows NT (ver1.1):
This driver and utility allows access to the Neko Project II system port from an NT-based OS within the emulator.
The Neko Project 21/W Host Shared Drive Driver & Utility for Windows NT (ver1.5)
is a driver and utility that allows access to the Neko Project II shared drive (HOSTDRV) from an NT-based OS within the emulator. It allows you to access the host PC's directory as a virtual drive from within the emulator.
Neko Project 21/W Seamless Mouse Driver for Windows NT (ver1.1)
is a driver that enables seamless mouse operation on Windows NT3.51, NT4.0, and 2000 within the emulator.
Neko Project 21/W Seamless Mouse Driver for Windows 9x (ver1.0)
is a driver that enables seamless mouse operation on Windows 9x within an emulator.
Neko Project 21/W Seamless Mouse Driver for Windows 3.1 (ver1.0)
is a driver that enables seamless mouse operation on Windows 3.1 within an emulator.
Neko Project 21/W Seamless Mouse Driver for MS-DOS (ver1.8)
is a resident program that enables seamless mouse operation within the MS-DOS emulator. Please do not have excessive expectations as it does not support many software programs. If your np21/w main unit version is earlier than rev100, please use ver1.6.
This is a dedicated SCSI driver for the Neko Project 21/W for Windows (ver1.1),
usable with Windows 9x and Windows NT within the emulator. It offers extremely high-speed read and write speeds.
This is a dedicated display driver for the Neko Project 21/W, npdisp16 for Windows 3.1 (ver0.9),
usable within the Windows 3.1 emulator. It's intended for technical experimentation, so please don't expect commercial-level stability. As a bonus, it's also compatible with Win9x.

Neko Project 21/W Other

This is a FONT.BMP alternative font bitmap for Neko Project II,
intended for environments where MS Gothic alternative fonts cannot be automatically generated. While the character shapes differ from the actual font, it should be usable to some extent.
This is a reference
configuration file used by the developer. It's configured to use almost all of the features.
Configuration files for each guest OS:
These are recommended configuration files for each OS. As long as you pay attention to the Win2000 Setup (which requires setting the IDE's Interrupt Delay to 2000 or higher for both Read and Write), there's no real need to use it.Starting with rev.81β2, delay settings in Win2000 Setup are no longer required.
This is an archive of the setup procedures for each OS
(originally found on the old website). For recent versions, you can usually set up without referring to these instructions.

Related to actual equipment

It can be used not only with emulators but also with actual hardware.

Sound Blaster 16 for PC-98 Windows 2000 Driver (WDM) Patch ver. 0.8
This patch generates a driver for using Sound Blaster 16 for PC-98 on Windows 2000 from the PC/AT compatible driver. It can also be used on actual hardware. For older versions, please search the archive of past versions above.
Note: If you want to use the official latest driver (DirectX compatible) on Win98, it seems that changing 8B C5 at address 156CE in SB16.VXD to EB 61 will make it work (this information was found somewhere).
MPU-PC98II Windows 2000 Driver (WDM) Patch ver. 0.8
This patch generates a driver for using the MPU-PC98II or a compatible device on Windows 2000 from a PC/AT compatible machine driver. It can also be used on actual hardware. If you require greater stability, it might be better to use the NT4.0 driver. If you want an older version, please search for it in the archive of past versions above.
PC-98 version Windows NT-based HLT instruction patch driver ver.1.1
This device driver dynamically patches the issue where the HLT instruction is not called during idle on PC-98 versions of Windows NT3.51, NT4.0, and 2000, so that it is called.
Sound Blaster 16 for PC-98 Driver ver.1.2 for Windows NT 4.0.
This is a driver for using Sound Blaster 16 for PC-98 on Windows NT 4.0. It is said to work on actual hardware, but the author has not yet tested it.
This is a configuration change tool for
the Sound Blaster 16 for PC-98, compatible with MS-DOS and IPLware. It temporarily changes the IRQ and DMA channel settings. It can be run on MS-DOS or IPLware. The changed settings can be reset to their original state.
This program checks if accessing a floppy disk using INT 1Bh results in an error when crossing DMA banks. It
's simply a verification program that checks whether an error occurs when accessing a floppy disk using INT 1Bh and the memory address being transferred crosses DMA banks (64KB units). It's useless for the average person; it's for developers.

N88-BASIC related

This is a program that performs a Fast Fourier Transform in N88-BASIC. It's not particularly fast, but it runs without machine code.

This is essentially a port of the following C language source code, so I do not claim any rights. You are free to use it without restriction.
That said, I don't think there's much point in doing anything with BASIC anymore...
Source: Outline and Design Method of FFT (Fast Fourier Cosine Sine Transform)

Fast Fourier Transform in BASIC Part 1
Fast Fourier Transform in BASIC Part 2
Fast Fourier Transform in BASIC Part 3
Fast Fourier Transform in BASIC Part 4
Fast Fourier Transform in BASIC Part 5 Fast Fourier
Transform in BASIC Part 6
Fast Fourier Transform in BASIC Part 7
Fast Fourier Transform in BASIC Part 8
Fast Fourier Transform in BASIC Part 9

Related to unauthorized modifications of the SL9821

SL9821にNeko Project 21/WのLGY-98とCL-GD5430を無理やりくっつけてみた試作品です。

バージョンがかなり古いので注意。

SL9821 + LGY-98(TAP-Win32)
Neko Project 21/Wのソースを流用してSL9821(0.2.4.2)をLGY-98対応させてみたものです。使用条件等はSL9821のサイトをご覧下さい。
SL9821 + LGY-98(TAP-Win32) + CL-GD5430
Neko Project 21/Wのソースを流用してSL9821(0.2.4.2)をLGY-98とCL-GD5430ウィンドウアクセラレータに対応させてみたものです。別窓モードしか実装していない&マウス操作はメイン画面でしかできないので使いにくいと思います。使用条件等はSL9821のサイトをご覧下さい。

その他ソフトウェア

どのカテゴリにも属さない雑多なプログラムです。

ymfmidi for Windows - Software OPL FM MIDI synthesizer

注意事項

BIOSについて

本家Neko Project IIと同じく、Neko Project 21/WもBIOSがなくてもそれなりに動くように作られています。
BIOSがない場合の制限事項は以下の通りです。逆に言えばこれ以外の制限はほぼありません。

なお、ITF.ROMは必要ありません(使用しません)。他、IDE.ROM等は非推奨のため用意する必要はありません。

機種依存系のフラグは全てNeko Project 21/Wが修正しますので、よほど特殊でない限りはどんな機種から取ってきても問題ないはずです。

メモリマップについて

Neko Project 21/Wのメモリマップはやや特殊ですので、UMBの設定の際はご注意下さい。 実機でチューニングしたものを持ってきてもそのままでは動かないと思います。

手動で設定するのが面倒な場合はHIMEM+EMM386やLEMMにしておけば自動でそれなりに設定してくれます。

使用機器 アドレス 備考
SASI D0000h~D0FFFh SASI互換HDDをIDE#0, IDE#1に接続した場合のみ使用されます
SCSI D2000h~D5FFFh SCSIを使用していない場合は空きになります
IDE D8000h~DBFFFh rev69以降のエミュレーションIDE BIOSでは使用されません(実機IDE BIOS使用時のみ占有)。非公開機能で変更可能(付属ヘルプ参照のこと)

ディスクイメージ追加サポートについて

NVL.DLLを用意するとNeko Project 21/Wで追加のディスクイメージが読めるようになります。NVL.DLLについては「Neko Project 21/W(np21w, ねこープロジェクト21/W)用のVirtualPC等イメージ使用ライブラリ」から入手してください(ディスクイメージエディタのNDと同じサイトです)。ページにはビルド手順が書かれていますが、現在のバージョンでは既に取り込まれていますので変更用ファイルの中のNVL.DLLだけを用意すればOKです。

NVL.DLLはNeko Project 21/Wのexeと同じ場所に置いてください。 NVL.DLLには32bit版と64bit版がありますので、np21w.exeなら32bit版を、np21x64w.exeならx64フォルダ内の64bit版を使用してください。

追加サポートされる主要なイメージ形式は以下の通りです。

ライセンスについて

Neko Project 21/Wの大半のコードは修正BSDライセンスですが、以下のファイルは移植のためライセンスが異なっています。これらを含めてコンパイルすると全体としてのライセンスが変わりますのでご注意ください。 バージョンによってライセンスが異なる場合がありますので、必ずそのバージョンに該当する表を参照してください。

Neko Project 21/W 修正BSDライセンスソースダウンロード(ver0.86 rev100相当)
下記の除外操作が面倒な人向けに修正BSDを適用できる範囲だけにしたバージョンを用意しました。
ver0.86 rev98以降
ファイル ライセンス 除外方法
/sound/fmgen/*.* Readme参照
原則商用不可
SUPPORT_FMGENをプリプロセッサ定義から削除し、/sound/fmgen/*.*を除外する
以下のファイルは標準構成では除外されています(ビルド対象に含まれない)
fpemul_dosbox.c
fpemul_dosbox2.c
GPLv2 【標準で除外】使用する場合はSUPPORT_FPU_DOSBOXとSUPPORT_FPU_DOSBOX2を定義する。
/sound/mame/*.* GPLv2 【標準で除外】使用する場合はUSE_MAMEを定義し、USE_MAME_BSDを定義しないようにする。
fpu/softfloat/*.* Readme参照
修正BSD風味
【標準で除外】使用する場合はSUPPORT_FPU_SOFTFLOAT3の代わりにSUPPORT_FPU_SOFTFLOATを定義する。
/wab/tgui9680*.* GPLv2 【標準で除外】そもそも未使用なのでバイナリに影響なし。
ver0.86 rev97β2以降
ファイル ライセンス 除外方法
cirrus_vga*.*
vga_int.h
lgy98*.*
MIT SUPPORT_CL_GD5430とSUPPORT_LGY98をプリプロセッサ定義から削除する
fpemul_dosbox.c
fpemul_dosbox2.c
GPLv2 SUPPORT_FPU_DOSBOXとSUPPORT_FPU_DOSBOX2をプリプロセッサ定義から削除し、fpemul_dosbox.c, fpemul_dosbox2.cをコンパイルから除外する
fpemul_softfloat.c 修正BSD 本体と同じライセンスになりました。
fpu/softfloat/*.* Readme参照
修正BSD風味
Remove SUPPORT_FPU_SOFTFLOAT from the preprocessor definitions and exclude fpemul_softfloat.c and softfloat/*.*.
If you want to use the modified BSD version of SoftFloat, define SUPPORT_FPU_SOFTFLOAT3.
fpemul_softfloat3.cpp
fpu/softfloat3/*.*
Modified BSD This is a replacement for the proprietary SoftFloat license.
/sound/fmgen/*.* Readme reference
principle No commercial use
Remove SUPPORT_FMGEN from the preprocessor definitions and exclude /sound/fmgen/*.*
/sound/mame/*.* GPLv2 Remove /sound/mame/*.* and use /sound/mamebsd/*.* instead. If you do not use MAME at all, remove SUPPORT_MAME from the preprocessor definitions.
/sound/mamebsd/*.* Modified BSD This is a replacement for the GPLv2 version of MAME.
/cbus/ct1741io.c Modified BSD It now has the same license as the main unit.
/wab/gui9680*.* GPLv2 Since it's unused, it won't affect the binary. It's okay to delete it.
ver0.86 rev88 and later
file license Exclusion method
cirrus_vga*.*
vga_int.h
lgy98*.*
MIT Remove SUPPORT_CL_GD5430 and SUPPORT_LGY98 from the preprocessor definitions.
fpemul_dosbox.c
fpemul_dosbox2.c
GPLv2 Remove SUPPORT_FPU_DOSBOX and SUPPORT_FPU_DOSBOX2 from the preprocessor definitions, and exclude fpemul_dosbox.c and fpemul_dosbox2.c from compilation.
fpemul_softfloat.c Modified BSD Remove SUPPORT_FPU_SOFTFLOAT from the preprocessor definitions and exclude fpemul_softfloat.c and softfloat/*.*.
fpu/softfloat/*.* See Readme
for corrected BSD-style modifications.
Remove SUPPORT_FPU_SOFTFLOAT from the preprocessor definitions and exclude fpemul_softfloat.c and softfloat/*.*.
/sound/fmgen/*.* Readme reference
principle No commercial use
Remove SUPPORT_FMGEN from the preprocessor definitions and exclude /sound/fmgen/*.*
/sound/mame/*.* GPLv2 Remove USE_MAME from the preprocessor definitions and exclude /sound/mame/*.*
/cbus/ct1741io.c GPLv2 Remove SUPPORT_SOUND_SB16 from the preprocessor definitions and exclude /cbus/ct1741io.c, or manually delete the DSP-related code.
/wab/tgui9680*.* GPLv2 Since it's unused, it won't affect the binary. It's okay to delete it.
ver0.86 rev87 and earlier
file license Exclusion method
cirrus_vga*.*
vga_int.h
lgy98*.*
MIT Remove SUPPORT_CL_GD5430 and SUPPORT_LGY98 from the preprocessor definitions.
fpemul_dosbox.c
fpemul_dosbox2.c
fpemul_softfloat.c
GPLv2 Remove SUPPORT_FPU_SOFTFLOAT, SUPPORT_FPU_DOSBOX, and SUPPORT_FPU_DOSBOX2 from the preprocessor definitions, and exclude fpemul_dosbox.c, fpemul_dosbox2.c, and fpemul_softfloat.c from compilation (Berkeley SoftFloat is originally under a different license, but fpemul_softfloat.c is under the GPL because it contains code derived from DOSBox).
fpu/softfloat/*.* See Readme Remove SUPPORT_FPU_SOFTFLOAT from the preprocessor definitions and exclude softfloat/*.*.
/sound/fmgen/*.* Readme reference
principle No commercial use
Remove SUPPORT_FMGEN from the preprocessor definitions and exclude /sound/fmgen/*.*
/sound/mame/*.* GPLv2 Remove USE_MAME from the preprocessor definitions and exclude /sound/mame/*.*
/cbus/ct1741io.c GPLv2 Remove SUPPORT_SOUND_SB16 from the preprocessor definitions and exclude /cbus/ct1741io.c, or manually delete the DSP-related code.
/wab/tgui9680*.* GPLv2 Since it's unused, it won't affect the binary. It's okay to delete it.

About the source code

Only the Visual Studio projects win9x\np2vs2010.sln and win9x\np2vs2019.sln are maintained. Also, while recent versions are intended to allow Debug builds, this is not guaranteed. Basically, only Release builds are supported. If you want to run a Debug build, you will need to appropriately transfer the Release build settings.

In a Release build, you cannot inspect the contents of variables using the debugger, but you can do so by disabling optimization for the file whose variables you want to inspect. If you want to avoid this hassle, you can disable optimization for the entire project, but be aware that this will significantly degrade performance.

The code includes a global key hook using SetWindowsHookEx, which will cause the debugger to freeze for a few seconds if you press a key while it's stopped. To avoid this, remove HOOK_SYSKEY from the preprocessor definitions.

The VST 2 SDK is required for building. It is also included in older VST 3 SDKs. If you do not need VST, comment out #define SUPPORT_VSTi in win9x\compiler.h.

About the features for text hooks

Adding USETHOOK=true to the [NekoProject21] (or [NekoProjectII]) section of the INI file enables the text hook functionality. Disable it when not in use as it can negatively impact performance.

Specifically, when reading 2-byte characters, you call lstrlenW, lstrlenA, and CharNextA so that the hook program can capture them. However, these functions are called in other places as well. You'll need to actually print the string to find the correct function to hook.

If you use the Textractor software, you may need to use something called H-code.

/HS4@0:kernel32.dll:lstrlenA
/HQ4@0:kernel32.dll:lstrlenW

Back to top

Эта веб-форма не поддерживается
В целях безопасности не указывайте информацию в формах этого типа, когда используете Google Переводчик.
OKОткрыть исходную страницу