1. 23 Mar, 2010 1 commit
    • Jeffrey Lee's avatar
      Add HAL_DebugTX support to DebugLib · f8ab2e10
      Jeffrey Lee authored
        Makefile, c/hal, h/hal, c/debug, h/DebugLib - Added new HAL_OUTPUT debug device that calls HAL_DebugTX
        Docs/DebugLib,3d6 - updated StrongHelp docs
        Tested in OMAP ROM on rev C2 beagleboard
      Version 0.65. Tagged as 'DebugLib-0_65'
  2. 10 Sep, 2008 1 commit
    • Steve Revill's avatar
      Adding SysLog and Reporter logging backends to the DebugLib library. · a67e015d
      Steve Revill authored
        I've added simple backends for the standard SysLog SWI interface and
        the Reporter module. Both of these provide line based APIs so the output
        is line buffered (to a width of 80 characters). I also removed two
        unnecessary forward declarations for static functions in debug.c which
        were producing warnings from Norcroft CC.
         Compiled with Norcroft 5.65. Tested on RISC OS 5.13, using DoggySoft
         SysLog 0.20, Reporter 2.64d via a debug build of the USBDriver module.
      Version 0.64. Tagged as 'DebugLib-0_64'
  3. 02 Dec, 2003 1 commit
  4. 24 May, 2002 1 commit
    • John Beranek's avatar
      Added support for variadic macros · 7e7c3976
      John Beranek authored
      * If your C compiler supports variadic macros, you can now define
       DEBUGLIB_NOBRACKETS and use dprintf(...) instead of dprintf((...))
       This works with cc 5.45
        Tested by taking test harnesses and defining DEBUGLIB_NOBRACKETS
       and removing the extra brackets around all the dprintf statements.
      Version 0.62. Tagged as 'DebugLib-0_62'
  5. 17 Sep, 2001 1 commit
    • John Beranek's avatar
      Updated Copyrights, tidied comment header blocks · 0fed0ceb
      John Beranek authored
        Updated Copyright messages to show range of years, up to 2001...a bit
       late in the year for that...
        Tidied a few file header comment blocks.
        Built on RiscPC.
      Version 0.61. Tagged as 'DebugLib-0_61'
  6. 02 May, 2001 2 commits
  7. 27 Mar, 2001 1 commit
    • Stewart Brodie's avatar
      New option for export_libs. · bf8371c0
      Stewart Brodie authored
        If you have -options NOLIBS=NOLIBS in your components file, then
          DebugLib won't attempt to build its binaries.  This avoids the
          need for several other libraries to be built just to enable
          DebugLib to build when actually all that a build needs is the
          header DebugLib.h
        Tested with and without the option.
      Version 0.59. Tagged as 'DebugLib-0_59'
  8. 02 Feb, 2001 1 commit
    • John Beranek's avatar
      Updated docs. · 22edf50e
      John Beranek authored
        Updated StrongHelp manual to include information about DADebug.
      Version 0.58. Not tagged
  9. 01 Feb, 2001 1 commit
  10. 16 Oct, 2000 1 commit
    • John Beranek's avatar
      A number of changes, made over the months, but which I'd failed to checkin. Tsk. · 8d124a67
      John Beranek authored
        Some additions to CLI test harness.
        Bits of code in CLI and GUI test harness to check at compile time if
         OSLib and "Toolbox" style boolean definitions work with DebugLib.h
        Changed GUI test harness Makefile to use LocalRes:
        Removed calls to debug_atexit() in test harnesses, they're no longer
        Behaviour change: if you set a device in DebugLib$Device_<taskname>,
         debug_set_device() is called for that device on debug_initialise().
        Added check into debug_set_device(), if it's called with the current
         device, and the current device is initialised, it now does nothing,
         because it doesn't need to.
        Added extra checks into file and socket output methods that ensure
         initialising and/or terminating these devices repeatedly won't
         cause problems.
        Added some extra preprocessor malarky into DebugLib.h so that it should
         handle more boolean definitions.  It should handle (at least) "Toolbox"
         style ones and OSLib ones.
        Changed some used of debug_output_device() to debug_set_device() in Module
         test harness. debug_output_device() is deprecated.
        Fixed a bug in the core termination code...all open devices should now
         be closed correctly on exit.
        Built library.
        Built and ran through some tests in the 3 test harnesses.
      Version 0.57. Tagged as 'DebugLib-0_57'
  11. 13 Jul, 2000 1 commit
    • John Beranek's avatar
      Few little fixes · 292b0fa8
      John Beranek authored
        Levels specifier in DebugLib header now outputs correctly.  It now
         prints out a human readable form of what it's parsed from the
         DebugLib$Level_<taskname> system variable, showing the areas and
         levels specified.
        Added a few variable resets into "quit" functions of some of the
         output devices.  Done after a report from Ben that calling
         debug_terminate twice could cause a crash.  Not sure what
         device was used to cause the crash, also not sure if any of my
         changes will have changed the behaviour.  Added an extra test
         into the CLI_App test harness, it calls debug_terminate twice
         at the end. (Didn't manage to make it crash before or after
        StrongHelp document now gets copied to Export dir, along with
         headers, library and LibVersion.
      Version 0.56. Tagged as 'DebugLib-0_56'
  12. 18 May, 2000 1 commit
    • John Beranek's avatar
      Efficiency improvement and obscure overflow fix in area checking code · c25996b8
      John Beranek authored
        Every dprintf() call calls debug_check_level() to check whether the
         statement should be printed or not.  This function did take 2
         parameters, the 2nd of which was no longer being used.  The function
         now only takes 1 parameter.
        You are limited to having 16 comma-seperated area/level
         pairs in each dprintf(), but the routine to tokenise this string
         would've written into and beyond position 16 of a 16 element
         array if you passed a string with more than 16 pairs.  Routine now
         bails out after 16 pairs.
        MemCheck rule of CLI test harness now uses correct MemCheck library,
         so actually does check memory. Only violations appear to be deep
         inside trace library.
        Added debug statement into CLI test harness with 18 levels, and
         verified DebugLib only uses 16. [Unfortunately couldn't verify
         array bounds were(n't) being violated, cos of MemCheck's limited
         stack protection].
        Fiddled with DebugLib's internal debugging so that DebugLib internal
         debug gets labelled with the level "__DebugLib".
      Version 0.55. Tagged as 'DebugLib-0_55'
  13. 17 May, 2000 1 commit
    • John Beranek's avatar
      More boolean type changes. · c323b327
      John Beranek authored
        More drastic changes to try and fix all the wonderful variants of
         the boolean type.
        DebugLib now uses <stdbool.h>, "bool", "false" and "true"
        DebugLib.h now prototypes its functions with the type DebugLib_BOOL,
         and does preprocessor jiggery-pokery to try and ensure that
         it, plus TRUE, FALSE and BOOL get defined as something appropriate.
        Tested by changing some of the test harnesses to include OSLib,
         stdbool and tboxlib headers.
        Fixed test harness module Makefile to include zm versions of
         libraries in all cases.
      Version 0.54. Tagged as 'DebugLib-0_54'
  14. 16 May, 2000 1 commit
    • John Beranek's avatar
      Boolean definitions updated · 055ac4b9
      John Beranek authored
        Definitions updated to catch OSLib's view on booleans.  If BOOL isn't
         defined, but TRUE is, then we define BOOL to bool and don't redefine
         TRUE and FALSE.
        The sooner we're all using <stdbool.h> the better.
      Version 0.53. Tagged as 'DebugLib-0_53'
  15. 20 Apr, 2000 1 commit
    • John Beranek's avatar
      Build changes + doc update · c5c7d86e
      John Beranek authored
        DebugLib now gets the Trace header file from the build system, now
         that it lives there.  Deleted local copy.
        Checked in updated StrongHelp manual that shows deprecation of
         debug_atexit() function, and that no longer tells you to use
         it in the "Setting up the library" section.
      Version 0.52. Tagged as 'DebugLib-0_52'
  16. 13 Apr, 2000 1 commit
    • Stewart Brodie's avatar
      Moved hashes to left hand column in DebugLib.h · 5342e069
      Stewart Brodie authored
        Without this, any RPC software (eg. NFS, rpclib) cannot be compiled
          to use DebugLib for debugging.
        Required by anything which uses the current version of rpcgen.
      Version 0.51. Tagged as 'DebugLib-0_51'
  17. 11 Apr, 2000 1 commit
  18. 05 Apr, 2000 1 commit
    • John Beranek's avatar
      Changed atexit handling + code tidying · 6973be1e
      John Beranek authored
        debug_atexit() is now deprecated and DebugLib adds its own atexit
        handler to close down debug devices.  debug_atexit() calls in code
        are now removed by the preprocessor even when DEBUGLIB is defined.
        The atexit handler is added in the debug_initialise() call.
        Tidied debug.c.  Made more functions static, and moved all the static
        functions to before the exported functions.
        Built and tested.
        StrongHelp manual updated to reflect atexit change.
      Version 0.49. Tagged as 'DebugLib-0_49'
  19. 07 Mar, 2000 1 commit
    • John Beranek's avatar
      PDebug output method improved. · 1b999f66
      John Beranek authored
        DebugLib's PDebug output method will now use the PDebugM module to
        send output if it finds it.  This allows more than one task/module
        to output to the parallel port using DebugLib.
        Tested with 2 modules on STB400.
      Version 0.48. Tagged as 'DebugLib-0_48'
  20. 21 Jan, 2000 2 commits
    • John Beranek's avatar
      Tidy-up · e3950a09
      John Beranek authored
        Stewart's checkin about LibVersion reminded me I'd done some tidying
        (including the LibVersion thing) and not checked it in.  So here it is.
        Tidied Makefile, added standard headers to all the c and h files,
        including the regulation copyright message.
        Changed options.c so that it fits the coding style of the rest of
        DebugLib (naughty Stewart).
        Improved "strdup" routine.
        Moved stripdepend call into Makefile.
        Built and tested.
      Version 0.47. Tagged as 'DebugLib-0_47'
    • Stewart Brodie's avatar
      Altered exported VersionNum file to be called LibVersion. · 0aaa1990
      Stewart Brodie authored
        Change made to avoid problems with components doing #include "VersionNum"
          whilst DebugLib's export directory is on the include search path.
        Not tested - just changed the name.
      Version 0.46. Tagged as 'DebugLib-0_46'
  21. 21 Sep, 1999 2 commits
  22. 13 Sep, 1999 1 commit
  23. 10 Sep, 1999 1 commit
    • John Beranek's avatar
      * Updated DebugLib StrongHelp manual to add information on the use of the debug level specifier. · 8a65ed86
      John Beranek authored
       * DebugLib.h now exports the remotedb session handle, this should mean
         that apps can use the 2-way capabilites of remotedb to control their
         applications via remotedb-sent commands.  Note that the new function
         call debug_read_device should be used to check the current DebugLib
         device is SOCKET_OUTPUT and that the remotedb session handle is valid
         before registering a remotedb command handler.  Added for use by
      Version 0.42. Tagged as 'DebugLib-0_42'
  24. 08 Sep, 1999 1 commit
    • John Beranek's avatar
      * Improved DebugLib's area handling system. Lines of debug may now belong to... · 70d17dbb
      John Beranek authored
      * Improved DebugLib's area handling system.  Lines of debug may now belong to multiple "areas" of code, each at a specific level.  The filtering of debug at runtime is now done with a much more flexible system, areas/levels are masked in/out based on a new format for the
         DebugLib$Level_<taskname> system variable.  The description of this
         format has not made it into the StrongHelp document, it will go into
         this, and into the DebugLib web docs ASAP.
       * Added a new option to allow the area/level prefix in debug output to
         be padded to a particular width.  This makes the prefix much more
         useable.  The prefixing is turned on with the option
         "debug_set_area_level_prefix", and the padding controlled with
       * Added test cases for new levelling scheme into CLI test harness.
       * Updated StrongHelp manual somewhat.
      Version 0.41. Tagged as 'DebugLib-0_41'
  25. 28 May, 1999 1 commit
  26. 27 May, 1999 1 commit
    • Neil Bingham's avatar
      * Initial checkin of code to allow data to be output in a raw form. · cb046c9c
      Neil Bingham authored
        * Added copyright messages to DebugLib.h (the exported header) as
          DebugLib has now been shipped to one customer.
        * Two new functions debug_set_raw_device() and dprintf_raw() have been
          added to debug.c.  This allows debug data to be output unprocessed;
          i.e. without taskname prefixing, timestamping etc.  This was done for
          HierProf, MemCheck and McCabe.  This is especially important for McCabe
          as no formatting must be done to the output generated by the program.
          Subject to testing against McCabe, it will be possible to send output
          for analysis via any debug stream (except RemoteDB due to the nature
          of the daemon).  DebugLib$RawDevice_<taskname> can be used to override
        * Tested that the data is output in a raw form.  Testing with McCabe
          not yet accomplished.
      Version 0.39. Tagged as 'DebugLib-0_39'
  27. 26 May, 1999 3 commits
    • John Beranek's avatar
      * Tidied "include.h": · df87b763
      John Beranek authored
       * Moved non-general definitions into appropriate
         header files.  e.g. Default serial options into serial.h etc.
       * Removed DEBUGLIB_UNUSED() macro, as there was already a similar macro
       * "globals.h" now includes "options.h" to get the definition of the
         options structure.
      Version 0.38. Not tagged
    • John Beranek's avatar
      * Changed the default setting for the "screen cornering" option to FALSE. · 6ac12c4d
      John Beranek authored
      Version 0.38. Not tagged
    • John Beranek's avatar
      * Continued tidy-up of DebugLib: · 9815444e
      John Beranek authored
       * All DebugLib functions now namespaced, they all start debug_<filename>_
        (except the functions in debug.c which are debug_).
       * Device specific #defines etc moved into device specific header files,
         e.g. debugit.h
       * Moved taskname prefixing to a central location, moved timestamping here
         also, added area/level prefixing, and tidied up this prefixing to make
         sure it looks good on all the possible debug devices.
       * Can now do any debuglib function to any debug device, including trace
         output, this hasn't been the case for a while.
       * Added new option, to set whether you want to prefix all debug lines
         with the area/level pair specified in dprintf, dfprintf etc.  Added
         new function to set this option.  debug_set_area_level_prefix ()
       * remotedb output now uses new "raw" output mode added to remotedb in
         version 0.06.  _DebugLib now requires remotedb version >= 0.06_
       * Added new test cases into CLI_App test harness, and changed a few things
         in TestMod.
       * Added Memcheck misc block registration into buffering code, which allows
         buffering to be used on the DebugLib Memcheck build.
       * Added lots of new function names into the always_ignore field which is
         used to tell trace which functions to ignore.  It seems that some the
         internet libraries have function names emebedded, which causes horrible
         loops when using DebugLib to output trace info to remotedb.  Also added
         debug_* and remote_debug_*
       * Added StrongHelp topics for ddumpbuf, debug_output_buffer_* and
         debug_set_area_level_prefix.  Updated the "Setting up the library"
       * Checked with all the debug devices except TML and serial.
      Version 0.38. Tagged as 'DebugLib-0_38'
  28. 20 May, 1999 1 commit
    • John Beranek's avatar
      * Continued tidy of DebugLib structure/implementation...added an "Open"... · bc55c6f8
      John Beranek authored
      * Continued tidy of DebugLib structure/implementation...added an "Open" variable to the debug_output_method structure, to replace the sessions_available struct that was used previously.  Now check for whether a device is open at the top level (debug.c) instead of once for each device.  Removed the "quit" function for a few devices, because it was doing nothing.
       * Reduced global variable count to 1. :)
       * Split option setting functions to options.[ch], left debug_set_device
         in c.debug, as it does a bit more that just set an option.
      Version 0.37. Tagged as 'DebugLib-0_37'
  29. 19 May, 1999 3 commits
    • John Beranek's avatar
      * Oops, forgot new Makefile for re-org introduced at version 0.35 · 27f57524
      John Beranek authored
      Version 0.36. Tagged as 'DebugLib-0_36'
    • John Beranek's avatar
      * Initial work on tidying design of DebugLib. Each output method is now more... · ea385b9c
      John Beranek authored
      * Initial work on tidying design of DebugLib.  Each output method is now more or less independant, and in its own file.  The common functions of each debug output method are accessed using an array of function pointers.  In the fullness of time this should make it easy to add new devices (and perhaps some cunning stuff with the linker).
       * Code re-org has been tested, and seen to work for at least one debug
      Version 0.35. Tagged as 'DebugLib-0_35'
    • Stewart Brodie's avatar
      Buffer dumper added. · 50ca3321
      Stewart Brodie authored
        A handful of miscellaneous header file fixes.
        ddumpbuf(area, buffer pointer, size of buffer, offset) added to enable
          binary data to be dumped out to debug.
        debug_set_dump_width(width) sets the number of bytes of data per line
          of debug output.  This must be a positive integer greater than zero
          and less than 64.
        Macro out of serial port function fixed.
        Pragma declarations fixed.
        Modified CLI test program to dump buffers out and verified the widthing
          and offset work.
      Version 0.34. Tagged as 'DebugLib-0_34'
  30. 10 May, 1999 1 commit
    • John Beranek's avatar
      * Overhauled how DebugLib options are handled. Options are now held in an... · 610d78e3
      John Beranek authored
      * Overhauled how DebugLib options are handled.  Options are now held in an options structure internal to DebugLib.  Options are set one at a time by function calls, this makes it much easier to add new options over time.  debug_set_options and debug_output_device now deprecated, but still provided.  Updated StrongHelp manual to document this new behaviour.
       * Fixed trace output somewhat...should now look better on remotedb
         output (no extraneous CRs), and you can now set the trace device to
         be the same as the main debug device.  Setting trace device to "printf"
         now also works (file still to do, as you still can't "dfprintf" to file)
       * Added one of the new options function calls to the CLI_App test harness,
         to test functionality.
       * Improved the !MkCleans for the test harnesses.
      Version 0.33. Tagged as 'DebugLib-0_33'
  31. 29 Apr, 1999 1 commit
    • John Beranek's avatar
      * Added debug and MemCheck targets to DebugLib. They don't get exported, as... · 877274a7
      John Beranek authored
      * Added debug and MemCheck targets to DebugLib.  They don't get exported, as they are only for DebugLib development.  They were used to spot...
       * Found and fixed malloc block overwrite in the level checking code.  I
         was mallocing too small of a block by doing strlen on the wrong
         string.  This bug was causing problems when level filtering was used
         with apps compiled with DebugLib.
       * Tidied OS_ReadVarVal veneer.
       * Added MemCheck code and build target to CLI_App test program, which uses
         the new MemCheck target of DebugLib.
      Version 0.32. Tagged as 'DebugLib-0_32'
  32. 26 Apr, 1999 2 commits