Pocket TI-99/4A Computer
Updated 2016111

by Mickey Cendrowski, 20080803
MickeyC@consolidated.net

Note: This article may be freely shared.

Method 1: Using Pocket DOS

What do you get when you cross PC99 with a Jornada 728 pocket handheld computer?

Give up.

Well, a Pocket TI-99/4A computer of course!

Please refer to the following screen shots for proof that this actually does work!

Now, before we all start doing a "happy dance" right now, there is one small downside to this marriage, that hopefully someone will be able to help me solve -- and that is speed.

Unfortunately, right now, except for a few diehard TI'ers who are forever in love with the Scott Adams adventure games, this system will be too slow for most to enjoy, but hopefully someone out there can help me further this development.

Requirements

Hopefully CaDD will offer a more in-depth discussion on what all is taking place in this setup, but I will try my best to explain things in layman's terms.

Setup

First, start out with a Jornada 728 Handheld PC Computer which runs Microsoft's PC/Handheld 2000 version 3.

Beginning with the Jornada 728 computer, do a hard reset, to give you the most working memory available, and insert your 512 Mb compact Flash card into the compact Flash port on the bottom of the Jornada 728.

Follow the instruction manual for the Jornada 728 in setting up your Jornada 728 computer and for connecting it to your PC using Microsoft's ActiveSync program.

Using your PC, copy your PC99 DOS program on to the Storage Card of your Jornada 728. CaDD delivers the program in \cadd\pc99\pc99a.exe.

Note: Using ActiveSync, the default is to always move a program on to the MAIN MEMORY of the Jornada, so always say NO to the default setup, then chose the STORAGE CARD (i.e. the slot with the Compact Flash storage).

I prefer to just copy and paste this file, just like you would do on your PC, copying one file and placing it in another file folder.

Download PocketDOS (Revision 1.12.2), which can be found on the Internet, to your PC, then execute the program on your PC.

Make sure that you highlight for installation the following programs:

Under PocketDOS Virtual PC Environment:
Virtual PC Environment Program Files (required)
Virtual PC Environment Help Files

Under DOS Operating Systems:
FreeDOS 1.00 1.44Mb Disk Image (Free Full Version)
FreeDOS 1.00 360Kb Disk Image (Free Bootable Version)

On your PC you will get the following message:

Install "PocketDOS Virtual PC Environment" and other pending installations using the default application install directory?

Select the "No" button.

At the "Select Destination Media" window press the down arrow and choose STORAGE CARD, then press the "OK" button.

A new window should now appear on your PC which states:

"Application Downloading Complete".

"Please check your mobile screen to see if additional steps are necessary to complete the installation."

On the Jornada 728:
Tap OK -- then wait.
Tap OK -- then wait again.
Tap OK -- then wait again.
Tap OK -- then wait again.

Now go back to your PC and press the OK button.

Close the ReadMe screen on the PC when you are finished reading it.

Please note that PocketDOS will only make the Jornada 728 handheld computer emulate a 286 computer, thus you will need to also perform the following instructions to get PocketDOS to emulate a 486 computer.

Download P_DOS_BOCHS_CPU (Version 2.1.1.0), which can be found on the Internet, to your PC, then click on that program's folders until you come to the folder labeled ARM.

Open the ARM folder.

Copy the file PDOS_BOCHS_CPU.dll and paste that file on to the Jornada's STORAGE CARD, in the same folder as your PocketDOS executable program.

Now comes the fun part, getting all of these pieces to talk to each other.

On the Jornada 728 double tap the PocketDOS icon on the main start-up screen.

Tap CLOSE then wait.

FreeDOS will run, which will then run PocketDOS.

Wait until you get to the C:\> prompt.

You should now see a menu bar at the bottom of your screen and a very small Windows icon in the lower left-hand corner.

Tap the Windows icon.

Choose Settings.

Choose System.

Select the CPU/FPU tab.

Make sure that PDOS_BOCHS_CPU.dll is highlighted in the menu bar, if it is not use the down arrow to select it.

DO NOT TYPE THIS LINE IN!

Tap OK.

Again tap the Windows icon.

Choose Settings.

Choose Memory.

Set the following:

Conventional Memory - 640 Kb
Upper Memory - 176 Kb
Extended Memory - 4 Mb
Expanded Memory - 256 Kb

Tap OK.

At the C:\>prompt type
cd \pc99

Next type pc99a to run the accelerated version of PC99 DOS.

Then wait ... It will work.

Comments

Please note -- this test was done by me in order to specifically play the Scott Adams text adventure games, while on the run. It is slow, but it is playable, 100 percent.

This will not let you play Parsec and the like, on a Jornada 728, unless someone discovers a way to speed things up.

Like I said, it does work, and hopefully someone else can help to speed things up for all of us.

So what all is happening here:

First, the Jornada 728, which is running Microsoft's Handheld PC 2000 version 3 operating system, has to run FreeDOS, which then in turn has to run PocketDOS, which then in turn needs to run the Bochs 486 add-on, all in order for DOS to think it is now running on a 486 PC and not a 286 PC. This in turn runs PC99 DOS, which is emulating a TI-99/4A computer.

Special thanks to Marty Prather, an eBay seller and new-found friend, who went above and beyond the call of duty, by not only selling me the Jornada parts that I needed in order to do this testing, but who also spent numerous hours with me, via emails, in learning more about the Jornada 728 computer and what all it could do and what all it could not do.

If you are looking to buy a Jornada 728, in order to have one of these Pocket TI-99/4A computers, then I hope you will give Marty Prather your business. Marty can be reached via email at martin@prather.net. (Be sure and tell him that Mickey sent you for a 10% discount).

Also, my sincerest appreciation to CaDD for allowing me to pick their brains over and over and over again during this entire ordeal and for their unending patience in helping me to get this all up and running.

CaDD and I agreed, from the start, that theoretically this idea should work, but in reality we both knew it was going to be a long shot.

Thanks, CaDD, for not giving up on me and for proving that this could be done!

Now, someone out there, help me to get this to run faster!

Screen shots

[Jornada main screen]

[TI color bar screen]

[TI master selection list]

[Adventure title screen]

[Adventure start screen]

[Pirate adventure start screen]

[Adventure night screen]

[Adventure red screen]

[Adventure gold/yellow screen]

Method 2: Using pDOSBox

The saga continues. 20100210

In my first attempt at getting PocketDOS to run PC99 DOS on the Jornada 728 handheld computer it took about 13 minutes to get to the TI title screen after executing pc99a. After tweaking all that I could I was able to get that boot time down to 5 minutes, 12 seconds -- a great improvement -- but still slow none-the-less.

Since no one came to my aid in trying to get PC99 DOS to run faster on the Jornada 728 handheld computer using PocketDOS, I decided to continue my research efforts by looking for other alternatives that might also work.

That said, I am now happy to report that I am now down to a boot time of 3 minutes, 29 seconds, using another DOS emulator on the Jornada 728 called pDOSBox 0.63, which is a PocketPC port of the infamous DOSBox DOS emulator.

Requirements

Setup

First, start out with a Jornada 728 Handheld PC Computer which runs Microsoft's PC/Handheld 2000 version 3.

Beginning with the Jornada 728 computer, do a hard reset, to give you the most working memory available, and insert your 512 Mb CompactFlash card into the CompactFlash port on the bottom of the Jornada 728.

Follow the instruction manual for the Jornada 728 in setting up your Jornada 728 computer and for connecting it to your PC using Microsoft's ActiveSync program.

Create a new directory on your PC called PC992. Copy all of your PC99 files into this new directory, making sure that all files are copied directly into your PC992 folder and that you have NO SUBFOLDERS. This step is two-fold. First -- one should always work with a copy of any program when any editing must be done to the original program and Second -- pDOSBox 0.63 gave me errors when I had subfolders, but ran when I had everything in one folder.

Next, use notepad to edit your pc99.cfg file, deleting all references to those subfolders in your pathnames. For example, edit:

G1Filename=\PC99\MODULES\CON4AG1.GRM

to

G1Filename=\CON4AG1.GRM

Then save your changes back to pc99.cfg.

Using your PC, copy your PC992 folder on to the Storage Card of your Jornada 728.

Note: Using ActiveSync, the default is to always move a program on to the MAIN MEMORY of the Jornada. So always say NO to the default setup, then chose the STORAGE CARD (i.e. the slot with the CompactFlash storage).

I prefer to just copy and paste this file, just like you would do on your PC, copying one file and placing it in another file folder.

Download pDOSBox 0.63 to your PC, then unzip the program on your PC. (Link shown above in the Requirements section.)

After unzipping pDOSBox 0.63 you will see two file folders, one called pDOSBox0.63-1 and one called PocketCon.

Begin by following the readme file instructions in PocketCon. These instructions include copying CMD.exe to the Windows folder on your Jornada, then copying the CAB file, pocketconsole.arm.cab to your Storage Card and double-tapping on it to run the install. Next, use notepad to make the following changes to the dosbox.conf file, found in the pDOSBox0.63-p1 folder:

fullscreen=false (this corrects a typo by Wall)
cycles=2000
#mount c "\Storage Card/pDOSBox0.63-p1\DosPrograms"
mount c "\Storage Card\pc992"

After saving your changes to dosbox.conf, continue the setup process by following the readme file instructions in pDOSBox0.63-p1.

Note: Using ActiveSync, the default is to always move a program on to the MAIN MEMORY of the Jornada, so always say NO to the default setup, then chose the STORAGE CARD (i.e. the slot with the CompactFlash storage).

Download RedGear to your PC, then follow RedGear's installation instructions. (Link shown above in the Requirements section.)

Note: Using ActiveSync, the default is to always move a program on to the MAIN MEMORY of the Jornada. For best performance for RedGear choose the default setup to install RedGear to the MAIN MEMORY of your Jornada.

Now comes the fun part, running pDOSBox0.63, then PC99 on your Jornada.

If all went well you should find a folder on your Storage Card on your Jornada called pDOSBox0.63-p1.

Double tap to open that folder.

Double tap the filename dosbox.exe.

At the Z:\> prompt type c:

(Note: Use the R-Shift to get a colon. The L-Shift results in a semicolon.)

At the C:\> prompt type pc99l

Once the program runs, you can use RedGear to manipulate the screen by tapping the red icon at the top so that the full TI screen can be seen on your Jornada 728.

Comments

Please note -- this test was done by me in order to specifically play the Scott Adams text adventure games, while on the run. This method is still slow, but it is faster than using PocketDOS, and it is still playable, 100 percent.

This will still not let you play Parsec and the like, on a Jornada 728, unless someone discovers a way to speed things up.

Like I said, it does work, and hopefully someone else can help to speed things up for all of us.

Special thanks to Marty Prather, an eBay seller and new-found friend, who went above and beyond the call of duty, by not only selling me the Jornada parts that I needed in order to do this testing, but who also spent numerous hours with me, via emails, in learning more about the Jornada 728 computer and what all it could do and what all it could not do.

If you are looking to buy a Jornada 728, in order to have one of these Pocket TI-99/4A computers, then I hope you will give Marty Prather your business. Marty can be reached via email at martin@prather.net. (Be sure and tell him that Mickey sent you for a 10% discount).

Also, my sincerest appreciation to CaDD for allowing me to pick their brains over and over and over again during this entire ordeal and for their unending patience in helping me to get this all up and running. CaDD and I agreed, from the start, that theoretically this idea should work, but in reality we both knew it was going to be a long shot.

Thanks, CaDD, for not giving up on me and for proving that this could be done! Now, someone out there, help me to get this to run faster!

Screen shots

[pDOSBox 0.63]

CaDD tech notes

PC99 DOS uses the Watcom DOS/4GW extender bundled with the Watcom 11.0c C compiler. Therefore it must be able to set the processor into protected mode. This is only possible on an Intel 80386 or better. PC99 will not run with an emulated 80286. The PC needs to have a minimum of 2 Mb of memory at 0x10000 with 4 Mb the preferred minimum. However, emulating more DOS extended memory than this is of no benefit.

PC99 uses Ted Gruber's FastGraph for all video functions. When setting the display resolution the function fg_setmode is called. This is passed one of three values depending on the current display requirements. 3 for text mode, 19 for 320 x 200 x 16, and 18 for 640 x 480 x 16. The latter is used by the mini-screen, and sdm 4. You can test the resolution on your emulated device with a utility from CaDD called resol.exe. This calls FastGraph, just like PC99, but allows you to pass values to set the video mode. If resol.exe works on your device, then it is almost certain PC99 will display correctly too. If you want this utility and are a registered PC99 owner, send an email to CaDD and it will be emailed to you.

For best performance of PC99 turn off all unnecessary peripherals. These include the RS232, PC99 Clock, p-Code, and Speech. Using cfg set these to type "none". Also disable the joysticks.

If your application needs 32K memory then use the TI 32K card. PC99 reserves this memory by declaring an array for it at compile time. If PC99 runs, then the 32K memory will be available. If you use the Myarc memory, PC99 calls malloc to request this memory from the OS. It is possible this call may fail if insufficient DOS memory is available.

It is possible to affect the speed of PC99 by playing with the VDP interrupt count. PC99 assumes that each TI instruction takes the same time to execute. On average, this is about 2200 instructions/second. Of course, many MOVB @MEM1,@MEM2 will take much longer than MOV R1,R2, but in practice this is rare. At the time PC99 was written there was insufficient memory to add the memory timing logic. This has been done in PC99W.

When a VDP interrupt occurs, the TI sets a flag and will then execute its interrupt routine at >0900 in the console ROM. This services the keyboard and other peripherals. A full description of the routine can be found in Heiner Martin's Intern, an updated version of which is available with CaDD PC99 Suite.

If you lower the interrupt count, the display will be faster, but the keyboard will be slower, and vice versa. Changing this value for text-based games, such as Adventure, or for TI-Writer, may help performance on a slow machine.

Back to: CaDD Electronics Home Page