Example #1
0
static void draw_roz_bitmap_mode_scanline(running_machine &machine, gba_state *state, int y, UINT32* line0, UINT32* line1, UINT32* line2, UINT32* line3, UINT32* lineOBJ, UINT32* lineOBJWin, UINT32* lineMix, int bpp)
{
	int x = 0;
	UINT32 backdrop = ((UINT16*)state->m_gba_pram)[0] | 0x30000000;

	draw_roz_bitmap_scanline(state, line2, y, DISPCNT_BG2_EN, state->m_BG2CNT, state->m_BG2X, state->m_BG2Y, state->m_BG2PA, state->m_BG2PB, state->m_BG2PC, state->m_BG2PD, &state->m_gfxBG2X, &state->m_gfxBG2Y, state->m_gfxBG2Changed, bpp);
	draw_gba_oam(state, machine, lineOBJ, y);

	for(x = 0; x < 240; x++)
	{
		UINT32 color = backdrop;
		UINT8 top = 0x20;

		if(line2[x] < color)
		{
			color = line2[x];
			top = 0x04;
		}

		if((UINT8)(lineOBJ[x] >> 24) < (UINT8)(color >> 24))
		{
			color = lineOBJ[x];
			top = 0x10;
		}

		if(top == 0x10 && (color & 0x00010000) != 0)
		{
			UINT32 back = backdrop;
			UINT8 top2 = 0x20;

			if(line2[x] < back)
			{
				back = line2[x];
				top2 = 0x04;
			}

			if(top2 & (state->m_BLDCNT >> BLDCNT_TP2_SHIFT))
			{
				color = alpha_blend_pixel(color, back, coeff[state->m_BLDALPHA & 0x1f], coeff[(state->m_BLDALPHA >> 8) & 0x1f]);
			}
			else
			{
				switch(state->m_BLDCNT & BLDCNT_SFX)
				{
					case BLDCNT_SFX_LIGHTEN:
						if(top & state->m_BLDCNT)
						{
							color = increase_brightness(color, coeff[state->m_BLDY & 0x1f]);
						}
						break;
					case BLDCNT_SFX_DARKEN:
						if(top & state->m_BLDCNT)
						{
							color = decrease_brightness(color, coeff[state->m_BLDY & 0x1f]);
						}
						break;
				}
			}
		}
Example #2
0
int command_dispatcher(int command_id, char * args, char * result_str)
{
    int result = 0;
    int arg_param;
 
    switch(command_id)
    {
        case TS_PREVIEW_START:
            result = start_preview();
            break;

        case TS_PREVIEW_STOP:
            result = stop_preview();
            break;

	    case TS_VIDEO_START:
            result = start_video();
            break;

        case TS_VIDEO_STOP:
            result = stop_video();
            break;

        case TS_SNAPSHOT_YUV_PICTURE:
            result = take_picture(ACTION_TAKE_YUV_PICTURE);
            break;

        case TS_SNAPSHOT_JPEG_PICTURE:
            result = take_picture(ACTION_TAKE_JPEG_PICTURE);
            break;

        case TS_SNAPSHOT_RAW_PICTURE:
            result = take_raw_picture();
            break;

        case TS_SNAPSHOT_STOP:
            result = testsuite_snapshot_stop();
            break;

        case TS_SYSTEM_INIT:
            result = system_init();
            break;

        case TS_SYSTEM_DESTROY:
            result = system_destroy();
            break;

        case TS_PRINT_MAXZOOM:
            result = print_maxzoom();
            break;

        case TS_PRINT_ZOOMRATIOS:
            result = print_zoomratios();
            break;

        case TS_ZOOM_INCREASE:
            result = zoom_increase(1);
            break;

        case TS_ZOOM_DECREASE:
            result = zoom_decrease(1);
            break;

        case TS_ZOOM_STEP_INCREASE:
            result = zoom_increase(0);
            break;

        case TS_ZOOM_STEP_DECREASE:
            result = zoom_decrease(0);
            break;

        case TS_CONTRAST_INCREASE:
            result = increase_contrast();
            break;

        case TS_CONTRAST_DECREASE:
            result = decrease_contrast();
            break;

        case TS_SATURATION_INCREASE:
            result = increase_saturation();
            break;

        case TS_SATURATION_DECREASE:
            result = decrease_saturation();
            break;

        case TS_SPECIAL_EFFECT:
            result = SpecialEffect();
            break;

        case TS_BRIGHTNESS_INCREASE:
            result = increase_brightness();
            break;

        case TS_BRIGHTNESS_DECREASE:
            result = decrease_brightness();
            break;

        case TS_EV_INCREASE:
            result = increase_EV();
            break;

        case TS_EV_DECREASE:
            result = decrease_EV();
            break;

        case TS_ANTI_BANDING:
            result = set_antibanding();
            break;

        case TS_SET_WHITE_BALANCE:
            result = set_whitebalance();
            break;

        case TS_AEC_MODE:
            result = AEC_mode_change();
            break;

        case TS_ISO_INCREASE:
            result = increase_ISO();
            break;

        case TS_ISO_DECREASE:
            result = decrease_ISO();
            break;

        case TS_SHARPNESS_INCREASE:
            result = increase_sharpness();
            break;

        case TS_SHARPNESS_DECREASE:
            result = decrease_sharpness();
            break;

        case TS_SET_AUTO_FOCUS:
            result = set_auto_focus();
            break;

        case TS_SET_HJR:
            result = set_hjr();
            break;

        case TS_SET_LENS_SHADING:
            result = LensShading();
            break;

        case TS_SET_LED_MODE:
            result = LED_mode_change();
            break;

        case TS_GET_SHARPNESS_AF:
            result = set_sharpness_AF();
            break;

        case TS_SNAPSHOT_RESOLUTION:
            arg_param = atoi(args);
            result = snapshot_resolution(arg_param);
            break;

        case TS_PREVIEW_RESOLUTION:
            arg_param = atoi(args);
            result = preview_video_resolution (arg_param);
            break;

        case TS_MOTION_ISO:
            result = set_MotionIso();
            break;

        case TS_TOGGLE_HUE:
            result = toggle_hue();
            break;

        case TS_CANCEL_AUTO_FOCUS:
            result = cancel_af();
            break;

        case TS_GET_AF_STEP:
            result = get_af_step();
            break;

        case TS_SET_AF_STEP:
            result = set_af_step();
            break;

        case TS_ENABLE_AFD:
            result = enable_afd();
            break;

        case TEST_VIDIOC_G_FMT:
            result = msm_v4l2_vidioc_g_fmt();
            break;

        case TEST_VIDIOC_S_FMT:
            result = msm_v4l2_vidioc_s_fmt();
            break;

        case TEST_VIDIOC_CROPCAP:
            result = msm_v4l2_vidioc_cropcap();
            break;

        case TEST_VIDIOC_G_CROP:
            result = msm_v4l2_vidioc_g_crop();
            break;

        case TEST_VIDIOC_S_CROP:
            result = msm_v4l2_vidioc_s_crop();
            break;

        case TEST_VIDIOC_QUERYMENU:
            result = msm_v4l2_vidioc_querymenu(args);
            break;

        case TEST_VIDIOC_QUERYCTRL:
            result = msm_v4l2_vidioc_queryctrl(NULL);
            break;

        case TEST_VIDIOC_S_CTRL:
            result = msm_v4l2_vidioc_s_ctrl(args);
            break;

        case TEST_VIDIOC_G_CTRL:
            result = msm_v4l2_vidioc_g_ctrl(args);
            break;

        default:
            break;
    }
    return result;
}