![background image](http://html1.mh-extra.com/html/ibase-technology/ib895/ib895_user-manual_3247899052.webp)
APPENDIX
48
IB895 User’s Manual
File of the W627UHG.CPP
//---------------------------------------------------------------------------
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE.
//
//---------------------------------------------------------------------------
#include "W627UHG.H"
#include <dos.h>
//---------------------------------------------------------------------------
unsigned int W627UHG_BASE;
void Unlock_W627UHG (void);
void Lock_W627UHG (void);
//---------------------------------------------------------------------------
unsigned int Init_W627UHG(void)
{
unsigned int result;
unsigned char ucDid;
W627UHG_BASE = 0x4E;
result = W627UHG_BASE;
ucDid = Get_W627UHG_Reg(0x20);
if
(ucDid
==
0xA2) //W83627UHG??
{
goto
Init_Finish;
}
W627UHG_BASE = 0x2E;
result = W627UHG_BASE;
ucDid = Get_W627UHG_Reg(0x20);
if
(ucDid
==
0xA2) //W83627UHG??
{
goto
Init_Finish;
}
W627UHG_BASE = 0x00;
result = W627UHG_BASE;
Init_Finish:
return
(result);
}
//---------------------------------------------------------------------------
void Unlock_W627UHG (void)
{
outportb(W627UHG_INDEX_PORT, W627UHG_UNLOCK);
outportb(W627UHG_INDEX_PORT, W627UHG_UNLOCK);
}
//---------------------------------------------------------------------------
void Lock_W627UHG (void)
{
outportb(W627UHG_INDEX_PORT, W627UHG_LOCK);
}
//---------------------------------------------------------------------------
void Set_W627UHG_LD( unsigned char LD)