
{******************************************************}
{*     Routinen um das BIOS-Datum abzufragen          *}
{*  Die Routinen mssen noch in Programme eingebaut   *}
{*        werden, damit sie funktionieren!            *}
{******************************************************}

PROGRAM BIOSDate;
{Fragt nach dem BIOS-Datum im Real-Mode}
VAR
 DateStr : ARRAY[0..5] OF CHAR ABSOLUTE $FFFF:$0005;
BEGIN
 WriteLn('Das BIOS-Datum ist ', DateStr, '.');
END.

{Das  ganze geht auch noch etwas "Servicereicher", n„mlich auch im
Protected Mode mit folgendem Listing:}

FUNCTION GetBiosDate : STRING; ASSEMBLER;
ASM
  push ds
{$IFDEF DPMI}  { Funzt auch im DPMI }
  mov ax,2
  mov bx,0FFFFh
  int 31h
{$ELSE}
  mov ax,0FFFFh
{$ENDIF}
  mov ds,ax
  mov si,5h
  les di,@Result
  cld
  mov ax,8h
  stosb
  mov cx,ax
  shr cx,1
  rep movsw
  pop ds
END;

BEGIN
 WriteLn('BIOS-Datum ',GetBiosDate);
END.

