Beispiel #1
0
        public static string[] GetModuleSections(int n)
        {
            IXboxModule   mod    = jtag.DebugTarget.Modules[n];
            List <string> result = new List <string>();

            foreach (IXboxSection sec in mod.Sections)
            {
                StringBuilder     sb    = new StringBuilder();
                XBOX_SECTION_INFO info  = sec.SectionInfo;
                string            flags = "";
                if ((info.Flags & XboxSectionInfoFlags.Executable) != 0)
                {
                    flags += "Executable ";
                }
                if ((info.Flags & XboxSectionInfoFlags.Loaded) != 0)
                {
                    flags += "Loaded ";
                }
                if ((info.Flags & XboxSectionInfoFlags.Readable) != 0)
                {
                    flags += "Readable ";
                }
                if ((info.Flags & XboxSectionInfoFlags.Uninitialized) != 0)
                {
                    flags += "Uninitialized ";
                }
                if ((info.Flags & XboxSectionInfoFlags.Writeable) != 0)
                {
                    flags += "Writeable ";
                }
                sb.AppendFormat("Section {0}: BaseAddress=0x{2} Size=0x{3} \"{1}\" Flags={4}", info.Index, info.Name, info.BaseAddress.ToString("X8"), info.Size.ToString("X8"), flags);
                result.Add(sb.ToString());
            }
            return(result.ToArray());
        }
Beispiel #2
0
        public static uint GetModuleEntryPoint(int n)
        {
            IXboxModule mod = jtag.DebugTarget.Modules[n];

            return(mod.GetEntryPointAddress());
        }
Beispiel #3
0
        public static uint GetModuleBaseAddress(int n)
        {
            IXboxModule mod = jtag.DebugTarget.Modules[n];

            return(mod.ModuleInfo.BaseAddress);
        }