[comp.sys.ibm.pc] Interrupt 21H and function 30H

coleman@sask.UUCP (Geoff Coleman @ College of Engineering) (07/20/87)

	This weekend I was reading the Technical Reference Manual
(Volume 2) for DEC's VaxMate (no I didn't buy one of these boxes
I just borrowed the manuals). On page 16-3 They say that for function 30H
of interrupt 21H the OEM version number of MS-DOS is returned in 
register BH. They say that DEC's number is 16H and that for an IBM-PC
is 00H. 
	Does anyone out there no if this is a standard return for MS-DOS
and if so is there a list of the numbers corresponding to different
machines available?

If people would like to try this on their own machines and mail me
the results I would be happy to compile the results and post it to 
the net.



-- 
Geoff Coleman                         | BITNET: Coleman@sask
College of Engineering                | UUCP: {utcsri,ihnp4}!sask!skul!geoff
University of Saskatchewan            | Compserve: 76515,1513  just a number 
Saskatoon, Saskatchewan               | voice: (306) 966-5415

jmoore@pc.ecn.purdue.edu (James D Moore) (07/22/87)

I am not sure about dec but I have been looking at this during the last 
couple of days. According to a couple of books I have the interup 21H
and function 30H will return in AL the "major version number" and in
AH the "minor version number" (note that .1 is represented as AH). The
notable exception is that if AL contains a 0 it indicates a version of 
dos prior to the 2.0 DOS. I am not sure if the minor version of dos is
returned in this last case or not. There is one note that states that
BX and CX are destroyed by this interupt and are returned with a value
of 0. Since I have been writing a small program that will check this I
can testify that the above works. I am running MSDOS 3.10 and have 
checked my code on my IBM-XT at work running PC-DOS 3.20. Two good sources
for the above I have found to be Peter Nortons "Programmers guide to
the IBM PC" (excelent book and well written like all of his stuff) and
Robert Jourdain "Programmer's Problem Solver for the IBM PC,XT & AT"
(This book takes a different aproach and gives code in upper level 
languages then in intermediate level and then in low level code.) I
strongly reccomend the above to all users taht want to learn about the
internals.

Jim Moore
(jmoore@gb.ecn.purdue.edu)