Author's Description: This is a preleminar version of the final version. Don't except him to emulate everything correctly.

TI-NESulator is an NES (Nintendo Entertainment System) emulator.
TI-NESulator was targeted at first to work only on TI-68k calculators. But since this was my first attempt for making a NES emulator, I can't continue without testing if the emulation work correctly with better debuguer. My primary graphic library on PC devellopement was Allegro, That's why I am here.

Actually the whole code is nearly entirely portable, and TI-68k and PC/Mac version share about 90% of the source code (this will change in a near future). BUT the PC/Mac version will not be abandoned.

The project started 2 years ago, but the whole code need at least 2 or 3 month of work. Some parts are so ugly that I can't even maintain or debug them! It don't have a frame limiter, so it can be too speed, but it's often lower than it should.

Anyway "it just work", and can actualy emulate games using MMC like cnrom, unrom, MMC1, or using no mapper.

The readme is actually only in french (sorry) so, the needed parts are translated here :

Keys :
NES paddle Keyboard

Up Up
Down Down
Left Left
Right Right
A W (may be z on qwzerty keyboards..)
B S
START ENTER
SELECT P

0.30.2
2008-02-25: v0.30 part 3
- Update a bit the documentation
- Just a bit of cosmetic
- minors modifications on cycle count and update correct source file headers
- Update PPU to new version, correct a lot of bugs:
- Scanline counts was wrongPAL counts was wrong, correct some bugs in the plugins manager, remove a lot of warning during compilation

0.30.1
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] 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!

0.30.0
03/05/2007 V0.30 part 1
- Started the process of PPU total rewrite.
- Bg seem to draw fine, sprite is under the way
- Add new test rom
- Blargg sprite_ram test pass sucessfully ^^
- Correct a lot of bug in implementation of a lot of things.
- Try to make it accurate as much as possible...
- All Blargg PPU test pass with success (in fact only timing is not good,
but it's enought good to let Battletoad work correctly... Maybe it's
sprite0 related)

0.29
03/04/2007:
- Totaly new memory manager
- Simple sound support (only on UNIX, but maybe Windows & DOS can support
it)
- New plugin manager (a gamegenie plugin like is under development)
- New mapper manager
- Large bug correction on mappers (MMC3 now behave correclty)
- Large bug correction on larges things (like Signal handler now exit
correctly if a signal occure when in signal)
- Output now much simpler & readable
- New cart opening & internal strictures
- A very good speed boost with the new memory manager (it's incredible,
without speed limitation I can now go near 300/350fps!)
- Large part of code reorganisation (needed for the new memory manager and
plugin manager)
- And an incredible number of modification/bug correction and more and
more...
- Switch to SVN source control
- New command line parser (now it no more a stupid command line parser)
- Palette is no more externalized. (removing some path bad behaviour with
Mac/unix/Windows version)
- Corrections on paddle emulation, now should work near perfect.

0.28
02/21/2007 V0.28
- Internal support for mapper #65 (Irem h3001) but not actually active.
- Some new debug options

02/19/2007 V0.27 Internal release
- Correction of a blocking bug in the memory module.
- The mapper MMC3 now work at nearly 99%. Only IRQ emulation is not as good as I want..
- Bug correction on 8x16 sprite support
- Now the crashdump generate a file instead of displaying on screen.
- The crashdump is more complete

19/10/2004 V0.25
- MMC1 is functional at 99% (no support for 1024Kb cart, but I can't find anyone..)
- 8x16 sprites are now OK
- Attribute tables, and color is now fully functional
- No more two pass on sprite display (speed improvement)
- A bit more slow :(
- NEW - MacOS X version !
- Source code reorganisation
- May be the lastest version of the actual PPU source code before total rewriting
- SMB1 support is always broken.. I can't understand why..
- Mirrors mode improved
- NEW - Save Ram support added !
- AOROM mappers added ! (nearly all RARE game) but timings are not good so..

40.26: Works with some games, but chokes on most others. Also doesn't look very good, there are no configuration settings and all the instructions are in French. Looks promising, but it needs more to deserve a better score...