APPENDIX

//===========================================================================

//

//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 "W627EHF.H"

#include <dos.h> //=========================================================================== unsigned int W627EHF_BASE;

void Unlock_W627EHF (void); void Lock_W627EHF (void); //=========================================================================== unsigned int Init_W627EHF(void)

{

unsigned int result; unsigned char ucDid; W627EHF_BASE = 0x2E; result = W627EHF_BASE;

ucDid = Get_W627EHF_Reg(0x20);

if (ucDid == 0x88)

 

{

goto Init_Finish;

}

W627EHF_BASE = 0x4E;

 

result = W627EHF_BASE;

 

ucDid = Get_W627EHF_Reg(0x20);

if (ucDid == 0x88)

 

{

goto Init_Finish;

}

W627EHF_BASE = 0x00;

 

result = W627EHF_BASE;

 

Init_Finish:

return (result);

}

//=========================================================================== void Unlock_W627EHF (void)

{

outportb(W627EHF_INDEX_PORT, W627EHF_UNLOCK); outportb(W627EHF_INDEX_PORT, W627EHF_UNLOCK);

}

//=========================================================================== void Lock_W627EHF (void)

{

outportb(W627EHF_INDEX_PORT, W627EHF_LOCK);

}

//=========================================================================== void Set_W627EHF_LD( unsigned char LD)

{

Unlock_W627EHF();

outportb(W627EHF_INDEX_PORT, W627EHF_REG_LD); outportb(W627EHF_DATA_PORT, LD); Lock_W627EHF();

}

2804080 User’s Manual

63

Page 67
Image 67
Intel 2804080, Duo/Solo 945GM user manual OutportbW627EHFINDEXPORT, W627EHFLOCK