comparison Renderer/Engine/viewer.cc @ 615:f7d78b3c1106

First addOutput rendering try failed.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 14 Nov 2009 18:57:54 +0900
parents 4e44147d78ee
children f21603a335aa
comparison
equal deleted inserted replaced
614:4e44147d78ee 615:f7d78b3c1106
519 if (spack->info.size > 0) { 519 if (spack->info.size > 0) {
520 // Draw SpanPack 520 // Draw SpanPack
521 task_draw = manager->create_task(DrawSpan); 521 task_draw = manager->create_task(DrawSpan);
522 task_draw->add_inData(spack, sizeof(SpanPack)); 522 task_draw->add_inData(spack, sizeof(SpanPack));
523 523
524 task_draw->add_param( 524 task_draw->add_param(0,
525 (memaddr)&pixels[(startx-1) + this->width*(starty-1)]); 525 (memaddr)&pixels[(startx-1) + this->width*(starty-1)]);
526 task_draw->add_param(this->width); 526 task_draw->add_param(1,this->width);
527
528 int height = rangey;
529 for (int i = 0; i < height; i++) {
530 task_draw->add_outData(
531 &pixels[(startx-1) + this->width*(starty-1)],
532 this->width*sizeof(int));
533 }
527 } else { 534 } else {
528 // 7.7.3 SL1 Data Cache Range Set to Zero コマンド 535 // 7.7.3 SL1 Data Cache Range Set to Zero コマンド
529 // を使って、DMAでclearするべき... ということは、 536 // を使って、DMAでclearするべき... ということは、
530 // それもSPEでやる方が良い? 537 // それもSPEでやる方が良い?
531 memset(&pixels[(startx-1)+this->width*(starty-1)], 538 memset(&pixels[(startx-1)+this->width*(starty-1)],
532 0, (this->width)*sizeof(int)*rangey); 539 0, (this->width)*sizeof(int)*rangey);
533 break; 540 break;
534 } 541 }
535 542
536 task_draw->add_param(startx); 543 task_draw->add_param(2,startx);
537 task_draw->add_param(endx); 544 task_draw->add_param(3,endx);
538 task_draw->add_param(rangey); 545 task_draw->add_param(4,rangey);
539 task_draw->set_cpu(SPE_ANY); 546 task_draw->set_cpu(SPE_ANY);
540 task_next->wait_for(task_draw); 547 task_next->wait_for(task_draw);
541 task_draw->spawn(); 548 task_draw->spawn();
542 549
543 startx += split_screen_w; 550 startx += split_screen_w;