| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- IMPLEMENTATION MODULE Diagnostics;
- (*
- * REPERTOIRE
- * Release 1.6
- * By Charles Bradford and Cole Brecheen
- * (c) Copyright 1985-1992 PMI
- * Green Bay, Wisconsin
- * All rights reserved
- * (414) 468-6040
- *
- * $Header: D:/logfiles/mods/diagnost.mov 1.6 10 Mar 1991 15:26:18 coleb $
- *
- *)
- IMPORT FAPI; (*Diag*)
- IMPORT ErrorManager;
- IMPORT HandleIO;
- IMPORT GenLists;
- IMPORT LowLevel;
- IMPORT M2Strings;
- IMPORT StrConv;
- IMPORT StrEdit;
- IMPORT StringIO;
- IMPORT SYSTEM;
- VAR
- Initialized : BOOLEAN;
- PROCEDURE Init();
- BEGIN
- IF Initialized THEN
- RETURN;
- ELSE
- Initialized := TRUE;
- END;
- ErrorManager.Init();
- HandleIO.Init();
- GenLists.Init();
- LowLevel.Init();
- M2Strings.Init();
- StrConv.Init();
- StrEdit.Init();
- StringIO.Init();
- END Init;
- PROCEDURE diagA(str1 : ARRAY OF CHAR; TheAddr : SYSTEM.ADDRESS );
- VAR
- LocalStr: ARRAY [0..79] OF CHAR;
- dummy : ARRAY [0..5] OF CHAR;
- BEGIN
- M2Strings.Assign( str1, LocalStr );
- StrEdit.Append( LocalStr, ': ' );
- StrConv.CardinalToStr(LowLevel.seg(TheAddr), 0, dummy);
- StrEdit.Append( LocalStr, dummy );
- StrEdit.Append( LocalStr, ':' );
- StrConv.CardinalToStr(LowLevel.ofs(TheAddr), 0, dummy);
- StrEdit.Append( LocalStr, dummy );
- ErrorManager.WARN( LocalStr );
- END diagA;
- PROCEDURE diagB( str1: ARRAY OF CHAR; TheSet: BITSET );
- VAR
- cnt: CARDINAL;
- LocalStr: ARRAY [0..255] OF CHAR;
- BEGIN
- M2Strings.Assign( str1, LocalStr );
- StrEdit.Append( LocalStr, ' ' );
- FOR cnt := 0 TO 15 DO
- IF cnt IN TheSet THEN
- StrEdit.Append( LocalStr, '1' );
- ELSE
- StrEdit.Append( LocalStr, '0' );
- END;
- END;
- ErrorManager.WARN( LocalStr );
- END diagB;
- PROCEDURE diagS(str1, str2 : ARRAY OF CHAR);
- VAR
- LocalStr: ARRAY [0..255] OF CHAR;
- dummy, lngth: CARDINAL;
- tmpadr: SYSTEM.ADDRESS;
- BEGIN
- M2Strings.Assign( str1, LocalStr );
- StrEdit.Append( LocalStr, ' "' );
- StrEdit.Append( LocalStr, str2 );
- StrEdit.Append( LocalStr, '"' );
- ErrorManager.WARN( LocalStr );
- (*
- tmpadr := SYSTEM.ADR(LocalStr);
- lngth := M2Strings.Length(LocalStr);
- dummy := FAPI.DOSWRITE( 1, tmpadr, lngth, SYSTEM.ADR(dummy) );
- *)
- END diagS;
- PROCEDURE diagC(str1 : ARRAY OF CHAR; TheCard : CARDINAL);
- VAR
- LocalStr: ARRAY [0..79] OF CHAR;
- dummy : ARRAY [0..5] OF CHAR;
- BEGIN
- M2Strings.Assign( str1, LocalStr );
- StrEdit.Append( LocalStr, ': ' );
- StrConv.CardinalToStr(TheCard, 0, dummy);
- StrEdit.Append( LocalStr, dummy );
- ErrorManager.WARN( LocalStr );
- END diagC;
- PROCEDURE diagI(str1 : ARRAY OF CHAR; TheInt :
- INTEGER);
- VAR
- LocalStr: ARRAY [0..79] OF CHAR;
- dummy : ARRAY [0..5] OF CHAR;
- BEGIN
- M2Strings.Assign( str1, LocalStr );
- StrEdit.Append( LocalStr, ': ' );
- StrConv.IntegerToStr(TheInt, 0, dummy);
- StrEdit.Append( LocalStr, dummy );
- ErrorManager.WARN( LocalStr );
- END diagI;
- PROCEDURE diagL(str1 : ARRAY OF CHAR; TheLong : LONGINT);
- VAR
- LocalStr: ARRAY [0..79] OF CHAR;
- KeyHit: CARDINAL;
- dummy : ARRAY [0..15] OF CHAR;
- BEGIN
- M2Strings.Assign( str1, LocalStr );
- StrEdit.Append( LocalStr, ': ' );
- StrConv.LongIntegerToStr(TheLong, 0, dummy);
- StrEdit.Append( LocalStr, dummy );
- ErrorManager.WARN( LocalStr );
- END diagL;
- PROCEDURE diagBlock( str1 : ARRAY OF CHAR; TheAddr : SYSTEM.ADDRESS;
- TheSize: CARDINAL );
- VAR
- fhandle: CARDINAL;
- tmpstr: ARRAY [0..15] OF CHAR;
- BEGIN
- HandleIO.OpenForAppending( 'tmp.txt', fhandle );
- StrConv.CardinalToStr( TheSize, 0, tmpstr );
- StringIO.WriteEol( fhandle, '' );
- StringIO.WriteStr( fhandle, str1 );
- StringIO.WriteStr( fhandle, '; ' );
- StringIO.WriteStr( fhandle, tmpstr );
- StringIO.WriteEol( fhandle, ' bytes:' );
- IF 0 # HandleIO.BlockWrite( fhandle, TheAddr, TheSize ) THEN END;
- IF 0 # HandleIO.CloseHandle( fhandle ) THEN END;
- END diagBlock;
- PROCEDURE CheckList( TheList: GenLists.GenList );
- VAR
- DataSize, TotalElems, TotalSize: LONGINT;
- TotalSubs: CARDINAL;
- BEGIN
- (*
- DataSize := Storage.MemoryInUse;
- TotalSize := Storage.MaxMemoryUsed;
- *)
- DataSize := GenLists.ListSize( TheList, TotalElems,
- TotalSubs, TotalSize );
- END CheckList;
- BEGIN
- Initialized := FALSE;
- Init();
- END Diagnostics.
|