	
	
	command.SCL = SCL;
	command.SI = SI;
	command.CS = CS;
	command.DC = DC;
	command =
	#include "command.txt"
	
	
	//---------------------------------------------------
	//[i] function_void OS_init;
	public void OS_init()
	{
		command.OS_init();
		BackData = 0x00;
		ClearData = 0x00;
		Clear();
	}
	//---------------------------------------------------
	//[i] function_void Clear;
	void Clear()
	{
		uint8 line = 0;
		loop( 8 ) {
			
			command.write_command( 0xB0 + line );
			command.write_command( 0x00 );
			command.write_command( 0x10 );
			line + 1;
			loop( 128 ) {
				command.write_data( ClearData );
			}
		}
		//for( int16 i = 0; i < BUFFER_NUMBER; i + 1 ) {
		//	buffer[i] = ClearData;
		//}
	}
	//---------------------------------------------------
	//[i] function_void set_pos int16 int16;
	void set_pos( int16 l, int16 a )
	{
		Line = l;
		area = a;
		if( area < 0 || area >= AreaNumber || Line < 0 || Line >= ColumnNumber ) return;
		
		command.write_command( 0xB0 + (uint8)(uint)area );
		command.write_command( 0x10 | ((uint8)(uint)Line >> 4) );
		command.write_command( (uint8)(uint)Line & 0x0F );
		//command.write_data( d );
		
		//buffer[area*LineNumber + Line] = d.0(uint8);
	}
	
	//---------------------------------------------------
	//[i] function_void set_uint8 uint8;
	void set_uint8( uint8 d )
	{
		if( area < 0 || area >= AreaNumber || Line < 0 || Line >= ColumnNumber ) return;
		Line + 1;
		command.write_data( d );
	}
	
	//---------------------------------------------------
	//[i] function_uint8 get_uint8;
	uint8 get_uint8()
	{
		return 0x00;
		
		
		//if( area < 0 || area >= AreaNumber || Line < 0 || Line >= LineNumber ) return BackData;
		
		
		//return buffer[area*LineNumber + Line];
		
		
		
//		//оƬжȡ
//		command.write_command( 0xB0 + (uint8)(uint)area );
//		command.write_command( 0x10 | ((uint8)(uint)Line >> 4) );
//		command.write_command( (uint8)(uint)Line & 0x0F );
		
//		//2013.3.21
//		//My God! һҪնһݲ, ݻƫһֽڵַ...
//		uint8 d = command.read_data();
		
//		return command.read_data();
	}
	
	