Updated the emulator with an improved builtin network adapter. There are two modes of operation local and remote. The remote one allows you to run either cycle1 or cycle2 over the internet, downloading and decrypting segments as needed. The local version is designed for home brew but can also run the official cycles if you have downloaded and decrypted them separately.
For running homebrew locally you need to necessary for the program to run together into a single zip with a .npz extension. The segment filenames should be 6 characters long with the filename being the segment id in hex (0 padded) and should have either a .pak extension if it has been pre packitized, or a .nabu extension if its just the raw binary.
These can then be run in the emulator by using -hcca hcca_local -npz <image>
The remote version can be used with -hcca hcca_remote
and allows you to select either cycle 1 or 2 based on an option in the machine configuration menu in mame.
Some things don't work yet in either mode. The two most notable things are retrochat, because i don't currently support the bidirectional communication mode. Also not supported is the method used by DJ in things like bad apple to request additional assets.