-
Compteur de contenus
257 -
Inscription
-
Dernière visite
-
Jours gagnés
1
Messages posté(e)s par Ced2911
-
-
: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
-
-
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:
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 :)
- 1
-
Pour les saturn 5v seulement autant prendre un chargeur de tel portable + un switching regulator :)
l'avantage tu t'en sort pour moins de 10€
-
sur les alims de 1ere gen, oui tres simple, les pcb jap & euro étant 100% identiques.
La seule inconnue restante étant le transfo, car impossible de trouver des infos sur lui... et j'ai toujours pas eu envie de cramer une alim pour vérifier.
Tu m'etonne ^^ en plus le jour ou il y as un reglementation pour les transfo :p
par rapport au site c'est quel alim qui est pareil en jap et euro ?
-
J'ai trouver ca au cas ou:
https://www9.atwiki.jp/nannansei/pages/14.html#VOLTEK_chg
par contre chaud pour lire les valeurs ^^
-
Déterrage de topic :)
tu as réussi à trouver les composants qui changent ?
-
Sur megadrive aussi ca fait du bien aussi :D par contre dans le cable le signal video ne sera pas trop affaiblie ?
-
Yop, j'ai commandé ça en sample: http://www.te.com/usa-en/product-1734098-7.html, pour un prototype ca devrait le faire, ca devrait être facile a réutilise une nappe ide. Pour la partie logic je pense utiliser un cpld https://www.aliexpress.com/item/XILINX-CoolRunner-II-FPGA-CPLD-XC2C64A-Core-Module-Mini-DEV-Development-For-XBOX360/1878839883.html?ws_ab_test=searchweb0_0,searchweb201602_2_422,searchweb201603_1&btsid=258578fd-31bd-4716-92f3-d475f3e4b035 et pour la liaison psx->pc la fameuse bluepill/stm32.
Je vais essayer de faire un clone usb d'un action replay pour demarrer, ensuite on verra bien :)
-
Cool un auvergnat :)
-
À partir du moment où leur loader charge le premier exécutable, tout se contrôle. Soit en patchant le vsync, à la manière des intros, et qui «hook» les fonctions à modifier, soit en modifiant en mémoire les zones à patcher directement au chargement, quand le jeu n'est pas trop chiant.
Oui j'avais pas penser a cette façon, je simplement a hooker LoadExeFile pour faire le patch a ce moment la
Pour le XA/CDDA, c'est simple, ils ne font pas ^_^. Il y a bien un pseudo fix pour le cdda, mais ça reste au cas par cas. Il suffit de voir la liste de compatibilité. D'ailleurs, cybdyn a expliqué le soucis avec Vib Ribbon sur le forum, et précisé que le jeu envoyait des données directement du cdrom vers le SPU, sans passer par le CPU.
L'idéal serait d'avoir un vrai émulateur de CD. Mais cela nécessite de reproduire intégralement la logique d'un contrôleur CD en FPGA, ce qui n'a jamais été fait jusqu'à maintenant. Les autres ODE fonctionnent à un niveau au dessus en terme de couche hardware/software.
Yep c'est justement ça le gros soucis, je reste persuader qu'ils ont remonter /cdrom_cs et /cdrom_int justement pour émuler le cdrom, au lieu de hooker le jeu, mais vu que le cdrom et spu sont directement lié => soucis de cdda/xa.
Pour y faire proprement il faudrait encore descendre de niveau.
Déjà que l’émulation du spu sur pc c'est pas top j'imagine pas la galère :s
-
Oui tu peux mais uniquement au lancement, si ton programme recharge d'autre donnée exécutable (beaucoup de jeux font ça) c'est mort :sSinon, oui, bien sûr que tu peux patcher le jeu à la volée. Tu t'occupes des signatures de la lib psyQ qui charge les fichiers en les redirigeant vers ta carte SD. Le kit de dev PsyQ permettait de charger les jeux via le port parallèle, et Caetla offrait au développeur un nouveau lecteur virtuel.
C'est pour ca que finalement ils ont fait remonter /CDROM_CS et /CDROM_INT, pour pouvoir simule completement le cdrom.
Par contre autre problème la partie cdrom et spu travail ensemble... comment ils font pour le cdda et le xa ? ça ne marche pas du tous ?
Ça serait la solution idéal :DBon, je vais passer pour un con ( ca, j'ai l’habitude de toute façon ^^) mais je pose ma question qui me trote depuis des années dans la tête:
Qu'est ce qui donne l'info de sécurité d'un support physique en lecture d'origine? Je comprends pas pourquoi il n'existe pas des adaptateur qui se placent en parallèle du lecteur physique ( CD, DVD ou BR) et qui permettraient de lancer la même chose que le lecteur comme données mais a partir d'un stockage.
Je sais très bien repérer la sécurité quand elle se lance ( le logo PS par exemple sous PS2) mais pour moi, c'est juste du software. Ca me parait tellement incroyablement facile niveau hardware a faire que c'est là que je me dis que dois être vraiment a la ramasse car si ca n'existe pas, c'est que les meilleurs se sont déjà cassé les dents dessus.
Si je dit pas de connerie, pour faire ça il faudrait réussir à remplacer le hc05 (ic304 http://gamesx.com/wiki/lib/exe/fetch.php?media=schematics:service_manual_scph_9000_3rd_ed.pdf page 13)
-
Tu peux pas faire ça sur ps1. J'ai vérifié hier soir y'as aucun accès depuis le BIOS au CD-ROM, uniquement sur les memory card.
Donc tout se fait en bas niveau.
Le mec dit bien qu'une méthode de patch marcherai à moitié sans remonter ces signaux.
-
L'approche du PSIO n'était pas la bonne, même si elle était la plus rapide. Ils n'ont pas fait un émulateur de lecteur, mais un hack qui change l'accès des données d'un jeu.
Tu en est sur ? a quoi sert alors de remonter /CDROM_CS et /CDROM_INT ? en plus patché l'acces des jeux à la volé ça ne marchera pas, car comment reconnaître des données exécutable et data ?
-
Yop juste pour dire que c pas tomber a l'eau :D
d'abord je travail sur une sorte de carte pour connecter la ps1 au pc en usb.
Je pense partir sur un pic18lf45k50 en 3.3v
si tous ce passe bien elle permettra d'emuler une carte memoire sur une carte sd.
de faire marcher le serial
et de flasher le bios
-
Neeed!
-
Ah genial :) merci !
-
Je confirme que les adresses et data passe par le // :D
-
Faudrait que je regarde ce soir, si les pin du port // sont les même que cette rom, ça serait encore plus simple
-
Oui c'est du pinout normal:
http://problemkaputt.de/psx-spx.htm#pinoutsmempinouts
c'est plus le fais que je suis pas certain de réussir à souder un socket dip dessus.
-
-
J'ai un peu laissé tomber pour le moment, je me suis rendu compte que la rom est assez balaise à remplacer ^^
-
Pour créer l'animation du logo, j'ai 2 choix:
-Plusieurs petit modèle 3d: on affiche au fur a mesure les objets à afficher. Assez léger en taille, chiant à modifier
-Une image, on joue sur la palette pour n'afficher que les objets à afficher. Bcp plus lourds en taille, facile à modifier.
Je pense partir sur la 2eme option.
Pour l'instant j'ai une démo qui fonctionne sous no$psx, directement sous un menu :D
-
J'ai un peu regarder ce que je pouvais faire donc:
Refaire une bootanim, surement celle ci:
Un manager de carte memoire
Pouvoir unlocker le lecteur
Essayer d'inclure psxserial :)
Et peut être un action replay
Saturn ODE - WIP
dans Les Puces / Modchips / Swap
Posté(e) · Signaler la réponse
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