Thank you for downloading MegaDev9 v1.0.1.
MegaDev9 is a DEV9 plugin for PCSX2, a great PS2 emulator. (http://www.pcsx2.net)

DEV9 is a part of the PS2 that handles USB, HDD and Ethernet. 
In PCSX2, USB is handled by a USB plugin, HDD and Ethernet are handled by a DEV9 plugin.

This plugin is a DEV9 plugin, so it's a plugin for HDD and Ehternet. At the moment, the plugin only handles HDD. Ethernet support will maybe come in the future.

To get it working : 

1- Put MegaDev9.dll in the plugins folder of PCSX2 (NOT THE ROOT FOLDER), otherwise it won't show up in the plugins list. The plugin doesn't require any external DLL to work.

2- Make sure you've a DEV9-capable PS2 BIOS. Slim PS2 BIOSes aren't compatible (Thanks to Suloku for this info), and BIOSes from old PS2s with PCMCIA aren't too (afaik). You must also have the EROM, ROM1 and ROM2 files with your BIOS. In other words, you must have a complete BIOS dump from your PS2. Don't complain that the plugin doesn't work if you're using a downloaded (illegal) BIOS. (DEV9-capable BIOSes are SCPH-3XXXX and SCPH-5XXXX).

3- Configure the plugin. For that you must launch PCSX2, select MegaDev9 in the DEV9 plugins list and click on the Configure button. A GUI will show up, here's its description : 
	-Enable logging : this is only for debugging purposes. The plugin will write all events to a file.
	-HDD file : enter the path and the name of the HDD image (see below for more info about HDD image). If you leave it, the image will be created in the PCSX2 root folder.
	-HDD size : select the size you want for the emulated HDD (HDD image). You can choose from 1 GB to 127 GBs. I recommend selecting at least 8 GBs, lower sizes could cause problems.

4- Launch your program in PCSX2. The first time, the HDD image will be created in the path that you previously configured. This may take more or less time depending on the HDD size you've selected. Wait until the progress bar gets complete (100%). Then your program will ask for formatting if it's able to do this. If you followed the previous steps right, your program won't ask for formatting anymore, nor other programs will do.

The HDD image is a file that will be used as a HDD, ie. when your program writes data in the HDD, the plugin will write these data in this file. Don't delete or move it without reconfiguring the HDD file path in the plugin, or you may cause problems.



Troubleshooting
Note : if your problem persists or if it's not described here, tell it to me. Attach a log file if possible.

My program always asks for formatting.
If you've this problem, make sure you've a complete BIOS dump from a DEV9-capable PS2. The first models with PCMCIA aren't DEV9-capable, and the slim PS2s aren't too. Make sure the console doesn't tell it couldn't find rom1, rom2 or erom, these files are needed.

My program fails writing to the HDD.
Make sure you've enough space on your real HDD and also that the HDD image is big enough. Make sure the HDD image doesn't have read-only attribute.

When I use savestates, I've problems with HDD funcs in my program.
That's normal, savestates aren't supported yet.

When I use the HDD command X, it doesn't work, it reports an error.
The command you're trying to use isn't implemented, or you're passing invalid args.

How can I copy games with HDLoader ?
You can't do this for the moment. There's a CDVD timing bug in the current PCSX2 
version that will make HDLoader will freeze after reading some CDVD sectors. Wait 
for a new version.



Note : 
I designed the plugin to be as many portable as possible. The only Win32-only thing is the GUI. If somebody is interested in porting the plugin for Linux, he's free to do it. Isolate all the Win32-specific code snippets with #ifdef / #endif tags.