[Trlog] TRlog/Linux notes

R. Torsten Clay tclay at netdoor.com
Sat Nov 8 13:18:36 EST 2003


For your amusement, here is a screenshot (large file):

http://www2.netdoor.com/~tclay/snapshot-trlinux.jpg


Torsten

------------------------------------------------------

DOSemu/Linux/TRlog Notes	11/08/03

Torsten Clay N4OGW

------------------------------------------------------

1) Installing DOSemu

This may already be installed on your system. I installed it from
source, using Dosemu version 1.1.99.1 (latest stable release)

a) Get the following from www.dosemu.org:

    dosemu-1.1.99.1.tgz
    dosemu-freedos-b9-bin.tgz

    put them in a scratch directory

b) unpack source:

   tar xzvof dosemu-1.1.99.1.tgz

c) rename the Freedos file, and put it in the source directory:
   
   mv dosemu-freedos-b9-bin.tgz dosemu-1.1.99.1/dosemu-freedos-bin.tgz 

d) configure and make:

   cd dosemu-1.1.99.1
   ./configure
   make

e) as root, 

   make install


2) Configuring DOSemu

   You need to make some changes to /etc/dosemu/dosemu.conf in order to 
   get port access. Here is what I changed in that file. In the default file,
   the following were either not present, or were commented out (# character).

   a) I turned on the Pentium cycle counter option. Maybe not needed, but I
   figured that since timing is critical to TRlog, this might help.

    $_rdtsc = (on)


   b) You can set the amount of CPU DOSemu gets. A setting of 0 is the maximum,
   1 is the default. I tried both, and they seemed to work equally well on
   my system.
   
    $_hogthreshold = (0)

   c) Set up serial ports: 

    $_com1 = "/dev/ttyS0"
    $_com2 = "/dev/ttyS1"

   d) Set up printer port. This is for the 1st printer port:

    $_ports = " device /dev/lp0 fast range 0x378 0x37a"


   e) Set up IRQ passing. IRQ 7 is for the printer port:

    $_irqpassing = "7"

3) Running TR

   Start a DOSemu session (under X) with xdosemu. I had more success running
   under X than at the console. On the console, the screen size came up
   wrong. You will probably want to run xdosemu as root (see below).

   The first time dosemu runs, it asks you where the DOS image is. If you
   downloaded the freedos file correctly, just hit enter. Then you will
   get a C: prompt.

   This is how dosemu stores its files: it makes a directory ~/dosemu, which
   contains all of the "C:" drive. There is probably a way to access other
   files on the system, I haven't figured that out yet. Anyway, the
   directory ~/dosemu/freedos corresponds to C:. From linux you can copy 
   files into this directory. 

   With the ~/dosemu/freedos directory, I made a directory for TR, copied
   the zip file there, and unzipped in with unzip. 

   Now in the dosemu window, cd tr, and run it!

4) Ports and root:

   There are two ways I tried running dosemu: either with 'sudo', or as
   root.


   a) sudo: This is a better method (you don't have to run fully as root).
   Using visudo, add a line like this:

   tclay ALL=(root) NOPASSWD: /usr/local/bin/dosemu.bin

   Then copy the dosemu.users.example file found in /etc/dosemu to
   /etc/dosemu/dosemu.users, and add the line:

   tclay c_all

   Now when you run xdosemu, it drops the root privledges after starting.
   I was able to access the serial ports this way, but was not able to
   get access to the parallel port. You may need to add yourself to the
   right group to get serial access. I'm not sure how to get parallel
   port access this way.

   
   b) running as root. Do 'su' before running xdosemu. More potential	
   for danger, but so far this is the only way I've been able to get
   the parallel port interface to work.


5) Further notes. 

   Control keys: your windowmanager may intercept some of the Alt+...
   combinations, preventing them from getting to TR. You will have to
   tell the window manager to use some other combination. The way to do
   this is different, but there should be a config setting for this
   for most window managers.

   The time in DOSemu comes up as local time, assuming the usual linux
   setup where your computer hardware clock is in UTC, and you have the
   timezone set. To get the DOSemu clock in UTC, just use the DOS date
   and time commands within the dosemu window.


More information about the Trlog mailing list