OS/2, eCS & ArcaOS - Technical > Programming
EDM/2 - The API Project - Undocumented
Lars:
--- Quote from: Martin Iturbide on May 27, 2025, 09:12:06 pm ---Hello Steven.
You know more than me on this area.
My references are:
1) DevHlp_AddTraceEvent
-- "SMP Programming Addendum" on the "STRACE - DevHlp Functions"
-- sg244640: "Trace Events for DEVHELP Major Code: 0X0006, Sorted by Tracepoint"
--- OS) DevHlp_AddTraceEvent Post-Invocation 00132 (0X0084)
--- OS) DevHlp_AddTraceEvent Pre-Invocation 00004 (0X0004)
2) DevHlp_SysTrace
-- "Programming Guide and Reference Addendum" on the "Device Helper (DevHlp) Services and Function Codes" at "DevHlp_SysTrace".
There it says "DevHlp_SysTrace is synonymous with DevHlp_RAS."
On "devhlp.inc" from the DDK it has:
--- Quote ---DevHlp_RAS EQU 40 ; 28 Put info in RAS trace buffer
DevHlp_SysTrace EQU 40 ; 28 Synonym for DevHlp_RAS f180062
--- End quote ---
This is why I guess that DevHlp_RAS and DevHlp_SysTrace are the same. No idea about "DevHlp_AddTraceEvent".
Regards
--- End quote ---
Looks like we are spinning around in circles:
you will realize that major trace code 0x0006 neither lists DevHlp_RAS nor DevHlp_SysTrace. That said, it looks like DevHlp_AddTraceEvent = DevHlp_RAS = DevHlp_SysTrace as that is what this devhelp does: it adds a trace event to the trace buffer.
Martin Iturbide:
Hello
Here are some questions I have.
1) Do you think it is worthy to try to document the undocumented functions on an API?
For example: "GpiAbortPath" (Check the EDM/2 page)
2) Do you think it is good to try to document what it is "believed/supposed" this functions does, specifying it is undocumented?
I searched on the OS2World github any reference to "GpiAbortPath", there is no information, only that it exists on pmgpi library.
3) Is there any trick to try to find what is the syntax and parameters of "GpiAbortPath"?
Regards
Steven Levine:
Martin,
It cannot hurt to document what we know and to document any educated guesses we might have.
This has a couple of benefits IMO. One, it helps avoid, at some future time, redoing the analysis that's already been done. Two, it might get someone sufficiently curious to investigate further.
There's really no tricks required to get additional information. Quality time spent with a debugger or a disassembler will eventually provide all the answers you might like to have.
Whether or not this will be time well spent is for the person doing the work to decide.
The GPI Guide and Reference provides a lot of hints and to what GpiAbortPath does. Take a look at the sample code for GpiBeginPath. Given what we can see, I would expect GpiAbortPath to take a single HPS argument, as does GpiEndPath. I would also expect GpiAbortPath to release the resources allocated by GpiBeginPath and the other path building functions. See the GpiBeginPath Remarks panel for some discussion on how this all fits together.
The ddk sources have real world examples of these path APIs in the testtool sources.
Martin Iturbide:
Thanks Steven for the reply.
I had updated "GpiAbortPath" with the extra information you posted here.
Regards
Navigation
[0] Message Index
[*] Previous page
Go to full version