Subversion Repositories Kolibri OS

Rev

Rev 808 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 808 Rev 810
Line 98... Line 98...
98
 
98
 
Line 99... Line 99...
99
         OUT_RING(fill->bmp0);
99
         OUT_RING(fill->bmp0);
100
         OUT_RING(fill->bmp1);
100
         OUT_RING(fill->bmp1);
Line 101... Line -...
101
 
-
 
102
       //  OUT_RING(0xCCCC3333);
-
 
103
       //  OUT_RING(0xCCCC3333);
-
 
104
       //  OUT_RING(~0x11884422);
-
 
105
       //  OUT_RING(~0x11884422);
-
 
106
 
-
 
107
//         OUT_RING(0x88112244);
-
 
108
//         OUT_RING(0x88112244);
-
 
109
 
101
 
110
         OUT_RING((y0<<16)|x0);
102
         OUT_RING((y0<<16)|x0);
111
         OUT_RING((y1<<16)|x1);
103
         OUT_RING((y1<<16)|x1);
Line 112... Line 104...
112
     COMMIT_RING();
104
     COMMIT_RING();
113
 
105
 
114
     safe_sti(ifl);
106
     safe_sti(ifl);
115
  };
107
  };
Line -... Line 108...
-
 
108
  return 0;
-
 
109
}
-
 
110
 
-
 
111
int Blit(blit_t *blit)
-
 
112
{
-
 
113
  int x0, y0, x1, y1;
-
 
114
 
-
 
115
  x0 = blit->src_x;
-
 
116
  y0 = blit->src_y;
-
 
117
 
Line -... Line 118...
-
 
118
  x1 = x0+blit->w-1;
-
 
119
  y1 = y0+blit->h-1;
-
 
120
 
-
 
121
 
-
 
122
  if( ! BlockClip( &x0, &y0, &x1, &y1))
-
 
123
  {
-
 
124
     u32 *ring, write;
-
 
125
     int w, h;
-
 
126
     u32 ifl;
-
 
127
 
-
 
128
     w = x1-x0+1;
-
 
129
     h = y1-y0+1;
-
 
130
 
-
 
131
     ifl = safe_cli();
-
 
132
 
-
 
133
     BEGIN_RING();
-
 
134
       OUT_RING(CP_PACKET3(RADEON_CNTL_BITBLT, 5));
-
 
135
 
-
 
136
       OUT_RING(RADEON_GMC_SRC_PITCH_OFFSET_CNTL  |
-
 
137
                RADEON_GMC_DST_PITCH_OFFSET_CNTL  |
-
 
138
                RADEON_GMC_BRUSH_NONE             |
-
 
139
                RADEON_GMC_DST_32BPP              |
-
 
140
                RADEON_GMC_SRC_DATATYPE_COLOR     |
-
 
141
                RADEON_DP_SRC_SOURCE_MEMORY       |
-
 
142
                (1 << 28)+(1 << 30) | R5XX_ROP3_S);
-
 
143
 
-
 
144
       OUT_RING(rhd.dst_pitch_offset);
-
 
145
       OUT_RING(rhd.dst_pitch_offset);
-
 
146
 
-
 
147
       OUT_RING((x0<<16)|y0);
-
 
148
       OUT_RING((blit->dst_x<<16)|blit->dst_y);
-
 
149
       OUT_RING((w<<16)|h);
-
 
150
     COMMIT_RING();
-
 
151
 
Line 116... Line 152...
116
  return 0;
152
     safe_sti(ifl);
117
}
153
  } ;
Line 118... Line 154...
118
 
154
  return 0;