无忧启动论坛
标题:
如何在GRUB4DOS环境中修改系统时间?
[打印本页]
作者:
2012cnccnc
时间:
2012-6-26 16:27
标题:
如何在GRUB4DOS环境中修改系统时间?
我想每次开机都自动改成一个固定的时间,进入系统后自动更新为正确的时间
本人是新手希望大侠们能详细说明一下使用方法,,,
关键是自动修改
看了下面这种方法不会用,,,
http://chenall.net/post/grub4dos_date_bat/
!BAT
::datefunc for grub4dos by chenall 2011-10-08
setlocal
debug off
set edi=0x60000
set esi=0x60004
set ebp=0x60008
set esp=0x6000C
set ebx=0x60010
set bx=0x60010
set edx=0x60014
set dx=0x60014
set ecx=0x60018
set cx=0x60018
set eax=0x6001C
set ax=0x6001C
set gs=0x60020
set fs=0x60024
set es=0x60028
set ds=0x6002c
set ss=0x60030
set eip=0x60034
set cs=0x60038
set eflags=0x60003c
::时钟服务(Clock Service——INT 1AH)
::04H —读取日期
call :BIOS_INT 1A ax=0x400
set date=%*
if exist date && goto :SET_DATE
call Fn.0 0 "%%04X%%04X" *%cx% *%dx% | set date=
echo -n The current date is: %date:~0,4%-%date:~4,2%-%date:~6%
set /p date=Enter the new date: (yyyy-mm-dd)
:SET_DATE 调用BIOS中断修改日期
::05H —设置日期
call :BIOS_INT 1A ax=0x500 cx=0x%date:~0,4% dx=0x%date:~5,2%%%date:~8,2%
exit
:BIOS_INT
::初始化系统参数
echo -n > (md)0x300+1
write %cs% -1
write %ss% -1
write %esp% -1
write %eflags% -1
write %ds% -1
write %es% -1
write %fs% -1
write %gs% -1
write %eip% 0xFFFF%1CD
shift 1
::设置参数
:参数
if "%2"=="" goto :realmode_run
write %%%1% %2
shift 1
shift 1
goto :参数
:realmode_run
call Fn.53 0x60000
exit
复制代码
[
本帖最后由 2012cnccnc 于 2012-6-26 16:28 编辑
]
欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/)
Powered by Discuz! X3.3