|
基本上,能够键入grub.exe,应该是文字模式环境,即使在用中文系统下,
也是文字模式,最大不会超过10k,若不嫌麻烦压缩一下,可能会在3k以下。
另外,要保存图形模式画面资料,不必真个动用内存,可调用现有的int 10h实现,
ax=1c01h是保存視訊規格,ax=1c02h是回存視訊規格。
代码大致是这样的:
SaveVid: push es
mov bx,offset VideoBuffer
mov ax,1c01h ;save Video Config
mov cx,0007h
int 10h
pop es
ret
;------------------------------------------------------------------------------
RestoreVid:
push es
mov bx,offset VideoBuffer
mov ax,1c02h ;Restore Video config
mov cx,0007h
int 10h
pop es
ret
;------------------------------------------------------------------------------
其中的VideoBuffer并不是昼面资料,是视讯規格緩衝,一般要4-10k就可以,
比文字模式更省空间,我写过类似的文字和游戏画面切换的程式,代码不复杂,
详情请参考:
http://www.ymailsoft.com/app/clu ... mation_Id=I00012942
但若回到grub4dos时又有图象显示,这会抵触和破坏了原来保存,问题挺复杂的。
不管怎样,这都会增加grub4dos的工作量,又没有逼切性,权作玩票方案好了哈。 |
|