Jump to content

DevHlp PerfSysTrace: Difference between revisions

From EDM2
No edit summary
No edit summary
 
Line 6: Line 6:


==Parameters==
==Parameters==
;Major ([[USHORT]]):
;''Major'' ([[USHORT]]) - input:
;Minor (USHORT):
;''Minor'' (USHORT) - input:
;TraceSize (USHORT):
;''TraceSize'' (USHORT) - input:
;TraceData (PBYTE):
;''TraceData'' (PBYTE) - input:


==Return Code==
==Return Code==

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