|
|
1.1 root 1: /*
2: Copyright (c) 2008 TrueCrypt Foundation. All rights reserved.
3:
4: Governed by the TrueCrypt License 2.4 the full text of which is contained
5: in the file License.txt included in TrueCrypt binary and source code
6: distribution packages.
7: */
8:
9: #ifndef TC_HEADER_Boot_BootDebug
10: #define TC_HEADER_Boot_BootDebug
11:
12: #include "Platform.h"
13: #include "BootConsoleIo.h"
14:
1.1.1.2 ! root 15: #if 0
! 16: # define TC_BOOT_DEBUG_ENABLED
! 17: #endif
1.1 root 18:
1.1.1.2 ! root 19: #if 0 || defined (TC_BOOT_DEBUG_ENABLED)
! 20: # define TC_BOOT_STACK_CHECKING_ENABLED
! 21: extern "C" void CheckStack ();
! 22: #else
! 23: # define CheckStack()
1.1 root 24: #endif
25:
1.1.1.2 ! root 26: #if 0
! 27: # define TC_BOOT_TRACING_ENABLED
1.1 root 28: # if 1
29: # define TC_TRACE_INT13
30: # endif
31: # if 1
32: # define TC_TRACE_INT15
33: # endif
34: #endif
35:
36:
37: #define trace_point do { Print(__FILE__); PrintChar (':'); Print (TC_TO_STRING (__LINE__)); PrintEndl(); } while (false)
38: #define trace_val(VAL) PrintVal (#VAL, VAL);
39: #define trace_hex(VAL) do { Print (#VAL), PrintChar (':'); PrintHex (VAL); PrintEndl(); } while (false)
40: #define assert(COND) do { if (!(COND)) { trace_point; __asm jmp $ } } while (false)
41:
42: void InitDebugPort ();
1.1.1.2 ! root 43: void InitStackChecker ();
1.1 root 44: void WriteDebugPort (byte dataByte);
45: void PrintHexDump (byte *mem, size_t size, uint16 *memSegment = nullptr);
46: void PrintHexDump (uint16 memSegment, uint16 memOffset, size_t size);
47: void PrintVal (const char *message, const uint32 value, bool newLine = true, bool hex = false);
48: void PrintVal (const char *message, const uint64 &value, bool newLine = true, bool hex = false);
49:
1.1.1.2 ! root 50: #endif // TC_HEADER_Boot_BootDebug
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.