コード例 #1
0
/* This	function sets the configurations of the	bitmap window. */
int vpbe_bitmap_get_params(u8 * id, struct vpbe_bitmap_config_params *required)
{
	int result = 0;

	if (is_win(id, VID0) || is_win(id, VID1))
		return -VPBE_WRONG_WINDOW_ID;

	if (is_win(id, OSD0)) {
		required->attenuation_enable =
		    dm->osd0->conf_params.bitmap_params.attenuation_enable;
		required->clut_idx =
		    dm->osd0->conf_params.bitmap_params.clut_idx;
		required->clut_select =
		    dm->osd0->conf_params.bitmap_params.clut_select;
	} else {
		required->attenuation_enable =
		    dm->osd1->conf_params.bitmap_params.attenuation_enable;
		required->clut_idx =
		    dm->osd1->conf_params.bitmap_params.clut_idx;
		required->clut_select =
		    dm->osd1->conf_params.bitmap_params.clut_select;
	}

	return result;
}
コード例 #2
0
/* This	function sets the cb-cr	order in the pixel data	for video windows. */
int vpbe_set_vid_params(u8 * id, vpbe_video_config_params_t * required)
{
	int result = 0;

	/* Validate id. Return negative in case of error. */
	if (!is_win(id, VID0) && !is_win(id, VID1))
		return -VPBE_WRONG_WINDOW_ID;

	if (is_win(id, VID0)) {
		dispc_reg_merge(OSD_MODE,
				required->cb_cr_order << OSD_MODE_CS_SHIFT,
				OSD_MODE_CS);
		vpbe_set_vid_expansion(&required->exp_info);
		dm->vid0->conf_params.video_params.cb_cr_order =
		    required->cb_cr_order;
		dm->vid0->conf_params.video_params.exp_info =
		    required->exp_info;
	} else {
		dispc_reg_merge(OSD_MODE,
				required->cb_cr_order << OSD_MODE_CS_SHIFT,
				OSD_MODE_CS);
		dm->vid1->conf_params.video_params.cb_cr_order =
		    required->cb_cr_order;
	}

	return result;
}
コード例 #3
0
ファイル: game_logic.cpp プロジェクト: AlexiaChen/ConnectFive
bool run_game(){

	mouse_msg msg = {0};

	gen_pos(pos);

	while(mousemsg()){
		msg = getmouse();

		if(msg.is_down() && get_current_status() == C_BLACK_S ){

			C_POS c_pos;
			int board_x,board_y;
			
			get_right_pos(msg.x,msg.y,&board_x,&board_y);

			c_pos.x = pos[board_x][board_y].x;
			c_pos.y = pos[board_x][board_y].y;

			draw_chess(&c_pos,BLACK);
			update_board_status(board_x,board_y,C_BLACK);
			if(is_win(board_x,board_y,C_BLACK)) xyprintf(480,120,black_win);
            
			update_status(white_status);
		}

		else if(msg.is_down() && get_current_status() == C_WHITE_S){
			C_POS c_pos;

			int board_x,board_y;

			get_right_pos(msg.x,msg.y,&board_x,&board_y);
			c_pos.x = pos[board_x][board_y].x;
			c_pos.y = pos[board_x][board_y].y;

			draw_chess(&c_pos,WHITE);
			update_board_status(board_x,board_y,C_WHITE);
			if(is_win(board_x,board_y,C_WHITE)) xyprintf(480,120,white_win);

			update_status(black_status);
		}


	}


	return true;
}
コード例 #4
0
ファイル: ft_match.c プロジェクト: atipex/Projets
void	ft_match(t_tab *obj, int i)
{
	int			count;

	count = 0;
	while (aff_tab(glob_obj(0)->tab), !obj->end && count < ft_mult(obj))
	{
		if (!is_win(obj))
		{
			if (!obj->player)
			{
				ft_putendl("YOUR TURN");
				i = real_player(obj);
			}
			else
			{
				ft_putendl("COMPUTER TURN");
				i = ia_turn(glob_obj(0)->tab);
			}
			if (check_col(i) == 0)
			{
				ins_col(i);
				obj->count_max--;
			}
		}
		else
			break ;
	}
}
コード例 #5
0
ファイル: i512_2.c プロジェクト: chocht/2048
int			algo(t_data *data)
{
  if (data->key_func[data->index])
    data->key_func[data->index](data->key);
  if (play(data->grid, data->key) == 0)
    {
      data->key = -1;
      return (0);
    }
  del_rest_of_the_list(data);
  if (add_list(&data->list, data->grid))
    return (1);
  data->current = data->current->next;
  add_random(data->grid);
  blit_this(data);
  if (is_win(data->grid))
    {
      data->play = 0;
      return (0);
    }
  else if (is_lost(data->grid))
    {
      data->play = 0;
      return (0);
    }
  data->key = -1;
  return (0);
}
コード例 #6
0
int play_game(int player, char map[][WIDTH])
{
    int x, y;
    scanf("%d,%d", &x, &y);
    if (x < 0 || y < 0 || x > HIGHT || y > WIDTH)
    {
        printf("error!\n");
        return 0;
    }
    x--;
    y--;
    if (map[x][y] == '+')
    {
        if (player == WHITE)
        {
            map[x][y] = '@';
        }
        if (player == BLACK)
        {
            map[x][y] = 'O';
        }
    }
    else
    {
        printf("error!\n");
        return 0;
    }
    if (is_win(player, map))

    {
        return WIN;
    }
    return 1;
}
コード例 #7
0
/* This	function gives video windows cb-cr order in the pixel data. */
int vpbe_get_vid_params(u8 * id, vpbe_video_config_params_t * current_conf)
{
	int result = 0;
	if (is_win(id, OSD0) || is_win(id, OSD1))
		return -VPBE_WRONG_WINDOW_ID;

	if (is_win(id, VID0)) {
		current_conf->cb_cr_order =
		    dm->vid0->conf_params.video_params.cb_cr_order;
		current_conf->exp_info.horizontal =
		    dm->vid0->conf_params.video_params.exp_info.horizontal;
		current_conf->exp_info.vertical =
		    dm->vid0->conf_params.video_params.exp_info.vertical;
	} else
		current_conf->cb_cr_order =
		    dm->vid1->conf_params.video_params.cb_cr_order;

	return result;
}
コード例 #8
0
/* This	is used	for setting the	blend factor for the bitmap window.*/
int
vpbe_bitmap_set_blend_factor(u8 * id, vpbe_bitmap_blend_params_t * blend_para)
{
	int result = 0;

	/* If function call is not for OSD window, return error */
	if (!is_win(id, OSD0) && !is_win(id, OSD1))
		return -VPBE_WRONG_WINDOW_ID;

	/* Error checkingfor parameter passed */
	if ((blend_para->enable_colorkeying > VPBE_ENABLE)
	    || (blend_para->bf > 7) || (blend_para->colorkey > 0xFFFF))
		return -VPBE_WRONG_WINDOW_ID;

	if (is_win(id, OSD0)) {
		dispc_reg_merge(OSD_OSDWIN0MD,
				(blend_para->
				 enable_colorkeying) <<
				OSD_OSDWIN0MD_TE0_SHIFT, OSD_OSDWIN0MD_TE0);
		dispc_reg_merge(OSD_OSDWIN0MD,
				(blend_para->
				 bf) << OSD_OSDWIN0MD_BLND0_SHIFT,
				OSD_OSDWIN0MD_BLND0);
		dm->osd0->conf_params.bitmap_params.blend_info = *blend_para;
	} else {
		dispc_reg_merge(OSD_OSDWIN1MD,
				(blend_para->
				 enable_colorkeying) <<
				OSD_OSDWIN1MD_TE1_SHIFT, OSD_OSDWIN1MD_TE1);
		dispc_reg_merge(OSD_OSDWIN1MD,
				(blend_para->
				 bf) << OSD_OSDWIN1MD_BLND1_SHIFT,
				OSD_OSDWIN1MD_BLND1);
		dm->osd1->conf_params.bitmap_params.blend_info = *blend_para;
	}
	dispc_reg_merge(OSD_TRANSPVA,
			(blend_para->
			 colorkey) << OSD_TRANSPVA_RGBTRANS_SHIFT,
			OSD_TRANSPVA_RGBTRANS);

	return result;
}
コード例 #9
0
/* This	function is used to get	the OSD	window 0 blinking params.*/
int vpbe_get_blinking(u8 * id, vpbe_blink_option_t * current_conf)
{
	int result = 0;

	if (!is_win(id, OSD1)) {
		return -VPBE_WRONG_WINDOW_ID;
	}
	*current_conf = dm->osd1->conf_params.bitmap_params.blink_info;

	return result;
}
コード例 #10
0
ファイル: tictac.c プロジェクト: john-yan/OS161
/*
 * do_move
 * Processes one player move.  The player enters a row and column
 * and we have to determine if the square is valid (on the board)
 * and that there is no mark already there.  We continue to ask
 * for row/column pairs until we receive a valid combination.
 * Then we mark the board, check for a win, and return.
 *
 * Input
 *	player		Indicates which player (1 or 2) is moving
 * Output
 *	TRUE if this move won the game.
 *	FALSE if this move did not win the game.
 * Error
 *	None
 */
bool
do_move(int player)
{
	int x, y;
	bool first;
	char answer[MAXSTRING];
	char cx;

	first = TRUE;
	printf("Player %d (%c), your move\n", player, 
	       player == X_PLAYER ? 'X' : 'O');
	
	while (TRUE) {
		printf("Which row [0-%d]: ", DIM-1);
		if (read_string(answer, MAXSTRING) < 0)
			return(FALSE);
		// sscanf(answer, "%d", &x);
        cx = answer[0];
		x = cx - '0';
		if (x < 0 || x >= DIM) {
			printf("Invalid row; must be >= 0 and < %d\n", DIM-1);
			continue;
		}
		printf("Which column [0-%d]: ", DIM-1);
		if (read_string(answer, MAXSTRING) < 0)
			return(FALSE);
		cx = answer[0];
        // sscanf(answer, "%d", &y);
		y = cx - '0';
		if (y < 0 || y >= DIM) {
			printf("Invalid column; must be >= 0 and < %d\n",
				DIM-1);
			continue;
		}

		if (board[x][y] != EMPTY) {
			printf("That location is occupied; please try again\n");
			print_board();
		} else
			break;
	}
	board[x][y] = player == X_PLAYER ? X_MARKER : O_MARKER;

	return(is_win(x, y));

}
コード例 #11
0
ファイル: move.cpp プロジェクト: brthiess/miowy
void show_winners(struct Board B, int st, bool useMiai) { 
  int MP[TotalCells]; int MPsize;
  printf("  %c next-move winners\n",emit(st));
  for (int r=0; r<N; r++) {
    for (int k=0; k<r; k++) printf("  ");
    for (int c=0; c<N-r; c++) {
      int lcn = fatten(r,c);
      Move mv(st,lcn);
      if ((B.board[lcn]==EMP)&&(is_win(B,mv,useMiai,MP,MPsize,false))) 
        printf(" *  ");
      else
        printf(" .  ");
    }
    printf("\n");
  }
  printf("\n");
}
コード例 #12
0
/* Set the OSD window 0 blinking and  blink interval. */
int vpbe_set_blinking(u8 * id, vpbe_blink_option_t * required)
{
	int result = 0;

	if (!is_win(id, OSD1)) {
		return -VPBE_WRONG_WINDOW_ID;
	}
	if ((required->blinking > VPBE_ENABLE) || (required->interval > 3))
		return -VPBE_INVALID_PARA_VALUE;

	dispc_reg_merge(OSD_OSDATRMD, required->blinking, OSD_OSDATRMD_BLNK);
	dispc_reg_merge(OSD_OSDATRMD,
			required->interval << OSD_OSDATRMD_BLNKINT_SHIFT,
			OSD_OSDATRMD_BLNKINT);

	dm->osd1->conf_params.bitmap_params.blink_info = *required;

	return result;
}
コード例 #13
0
ファイル: state.c プロジェクト: lleooell/N-Puzzle
void	verif_state(t_sys *sys, t_state *state)
{
	t_list	*trav;

	trav = sys->open;
	while (trav)
	{
		if (is_win(state, trav->state->tab))
		{
			if (state->move_cost >= trav->state->move_cost)
				return ;
			else
			{
				extract(&(sys->open), trav);
				insert(&(sys->open), state);
				return ;
			}
		}
		else
			trav = trav->next;
	}
	verif_state2(sys, state, trav);
	insert(&(sys->open), state);
}
コード例 #14
0
ファイル: 8_puzzle.c プロジェクト: cforth/codefarm
int main( void )
{
	int i, j, c;
	unsigned long step;
	char matrix[MAX][MAX];
	char class;

	/*初始化随机数发生器、matrix矩阵、Site结构体*/
	srand((unsigned)time(0));
	Point Site;
	
	/*初始化矩阵matrix,填入顺序的数字标号*/
	printf("I'm initializing...\n");

	for(i = 0, class = CLASS; i < MAX; i++)
		for(j = 0; j < MAX; j++, class++)
			matrix[i][j]= class;
	matrix[MAX - 1][MAX - 1] = ' ';

	/*随机移动矩阵matrix中的数字标号,作为游戏起始状态*/
	for(step = 0; step < MAX_STEP; step++) {
		c = roll(4);
		Site = find_point( &matrix[0] );
		switch(c) {
		case 0:
			if((Site.y + 1) < MAX) {
				matrix[Site.x][Site.y] = matrix[Site.x][Site.y + 1];
				matrix[Site.x][Site.y + 1] = ' ';
			} break;
		case 1:
			if((Site.y - 1) >= 0) {
				matrix[Site.x][Site.y] = matrix[Site.x][Site.y - 1];
				matrix[Site.x][Site.y - 1] = ' ';
			} break;
		case 2:
			if((Site.x - 1) >= 0) {
				matrix[Site.x][Site.y] = matrix[Site.x - 1][Site.y];
				matrix[Site.x - 1][Site.y] = ' ';
			} break;
		case 3:
			if((Site.x + 1) < MAX) {
				matrix[Site.x][Site.y] = matrix[Site.x + 1][Site.y];
				matrix[Site.x + 1][Site.y] = ' ';
			} break;
		}		
	}
	printf_matrix( &matrix[0] );
	printf("I'm working...\n");

	/*游戏部分,从键盘接收命令,执行相应的动作,并打印出矩阵*/
	for(step = 0; is_win(&matrix[0]) != 1; step++) {
		c = my_getch();
		Site = find_point( &matrix[0] );
		switch(c) {
		case 'a':
			if((Site.y + 1) < MAX) {
				matrix[Site.x][Site.y] = matrix[Site.x][Site.y + 1];
				matrix[Site.x][Site.y + 1] = ' ';
			} break;
		case 'd':
			if((Site.y - 1) >= 0) {
				matrix[Site.x][Site.y] = matrix[Site.x][Site.y - 1];
				matrix[Site.x][Site.y - 1] = ' ';
			} break;
		case 's':
			if((Site.x - 1) >= 0) {
				matrix[Site.x][Site.y] = matrix[Site.x - 1][Site.y];
				matrix[Site.x - 1][Site.y] = ' ';
			} break;
		case 'w':
			if((Site.x + 1) < MAX) {
				matrix[Site.x][Site.y] = matrix[Site.x + 1][Site.y];
				matrix[Site.x + 1][Site.y] = ' ';
			} break;
		case 'Q':
			printf("Used %lu steps.\n", step);
			exit(0);
		}		
        system("clear");
		printf_matrix( &matrix[0] );
	    printf("Used %lu steps.\n", step);
	}

	/*打印出总共执行的步数step*/
    system("clear");
	printf_matrix( &matrix[0] );
	printf("I win!\n");
	printf("Used %lu steps.\n", step);
	return 0;
}
コード例 #15
0
/* This	function sets the configurations of the	bitmap window. */
int vpbe_bitmap_set_params(u8 * id, struct vpbe_bitmap_config_params *required)
{
	int result = 0;

	if (is_win(id, VID0) || is_win(id, VID1))
		return -VPBE_WRONG_WINDOW_ID;

	if (required->clut_select > 2)
		return -VPBE_INVALID_PARA_VALUE;

	if (is_win(id, OSD0)) {
		if (((dm->osd1->conf_params.bitmap_params.clut_select == SET_1)
		     && (required->clut_select == SET_0))
		    ||
		    ((dm->osd1->conf_params.bitmap_params.clut_select == SET_0)
		     && (required->clut_select == SET_1)))
			return -VPBE_INVALID_PARA_VALUE;
	} else {
		if (((dm->osd0->conf_params.bitmap_params.clut_select == SET_1)
		     && (required->clut_select == SET_0))
		    ||
		    ((dm->osd0->conf_params.bitmap_params.clut_select == SET_0)
		     && (required->clut_select == SET_1)))
			return -VPBE_INVALID_PARA_VALUE;
	}
	if (is_win(id, OSD0)) {
		if (required->clut_select == 2) {	/* RAM CLUT */
			dispc_reg_merge(OSD_OSDWIN0MD,
					SET_1 << OSD_OSDWIN0MD_CLUTS0_SHIFT,
					OSD_OSDWIN0MD_CLUTS0);
		} else if (required->clut_select == 1) {	/* ROM1 CLUT */
			dispc_reg_merge(OSD_OSDWIN0MD,
					SET_0 << OSD_OSDWIN0MD_CLUTS0_SHIFT,
					OSD_OSDWIN0MD_CLUTS0);
			dispc_reg_merge(OSD_MISCCT,
					SET_1 << OSD_MISCCT_RSEL_SHIFT,
					OSD_MISCCT_RSEL);
		} else {	/* ROM0 CLUT */
			dispc_reg_merge(OSD_OSDWIN0MD,
					SET_0 << OSD_OSDWIN0MD_CLUTS0_SHIFT,
					OSD_OSDWIN1MD_CLUTS0);
			dispc_reg_merge(OSD_MISCCT,
					SET_0 << OSD_MISCCT_RSEL_SHIFT,
					OSD_MISCCT_RSEL);
		}
		dispc_reg_merge(OSD_OSDWIN0MD,
				required->
				attenuation_enable << OSD_OSDWIN0MD_ATN0E_SHIFT,
				OSD_OSDWIN0MD_ATN0E);
		if ((dm->osd0->info.var.bits_per_pixel == VPBE_BITMAP_BIT_1)
		    || (dm->osd0->info.var.bits_per_pixel == VPBE_BITMAP_BIT_2)
		    || (dm->osd0->info.var.bits_per_pixel == VPBE_BITMAP_BIT_4)) {
			dispc_reg_merge(OSD_W0BMP01,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_0 <<
					OSD_W0BMP01_PAL00_SHIFT,
					OSD_W0BMP01_PAL00);
			dispc_reg_merge(OSD_W0BMP01,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_1 <<
					OSD_W0BMP01_PAL01_SHIFT,
					OSD_W0BMP01_PAL01);
			dispc_reg_merge(OSD_W0BMP23,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_2 <<
					OSD_W0BMP23_PAL02_SHIFT,
					OSD_W0BMP23_PAL02);
			dispc_reg_merge(OSD_W0BMP23,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_3 <<
					OSD_W0BMP23_PAL03_SHIFT,
					OSD_W0BMP23_PAL03);
			dispc_reg_merge(OSD_W0BMP45,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_4 <<
					OSD_W0BMP45_PAL04_SHIFT,
					OSD_W0BMP45_PAL04);
			dispc_reg_merge(OSD_W0BMP45,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_5 <<
					OSD_W0BMP45_PAL05_SHIFT,
					OSD_W0BMP45_PAL05);
			dispc_reg_merge(OSD_W0BMP67,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_6 <<
					OSD_W0BMP67_PAL06_SHIFT,
					OSD_W0BMP67_PAL06);
			dispc_reg_merge(OSD_W0BMP67,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_7 <<
					OSD_W0BMP67_PAL07_SHIFT,
					OSD_W0BMP67_PAL07);
			dispc_reg_merge(OSD_W0BMP89,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_8 <<
					OSD_W0BMP89_PAL08_SHIFT,
					OSD_W0BMP89_PAL08);
			dispc_reg_merge(OSD_W0BMP89,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_9 <<
					OSD_W0BMP89_PAL09_SHIFT,
					OSD_W0BMP89_PAL09);
			dispc_reg_merge(OSD_W0BMPAB,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_10 <<
					OSD_W0BMPAB_PAL10_SHIFT,
					OSD_W0BMPAB_PAL10);
			dispc_reg_merge(OSD_W0BMPAB,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_11 <<
					OSD_W0BMPAB_PAL11_SHIFT,
					OSD_W0BMPAB_PAL11);
			dispc_reg_merge(OSD_W0BMPCD,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_12 <<
					OSD_W0BMPCD_PAL12_SHIFT,
					OSD_W0BMPCD_PAL12);
			dispc_reg_merge(OSD_W0BMPCD,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_13 <<
					OSD_W0BMPCD_PAL13_SHIFT,
					OSD_W0BMPCD_PAL13);
			dispc_reg_merge(OSD_W0BMPEF,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_14 <<
					OSD_W0BMPEF_PAL14_SHIFT,
					OSD_W0BMPEF_PAL14);
			dispc_reg_merge(OSD_W0BMPEF,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_15 <<
					OSD_W0BMPEF_PAL15_SHIFT,
					OSD_W0BMPEF_PAL15);
		}
		dm->osd0->conf_params.bitmap_params.clut_idx =
		    required->clut_idx;
		dm->osd0->conf_params.bitmap_params.attenuation_enable =
		    required->attenuation_enable;
		dm->osd0->conf_params.bitmap_params.clut_select =
		    required->clut_select;
	} else if (is_win(id, OSD1)) {
		if (required->clut_select == 2) {	/* RAM CLUT */
			dispc_reg_merge(OSD_OSDWIN1MD,
					SET_1 << OSD_OSDWIN1MD_CLUTS1_SHIFT,
					OSD_OSDWIN1MD_CLUTS1);
		} else if (required->clut_select == 1) {	/* ROM1 CLUT */
			dispc_reg_merge(OSD_OSDWIN1MD,
					SET_0 << OSD_OSDWIN1MD_CLUTS1_SHIFT,
					OSD_OSDWIN1MD_CLUTS1);
			dispc_reg_merge(OSD_MISCCT,
					SET_1 << OSD_MISCCT_RSEL_SHIFT,
					OSD_MISCCT_RSEL);
		} else {	/* ROM0 CLUT */
			dispc_reg_merge(OSD_OSDWIN1MD,
					SET_0 << OSD_OSDWIN1MD_CLUTS1_SHIFT,
					OSD_OSDWIN1MD_CLUTS1);
			dispc_reg_merge(OSD_MISCCT,
					SET_0 << OSD_MISCCT_RSEL_SHIFT,
					OSD_MISCCT_RSEL);
		}
		dispc_reg_merge(OSD_OSDWIN1MD,
				required->
				attenuation_enable <<
				OSD_OSDWIN1MD_ATN1E_SHIFT, OSD_OSDWIN1MD_ATN1E);
		if ((dm->osd1->info.var.bits_per_pixel == VPBE_BITMAP_BIT_1)
		    || (dm->osd1->info.var.bits_per_pixel == VPBE_BITMAP_BIT_2)
		    || (dm->osd1->info.var.bits_per_pixel == VPBE_BITMAP_BIT_4)) {
			dispc_reg_merge(OSD_W1BMP0,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_0 << OSD_W1BMP0_PAL00_SHIFT,
					OSD_W1BMP0_PAL00);
			dispc_reg_merge(OSD_W1BMP0,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_1 << OSD_W1BMP0_PAL01_SHIFT,
					OSD_W1BMP0_PAL01);
			dispc_reg_merge(OSD_W1BMP2,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_2 << OSD_W1BMP2_PAL02_SHIFT,
					OSD_W1BMP2_PAL02);
			dispc_reg_merge(OSD_W1BMP2,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_3 << OSD_W1BMP2_PAL03_SHIFT,
					OSD_W1BMP2_PAL03);
			dispc_reg_merge(OSD_W1BMP4,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_4 << OSD_W1BMP4_PAL04_SHIFT,
					OSD_W1BMP4_PAL04);
			dispc_reg_merge(OSD_W1BMP4,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_5 << OSD_W1BMP4_PAL05_SHIFT,
					OSD_W1BMP4_PAL05);
			dispc_reg_merge(OSD_W1BMP6,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_6 << OSD_W1BMP6_PAL06_SHIFT,
					OSD_W1BMP6_PAL06);
			dispc_reg_merge(OSD_W1BMP6,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_7 << OSD_W1BMP6_PAL07_SHIFT,
					OSD_W1BMP6_PAL07);
			dispc_reg_merge(OSD_W1BMP8,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_8 << OSD_W1BMP8_PAL08_SHIFT,
					OSD_W1BMP8_PAL08);
			dispc_reg_merge(OSD_W1BMP8,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_9 << OSD_W1BMP8_PAL09_SHIFT,
					OSD_W1BMP8_PAL09);
			dispc_reg_merge(OSD_W1BMPA,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_10 << OSD_W1BMPA_PAL10_SHIFT,
					OSD_W1BMPA_PAL10);
			dispc_reg_merge(OSD_W1BMPA,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_11 << OSD_W1BMPA_PAL11_SHIFT,
					OSD_W1BMPA_PAL11);
			dispc_reg_merge(OSD_W1BMPC,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_12 << OSD_W1BMPC_PAL12_SHIFT,
					OSD_W1BMPC_PAL12);
			dispc_reg_merge(OSD_W1BMPC,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_13 << OSD_W1BMPC_PAL13_SHIFT,
					OSD_W1BMPC_PAL13);
			dispc_reg_merge(OSD_W1BMPE,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_14 << OSD_W1BMPE_PAL14_SHIFT,
					OSD_W1BMPE_PAL14);
			dispc_reg_merge(OSD_W1BMPE,
					required->clut_idx.for_4bit_bimap.
					bitmap_val_15 << OSD_W1BMPE_PAL15_SHIFT,
					OSD_W1BMPE_PAL15);
		}
		dm->osd1->conf_params.bitmap_params.clut_idx =
		    required->clut_idx;
		dm->osd1->conf_params.bitmap_params.attenuation_enable =
		    required->attenuation_enable;
		dm->osd1->conf_params.bitmap_params.clut_select =
		    required->clut_select;
	}
	return result;
}
コード例 #16
0
ファイル: sysinfo.cpp プロジェクト: fox000002/uGuru
int is_win32()
{
    return is_win() && is_32();
}