Date: Sat, 11 Aug 2001 06:23:14 -0700 From: Igor Serikov <bt@turtle.pangeatech.com> To: FreeBSD Hackers <freebsd-hackers@FreeBSD.ORG>, FreeBSD Bugs <freebsd-bugs@FreeBSD.ORG> Subject: bios timecounter in doscmd Message-ID: <3B7531C2.479A7AC4@turtle.pangeatech.com>
next in thread | raw e-mail | index | archive | help
Hello, As I found, I have overlooked a routine updating bios 0x6c & 0x70 fields. It is in function video_update (module tty.c): *(u_long *)&BIOSDATA[0x6c] += 1; /* Timer ticks since midnight... */ while (*(u_long *)&BIOSDATA[0x6c] >= 24*60*6*182) { *(u_long *)&BIOSDATA[0x6c] -= 24*60*6*182; BIOSDATA[0x70]++; /* BIOSDATA[0x70] # times p> } The problem with this code is that it works only "if (!booting)". I do not see the reason for such a restriction. I would suggest to move it to int08 routine in timer.c in replacement to what is suggested in my previous message, since this this routine also increments field 0x70. Thanks, Igor. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B7531C2.479A7AC4>