Jump to content

DevHlp PerfSysTrace: Difference between revisions

From EDM2
Created page with "DevHlp_PerfSysTrace writes software trace information to the STRACE buffer. ==Syntax== ===C=== <PRE> DevHelp_PerfSysTrace (USHORT Major, USHORT Minor,USHORT TraceSize, PBYTE..."
 
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:DevHlp_PerfSysTrace}}
DevHlp_PerfSysTrace writes software trace information to the STRACE buffer.  
DevHlp_PerfSysTrace writes software trace information to the STRACE buffer.  


==Syntax==
==Syntax==
===C===
DevHelp_PerfSysTrace (Major, Minor, TraceSize, TraceData)
<PRE>
DevHelp_PerfSysTrace (USHORT Major, USHORT Minor,USHORT TraceSize, PBYTE TraceData)  
</PRE>


===Assembler===
Calling Sequence in Assembler
<PRE>
    MOV  AX, MajorCode
    MOV  BX, TraceSize
    MOV  CX, MinorCode
    LDS  SI, TraceData
    MOV  DL, DevHlp_PerfSysTrace
    CALL  DevHlp
    JC    Error
</PRE>
==Parameters==
==Parameters==
===C===
;''Major'' ([[USHORT]]) - input:
; Major
;''Minor'' (USHORT) - input:
 
;''TraceSize'' (USHORT) - input:
; Minor
;''TraceData'' (PBYTE) - input:
 
; TraceSize
 
; TraceData
 
===Assembler===
    MOV  AX, MajorCode
    MOV  BX, TraceSize
    MOV  CX, MinorCode
    LDS  SI, TraceData


==Return Code==
==Return Code==
===C===
<PRE>
</PRE>
===Assembler===
* AX = return code.
* AX = return code.
Possible values
Possible values
Line 47: Line 18:


==Remarks==
==Remarks==
A trace buffer must be allocated, wia the STRACE INIT command, before attempting to write trace data.
A trace buffer must be allocated, via the STRACE INIT command, before attempting to write trace data.


Tracing stops once the trace buffer fills up. No error indication is returned. Subsequent calls to DevHelp_PerfSysTrace return immediately without writing any data.
Tracing stops once the trace buffer fills up. No error indication is returned. Subsequent calls to DevHelp_PerfSysTrace return immediately without writing any data.
Line 60: Line 31:


===Assembler===
===Assembler===
Calling Sequence in Assembler
<PRE>
<PRE>
     MOV  AX, MajorCode
     MOV  AX, MajorCode
Line 69: Line 41:
     JC    Error
     JC    Error
</PRE>
</PRE>
==Related Functions==


[[Category:DevHlps]]
[[Category:DevHlps]]

Latest revision as of 21:37, 27 May 2025

DevHlp_PerfSysTrace writes software trace information to the STRACE buffer.

Syntax

DevHelp_PerfSysTrace (Major, Minor, TraceSize, TraceData)

Parameters

Major (USHORT) - input
Minor (USHORT) - input
TraceSize (USHORT) - input
TraceData (PBYTE) - input

Return Code

  • AX = return code.

Possible values

0 NO_ERROR
Data written to trace buffer.
32902 ERROR_NOMEMORY
Trace buffer has not been allocated.

Remarks

A trace buffer must be allocated, via the STRACE INIT command, before attempting to write trace data.

Tracing stops once the trace buffer fills up. No error indication is returned. Subsequent calls to DevHelp_PerfSysTrace return immediately without writing any data.

Example Code

C

#include "dhcalls.h"

USHORT APIENTRY DevHelp_PerfSysTrace (USHORT Major, USHORT Minor,USHORT TraceSize, PBYTE TraceData) 

Assembler

Calling Sequence in Assembler

    MOV   AX, MajorCode
    MOV   BX, TraceSize
    MOV   CX, MinorCode
    LDS   SI, TraceData
    MOV   DL, DevHlp_PerfSysTrace
    CALL  DevHlp
    JC    Error