# HG changeset patch # User Oleksandr Gavenko # Date 1249666588 -10800 # Node ID 95c55e2920e59d245a2f594bdec0a7748b30fcbb # Parent 8a80c98c044c6a8025018ff5c9a8de62c05faa47# Parent 08429bbf63d024bea141b5eb60dfa24a3b2431c4 merged diff -r 8a80c98c044c -r 95c55e2920e5 cpp.rst --- a/cpp.rst Sat Aug 01 22:32:58 2009 +0300 +++ b/cpp.rst Fri Aug 07 20:36:28 2009 +0300 @@ -10,3 +10,25 @@ $ cl /E .c +* Who to see predefined macros? + +See + + http://predef.sourceforge.net/ + http://en.wikipedia.org/wiki/C_preprocessor#Compiler-specific_predefined_macros + +** GNU C Compiler. + + $ gcc -dM -E - < /dev/null + +** HP-UX ansi C compiler. + + $ cc -v EMPTY.c + +** SCO OpenServer C compiler. + + $ cc -## EMPTY.c + +** Sun Studio C/C++ compiler. + + $ cc -## EMPTY.c diff -r 8a80c98c044c -r 95c55e2920e5 driver-win.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/driver-win.rst Fri Aug 07 20:36:28 2009 +0300 @@ -0,0 +1,91 @@ +-*- outline -*- + +* Which version exist? + + - VxD + Windows 3.x and Windows 9x + - Windows Driver Model (WDM) + Windows 98, Windows 98 Second Edition, Windows Me, Windows + 2000, Windows XP, Windows Server 2003 and Windows Vista (for + backwards compatibility) + - Windows Driver Foundation (WDF) + Windows 2000 and later + +* VxD. + +See + + http://en.wikipedia.org/wiki/VxD + +* WDM. + +See + + http://en.wikipedia.org/wiki/Windows_Driver_Model + +* WDF. + +See + + http://en.wikipedia.org/wiki/Windows_Driver_Foundation + +* Filename extension. + + * VxD + .386 under Windows 3.x + .vxd under Windows 95 + +* Tools. + +** Microsoft DDK. + +*** DevCon. + +Supported device classes: + + cmd> devcon.exe classes + +Which files used by specific driver (with "*" prints list of files for all drivers): + + cmd> devcon.exe driverfiles * + +Device ID (names included): + + cmd> devcon.exe hwids * + +Device status (running/stoped): + + cmd> devcon.exe status * + +** USB Command Verifier. + +All USB peripherals are required to pass the Device Framework tests in order +to gain certification. + + http://www.usb.org/developers/tools/ + +* Files. + +** Windows 98 SE/ME. + +** Windows NT (2000/XP/2003). + + * .inf + Stored in %Windir%\Inf. + * .pnf + Precompiled INF File. Stored in %Windir%\Inf. + +* Driver type. + +** CDC. + + http://support.microsoft.com/kb/837637 + How to use or to reference the Usbser.sys driver from + universal serial bus (USB) modem .inf files. + +* Driver class. + +See + + http://msdn.microsoft.com/en-us/library/ms791134.aspx + System-Supplied Device Setup Classes diff -r 8a80c98c044c -r 95c55e2920e5 emacs.rst --- a/emacs.rst Sat Aug 01 22:32:58 2009 +0300 +++ b/emacs.rst Fri Aug 07 20:36:28 2009 +0300 @@ -1,47 +1,51 @@ -*- mode: outline -*- -* How debug ini file? +* Debugging. + +** Using edebug. + +Execute ‘M-x edebug-defun’ (also on ‘C-u C-M-x’) on defun in source code to +enable debugging for desired function. When next time this function invoked +you entered to its debugging (jamped to its source code). + +To start debug execute code which used debugged function. + +You can disable edebug on a function by evaluating the function again using +‘C-M-x’. + +** How debug func? + +Use M-x debug-on-entry and M-x cancel-debug-on-entry to control +which functions will enter the debugger when called. + +When next time that function called automatically loaded debug-mode. + +** How debug ini file? When your InitFile has a bug, or when you load external files that cause errors, the bug is often hard to find, because the Emacs Lisp reader does not know about line numbers and files – it just knows an error happened, and that’s it. -** Binary Search. +*** Binary Search. Select half of the file in a region, and M-x eval-region. Depending on whether that causes the error or not, split this half or the other half again, and repeat. -** Elisp. +*** Elisp. - Use a keyboard macro that moves forward one expression (sexp) and evaluates it. - Try C-x check-parens. - Set (setq debug-on-error t). -** CLI. +*** CLI. $ emacs --no-init-file --no-site-file --debug-init -** Simplified Binary Search. +*** Simplified Binary Search. Add (error “No error until here”) in the middle of your file. If you get the error “No error until here” when reloading the file, move the expression towards the back of the file, otherwise towards the front of the file. - -* Using edebug. - -The main entry point is ‘M-x edebug-defun’ (also on ‘C-u C-M-x’). Use it -instead of `C-x C-e’ or ‘C-M-x’ to evaluate a ‘defun’ and instrument it for -debugging. - -You can disable edebug on a function by evaluating the function again using -‘C-M-x’. - -* How debug func? - -Use M-x debug-on-entry and M-x cancel-debug-on-entry to control -which functions will enter the debugger when called. - -When next time that function called automatically loaded debug-mode.