Classic99 is a Win32-based emulator, whose author, Tursi (Mike Brent), is very talented in many other arenas, including those of console gaming.
It is special in the fact that the author not only acquired permission from Texas Instruments to distribute code with their copyrighted ROMs, but also allows his own source code (minus the copyrighted ROMs) for others to use.
Classic99 has an interesting quality in that it can read a raw TI file (as binary) from a folder on a PC. It doesn't necessarily require a disk image in order to load and use a file. It also has some other niceties, such as the use of DirectX for speed-up in drawing, along with the ability to also use a 'filter' to make the output look more like a TV image.
Classic99 started life on the Amiga as Ami99 in '94 or '95, and was later ported to DOS with the same name. Sometime after being ported to Windows it was renamed to Classic99 after confusion about whether it was still for the Amiga or not.
- Emulation of the 9900 including cycle counting and external opcodes.
- Partial emulation of the 9901, including timers, DSR select, joystick and keyboard
- Full emulation of the sound system, including the noise channels with variable pitch and simulated DAC via both high frequency and CRU input
- Nearly full emulation of the 9918A including undocumented and illegal mode settings and pixel-accurate sprite collisions
- F18A GPU emulation (no graphics modes are supported however)
- 9938/F18A compatible 80-column text mode supported
- Disk emulation via the 'Files On A Disk' approach, compatible with V9T9 and TIFILES formatted files (with TIFILES preferred to allow transfer with a real TI). Capable of reading Windows text files as DISPLAY type files to allow direct loading of Windows generated assembly object files. Use of Windows paths permits subfolders and variable length filenames, as well as removing the limit on files on a 'disk'. (In practice some TI programs will still limit filename length).
- Read-only access of disk images today, both PC99 and V9T9 format. Sector-based write access is available.
- Experimental implementation of the TI Disk Controller card for disk images (full read/write but with TICC hardware limits)
- Speech emulation through external DLL, based on publically available 5220 emulation (some modes not working due to timing issues).
- Display filtering - both to enhance resolution and to reproduce NTSC artifacting, through external DLLs based on code contributed by third parties. Display available via GDI or DirectX, both Windowed and Full Screen available for DirectX
- Speed control - the CPU may be over- or under-clocked in configuration, or the entire system may be sped up
- Built-in ROMs - provided under license from Texas Instruments - includes console ROMs for the 99/4, 99/4A, and v2.2 99/4A, as well as a number of games and user-provided software, right from the menus. Certain disk files, such as QUEST for Tunnels of Doom, and the Editor/Assembler files, are also built in.
- Support for up to 32MB of bank-switched cartridge
- Support for the "UberGROM" GROM emulation system
- Integrated debugger - offers disassembly, memory view, register dump, debug output, and single step.
- High compatibility - Classic99 runs most software correctly. Known issues are TE2 text-to-speech and minor timing discrepancies.
Classic99 can be found here: http://www.harmlesslion.com/software/classic99