APPENDIX
MB740 User’s Manual 57
outportb(ITE8705_INDEX_PORT, ITE8705_UNLOCK2);
outportb(ITE8705_INDEX_PORT, ITE8705_UNLOCK3);
if (ITE8705_BASE == 0x2E)
outportb(ITE8705_INDEX_PORT, ITE8705_UNLOCK3);
else
outportb(ITE8705_INDEX_PORT, ITE8705_UNLOCK4);
}
//============================================================
void Lock_ITE8705 (void)
{
outportb(ITE8705_INDEX_PORT, ITE8705_LOCK);
}
//============================================================
void Set_ITE8705_LD( unsigned char LD)
{
Unlock_ITE8705();
outportb(ITE8705_INDEX_PORT, ITE8705_REG_LD);
outportb(ITE8705_DATA_PORT, LD);
Lock_ITE8705();
}
//============================================================
void Set_ITE8705_Reg( unsigned char REG, unsigned char DATA)
{
Unlock_ITE8705();
outportb(ITE8705_INDEX_PORT, REG);
outportb(ITE8705_DATA_PORT, DATA);
Lock_ITE8705();
}
//============================================================
unsigned char Get_ITE8705_Reg(unsigned char REG)
{
unsigned char Result;
Unlock_ITE8705();
outportb(ITE8705_INDEX_PORT, REG);
Result = inportb(ITE8705_DATA_PORT);
Lock_ITE8705();
return Result;
}
//====================================================
========
File name: ITE8705.H
//============================================================
// 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.
//
//============================================================
#ifndef __ITE8705_H
#define __ITE8705_H 1
//============================================================
#define ITE8705_INDEX_PORT (ITE8705_BASE)
#define ITE8705_DATA_PORT (ITE8705_BASE+1)
//============================================================
#define ITE8705_REG_LD 0x07
//============================================================
#define ITE8705_IO_PORT 0x0803
//============================================================
#define ITE8705_UNLOCK1 0x87
#define ITE8705_UNLOCK2 0x01