// stdafx.cpp : source file that includes just the standard includes
//	Sample.pch will be the pre-compiled header
//	stdafx.obj will contain the pre-compiled type information

#include "stdafx.h"
#include "device.h"

#ifdef TARGET_DM9000
#include "dm9000.h"
#endif
#ifdef TARGET_DM9000A
#include "dm9000.h"
#endif
#ifdef TARGET_DM9000B
#include "dm9000.h"
#endif
#ifdef TARGET_DM9000B_3A
#include "dm9000.h"
#endif
#ifdef TARGET_DM9000C
#include "dm9000.h"
#endif
//#[ifdef TARGET_DM9000D || TARGET_DM9000D_3A || TARGET_DM9000D_3K]
#ifdef TARGET_DM9000D
#include "dm9000.h"
#endif
#ifdef TARGET_DM9000D_3A
#include "dm9000.h"
#endif
#ifdef TARGET_DM9000D_3K
#include "dm9000.h"
#endif

#ifdef TARGET_DM9013
#include "dm9013.h"
#endif

#ifdef TARGET_DM9102
#include "dm9102.h"
#endif

#ifdef TARGET_DM9103
#include "dm9103.h"
#endif

#ifdef TARGET_DM9601
#include "dm9601.h"
#endif

// TODO: reference any additional headers you need in STDAFX.H
// and not in this file


/*****************************************************************
 *
 * Device Entry
 *
 *****************************************************************/

extern "C" NIC_DEVICE_OBJECT *DeviceEntry(NIC_DRIVER_OBJECT *pDriverObject, PVOID pVoid)
{
	DEBUG_PRINTF(_T("=== Davicom (_DeviceEntry.) \r\n"));
#ifdef TARGET_DM9000
	return new DM9000(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9000A
	return new DM9000(pDriverObject,pVoid);
#endif

//#[ifdef TARGET_DM9000B || TARGET_DM9000B_3A]
#ifdef TARGET_DM9000B
	return new DM9000(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9000B_3A
	return new DM9000(pDriverObject,pVoid);
#endif

#ifdef TARGET_DM9000C
	return new DM9000(pDriverObject,pVoid);
#endif
//#[ifdef TARGET_DM9000D || TARGET_DM9000D_3A || TARGET_DM9000D_3K]
#ifdef TARGET_DM9000D
	return new DM9000(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9000D_3A
	return new DM9000(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9000D_3K
	return new DM9000(pDriverObject,pVoid);
#endif

#ifdef TARGET_DM9000E
	return new DM9000(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9013
	return new DM9013(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9102
	return new DM9102(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9103
	return new DM9103(pDriverObject,pVoid);
#endif
#ifdef TARGET_DM9601
	return new DM9601(pDriverObject,pVoid);
#endif
	return NULL;
}
