From 8e99ac85ff30e3b568ba36843f885c7cc8d1f10b Mon Sep 17 00:00:00 2001 From: godzil Date: Mon, 25 Feb 2008 14:52:06 +0000 Subject: [PATCH] Update documentation --- doc/Changements.txt | 12 ++ doc/Changes.txt | 30 ++- doc/LisezMoi.txt | 438 +++++++++++++++++++++----------------------- doc/TODO.txt | 14 +- 4 files changed, 249 insertions(+), 245 deletions(-) diff --git a/doc/Changements.txt b/doc/Changements.txt index a4bab39..046877d 100755 --- a/doc/Changements.txt +++ b/doc/Changements.txt @@ -1,3 +1,15 @@ +25/02/2008: V0.30 part 2 + - Correct a bug in CPU emulation related with cycle count and the stupid R_FLAG + - Correct bugs in PAL emulation where VBlank line count was incorrect. + - Correct a bug with VBlank (it occured one line too late) + - Correct a bug with cart loading, if the file name was incorrect it crashed instead + exiting gently. + - All mappers are remerged. + - Unix & Windows build are totaly broken... + - Sprite are back! There are some bad behaviour, but they will be corrected with next versions. + - New SVN repository (the disk where the old one was had crashed...) + - Iremh3100 is now active! (finaly) + 05/10/2007 V0.30 part 2 ... In progress ... - Start rewrite of mapper manager. The goal, like for plugin manager, is to allow in the future to have plugins or mapper in external libraries. diff --git a/doc/Changes.txt b/doc/Changes.txt index 50b9489..9d44dde 100755 --- a/doc/Changes.txt +++ b/doc/Changes.txt @@ -1,20 +1,32 @@ -05/10/2007 V0.30 part 2 ... In progress ... - - Start rewrite of mapper manager. The goal, like for plugin manager, is - to allow in the future to have plugins or mapper in external libraries. - - New sound layer using Allegro. Not really accurate, but more portable. - A lot of work has to be done on this (especialy because the actual sound - is really bad.) - - Started a new source organisation. Should be the good one this time ! +25/02/2008: V0.30 part 2 + - Correct a bug in CPU emulation related with cycle count and the stupid R_FLAG + - Correct bugs in PAL emulation where VBlank line count was incorrect. + - Correct a bug with VBlank (it occured one line too late) + - Correct a bug with cart loading, if the file name was incorrect it crashed instead + exiting gently. + - All mappers are remerged. + - Unix & Windows build are totaly broken... + - Sprite are back! There are some bad behaviour, but they will be corrected with next versions. + - New SVN repository (the disk where the old one was had crashed...) + - Iremh3100 is now active! (finaly) + 25/10/2007: - Savestate now work correctly (It was not loaded at the right time...) - Mapper manager seems to work correctly ok - - [MACOSX] Buils options are better now - + - [MACOSX] Builds options are better now - [TODO] Remerge old PPU debug utilities in real plugin form - [TODO] Change the make util. Maybe cmake ? - [TODO] Remerge all mappers with the new manager - [TODO] Rewrite UNIX Makefile for support new src organization. + +05/10/2007: + - Start rewrite of mapper manager. The goal, like for plugin manager, is + to allow in the future to have plugins or mapper in external libraries. + - New sound layer using Allegro. Not really accurate, but more portable. + A lot of work has to be done on this (especialy because the actual sound + is really bad.) + - Started a new source organisation. Should be the good one this time! 03/05/2007 V0.30 part 1 - Started the process of PPU total rewrite. diff --git a/doc/LisezMoi.txt b/doc/LisezMoi.txt index 8aa77a1..cecdd82 100755 --- a/doc/LisezMoi.txt +++ b/doc/LisezMoi.txt @@ -1,233 +1,205 @@ -<----------------------------------------------------------------------------------> - TI-NESulator - Version 0.26 beta - - Par Manoël TRAPIER aka Godzil - godzil at godzil point net - -1 -> #include - -L'utilisation de se logiciel se fait a vos risque et périls. Il s'agit d'une pars -d'une version non terminée, et en cours de dévellopement, et la diffusion n'a été -faite que pour permettre le teste, et la démonstration de se que sera le logiciel -final. - -Je ne peut donc être tenu pour responsable en cas de problème lié a l'utilisation -ou posession de se logiciel. - -Vous êtes libre de l'utiliser à partir du moment au se logiciel n'a pas été modifié -que sa soit de manière binaire, ou par désassemblage. Si vous trouver une version -modifié ou fourni avec des fichiers illégaux, veuillez me le faire savoir. Vous -trouverez comment me contacter dans la suite de se fichier. - -Vous êtes libre aussi de le distribuer tant que les fichiers contenus dans le -paquetage original sont laissé intouché (les fichiers Changements.txt LisezMoi.txt -et TINes.exe) - -Information légales : -NES, Famicon, Nintendo Entertainment System, Nintendo sont des marques déposé de -Nintendo France, Nintendo of america et Nintendo Company, Ltd. -Tout les titres et marques apparaisant dans se fichier texte sont la propriété de -leurs auteurs respectifs. - -N'oubliez pas aussi que la posession de ROM (Fichier binaire représentant le -contenue d'une cartouche) sans en posseder l'originale (la cartouche) est absolument -illégale, que vous la gardiez 24 heures ou seulement 30 secondes - - -2 -> Qu'est-ce que TI-NESulator ? - -TI-NESulator est un émulateur de la console Nintendo Entertainment System -(connunément appelé NES) fabriqué par Nintendo au milieu des année 80. L'originalité -de cet emulateur est que sa plateforme de fonctionnement principal est les -calculatrices TI-89 et TI-92+ de chez Texas Instrument. Ses calculatrices on la -particularité de posseder un microprocesseur 68000 de chez motorola, qui est pour -se genre de plateforme relativement puissant et programmer un emulateur, meme de -NES, sur ses machine est un véritable défit. -Tant au niveau matériel que mémoire, la NES et les TI-68k sont completements -différents. -La NES utilise une version légérement personalisé du microprocesseur 6502 -fonctionnant a environ 1.7Mhz. - -Vous avez actuellement une version spéciale (comprendre pas faite pour -calculatrices TI.) Cette version ne me sert qu'a mettre en oeuvre de nouvelles -choses dans la version TI de l'émulateur (notemment a cause d'un gros manque -de debuggueur C dans le monde TI.) - -Cette version est et sera toujours plus avancé que la version TI dans le sens ou -elle me sert a expérimenter les nouveaux hardware émulé et a finaliser le hardware -deja emuler. Une fois fonctionnant d'un maniere convenable sur le portage Windows, -les mises a jours sont faites dans la version TI. Mais la version Windows au final -contiendra plus de fonctionnalité que la version TI (support des palletes, de la -couleur, voir meme le son etc...) - - -3 -> Utilisation de TI-NESulator - -[A faire.] - -Version courte : - -C:\TINes\>TINES jeux.nes - -Utilisation du Joystick : - -Manette NES Clavier - -HAUT HAUT -BAS BAS -GAUCHE GAUCHE -DROITE DROITE -A W -B S -START ENTER -SELECT P - --------------------------- - -Autres touches : -R identique a l'apuis du bouton Reset de la console - - -1-2 A un effet, mais vous risque de pas le voir ;) -3 Affiche les Name Tables -4 Affiche les Tables d'attributs (de couleur) -5 Affiche les palettes -6 Affiche la table des sprites - --------------------------- - -Il faut noter aussi qu'afficher ces tables ralenti considérablement la vitesse de -l'émulateur - -4 -> Compatibilité - -TI-NESulator version Win32 est normalement compatible avec tous les Windows (95, 98, -Me, NT 4, 2000, XP) -TI-NESulator version .X (MacOS X) est normalement compatible toutes version de OS X -(.1.x .2.x .3.x) -L'émulateur émule actuellement avec les mappers : - - - 0 aucun mapper (Super Mario Bros 1, Donkey Kong, ...) - - - 1 MMC1 (a 99%, Megaman 2, Zelda1 & 2, Final Fantasy 1, ...) - - - 2 UNROM (MegaMan, Final fantasy 2, ...) - - - 3 CNROM - - - 4 *NOUVEAU* MMC3 (Super mario Bross 2 & 3, MegaMan 3 à 6, ...) - - - 7 *NOUVEAU* AOROM (Battletoad, ...) - -Les mappers marqué comme *NOUVEAU* sont ceux qui on été ajouté dans la derniere -version disponible. Merci de faire un rapport détaillé si vous rencontrer des -problèmes avec. - - -5 -> A faire - -* Optimisation du coeur de l'émulation du CPU de la NES. - -* Son ? - -* Supprimer les printf et les remplacer par l'affichage dans une console (prochaine - maj) pour eviter les soucis sur - - - PC: car la console n'est pas forcement ouverte tout le temps - - Unix: pour la meme raison - - MacOS: aussi (%)) - - TI: pasqu'on peut pas avoir les deux en meme temps. - -* Recoder le ppu (gestion de l'affichage) - -6 -> Question Réponses - -Q: Pourquoi le jeu xxx ne fonctionne pas ? -R: TI-NESulator est actuellement en cours de dévellopement. Beaucoup de jeux ne -sont pas supporté. - -Q: Vous dites que certain de jeux ne sont pas supporté, mais si j'essaye xxx, il -marche ! Pourquoi ? -R: Ceci est du a une des particularité du Hardware de la NES/Famicon. Le hardware -de base de la console est assé limité, et la mémoire est aussi tres limité. pour -palier à ses limitations, certains jeux utilise ce qu'on appele des Mappers, qui -permettent notemment d'avoir des jeux plus gros, et qui sont implémenté dans la -cartouche du jeu. Malheureusement supporter tout ses mappers font grossir -l'emulateur, et certain on un fonctionnement qui est malheureusement encore -inconnu. N'oubliez pas non plus que TI-NESulator est encore en dévellopement. -Certain mapper connu ne sont pas encore implémenté. - -Q: Oui puis-je trouver le jeux xxxx ? -R: Désolé, je ne donne aucun lien menant, ni aucune ROM de jeux commerciaux. -N'oubliez pas que les personnes vous disant que vous avez le droit de ne garder que -24h une ROM, vous raconte absolument n'importe quoi. Il est absolument *ILLEGAL* de -posseder la ROM d'un jeu que vous ne possedez pas officiellement. - -Q: XXX donne l'air de fonctionner, pourtant il ne reagis pas au touches -R: Cet emulateur n'est pas parfait. Certain jeux/demo demandent un fonctionnement -tres proche de celui de la console originale, ce que TI-NESulator est encore loin -d'arriver a faire - -Q:J'ai des problèmes graphiques avec XXXX -R:Cf réponse-ci dessus - -Q: C'est lent :( -R: Désolé. Le code est toujours en cours de devellopement. Si vous trouvez trop lent, -attendez la prochaine version une surprise vous y attendra peut-etre ! - -7 -> En cas de problème - -a) Un jeu indiqué compatible ne fonctionne pas (ie "Mapper non supporté") - -Alors plusieurs possibilité, soit vous avez une autre version du jeu officielle -ou non, cela peut changer par exemple le mapper utilisé par le jeux, soit vous -avez recuperer un "bad dump", c'est a dire plus simplement une rom foireuse. - -Dans ces deux cas essayez d'en recuperer une autre version. - -b) TI-NESulator à planté !! -Si cela arrive regulierement pour le meme jeu et au meme endroit faites moi un -crash report avec les information que TI-NESulator vous met dans la console -(pour pouvoir la copier tranquillement il faut lancer a partir d'une console -et pas faire glisser la rom sur l'executable) - -N'oubliez pas de préciser le nom complet du jeu, la taille du fichier et toutes -les infos que vous trouverez pertinante (manipulation a faire etc...) - - -8 -> Remerciement - -PpHd pour PreOS, et SMA :) -TiMad Membre de la XTeam sans lequel XLib existerait pas. -nEUrOO Membre de la XTeam sans lequel XLib existerait pas. - -Loopy, Y0Shi, -Marrat Fayzullin, -et bcp d'autre pour la documentation technique sur la NES - -Ainsi que tout ceux que j'ai pu oublier - -9 -> Litérature - -[A faire.] - -mais lien rapide : - -http://www.nesdev.org - -10 -> Comment me contacter ? -s -Vous pouvez me contacter grace au forum yAronet -http://www.yaronet.com - -Et surtout grace au lien suivant : -http://www.yaronet.com/posts.php?sl=&s=2339 - -Vous pouvez aussi me joindre par mail en m'écrivant à "godzil chez godzil point net" -Vous pouvez aussi essayer de visiter un de mes sites : -http://www.godzil.net - --------------------------------------------------------------------------------- -$Id$ --------------------------------------------------------------------------------- +<------------------------------------------------------------------------------> + TI-NESulator + Version 0.30.2 beta + + Par Manoel TRAPIER aka Godzil + godzil at godzil point net + +1 -> #include + +L'utilisation de se logiciel se fait a vos risque et prils. Il s'agit d'une +pars d'une version non termine, et en cours de dvellopement, et la diffusion +n'a t faite que pour permettre le teste, et la dmonstration de se que sera le +logiciel final. + +Je ne peut donc tre tenu pour responsable en cas de problme li +l'utilisation ou posession de se logiciel. + +Vous tes libre de l'utiliser partir du moment au se logiciel n'a pas t +modifi que sa soit de manire binaire, ou par dsassemblage. Si vous trouver +une version modifi ou fourni avec des fichiers illgaux, veuillez me le faire +savoir. Vous trouverez comment me contacter dans la suite de se fichier. + +Vous tes libre aussi de le distribuer tant que les fichiers contenus dans le +paquetage original sont laiss intouch. + +Information lgales : +NES, Famicon, Nintendo Entertainment System, Nintendo sont des marques dpos de +Nintendo France, Nintendo of america et Nintendo Company, Ltd. +Tout les titres et marques apparaisant dans se fichier texte sont la proprit +de leurs auteurs respectifs. + +N'oubliez pas aussi que la posession de ROM (Fichier binaire reprsentant le +contenue d'une cartouche) sans en posseder l'originale (la cartouche) est +absolument illgale, que vous la gardiez 24 heures ou seulement 30 secondes + + +2 -> Qu'est-ce que TI-NESulator ? + +TI-NESulator est un mulateur de la console Nintendo Entertainment System +(connunment appel NES) fabriqu par Nintendo au milieu des anne 80. +L'originalit de cet emulateur est que sa plateforme de fonctionnement principal +est les calculatrices TI-89 et TI-92+ de chez Texas Instrument. Ses +calculatrices on la particularit de posseder un microprocesseur 68000 de chez +motorola, qui est pour se genre de plateforme relativement puissant et +programmer un emulateur, meme de NES, sur ses machine est un vritable dfit +tant au niveau matriel que mmoire, la NES et les TI-68k sont completements +diffrents. +La NES utilise une version lgrement personalis du microprocesseur 6502 +fonctionnant environ 1.7Mhz. + +Vous avez actuellement une version spciale (comprendre pas faite pour +calculatrices TI.) Cette version ne me sert qu'a mettre en oeuvre de nouvelles +choses dans la version TI de l'mulateur (notemment a cause d'un gros manque +de debuggueur C dans le monde TI.) + +Cette version est et sera toujours plus avanc que la version TI dans le sens ou +elle me sert a exprimenter les nouveaux hardware mul et a finaliser le +hardware deja emuler. Une fois fonctionnant d'un maniere convenable sur le +portage Windows, les mises a jours sont faites dans la version TI. Mais la +version Windows au final contiendra plus de fonctionnalit que la version TI +(support des palletes, de la couleur, voir meme le son etc...) + + +3 -> Utilisation de TI-NESulator + +[A faire.] + +Version courte : + +C:\TINes\>TINES jeux.nes + +Utilisation du Joystick : + +Manette NES Clavier + +HAUT HAUT +BAS BAS +GAUCHE GAUCHE +DROITE DROITE +A W +B S +START ENTER +SELECT P + +-------------------------- + +Autres touches : +R identique l'apuis du bouton Reset de la console + + +1-2 A un effet, mais vous risque de pas le voir ;) +3 Affiche les Name Tables +4 Affiche les Tables d'attributs (de couleur) +5 Affiche les palettes +6 Affiche la table des sprites + +-------------------------- + +Il faut noter aussi qu'afficher ces tables ralentisent considrablement la +vitesse de l'mulateur + +4 -> Compatibilit + +TI-NESulator version Win32 est normalement compatible avec tous les Windows +(95, 98,Me, NT 4, 2000, XP) +TI-NESulator version .X (MacOS X) est normalement compatible toutes version + de OS X (.1.x .2.x .3.x) + +L'mulateur mule actuellement avec les mappers : + + - 0 aucun mapper (Super Mario Bros 1, Donkey Kong, ...) + - 1 MMC1 (a 99%, Megaman 2, Zelda1 & 2, Final Fantasy 1, ...) + - 2 UNROM (MegaMan, Final fantasy 2, ...) + - 3 CNROM + - 4 MMC3 (Super mario Bross 2 & 3, MegaMan 3 6, ...) + - 7 AOROM (Battletoad, ...) + +Les mappers marqu comme *NOUVEAU* sont ceux qui on t ajout dans la derniere +version disponible. Merci de faire un rapport dtaill si vous rencontrer des +problmes avec. + +5 -> Question Rponses + +Q: Pourquoi le jeu xxx ne fonctionne pas ? +R: TI-NESulator est actuellement en cours de dvellopement. Beaucoup de jeux ne +sont pas support. + +Q: Vous dites que certain de jeux ne sont pas support, mais si j'essaye xxx, il +marche ! Pourquoi ? +R: Ceci est du a une des particularit du Hardware de la NES/Famicon. Le +hardware de base de la console est ass limit, et la mmoire est aussi tres +limit. pour palier ses limitations, certains jeux utilise ce qu'on appele des +Mappers, qui permettent notemment d'avoir des jeux plus gros, et qui sont +implment dans la cartouche du jeu. Malheureusement supporter tout ses mappers +font grossir l'emulateur, et certain on un fonctionnement qui est +malheureusement encore inconnu. N'oubliez pas non plus que TI-NESulator est +encore en dvellopement. Certain mapper connu ne sont pas encore implment. + +Q: Oui puis-je trouver le jeux xxxx ? +R: Dsol, je ne donne aucun lien menant, ni aucune ROM de jeux commerciaux. +N'oubliez pas que les personnes vous disant que vous avez le droit de ne garder +que 24h une ROM, vous raconte absolument n'importe quoi. Il est absolument +*ILLEGAL* de posseder la ROM d'un jeu que vous ne possedez pas officiellement. + +Q: XXX donne l'air de fonctionner, pourtant il ne reagis pas au touches +R: Cet emulateur n'est pas parfait. Certain jeux/demo demandent un +fonctionnement tres proche de celui de la console originale, ce que TI-NESulator +est encore loin d'arriver a faire. + +Q: J'ai des problmes graphiques avec XXXX +R: Cf rponse-ci dessus + +Q: C'est lent :( +R: Dsol. Le code est toujours en cours de devellopement. Si vous trouvez trop +lent, attendez la prochaine version une surprise vous y attendra peut-etre ! + +7 -> En cas de problme + +a) Un jeu indiqu compatible ne fonctionne pas (ie "Mapper non support") + +Alors plusieurs possibilit, soit vous avez une autre version du jeu officielle +ou non, cela peut changer par exemple le mapper utilis par le jeux, soit vous +avez recuperer un "bad dump", c'est a dire plus simplement une rom foireuse. + +Dans ces deux cas essayez d'en recuperer une autre version. + +b) TI-NESulator plant !! +Si cela arrive regulierement pour le meme jeu et au meme endroit faites moi un +crash report avec les information que TI-NESulator vous met dans la console +(pour pouvoir la copier tranquillement il faut lancer a partir d'une console +et pas faire glisser la rom sur l'executable) + +N'oubliez pas de prciser le nom complet du jeu, la taille du fichier et toutes +les infos que vous trouverez pertinante (manipulation a faire etc...) + +8 -> Remerciement + +Loopy, Y0Shi, Marrat Fayzullin, et bcp d'autre pour la documentation technique +sur la NES + +Ainsi que tout ceux que j'ai pu oublier + +9 -> Litrature + +[A faire.] + +mais lien rapide : + +http://nesdev.parodius.com/ +http://nesdevwiki.org/ + + +10 -> Comment me contacter ? + +Vous pouvez me contacter grace au forum yAronet: http://www.yaronet.com + +Et surtout grace au lien suivant : http://www.yaronet.com/posts.php?sl=&s=2339 + +Vous pouvez aussi me joindre par mail en m'crivant +"godzil chez godzil point net" +Vous pouvez aussi essayer de visiter mon site : http://www.godzil.net + +-------------------------------------------------------------------------------- +$Id$ +-------------------------------------------------------------------------------- \ No newline at end of file diff --git a/doc/TODO.txt b/doc/TODO.txt index cc8fada..a4451d1 100644 --- a/doc/TODO.txt +++ b/doc/TODO.txt @@ -1,7 +1,15 @@ -07/10/2007 V0.30 part 2 +25/02/2008 + - Finish th Quick6502 C project to merge it into TI-NESulator [ ] + - Extract graphic primitive to be less dependent of Allegro [ ] + - Rewrite sound engine [ ] + +07/10/2007 - Remerge old PPU debug utilities in real plugin form [ ] - Change the make util for UNIX. Maybe cmake ? [ ] - Cleanup os/win32 folder [ ] - Thinks about a better svn repository (Maybe a dedibox is a good choice?) - [ ] - \ No newline at end of file + [X] + +-------------------------------------------------------------------------------- +$Id$ +-------------------------------------------------------------------------------- \ No newline at end of file