DOCUMENT:Q259855 27-JAN-2001 [winnt] TITLE :HOWTO: Enable Debug Prints in IEEE 1394 Drivers PRODUCT :Microsoft Windows NT PROD/VER::2000 OPER/SYS: KEYWORDS:kbDDK kbOSWin2000 kbDSupport kbGrpDSNTDDK kbADO260fixkbfaq ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Windows 2000 Advanced Server - Microsoft Windows 2000 Server - Microsoft Windows 2000 Professional - Microsoft Windows 2000 Driver Development Kit (DDK) ------------------------------------------------------------------------------- SUMMARY ======= The Institute of Electrical and Electronics Engineers (IEEE) 1394 drivers, 1394Bus.sys and Ohci1394.sys, print debug messages to the kernel debugger depending upon the current debug level. By enabling debug message printing, you can see all the debug messages that are being printed by the driver. These debug messages are very useful for developers who are building their driver or application around the 1394 drivers. MORE INFORMATION ================ The current debug level is stored in a global variable that is defined in the respective driver. This value must be changed in order to see the debug messages. By default, this value is set to 0 (zero) and can be increased to a larger value. Larger values result in more verbose messages. The debug message is available only in checked build binaries. The checked build version of Windows 2000 should be used to get the debug messages. To get the debug messages in the retail build of Windows 2000, replace the 1394Bus.sys and Ohci1394.sys files with checked build binaries. Also, the symbols are required in the host computer to change the debug level. Changing the Debug Level for 1394Bus.sys ---------------------------------------- This can be done by typing the following command in the kernel debugger: "ed 1394bus!BusDebugLevel 2" (without the quotation marks) -or- "ed 1394bus!BusDebugLevel" (without the quotation marks) This will print the current value and prompt for a new value as follows: 0xBFF94CFC 00000000> 2 0xBFF94D00 bff94e20> Type the new value, and then press ENTER for the next value. The command sets the new debug level to 2. Changing the Debug Level for Ohci1394.sys ----------------------------------------- This can be done by typing the following command in the kernel debugger: "ed ohci1394!OhciDebugLevel 2" (without the quotation marks) -or- "ed ohci1394!OhciDebugLevel" (without the quotation marks) This will print the current value and prompt for a new value as follows: 0xBFF94CFC 00000000> 2 0xBFF94D00 bff94e20> Type the new value, and then press ENTER for the next value. The command sets the new debug level to 2. When you change the value, the following error message may appear: Unable to modify memory Or, instead of printing the current value, question marks are printed, as follows: > ed ohci1394!OhciDebugLevel 0x00000001 ????????> This happens when the expression evaluator is set to the wrong type. To change this, type the following command: ".opt masmeval on" (without the quotation marks) To check the current setting of the expression evaluator, use the following command: ".opt masmeval" (without the quotation marks) This command displays either "MasmEval off" or "MasmEval on", which indicates the state of expression evaluator. REFERENCES ========== For additional information on Debug printing implementation and the expression evaluator, click the article numbers below to view the articles in the Microsoft Knowledge Base: Q90082 INFO: Debug Printing Implementation in the Device Drivers Q180577 Windows NT Kernel WinDbg Message Unable to modify memory Additional query words: IEEE 1394 ohci1394 debug ====================================================================== Keywords : kbDDK kbOSWin2000 kbDSupport kbGrpDSNTDDK kbADO260fix kbfaq Component : DDK Technology : kbwin2000AdvServ kbwin2000AdvServSearch kbwin2000Serv kbwin2000ServSearch kbwin2000Search kbwin2000ProSearch kbwin2000Pro kbwin2000DDK kbAudDeveloper kbWinDDKSearch kbWinAdvServSearch Version : :2000 Hardware : x86 Issue type : kbhowto kbinfo ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.