Aller au contenu

PS2 Controller Remapper


ShaoliAss

Messages recommandés

PS2 Controller Remapper

 

 

 

 

 

 

 

 

 

C'est tout chaud, ca sort du four! :D

 

PS2 Controller Remapper est un petit utilitaire PC permettant de reconfigurer les actions des touches de votre manette en générant des fichiers .pnach directement utilisable sur votre PS2 (par ps2rd mod, ou à convertir pour ps2rd version normale), ou sur PCSX2.

 

 

 

PS2 Controller Remapper is a tool designed to arbitrarily remap a PS2 game's controls using cheat codes.

 

Remapping codes can be used on either a real PS2 or PCSX2.

 

This will not work with all games but compatibility should be better than 90% based on analysis of about 200 games.

 

Thanks goes out to @No.47 for both suggesting the project and doing a lot of testing for me.

 

 

How to use it

 

Opening an ELF

 

In order to remap the controller PS2 Controller Remapper must analyze the games executable ELF file, you can do this by dragging and dropping the ELF file or by clicking 'Browse'.

The game's ELF file can be found by looking for SXXX_###.## in the game disc's root directory or .elf elsewhere, where Xs are letters and #s are numbers.

Some games have multiple ELF files - if you receive the error "Unable to locate controller routine" search the disc for .elf files and try one of those.

 

Remapping

 

Select the input to change and scroll through the list of inputs to select what to replace it with

PS2 Controller Remapper makes sure that every input can be mapped to only one other input - this is by design

 

Options

 

Selecting the 'Use memcpy' checkbox reduces code length by ten, however it also reduces compatibility

Selecting the 'RAW Code' radio button generates codes in unencrypted 'RAW' PS2 cheat code format - compatible with ps2rd and Codebreaker 9.3+

Selecting the 'PNACH' option generates codes in PCSX2 cheat code format (also compatible with ps2rdmod (ps2rdmod (ps2rd w/PNACH support)))

 

Finally

Hit the 'Remap' button, copy or save the code and enjoy!

 

 

 

General FAQ

 

Received error "Invalid ELF file"

The file is not an ELF or is a broken ELF.

 

Received error "Unable to locate controller routine"

The game is either multi-ELF or not compatible.

 

"The code did not change the controls or screwed up the controls"

Try the following

In the 'scePadRead hook address' drop down try selecting a different address, if there are no others or the others do not work please report the game here.

 

"Why are the codes so long?"

See the Technical FAQ.

 

"Can you explain how to use cheat codes to me?"

No - Google is your friend.

 

"I have not used this program, is it compatible with game XXX?"

Try it and find out.

 

 

Technical FAQ

 

"Does this work with scePad2Read games"

Yes.

 

"Can this be made into an ELF hack"

Not with the default settings - the 0x000fd000 address is used to place the remapping routine outside of normally used memory for compatibility, this address may be modified to an address within an ELF so long as the data can be safely overwritten - one good way to find such an address is to look for error string tables in ps2dis - if the string table is contiguous and large enough to hold the routine it will work, PNACH Converter (PNACH Converter 2.00) can then be used to convert the output into an ELF hack.

 

"Why are the codes so long?"

The codes are long because PS2 Controller Remapper dynamically builds a function to process the controller's data structure before it is interpreted by the game itself, in order to do this the data structure containing the pad state must be copied, modified and then overwritten, this is done by per input-type load/store subroutines (which are already very well optimized), it is possible to reduce the code length by 30-40% by using more specialized input-type->input-type combined load/store subroutines but that would require a good deal more work - I may try this in the future.

 

"Does this impact game performance?"

In my testing - no, although it does certainly slow down the controller's read function considerably. Fortunately a few hundred extra cycles are generally not a big deal for a 290+mhz CPU.

 

"Are there any known incompatibilities?"

Yes

Some games (like Ridge Racer V) appear to process input differently (while still using scePadRead), this seems to be related to supporting a PS1 digital controller. I have not been able to figure out how to reliably capture/modify this mode's I/O, fortunately this problem seems limited to very old games.

Some games may load libpad or libpad2 from an IRX - in these cases ELF analysis can't locate the scePadread/scePad2Read function.

There may still be some versions of libpad which are not profiled - if you have a ton of game ELFs lying around (more than 100) let me know, you may be able to help me discover new versions and increase compatibility.

 

A télécharger ici : http://psx-scene.com/forums/attachments/f19/43814d1369356512-ps2-controller-remapper-ps2_controller_remapper_100.zip

 

Source : psxscene

 

Pas encore testé pour ma part. Pour l'utilisation sur PS2, se reporter au tuto sur ps2rd.

Lien vers le commentaire
Partager sur d’autres sites

Et bé !!!! Il tombe pile poil ce programme :)

 

Je viens de me choper un jeu de course de train (arcade) et les touches pour avancer sont le joystick gauche, et sur ma borne d'arcade ce joy à tout simplement virer :D

 

Je pourrais donc régler ce problème en inversant la direction (L3) sur un bouton de direction ou action alors ?

Lien vers le commentaire
Partager sur d’autres sites

 

Je pourrais donc régler ce problème en inversant la direction (L3) sur un bouton de direction ou action alors ?

 

Il ne devrait pas y avoir de soucis, en espérant que ton jeu n'utilise pas toutes les touches de la manette, sinon c'est cuit, ce sera pas la direction mais autre chose qu'il te manquera. =/

Lien vers le commentaire
Partager sur d’autres sites

Chaque RAW/pnach (fichier qui contrôle le reconfiguration des commandes) crée est unique et ne vaut que pour le jeu en question (une version import d'un même jeu n'aura pas le meme).

 

Pour utiliser cet outil, il te faut, après l'avoir lancé, insérer ton jeu ps2 dans le lecteur dvd de ton PC, cliquer sur Browse, et aller ouvrir l'ELF de ton jeu (le fichier SLES_XXX.XX)

Ensuite, tu reconfigures la manette grace à l'interface du log, tu choisis le format d'exportation (RAW pour jouer sur une PS2, pnach pour l'emulateur PCSX2) et tu fais "remap".

 

Le log te sort une petit texte de cette forme :

 

//--------

 

"Def Jam : Fight for NY (Pal) /ID SLES_525.07"

Mastercode

90356A68 0C0D5A42

Wide screen

2056efb0 3f400000

2056efe8 3fab0000

2056efec 3fab0000

2056f170 3f400000

 

 

(dsl, je n'ai rien pour faire un vrai fichier remap sous la main, dc je prend un code 16/9, c'est le meme principe) qu'il te faut utiliser avec ps2rd.

 

Ce petit texte est à copier dans le fichier cheats de ps2rd. Tu configures ps2rd pour qu'il lance OPL comme ds le tuto; tu lances ps2rd, tu choisis OPL + ton jeu, ca lance OPL, et il ne reste qu'à lancer ton jeu.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
  • Statistiques des membres

    23 028
    Total des membres
    1 012
    Maximum en ligne
    Subaru
    Membre le plus récent
    Subaru
    Inscription
  • Statistiques des forums

    128,1 k
    Total des sujets
    1,7 M
    Total des messages
×
×
  • Créer...