DEFINITION MODULE DMDebugHelp;
(*******************************************************************
Module DMDebugHelp ('Dialog Machine' DM_V3.0)
Copyright (c) 1989-2006 by Andreas Fischlin and ETH Zurich.
Purpose Help display debugging messages in order to
avoid calling the debugger.
Remarks MacMETH 2.6+ does not allow to normally debug
in Term procedures or to debug activate and
deactivate events (ModalDialog box to call
debugger prevents it). This module allows
to get some information out of the system even
in these cases.
This module belongs to the 'Dialog Machine'.
Programming
o Design
Andreas Fischlin 16/11/1989
o Implementation
Andreas Fischlin 16/11/1989
ETH Zurich
Systems Ecology
CHN E 35.1
Universitaetstrasse 16
8092 Zurich
SWITZERLAND
URLs:
<mailto:RAMSES@env.ethz.ch>
<http://www.sysecol.ethz.ch>
<http://www.sysecol.ethz.ch/SimSoftware/RAMSES>
Last revision of definition: 23/06/1993 AF
*******************************************************************)
IMPORT SYSTEM;
PROCEDURE CopyString (from: ARRAY OF CHAR; i1: INTEGER;
VAR to: ARRAY OF CHAR; VAR i2: INTEGER);
PROCEDURE IntToString(x: LONGINT; VAR str: ARRAY OF CHAR; n: CARDINAL);
PROCEDURE Write(ch: CHAR);
PROCEDURE WriteString(s: ARRAY OF CHAR);
PROCEDURE WriteLn;
PROCEDURE WriteInt(x: LONGINT; n: CARDINAL);
PROCEDURE WriteDataStructure(VAR x: ARRAY OF SYSTEM.BYTE;
b: BOOLEAN; li: LONGINT;
msg: ARRAY OF CHAR);
PROCEDURE MessageWindow(x,y,w,h: INTEGER; p: PROC);
(* display a message window (Quickdraw coordinates, i.e. top left
of main screen x = 0, y = 0) *)
PROCEDURE StartReportOnFile(fileName, msg: ARRAY OF CHAR);
(* write subsequently to file with name fileName and document file
opening with header message msg. *)
PROCEDURE CloseReportFile(msg: ARRAY OF CHAR);
(* stop writing to file *)
PROCEDURE GetModuleIdent(moduleID: INTEGER; VAR modId: ARRAY OF CHAR);
(* return modId given a moduleID as exported by DMBase *)
VAR
lastModuleID: ARRAY [0..31] OF CHAR; (* assigned by any call to GetModuleIdent *)
PROCEDURE Message(s1,s2: ARRAY OF CHAR);
END DMDebugHelp.