Aller au contenu

Messages recommandés

Yop All :)

 

Un petit thread pour faire connaitre le projet sur lequel je boss depuis quelque temps.

 

Il y'as plus d'un an Eikacy ma questionner sur la difficulté pour créer une puce saturn (surement en ref avec ce thread: http://www.ultimate-consoles.fr/topic/18765-ultimate-modchip-pour-saturn/?do=findComment&comment=233843).

Après quelque recherche je me suis rendu compte qu'un ode pouvais être faisable :)

 

Pour la théorie du fonctionnement d'un modchip saturn.

* La puce sniff les commandes en continue

* Elle attend que la commande Seek to security ring soit envoyer

* Elle coupe l'envoie des données et commandes entre saturn et lecteur

* Elle calcule la réponse à renvoyer à la saturn (le seek n'est jamais fait à la même position)

* La saturn envoie une commande de lecture du secteur de ring en cours

* La puce calcule et renvoie un ring secteur

* La saturn envoie une commande de seek normal

* La puce se désactive et redonne la main au lecteur cd

 

La puce agit donc comme un mini ode ^^ uniquement pour la partie du ring sector.

 

Il y'as quelque semaine j'ai décider de regarder ça plus sérieusement et de sniffer un peu ce qui ce passe: https://github.com/Ced2911/sega_saturn_drive_log

 

J'ai donc commencer à sniffer les commandes/status envoyer entre la saturn et le lecteur cd pour mieux comprendre le fonctionnement du lecteur.

 

J'en suis venu rapidement a la conclusion que:

Les commandes ressemblent à du spi

Mais les données envoyées en série sont assez bizarre...

j'en ai parlé a X-Death qui me dit "hey regarde du coté du mega cd, ils ont surement pas réinventé la roue..." et je tombe sur cette doc: http://gendev.spritesmind.net/page-megasd.html

Et la baam oui il a raison les données sont bien envoyé en i2s :)

Par contre, impossible de retrouver les données sniffer sur mon iso...

Je retrouve bien l'header de chaque secteur mais pas le reste...

Et si sega avait crypté les données sur le bus i2s?

Et oui ils ont bien crypté avec une simple clé xor les données !

Et voilà les données sur le bus sont compréhensible !

 

Maintenant qu'une bonne partie du lecteur cd est compréhensible je me suis attaquer a la suite...

L'ODE :)

Pour l'instant je me sert d'un devkit psoc4 (http://www.cypress.com/documentation/development-kitsboards/psoc-4-cy8ckit-049-4xxx-prototyping-kits)

Une puce qui contient un petit mcu arm qui contient des port logique (UDB). On peut mélanger du code classic et du verilog !!! C'est simplement génial pour le prix ! Par contre l'ide est assez chiant à prendre en main.

 

C'est derniers jour, j'ai réussi à implémenter les commandes suivantes:

LID OPEN

NOP

SEEK

STOP

READ TOC

Voici ce que ça donne sous le player:

wqRVEYq.jpg

 

Maintenant j'attaque la lecture des données binaire ! le gros du taff :)

Je sens que ça va être galère de trouver comment se synchroniser entre les 2 bus :)

 

Bonus photo de l'ode :)

KTb3vsW.jpg

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

:D

J'ai cru que j'allais jamais m'en sortir :)

J'ai pas mal de jeux qui se lance:

  • Legend of thor 2
  • Darkstalker
  • Street fighter Zero
  • Virtua Fighter
  • X-Men children of the atom
  • DBZ legend

Et qui pose problème:

  • Rockman X3

Pour l'instant pas de support CDDA, et je suis encore un peu trop lent pour la lecture de vidéo fluide mais je pense arranger ça rapidement :D

 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 11 minutes, GTO a dit :

Je serais curieux de savoir quel mot sert de clé de criptage ?

Voila: https://pastebin.com/SrDupj26

Actuellement j'ai tous les jeux testé qui boot :)

La lecture des fmv est toujours pas bonne :s

Je me demande si c'est pas du au fait que j'ai pas d'emulation du cdda...

Je fini le pcb de proto dans le week end :)

Partager ce message


Lien à poster
Partager sur d’autres sites

×
×
  • Créer...