PC99 - A program for the PC which emulates a TI99/4 or TI99/4aPlease note: PC99 is a COMMERCIAL program, NOT shareware and absolutely NOT freeware. If you use it, ensure you have paid Mike. He is a nice person and should not be robbed.
The TI99/4 was a computer produced by Texas Instruments in 1979, before the PC. The upgraded TI99/4a was removed from sale in November 1983 after TI made huge losses on the product which came close to closing the TI empire down.
The TI99/4a was so well built that many of them are still functioning, twenty years later. Now we have a commercial emulation for the PC, from CaDD electronics.
In 2015 youtube had a video of Mike Wright demonstrating version 5 of pc99.
pc99w- for Windows
On November 1st 2016 owners of the dos version of pc99 became able to upgrade to a Windows version pc99w which is supplied on dvd or usb stick together with the dos pc99 (NOT pc99 lite, now discontinued) and The Cyc. New owners may purchase the Windows version from 1st January 2017.
The article below remains for those thinking of using the dos version.
I have had a preview taste of pc99w, a Windows version of pc99, for all those machines that struggle to run a true DOS program. To make life more interesting I have tested it on a Linux machine with the WINE program and all reasonable TI software runs just fine, module and disk. It remains a work in progress but significant strides have been made in the last few months. pc99w uses the same module and disk file formats as PC99.
Update 2000: Version 6:
The user interface has altered very little - users will however see a huge improvement in the ability to more easily play their favourite TI programs, as Release 6 has much improved sound handling (Harrison Software assembly language music now plays well) and the handling of timing is far better.
The Version 5 command to amend speed (SPP) has been replaced with two inter-related commands (SD1 and SD2) which permit the emulator to run on much faster systems than were imagined three years ago, yet still allow it to run quite happily on a 266MHz machine (slower machines can run the "lite" version)
On my 266 machine instead of using SPP 80 I now use SD1 4 and SD2 4, although for extended basic programs I like to hasten things by using SD1 0 and SD2 0 (lower numbers = faster speed).
This following text is about the "Release 5" of PC99 but applies to Version 6 also, subject to the above notes. This works in DOS, or in a DOS window in W98. There is something to be said for running it in both systems- W98 allows you to open several DOS windows, giving an effective shell whereas cursor movement is smoother in pure dos.To run PC99 in its native DOS operating system you may need to get a copy of FreeDOS, one flavour of which runs from a floppy with no hard disk install or partitioning. PC99 will run in Linux using DOSEMU. Basic programs run quite well but some games modules can be jerky or slow. Dosemu is a partial pc emulation plus a real dos. A full processor and dos emulation can be found in dosbox but that has a speed tradeoff which makes it unsuitable for pc99. Booting Freedos from a floppy disk (or from a dos partition if you have one) may be the best answer on modern machines.
The basic package includes an emulation of the Editor Assembler module to allow you to write 9900 assembly programs, or to run the many machine code programs available. Also TI and Myarc Extended Basic (and TI Basic) to write and run programs in these languages. There are several models of console you can emulate!
Emulation of additional TI modules is available - I recommend you buy them with the main package, they are VERY inexpensive- I have the Logo 2 module so I can use that language, and also the Super Extended Basic. Emulation of the USCD Pascal card is included but you will need to buy the extra "disks" to use it.
At any time running the basic package you can choose the TI 32k ram or Myarc 512k ram card emulation ; you can select from TI or Myarc disk controller emulation; you can use your PC joystick as a (or 2) TI joystick(s); the program supports Soundblaster and Ad Lib protocols, or you can use the PC speaker (or no sound).
And so on. It is quite a package.
How is it to use though?Remember- when you are emulating one computer on another type of computer, some of the hardware will be very different, and the emulation really cannot perfectly emulate different hardware, no matter how hard it tries!
Do remember that many TI modules required a joystick or were easier with a joystick! Keyboard input may not be an option although the emulation has departed from standard by using CTRL plus Fn keys for joystick alternative. It ain't easy to use though!
I did find some difficulty with keyboard response- the TI used a matrix keyboard connected to the motherboard with a ribbon cable, and had no keyboard buffer. The PC on the other hand has a serial keyboard and a keyboard buffer. MOST programs will run OK, and you can select keyboard delay period for fine tuning. Where CALL KEY is used for keyboard input there does seem to be some loss of sensitivity / slowing down of response, this may be tunable out. Not a major problem.
On the TI99/4a the keyboard was split in two as standard for scanning which meant you could hold two pinball flippers up at once, or move AND fire using the keyboard. Mike Wright has produced a special keyboard file for use in PC99 to allow you to raise both flippers in Pinball 2, using key Q to raise both at the same time.
Using PC99 on Micro Pinball 2, before staying up one flipper kicked - didn't do this on a TI. Micropinball 2 is a very tightly written program! I found I could keep the flippers from kicking (on my 266Mhz PC) by setting emulator speed to 15% (spp 15) and keyboard delay from a normal 2200 to a staggering 57000 (57 thousand). [ update- on version 6 I use normal speed settings and k 30000 ]. This kept the flipper up a little longer than on the TI but stopped the flipper kicking and gave a playable game.
For possibly similar reasons, using the default settings of PC99, the Basic program Wonkapillar became suicidal as the bomb was always set at 0 seconds.
If you find that holding a key down appears to produce a double press, try making the keyboard delay longer - possibly very much longer. And be ready to reduce the keyboard delay for any program that seems to be unresponsive (after setting emulator speed up to 100%) but remember many TI programs WERE slow and unresponsive!
Joystick use was a joy. No problems. I did notice that some large sprites flickered to the extent of being transparent. It may be possible to fine tune this out, but it didn't worry me nor affect the programs.
The very well written Extended Basic game from Tony McGovern, Tex-Bounce, with the fastest sprite detection around, would not function in Myarc Extended Basic on the TI, and in PC99 you do need to slow the sprites down (Amend sprite variable from 2200 to 3000 on my system) - it then works perfectly.
And this demonstrates an advantage of PC99 over the TI: On TI consoles the sprite speeds were NOT exactly the same from system to system and this could affect some programs - especially Extended Basic programs from the USA run on a UK machine. PC99 allows fine tuning of sprite speed.
Amending system variables is very easy in PC99, and if you really want you can have much of your PC screen taken up with debug information. You can even single step any program you wish. A bit beyond me all that.
A really nice touch is the ability to transfer files and disks from the other TI emulation program, TI Emulate /v9t9 (which is now unsupported).
Running under NT - which has a command prompt instead of a DOS prompt - trying to use Soundblaster brought on the dreaded NT blue screen of death. I cured this by turning sound off, but my NT set up struggled to find a video mode it was happy with, and there was no joystick support... then again NT is a techie operating system, if you have it you may be able to get most of this to function. To be fair, PC99 is not offered as suitable for NT4.
I have been happily making up PC99 disks - a PC99 disk is a file, for example you could use the form DISKNAME.DSK. There are utilities galore including a program DSKDIR so that you can view the file list in a .DSK file whilst in DOS.
You can have a TI disk anywhere a dos file can be- on a CD Rom or a ZIP drive for example. A 180k TI double sided disk becomes a 260k PC file, because of course a 180k disk has more data than 180k- there are all the track and sector indicators as well as CRC values. On the PC a blank 2M disk formats as 1.44M in a similar way.A huge number of utilities are supplied in the PC99 package to help you to get the most out of it, including the ability to very rapidly find out which of your emulated disk files contains the TI file "mygame"; to list the programs in a TI disk file whilst still in dos; and much much more.
Three sound channels are fine, the fourth, the noise channel, on my machine needs tweaking, and although data is supplied, such technicalities are well beyond me! On the TI the fourth channel, as well as supplying white and pink noise, was also driven by the values sent to the third channel to supply musical notes below 110Hz.
You can of course adjust the speed of the program. A well written TI machine code program (rare I know) may need you to run at 10% of speed. As you may know the TI ran some Basic programs very slowly, and it is useful for these to go to 100% speed- although a screen that takes three minutes to set up on the TI will still seem slow compared to any PC program.
Speed can be altered easily at any time.
The basic package includes manuals in various formats (acrobat, wordperfect 5.15 and .asc). Just as most TI modules can be purchased when you buy the PC99 package, you can also buy the manuals in .pdf format. NB: ALL COPYRIGHT MATERIAL is used under license and in some cases with payment. That (and the hard work involved!) is why this package is not free.
When I bought my first TI99/4 in 1980, at 1998 prices it cost me three and a half thousand pounds. You can get a really top range PC for that money these days - PC99 is a small fraction of that original price, and has some improvements (including some debugs of TI's original code!).
I do not hesitate to recommend purchase of this program by anyone with an interest in the TI99/4a.