Nintendo Maniac
New member
To nab a PIF legally you need either some uncommon hardware or a method of slowing down the console and stepping through instructions. Decapping is lethal to the chip but would work too.
To nab a PIF legally you need either some uncommon hardware or a method of slowing down the console and stepping through instructions. Decapping is lethal to the chip but would work too.
I compiled without the "MMAP_ROM_IMAGE" flag because it would not compile otherwise.
...wait a minute, is "pifdata.bin" the same thing? Cause that's what MESS uses, and there's WAY more information on the internet for that.
EDIT: Darn, I don't think it is the same thing... I keep getting "cen64.exe has stopped working" whenever I try to launch Mario Kart 64 in z64 format.
Here's the hash of my pifdata.bin, can anyone confirm/deny if it's the correct file?
MD5: 4921d5f2165dee6e2496f4388c4c81da
SHA-1: 9174eadc0f0ea2654c95fd941406ab46b9dc9bdd
Insert image macro here!it's likely that the binary won't work on their system if their system is older.
This is too ambiguous for me to be able to use Google for help. "update your system path"? My system path is C:\Windows\system or alternatively C:\Windows\system32 - just like every other Windows installation. I can't google how to do something if I don't even know what it is I'm supposed to google for.update your system path so that it includes the mingw64\bin directory (Google if you don't know how).
I ironed out all the issues with Windows builds. It's now completely scripted to the point where you should be able to checkout and build CEN64 even if you have no prior programming experience.
If some of you were unable to load CEN64 before, it was because my build optimizations are highly aggressive and target the host processor as best as possible. If you try to give someone else a binary, it's likely that the binary won't work on their system if their system is older.
I also patched the Windows ROM loading process, so there shouldn't be any more ROM load problems.
Anyways, to build:
Download and unpack all the relevant files (this kind of sucks without git; I apologize), install the tools (see below), and double click the windows/release.cmd file (or release/debug.cmd file if you're adventurous). This will compile CEN64 will all of the optimizations, bells, and whistles that I've intended to pass on at the current point in time. The README on github should be clear -- it's really an easy process.
-----
Installing the tools:
Do these next steps only once. After you install these things, you can just download CEN64 from github as often as you'd like and rebuild.
Download the latest version mingw64 (x64), here: http://sourceforge.net/projects/mingwbuilds/files/latest/download
After installation, update your system path so that it includes the mingw64\bin directory (Google if you don't know how).
Obtain GLFW2 libraries and headers, here:
http://sourceforge.net/projects/glfw/files/glfw/2.7.9/glfw-2.7.9.bin.WIN64.zip/download
Copy the "include" directory and "lib-mingw/libglfw.a" file into the top-level (i.e., CEN64) directory. Nothing more, nothing less.
Each time you want to build, just double-click on a script in the "windows" directory.
/usr/bin/sh: -c: line 1: syntax error: unexpected end of file
mingw32-make: *** [Objects\CEN64.o] Error 1
EDIT:
This is too ambiguous for me to be able to use Google for help. "update your system path"? My system path is C:\Windows\system or alternatively C:\Windows\system32 - just like every other Windows installation. I can't google how to do something if I don't even know what it is I'm supposed to google for.
"What choo talkin 'bout Willis?"
Ah, this part was not stated! I had everything downloaded, but I had them in the same folder that cen64-master was in!When all the zips have finished downloaded, extract them all. We will move the contents into C:\cen64-master
Anyway, if it's optimized on compile, I supposed this would be one of the rare cases where a program really should use an installer and essentially compile it during installation.
By comparison, some other programs that use an installer are relatively small and simple yet said application is completely portable... *cough*post-v1.6-Project64*cough*
EDIT:
This is too ambiguous for me to be able to use Google for help. "update your system path"? My system path is C:\Windows\system or alternatively C:\Windows\system32 - just like every other Windows installation. I can't google how to do something if I don't even know what it is I'm supposed to google for.
Ah, this part was not stated! I had everything downloaded, but I had them in the same folder that cen64-master was in!
The pif has been decapped but i don't think there was anything extracted from it. There is also another rom in that chip that would be absolutely required to cycle emulate the n64 but nobody successfully extracted it yet as far as i know: this is the rom run by the 4-bits pif processor.
In case someone is interested, the only way i know to dump the pif rom is to build a test rom that does the following:
- put a watch point using the appropriate watch register in cop0 in an adresse read during pif rom execution.
- copy the pif rom in a part of rdram not used by boot code within the code called by the watch point
- print on screen content of the part of the rdram where the pif has been copied
When you run it on the n64, it installs the watch point and you only have to reset the machine so that in its second run it goes to the watch point handler. And the best part: copy manually all values printed on screen (or find a better idea to achieve this).
For the record, the rom is different on us and european machines. Maybe australian and japanese n64 are also different ? And the biggest challenge.... finding a way to get the pif rom inside aleck64 hardware....