diff --git a/VKernel/Kernel/main.vp b/VKernel/Kernel/main.vp index df5894f..a7d8ed5 100644 --- a/VKernel/Kernel/main.vp +++ b/VKernel/Kernel/main.vp @@ -142,6 +142,18 @@ class ViperKernel: t.CUInt64T(BootInfo), BootInfo.MemmapAddr, BootInfo.MemmapSize, BootInfo.MemmapDescSize, BootInfo.framebuffer_addr) serial.puts(c.Addr(_dbbuf)) + # [DBG] 转储 BootInfo 地址处原始 88 字节(用后移除) + _dbraw: t.CArray[t.CChar, 16] + _dbi: t.CInt = 0 + while _dbi < 88: + if (_dbi % 16) == 0: + viperlib.snprintf(c.Addr(_dbraw), 16, "\n[DB] %04x:", _dbi) + serial.puts(c.Addr(_dbraw)) + _dbv: t.CUInt8T = c.Deref(t.CUInt8T(t.CUInt64T(BootInfo) + t.CUInt64T(_dbi), t.CPtr)) + viperlib.snprintf(c.Addr(_dbraw), 16, " %02x", _dbv) + serial.puts(c.Addr(_dbraw)) + _dbi += 1 + serial.puts("\n[DB] dump end\n") if BootInfo is not None: paging.init(BootInfo.MemmapAddr, BootInfo.MemmapSize)