using System.Runtime.InteropServices; namespace BurnOutSharp.Models.LinearExecutable { /// /// The debug information is defined by the debugger and is not controlled by /// the linear EXE format or linker. The only data defined by the linear EXE /// format relative to the debug information is it's offset in the EXE file and /// length in bytes as defined in the linear EXE header. /// /// To support multiple debuggers the first word of the debug information is a /// type field which determines the format of the debug information. /// /// /// [StructLayout(LayoutKind.Sequential)] public class DebugInformation { /// /// The signature consists of a string of three (3) ASCII characters: "NB0" /// public byte[] Signature; /// /// This defines the type of debugger data that exists in the remainder of the /// debug information. /// public DebugFormatType FormatType; // DEBUGGER DATA = Debugger specific data. // The format of the debugger data is defined by the debugger that is being used. // The values defined for the type field are not enforced by the system. It is // the responsibility of the linker or debugging tools to follow the convention // for the type field that is defined here. } }