Mercurial > mplayer.hg
comparison drivers/radeon/radeon_vid.c @ 3020:e5ebde3ebdd6
Minor fixes with the same results
author | nick |
---|---|
date | Tue, 20 Nov 2001 10:34:00 +0000 |
parents | 64ce4a515a78 |
children | ef3b9b104648 |
comparison
equal
deleted
inserted
replaced
3019:64ce4a515a78 | 3020:e5ebde3ebdd6 |
---|---|
379 left = XXX_SRC_X << 16; | 379 left = XXX_SRC_X << 16; |
380 top = XXX_SRC_Y << 16; | 380 top = XXX_SRC_Y << 16; |
381 | 381 |
382 besr.fourcc = config->format; | 382 besr.fourcc = config->format; |
383 | 383 |
384 besr.v_inc = (config->src_height << 20) / XXX_DRW_H; /*9c0e0 -> 9c528*/ | 384 besr.v_inc = (config->src_height << 20) / XXX_DRW_H; |
385 h_inc = (config->src_width << 12) / XXX_DRW_W; | 385 h_inc = (config->src_width << 12) / XXX_DRW_W; |
386 step_by = 1; | 386 step_by = 1; |
387 | 387 |
388 while(h_inc >= (2 << 12)) { | 388 while(h_inc >= (2 << 12)) { |
389 step_by++; | 389 step_by++; |
393 /* keep everything in 16.16 */ | 393 /* keep everything in 16.16 */ |
394 | 394 |
395 if(is_420) | 395 if(is_420) |
396 { | 396 { |
397 uint32_t dstPitch,d1line,d2line,d3line; | 397 uint32_t dstPitch,d1line,d2line,d3line; |
398 dstPitch = (XXX_WIDTH + 31) & ~31; /* of luma */ | 398 dstPitch = (XXX_WIDTH + 15) & ~15; /* of luma */ |
399 d1line = top * dstPitch; | 399 d1line = top * dstPitch; |
400 d2line = (XXX_HEIGHT * dstPitch) + ((top >> 1) * (dstPitch >> 1)); | 400 d2line = (XXX_HEIGHT * dstPitch) + ((top >> 1) * (dstPitch >> 1)); |
401 d3line = d2line + ((XXX_HEIGHT >> 1) * (dstPitch >> 1)); | 401 d3line = d2line + ((XXX_HEIGHT >> 1) * (dstPitch >> 1)); |
402 d1line += (left >> 16) & ~15; | 402 d1line += (left >> 16) & ~15; |
403 d2line += (left >> 17) & ~15; | 403 d2line += (left >> 17) & ~15; |
437 | 437 |
438 leftUV = (left >> 17) & 7; | 438 leftUV = (left >> 17) & 7; |
439 left = (left >> 16) & 7; | 439 left = (left >> 16) & 7; |
440 besr.h_inc = h_inc | ((h_inc >> 1) << 16); | 440 besr.h_inc = h_inc | ((h_inc >> 1) << 16); |
441 besr.step_by = step_by | (step_by << 8); | 441 besr.step_by = step_by | (step_by << 8); |
442 besr.y_x_start = (config->x_org+8) | (config->y_org << 16); /*5c008->5d009*/ | 442 besr.y_x_start = (config->x_org+8) | (config->y_org << 16); |
443 besr.y_x_end = (config->x_org + config->dest_width+8) | ((config->y_org + config->dest_height) << 16); | 443 besr.y_x_end = (config->x_org + config->dest_width+8) | ((config->y_org + config->dest_height) << 16); |
444 besr.p1_blank_lines_at_top = 0x00000fff | ((config->src_height - 1) << 16); | 444 besr.p1_blank_lines_at_top = 0x00000fff | ((config->src_height - 1) << 16); |
445 besr.p23_blank_lines_at_top = is_420 ? 0x000007ff | ((((config->src_height+1)>>1) - 1) << 16) : 0; | 445 besr.p23_blank_lines_at_top = is_420 ? 0x000007ff | ((((config->src_height+1)>>1) - 1) << 16) : 0; |
446 besr.vid_buf_pitch0_value = pitch; | 446 besr.vid_buf_pitch0_value = pitch; |
447 besr.vid_buf_pitch1_value = is_420 ? pitch/2 : pitch; | 447 besr.vid_buf_pitch1_value = is_420 ? pitch/2 : pitch; |