Código del inyector N64

por el khuong

/**
* VC Rom Injector
* v.1
* - khuong
*/

$appfile = "sins.app"; // original 00000005.APP
$tmdfile = "data/TITLE.TMD"; // original TMD file
$newrom = "data/Harvest Moon 64 (U) [!].z64"; // new rom
$romstart = 0x14BF00; // where roms starts in memory
$romsize = 32; // in mb


// do not edit.
$romsize = ((pow(2,20))/1) * $romsize;

$fp = fopen($appfile, "rb");
$header = fread($fp, $romstart);
fseek($fp, $romstart + $romsize, SEEK_SET);
$footer = fread($fp, filesize($appfile) - ($romstart + $romsize));
fclose($fp);

$fp = fopen("00000005.APP", "w");
print "writing header...\n";
flush();
fwrite($fp, $header);

print "injecting rom....\n";
flush();
$handle = fopen($newrom, "rb");
$contents = '';
while (!feof($handle)) {
fwrite($fp, fread($handle, 8192));
}
fclose($handle);

if(filesize($newrom) != $romsize) {
print "writing padding....\n";
flush();
fwrite($fp, str_repeat(pack("c", 0xff), ((33554432 - filesize($newrom)))));

}
fwrite($fp, $footer);
fclose($fp);
print "finished....\n";
flush();

$fp = fopen($tmdfile, "rb");
$header = fread($fp, 0x2A8);
fseek($fp, (0x2A8 + 20), SEEK_SET);
$footer = fread($fp, filesize($tmdfile) - (0x2A8 + 20));
fclose($fp);
file_put_contents("TITLE.TMD", $header . sha1_file("00000005.app", true) . $footer);
print "edited tmd file....\n";
flush();
?>
mmmmmmm... otro que se registra apra dar un aporte....
Excelente, auqnue estaría mucho mejor si fuera algo ya hechecito...
sorry por la pereza, pero somos bastantes los novatos...

supongoque será algo en C, no?
ok ahora solo falta q alguien con conocimientos lo pruebe.
ups.... jejeje

por eso digo, habemos muchos novatos...

Beuno y aún nadie lo ha probado?
conq ue se peude compliar? lo qu genera fucniona?
y si lo hace? alg´un error? no podría cambiarle el banner yel ID pro el mismoqueel zelda? digo, el emu sería el del sin, pero el banner ya sería el del zelda, incluso algún customm banner con el nombre d ZELDA en español!!! yo tengo el zelda NTSC por si quierenqu hag pruebas
gameoso escribió:ups.... jejeje

por eso digo, habemos muchos novatos...

Beuno y aún nadie lo ha probado?
conq ue se peude compliar? lo qu genera fucniona?
y si lo hace? alg´un error? no podría cambiarle el banner yel ID pro el mismoqueel zelda? digo, el emu sería el del sin, pero el banner ya sería el del zelda, incluso algún customm banner con el nombre d ZELDA en español!!! yo tengo el zelda NTSC por si quierenqu hag pruebas


(Primero copias el codigo de "" y lo pegas en un archivo con extensión .php)

Se puede instalando Apache + PHP (servidor web basico), hay varios packs que lo instalan muy facilmente (p.e. http://www.en.wampserver.com/ )

Creo que también se puede descargando solo PHP y haciendo "php.exe nombrearchivo.php" desde la consola, pero nunca lo he probado.
Hemp está baneado por "Ya nos hemos cansado de tus sobradas"
GameZelda escribió:



Creo que también se puede descargando solo PHP y haciendo "php.exe nombrearchivo.php" desde la consola, pero nunca lo he probado.


Tengo un exe llamado PHP y no lo sabia?!
http://www.bambalam.se/bamcompile/download/bamcompile1.21.zip

Esto incluye el codigo php en un exe, con lo que ahora mismo nos serviria para crear un exe que ejecute el codigo.

Hay que modificar antes todo esto:

$appfile = "sins.app"; // original 00000005.APP
$tmdfile = "data/TITLE.TMD"; // original TMD file
$newrom = "data/Harvest Moon 64 (U) [!].z64"; // new rom
$romstart = 0x14BF00; // where roms starts in memory
$romsize = 32; // in mb

EDIT: romstart y romsize se refiere al 00000005.APP

Lo del romstart no estoy seguro de como se obtiene, ahora busco.
7 respuestas