From: spi@nic.cerf.net (Shawn P. Legrand)
Newsgroups: comp.lang.modula2
Subject: Oberon DOS386
Date: 23 Jul 92 23:34:50 GMT
Organization: CERFnet

Just thought I would pass on this mail I sent concerning my experiences 

with the Oberon DOS386 system so far.

to: Andreas Disteli
From: Shawn P. Legrand
Re: Oberon DOS386 System

Andreas,
	I believe you are the one responsible for the port of the Oberon
System to the MS-DOS platform. If I am mistaken please forward this
message on for me to the appropriate person.
	I am very pleased by the port to MS-DOS. I have followed the
Oberon Project with great anticipation for a taste of it on the IBM
platforms. I have a couple of questions and a couple of suggestions.
	I noticed that the Oberon Guide and the Oberon-2 manuals are
missing from the Text files distributed with the DOS386 version. I
pulled these Text files from the SPARC version and used
System.CopyFromDOS to bring them over to the Oberon System. It worked
great and I was able to view the Guide and reports. I think those manuals
should be distributed with the DOS386 version. The Guide is a necessity if
you have not seen Oberon before. The Oberon-2 reports are informative on the
recent direction of the Oberon Project.
	I found that the Backup module would not work with a diskette
unless it was formatted by Backup.Format. Before I figured that out I
was receiving TRAP 54. I found that TRAP 52 was when a diskette was not
in the drive but I never quite figured out what exactly TRAP 54 was
trying to tell me. Is there any documentation on Backup and what the
different TRAP numbers mean? I also don't seem to be able to get the
Miscellaneous.ConverTo(From)DOS modules to work. Is there a little more
information on those procedures than just the README file?
	Also I found that the ESC key on a PC = Ceres Escape, the F1
key = Ceres Setup. However, I couldn't figure out what the equivalent
keys would be for the PF1, PF2, and PF3 functions. I'll grant you that
those functions are somewhat obsolete on PC workstations (I can perform
those functions with built in ROM code) but I was just curious.
        Just to let you know - I tested the port on 386 machines and on
486 machines I have at work. All worked well except for the
System.SetUser hangs up the system. This function doesn't make a lot of
sense on a single-user PC but I thought you should know I couldn't get
it to work properly.
	I wrote a small Oberon program that used REALs to see what would
happen on a 386 without a co-processor. The program compiled but always
returned a 0 for the REAL variables. I ran the same program on a 486 and
all worked properly. I know this is a defined restriction but I wanted
to let you know that the REALs do also work well on a 486 (since
co-processor built in), in case no one had tested it.
	I was wondering if there were any plans to remove the 386
co-processor restriction from REALs? It would be nice if Oberon would
use 387 emulation. 
	I was wondering if the source code for the MSDOS port is
available. I would like to study it and perhaps add to it with your
permission (such as 387 FP emulation). 
	I am very excited about the Oberon Project and if you need
people to beta test code or write module extensions I would be happy to
help. I am currently writing some modules for Oberon-M to deal with
low-level graphics on MS-DOS. I will be getting my Oberon books from
Addison Wesley sometime next week. I will really be digging into the
system at that time.
	Thanks for a great job.

************************************************************************
* Shawn P. Legrand         *                                           *
* Sr. Systems Programmer   *                                           *
* (619)-546-2457           *    This space intentionally left blank.   *
* spi@cerf.net             *                                           *
************************************************************************

cc: Modula-2 USENET newsgroup.
	
Newsgroups: comp.lang.modula2