' File: tosvers.lst
'
DEFINT "a-z"
'
' Determine the version number
' and date of the
' TOS operating system in use
'
gemdosversion=GEMDOS(48)   !GEMDOS call: sversion()
gemdosdate=LPEEK(&H4F2)+24 !System pointer to TOS date
'
' Evaluating the data requested
'
PRINT
PRINT "TOS Version number            :    ";HEX$(DPEEK(LPEEK(&H4F2)+2))
PRINT "You are using GEMDOS version  :    ";
PRINT gemdosversion AND 255;
PRINT ".";
PRINT gemdosversion DIV 256
PRINT "released on the following date:    ";
GOSUB bcd(PEEK(gemdosdate))
PRINT "/";
GOSUB bcd(PEEK(gemdosdate+1))
PRINT "/";
GOSUB bcd(PEEK(gemdosdate+2))
GOSUB bcd(PEEK(gemdosdate+3))
PRINT
PRINT "in the American format (Month, Day, Year)"
END
'
' This procedure outputs a packed bcd number
' to the screen.
'
PROCEDURE bcd(byte)
  nibble=(byte DIV 16) AND 15
  PRINT CHR$(nibble+ASC("0"));
  nibble=byte AND 15
  PRINT CHR$(nibble+ASC("0"));
RETURN
