⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsk_type.c

📁 [随书类]Dos6.0源代码
💻 C
字号:
/***************************************************************************/
/*																									*/
/*	DSK_TYPE.C																					*/
/*																									*/
/*		Copyright (c) 1991 - Microsoft Corp.											*/
/*		All rights reserved.																	*/
/*		Microsoft Confidential																*/
/*                                                                         */
/* Returns the type of diskette in the specied floppy drive.					*/
/*																									*/
/*	int GetDisketteType( int Drv )														*/
/*																									*/
/*	ARGUMENTS:	Drv		- Drive letter to check										*/
/* RETURNS:		int		- Type of diskette											*/
/*								  1 == 360K														*/
/*								  2 == 720K														*/
/*								  3 == 1.2M														*/
/*								  4 == 1.44M													*/
/***************************************************************************/

#include		<stdio.h>
#include		<dos.h>

int GetDisketteType( int Drv )
{
	static long				lSize[] = { 0, 370000L, 740000L, 1300000L };
	register 				i;
	struct diskfree_t		Drive;
	long						lBytes;

	if ( _dos_getdiskfree( (unsigned)Drv - 0x40, &Drive ) != 0 )
		return( 0 );
	lBytes = (long)Drive.total_clusters *
				(long)(Drive.bytes_per_sector * Drive.sectors_per_cluster);

	for ( i = 1; i < (sizeof( lSize  ) / sizeof( long )); i++ )
		if ( lBytes < lSize[ i ] )
			break;

	return( i );
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -