Update documentation

This commit is contained in:
godzil 2008-02-25 14:52:06 +00:00
parent c2ae371bed
commit 8e99ac85ff
4 changed files with 249 additions and 245 deletions

View File

@ -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 ... 05/10/2007 V0.30 part 2 ... In progress ...
- Start rewrite of mapper manager. The goal, like for plugin manager, is - 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. to allow in the future to have plugins or mapper in external libraries.

View File

@ -1,20 +1,32 @@
05/10/2007 V0.30 part 2 ... In progress ... 25/02/2008: V0.30 part 2
- Start rewrite of mapper manager. The goal, like for plugin manager, is - Correct a bug in CPU emulation related with cycle count and the stupid R_FLAG
to allow in the future to have plugins or mapper in external libraries. - Correct bugs in PAL emulation where VBlank line count was incorrect.
- New sound layer using Allegro. Not really accurate, but more portable. - Correct a bug with VBlank (it occured one line too late)
A lot of work has to be done on this (especialy because the actual sound - Correct a bug with cart loading, if the file name was incorrect it crashed instead
is really bad.) exiting gently.
- Started a new source organisation. Should be the good one this time ! - 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: 25/10/2007:
- Savestate now work correctly (It was not loaded at the right time...) - Savestate now work correctly (It was not loaded at the right time...)
- Mapper manager seems to work correctly ok - 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] Remerge old PPU debug utilities in real plugin form
- [TODO] Change the make util. Maybe cmake ? - [TODO] Change the make util. Maybe cmake ?
- [TODO] Remerge all mappers with the new manager - [TODO] Remerge all mappers with the new manager
- [TODO] Rewrite UNIX Makefile for support new src organization. - [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 03/05/2007 V0.30 part 1
- Started the process of PPU total rewrite. - Started the process of PPU total rewrite.

View File

@ -1,233 +1,205 @@
<----------------------------------------------------------------------------------> <------------------------------------------------------------------------------>
TI-NESulator TI-NESulator
Version 0.26 beta Version 0.30.2 beta
Par Manoël TRAPIER aka Godzil Par Manoel TRAPIER aka Godzil
godzil at godzil point net godzil at godzil point net
1 -> #include <disclamer.h> 1 -> #include <disclamer.h>
L'utilisation de se logiciel se fait a vos risque et périls. Il s'agit d'une pars L'utilisation de se logiciel se fait a vos risque et pŽrils. Il s'agit d'une
d'une version non terminée, et en cours de dévellopement, et la diffusion n'a été pars d'une version non terminŽe, et en cours de dŽvellopement, et la diffusion
faite que pour permettre le teste, et la démonstration de se que sera le logiciel n'a ŽtŽ faite que pour permettre le teste, et la dŽmonstration de se que sera le
final. logiciel final.
Je ne peut donc être tenu pour responsable en cas de problème lié a l'utilisation Je ne peut donc <20>tre tenu pour responsable en cas de probl<62>me liŽ ˆ
ou posession de se logiciel. l'utilisation ou posession de se logiciel.
Vous êtes libre de l'utiliser à partir du moment au se logiciel n'a pas été modifié Vous <20>tes libre de l'utiliser ˆ partir du moment au se logiciel n'a pas ŽtŽ
que sa soit de manière binaire, ou par désassemblage. Si vous trouver une version modifiŽ que sa soit de mani<6E>re binaire, ou par dŽsassemblage. Si vous trouver
modifié ou fourni avec des fichiers illégaux, veuillez me le faire savoir. Vous une version modifiŽ ou fourni avec des fichiers illŽgaux, veuillez me le faire
trouverez comment me contacter dans la suite de se fichier. 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 Vous <20>tes libre aussi de le distribuer tant que les fichiers contenus dans le
paquetage original sont laissé intouché (les fichiers Changements.txt LisezMoi.txt paquetage original sont laissŽ intouchŽ.
et TINes.exe)
Information lŽgales :
Information légales : NES, Famicon, Nintendo Entertainment System, Nintendo sont des marques dŽposŽ de
NES, Famicon, Nintendo Entertainment System, Nintendo sont des marques déposé de Nintendo France, Nintendo of america et Nintendo Company, Ltd.
Nintendo France, Nintendo of america et Nintendo Company, Ltd. Tout les titres et marques apparaisant dans se fichier texte sont la propriŽtŽ
Tout les titres et marques apparaisant dans se fichier texte sont la propriété de de leurs auteurs respectifs.
leurs auteurs respectifs.
N'oubliez pas aussi que la posession de ROM (Fichier binaire reprŽsentant le
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
contenue d'une cartouche) sans en posseder l'originale (la cartouche) est absolument absolument illŽgale, que vous la gardiez 24 heures ou seulement 30 secondes
illégale, que vous la gardiez 24 heures ou seulement 30 secondes
2 -> Qu'est-ce que TI-NESulator ?
2 -> Qu'est-ce que TI-NESulator ?
TI-NESulator est un Žmulateur de la console Nintendo Entertainment System
TI-NESulator est un émulateur de la console Nintendo Entertainment System (connunŽment appelŽ NES) fabriquŽ par Nintendo au milieu des annŽe 80.
(connunément appelé NES) fabriqué par Nintendo au milieu des année 80. L'originalité L'originalitŽ de cet emulateur est que sa plateforme de fonctionnement principal
de cet emulateur est que sa plateforme de fonctionnement principal est les est les calculatrices TI-89 et TI-92+ de chez Texas Instrument. Ses
calculatrices TI-89 et TI-92+ de chez Texas Instrument. Ses calculatrices on la calculatrices on la particularitŽ de posseder un microprocesseur 68000 de chez
particularité de posseder un microprocesseur 68000 de chez motorola, qui est pour motorola, qui est pour se genre de plateforme relativement puissant et
se genre de plateforme relativement puissant et programmer un emulateur, meme de programmer un emulateur, meme de NES, sur ses machine est un vŽritable dŽfit
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
Tant au niveau matériel que mémoire, la NES et les TI-68k sont completements diffŽrents.
différents. La NES utilise une version lŽgŽrement personalisŽ du microprocesseur 6502
La NES utilise une version légérement personalisé du microprocesseur 6502 fonctionnant ˆ environ 1.7Mhz.
fonctionnant a environ 1.7Mhz.
Vous avez actuellement une version spŽciale (comprendre pas faite pour
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
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
choses dans la version TI de l'émulateur (notemment a cause d'un gros manque de debuggueur C dans le monde TI.)
de debuggueur C dans le monde TI.)
Cette version est et sera toujours plus avancŽ que la version TI dans le sens ou
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
elle me sert a expérimenter les nouveaux hardware émulé et a finaliser le hardware hardware deja emuler. Une fois fonctionnant d'un maniere convenable sur le
deja emuler. Une fois fonctionnant d'un maniere convenable sur le portage Windows, portage Windows, les mises a jours sont faites dans la version TI. Mais la
les mises a jours sont faites dans la version TI. Mais la version Windows au final version Windows au final contiendra plus de fonctionnalitŽ que la version TI
contiendra plus de fonctionnalité que la version TI (support des palletes, de la (support des palletes, de la couleur, voir meme le son etc...)
couleur, voir meme le son etc...)
3 -> Utilisation de TI-NESulator
3 -> Utilisation de TI-NESulator
[A faire.]
[A faire.]
Version courte :
Version courte :
C:\TINes\>TINES jeux.nes
C:\TINes\>TINES jeux.nes
Utilisation du Joystick :
Utilisation du Joystick :
Manette NES Clavier
Manette NES Clavier
HAUT HAUT
HAUT HAUT BAS BAS
BAS BAS GAUCHE GAUCHE
GAUCHE GAUCHE DROITE DROITE
DROITE DROITE A W
A W B S
B S START ENTER
START ENTER SELECT P
SELECT P
--------------------------
--------------------------
Autres touches :
Autres touches : R identique ˆ l'apuis du bouton Reset de la console
R identique a l'apuis du bouton Reset de la console
1-2 A un effet, mais vous risque de pas le voir ;)
1-2 A un effet, mais vous risque de pas le voir ;) 3 Affiche les Name Tables
3 Affiche les Name Tables 4 Affiche les Tables d'attributs (de couleur)
4 Affiche les Tables d'attributs (de couleur) 5 Affiche les palettes
5 Affiche les palettes 6 Affiche la table des sprites
6 Affiche la table des sprites
--------------------------
--------------------------
Il faut noter aussi qu'afficher ces tables ralentisent considŽrablement la
Il faut noter aussi qu'afficher ces tables ralenti considérablement la vitesse de vitesse de l'Žmulateur
l'émulateur
4 -> CompatibilitŽ
4 -> Compatibilité
TI-NESulator version Win32 est normalement compatible avec tous les Windows
TI-NESulator version Win32 est normalement compatible avec tous les Windows (95, 98, (95, 98,Me, NT 4, 2000, XP)
Me, NT 4, 2000, XP) TI-NESulator version .X (MacOS X) est normalement compatible toutes version
TI-NESulator version .X (MacOS X) est normalement compatible toutes version de OS X de OS X (.1.x .2.x .3.x)
(.1.x .2.x .3.x)
L'émulateur émule actuellement avec les mappers : L'Žmulateur Žmule actuellement avec les mappers :
- 0 aucun mapper (Super Mario Bros 1, Donkey Kong, ...) - 0 aucun mapper (Super Mario Bros 1, Donkey Kong, ...)
- 1 MMC1 (a 99%, Megaman 2, Zelda1 & 2, Final Fantasy 1, ...)
- 1 MMC1 (a 99%, Megaman 2, Zelda1 & 2, Final Fantasy 1, ...) - 2 UNROM (MegaMan, Final fantasy 2, ...)
- 3 CNROM
- 2 UNROM (MegaMan, Final fantasy 2, ...) - 4 MMC3 (Super mario Bross 2 & 3, MegaMan 3 ˆ 6, ...)
- 7 AOROM (Battletoad, ...)
- 3 CNROM
Les mappers marquŽ comme *NOUVEAU* sont ceux qui on ŽtŽ ajoutŽ dans la derniere
- 4 *NOUVEAU* MMC3 (Super mario Bross 2 & 3, MegaMan 3 à 6, ...) version disponible. Merci de faire un rapport dŽtaillŽ si vous rencontrer des
probl<EFBFBD>mes avec.
- 7 *NOUVEAU* AOROM (Battletoad, ...)
5 -> Question RŽponses
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 Q: Pourquoi le jeu xxx ne fonctionne pas ?
problèmes avec. R: TI-NESulator est actuellement en cours de dŽvellopement. Beaucoup de jeux ne
sont pas supportŽ.
5 -> A faire Q: Vous dites que certain de jeux ne sont pas supportŽ, mais si j'essaye xxx, il
marche ! Pourquoi ?
* Optimisation du coeur de l'émulation du CPU de la NES. 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
* Son ? 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
* Supprimer les printf et les remplacer par l'affichage dans une console (prochaine implŽmentŽ dans la cartouche du jeu. Malheureusement supporter tout ses mappers
maj) pour eviter les soucis sur font grossir l'emulateur, et certain on un fonctionnement qui est
malheureusement encore inconnu. N'oubliez pas non plus que TI-NESulator est
- PC: car la console n'est pas forcement ouverte tout le temps encore en dŽvellopement. Certain mapper connu ne sont pas encore implŽmentŽ.
- Unix: pour la meme raison
- MacOS: aussi (%)) Q: Oui puis-je trouver le jeux xxxx ?
- TI: pasqu'on peut pas avoir les deux en meme temps. 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
* Recoder le ppu (gestion de l'affichage) 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.
6 -> Question Réponses
Q: XXX donne l'air de fonctionner, pourtant il ne reagis pas au touches
Q: Pourquoi le jeu xxx ne fonctionne pas ? R: Cet emulateur n'est pas parfait. Certain jeux/demo demandent un
R: TI-NESulator est actuellement en cours de dévellopement. Beaucoup de jeux ne fonctionnement tres proche de celui de la console originale, ce que TI-NESulator
sont pas supporté. est encore loin d'arriver a faire.
Q: Vous dites que certain de jeux ne sont pas supporté, mais si j'essaye xxx, il Q: J'ai des probl<62>mes graphiques avec XXXX
marche ! Pourquoi ? R: Cf rŽponse-ci dessus
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 Q: C'est lent :(
palier à ses limitations, certains jeux utilise ce qu'on appele des Mappers, qui R: DŽsolŽ. Le code est toujours en cours de devellopement. Si vous trouvez trop
permettent notemment d'avoir des jeux plus gros, et qui sont implémenté dans la lent, attendez la prochaine version une surprise vous y attendra peut-etre !
cartouche du jeu. Malheureusement supporter tout ses mappers font grossir
l'emulateur, et certain on un fonctionnement qui est malheureusement encore 7 -> En cas de probl<62>me
inconnu. N'oubliez pas non plus que TI-NESulator est encore en dévellopement.
Certain mapper connu ne sont pas encore implémenté. a) Un jeu indiquŽ compatible ne fonctionne pas (ie "Mapper non supportŽ")
Q: Oui puis-je trouver le jeux xxxx ? Alors plusieurs possibilitŽ, soit vous avez une autre version du jeu officielle
R: Désolé, je ne donne aucun lien menant, ni aucune ROM de jeux commerciaux. ou non, cela peut changer par exemple le mapper utilisŽ par le jeux, soit vous
N'oubliez pas que les personnes vous disant que vous avez le droit de ne garder que avez recuperer un "bad dump", c'est a dire plus simplement une rom foireuse.
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. Dans ces deux cas essayez d'en recuperer une autre version.
Q: XXX donne l'air de fonctionner, pourtant il ne reagis pas au touches b) TI-NESulator ˆ plantŽ !!
R: Cet emulateur n'est pas parfait. Certain jeux/demo demandent un fonctionnement Si cela arrive regulierement pour le meme jeu et au meme endroit faites moi un
tres proche de celui de la console originale, ce que TI-NESulator est encore loin crash report avec les information que TI-NESulator vous met dans la console
d'arriver a faire (pour pouvoir la copier tranquillement il faut lancer a partir d'une console
et pas faire glisser la rom sur l'executable)
Q:J'ai des problèmes graphiques avec XXXX
R:Cf réponse-ci dessus 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...)
Q: C'est lent :(
R: Désolé. Le code est toujours en cours de devellopement. Si vous trouvez trop lent, 8 -> Remerciement
attendez la prochaine version une surprise vous y attendra peut-etre !
Loopy, Y0Shi, Marrat Fayzullin, et bcp d'autre pour la documentation technique
7 -> En cas de problème sur la NES
a) Un jeu indiqué compatible ne fonctionne pas (ie "Mapper non supporté") Ainsi que tout ceux que j'ai pu oublier
Alors plusieurs possibilité, soit vous avez une autre version du jeu officielle 9 -> LitŽrature
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. [A faire.]
Dans ces deux cas essayez d'en recuperer une autre version. mais lien rapide :
b) TI-NESulator à planté !! http://nesdev.parodius.com/
Si cela arrive regulierement pour le meme jeu et au meme endroit faites moi un http://nesdevwiki.org/
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) 10 -> Comment me contacter ?
N'oubliez pas de préciser le nom complet du jeu, la taille du fichier et toutes Vous pouvez me contacter grace au forum yAronet: http://www.yaronet.com
les infos que vous trouverez pertinante (manipulation a faire etc...)
Et surtout grace au lien suivant : http://www.yaronet.com/posts.php?sl=&s=2339
8 -> Remerciement Vous pouvez aussi me joindre par mail en m'Žcrivant ˆ
"godzil chez godzil point net"
PpHd pour PreOS, et SMA :) Vous pouvez aussi essayer de visiter mon site : http://www.godzil.net
TiMad Membre de la XTeam sans lequel XLib existerait pas.
nEUrOO Membre de la XTeam sans lequel XLib existerait pas. --------------------------------------------------------------------------------
$Id$
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$
--------------------------------------------------------------------------------

View File

@ -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 [ ] - Remerge old PPU debug utilities in real plugin form [ ]
- Change the make util for UNIX. Maybe cmake ? [ ] - Change the make util for UNIX. Maybe cmake ? [ ]
- Cleanup os/win32 folder [ ] - Cleanup os/win32 folder [ ]
- Thinks about a better svn repository (Maybe a dedibox is a good choice?) - Thinks about a better svn repository (Maybe a dedibox is a good choice?)
[ ] [X]
--------------------------------------------------------------------------------
$Id$
--------------------------------------------------------------------------------