Je devrais voir quoi, car la c'est le fichier de l'update, avec aucune modification, mais de toute façon je te certifie que ça marche, vu que tu ne touche pas aux valeurs, mais qu’au nom du dossier, il faut bien sur ne pas dépasser le nombre de caractère, et encore moins le diminuer.
Afin d'éviter de tout mélanger avec le sujet => http://www.metagames-eu.com/forums/p...ces-93872.html, j'ai ouvert ce sujet pour reprendre la recherche sur le fonctionnement de la Memor32, et la possibilité de le porter sur toutes consoles, et toutes cartes mémoires.
Bon voila mes derniers testes jusqu'à que je reçois mon matos, et je fait aussi un grand merci à Polo35 pour ces outils libres.
Donc maintenant je peux vous annoncez qu’ont a sous la main un flasher MC Ps2 compatible avec la Memor32, il suffit de prendre MCDUMP v1.5 pour la restaurer vu qui les compatible avec les carte de 8, 16, et 32Mb. (Peut être sera t’il incorporer dans une prochaine version du HD Project ?)
J’ai trouvé le fameux code source qui permet de décompacter l’update, et dans le fichier memc.ps2 je vois cette en-tête :
Code:
Sony PS2 Memory Card Format 1.2.0.0
J’ai fait ensuite une image de ma carte mémoire avec HD Project V1.07, et dedans j’ai à peut près la même en-tête, mais sur les première lignes la ressemblance est très frappante.
Code:
Sony PS2 Memory Card Format 1.1.0.0
Donc bien jouer mon Polo
Je vous l’ai compilé sous CygWin, donc ne soyer pas étonner si vous voyez un gros DLL, il suffit de mettre à coter l’update MemV01b.exe, et enfin vous lancez le fichier Unpack-MemV01b.exe
Par contre encore des bâtons dans les roues pour l’image de la Memor32, le fichier système est placer en adresse HEXA => 18C0000 et il ce fini => 1986000
Sa va être chaud de convertir un t’elle format en 8Mb, mais bibi à trouver une solution, et une mission pour unclejun si il veut bien sur.
Etape 1 : télécharger HD Project V1.07 disponible sur cette page => Memory Card Emulator for PlayStation 2
Etape 2 : le mettre ou tu veux pour le lancer, une foi dedans il te faudra un jeu, car des modules GPL devront être chargé, moi j’ai eu du mal à le faire marcher, il me planter à chaque fois qui charger les modules du jeu qui la besoin, jusqu'à que je mette Crazy Taxi et il est passé.
Etape 3 : Tu fais ton Backup sur ton HDD, enfin tu verras tous est détailler, et enfin tu nous transmets cette sauvegarde en privé, car tu dois avoir des informations personnelles.
Moi j’ai du faire HDD vers Stick USB via au uLaunchELF, et ensuite StickUSB vers PC.
Une foi réalisé le backup puis transmit, je renommerai le dossier système en HEXA pour lui mettre la bonne Zone, et ensuite je le restaurerai avec MCDUMP v1.5 sur ma carte mémoire.
Je verrais à ce moment la s’il y a du changement, de même pour le dvdplayer.elf 3.04.
A tu vu sinon Polo35 que l’update a était crypter en SHA-256, ou SHA-224 ?
Je dit ça car j’avait vu des postes sur elotrolado.net qui parler du fichier dvdplayer.elf qui était crypter aussi en SHA ???
J’espère que ElSemi nous fera un outil pour décompacté / empaqueter ces fichiers, vu qui la fait l’outil pour décompacter l’update de la MemV01b.
Si tout roule, et bien logiquement ont devrait avoir une image MC 8Mb avec possibilité de charger des fichiers système sur toutes consoles, et toutes régions avec l’intervention de quelque modification en HEXA.
@+
salut les gars,
j'ai pas compris,est ce notre cm de 8 mb va marche comme la memo32????????
si c'est sa faite nous un tuto sa sera simpa merci....
bonne continuation....
La taille exacte est de 792Ko (voir mon premier poste pour prendre l'utilitaire qui permet d'extraire le contenu de l'update), les 8Mo sont des fausses valeurs mise dans la table pour décourager les personnes qui essaye comme nous de mettre cette OS sur une carte 8Mo.
Petite rectification, la taille du bloc contenant l'elf n'est pas de 792Ko ( 811008 Octets ), mais de 768Ko ( 786432 Octets ). L'adresse de depart est 0x18C0000 et l'adresse de fin 0x1986000 soit 0xC6000 ( 811008 Octets ) de données.
Jusque là tu avais vu juste.
Oui mais, ces 811008 Octets de données represente 1536 pages de 528 Octets sur la mc. Chaque pages est composée de 512 Octets de données + 16 Octets contenant l'ecc. ( error correction code )
Ces 16 Octets sont là pour corriger les erreur sur la page concernée, et ne font pas partit du contenu de l'elf.
Donc si tu enleve ces 16 Octets sur chaque pages, tu obtiens 1536 pages de 512 Octets soit 786432 Octets ou 768 Ko.
Pour confirmer tout ca, ouvre avec un prog Hexa un des elf que tu as extrait du psu, et le fichier blk2.dec extrait avec le prog de Elsemi.
Là tu constate que les 512 premier Octets sont identique, puis sur le fichier blk2.dec tu vois qu'il y a 16 Octets un peu different des autre qui ne sont pas present sur l'elf. Il s'agit de l'ecc. Tu saute ces 16 Octets est tu vois que les 512 Octets suivant sont identique au 512 Octets suivant de l'elf. Et ainsi de suite sur 1536 pages.
Citation:
Envoyé par mvs+
Autre chose faudrait remplir la memor32 et laisser 9 mo de librre et instaler la mise a jour hack voir ce qui ce passe (voir si il y a relocation).
Si je ne me trompe pas le prog de memento réécrit la table fat de la carte donc si il y avait des données sur la carte, tout est effacé.
Citation:
Envoyé par mvs+
j'ai fait aussi un dump de mes carte et voici l'entete:Sony PS2 Memory Card Format 1.2.0.0
C'est ce qui est appelé magic dans l'entête de la mc ( superbloc ), ca sert à savoir si ta carte est bien formaté au format ps2.
Citation:
Envoyé par hackchip
Je viens de faire un formatage sur ma carte mémoire ... Si ont ignore la taille de l'image pour l'émulateur PCSX2, ont peut voir en HEXA dans le fichier PCSX2.ps2 qu'a cette adresse => 025A0 il y a un léger décalage avec l'image générer par MCDump.
Ce decalage est généré par le manque des 16 Octets par pages d'ecc dans le fichier PS2.ps2. ( Ou l'ajout des ces 16 Octets par pages dans le fichier PCSX.ps2 )
Citation:
Envoyé par hackchip
Bien sur MCExtract101 ou MyMC arrive bien à explorer l'image de l'émulateur, mais pas celui fait par MCDump.
C'est tout a fait normal, vu qu'il manque les ecc dans les fichier issu de MCDump.
Par contre j'ai vu que mymc a une option -i qui permet d'ignorer les erreurs d'ecc, donc ca peut peut-etre marcher avec les images de MCDump.
Citation:
Envoyé par hackchip
A oui et ont peut voir aussi que un fait comme page vierge des 000000... et l'autre fait des FFFFFF... tout en sachant que l'image de la Memor32 a des pages vierges en 000000...
Ca par contre c'est quelque chose que je ne comprend pas. C'est une des premiere chose que j'ai vu en ouvrant l'image de memento.
Normalement l'Octets d'effacement des carte standard est 0xFF, cet Octet est definit suivant le flag de la carte. ( card_flag dans le superbloc de la mc ) Si il est egal a 0x10 l'Octets est 0x0 sinon l'Octets est 0xFF. Dans le cas de la memor32 le card_flag egal 0x2B. ( adresse 0x151 dans l'image de la mc )
Citation:
Envoyé par Dr.Wily
Je pense plutôt que l'absence de logo PS2 est du au fait que la console charge un BIOS depuis la memory card.
Tout à fait, la console regarde si un fichier osd***.elf signé est disponible sur la mc à l'emplacement prevu, le trouve et le charge.
Citation:
Envoyé par Dr.Wily
Il y a autre chose que je ne comprends pas dans vos investigations. Pourquoi ne pas explorer en même temps les fichiers de démarrage du BB Navigator ? C'est exactement la même technique de démarrage. Pensez-vous vraiment qu'il est plus simple de chercher du coté de la Memor32 plutôt que du coté des fichiers du BBNav ?
J'ai aussi regardé de ce coté là, mais plusieur probleme ce presente.
Le premier c'est que je n'ai pas de disque dur sony PS2, et encore moins de PS2 Jap. ( J'ai bien BBnav mais il n'installe rien sur ma mc. )
Le deuxieme c'est que je pense que l'elf de memento est un hombrew encrypté, alors que ceux de BBnav sont des fichier issu du dev kit, donc plus complexe à desassemblé sans tout les header. Pour l'instant le plus simple est de trouver le moyen qu'utilise memento pour signé les fichiers.
Citation:
Envoyé par Dr.Wily
Après je dis ça, mais je ne sais pas comment est-ce que vous orientez et effectuez vos recherches.
Nos recherches sont orientés dans tout les sens, comme tu le vois.
Citation:
Envoyé par hackchip
Un BIOS de 729Ko sa m’étonnerai, c'est juste qui charge le fichier de la mememto avant le OSDSYS.
C'est ce que l'on peut appeler le remplacement du bios, on charge un prog hombrew a la place de celui d'origine. Avec tout ce que cela implique: dézonnage, support des backup, interface graphique perso, ...
Citation:
Envoyé par hackchip
Exploiter le BB-Navigator, c'est un peut près ce que je vais faire, mais avec le dvdplayer, vu que le BB-Navigator s'installe pas dans un dossier BEEXEC-SYSTEM
Si, si, et c'est d'ailleur le seul à installer quelque chose dans ce dossier. Le lecteur de dvd installe les fichier dans un dossier appelé BEEXEC-DVDPLAYER.
Citation:
Envoyé par hackchip
Une fois qu’ont aura un MCDump parfait, et bien sur un MCFlash parfait, bref tout dépendra de notre très cher Polo35.
Mon flasher ne sert à rien pour l'instant, il sert juste à faire une copie exact d'une carte. Le probleme c'est que chaque carte à une identité specifique, et que le magic-gate ce sert de cet identité.
Le flashage d'une memor32 avec l'image d'une autre memor32 ayant les fichiers de memento installé ne donnerais rien . :triste:
Je me lance dans les tests avec le module SECRMAN, je vais voir si je peux decrypter les elf du BBnav, Dvdplayer, Memento et les lancer avec ULaunchElf.
WAOU, ca c'est du post de malade.
Je part me coucher, j'en peut plus.
A+
Polo
__________________ Rien ne sert d'attendre, tout vient à point à qui sait courir
Petite rectification, la taille du bloc contenant l'elf n'est pas de 792Ko ( 811008 Octets ), mais de 768Ko ( 786432 Octets ). L'adresse de depart est 0x18C0000 et l'adresse de fin 0x1986000 soit 0xC6000 ( 811008 Octets ) de données.
Jusque là tu avais vu juste.
Oui mais, ces 811008 Octets de données represente 1536 pages de 528 Octets sur la mc. Chaque pages est composée de 512 Octets de données + 16 Octets contenant l'ecc. ( error correction code )
Ces 16 Octets sont là pour corriger les erreur sur la page concernée, et ne font pas partit du contenu de l'elf.
Donc si tu enleve ces 16 Octets sur chaque pages, tu obtiens 1536 pages de 512 Octets soit 786432 Octets ou 768 Ko.
Pour confirmer tout ca, ouvre avec un prog Hexa un des elf que tu as extrait du psu, et le fichier blk2.dec extrait avec le prog de Elsemi.
Là tu constate que les 512 premier Octets sont identique, puis sur le fichier blk2.dec tu vois qu'il y a 16 Octets un peu different des autre qui ne sont pas present sur l'elf. Il s'agit de l'ecc. Tu saute ces 16 Octets est tu vois que les 512 Octets suivant sont identique au 512 Octets suivant de l'elf. Et ainsi de suite sur 1536 pages.
J'ai du relire deux fois ton textes pour comprendre mieux ton explication, comme quoi tu te diras que tu n’auras pas bossé pour rien sur un Émulateur MC PlayStation 2.
Citation:
Envoyé par Polo35
Ce decalage est généré par le manque des 16 Octets par pages d'ecc dans le fichier PS2.ps2. ( Ou l'ajout des ces 16 Octets par pages dans le fichier PCSX.ps2
Effectivement plus je descends, et plus ça ce multiplier, dommage que MCDump ne gère pas ces ECC, j'ai testé avec une image de PCSX2, en le diminuant en taille à 8 388 608 octets, et il ne la gérait pas. :triste:
Question, j’ai cru voir que l’émulateur gère le ECC, je me trompe ?, j’ai vu des commentaires dans le fichier /modules/mcsioemu/mcsioemu.c qui parle du ECC
Citation:
Envoyé par Polo35
C'est tout a fait normal, vu qu'il manque les ecc dans les fichier issu de MCDump.
Par contre j'ai vu que mymc a une option -i qui permet d'ignorer les erreurs d'ecc, donc ca peut peut-etre marcher avec les images de MCDump.
J'ai oublié de le détailler mais visible dans mes poste précédent, j'ai utilisé l'option -i pour explorer l'image de la memor32, mais sur une image faite avec MCDump, la c'est le code qui marque une erreur, enfin c'est Python qui n'arrive pas à ce compiler en binaire.
Pour rester dans le sujet de mymc, prend la version python, avec bien sur une installation d'ActivePython, et tu pourras voir la source de cette outil, surtout en python c'est facile à comprendre, peut être que sa pourra t'aider en regardant dans le fichier ps2mc.py, dedans tu a la partie ou il y a le formatage de l'image, voila les variables avec les valeurs pour le formatage :
Si, si, et c'est d'ailleur le seul à installer quelque chose dans ce dossier. Le lecteur de dvd installe les fichier dans un dossier appelé BEEXEC-DVDPLAYER .
Sa fait partie de mes futurs testes, je vais faire joujou avec l'émulateur MC en faisant une installation sur le CD qui arrive cette semaine.
Comme ça je pourrais étudier les attributs d'un fichier système bootable, vu que sa ne marche pas en transfère direct...
Citation:
Envoyé par Polo35
Mon flasher ne sert à rien pour l'instant, il sert juste à faire une copie exact d'une carte. Le probleme c'est que chaque carte à une identité specifique, et que le magic-gate ce sert de cet identité.
Le flashage d'une memor32 avec l'image d'une autre memor32 ayant les fichiers de memento installé ne donnerais rien.
La je comprends moins, je penser que tous était stoker sur "l'image MC", et justement qu'avec un flasheur ont pouvait cloner des cartes mémoires comme tu l’avais déjà fait avec un dvdplayer.
L'identité que tu parle, elle est stoker ou exactement ?
Citation:
Envoyé par Polo35
Je me lance dans les tests avec le module SECRMAN, je vais voir si je peux decrypter les elf du BBnav, Dvdplayer, Memento et les lancer avec ULaunchElf.
Cool, je savais bien qui aller nous servir celui la pour décrypter ces fameux fichiers, ce qui serait encore plus fun, c'est de savoir comment il les cryptes.
@+ et bonne nuit aussi.
__________________
Dernière modification par hackchip ; 06/11/2007 à 00h50.
J'ai aussi regardé de ce coté là, mais plusieur probleme ce presente.
Le premier c'est que je n'ai pas de disque dur sony PS2, et encore moins de PS2 Jap. ( J'ai bien BBnav mais il n'installe rien sur ma mc. )
Je peux peu être t'aider sur ce point.
Citation:
Envoyé par Polo35
Le deuxieme c'est que je pense que l'elf de memento est un hombrew encrypté, alors que ceux de BBnav sont des fichier issu du dev kit, donc plus complexe à desassemblé sans tout les header. Pour l'instant le plus simple est de trouver le moyen qu'utilise memento pour signé les fichiers.
Oui, j'avais bien deviné . Ce que je voulais suggérer c'était plutôt de regarder du coté des méthodes de démarrage à partir d'une MC.
- On sait que tous les BIOS de PS2 ont une fonction qui contrôle les fichiers sur la MC pour y trouvé un éventuel boot ou patch qui remplacera ou améliorera le firmware de la console.
- On connaît également certaines des conditions de ce démarrage (nom de fichier et dossier spécifique).
Ce que l'on ne sait pas par contre c'est quelles sont les conditions de ce contrôle pour que le BIOS accepte le chargement de ces fichiers (mis a part le fait d'être signé et bien évidement la zone, le standard et le modèle).
--> Si certains des devkit homebrew ont la possibilité de signer les fichiers, ne serait-il pas plus simple de tester sur la Memor32 les fichiers de pré-démarrage du BBNav ?
Si la PS2 démarre sur ces fichiers cela veut dire que la Memor32 n'est qu'une simple carte de stockage et que la solution se trouve au niveau logiciel.
Par contre le contraire (la PS2 ne démarre par sur ces fichiers) voudrait dire que la memor32 aurait un emplacement spécifique pour stocker ces fichiers. Et le cas échéant sans doute les signés à la volé (ca c'est une pure hypothèse).
Je ne sais pas si vous avez regardé mais :
- Est-ce que la Memor32 possède une ROM ou une sorte de PIC ?
- Est-ce que le firmware de la memor32 est signé dès le départ ou est il signé seulement après avoir été transféré sur la carte ?
- Si le firmware n'est pas signé est-ce le soft de flash qui effectue cette opération ? Ou une puce dans la Memor32 ?
Ce qui est sur, c’est que la memor32 possède un firmware puisque elle est détecter en tant que périphérique USB actif (c’est à dire PnP). Et dans le cas de matos PnP il y a toujours une description (le Vendor ID et le Product ID). Cela pourrait constituer une piste. D’autant plus que je ne comprends pas pourquoi (Au passage Merci Robocop pour ces info dans ton test) avoir choisi l’émulation d’un périphérique de type « COM » plutôt que de type mass storage. Y aurait-il une raison à cela ?.. (Nous connaissons une partie de la réponse évidemment…)
Il y a évidemment d’autres possibilités, mais celles-ci me semble déjà être les plus faciles à déterminer… Pour l’instant
Le deuxieme c'est que je pense que l'elf de memento est un hombrew encrypté, alors que ceux de BBnav sont des fichier issu du dev kit, donc plus complexe à desassemblé sans tout les header. Pour l'instant le plus simple est de trouver le moyen qu'utilise memento pour signé les fichiers.
Je pense qui sont aussi crypter, juste pour pouvoir être exécuter par le BIOS de la PlayStation 2, regarde bien le début des fichiers ils ce ressemble à peut tous.