|
|
@ -312,8 +312,11 @@ paint(const ncplane* p, struct crender* rvec, int dstleny, int dstlenx,
|
|
|
|
// Evaluate the background first, in case we have HIGHCONTRAST fg text.
|
|
|
|
// Evaluate the background first, in case we have HIGHCONTRAST fg text.
|
|
|
|
if(cell_bg_alpha(targc) > CELL_ALPHA_OPAQUE){
|
|
|
|
if(cell_bg_alpha(targc) > CELL_ALPHA_OPAQUE){
|
|
|
|
const nccell* vis = &p->fb[nfbcellidx(p, y, x)];
|
|
|
|
const nccell* vis = &p->fb[nfbcellidx(p, y, x)];
|
|
|
|
//fprintf(stderr, "y/x: %d/%d crenderbq: 0x%x visbq: 0x%x\n", y, x, crender->s.blittedquads, cell_blittedquadrants(vis));
|
|
|
|
// to be on the blitter stacking path, we need
|
|
|
|
if(!((~crender->s.blittedquads) & cell_blittedquadrants(vis))){
|
|
|
|
// 1) crender->s.blittedquads to be non-zero
|
|
|
|
|
|
|
|
// 2) cell_blittedquadrants(vis) to be non-zero
|
|
|
|
|
|
|
|
// 3) somewhere crender is 0, blittedquads is 1
|
|
|
|
|
|
|
|
if(!crender->s.blittedquads || !((~crender->s.blittedquads) & cell_blittedquadrants(vis))){
|
|
|
|
if(cell_bg_default_p(vis)){
|
|
|
|
if(cell_bg_default_p(vis)){
|
|
|
|
vis = &p->basecell;
|
|
|
|
vis = &p->basecell;
|
|
|
|
}
|
|
|
|
}
|
|
|
|