Using DOS Linker with TopSpeed Modula-2 
Author Message
 Using DOS Linker with TopSpeed Modula-2

Hello,

   Does anyone know if TopSpeed object files can be linked using the
DOS linker?  When I try it, I get loads of unresolved externals.  For
example, if I have a simple program which imports from IO to send a few
lines of text to the screen, the imported IO procedures are left
unresolved.  If I add IO to the link list (LINK program+IO) then I just
get more unresolved externals from that module?  Does anyone have any
suggestions?

-Luke



Fri, 06 May 1994 01:57:10 GMT  
 Using DOS Linker with TopSpeed Modula-2

  ("Luke M. Labenski") writes:

Quote:
> DOS linker?  When I try it, I get loads of unresolved externals.  For
> example, if I have a simple program which imports from IO to send a few
> lines of text to the screen, the imported IO procedures are left
> unresolved.  If I add IO to the link list (LINK program+IO) then I just
> get more unresolved externals from that module?  Does anyone have any

You need a list of all the modules that are being used (including the run-time
libraries) in order to resolve all external symbols.  I would think the easiest
way to get such a list, would be to use the "Analyze" utility JPI supplies with
the system.  That will give you a (recursive) list of everything that is
imported.  Just grab all those object files together for the link.  You might
have to add SYSTEM.OBJ and RTL.OBJ yourself.  Also keep in mind that you have
to set an environment option so that JPI writes "standard" INTeL .OBJ files
(I think its the standard libraries option).  Also remember to link with case
sensitive symbols.

Hope that about covers it.

Andries
*---------------*--------------------------------------------------*

*        /|  \  *     University of Stellenbosch, South Africa     *
*      /__|__/  *--------------------------------------------------*
*    /    |     *                                                  *
*  /   \__|     * I may be temporarily down, but I'm never out     *
*               *                                           -- Me  *
*---------------*--------------------------------------------------*



Fri, 06 May 1994 19:41:11 GMT  
 Using DOS Linker with TopSpeed Modula-2
(* Hallo all,

1) Could anyone explain me why I'm getting the following runtime error ?
   (I've included the source code in this message)

   Fatal error: Return from processFatal error: Return from process

   I know the program below could be improved but this is just a test
   on multi tasking in JPI Modula2.

   I'm running the program on a Compaq LTE 80C86 under DOS 5.0 .
   Also tried on a OPUS 386-20 under DOS 5.0 .
   JPI Modula2 Compiler version 1.17 .

   Can I use Concurent processes in a WHILE loop ?

2) I've got another question. I want to write a program in Modula2 or C
   that records all the keys pressed in a file while executing them at the
   same time, ie if I type AUTOEXEC at the DOS prompt the string AUTOEXEC
   will be appended to file MYFILE.TXT and AUTOEXEC.BAT will run. I was told
   I have to trap interrupt 15. My question is : How do you use interrupts
   in Modula2 ?  How do I trap interupts ?  The only assembly I know is
   m6809 assembly language. I'm teaching myself 8088 assembly.

   No problem if it has to be a TSR.

   You can either Email me or post to the net as this is an interesting topic
   of discussion.  I'll summarise and send to the group.

   Thanks VERY much in advance,

--
     Sergio Terenas
     Kingston Polytechnic
     London - England


*)

MODULE MULTI;

FROM InOut IMPORT WriteString, WriteLn;
FROM Window IMPORT GotoXY, CursorOff;
FROM Process IMPORT StartScheduler, StopScheduler, Delay, StartProcess;

PROCEDURE Wait;                    (* Loop to waste Time *)
VAR Counter : CARDINAL;

BEGIN
FOR Counter := 1 TO 30000 DO
END (*FOR*);
END Wait;

PROCEDURE P1;                      (* Print char at same location and wait *)
BEGIN                              (* This is Process Number 1 *)
    GotoXY(10,10);
    WriteString('/');
    Wait;
    GotoXY(10,10);
    WriteString('-');
    Wait;
    GotoXY(10,10);
    WriteString('\');
    Wait;
    GotoXY(10,10);
    WriteString('|');
    Wait;
END P1;

PROCEDURE P2;                      (* Print char at same location and wait *)

BEGIN                              (* This is Process Number 2 *)
    GotoXY(11,10);
    WriteString('/');
    Wait;
    GotoXY(11,10);
    WriteString('-');
    Wait;
    GotoXY(11,10);
    WriteString('\');
    Wait;
    GotoXY(11,10);
    WriteString('|');
    Wait;
END P2;

(* Main Program *)
BEGIN
    CursorOff;
    StartScheduler;

    WHILE (TRUE) DO

       StartProcess(P1,2000,1);
       StartProcess(P2,2000,1);
       Delay(100);

    END (*DO*);

    StopScheduler;                     (* Never reached *)

END MULTI.



Sat, 07 May 1994 02:44:46 GMT  
 Using DOS Linker with TopSpeed Modula-2

|> (* Hallo all,
|>
|> 1) Could anyone explain me why I'm getting the following runtime error ?
|>    (I've included the source code in this message)
|>
|>    Fatal error: Return from processFatal error: Return from process
|>

Processes dont return, they either live or die. I you analyze
your code you will see that the processes P1 and P2 eventually
reach the END P1; and so execute an implicit RETURN.

If you want your processes to live throughout the execution of your
main, then surround the code with a LOOP ... END; If you want the
process to die then call an explicit StopProcess(); (I think thats
the name - see your docs) before the final END P1;

|>   Can I use Concurent processes in a WHILE loop ?

Why not?

|>
|>
|> 2) I've got another question. I want to write a program in Modula2 or C
|>    that records all the keys pressed in a file while executing them at the
|>    same time, ie if I type AUTOEXEC at the DOS prompt the string AUTOEXEC
|>    will be appended to file MYFILE.TXT and AUTOEXEC.BAT will run.

There are programs that do that (viz. echo standard input to some
file before letting the opsys have it). Look for something called
tee and Y (something that fans out / in?).

 I was told
|>    I have to trap interrupt 15. My question is : How do you use interrupts
|>    in Modula2 ?  How do I trap interupts ?

Go buy yourself a book, or see your local librarian.

|>    Thanks VERY much in advance,

Youre welcome.

torbjorn.



Sun, 08 May 1994 01:50:28 GMT  
 Using DOS Linker with TopSpeed Modula-2

Quote:


>|> (* Hallo all,
>|>
>|> 1) Could anyone explain me why I'm getting the following runtime error ?
>|>    (I've included the source code in this message)
>|>
>|>    Fatal error: Return from processFatal error: Return from process
>|>

>Processes dont return, they either live or die. I you analyze
>your code you will see that the processes P1 and P2 eventually
>reach the END P1; and so execute an implicit RETURN.

>If you want your processes to live throughout the execution of your
>main, then surround the code with a LOOP ... END; If you want the
>process to die then call an explicit StopProcess(); (I think thats
>the name - see your docs) before the final END P1;

>|>   Can I use Concurent processes in a WHILE loop ?

>Why not?

>|>
>|>
>|> 2) I've got another question. I want to write a program in Modula2 or C
>|>    that records all the keys pressed in a file while executing them at the
>|>    same time, ie if I type AUTOEXEC at the DOS prompt the string AUTOEXEC
>|>    will be appended to file MYFILE.TXT and AUTOEXEC.BAT will run.

>There are programs that do that (viz. echo standard input to some
>file before letting the opsys have it). Look for something called
>tee and Y (something that fans out / in?).

> I was told
>|>    I have to trap interrupt 15. My question is : How do you use interrupts
>|>    in Modula2 ?  How do I trap interupts ?

>Go buy yourself a book, or see your local librarian.

>|>    Thanks VERY much in advance,

>Youre welcome.

>torbjorn.

Does anyone know the ftp address and path for mtc (MOCHA to K&R C)
translator at the University of Stutgart?

Thanks.
Emmett McLean



Sun, 08 May 1994 13:53:23 GMT  
 Using DOS Linker with TopSpeed Modula-2
Quote:

> Does anyone know the ftp address and path for mtc (MOCHA to K&R C)
> translator at the University of Stutgart?

  The right name is MOCKA.

  If you whish something about the mtc, please take contact with the author
itself by the GMD-Karlsruhe: for unix-system

   Josef Grosch
   GMD Forschungsstelle
   Vincenz-Priessnitz-Str. 1
   D-7500 Karlsruhe 1
   Phone: +721-662226

  I may give you a version for VAX under VMS only:

Guy Maurel
DaimlerBenz Research Institut
Postfach 2360
D-7900 Ulm/Donau
Tel.: 49-731-505-2172

bye

guy



Mon, 09 May 1994 15:31:45 GMT  
 Using DOS Linker with TopSpeed Modula-2
Quote:

>    [Stuff deleted ...]

> Does anyone know the ftp address and path for mtc (MOCHA to K&R C)
> translator at the University of Stutgart?

        rusmv1.rus.uni-stuttgart.de
        /soft/unixtools/programming/compilerbau/mtc.tar.Z

Hope this helps

Gerd
--
G e r d   W e s t e r m a n                    FernUniversit"at Hagen
phone: +49-2331-25871                          Praktische Informatik IV




Mon, 09 May 1994 17:12:45 GMT  
 
 [ 9 post ] 

 Relevant Pages 

1. Does anyone know Modula 2 Topspeed Ver 3.1 DOS

2. Help needed with Topspeed Ver 3.10 Dos, Modula 2

3. Trying to find JPI - TopSpeed Modula-2 for DOS

4. Trying to find JPI - TopSpeed Modula-2 for DOS

5. Clarion 4 DOS - Looking for Topspeed DOS API for Pervasive SQL

6. Linker compatible with DOS link?

7. free MASM but no DOS Linker...

8. free 32-bit linker that can run in dos (not just win32)

9. Best Freeware Linker for DOS/WIN?

10. Looking for a smart linker for GNAT/DOS

11. Linking non-DOS executables with Turbo Linker

12. COBOL650 : DOS linker needed

 

 
Powered by phpBB® Forum Software