330

Je pense pas... il est pas impossible que ce soit un PAL/GAL/CPLD avec un marquage constructeur, mais je pencherais plutôt pour un ASIC, comme les MBC des cartouches Nintendo (Bandai en a les moyens). Et je ne sais pas si ça fait uniquement du banking, ou s'il y a un mécanisme d'authentification aussi.

En tout cas ça peut être émulé, parce qu'il existe un linker non officiel (le Wondermagic Color) qui le fait :
wondermagic.jpg
On ne voit pas bien, mais je crois que c'est un CPLD Xilinx.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

331

je me doutais bien qu'il y avait au moins un PAL, pas juste un LS245 hehe

332

Zerosquare (./327) :
Non, j'ai cherché aussi et la seule que j'ai trouvée qui soit compatible et encore fabriquée, c'est la M29W800, effectivement. Le problème c'est que je n'ai jamais réussi à en programmer une en boîtier 44 broches. La même en boîtier 48 broches fonctionne parfaitement. Je ne sais absolument pas pourquoi...


c' est une excllente nouvelle si on peut utiliser des puces 48 broches alors on peut prendre du 32Mbit en flash 3.3V mais en TSOP, c' est d' ailleurs ce que tu a du prendre car j' en trouve pas en SOIC
ex: M29W320DB70N1T

tu serait d' accord de me donner les redirections à effectuer sur le Maskrom d'origine ?

-j' aimerais également programmer pour cette console, si ce projet linker vient à terme et qu'on puisse programmer nos codes sur des cartouches de 1mo, un SDK en C pour Wonderswan serait-il concevable , parceque l' ASM.... de plus cela entrainerait à coup sur de nouveau développeurs.

-quand tu parle de la puce constructeur , tu parle de la Maskrom du jeu ?

merci pour tes réponses

333

X-death (./332) :
tu serait d' accord de me donner les redirections à effectuer sur le Maskrom d'origine ?
Pas de souci. Voilà ce que j'ai relevé en rassemblant plusieurs sources (des documents, des mesures sur les cartouches, etc.) : Cartouche WS.pdf
Il suffit de faire correspondre le nom des signaux avec les broches de ta mémoire Flash.
Attention, sur ce document les noms de la colonne ROM sont ceux du bus d'adresses, pas des broches de la ROM. Comme les accès à la ROM se font en 16 bits, il faut décaler le bus d'adresses d'un cran (le signal A1 du bus d'adresse correspond à la broche A0 de la ROM, etc.).
Il y a aussi des broches sur les Flash qui n'existent pas sur les ROM : /WP et /RESET qui doivent être reliées à VCC, et RB qui doit être laissé non connecté.
X-death (./332) :
-j' aimerais également programmer pour cette console, si ce projet linker vient à terme et qu'on puisse programmer nos codes sur des cartouches de 1mo, un SDK en C pour Wonderswan serait-il concevable , parceque l' ASM.... de plus cela entrainerait à coup sur de nouveau développeurs.
Ça doit être faisable de réutiliser un vieux compilateur C pour DOS, par exemple Turbo C (je l'ai déjà vu utilisé sur des cartes à base de 80188 qui n'étaient pas des PC). Comme autre piste, il y a aussi le Wonderwitch (le kit de développement amateur officiel) ; il y a une bibliothèque de fonctions toutes faites, et aussi un compilateur C, il me semble.
X-death (./332) :
-quand tu parle de la puce constructeur , tu parle de la Maskrom du jeu ?
Non, en plus de la ROM, il y a une puce propriétaire (il est marqué "BANDAI" dessus) qui sert à générer les bits supérieurs du bus d'adresse, et peut-être aussi de protection anti-contrefaçon (comme sur les NES et SNES).
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

334

ah ok je voit c' est une sorte de CIC en fait.
si j' arrive en récupérer une proprement désouder ça t'aiderait à faire progresser le linker?

merci beaucoup Zerosquare.
pour le lien de la puce flash c' est compatible ou pas ?
http://www.alldatasheet.com/datasheet-pdf/pdf/227776/NUMONYX/M29W320DB70N1T.html

question, si vous possèdez le wonderswitch serait-il possible de mettre son SDK en C à la disposition de tous le monde ( une copie ISO du CD) et de l'utiliser avec le futur linker ?

335

X-death (./334) :
ah ok je voit c' est une sorte de CIC en fait.
Ouaip'. Pour la partie "protection", je n'en suis pas sûr, mais des étudiants avaient fait leur propre cartouche avec un morceau de PCB et une SRAM. Et la Wonderswan ne voulait pas booter dessus, ils étaient obligés de démarrer avec une cartouche officielle et de swapper à chaud. Donc je pense que la Wonderswan vérifie la présence de cette puce au démarrage.
X-death (./334) :
si j' arrive en récupérer une proprement désouder ça t'aiderait à faire progresser le linker?
C'est sympa de ta part, mais je pense que ce serait plus simple de prendre une cartouche toute faite et de brancher un analyseur logique sur les broches de cette puce, pour voir comment fonctionne la communication avec la Wonderswan. Néanmoins je retiens l'idée smile
X-death (./334) :
question, si vous possèdez le wonderswitch serait-il possible de mettre son SDK en C à la disposition de tous le monde ( une copie ISO du CD) et de l'utiliser avec le futur linker ?
Ça c'est un peu délicat... la boîte qui a créé le Wonderwitch, Qute Corporation, existe toujours et je me demande même s'ils ne continuent pas à le vendre. On risquerait des ennuis avec eux sad
Par ailleurs, il me semble que la documentation du SDK est en Japonais.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

336

!call Orion_
--- Call : Orion_ appelé(e) sur ce topic ...

(il possède un Wonderwitch)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

337

tu sait , vue que la distribution de la console est arrêter depuis de nombreuses années , ils ont déposer le bilan et ont développer sur GBA , ils ont prit cette décision il y a de nombreuses années maintenant.

tout ça pour dire que , des amateurs comme nous ils en ont strictement rien a ******

merci d' appeller Orion, bien que avant de venir poster ici je lui avait déja poser quelques questions ^^.

sinon tu ne m'a pas répondu pour la puce ?

merci encore de ton aide précieuse Zerosquare

338

-

339

X-death (./337) :
tu sait , vue que la distribution de la console est arrêter depuis de nombreuses années , ils ont déposer le bilan et ont développer sur GBA , ils ont prit cette décision il y a de nombreuses années maintenant.
tout ça pour dire que , des amateurs comme nous ils en ont strictement rien a ******
C'est fort possible. Mais bon, perso je me méfie toujours. Après si quelqu'un est prêt à prendre le risque... wink
X-death (./337) :
sinon tu ne m'a pas répondu pour la puce ?
Ah oui désolé, je pensais l'avoir fait. Oui, à première vue ça devrait être compatible.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

340

même si elle fait 48 broches ?
désoler je m'acharne mais c'est pour être sur.

341

Ben... c'est compatible électriquement, dans le sens où si tu relies les broches avec des fils (comme je l'ai fait pour tester la 29W800 48 broches), ça marche.

Mais mécaniquement, évidemment ça n'est pas compatible. Et je pense qu'on ne peut pas faire de PCB d'adaptation 48 -> 44 broches, déjà parce qu'il y aurait très peu de place pour faire passer toutes les pistes, et puis que je ne sais pas comment on pourrait faire pour le relier aux pastilles du PCB d'origine (à part en utilisant des fils, mais c'est tellement laborieux et fragile que ce n'est pas réaliste).

La seule autre solution, c'est de faire un PCB complet soi-même, mais ça implique de pouvoir émuler la puce Bandai (ou alors en dessouder une depuis une vraie cartouche). Et le prix risque d'être assez élevé au final...

Si seulement je savais pourquoi cette fichue mémoire 44 broches ne veut pas marcher mur
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

342

je pense a un truc; y'a des puces avec le pinout retourné pour faciliter la soudure en vis à vis sur les 2 faces d'un PCB.

ça m'intéresse cette puce bandaye.

Donc apparemment elle prend quelques fils d'adresses, 8 bits de données, RD, WR et elle génère des signaux avec ça. il y a des PICs qui ont des slave parallel port.
Et y'a des pics qui ont des horloges internes et qui sont dispo en QFP.

si on l'analyse, c'est faisable.
le handshake du boot est un échange cryptographique ou juste des lectures de registre?

pourquoi ne pas utiliser gcc pour la compil? générer un binaire ça peut se faire avec un linker script avec les outils gcc. la wonderswan marche en mode réel ou protégé?

343

-

344

squalyl (./342) :
je pense a un truc; y'a des puces avec le pinout retourné pour faciliter la soudure en vis à vis sur les 2 faces d'un PCB.
Ben c'est surtout que ce serait pastille contre pastille, donc je ne vois pas comment faire...
squalyl (./342) :
Et y'a des pics qui ont des horloges internes et qui sont dispo en QFP.
Un CPLD serait quand même plus adapté smile
squalyl (./342) :
si on l'analyse, c'est faisable. le handshake du boot est un échange cryptographique ou juste des lectures de registre?
Ché pas. À ma connaissance ça n'a jamais été publiquement analysé. Ceci dit, vu qu'on peut virer la cartouche après le boot, et en insérer une autre qui n'a pas de puce sans que la console bronche, la sécurité est probablement minimale ; donc ça m'étonnerait qu'ils se soient cassé la tête avec de la crypto.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

345

ça serit génial de pouvoir faire une cartouche qui boot sans le swap avec un loader grin

346

Ce n'est pas comme le CIC qui discute en permanance quoi
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

347

En effet. C'est même surprenant d'un transfuge de Nintendo d'avoir fait un système de protection nettement en-dessous de celui de la NES...
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

348

Il n'était ptet pas sur le projet "CIC"
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

349

Possible. Ou alors c'était pas dans le cahier des charges qu'on lui a filé, c'est tout wink
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

350

Ya meme des chances ^^
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

351

quelqu'un peut me faire un résumé de la situation où vous êtes ?
c'est pour un article sur Pockett - ça fait longtemps qu'on n'a pas parlé de la WonderSwan
mais bon si quelqu'un a une info sur autre chose, il peut me joindre aussi -
merci smile
Mon ancien pseudo ici : "oa"

http://www.okazoo.com
-> Sélection de sites proposant des mises en vente gratuites

352

Excuse-moi, j'avais oublié ton post. J'essaierai d'y répondre demain (là je vais aller roupiller).

Sinon, j'ai oublié de dire que je pensais avoir trouvé l'idée géniale qui aurait pu expliquer pourquoi le linker ne marchait pas sur les puces à 44 broches, il y a quelques jours : une bête inversion de broches dans la documentation. Malheureusement c'était une impasse tsss
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

353

Avec du retard (désolé), voici les grandes lignes :

Les linkers sur Wonderswan : tout d'abord ceux disponibles dans le commerce.

On a d'abord le Wonderwitch, qui est la solution officielle (conçu par Qute pour Bandai). C'est un kit de développement composé de cartouches reprogrammables, de logiciels pour développer sur PC, et d'un câble qui connecte la Wonderswan au PC pour transférer ses programmes. On ne peut faire tourner que des jeux amateurs développés avec, pas les jeux officiels.

Il y a également le Wondermagic Color, pas du tout officiel, qui est un linker "classique" : une cartouche reprogrammable en l'insérant dans un programmateur relié au PC. Celui-là peut faire tourner les jeux officiels, mais pas les jeux amateurs développés avec le Wonderwitch (du moins pas directement).

Le problème c'est que les deux sont rares et chers, surtout le Wondermagic Color.


Côté amateur, maintenant.

Les premières tentatives ont été faites par des étudiants. À l'époque ils avaient réussi à connecter une mémoire de 32 Ko à la Wonderswan et à exécuter du code ; il fallait démarrer la console avec une cartouche officielle, puis l'enlever et la remplacer par le linker "à chaud". Inutile de dire que les jeux officiels ne tournaient pas dessus, et de toute façon 32 Ko c'est beaucoup trop petit pour ça.

Il y a eu quelques projets de linkers plus évolués, mais ceux-ci n'ont pas abouti pour autant que je sache.

Enfin il y a eu le projet dont on parle dans ce topic. Déjà, on oublie la compatibilité avec les jeux officiels, c'est purement destiné à faire fonctionner des programmes amateurs. L'idée est de récupérer des cartouches existantes qui utilisent une mémoire RAM de 32 Ko, alimentée par une pile lithium, pour sauvegarder leurs données. On remplace la ROM de la cartouche par une mémoire Flash, qui contient un programme qui permet d'écrire dans cette RAM, en connectant la Wonderswan à un PC. La mémoire Flash permet aussi d'exécuter ce qu'il y a dans cette RAM une fois que la console n'est plus branchée au PC, et des fonctions toutes faites qui simplifient le développement des jeux (routines d'affichage, de son, de décompression, etc.). Avantage : pas besoin de fabriquer ses propres PCB, ni de devoir booter avec une autre cartouche, car on réutilise une cartouche originale.

Situation actuelle : le tout fonctionne très bien avec une mémoire Flash dans un boîtier différent de celui des ROMs d'origine, et en reliant avec des fils. En utilisant excatement le même composant, mais dans le même boîtier que l'original, impossible de programmer cette mémoire. Et je ne sais pas pourquoi.

L'autre possibilité serait de concevoir une cartouche soi-même de A à Z, mais c'est nettement plus cher, ce n'est pas simple (il faut que les dimensions mécaniques soient précises), et selon toute vraisemblance il est nécessaire d'avoir un composant qui ne se trouve que dans les cartouches originales pour pouvoir démarrer la console directement avec le linker (ou d'arriver à faire une copie de ce composant).
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

354

merci !
Mon ancien pseudo ici : "oa"

http://www.okazoo.com
-> Sélection de sites proposant des mises en vente gratuites

355

(n'hésite pas à demander si tu as besoin de précisions supplémentaires)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

356

Zerosquare (./353) :
Situation actuelle : le tout fonctionne très bien avec une mémoire Flash dans un boîtier différent de celui des ROMs d'origine, et en reliant avec des fils. En utilisant excatement le même composant, mais dans le même boîtier que l'original, impossible de programmer cette mémoire. Et je ne sais pas pourquoi.


Etrange, vraiment. Tu crois que la longueur des fils peut jouer? Par exemple quand je dumpais la NAND de ma Xbox 360 (en LPT) avec un câble de 60 cm, ça plantait 9 fois sur 10. J'ai raccourci le câble de 30 cm et maintenant ça marche à tous les coups.

Est-il possible que les fils jouent le rôle de "résistances" et qu'une petite résistance soit effectivement nécessaire au fonctionnement du composant à souder?
avatar
Spartine, la fille que ce soir elle dîne en enfer: http://www.spartine.com

Pockett Videogames, le site de toutes les consoles portables!: http://www.pockett.net

J'aime beaucoup faire des dessins aux petites filles! C'est ma passion.

357

pas de résistance, enfin si partiellement mais c'est plutot au niveau du délai de propagation des signaux, et *surtout* et des parasites que le cable chope au passage.

358

Les câbles JTAG marchent mal quand ils sont trop longs (et pas que sur Xbox 360, ça fait pareil sur la plupart des cartes à JTAG), et effectivement 60 cm c'est généralement considéré comme trop.

Par contre, un truc qui marche pas à cause d'un câble trop court, j'en ai jamais entendu parler, et théoriquement je suis même pas sûr que ce soit vraiment possible. Et puis la différence de résistance fils / pistes est trop petite pour changer quoi que ce soit avec ce genre de composants (en fait il y a même moins de différence que ça : pour programmer les puces, j'ai pas besoin des fils, j'ai soudé les puces directement sur des bouts de PCB. Y'a juste la longueur des pistes qui change légèrement entre les deux). Par ailleurs, j'ai vérifié les signaux à l'analyseur logique, et si je me suis pas planté ça respecte ce qu'il y a écrit dans la doc.

Je pourrais toujours ressortir l'oscilloscope (c'est plus précis que l'analyseur logique) par acquis de conscience...

Ou alors, je me suis fait refourguer des composants défectueux. Mais sachant que ça vient d'un des plus grands distributeurs mondiaux, j'ai quand même du mal à y croire. (bon, d'un autre côté c'est fabriqué par ST Microelectronics, donc après tout... cheeky)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

359

Les questions à la con qu'on pose toujours dans ces cas-là grin

- tu es bien sûr de la qualité de tes soudures? Il y a bien contact?
- tu n'as pas shorté deux pins?
- ton truc là, t'es sûr qu'il marche, à la base?
- tu l'as mis dans le bon sens?
avatar
Spartine, la fille que ce soir elle dîne en enfer: http://www.spartine.com

Pockett Videogames, le site de toutes les consoles portables!: http://www.pockett.net

J'aime beaucoup faire des dessins aux petites filles! C'est ma passion.

360

Rôh l'aut', hé tongue
Nhut (./359) :
- tu es bien sûr de la qualité de tes soudures? Il y a bien contact? -> oui, soudures déjà refaites et vérifiées
- tu n'as pas shorté deux pins? -> non, déja vérifié
- ton truc là, t'es sûr qu'il marche, à la base? -> voir plus haut hehe
- tu l'as mis dans le bon sens? -> oui, quand même triso
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo