代码拉取完成,页面将自动刷新
同步操作将从 RustSBI/010 Editor 模板 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
//------------------------------------------------
//--- 010 Editor v13.0.1 Binary Template
//
// File: d1-flash
// Authors: Mingrui Ma
// Version: 0.0.0
// Purpose:
// Category:
// File Mask:
// ID Bytes:
// History:
//------------------------------------------------
RequiresVersion( 12 );
/**** STRUCTURES ****/
struct EgonHead;
typedef struct {
uint32 jump_instruction <format=hex, comment="address of jump_instruction">;
ubyte magic[8];
uint32 checksum <format=hex, comment="checksum">;
uint32 total_length <format=hex>;
uint32 _head_size;
uint32 fel_script_address;
uint32 fel_uenv_length;
uint32 dt_name_offset;
uint32 dram_size;
uint32 boot_media;
uint32 string_pool[13];
} EgonHead;
/**** PARSING CODE ****/
LittleEndian();
EgonHead head <bgcolor=cLtPurple>;
local uint32 opcode = head.jump_instruction & 0x7f;
// 0x6f JAL opcode
if (opcode == 0x6f)
{
local uint32 imm1912 = (head.jump_instruction >> 12) & 0xff;
local uint32 imm11 = (head.jump_instruction >> 20) & 0x01;
local uint32 imm101 = (head.jump_instruction >> 21) & 0x3ff;
local uint32 imm20 = (head.jump_instruction >> 31) & 0x01;
local uint32 offset = (imm20 << 20) + (imm1912 << 12) + (imm11 << 11) + (imm101 << 1);
local quad off = FTell();
if(offset < FileSize() && head.total_length <= FileSize()) {
FSeek(offset);
ubyte code[head.total_length - offset] <comment="code",bgcolor=cLtGreen>;
} else {
Warning("code appears to either overlap with header, exist after the end of the file or overlap with the end of the file!");
}
FSeek(off);
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。