📄 detectmem.s
字号:
;
; ExpOS
; Copyright 2003.4.14
;
;
%include "boot.inc"
;
; 提供函数 detect_ram
;
global detect_mem
[bits 16]
msg :
db "detectram.s : detect ram size ......."
db 13,10,0
errmsg :
db "detectram.s : e820 detect err"
db 13,10,0
smaperr :
db "smap err"
db 13,10,0
dot :
db "." ,0
;
; 函数 detect_ram
;
;
detect_mem:
pushf
pusha
mov di, msg
call stuprint
;ds , es--> boot para
mov ax, BTPASEG
mov ds, ax
mov es, ax
;clear
xor eax, eax
;mov eax, [0x1e0]
;获取扩展内存大小 单位 :kB
;ifndef STANDARD_MEMORY_BIOS_CALL
mov [boot_e820nr],al
; 使用三种不同的探测方式.
; 首先用 e820h, 看看能不能得到mem map.
; 然后使用 e801h,返回一个 32-bit memory size.
; 最后使用 88h, 只能返回 0-64m.
; memmap 真的是地狱来的吗
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -