Gamoover

Besoin de contacter un admin pour une proposition, une suggestion ou discuter d'un probleme ?
C'est ici : High_Cobra, AsPiC ou Pich

[WIP] Décorticage manettes HKT 7300 / HKT7500 / HKT 7700 DreamCast

Démarré par gc339, Vendredi 16 Juillet 2010, 01:21:41 AM

Eko

Super allure ce twin stick  ^-^

La boucle serait-elle bouclée  =?=

Très chouette topic plaqué Or  ^-^ les experts dans le domaine doivent se gaver  :D
Il lui faut une place de choix sur Gamo non ??

<:) <:)
Le RT, le WIP, des drogues dures ça nan ?

-RT Jeutel Mint !          -RT Twin STC          -WIP Twin STC         -RT Mini Jeutel    
-WIP Noami White       -WIP Noami Black    -WIP Gameroom      -WIP Mini Jeutel

maldoror68

c'est marrant comme sega a compliqué les signaux sur les TS alors qu'ils auraient pu faire une config simple genre:

-stick gauche = croix directionnelle
-stick droit = YAXB
-fire L = analogique L
-fire R = analogique R
start = start.

mais en même temps les 2 sticks du TS sont analogiques non ?  =?= ce qui modifie forcément le cahier des charges. :D

en tout cas quel pied ce topic  :-*

tu nous fais une analyse de la canne à pêche dreamcast ?  :-*


gc339

#50
Citation de: maldoror68 le Vendredi 03 Septembre 2010, 20:44:16 PM
mais en même temps les 2 sticks du TS sont analogiques non ?   ce qui modifie forcément le cahier des charges.

Eh bien non ! On entend le doux cliquetis des micro-switches quand on incline les manches de part et d'autre.

Citation de: maldoror68 le Vendredi 03 Septembre 2010, 20:44:16 PM
tu nous fais une analyse de la canne à pêche dreamcast ?  :-*

Pas de problème, prêtes moi la tienne pour une journée. Juste le temps de raccorder l'analyseur Scanalogic par l'intermédiaire de ma rallonge de test Home Made et de faire des copies d'écran !
Le repos, c'est fait pour les jeunes. Ils ont toute la vie devant eux. J. Gabin/M. Audiard





maldoror68

j'aurai bien aimé, mais c'est un des rares accessoires DC que je n'ai hélas pas  :-[

j'ai de la maracass par contre ou bien le micro pour seaman  :-* :D  8)

ElBarto

Si ca peut aider j'ai ca comme matos (vu que le sujet m'interesse aussi :P) :

- Canne a peche japonaise
- Flingue Madcatz
- Flingue Euro
- Clavier (je dois avoir un americain, un francais et un japonais. C'est marrant on dirais le debut d'une blague pourrie :P)
- Manette euro et jap (mais c'est les meme il me semble).

Je sais que les flingues officiels ne sont pas les memes selon les region car mon Confidential Mission US ne marche pas avec mon flingue euro (officiel) mais que avec mon Madcatz. De memoire il me dis que le peripherique n'est pas compatible.

Fera tu un recap sur une page web avec les differentes captures pour chaque peripherique ?

speedsterharry

Citation de: ElBarto le Samedi 04 Septembre 2010, 08:39:47 AM
Je sais que les flingues officiels ne sont pas les memes selon les region car mon Confidential Mission US ne marche pas avec mon flingue euro (officiel) mais que avec mon Madcatz. De memoire il me dis que le peripherique n'est pas compatible.

Justement, je sais qu'on n'en est pas encore là, mais si/quand le moment sera venu de faire des produits dérivés issus de ce topic (reproduire une PCB DC, voire en faire une version évoluée), il faudra absolument prévoir une facon de dézonner/zoner sélectivement le périphérique (par cavaliers ? ou autre). Marre de tous ces attrape-gogos anti-users  :-((

gc339

#54
Citation de: ElBarto le Samedi 04 Septembre 2010, 08:39:47 AM
Si ca peut aider j'ai ca comme matos (vu que le sujet m'interesse aussi :P) :
- Canne a peche japonaise
- Flingue Madcatz
- Flingue Euro
- Clavier (je dois avoir un americain, un francais et un japonais. C'est marrant on dirais le debut d'une blague pourrie :P)
- Manette euro et jap (mais c'est les meme il me semble).

Dommage que tu ne sois pas lyonnais voir rhône-alpin, tu aurais pu venir faire un tour à la maison avec tous les accessoires dont je ne dispose pas.

Citation de: ElBarto le Samedi 04 Septembre 2010, 08:39:47 AM
Je sais que les flingues officiels ne sont pas les memes selon les region car mon Confidential Mission US ne marche pas avec mon flingue euro (officiel) mais que avec mon Madcatz. De memoire il me dis que le peripherique n'est pas compatible.

Le Light Gun Mad Catz dont j'ai détaillé les trames n'est compatible qu'avec l'Amérique du Nord (octet 1 du bloc 5 de la trame "Device Status" en réponse à la requête "Device Request" de la DreamCast)

Citation de: ElBarto le Samedi 04 Septembre 2010, 08:39:47 AM
Fera tu un recap sur une page web avec les differentes captures pour chaque peripherique ?

Dans l'immédiat non. D'abord par ce que je ne les possède pas tous et ensuite par ce que cela demande du temps, beaucoup de temps. C'est pas HSM qui attend après son écran depuis Juillet qui me contredira !



Le repos, c'est fait pour les jeunes. Ils ont toute la vie devant eux. J. Gabin/M. Audiard





ElBarto

Citation de: gc339 le Samedi 04 Septembre 2010, 19:37:17 PM
Dommage que tu ne sois pas lyonnais voir rhône-alpin, tu aurais pu venir faire un tour à la maison avec tous les accessoires dont je ne dispose pas.

Je passe de temps en temps sur lyon vu que ma mere habite la bas, a l'occaz et si t'as pas eu ces accessoires dans la main je te ferais signe.

Citation de: gc339 le Samedi 04 Septembre 2010, 19:37:17 PM
Le Light Gun Mad Catz dont j'ai détaillé les trames n'est compatible qu'avec l'Amérique du Nord (octet 1 du bloc 5 de la trame "Device Status" en réponse à la requête "Device Request" de la DreamCast)

De memoire il marche correctement sur mon Confidential Mission Euro, mais je retesterais a l'occaz.

Citation de: gc339 le Samedi 04 Septembre 2010, 19:37:17 PM
Dans l'immédiat non. D'abord par ce que je ne les possède pas tous et ensuite par ce que cela demande du temps, beaucoup de temps. C'est pas HSM qui attend après son écran depuis Juillet qui me contredira !

Meme si tu les as pas tous pour l'instant ca peux etre une bonne sources d'info deja.

gc339

#56
Un p'tit tour en arrière.

Les schémas des manettes HTK-7300 et HTK-7700 publiés ces deux posts :n'étaient pas définitifs, il manquait certaines informations comme le nom des signaux sur les connecteurs CN1 et CN2, ceux qui sont au fond des logements pour les accessoires.

Le seul document que j'ai pu trouver sur le repérage des contacts de ces connecteurs est le le 1er tableau de cette page malheureusement il est un peu brouillon.

Avec l'analyseur Scanalogic, il va être facile de comparer les signaux présents sur les broches de l'un ou l'autre de ces connecteurs avec ceux du Maple bus et ainsi pouvoir attribuer aux différentes contacts les appellations données dans le document de la patente US.








   
Ci-contre, le synoptique des interconnections entre la console DreamCast et ses accessoires :

  • La DreamCast ou HOST avec ses 4 ports A, B, C et D est au sommet de la hiérarchie.
  • Les différents contrôleurs (comme les manettes, le light gun ...) que l'on peut raccorder sur les ports de la DreamCast.
    Ils sont dénommés "BASE DEVICEs" ou dispositifs de base.
  • Les différents accessoires (pack vibreur, MMS ...) que l'on peut insérer dans les logements des différents contrôleurs.
    Ils sont dénommés "EXPANSION DEVICEs" ou dispositifs d'extension.
Un dispositif de base peut théoriquement supporter quatre dispositifs d'extension.
Dans la réalité ces dispositifs de base comme la manette standard ne disposent que de deux logements maximum pour accueillir un dispositif d'extension comme un VMU ou un vibreur.
D'ailleurs la puce E2 Maple bus a été conçue avec cette limitation.









Ci-contre le synoptique des différents bus :

  • Le M-Bus ou Maple bus, plus prosaïquement, c'est le cordon à 5 fils + blindage d'un accessoire comme une manette que l'on enfiche dans un des connecteurs A, B, C ou D de la DreamCast.
  • Le LM-Bus ou Lower Maple bus, il est très court puisque l'on pourrait le résumer aux seuls 14 contacts entre le connecteur au fond de chaque logement d'une manette et celui de l'accessoire qui occupe ce logement.

En fait le M-Bus est éclaté en deux LM-Buses, un par logement. La puce E2 Maple bus à l'intérieur d'un dispositif de base comme une manette se charge de l'aiguillage des différents signaux entre le M-bus et les deux LM-Buses qu'elle supporte.

De plus le LM-Bus n'est pas full-duplex comme le M-Bus, il est scindé en deux flux unidirectionnels :

  • Le flux descendant ou "Down Stream", ce sont les ordres provenant de la console.
  • Le flux montant ou "Up Stream". ce sont les réponses à destination de la console.
   





Entre la console (HOST) et le dispositif de base (une manette par exemple), les échanges sur le M-Bus nécessitent 3 fils : SDCKA, SDCKB et Masse.

  • Chaque fil SDCKA ou SDCKB est à tour de rôle horloge et donnée, SDCKA transmet le front d'horloge alors que SDCKB est positionné sur le niveau logique du bit à transmettre, et vis versa.
  • Les échanges se font en full duplex, c'est à dire que la transmission est bilatérale, aucun des fils SDCKA et SDCKB n'est spécialisé dans un sens de transmission donné.





   


Entre le dispositif de base (une manette par exemple) et n'importe quel dispositif d'extension inséré dans un logement (vibreur, VMU ...), les échanges nécessitent beaucoup plus de fils car le LM-Bus est un M-Bus démultiplexé :

  • Le principe de transmission à deux fils, ou chacun est à tour de rôle horloge et donnée, est conservé.
  • Les échanges sont séparés en deux flux :

    • Avec les fils SDCKA-DS et SDCKB-DS pour le flux descendant ou "Down Stream". .
    • Avec les fils SDCKA-US et SDCKB-DS pour le flux montant ou "Up Stream".
  • Deux autres fils SDCKA-EN et SDCKB-EN, EN pour "enable". L'accessoire ou dispositif d'extension positionne ces fils à 1 pour répondre. Ces fils commandent l'aiguillage à l'intérieur de la puce E2 Maple bus, les informations retransmises sur SDCKA-US / SDCKB-US peuvent alors transiter vers le M-Bus .
    Ces deux fils de commande SDCKA-EN et SDCKB-EN sont bien dissociés car il a été prévu qu'un dispositif d'extension puisse interpréter une trame "SDCKB Occupancy" : l'ordre d'occupation est maintenu sur SDCKA-DS par la console pendant que dispositif d'extension retransmet une information à destination de cette même console sur le fil SDCKB-US.

La présence d'une tension (3,3 volts) sur le fil ID 2 permet au dispositif de base de savoir quand un accessoire est inséré dans le logement correspondant.

Comme les accessoires sont banalisés, les niveaux logiques sur ID 1 et ID 0, permettent au dispositif d'extension de connaître le n° du logement dans lequel il est inséré.
Il pourra ainsi reconnaître les trames qui lui sont adressées (champ adresse destination) ou insérer la bonne adresse source dans les trames qu'il émet sur SDCKA-US / SDCKB-US à destination de la console.





Les canaux 1 et 2 (pinces et traces bleues, jaunes) de l'analyseur Scanalogic sont respectivement raccordés sur SDCKA et SDCKB par l'intermédiaire de la rallonge de test.
Les canaux 3 et 4 (pinces et traces rouges, vertes) seront baladés sur les contacts du LM-Bus du logement N°2 équipé d'un VMU, les contacts du logements N°1 étant inaccessibles.
Le petit cavalier bleu sert à court-circuiter le condensateur CE1 et permet ainsi d'appliquer un reset forcé sur la patte 33 de la puce E2 Maple Bus de la manette.


En haut les trames SDCKA en bleu, les trames SDCKB en jaune.
On distingue très bien les deux échanges :

  • Le premier, le plus à gauche, se déroule entre la DreamCast et le dispositif de base
  • Le second, celui du centre, entre la DreamCast et le dispositif d'extension.
La trace en vert prise sur le contact 4 du connecteur CN3 montre que c'est une trace de trames du flux descendant ou "Down Stream" car toutes les requêtes de la DreamCast y sont retransmises quelque soit le dispositif destinataire.
La trace en rouge prise sur le contact 5 du connecteur CN3 montre que c'est une trace de trame du flux montant ou "Up Stream". C'est le dispositif d'extension, c'est à dire le VMU, qui répond à la requête que la DreamCast vient de lui adresser.


Il suffit maintenant de dilater l'échelle de temps au niveau de la deuxième trame du signal vert pour savoir qu'elle est identique à la trace de SDCKA à un pas de d'échantillonage près. Le contact 4 du connecteur est donc celui du signal SDCKA-DS, DS "pour Down Stream"


Idem pour l'unique trame du signal rouge, elle est de même identique à la trace de SDCKA à un pas  d'échantillonage près. Le contact 5 du connecteur est donc celui du signal SDCKA-US, US "pour Up Stream"

Le même raisonnement et l'observation des signaux font constater pour que :

  • Le contact 10 correspond à SDCKB-DS, DS "pour Down Stream".
  • Le contact 11 correspond à SDCKB-US, US "pour Up Stream".





Reste maintenant à rechercher les deux contacts SDCKA-EN et SDCKB-EN, Avec l'analyseur Scanalogic, ils sont immédiatement repérés, ce sont les contacts 3 et 12. Le problème est que leurs traces sont absolument identiques, le contact 3 est très probablement associé au signal SDCKA-US et le contact 12 à SDCKB-US, il faut en être sûr.
Sur la trace rouge ci-dessus on observe bien que le créneau à l'état haut encadre bien les salves de la trame montante ou "UpStream"


La solution trouvée pour départager les ex aequo à été de dessouder et de relever le conducteur du contact 3 afin que la commande d'aiguillage ne parvienne plus à la puce E2 Maple Bus.


La trame montante sur SDCKA-US ne parvient plus sur SDCKA du Maple-Bus, pas de doute le contact 3 correspond bien au signal SDCKA-EN et par conséquent le contact 12 est SDCKB-EN.

Bon, plus simple maintenant, reste à repérer les contacts ID0 à ID2 avec le voltmètre numérique.

  • Avec ID2 c'est rapide, le niveau logique sur le contact 9 est à 0 volt quand le VMU est défiché et à 3,3 volts quand il est enfiché. Ce contact 9 est donc ID2
  • Pour ID0 et ID1, il ne reste plus que les contacts 6 et 13, le 14 n'étant pas connecté à l'intérieur de la manette.
    Voici les tensions relevées sur ces contacts :







    |   | Contact 6 | Contact 13   |






    | Logement 1 / CN2   | 0 volt | 0 volt   |
    | Logement 2 / CN3   | 3,3 volts | 0 volt   |







    Donc logiquement, en s'aidant des informations données dans la table 6, colone 41,  du document de la patente US :




    • ID0 doit être le contact 6
    • ID1 doit être le contact 13
    Et c'est bien la puce E2 Maple bus qui affecte le n° de LM-Bus à chaque logement, car ID0 et ID1 sont à 0 quand elle est maintenue en reset permanent par le cavalier bleu. Le contact ID1 du logement n°2 se repositionne à 1 dès que dés que le cavalier est retiré.




Il ne reste plus qu'à dresser le tableau n° contact / nom officiel, les noms étant extraits  du document de la patente US ainsi qu'à les reporter sur les schémas déjà postés.













| N°   
| contact
| CN2 /
| Logement 1
| CN3 /
| Logement 2
|
|




|  1| +3,3V| +3,3V|
|  2| +5V| +5V|
|  3| SDCKA-EN-1| SDCKA-EN-2|
|  4| SDCKA-DS-1| SDCKA-DS-2|
|  5| SDCKA-US-1| SDCKA-US-2|
|  6| ID0-1| ID0-2|
|  7| GND| GND|
||||
|  8| GND| GND|
|  9| ID2-1| ID2-2|
| 10| SDCKB-DS-1| SDCKB-DS-2|
| 11| SDCKB-US-1| SDCKB-US-2|
| 12| SDCKB-EN-1| SDCKB-EN-2|
| 13| ID1-1| ID1-2|
| 14| ?| ?|




   







Le repos, c'est fait pour les jeunes. Ils ont toute la vie devant eux. J. Gabin/M. Audiard





gc339

#57
Bonjour.

Ce Wip étant momentanément en stand-by au profit de l'écran de HSM, j'ai néanmoins continué mes recherches de documentation sur le net. Et à force de proposer des mots clef issus du glossaire DreamCast/Maple Bus, j'ai enfin pu localiser une vraie mine d'or.
Que n'aie je pas trouvé cette archive plutôt, elle m'aurait épargné quelques heures de travail ! En tout cas, ces documents confirment ce que j'ai déjà observé ou déduit de mes expérimentations précédentes.

Cette archive contient deux répertoires spécifiquement dédiés au Maple Bus :

  • Un répertoire "E_MapleBus_FT_Spec" avec :

    • Un document word "Maple Bus Standard Specification"
    • Une douzaine de documents "Maple Bus Function Type Specifications", soit un fichier word par type de fonction.
  • Un répertoire "E_MapleBus_Peri_HW_Spec" avec plus d'une quinzaine de documents word "Maple Bus Peripheral Hardware Specifications", chacun décrivant un accessoire différent : pad standard, pad arcade, twinstick, canne à pêche ...

En fait cette archive est issue d'un site espagnol où il est question d'un interfaçage USB / Maple Bus à l'aide d'un PIC 18F4550 : http://sites.google.com/site/leucemidusdc/Home
Cette tentative semble ne pas avoir été concluante malgré l'utilisation de registres à décalage externes pour suppléer au manque de mips du PIC.

J'avais envisagé l'utilisation d'un SX28 Parallax à 75/80 Mhz (75/80 mips). Celui-ci n'est plus produit depuis la fin de l'été 2009, il en reste cependant un stock appréciable. C'est pourquoi je suis en train de réfléchir à l'utilisation d'un "Propeller" P8X32A de cette même firme.


Cette puce comporte 8 processeurs ou "Cog"s :

  • Chacun d'entre eux à un accès commun aux pattes E/S :

    • Les pattes déclarées en lecture peuvent être lues en simultané par tous les Cogs.
    • L'état sur les pattes déclarées comme sorties est cependant une combinaison logique de l'état imposé par chaque Cog.
  • Chacun d'entre eux dispose d'une mémoire locale de 512 mots de 32 bits.
  • Chacun d'entre eux a accès aux ressources globales (mémoire centrale...) à tour de rôle grâce à un tourniquet, ce qui ralenti quand même l'accès de quelques cycles machine supplémentaires en attendant le time-slot dédié à chacun.
Les cogs sont cadencés par une horloge commune, ils peuvent l'être en standard jusqu'à 80MHz (20 mips) voir même être overclockés à 100Mhz (25 mips) avec un quartz de 6,25 MHz. Cette vitesse semble un peu juste pour décoder les trames issues de la DreamCast, mais en spécialisant les Cogs (un pour la détection des fanions "Start" et "End", un pour la réception des octets de données, un pour lire les contacts sur le connecteur Jamma, un autre pour gérer les time-out ...) et surtout en utilisant des instructions WAITxxx, cela devrait être jouable.


Le repos, c'est fait pour les jeunes. Ils ont toute la vie devant eux. J. Gabin/M. Audiard





maldoror68


HerosSuperMan

Mes Wip, mes RT... la vie quoi ^^
Mes recherches\échanges (bornes, PCB, pièces ...)
Recherche .. non..rien rien rien..le problème c'est que l'on fini toujours par trouver... >:D

gc339

#60
Le problème du décodage du Maple Bus se pose surtout pour la réception des trames émises par la DreamCast, elles le sont à une vitesse fixe de 2 Mbps (Mega bits par seconde) alors que l'émission vers la DreamCast est moins contraignante, cette dernière peut décoder les trames reçues avec une vitesse bien inférieure.

De plus sur le Maple Bus, le fil SDCKA et le fil SDCKB sont à tour de rôle bit de donnée et impulsion d'horloge. Pour une période d'horloge donnée SDCKA représente l'horloge et SDCKB la donnée. Pour la période suivante c'est SDCKA qui représente la donnée pendant que SDCKB représente l'horloge. Et ainsi de suite.

S'il était possible de démultiplexer l'horloge et les données pour que les impulsions d'horloge et les bits de données se retrouvent regroupés séparément sur un fil bien spécifique, l'on se rapprocherait alors du fonctionnement d'un Bus SPI : http://fr.wikipedia.org/wiki/Serial_Peripheral_Interface. Et là, la réception des trames seraient grandement simplifiée puisque certains microcontrôleurs ont une interface SPI intégrée comme certains PICs de Microchip.

L'idée est donc d'aiguiller le fil SDCKA et le fil SDCKB au moment opportun, c'est à dire sur le front descendant du signal d'horloge, vers le fil d'horloge (SCKL) et de fil des données (MOSI).



  • L'aiguilleur est réalisé avec deux éléments d'un boîtier multiplexeur 2 vers 1 type 74HCT157. Ce boîtier de la série 74HCT est compatible TTL, et de ce fait il réalise l'adaptation de niveau entre le Maple Bus fonctionnant avec des signaux à 3,3 volts et le reste de la logique qui est alimentée en 5 volts.
  • Le flip flop à base de 74HC74 qui est piloté par le signal d'horloge démultiplexé en sortie du HCT157 (après inversion) et dont une des sorties commande l'aiguillage (Entrée Select du HCT157)




Le test va s'effectuer avec une trame "Request Device Info" issue de la DreamCast et préalablement sauvegardée grâce à une des fonctionnalité de l'analyseur Scanalogic 2.


Cette analyseur permet de "rejouer" le signal sur deux de ses sondes, c'est à dire qu'elles sont génératrices pendant que les deux autres sont réceptrices afin de capturer les signaux que l'on veut observer.






  • Les deux traces supérieures correspondent à la trame Maple Bus qui est émise par les sondes bleue et jaune sur les entrées de l'aiguilleur.
  • Les deux traces inférieures correspondent aux signaux observés en sortie d'aiguillage, l'horloge SCKL et les bits de donnée MOSI.
Tout semble OK pour la retransmission d'un bit à 0, par contre il manque l'impulsion d'horloge pour les bits à 1 (portions de traces cerclées de blanc).





En fait l'impulsion d'horloge est bien présente puisque la sortie du flip flop change sur chaque front descendant de celle ci (trace verte), seulement elle est très fine et l'analyseur n'a pas le temps de la capturer, la durée de l'impulsion est inférieure à sa période d'échantillonage. En fait elle ne dure que le temps nécessaire au basculement du flip flop cumulé avec le temps d'inversion de l'aiguilleur, c'est à dire quelques dizaines de nanosecondes.




La solution va donc consister à augmenter ce temps de propagation pour que l'impulsion soit plus large.


Les 5 inverseurs non utilisés du boîtier 74HC04 ont été câbles à la queue leu leu et le tout a été inséré entre le flip flop et l'aiguilleur pour réaliser ce temps de retard.


Les impulsions sont bien visibles maintenant, leur durée est moins large que les autres et ne dépendant que du temps de propagation dans les 5 inverseurs. Inverseurs dont il a fallu changer de type de boîtier, le HC04 étant encore trop rapide, il a fallu le remplacer par un CMOS CD4069 beaucoup plus lent.




La trame au complet, En attente d'être décodée grâce à l'onglet décodage SPI du logiciel.



Le problème est que le logiciel de décodage intégré à besoin du signal CS du bus SPI, en utilisation normale le signal CS permet de valider les périphériques destinataires des trames SPI. La trace de la trame SDCKB a donc été sacrifiée, en fait elle a été modifiée avec l'éditeur graphique inclus dans les outils du logiciel pour disposer de ce signal indispensable au fonctionnement du module logiciel de décodage.


Après avoir choisi les paramètres adéquats dans l'onglet du décodeur et validé le décodage, les octets de la trame originelle sont correctement décodés : 0x00, 0x40, 0x60, 0x01 et 0x21.

Donc l'idée n'est pas bidon, la conversion Maple Bus vers Bus SPI est réalisable, maintenant reste :

  • À savoir si les interfaces SPI des microcontrôleurs candidats sont aptes à réceptionner une trame SPI à 2 Mbps.
  • À recréer le signal CS du bus SPI à partir du décodage des fanions "Start" et "Fin" de la trame Maple Bus. Ce même signal CS pouvant être utilisé pour valider l'aiguilleur (patte 15 du HCT157) à fin de ne pas retransmettre ces fanions sur le bus SPI.
  • Remplacer tous les boîtiers nécessaires par un boîtier de logique programmable. Éventuellement synchroniser la dispositif par une horloge à 16 MHz (comme avec la puce E2 Maple Bus) pour séquencer et fiabiliser son fonctionnement en évitant d'utiliser le temps de propagation à travers plusieurs portes logiques.


La bidouille qui a permis de tester cette idée, réalisée en miniwrapping à partir de l'épave d'une précédente.

  • Les sondes bleu (SDCKA) et jaune (SDCKB) permettent d'injecter la trame Maple bus de test.
  • Les sondes rouge (SCLK) et verte (MOSI) permettent de capturer les signaux du pseudo bus SPI.

Le repos, c'est fait pour les jeunes. Ils ont toute la vie devant eux. J. Gabin/M. Audiard





KodeIn

Dès que je récupère des fonds, il me faudra un Scanalogic... L'oscilloscope est plus que très utile pour PLEIN de choses, mais le scanalogic me semble particulièrement bien adapté pour analyser les protocoles de joypads. Ce qui m'intéresse grandement, étant donné un des projets à long terme que je voudrais réaliser.

Vraiment très intéressant tout ça, super documentation pour un débutant comme moi.
D'après ton analyse, à condition de trouver un microprocesseur suffisamment rapide et en récupérant les connecteur d'une manette ou de VMU hors service, on pourrait carrément prévoir des slots pour VMU sur le panel de la borne.
Je connais très mal les jeux Dreamcast (j'ai juste joué à Soul Calibur version pal), je ne sais pas si il y en a un qui gère une sauvegarde différente par joueur. Mais ça me semble une option très sympathique.
Ca évite de devoir aller fouiller dans les entrailles de la borne pour brancher le VMU d'un pote de passage qui a envie de montrer son dernier score.  :D
Atari 2600 | Spectravideo SV-328 :'( | Amiga 500 | NES - SNES - N64 - NGC - Wii - GBA - GBAsp - DSi | PS1 - PS2 - PS3 - PSP 2000 | MD - DC | XBox - 360 | MacBook | OpenPandora GHZ edition \o/
WIP [pause] : Borne Euro générique de chez Jeux COURTET
Tutos LaunchPad MSP430 001 - 002 - 003 - 004 en attente

gc339

#62
Citation de: KodeIn le Mercredi 20 Octobre 2010, 05:52:07 AM
D'après ton analyse, à condition de trouver un microprocesseur suffisamment rapide et en récupérant les connecteur d'une manette ou de VMU hors service, on pourrait carrément prévoir des slots pour VMU sur le panel de la borne.

Pourquoi vouloir réutiliser un VMU pour sauvegarder les scores ou le contexte des dernières parties ? A partir de ton idée d'utiliser un beagle board ( http://beagleboard.org/ / http://en.wikipedia.org/wiki/Beagle_Board ) pour émuler un ou plusieurs contrôleur(s) DreamCast, il devrait être possible de sauvegarder ces données sur une banale clef USB. Le tout est que le logiciel chargé sur le beagle board émule aussi la fonction mémorisation du VMU pour que la DreamCast n'y voit pas la différence.
Le repos, c'est fait pour les jeunes. Ils ont toute la vie devant eux. J. Gabin/M. Audiard





KodeIn

Pour être honnête, je n'y avais pas pensé, mais c'est une très bonne solution, reste à voir si je serai assez doué pour la mettre en pratique.
En ce moment, j'attends que ma Pandora arrive, le hardware est extrêmement proche d'un beagleboard, avec l'avantage qu'elle est déjà équipée de contrôles de jeux et d'un écran lcd. Sur son port d'extension, on a accès à 6 lignes GPIO, ça devrait suffire pour la Dreamcast.
Si j'arrive à pondre un truc viable sur la pandora, j'envisagerai l'investissement dans un beagleboard et sa carte d'extension "trainer" qui offre pas mal d'I/O et même une zone de prototypage.
Atari 2600 | Spectravideo SV-328 :'( | Amiga 500 | NES - SNES - N64 - NGC - Wii - GBA - GBAsp - DSi | PS1 - PS2 - PS3 - PSP 2000 | MD - DC | XBox - 360 | MacBook | OpenPandora GHZ edition \o/
WIP [pause] : Borne Euro générique de chez Jeux COURTET
Tutos LaunchPad MSP430 001 - 002 - 003 - 004 en attente