Go to other TI pages:
TI Book front page |
TI Articles
| PC99 Review | Programs for emulators (PC99/ v9t9, Mess)
This article relates to pc99dos which is distributed from 1st November 2016 on dvd or usb stick with a Windows version pc99w and the immense TI encyclopedia The Cyc.
Dosemu comes between you using Linux and Freedos and allows you to run real dos programs without having to partition your hard disk or mess with boot sectors. In many cases dosemu will also deal with such things as keyboard layout and possibly even sound (not its strong point). It makes things a lot easier. The dos kernel is just a file that dosemu uses.
If not already installed, install DOSEMU 1.4.0.1 and run xdosemu (under X11) or dosemu (if at Linux console). dosemu is included in almost all distributions of Linux and may already be installed.
Running xdosemu (try it with -h option) will set in place a file structure which may vary in different Linux distributions but the use of the home directory will probably be identical in all. In most use (but see below re sound) only the home directory is of importance.
Using an X11 server the command to use is xdosemu
In my system running XDOSEMU creates:
in my home directory: .dosemu/
containing directories:
drive_c which contains:
directory /tmp
and files autoexec.bat
config.sys
(if you wanted to use a full freedos 1.1, add the files here)
run which contains dosemu-midi
drives which contains:
c which links to drive_c above
d which links to /usr/share/dosemu/drive_z
(Note - using letters in any other order will not change use, in dos first will be c anyway)
================================================
[In my system, no great reason, I have linked first to /etc/dosemu/drives/d and then the link is onward to /usr/share/dosemu/drive_z] Please ignore this sentence...
================================================
In /usr/share/dosemu/drive_z can be found FreeDOS in several directories and files kernel.sys and command.com. The files autoexec.bat and config.sys are templates copied to your home directory and are not used. The files autoemu.bat and config.emu are provided in case you with to use some other dos than freedos.
================================================
Drive D for dosemu - not really relevant for PC99 but this reflects our install:
By default drive d is in your home directory but I have mapped it to the location I prefer by means of an entry in autoexec.bat. First REM out the old lines referring to drive D:
rem unix -s DOSDRIVE_D rem if "%DOSDRIVE_D%" == "" goto nodrived rem lredir del d: > nul rem lredir d: linux\fs%DOSDRIVE_D% rem :nodrived then insert: lredir del d: > nul lredir d: linux\fs/newlocationeg where newlocation would be eg /windows/e/dosdata
Our PC99 is in /win/x which I have allocated a DOS drive as follows in the config.sys in my home directory:
devicehigh=d:\dosemu\emufs.sys /win/x
I launch PC99 using George's menu.bat system (available from us free [shareware])
To run pc99 I have created a couple of batch files located in E:\PC99:
99menu.bat is the same as supplied with PC99 Menu.
dosemu.bat is:
@ECHO OFF
E:
CD \PC99
CALL 99MENU.BAT
EXITEMU
And I run this with xdosemu -E "E:\PC99\dosemu.bat" (including the double quotes).
Note the path to the batch file is a DOS path, with backslashes, the -E is passing this to dosemu as a dos command.
=================================================
Speed
Trouble is when PC99 was written 90MHz CPUs were the standard and now we are running at least thirty times faster. Running in an emulated dos slows some of it down. Large screen changes eg complex animated graphics (lots of sprites) can cause the display to become a little jerky and I haven't found an answer to that. Many simpler modules (Mancala, Othello) can run perfectly and most BASIC programs run with little problem. One thing to remember- on an authentic TI, program response in BASIC really could be very slow!
For most things, I find setting speeds sb1 and sb2 to 5 will help, increasing k (keyboard) to 3000 and setting i (interrupts) to 1000. If the program uses sprites, adjust i to adjust sprite over run or under run. But each program can be fine tuned to suit.
Change the sound setting line to read "$_sound = (2)". Set PC99's sound configuration to Soundblaster Compatible.
On an older PC with a genune SB64 card we were unable to obtain sound with dosemu.
We found incompatabilities between sound with dosemu and the Pulseaudio system, causing dosemu to crash when sound was enabled. You may need to set dosemu sound off if you have pulseaudio. It may be worth trying to use dosemu sound with pulseaudio not running. PC99 can be set to use one sound channel and the PC "speaker" (still retained in most PCs for warning beeps).
The program will read the PC99.MOD file to make up a menu of modules available, for easy selection with mouse or keyboard.
Written in Quickbasic to run on any platform PC99 is happy with. Shareware (US$8 suggested). Tested on PC99 VN 5 and Vn 6. Download PC99 Menu program - 95k self extracting dos exe format.
The EXE file includes documentation but you can read it before you download the program:
Read the documentation first or View a screen grab of the program in action (53k).