[net.micro.atari16] TDI modula and hard disks

bammi@cwruecmp.UUCP (Jwahar R. Bammi) (03/03/86)

	Have you noticed that the Modula compiler 'modula.prg' will
only run if it is put in the root directory of a drive 'd:'. It
refuses to even startup if put in any sub-directory. The linker
and editor work OK in subdirectories though. I guess it is due to
the overlay directory, which also has to be in the root directory.
On my hard disk this does not fit the usual \bin \src etc scheme of
things. It is obvious that the designers never considered hierarchical
file systems. The file dialogue are driving me crazy.

	Has anyone else got the error '- compiler error 2', while
compiling a program. This is followed shortly with a dialog box saying
'Run Time error #9'. In the manual run time error #9 says 'Program
Halt'. Any hints??

	
More questions: any answers will be much appreciated.

Suppose we have
TYPE
	word = ARRAY [1..15] of CHAR;
VAR
	s1: word;
	s2: ARRAY[1..10] of word;
....
and we write
	IF s1 = s2[i] THEN
		     ^ operation with incompatible type (140)
	The Tdi compiler gives the above error, but the Powell m2
compiler does not object. Who is right? (reading Wirths or Thalmann's
book didn't give me any answer).

Also
TYPE
	word= ARRAY [1..20] OF CHAR;

..
PROCEDURE init(i:INTEGER; w:word);
VAR
    x:word;
...

x := w;
..

END init;

	init(1,'Something          '); (* 'twenty chars in string' *)
               ^ type incompatibility (128)
gives the above error.

if i change the type declaration to
TYPE
    word = ARRAY [0..19] OF CHAR;

The program compiles. Powells compiler of the Vax does not object to
either Type declaration. Again who is right?

	I better stop before i break my '?' key. Any answers will be
much appreciated.
-- 
					Jwahar R. Bammi
			       Usenet:  .....!decvax!cwruecmp!bammi
			        CSnet:  bammi@case
				 Arpa:  bammi%case@csnet-relay
			   CompuServe:  71515,155

rling@uw-june (Robert Ling) (03/05/86)

The compiler 'modula.prg' DOES run even if it is in a subdirectory (at least
on my system).  I have the developer's hard disk.

One thing I've found out is that the compiler performs some checksum on
the overlay files as they are loaded and it will give an error if the
overlay files have been modified.  The error number I got was 7 (?).
Why would I want to modify the overlay files?  Well in 'm2cpass1' are
the keyword symbol tables.  I modified it so that I could use lower case
keywords.

If anybody knows of or finds a way of disabling the case specific 'feature'
of TDI's Modula-2 I would appreciate the help/info.

- Robert Ling.