1 #ifndef blitter_code_0x30000000
\r
2 #define blitter_code_0x30000000
\r
3 void blitter_0x30000000(void)
\r
11 uint32 srczdata = 0;
\r
13 uint32 dstzdata = 0;
\r
14 uint32 writedata = 0;
\r
16 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
17 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
18 WRITE_PIXEL_1(a1, writedata);
\r
21 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
22 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
29 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
30 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
31 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
34 #ifndef blitter_code_0x34010004
\r
35 #define blitter_code_0x34010004
\r
36 void blitter_0x34010004(void)
\r
38 while (outer_loop--)
\r
40 inner_loop=n_pixels;
\r
41 while (inner_loop--)
\r
44 uint32 srczdata = 0;
\r
46 uint32 dstzdata = 0;
\r
47 uint32 writedata = 0;
\r
49 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
50 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
51 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
52 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
53 WRITE_PIXEL_16(a1, writedata);
\r
56 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
57 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
64 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
65 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
66 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
69 #ifndef blitter_code_0x30c002a4
\r
70 #define blitter_code_0x30c002a4
\r
71 void blitter_0x30c002a4(void)
\r
73 while (outer_loop--)
\r
75 inner_loop=n_pixels;
\r
76 while (inner_loop--)
\r
79 uint32 srczdata = 0;
\r
81 uint32 dstzdata = 0;
\r
82 uint32 writedata = 0;
\r
84 srcdata = READ_PIXEL_16(a2);
\r
85 dstdata = READ_PIXEL_16(a1);
\r
86 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
87 writedata |= srcdata & ~dstdata;
\r
88 writedata |= srcdata & dstdata;
\r
90 int intensity = srcdata & 0xFF;
\r
91 int ia = gd_ia >> 16;
\r
93 ia = 0xFFFFFF00 | ia;
\r
97 if(intensity > 0xFF)
\r
99 writedata = (srcdata & 0xFF00) | intensity;
\r
101 WRITE_PIXEL_16(a1, writedata);
\r
104 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
105 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
106 gd_i[colour_index] += gd_ia;
\r
107 gd_c[colour_index] += gd_ca;
\r
108 colour_index=(colour_index+1)&0x3;
\r
115 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
116 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
117 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
120 #ifndef blitter_code_0x00c042a4
\r
121 #define blitter_code_0x00c042a4
\r
122 void blitter_0x00c042a4(void)
\r
124 while (outer_loop--)
\r
126 inner_loop=n_pixels;
\r
127 while (inner_loop--)
\r
129 uint32 srcdata = 0;
\r
130 uint32 srczdata = 0;
\r
131 uint32 dstdata = 0;
\r
132 uint32 dstzdata = 0;
\r
133 uint32 writedata = 0;
\r
134 uint32 inhibit = 0;
\r
135 srcdata = READ_PIXEL_16(a2);
\r
136 dstdata = READ_PIXEL_16(a1);
\r
137 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
138 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
141 writedata |= srcdata & ~dstdata;
\r
142 writedata |= srcdata & dstdata;
\r
143 } else { srczdata=dstzdata; writedata=dstdata; }
\r
146 WRITE_PIXEL_16(a1, writedata);
\r
150 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
151 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
158 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
159 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
160 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
163 #ifndef blitter_code_0x08c042a4
\r
164 #define blitter_code_0x08c042a4
\r
165 void blitter_0x08c042a4(void)
\r
167 while (outer_loop--)
\r
169 inner_loop=n_pixels;
\r
170 while (inner_loop--)
\r
172 uint32 srcdata = 0;
\r
173 uint32 srczdata = 0;
\r
174 uint32 dstdata = 0;
\r
175 uint32 dstzdata = 0;
\r
176 uint32 writedata = 0;
\r
177 uint32 inhibit = 0;
\r
178 srcdata = READ_PIXEL_16(a2);
\r
179 dstdata = READ_PIXEL_16(a1);
\r
180 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
181 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
182 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
185 writedata |= srcdata & ~dstdata;
\r
186 writedata |= srcdata & dstdata;
\r
187 } else { srczdata=dstzdata; writedata=dstdata; }
\r
190 WRITE_PIXEL_16(a1, writedata);
\r
194 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
195 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
202 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
203 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
204 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
207 #ifndef blitter_code_0x34010024
\r
208 #define blitter_code_0x34010024
\r
209 void blitter_0x34010024(void)
\r
211 while (outer_loop--)
\r
213 inner_loop=n_pixels;
\r
214 while (inner_loop--)
\r
216 uint32 srcdata = 0;
\r
217 uint32 srczdata = 0;
\r
218 uint32 dstdata = 0;
\r
219 uint32 dstzdata = 0;
\r
220 uint32 writedata = 0;
\r
221 uint32 inhibit = 0;
\r
222 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
223 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
224 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
227 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
228 } else { srczdata=dstzdata; writedata=dstdata; }
\r
229 WRITE_PIXEL_16(a1, writedata);
\r
232 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
233 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
240 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
241 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
242 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
245 #ifndef blitter_code_0x24010222
\r
246 #define blitter_code_0x24010222
\r
247 void blitter_0x24010222(void)
\r
249 while (outer_loop--)
\r
251 inner_loop=n_pixels;
\r
252 while (inner_loop--)
\r
254 uint32 srcdata = 0;
\r
255 uint32 srczdata = 0;
\r
256 uint32 dstdata = 0;
\r
257 uint32 dstzdata = 0;
\r
258 uint32 writedata = 0;
\r
259 uint32 inhibit = 0;
\r
260 srcdata = READ_RDATA_4(SRCDATA, a2, a2_phrase_mode);
\r
261 srczdata = READ_RDATA_4(SRCZINT, a2, a2_phrase_mode);
\r
262 dstdata = READ_PIXEL_4(a1);
\r
263 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
266 writedata= READ_RDATA_4(PATTERNDATA, a1, a1_phrase_mode);
\r
267 } else { srczdata=dstzdata; writedata=dstdata; }
\r
270 WRITE_PIXEL_4(a1, writedata);
\r
274 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
275 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
282 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
283 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
284 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
287 #ifndef blitter_code_0x00c04292
\r
288 #define blitter_code_0x00c04292
\r
289 void blitter_0x00c04292(void)
\r
291 while (outer_loop--)
\r
293 inner_loop=n_pixels;
\r
294 while (inner_loop--)
\r
296 uint32 srcdata = 0;
\r
297 uint32 srczdata = 0;
\r
298 uint32 dstdata = 0;
\r
299 uint32 dstzdata = 0;
\r
300 uint32 writedata = 0;
\r
301 uint32 inhibit = 0;
\r
302 srcdata = READ_PIXEL_4(a2);
\r
303 dstdata = READ_PIXEL_4(a1);
\r
304 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
305 if (srcdata == READ_RDATA_4(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
308 writedata |= srcdata & ~dstdata;
\r
309 writedata |= srcdata & dstdata;
\r
310 } else { srczdata=dstzdata; writedata=dstdata; }
\r
313 WRITE_PIXEL_4(a1, writedata);
\r
317 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
318 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
325 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
326 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
327 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
330 #ifndef blitter_code_0x00c0409b
\r
331 #define blitter_code_0x00c0409b
\r
332 void blitter_0x00c0409b(void)
\r
334 while (outer_loop--)
\r
336 inner_loop=n_pixels;
\r
337 while (inner_loop--)
\r
339 uint32 srcdata = 0;
\r
340 uint32 srczdata = 0;
\r
341 uint32 dstdata = 0;
\r
342 uint32 dstzdata = 0;
\r
343 uint32 writedata = 0;
\r
344 uint32 inhibit = 0;
\r
345 srcdata = READ_PIXEL_8(a2);
\r
346 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
347 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
350 writedata |= srcdata & ~dstdata;
\r
351 writedata |= srcdata & dstdata;
\r
352 } else { srczdata=dstzdata; writedata=dstdata; }
\r
355 WRITE_PIXEL_8(a1, writedata);
\r
359 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
360 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
367 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
368 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
369 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
372 #ifndef blitter_code_0x30000003
\r
373 #define blitter_code_0x30000003
\r
374 void blitter_0x30000003(void)
\r
376 while (outer_loop--)
\r
378 inner_loop=n_pixels;
\r
379 while (inner_loop--)
\r
381 uint32 srcdata = 0;
\r
382 uint32 srczdata = 0;
\r
383 uint32 dstdata = 0;
\r
384 uint32 dstzdata = 0;
\r
385 uint32 writedata = 0;
\r
386 uint32 inhibit = 0;
\r
387 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
388 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
389 WRITE_PIXEL_8(a1, writedata);
\r
392 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
393 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
400 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
401 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
402 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
405 #ifndef blitter_code_0x34010003
\r
406 #define blitter_code_0x34010003
\r
407 void blitter_0x34010003(void)
\r
409 while (outer_loop--)
\r
411 inner_loop=n_pixels;
\r
412 while (inner_loop--)
\r
414 uint32 srcdata = 0;
\r
415 uint32 srczdata = 0;
\r
416 uint32 dstdata = 0;
\r
417 uint32 dstzdata = 0;
\r
418 uint32 writedata = 0;
\r
419 uint32 inhibit = 0;
\r
420 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
421 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
422 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
423 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
424 WRITE_PIXEL_8(a1, writedata);
\r
427 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
428 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
435 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
436 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
437 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
440 #ifndef blitter_code_0x30c000ad
\r
441 #define blitter_code_0x30c000ad
\r
442 void blitter_0x30c000ad(void)
\r
444 while (outer_loop--)
\r
446 inner_loop=n_pixels;
\r
447 while (inner_loop--)
\r
449 uint32 srcdata = 0;
\r
450 uint32 srczdata = 0;
\r
451 uint32 dstdata = 0;
\r
452 uint32 dstzdata = 0;
\r
453 uint32 writedata = 0;
\r
454 uint32 inhibit = 0;
\r
455 srcdata = READ_PIXEL_32(a2);
\r
456 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
457 writedata |= srcdata & ~dstdata;
\r
458 writedata |= srcdata & dstdata;
\r
459 WRITE_PIXEL_32(a1, writedata);
\r
462 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
463 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
470 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
471 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
472 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
475 #ifndef blitter_code_0x30c0009b
\r
476 #define blitter_code_0x30c0009b
\r
477 void blitter_0x30c0009b(void)
\r
479 while (outer_loop--)
\r
481 inner_loop=n_pixels;
\r
482 while (inner_loop--)
\r
484 uint32 srcdata = 0;
\r
485 uint32 srczdata = 0;
\r
486 uint32 dstdata = 0;
\r
487 uint32 dstzdata = 0;
\r
488 uint32 writedata = 0;
\r
489 uint32 inhibit = 0;
\r
490 srcdata = READ_PIXEL_8(a2);
\r
491 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
492 writedata |= srcdata & ~dstdata;
\r
493 writedata |= srcdata & dstdata;
\r
494 WRITE_PIXEL_8(a1, writedata);
\r
497 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
498 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
505 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
506 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
507 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
510 #ifndef blitter_code_0x3401001b
\r
511 #define blitter_code_0x3401001b
\r
512 void blitter_0x3401001b(void)
\r
514 while (outer_loop--)
\r
516 inner_loop=n_pixels;
\r
517 while (inner_loop--)
\r
519 uint32 srcdata = 0;
\r
520 uint32 srczdata = 0;
\r
521 uint32 dstdata = 0;
\r
522 uint32 dstzdata = 0;
\r
523 uint32 writedata = 0;
\r
524 uint32 inhibit = 0;
\r
525 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
526 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
527 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
528 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
529 WRITE_PIXEL_8(a1, writedata);
\r
532 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
533 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
540 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
541 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
542 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
545 #ifndef blitter_code_0x30c000a4
\r
546 #define blitter_code_0x30c000a4
\r
547 void blitter_0x30c000a4(void)
\r
549 while (outer_loop--)
\r
551 inner_loop=n_pixels;
\r
552 while (inner_loop--)
\r
554 uint32 srcdata = 0;
\r
555 uint32 srczdata = 0;
\r
556 uint32 dstdata = 0;
\r
557 uint32 dstzdata = 0;
\r
558 uint32 writedata = 0;
\r
559 uint32 inhibit = 0;
\r
560 srcdata = READ_PIXEL_16(a2);
\r
561 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
562 writedata |= srcdata & ~dstdata;
\r
563 writedata |= srcdata & dstdata;
\r
564 WRITE_PIXEL_16(a1, writedata);
\r
567 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
568 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
575 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
576 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
577 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
580 #ifndef blitter_code_0x34010023
\r
581 #define blitter_code_0x34010023
\r
582 void blitter_0x34010023(void)
\r
584 while (outer_loop--)
\r
586 inner_loop=n_pixels;
\r
587 while (inner_loop--)
\r
589 uint32 srcdata = 0;
\r
590 uint32 srczdata = 0;
\r
591 uint32 dstdata = 0;
\r
592 uint32 dstzdata = 0;
\r
593 uint32 writedata = 0;
\r
594 uint32 inhibit = 0;
\r
595 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
596 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
597 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
598 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
599 WRITE_PIXEL_8(a1, writedata);
\r
602 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
603 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
610 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
611 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
612 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
615 #ifndef blitter_code_0x30000023
\r
616 #define blitter_code_0x30000023
\r
617 void blitter_0x30000023(void)
\r
619 while (outer_loop--)
\r
621 inner_loop=n_pixels;
\r
622 while (inner_loop--)
\r
624 uint32 srcdata = 0;
\r
625 uint32 srczdata = 0;
\r
626 uint32 dstdata = 0;
\r
627 uint32 dstzdata = 0;
\r
628 uint32 writedata = 0;
\r
629 uint32 inhibit = 0;
\r
630 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
631 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
632 WRITE_PIXEL_8(a1, writedata);
\r
635 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
636 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
643 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
644 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
645 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
648 #ifndef blitter_code_0x24010024
\r
649 #define blitter_code_0x24010024
\r
650 void blitter_0x24010024(void)
\r
652 while (outer_loop--)
\r
654 inner_loop=n_pixels;
\r
655 while (inner_loop--)
\r
657 uint32 srcdata = 0;
\r
658 uint32 srczdata = 0;
\r
659 uint32 dstdata = 0;
\r
660 uint32 dstzdata = 0;
\r
661 uint32 writedata = 0;
\r
662 uint32 inhibit = 0;
\r
663 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
664 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
665 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
666 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
667 WRITE_PIXEL_16(a1, writedata);
\r
670 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
671 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
678 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
679 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
680 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
683 #ifndef blitter_code_0x00c000a4
\r
684 #define blitter_code_0x00c000a4
\r
685 void blitter_0x00c000a4(void)
\r
687 while (outer_loop--)
\r
689 inner_loop=n_pixels;
\r
690 while (inner_loop--)
\r
692 uint32 srcdata = 0;
\r
693 uint32 srczdata = 0;
\r
694 uint32 dstdata = 0;
\r
695 uint32 dstzdata = 0;
\r
696 uint32 writedata = 0;
\r
697 uint32 inhibit = 0;
\r
698 srcdata = READ_PIXEL_16(a2);
\r
699 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
700 writedata |= srcdata & ~dstdata;
\r
701 writedata |= srcdata & dstdata;
\r
702 WRITE_PIXEL_16(a1, writedata);
\r
705 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
706 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
713 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
714 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
715 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
718 #ifndef blitter_code_0x00c040a4
\r
719 #define blitter_code_0x00c040a4
\r
720 void blitter_0x00c040a4(void)
\r
722 while (outer_loop--)
\r
724 inner_loop=n_pixels;
\r
725 while (inner_loop--)
\r
727 uint32 srcdata = 0;
\r
728 uint32 srczdata = 0;
\r
729 uint32 dstdata = 0;
\r
730 uint32 dstzdata = 0;
\r
731 uint32 writedata = 0;
\r
732 uint32 inhibit = 0;
\r
733 srcdata = READ_PIXEL_16(a2);
\r
734 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
735 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
738 writedata |= srcdata & ~dstdata;
\r
739 writedata |= srcdata & dstdata;
\r
740 } else { srczdata=dstzdata; writedata=dstdata; }
\r
743 WRITE_PIXEL_16(a1, writedata);
\r
747 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
748 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
755 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
756 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
757 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
760 #ifndef blitter_code_0x04010024
\r
761 #define blitter_code_0x04010024
\r
762 void blitter_0x04010024(void)
\r
764 while (outer_loop--)
\r
766 inner_loop=n_pixels;
\r
767 while (inner_loop--)
\r
769 uint32 srcdata = 0;
\r
770 uint32 srczdata = 0;
\r
771 uint32 dstdata = 0;
\r
772 uint32 dstzdata = 0;
\r
773 uint32 writedata = 0;
\r
774 uint32 inhibit = 0;
\r
775 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
776 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
777 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
780 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
781 } else { srczdata=dstzdata; writedata=dstdata; }
\r
784 WRITE_PIXEL_16(a1, writedata);
\r
788 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
789 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
796 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
797 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
798 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
801 #ifndef blitter_code_0x2401001c
\r
802 #define blitter_code_0x2401001c
\r
803 void blitter_0x2401001c(void)
\r
805 while (outer_loop--)
\r
807 inner_loop=n_pixels;
\r
808 while (inner_loop--)
\r
810 uint32 srcdata = 0;
\r
811 uint32 srczdata = 0;
\r
812 uint32 dstdata = 0;
\r
813 uint32 dstzdata = 0;
\r
814 uint32 writedata = 0;
\r
815 uint32 inhibit = 0;
\r
816 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
817 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
818 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
821 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
822 } else { srczdata=dstzdata; writedata=dstdata; }
\r
825 WRITE_PIXEL_16(a1, writedata);
\r
829 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
830 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
837 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
838 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
839 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
842 #ifndef blitter_code_0x3000002b
\r
843 #define blitter_code_0x3000002b
\r
844 void blitter_0x3000002b(void)
\r
846 while (outer_loop--)
\r
848 inner_loop=n_pixels;
\r
849 while (inner_loop--)
\r
851 uint32 srcdata = 0;
\r
852 uint32 srczdata = 0;
\r
853 uint32 dstdata = 0;
\r
854 uint32 dstzdata = 0;
\r
855 uint32 writedata = 0;
\r
856 uint32 inhibit = 0;
\r
857 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
858 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
861 } else { srczdata=dstzdata; writedata=dstdata; }
\r
862 WRITE_PIXEL_8(a1, writedata);
\r
865 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
866 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
873 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
874 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
875 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
878 #ifndef blitter_code_0x3000001b
\r
879 #define blitter_code_0x3000001b
\r
880 void blitter_0x3000001b(void)
\r
882 while (outer_loop--)
\r
884 inner_loop=n_pixels;
\r
885 while (inner_loop--)
\r
887 uint32 srcdata = 0;
\r
888 uint32 srczdata = 0;
\r
889 uint32 dstdata = 0;
\r
890 uint32 dstzdata = 0;
\r
891 uint32 writedata = 0;
\r
892 uint32 inhibit = 0;
\r
893 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
894 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
897 } else { srczdata=dstzdata; writedata=dstdata; }
\r
898 WRITE_PIXEL_8(a1, writedata);
\r
901 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
902 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
909 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
910 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
911 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
914 #ifndef blitter_code_0x00c0009b
\r
915 #define blitter_code_0x00c0009b
\r
916 void blitter_0x00c0009b(void)
\r
918 while (outer_loop--)
\r
920 inner_loop=n_pixels;
\r
921 while (inner_loop--)
\r
923 uint32 srcdata = 0;
\r
924 uint32 srczdata = 0;
\r
925 uint32 dstdata = 0;
\r
926 uint32 dstzdata = 0;
\r
927 uint32 writedata = 0;
\r
928 uint32 inhibit = 0;
\r
929 srcdata = READ_PIXEL_8(a2);
\r
930 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
933 writedata |= srcdata & ~dstdata;
\r
934 writedata |= srcdata & dstdata;
\r
935 } else { srczdata=dstzdata; writedata=dstdata; }
\r
938 WRITE_PIXEL_8(a1, writedata);
\r
942 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
943 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
950 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
951 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
952 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
955 #ifndef blitter_code_0x1000001b
\r
956 #define blitter_code_0x1000001b
\r
957 void blitter_0x1000001b(void)
\r
959 while (outer_loop--)
\r
961 inner_loop=n_pixels;
\r
962 while (inner_loop--)
\r
964 uint32 srcdata = 0;
\r
965 uint32 srczdata = 0;
\r
966 uint32 dstdata = 0;
\r
967 uint32 dstzdata = 0;
\r
968 uint32 writedata = 0;
\r
969 uint32 inhibit = 0;
\r
970 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
971 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
974 } else { srczdata=dstzdata; writedata=dstdata; }
\r
975 WRITE_PIXEL_8(a1, writedata);
\r
978 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
979 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
986 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
987 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
988 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
991 #ifndef blitter_code_0x10000023
\r
992 #define blitter_code_0x10000023
\r
993 void blitter_0x10000023(void)
\r
995 while (outer_loop--)
\r
997 inner_loop=n_pixels;
\r
998 while (inner_loop--)
\r
1000 uint32 srcdata = 0;
\r
1001 uint32 srczdata = 0;
\r
1002 uint32 dstdata = 0;
\r
1003 uint32 dstzdata = 0;
\r
1004 uint32 writedata = 0;
\r
1005 uint32 inhibit = 0;
\r
1006 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1007 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1010 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1011 WRITE_PIXEL_8(a1, writedata);
\r
1014 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1015 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1022 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1023 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1024 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1027 #ifndef blitter_code_0x3401001d
\r
1028 #define blitter_code_0x3401001d
\r
1029 void blitter_0x3401001d(void)
\r
1031 while (outer_loop--)
\r
1033 inner_loop=n_pixels;
\r
1034 while (inner_loop--)
\r
1036 uint32 srcdata = 0;
\r
1037 uint32 srczdata = 0;
\r
1038 uint32 dstdata = 0;
\r
1039 uint32 dstzdata = 0;
\r
1040 uint32 writedata = 0;
\r
1041 uint32 inhibit = 0;
\r
1042 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
1043 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
1044 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
1047 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
1048 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1049 WRITE_PIXEL_32(a1, writedata);
\r
1052 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1053 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1060 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1061 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1062 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1065 #ifndef blitter_code_0x00c000e4
\r
1066 #define blitter_code_0x00c000e4
\r
1067 void blitter_0x00c000e4(void)
\r
1069 while (outer_loop--)
\r
1071 inner_loop=n_pixels;
\r
1072 while (inner_loop--)
\r
1074 uint32 srcdata = 0;
\r
1075 uint32 srczdata = 0;
\r
1076 uint32 dstdata = 0;
\r
1077 uint32 dstzdata = 0;
\r
1078 uint32 writedata = 0;
\r
1079 uint32 inhibit = 0;
\r
1080 srcdata = READ_PIXEL_16(a1);
\r
1081 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
1082 srczdata=z_i[colour_index]>>16;
\r
1085 writedata |= srcdata & ~dstdata;
\r
1086 writedata |= srcdata & dstdata;
\r
1088 int intensity = srcdata & 0xFF;
\r
1089 int ia = gd_ia >> 16;
\r
1091 ia = 0xFFFFFF00 | ia;
\r
1095 if(intensity > 0xFF)
\r
1097 writedata = (srcdata & 0xFF00) | intensity;
\r
1099 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1102 WRITE_PIXEL_16(a2, writedata);
\r
1106 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1107 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1108 z_i[colour_index]+=zadd;
\r
1109 gd_i[colour_index] += gd_ia;
\r
1110 gd_c[colour_index] += gd_ca;
\r
1117 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1118 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1119 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1122 #ifndef blitter_code_0x24010064
\r
1123 #define blitter_code_0x24010064
\r
1124 void blitter_0x24010064(void)
\r
1126 while (outer_loop--)
\r
1128 inner_loop=n_pixels;
\r
1129 while (inner_loop--)
\r
1131 uint32 srcdata = 0;
\r
1132 uint32 srczdata = 0;
\r
1133 uint32 dstdata = 0;
\r
1134 uint32 dstzdata = 0;
\r
1135 uint32 writedata = 0;
\r
1136 uint32 inhibit = 0;
\r
1137 srcdata = READ_RDATA_16(SRCDATA, a1, a1_phrase_mode);
\r
1138 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
1139 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
1142 writedata= READ_RDATA_16(PATTERNDATA, a2, a2_phrase_mode);
\r
1143 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1144 WRITE_PIXEL_16(a2, writedata);
\r
1147 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1148 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1155 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1156 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1157 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1160 #ifndef blitter_code_0x00c040e4
\r
1161 #define blitter_code_0x00c040e4
\r
1162 void blitter_0x00c040e4(void)
\r
1164 while (outer_loop--)
\r
1166 inner_loop=n_pixels;
\r
1167 while (inner_loop--)
\r
1169 uint32 srcdata = 0;
\r
1170 uint32 srczdata = 0;
\r
1171 uint32 dstdata = 0;
\r
1172 uint32 dstzdata = 0;
\r
1173 uint32 writedata = 0;
\r
1174 uint32 inhibit = 0;
\r
1175 srcdata = READ_PIXEL_16(a1);
\r
1176 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
1177 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
1180 writedata |= srcdata & ~dstdata;
\r
1181 writedata |= srcdata & dstdata;
\r
1183 int intensity = srcdata & 0xFF;
\r
1184 int ia = gd_ia >> 16;
\r
1186 ia = 0xFFFFFF00 | ia;
\r
1190 if(intensity > 0xFF)
\r
1192 writedata = (srcdata & 0xFF00) | intensity;
\r
1194 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1197 WRITE_PIXEL_16(a2, writedata);
\r
1201 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1202 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1203 gd_i[colour_index] += gd_ia;
\r
1204 gd_c[colour_index] += gd_ca;
\r
1211 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1212 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1213 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1216 #ifndef blitter_code_0x2000002b
\r
1217 #define blitter_code_0x2000002b
\r
1218 void blitter_0x2000002b(void)
\r
1220 while (outer_loop--)
\r
1222 inner_loop=n_pixels;
\r
1223 while (inner_loop--)
\r
1225 uint32 srcdata = 0;
\r
1226 uint32 srczdata = 0;
\r
1227 uint32 dstdata = 0;
\r
1228 uint32 dstzdata = 0;
\r
1229 uint32 writedata = 0;
\r
1230 uint32 inhibit = 0;
\r
1231 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1232 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1235 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1238 WRITE_PIXEL_8(a1, writedata);
\r
1242 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1243 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1250 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1251 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1252 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1255 #ifndef blitter_code_0x00a00058
\r
1256 #define blitter_code_0x00a00058
\r
1257 void blitter_0x00a00058(void)
\r
1259 while (outer_loop--)
\r
1261 inner_loop=n_pixels;
\r
1262 while (inner_loop--)
\r
1264 uint32 srcdata = 0;
\r
1265 uint32 srczdata = 0;
\r
1266 uint32 dstdata = 0;
\r
1267 uint32 dstzdata = 0;
\r
1268 uint32 writedata = 0;
\r
1269 uint32 inhibit = 0;
\r
1270 srcdata = READ_RDATA_8(SRCDATA, a1, a1_phrase_mode);
\r
1271 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
1274 writedata |= ~srcdata & dstdata;
\r
1275 writedata |= srcdata & dstdata;
\r
1276 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1279 WRITE_PIXEL_8(a2, writedata);
\r
1283 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1284 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1291 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1292 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1293 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1296 #ifndef blitter_code_0x050100d8
\r
1297 #define blitter_code_0x050100d8
\r
1298 void blitter_0x050100d8(void)
\r
1300 while (outer_loop--)
\r
1302 inner_loop=n_pixels;
\r
1303 while (inner_loop--)
\r
1305 uint32 srcdata = 0;
\r
1306 uint32 srczdata = 0;
\r
1307 uint32 dstdata = 0;
\r
1308 uint32 dstzdata = 0;
\r
1309 uint32 writedata = 0;
\r
1310 uint32 inhibit = 0;
\r
1311 srcdata = READ_PIXEL_8(a1);
\r
1312 srczdata = READ_RDATA_1(SRCZINT, a1, a1_phrase_mode);
\r
1313 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
1316 writedata= READ_RDATA_8(PATTERNDATA, a2, a2_phrase_mode);
\r
1317 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1318 WRITE_PIXEL_8(a2, writedata);
\r
1321 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1322 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1329 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1330 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1331 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1334 #ifndef blitter_code_0x00c00280
\r
1335 #define blitter_code_0x00c00280
\r
1336 void blitter_0x00c00280(void)
\r
1338 while (outer_loop--)
\r
1340 inner_loop=n_pixels;
\r
1341 while (inner_loop--)
\r
1343 uint32 srcdata = 0;
\r
1344 uint32 srczdata = 0;
\r
1345 uint32 dstdata = 0;
\r
1346 uint32 dstzdata = 0;
\r
1347 uint32 writedata = 0;
\r
1348 uint32 inhibit = 0;
\r
1349 srcdata = READ_PIXEL_1(a2);
\r
1350 dstdata = READ_PIXEL_1(a1);
\r
1351 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
1354 writedata |= srcdata & ~dstdata;
\r
1355 writedata |= srcdata & dstdata;
\r
1356 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1359 WRITE_PIXEL_1(a1, writedata);
\r
1363 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1364 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1371 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1372 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1373 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1376 #ifndef blitter_code_0x04010064
\r
1377 #define blitter_code_0x04010064
\r
1378 void blitter_0x04010064(void)
\r
1380 while (outer_loop--)
\r
1382 inner_loop=n_pixels;
\r
1383 while (inner_loop--)
\r
1385 uint32 srcdata = 0;
\r
1386 uint32 srczdata = 0;
\r
1387 uint32 dstdata = 0;
\r
1388 uint32 dstzdata = 0;
\r
1389 uint32 writedata = 0;
\r
1390 uint32 inhibit = 0;
\r
1391 srcdata = READ_RDATA_16(SRCDATA, a1, a1_phrase_mode);
\r
1392 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
1393 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
1396 writedata= READ_RDATA_16(PATTERNDATA, a2, a2_phrase_mode);
\r
1397 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1400 WRITE_PIXEL_16(a2, writedata);
\r
1404 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1405 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1412 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1413 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1414 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1417 #ifndef blitter_code_0x24010003
\r
1418 #define blitter_code_0x24010003
\r
1419 void blitter_0x24010003(void)
\r
1421 while (outer_loop--)
\r
1423 inner_loop=n_pixels;
\r
1424 while (inner_loop--)
\r
1426 uint32 srcdata = 0;
\r
1427 uint32 srczdata = 0;
\r
1428 uint32 dstdata = 0;
\r
1429 uint32 dstzdata = 0;
\r
1430 uint32 writedata = 0;
\r
1431 uint32 inhibit = 0;
\r
1432 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1433 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
1434 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1435 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
1436 WRITE_PIXEL_8(a1, writedata);
\r
1439 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1440 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1447 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1448 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1449 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1452 #ifndef blitter_code_0x24010023
\r
1453 #define blitter_code_0x24010023
\r
1454 void blitter_0x24010023(void)
\r
1456 while (outer_loop--)
\r
1458 inner_loop=n_pixels;
\r
1459 while (inner_loop--)
\r
1461 uint32 srcdata = 0;
\r
1462 uint32 srczdata = 0;
\r
1463 uint32 dstdata = 0;
\r
1464 uint32 dstzdata = 0;
\r
1465 uint32 writedata = 0;
\r
1466 uint32 inhibit = 0;
\r
1467 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1468 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
1469 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1470 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
1471 WRITE_PIXEL_8(a1, writedata);
\r
1474 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1475 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1482 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1483 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1484 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1487 #ifndef blitter_code_0x00c0429b
\r
1488 #define blitter_code_0x00c0429b
\r
1489 void blitter_0x00c0429b(void)
\r
1491 while (outer_loop--)
\r
1493 inner_loop=n_pixels;
\r
1494 while (inner_loop--)
\r
1496 uint32 srcdata = 0;
\r
1497 uint32 srczdata = 0;
\r
1498 uint32 dstdata = 0;
\r
1499 uint32 dstzdata = 0;
\r
1500 uint32 writedata = 0;
\r
1501 uint32 inhibit = 0;
\r
1502 srcdata = READ_PIXEL_8(a2);
\r
1503 dstdata = READ_PIXEL_8(a1);
\r
1504 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
1505 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
1508 writedata |= srcdata & ~dstdata;
\r
1509 writedata |= srcdata & dstdata;
\r
1510 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1513 WRITE_PIXEL_8(a1, writedata);
\r
1517 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1518 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1525 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1526 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1527 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1530 #ifndef blitter_code_0x00c042db
\r
1531 #define blitter_code_0x00c042db
\r
1532 void blitter_0x00c042db(void)
\r
1534 uint32 srcdata = 0;
\r
1535 uint32 srczdata = 0;
\r
1536 uint32 dstdata = 0;
\r
1537 uint32 dstzdata = 0;
\r
1538 uint32 writedata = 0;
\r
1539 uint32 inhibit = 0;
\r
1540 uint32 compare_value=READ_RDATA_8(PATTERNDATA, a1,a1_phrase_mode);
\r
1542 while (outer_loop--)
\r
1544 inner_loop=n_pixels;
\r
1545 while (inner_loop--)
\r
1550 srcdata = READ_PIXEL_8(a1);
\r
1551 if (srcdata != compare_value )
\r
1553 dstdata = READ_PIXEL_8(a2);
\r
1554 writedata |= srcdata & ~dstdata;
\r
1555 writedata |= srcdata & dstdata;
\r
1556 WRITE_PIXEL_8(a2, writedata);
\r
1560 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1561 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1568 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1569 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1570 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1573 #ifndef blitter_code_0x1401001b
\r
1574 #define blitter_code_0x1401001b
\r
1575 void blitter_0x1401001b(void)
\r
1577 while (outer_loop--)
\r
1579 inner_loop=n_pixels;
\r
1580 while (inner_loop--)
\r
1582 uint32 srcdata = 0;
\r
1583 uint32 srczdata = 0;
\r
1584 uint32 dstdata = 0;
\r
1585 uint32 dstzdata = 0;
\r
1586 uint32 writedata = 0;
\r
1587 uint32 inhibit = 0;
\r
1588 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1589 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
1590 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1593 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
1594 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1595 WRITE_PIXEL_8(a1, writedata);
\r
1598 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1599 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1606 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1607 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1608 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1611 #ifndef blitter_code_0x24010004
\r
1612 #define blitter_code_0x24010004
\r
1613 void blitter_0x24010004(void)
\r
1615 while (outer_loop--)
\r
1617 inner_loop=n_pixels;
\r
1618 while (inner_loop--)
\r
1620 uint32 srcdata = 0;
\r
1621 uint32 srczdata = 0;
\r
1622 uint32 dstdata = 0;
\r
1623 uint32 dstzdata = 0;
\r
1624 uint32 writedata = 0;
\r
1625 uint32 inhibit = 0;
\r
1626 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
1627 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
1628 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
1629 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
1630 WRITE_PIXEL_16(a1, writedata);
\r
1633 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1634 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1641 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1642 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1643 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1646 #ifndef blitter_code_0x308000a4
\r
1647 #define blitter_code_0x308000a4
\r
1648 void blitter_0x308000a4(void)
\r
1650 while (outer_loop--)
\r
1652 inner_loop=n_pixels;
\r
1653 while (inner_loop--)
\r
1655 uint32 srcdata = 0;
\r
1656 uint32 srczdata = 0;
\r
1657 uint32 dstdata = 0;
\r
1658 uint32 dstzdata = 0;
\r
1659 uint32 writedata = 0;
\r
1660 uint32 inhibit = 0;
\r
1661 srcdata = READ_PIXEL_16(a2);
\r
1662 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
1663 writedata |= srcdata & dstdata;
\r
1664 WRITE_PIXEL_16(a1, writedata);
\r
1667 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1668 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1675 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1676 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1677 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1680 #ifndef blitter_code_0x14010024
\r
1681 #define blitter_code_0x14010024
\r
1682 void blitter_0x14010024(void)
\r
1684 while (outer_loop--)
\r
1686 inner_loop=n_pixels;
\r
1687 while (inner_loop--)
\r
1689 uint32 srcdata = 0;
\r
1690 uint32 srczdata = 0;
\r
1691 uint32 dstdata = 0;
\r
1692 uint32 dstzdata = 0;
\r
1693 uint32 writedata = 0;
\r
1694 uint32 inhibit = 0;
\r
1695 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
1696 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
1697 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
1698 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
1699 WRITE_PIXEL_16(a1, writedata);
\r
1702 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1703 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1710 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1711 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1712 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1715 #ifndef blitter_code_0x14010023
\r
1716 #define blitter_code_0x14010023
\r
1717 void blitter_0x14010023(void)
\r
1719 while (outer_loop--)
\r
1721 inner_loop=n_pixels;
\r
1722 while (inner_loop--)
\r
1724 uint32 srcdata = 0;
\r
1725 uint32 srczdata = 0;
\r
1726 uint32 dstdata = 0;
\r
1727 uint32 dstzdata = 0;
\r
1728 uint32 writedata = 0;
\r
1729 uint32 inhibit = 0;
\r
1730 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1731 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
1732 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1733 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
1734 WRITE_PIXEL_8(a1, writedata);
\r
1737 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1738 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1745 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1746 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1747 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1750 #ifndef blitter_code_0x30e000a4
\r
1751 #define blitter_code_0x30e000a4
\r
1752 void blitter_0x30e000a4(void)
\r
1754 while (outer_loop--)
\r
1756 inner_loop=n_pixels;
\r
1757 while (inner_loop--)
\r
1759 uint32 srcdata = 0;
\r
1760 uint32 srczdata = 0;
\r
1761 uint32 dstdata = 0;
\r
1762 uint32 dstzdata = 0;
\r
1763 uint32 writedata = 0;
\r
1764 uint32 inhibit = 0;
\r
1765 srcdata = READ_PIXEL_16(a2);
\r
1766 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
1767 writedata |= ~srcdata & dstdata;
\r
1768 writedata |= srcdata & ~dstdata;
\r
1769 writedata |= srcdata & dstdata;
\r
1770 WRITE_PIXEL_16(a1, writedata);
\r
1773 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1774 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1781 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1782 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1783 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1786 #ifndef blitter_code_0x10000013
\r
1787 #define blitter_code_0x10000013
\r
1788 void blitter_0x10000013(void)
\r
1790 while (outer_loop--)
\r
1792 inner_loop=n_pixels;
\r
1793 while (inner_loop--)
\r
1795 uint32 srcdata = 0;
\r
1796 uint32 srczdata = 0;
\r
1797 uint32 dstdata = 0;
\r
1798 uint32 dstzdata = 0;
\r
1799 uint32 writedata = 0;
\r
1800 uint32 inhibit = 0;
\r
1801 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1802 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1803 WRITE_PIXEL_8(a1, writedata);
\r
1806 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1807 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1814 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1815 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1816 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1819 #ifndef blitter_code_0x00c00292
\r
1820 #define blitter_code_0x00c00292
\r
1821 void blitter_0x00c00292(void)
\r
1823 while (outer_loop--)
\r
1825 inner_loop=n_pixels;
\r
1826 while (inner_loop--)
\r
1828 uint32 srcdata = 0;
\r
1829 uint32 srczdata = 0;
\r
1830 uint32 dstdata = 0;
\r
1831 uint32 dstzdata = 0;
\r
1832 uint32 writedata = 0;
\r
1833 uint32 inhibit = 0;
\r
1834 srcdata = READ_PIXEL_4(a2);
\r
1835 dstdata = READ_PIXEL_4(a1);
\r
1836 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
1837 writedata |= srcdata & ~dstdata;
\r
1838 writedata |= srcdata & dstdata;
\r
1839 WRITE_PIXEL_4(a1, writedata);
\r
1842 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1843 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1850 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1851 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1852 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1855 #ifndef blitter_code_0x008000a4
\r
1856 #define blitter_code_0x008000a4
\r
1857 void blitter_0x008000a4(void)
\r
1859 while (outer_loop--)
\r
1861 inner_loop=n_pixels;
\r
1862 while (inner_loop--)
\r
1864 uint32 srcdata = 0;
\r
1865 uint32 srczdata = 0;
\r
1866 uint32 dstdata = 0;
\r
1867 uint32 dstzdata = 0;
\r
1868 uint32 writedata = 0;
\r
1869 uint32 inhibit = 0;
\r
1870 srcdata = READ_PIXEL_16(a2);
\r
1871 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
1872 writedata |= srcdata & dstdata;
\r
1873 WRITE_PIXEL_16(a1, writedata);
\r
1876 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1877 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1884 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1885 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1886 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1889 #ifndef blitter_code_0x00800092
\r
1890 #define blitter_code_0x00800092
\r
1891 void blitter_0x00800092(void)
\r
1893 while (outer_loop--)
\r
1895 inner_loop=n_pixels;
\r
1896 while (inner_loop--)
\r
1898 uint32 srcdata = 0;
\r
1899 uint32 srczdata = 0;
\r
1900 uint32 dstdata = 0;
\r
1901 uint32 dstzdata = 0;
\r
1902 uint32 writedata = 0;
\r
1903 uint32 inhibit = 0;
\r
1904 srcdata = READ_PIXEL_4(a2);
\r
1905 dstdata = READ_RDATA_4(DSTDATA, a1, a1_phrase_mode);
\r
1906 writedata |= srcdata & dstdata;
\r
1907 WRITE_PIXEL_4(a1, writedata);
\r
1910 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1911 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1918 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1919 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1920 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1923 #ifndef blitter_code_0x2cc10023
\r
1924 #define blitter_code_0x2cc10023
\r
1925 void blitter_0x2cc10023(void)
\r
1927 while (outer_loop--)
\r
1929 inner_loop=n_pixels;
\r
1930 while (inner_loop--)
\r
1932 uint32 srcdata = 0;
\r
1933 uint32 srczdata = 0;
\r
1934 uint32 dstdata = 0;
\r
1935 uint32 dstzdata = 0;
\r
1936 uint32 writedata = 0;
\r
1937 uint32 inhibit = 0;
\r
1938 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1939 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
1940 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1941 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
1944 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
1945 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1948 WRITE_PIXEL_8(a1, writedata);
\r
1952 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1953 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1960 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1961 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
1962 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
1965 #ifndef blitter_code_0x34c10023
\r
1966 #define blitter_code_0x34c10023
\r
1967 void blitter_0x34c10023(void)
\r
1969 while (outer_loop--)
\r
1971 inner_loop=n_pixels;
\r
1972 while (inner_loop--)
\r
1974 uint32 srcdata = 0;
\r
1975 uint32 srczdata = 0;
\r
1976 uint32 dstdata = 0;
\r
1977 uint32 dstzdata = 0;
\r
1978 uint32 writedata = 0;
\r
1979 uint32 inhibit = 0;
\r
1980 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
1981 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
1982 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
1985 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
1986 } else { srczdata=dstzdata; writedata=dstdata; }
\r
1987 WRITE_PIXEL_8(a1, writedata);
\r
1990 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
1991 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
1998 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
1999 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2000 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2003 #ifndef blitter_code_0x38c0429b
\r
2004 #define blitter_code_0x38c0429b
\r
2005 void blitter_0x38c0429b(void)
\r
2007 while (outer_loop--)
\r
2009 inner_loop=n_pixels;
\r
2010 while (inner_loop--)
\r
2012 uint32 srcdata = 0;
\r
2013 uint32 srczdata = 0;
\r
2014 uint32 dstdata = 0;
\r
2015 uint32 dstzdata = 0;
\r
2016 uint32 writedata = 0;
\r
2017 uint32 inhibit = 0;
\r
2018 srcdata = READ_PIXEL_8(a2);
\r
2019 dstdata = READ_PIXEL_8(a1);
\r
2020 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
2021 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2022 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
2025 writedata |= srcdata & ~dstdata;
\r
2026 writedata |= srcdata & dstdata;
\r
2027 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2028 WRITE_PIXEL_8(a1, writedata);
\r
2031 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2032 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2039 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2040 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2041 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2044 #ifndef blitter_code_0x3cc1001b
\r
2045 #define blitter_code_0x3cc1001b
\r
2046 void blitter_0x3cc1001b(void)
\r
2048 while (outer_loop--)
\r
2050 inner_loop=n_pixels;
\r
2051 while (inner_loop--)
\r
2053 uint32 srcdata = 0;
\r
2054 uint32 srczdata = 0;
\r
2055 uint32 dstdata = 0;
\r
2056 uint32 dstzdata = 0;
\r
2057 uint32 writedata = 0;
\r
2058 uint32 inhibit = 0;
\r
2059 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2060 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2061 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2062 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2065 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2066 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2067 WRITE_PIXEL_8(a1, writedata);
\r
2070 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2071 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2078 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2079 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2080 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2083 #ifndef blitter_code_0x2cc1001b
\r
2084 #define blitter_code_0x2cc1001b
\r
2085 void blitter_0x2cc1001b(void)
\r
2087 while (outer_loop--)
\r
2089 inner_loop=n_pixels;
\r
2090 while (inner_loop--)
\r
2092 uint32 srcdata = 0;
\r
2093 uint32 srczdata = 0;
\r
2094 uint32 dstdata = 0;
\r
2095 uint32 dstzdata = 0;
\r
2096 uint32 writedata = 0;
\r
2097 uint32 inhibit = 0;
\r
2098 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2099 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2100 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2101 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2104 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2105 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2108 WRITE_PIXEL_8(a1, writedata);
\r
2112 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2113 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2120 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2121 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2122 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2125 #ifndef blitter_code_0x08c0429b
\r
2126 #define blitter_code_0x08c0429b
\r
2127 void blitter_0x08c0429b(void)
\r
2129 while (outer_loop--)
\r
2131 inner_loop=n_pixels;
\r
2132 while (inner_loop--)
\r
2134 uint32 srcdata = 0;
\r
2135 uint32 srczdata = 0;
\r
2136 uint32 dstdata = 0;
\r
2137 uint32 dstzdata = 0;
\r
2138 uint32 writedata = 0;
\r
2139 uint32 inhibit = 0;
\r
2140 srcdata = READ_PIXEL_8(a2);
\r
2141 dstdata = READ_PIXEL_8(a1);
\r
2142 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
2143 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2144 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
2147 writedata |= srcdata & ~dstdata;
\r
2148 writedata |= srcdata & dstdata;
\r
2149 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2152 WRITE_PIXEL_8(a1, writedata);
\r
2156 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2157 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2164 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2165 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2166 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2169 #ifndef blitter_code_0x1cc1001b
\r
2170 #define blitter_code_0x1cc1001b
\r
2171 void blitter_0x1cc1001b(void)
\r
2173 while (outer_loop--)
\r
2175 inner_loop=n_pixels;
\r
2176 while (inner_loop--)
\r
2178 uint32 srcdata = 0;
\r
2179 uint32 srczdata = 0;
\r
2180 uint32 dstdata = 0;
\r
2181 uint32 dstzdata = 0;
\r
2182 uint32 writedata = 0;
\r
2183 uint32 inhibit = 0;
\r
2184 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2185 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2186 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2187 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2190 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2191 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2192 WRITE_PIXEL_8(a1, writedata);
\r
2195 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2196 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2203 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2204 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2205 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2208 #ifndef blitter_code_0x0cc1001b
\r
2209 #define blitter_code_0x0cc1001b
\r
2210 void blitter_0x0cc1001b(void)
\r
2212 while (outer_loop--)
\r
2214 inner_loop=n_pixels;
\r
2215 while (inner_loop--)
\r
2217 uint32 srcdata = 0;
\r
2218 uint32 srczdata = 0;
\r
2219 uint32 dstdata = 0;
\r
2220 uint32 dstzdata = 0;
\r
2221 uint32 writedata = 0;
\r
2222 uint32 inhibit = 0;
\r
2223 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2224 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2225 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2226 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2229 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2230 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2233 WRITE_PIXEL_8(a1, writedata);
\r
2237 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2238 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2245 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2246 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2247 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2250 #ifndef blitter_code_0x3cc10023
\r
2251 #define blitter_code_0x3cc10023
\r
2252 void blitter_0x3cc10023(void)
\r
2254 while (outer_loop--)
\r
2256 inner_loop=n_pixels;
\r
2257 while (inner_loop--)
\r
2259 uint32 srcdata = 0;
\r
2260 uint32 srczdata = 0;
\r
2261 uint32 dstdata = 0;
\r
2262 uint32 dstzdata = 0;
\r
2263 uint32 writedata = 0;
\r
2264 uint32 inhibit = 0;
\r
2265 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2266 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2267 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2268 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2271 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2272 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2273 WRITE_PIXEL_8(a1, writedata);
\r
2276 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2277 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2284 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2285 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2286 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2289 #ifndef blitter_code_0x08c0009b
\r
2290 #define blitter_code_0x08c0009b
\r
2291 void blitter_0x08c0009b(void)
\r
2293 while (outer_loop--)
\r
2295 inner_loop=n_pixels;
\r
2296 while (inner_loop--)
\r
2298 uint32 srcdata = 0;
\r
2299 uint32 srczdata = 0;
\r
2300 uint32 dstdata = 0;
\r
2301 uint32 dstzdata = 0;
\r
2302 uint32 writedata = 0;
\r
2303 uint32 inhibit = 0;
\r
2304 srcdata = READ_PIXEL_8(a2);
\r
2305 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2306 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2309 writedata |= srcdata & ~dstdata;
\r
2310 writedata |= srcdata & dstdata;
\r
2311 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2314 WRITE_PIXEL_8(a1, writedata);
\r
2318 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2319 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2326 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2327 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2328 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2331 #ifndef blitter_code_0x28c0429b
\r
2332 #define blitter_code_0x28c0429b
\r
2333 void blitter_0x28c0429b(void)
\r
2335 while (outer_loop--)
\r
2337 inner_loop=n_pixels;
\r
2338 while (inner_loop--)
\r
2340 uint32 srcdata = 0;
\r
2341 uint32 srczdata = 0;
\r
2342 uint32 dstdata = 0;
\r
2343 uint32 dstzdata = 0;
\r
2344 uint32 writedata = 0;
\r
2345 uint32 inhibit = 0;
\r
2346 srcdata = READ_PIXEL_8(a2);
\r
2347 dstdata = READ_PIXEL_8(a1);
\r
2348 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
2349 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2350 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
2353 writedata |= srcdata & ~dstdata;
\r
2354 writedata |= srcdata & dstdata;
\r
2355 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2358 WRITE_PIXEL_8(a1, writedata);
\r
2362 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2363 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2370 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2371 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2372 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2375 #ifndef blitter_code_0x18c0429b
\r
2376 #define blitter_code_0x18c0429b
\r
2377 void blitter_0x18c0429b(void)
\r
2379 while (outer_loop--)
\r
2381 inner_loop=n_pixels;
\r
2382 while (inner_loop--)
\r
2384 uint32 srcdata = 0;
\r
2385 uint32 srczdata = 0;
\r
2386 uint32 dstdata = 0;
\r
2387 uint32 dstzdata = 0;
\r
2388 uint32 writedata = 0;
\r
2389 uint32 inhibit = 0;
\r
2390 srcdata = READ_PIXEL_8(a2);
\r
2391 dstdata = READ_PIXEL_8(a1);
\r
2392 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
2393 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2394 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
2397 writedata |= srcdata & ~dstdata;
\r
2398 writedata |= srcdata & dstdata;
\r
2399 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2400 WRITE_PIXEL_8(a1, writedata);
\r
2403 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2404 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2411 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2412 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2413 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2416 #ifndef blitter_code_0x34010005
\r
2417 #define blitter_code_0x34010005
\r
2418 void blitter_0x34010005(void)
\r
2420 while (outer_loop--)
\r
2422 inner_loop=n_pixels;
\r
2423 while (inner_loop--)
\r
2425 uint32 srcdata = 0;
\r
2426 uint32 srczdata = 0;
\r
2427 uint32 dstdata = 0;
\r
2428 uint32 dstzdata = 0;
\r
2429 uint32 writedata = 0;
\r
2430 uint32 inhibit = 0;
\r
2431 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
2432 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
2433 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
2434 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
2435 WRITE_PIXEL_32(a1, writedata);
\r
2438 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2439 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2446 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2447 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2448 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2451 #ifndef blitter_code_0x3401002d
\r
2452 #define blitter_code_0x3401002d
\r
2453 void blitter_0x3401002d(void)
\r
2455 while (outer_loop--)
\r
2457 inner_loop=n_pixels;
\r
2458 while (inner_loop--)
\r
2460 uint32 srcdata = 0;
\r
2461 uint32 srczdata = 0;
\r
2462 uint32 dstdata = 0;
\r
2463 uint32 dstzdata = 0;
\r
2464 uint32 writedata = 0;
\r
2465 uint32 inhibit = 0;
\r
2466 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
2467 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
2468 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
2469 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
2470 WRITE_PIXEL_32(a1, writedata);
\r
2473 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2474 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2481 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2482 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2483 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2486 #ifndef blitter_code_0x14010025
\r
2487 #define blitter_code_0x14010025
\r
2488 void blitter_0x14010025(void)
\r
2490 while (outer_loop--)
\r
2492 inner_loop=n_pixels;
\r
2493 while (inner_loop--)
\r
2495 uint32 srcdata = 0;
\r
2496 uint32 srczdata = 0;
\r
2497 uint32 dstdata = 0;
\r
2498 uint32 dstzdata = 0;
\r
2499 uint32 writedata = 0;
\r
2500 uint32 inhibit = 0;
\r
2501 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
2502 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
2503 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
2504 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
2505 WRITE_PIXEL_32(a1, writedata);
\r
2508 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2509 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2516 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2517 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2518 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2521 #ifndef blitter_code_0x34010025
\r
2522 #define blitter_code_0x34010025
\r
2523 void blitter_0x34010025(void)
\r
2525 while (outer_loop--)
\r
2527 inner_loop=n_pixels;
\r
2528 while (inner_loop--)
\r
2530 uint32 srcdata = 0;
\r
2531 uint32 srczdata = 0;
\r
2532 uint32 dstdata = 0;
\r
2533 uint32 dstzdata = 0;
\r
2534 uint32 writedata = 0;
\r
2535 uint32 inhibit = 0;
\r
2536 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
2537 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
2538 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
2539 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
2540 WRITE_PIXEL_32(a1, writedata);
\r
2543 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2544 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2551 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2552 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2553 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2556 #ifndef blitter_code_0x3401006c
\r
2557 #define blitter_code_0x3401006c
\r
2558 void blitter_0x3401006c(void)
\r
2560 while (outer_loop--)
\r
2562 inner_loop=n_pixels;
\r
2563 while (inner_loop--)
\r
2565 uint32 srcdata = 0;
\r
2566 uint32 srczdata = 0;
\r
2567 uint32 dstdata = 0;
\r
2568 uint32 dstzdata = 0;
\r
2569 uint32 writedata = 0;
\r
2570 uint32 inhibit = 0;
\r
2571 srcdata = READ_RDATA_32(SRCDATA, a1, a1_phrase_mode);
\r
2572 srczdata = READ_RDATA_32(SRCZINT, a1, a1_phrase_mode);
\r
2573 dstdata = READ_RDATA_32(DSTDATA, a2, a2_phrase_mode);
\r
2574 writedata= READ_RDATA_32(PATTERNDATA, a2, a2_phrase_mode);
\r
2575 WRITE_PIXEL_32(a2, writedata);
\r
2578 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2579 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2586 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2587 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2588 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2591 #ifndef blitter_code_0x2401022a
\r
2592 #define blitter_code_0x2401022a
\r
2593 void blitter_0x2401022a(void)
\r
2595 while (outer_loop--)
\r
2597 inner_loop=n_pixels;
\r
2598 while (inner_loop--)
\r
2600 uint32 srcdata = 0;
\r
2601 uint32 srczdata = 0;
\r
2602 uint32 dstdata = 0;
\r
2603 uint32 dstzdata = 0;
\r
2604 uint32 writedata = 0;
\r
2605 uint32 inhibit = 0;
\r
2606 srcdata = READ_RDATA_4(SRCDATA, a2, a2_phrase_mode);
\r
2607 srczdata = READ_RDATA_4(SRCZINT, a2, a2_phrase_mode);
\r
2608 dstdata = READ_PIXEL_4(a1);
\r
2609 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
2610 writedata= READ_RDATA_4(PATTERNDATA, a1, a1_phrase_mode);
\r
2611 WRITE_PIXEL_4(a1, writedata);
\r
2614 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2615 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2622 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2623 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2624 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2627 #ifndef blitter_code_0x2401006a
\r
2628 #define blitter_code_0x2401006a
\r
2629 void blitter_0x2401006a(void)
\r
2631 while (outer_loop--)
\r
2633 inner_loop=n_pixels;
\r
2634 while (inner_loop--)
\r
2636 uint32 srcdata = 0;
\r
2637 uint32 srczdata = 0;
\r
2638 uint32 dstdata = 0;
\r
2639 uint32 dstzdata = 0;
\r
2640 uint32 writedata = 0;
\r
2641 uint32 inhibit = 0;
\r
2642 srcdata = READ_RDATA_32(SRCDATA, a1, a1_phrase_mode);
\r
2643 srczdata = READ_RDATA_32(SRCZINT, a1, a1_phrase_mode);
\r
2644 dstdata = READ_RDATA_32(DSTDATA, a2, a2_phrase_mode);
\r
2645 writedata= READ_RDATA_32(PATTERNDATA, a2, a2_phrase_mode);
\r
2646 WRITE_PIXEL_32(a2, writedata);
\r
2649 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2650 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2657 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2658 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2659 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2662 #ifndef blitter_code_0x00c002e4
\r
2663 #define blitter_code_0x00c002e4
\r
2664 void blitter_0x00c002e4(void)
\r
2666 while (outer_loop--)
\r
2668 inner_loop=n_pixels;
\r
2669 while (inner_loop--)
\r
2671 uint32 srcdata = 0;
\r
2672 uint32 srczdata = 0;
\r
2673 uint32 dstdata = 0;
\r
2674 uint32 dstzdata = 0;
\r
2675 uint32 writedata = 0;
\r
2676 uint32 inhibit = 0;
\r
2677 srcdata = READ_PIXEL_16(a1);
\r
2678 dstdata = READ_PIXEL_16(a2);
\r
2679 dstzdata = READ_RDATA_16(DSTZ, a2, a2_phrase_mode);
\r
2680 srczdata=z_i[colour_index]>>16;
\r
2681 writedata |= srcdata & ~dstdata;
\r
2682 writedata |= srcdata & dstdata;
\r
2684 int intensity = srcdata & 0xFF;
\r
2685 int ia = gd_ia >> 16;
\r
2687 ia = 0xFFFFFF00 | ia;
\r
2691 if(intensity > 0xFF)
\r
2693 writedata = (srcdata & 0xFF00) | intensity;
\r
2695 WRITE_PIXEL_16(a2, writedata);
\r
2698 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2699 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2700 z_i[colour_index]+=zadd;
\r
2701 gd_i[colour_index] += gd_ia;
\r
2702 gd_c[colour_index] += gd_ca;
\r
2709 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2710 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2711 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2714 #ifndef blitter_code_0x04010212
\r
2715 #define blitter_code_0x04010212
\r
2716 void blitter_0x04010212(void)
\r
2718 while (outer_loop--)
\r
2720 inner_loop=n_pixels;
\r
2721 while (inner_loop--)
\r
2723 uint32 srcdata = 0;
\r
2724 uint32 srczdata = 0;
\r
2725 uint32 dstdata = 0;
\r
2726 uint32 dstzdata = 0;
\r
2727 uint32 writedata = 0;
\r
2728 uint32 inhibit = 0;
\r
2729 srcdata = READ_RDATA_4(SRCDATA, a2, a2_phrase_mode);
\r
2730 srczdata = READ_RDATA_4(SRCZINT, a2, a2_phrase_mode);
\r
2731 dstdata = READ_PIXEL_4(a1);
\r
2732 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
2733 writedata= READ_RDATA_4(PATTERNDATA, a1, a1_phrase_mode);
\r
2734 WRITE_PIXEL_4(a1, writedata);
\r
2737 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2738 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2745 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2746 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2747 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2750 #ifndef blitter_code_0x2c010023
\r
2751 #define blitter_code_0x2c010023
\r
2752 void blitter_0x2c010023(void)
\r
2754 while (outer_loop--)
\r
2756 inner_loop=n_pixels;
\r
2757 while (inner_loop--)
\r
2759 uint32 srcdata = 0;
\r
2760 uint32 srczdata = 0;
\r
2761 uint32 dstdata = 0;
\r
2762 uint32 dstzdata = 0;
\r
2763 uint32 writedata = 0;
\r
2764 uint32 inhibit = 0;
\r
2765 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2766 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2767 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2768 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2771 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2772 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2775 WRITE_PIXEL_8(a1, writedata);
\r
2779 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2780 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2787 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2788 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2789 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2792 #ifndef blitter_code_0x3c010023
\r
2793 #define blitter_code_0x3c010023
\r
2794 void blitter_0x3c010023(void)
\r
2796 while (outer_loop--)
\r
2798 inner_loop=n_pixels;
\r
2799 while (inner_loop--)
\r
2801 uint32 srcdata = 0;
\r
2802 uint32 srczdata = 0;
\r
2803 uint32 dstdata = 0;
\r
2804 uint32 dstzdata = 0;
\r
2805 uint32 writedata = 0;
\r
2806 uint32 inhibit = 0;
\r
2807 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
2808 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
2809 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
2810 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2813 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
2814 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2815 WRITE_PIXEL_8(a1, writedata);
\r
2818 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2819 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2826 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2827 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2828 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2831 #ifndef blitter_code_0x3401006b
\r
2832 #define blitter_code_0x3401006b
\r
2833 void blitter_0x3401006b(void)
\r
2835 while (outer_loop--)
\r
2837 inner_loop=n_pixels;
\r
2838 while (inner_loop--)
\r
2840 uint32 srcdata = 0;
\r
2841 uint32 srczdata = 0;
\r
2842 uint32 dstdata = 0;
\r
2843 uint32 dstzdata = 0;
\r
2844 uint32 writedata = 0;
\r
2845 uint32 inhibit = 0;
\r
2846 srcdata = READ_RDATA_32(SRCDATA, a1, a1_phrase_mode);
\r
2847 srczdata = READ_RDATA_32(SRCZINT, a1, a1_phrase_mode);
\r
2848 dstdata = READ_RDATA_32(DSTDATA, a2, a2_phrase_mode);
\r
2851 writedata= READ_RDATA_32(PATTERNDATA, a2, a2_phrase_mode);
\r
2852 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2853 WRITE_PIXEL_32(a2, writedata);
\r
2856 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2857 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2864 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2865 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2866 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2869 #ifndef blitter_code_0x00c000ad
\r
2870 #define blitter_code_0x00c000ad
\r
2871 void blitter_0x00c000ad(void)
\r
2873 while (outer_loop--)
\r
2875 inner_loop=n_pixels;
\r
2876 while (inner_loop--)
\r
2878 uint32 srcdata = 0;
\r
2879 uint32 srczdata = 0;
\r
2880 uint32 dstdata = 0;
\r
2881 uint32 dstzdata = 0;
\r
2882 uint32 writedata = 0;
\r
2883 uint32 inhibit = 0;
\r
2884 srcdata = READ_PIXEL_32(a2);
\r
2885 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
2886 writedata |= srcdata & ~dstdata;
\r
2887 writedata |= srcdata & dstdata;
\r
2888 WRITE_PIXEL_32(a1, writedata);
\r
2891 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2892 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2899 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2900 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2901 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2904 #ifndef blitter_code_0x00e002ad
\r
2905 #define blitter_code_0x00e002ad
\r
2906 void blitter_0x00e002ad(void)
\r
2908 while (outer_loop--)
\r
2910 inner_loop=n_pixels;
\r
2911 while (inner_loop--)
\r
2913 uint32 srcdata = 0;
\r
2914 uint32 srczdata = 0;
\r
2915 uint32 dstdata = 0;
\r
2916 uint32 dstzdata = 0;
\r
2917 uint32 writedata = 0;
\r
2918 uint32 inhibit = 0;
\r
2919 srcdata = READ_PIXEL_32(a2);
\r
2920 dstdata = READ_PIXEL_32(a1);
\r
2921 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
2922 writedata |= ~srcdata & dstdata;
\r
2923 writedata |= srcdata & ~dstdata;
\r
2924 writedata |= srcdata & dstdata;
\r
2925 WRITE_PIXEL_32(a1, writedata);
\r
2928 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2929 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2936 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2937 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2938 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2941 #ifndef blitter_code_0x08c040a4
\r
2942 #define blitter_code_0x08c040a4
\r
2943 void blitter_0x08c040a4(void)
\r
2945 while (outer_loop--)
\r
2947 inner_loop=n_pixels;
\r
2948 while (inner_loop--)
\r
2950 uint32 srcdata = 0;
\r
2951 uint32 srczdata = 0;
\r
2952 uint32 dstdata = 0;
\r
2953 uint32 dstzdata = 0;
\r
2954 uint32 writedata = 0;
\r
2955 uint32 inhibit = 0;
\r
2956 srcdata = READ_PIXEL_16(a2);
\r
2957 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
2958 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
2959 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
2962 writedata |= srcdata & ~dstdata;
\r
2963 writedata |= srcdata & dstdata;
\r
2964 } else { srczdata=dstzdata; writedata=dstdata; }
\r
2967 WRITE_PIXEL_16(a1, writedata);
\r
2971 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
2972 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
2979 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
2980 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
2981 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
2984 #ifndef blitter_code_0x08c000e4
\r
2985 #define blitter_code_0x08c000e4
\r
2986 void blitter_0x08c000e4(void)
\r
2988 while (outer_loop--)
\r
2990 inner_loop=n_pixels;
\r
2991 while (inner_loop--)
\r
2993 uint32 srcdata = 0;
\r
2994 uint32 srczdata = 0;
\r
2995 uint32 dstdata = 0;
\r
2996 uint32 dstzdata = 0;
\r
2997 uint32 writedata = 0;
\r
2998 uint32 inhibit = 0;
\r
2999 srcdata = READ_PIXEL_16(a1);
\r
3000 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
3001 srczdata=z_i[colour_index]>>16;
\r
3004 writedata |= srcdata & ~dstdata;
\r
3005 writedata |= srcdata & dstdata;
\r
3007 int intensity = srcdata & 0xFF;
\r
3008 int ia = gd_ia >> 16;
\r
3010 ia = 0xFFFFFF00 | ia;
\r
3014 if(intensity > 0xFF)
\r
3016 writedata = (srcdata & 0xFF00) | intensity;
\r
3018 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3021 WRITE_PIXEL_16(a2, writedata);
\r
3025 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3026 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3027 z_i[colour_index]+=zadd;
\r
3028 gd_i[colour_index] += gd_ia;
\r
3029 gd_c[colour_index] += gd_ca;
\r
3036 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3037 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3038 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3041 #ifndef blitter_code_0x2c010024
\r
3042 #define blitter_code_0x2c010024
\r
3043 void blitter_0x2c010024(void)
\r
3045 while (outer_loop--)
\r
3047 inner_loop=n_pixels;
\r
3048 while (inner_loop--)
\r
3050 uint32 srcdata = 0;
\r
3051 uint32 srczdata = 0;
\r
3052 uint32 dstdata = 0;
\r
3053 uint32 dstzdata = 0;
\r
3054 uint32 writedata = 0;
\r
3055 uint32 inhibit = 0;
\r
3056 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3057 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3058 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3059 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
3062 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3063 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
3064 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3067 WRITE_PIXEL_16(a1, writedata);
\r
3071 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3072 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3073 gd_i[colour_index] += gd_ia;
\r
3074 gd_c[colour_index] += gd_ca;
\r
3081 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3082 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3083 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3086 #ifndef blitter_code_0x3c010024
\r
3087 #define blitter_code_0x3c010024
\r
3088 void blitter_0x3c010024(void)
\r
3090 while (outer_loop--)
\r
3092 inner_loop=n_pixels;
\r
3093 while (inner_loop--)
\r
3095 uint32 srcdata = 0;
\r
3096 uint32 srczdata = 0;
\r
3097 uint32 dstdata = 0;
\r
3098 uint32 dstzdata = 0;
\r
3099 uint32 writedata = 0;
\r
3100 uint32 inhibit = 0;
\r
3101 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3102 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3103 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3104 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
3107 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3108 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
3109 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3110 WRITE_PIXEL_16(a1, writedata);
\r
3113 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3114 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3115 gd_i[colour_index] += gd_ia;
\r
3116 gd_c[colour_index] += gd_ca;
\r
3117 colour_index=(colour_index+1)&0x3;
\r
3124 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3125 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3126 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3129 #ifndef blitter_code_0x0c010024
\r
3130 #define blitter_code_0x0c010024
\r
3131 void blitter_0x0c010024(void)
\r
3133 while (outer_loop--)
\r
3135 inner_loop=n_pixels;
\r
3136 while (inner_loop--)
\r
3138 uint32 srcdata = 0;
\r
3139 uint32 srczdata = 0;
\r
3140 uint32 dstdata = 0;
\r
3141 uint32 dstzdata = 0;
\r
3142 uint32 writedata = 0;
\r
3143 uint32 inhibit = 0;
\r
3144 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3145 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3146 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3147 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
3150 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3151 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
3152 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3155 WRITE_PIXEL_16(a1, writedata);
\r
3159 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3160 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3161 gd_i[colour_index] += gd_ia;
\r
3162 gd_c[colour_index] += gd_ca;
\r
3169 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3170 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3171 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3174 #ifndef blitter_code_0x1401001d
\r
3175 #define blitter_code_0x1401001d
\r
3176 void blitter_0x1401001d(void)
\r
3178 while (outer_loop--)
\r
3180 inner_loop=n_pixels;
\r
3181 while (inner_loop--)
\r
3183 uint32 srcdata = 0;
\r
3184 uint32 srczdata = 0;
\r
3185 uint32 dstdata = 0;
\r
3186 uint32 dstzdata = 0;
\r
3187 uint32 writedata = 0;
\r
3188 uint32 inhibit = 0;
\r
3189 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
3190 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
3191 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
3192 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
3193 WRITE_PIXEL_32(a1, writedata);
\r
3196 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3197 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3204 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3205 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3206 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3209 #ifndef blitter_code_0x34c10003
\r
3210 #define blitter_code_0x34c10003
\r
3211 void blitter_0x34c10003(void)
\r
3213 while (outer_loop--)
\r
3215 inner_loop=n_pixels;
\r
3216 while (inner_loop--)
\r
3218 uint32 srcdata = 0;
\r
3219 uint32 srczdata = 0;
\r
3220 uint32 dstdata = 0;
\r
3221 uint32 dstzdata = 0;
\r
3222 uint32 writedata = 0;
\r
3223 uint32 inhibit = 0;
\r
3224 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
3225 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
3226 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
3227 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
3228 WRITE_PIXEL_8(a1, writedata);
\r
3231 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3232 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3239 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3240 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3241 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3244 #ifndef blitter_code_0x306002a4
\r
3245 #define blitter_code_0x306002a4
\r
3246 void blitter_0x306002a4(void)
\r
3248 while (outer_loop--)
\r
3250 inner_loop=n_pixels;
\r
3251 while (inner_loop--)
\r
3253 uint32 srcdata = 0;
\r
3254 uint32 srczdata = 0;
\r
3255 uint32 dstdata = 0;
\r
3256 uint32 dstzdata = 0;
\r
3257 uint32 writedata = 0;
\r
3258 uint32 inhibit = 0;
\r
3259 srcdata = READ_PIXEL_16(a2);
\r
3260 dstdata = READ_PIXEL_16(a1);
\r
3261 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
3262 writedata |= ~srcdata & dstdata;
\r
3263 writedata |= srcdata & ~dstdata;
\r
3264 WRITE_PIXEL_16(a1, writedata);
\r
3267 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3268 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3275 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3276 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3277 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3280 #ifndef blitter_code_0x08c00292
\r
3281 #define blitter_code_0x08c00292
\r
3282 void blitter_0x08c00292(void)
\r
3284 while (outer_loop--)
\r
3286 inner_loop=n_pixels;
\r
3287 while (inner_loop--)
\r
3289 uint32 srcdata = 0;
\r
3290 uint32 srczdata = 0;
\r
3291 uint32 dstdata = 0;
\r
3292 uint32 dstzdata = 0;
\r
3293 uint32 writedata = 0;
\r
3294 uint32 inhibit = 0;
\r
3295 srcdata = READ_PIXEL_4(a2);
\r
3296 dstdata = READ_PIXEL_4(a1);
\r
3297 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
3298 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
3301 writedata |= srcdata & ~dstdata;
\r
3302 writedata |= srcdata & dstdata;
\r
3303 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3306 WRITE_PIXEL_4(a1, writedata);
\r
3310 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3311 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3318 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3319 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3320 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3323 #ifndef blitter_code_0x14c10013
\r
3324 #define blitter_code_0x14c10013
\r
3325 void blitter_0x14c10013(void)
\r
3327 while (outer_loop--)
\r
3329 inner_loop=n_pixels;
\r
3330 while (inner_loop--)
\r
3332 uint32 srcdata = 0;
\r
3333 uint32 srczdata = 0;
\r
3334 uint32 dstdata = 0;
\r
3335 uint32 dstzdata = 0;
\r
3336 uint32 writedata = 0;
\r
3337 uint32 inhibit = 0;
\r
3338 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
3339 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
3340 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
3343 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
3344 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3345 WRITE_PIXEL_8(a1, writedata);
\r
3348 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3349 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3356 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3357 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3358 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3361 #ifndef blitter_code_0x38c0009b
\r
3362 #define blitter_code_0x38c0009b
\r
3363 void blitter_0x38c0009b(void)
\r
3365 while (outer_loop--)
\r
3367 inner_loop=n_pixels;
\r
3368 while (inner_loop--)
\r
3370 uint32 srcdata = 0;
\r
3371 uint32 srczdata = 0;
\r
3372 uint32 dstdata = 0;
\r
3373 uint32 dstzdata = 0;
\r
3374 uint32 writedata = 0;
\r
3375 uint32 inhibit = 0;
\r
3376 srcdata = READ_PIXEL_8(a2);
\r
3377 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
3378 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
3381 writedata |= srcdata & ~dstdata;
\r
3382 writedata |= srcdata & dstdata;
\r
3383 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3384 WRITE_PIXEL_8(a1, writedata);
\r
3387 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3388 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3395 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3396 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3397 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3400 #ifndef blitter_code_0x34c1001b
\r
3401 #define blitter_code_0x34c1001b
\r
3402 void blitter_0x34c1001b(void)
\r
3404 while (outer_loop--)
\r
3406 inner_loop=n_pixels;
\r
3407 while (inner_loop--)
\r
3409 uint32 srcdata = 0;
\r
3410 uint32 srczdata = 0;
\r
3411 uint32 dstdata = 0;
\r
3412 uint32 dstzdata = 0;
\r
3413 uint32 writedata = 0;
\r
3414 uint32 inhibit = 0;
\r
3415 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
3416 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
3417 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
3418 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
3419 WRITE_PIXEL_8(a1, writedata);
\r
3422 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3423 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3430 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3431 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3432 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3435 #ifndef blitter_code_0x1401001c
\r
3436 #define blitter_code_0x1401001c
\r
3437 void blitter_0x1401001c(void)
\r
3439 while (outer_loop--)
\r
3441 inner_loop=n_pixels;
\r
3442 while (inner_loop--)
\r
3444 uint32 srcdata = 0;
\r
3445 uint32 srczdata = 0;
\r
3446 uint32 dstdata = 0;
\r
3447 uint32 dstzdata = 0;
\r
3448 uint32 writedata = 0;
\r
3449 uint32 inhibit = 0;
\r
3450 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3451 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3452 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3453 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3454 WRITE_PIXEL_16(a1, writedata);
\r
3457 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3458 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3465 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3466 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3467 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3470 #ifndef blitter_code_0x08c000db
\r
3471 #define blitter_code_0x08c000db
\r
3472 void blitter_0x08c000db(void)
\r
3474 while (outer_loop--)
\r
3476 inner_loop=n_pixels;
\r
3477 while (inner_loop--)
\r
3479 uint32 srcdata = 0;
\r
3480 uint32 dstdata = 0;
\r
3481 uint32 writedata = 0;
\r
3482 srcdata = READ_PIXEL_8(a1);
\r
3483 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
3484 writedata |= srcdata & ~dstdata;
\r
3485 writedata |= srcdata & dstdata;
\r
3486 WRITE_PIXEL_8(a2, writedata);
\r
3489 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3490 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3497 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3498 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3499 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3502 #ifndef blitter_code_0x0401001b
\r
3503 #define blitter_code_0x0401001b
\r
3504 void blitter_0x0401001b(void)
\r
3506 while (outer_loop--)
\r
3508 inner_loop=n_pixels;
\r
3509 while (inner_loop--)
\r
3511 uint32 srcdata = 0;
\r
3512 uint32 srczdata = 0;
\r
3513 uint32 dstdata = 0;
\r
3514 uint32 dstzdata = 0;
\r
3515 uint32 writedata = 0;
\r
3516 uint32 inhibit = 0;
\r
3517 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
3518 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
3519 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
3520 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
3521 WRITE_PIXEL_8(a1, writedata);
\r
3524 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3525 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3532 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3533 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3534 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3537 #ifndef blitter_code_0x0401001d
\r
3538 #define blitter_code_0x0401001d
\r
3539 void blitter_0x0401001d(void)
\r
3541 while (outer_loop--)
\r
3543 inner_loop=n_pixels;
\r
3544 while (inner_loop--)
\r
3546 uint32 srcdata = 0;
\r
3547 uint32 srczdata = 0;
\r
3548 uint32 dstdata = 0;
\r
3549 uint32 dstzdata = 0;
\r
3550 uint32 writedata = 0;
\r
3551 uint32 inhibit = 0;
\r
3552 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
3553 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
3554 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
3555 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
3556 WRITE_PIXEL_32(a1, writedata);
\r
3559 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3560 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3567 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3568 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3569 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3572 #ifndef blitter_code_0x0401001c
\r
3573 #define blitter_code_0x0401001c
\r
3574 void blitter_0x0401001c(void)
\r
3576 while (outer_loop--)
\r
3578 inner_loop=n_pixels;
\r
3579 while (inner_loop--)
\r
3581 uint32 srcdata = 0;
\r
3582 uint32 srczdata = 0;
\r
3583 uint32 dstdata = 0;
\r
3584 uint32 dstzdata = 0;
\r
3585 uint32 writedata = 0;
\r
3586 uint32 inhibit = 0;
\r
3587 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3588 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3589 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3590 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3591 WRITE_PIXEL_16(a1, writedata);
\r
3594 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3595 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3602 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3603 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3604 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3607 #ifndef blitter_code_0x36013624
\r
3608 #define blitter_code_0x36013624
\r
3609 void blitter_0x36013624(void)
\r
3611 while (outer_loop--)
\r
3613 inner_loop=n_pixels;
\r
3614 while (inner_loop--)
\r
3616 uint32 srcdata = 0;
\r
3617 uint32 srczdata = 0;
\r
3618 uint32 dstdata = 0;
\r
3619 uint32 dstzdata = 0;
\r
3620 uint32 writedata = 0;
\r
3621 uint32 inhibit = 0;
\r
3622 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3623 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3624 dstdata = READ_PIXEL_16(a1);
\r
3625 dstzdata = READ_ZDATA_16(a1);
\r
3626 srczdata=z_i[colour_index]>>16;
\r
3627 if (srczdata == dstzdata) inhibit = 1;
\r
3628 if (srczdata > dstzdata) inhibit = 1;
\r
3631 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3632 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
3633 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3634 WRITE_PIXEL_16(a1, writedata);
\r
3635 WRITE_ZDATA_16(a1, srczdata);
\r
3638 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3639 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3640 z_i[colour_index]+=zadd;
\r
3641 gd_i[colour_index] += gd_ia;
\r
3642 gd_c[colour_index] += gd_ca;
\r
3643 colour_index=(colour_index+1)&0x3;
\r
3650 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3651 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3652 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3655 #ifndef blitter_code_0x04c10284
\r
3656 #define blitter_code_0x04c10284
\r
3657 void blitter_0x04c10284(void)
\r
3659 while (outer_loop--)
\r
3661 inner_loop=n_pixels;
\r
3662 while (inner_loop--)
\r
3664 uint32 srcdata = 0;
\r
3665 uint32 srczdata = 0;
\r
3666 uint32 dstdata = 0;
\r
3667 uint32 dstzdata = 0;
\r
3668 uint32 writedata = 0;
\r
3669 uint32 inhibit = 0;
\r
3670 srcdata = READ_PIXEL_16(a2);
\r
3671 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
3672 dstdata = READ_PIXEL_16(a1);
\r
3673 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
3676 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3677 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3680 WRITE_PIXEL_16(a1, writedata);
\r
3684 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3685 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3692 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3693 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3694 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3697 #ifndef blitter_code_0x14010004
\r
3698 #define blitter_code_0x14010004
\r
3699 void blitter_0x14010004(void)
\r
3701 while (outer_loop--)
\r
3703 inner_loop=n_pixels;
\r
3704 while (inner_loop--)
\r
3706 uint32 srcdata = 0;
\r
3707 uint32 srczdata = 0;
\r
3708 uint32 dstdata = 0;
\r
3709 uint32 dstzdata = 0;
\r
3710 uint32 writedata = 0;
\r
3711 uint32 inhibit = 0;
\r
3712 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
3713 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
3714 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3717 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
3718 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3719 WRITE_PIXEL_16(a1, writedata);
\r
3722 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3723 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3730 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3731 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3732 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3735 #ifndef blitter_code_0x06c076e4
\r
3736 #define blitter_code_0x06c076e4
\r
3737 void blitter_0x06c076e4(void)
\r
3739 while (outer_loop--)
\r
3741 inner_loop=n_pixels;
\r
3742 while (inner_loop--)
\r
3744 uint32 srcdata = 0;
\r
3745 uint32 srczdata = 0;
\r
3746 uint32 dstdata = 0;
\r
3747 uint32 dstzdata = 0;
\r
3748 uint32 writedata = 0;
\r
3749 uint32 inhibit = 0;
\r
3750 srcdata = READ_PIXEL_16(a1);
\r
3751 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
3752 dstdata = READ_PIXEL_16(a2);
\r
3753 dstzdata = READ_ZDATA_16(a2);
\r
3754 srczdata=z_i[colour_index]>>16;
\r
3755 if (srczdata == dstzdata) inhibit = 1;
\r
3756 if (srczdata > dstzdata) inhibit = 1;
\r
3757 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
3760 writedata |= srcdata & ~dstdata;
\r
3761 writedata |= srcdata & dstdata;
\r
3762 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3765 WRITE_PIXEL_16(a2, writedata);
\r
3766 WRITE_ZDATA_16(a2, srczdata);
\r
3770 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3771 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3772 z_i[colour_index]+=zadd;
\r
3779 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3780 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3781 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3784 #ifndef blitter_code_0x30c040a4
\r
3785 #define blitter_code_0x30c040a4
\r
3786 void blitter_0x30c040a4(void)
\r
3788 while (outer_loop--)
\r
3790 inner_loop=n_pixels;
\r
3791 while (inner_loop--)
\r
3793 uint32 srcdata = 0;
\r
3794 uint32 srczdata = 0;
\r
3795 uint32 dstdata = 0;
\r
3796 uint32 dstzdata = 0;
\r
3797 uint32 writedata = 0;
\r
3798 uint32 inhibit = 0;
\r
3799 srcdata = READ_PIXEL_16(a2);
\r
3800 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
3801 srczdata=z_i[colour_index]>>16;
\r
3802 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
3805 writedata |= srcdata & ~dstdata;
\r
3806 writedata |= srcdata & dstdata;
\r
3808 int intensity = srcdata & 0xFF;
\r
3809 int ia = gd_ia >> 16;
\r
3811 ia = 0xFFFFFF00 | ia;
\r
3815 if(intensity > 0xFF)
\r
3817 writedata = (srcdata & 0xFF00) | intensity;
\r
3819 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3820 WRITE_PIXEL_16(a1, writedata);
\r
3823 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3824 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3825 z_i[colour_index]+=zadd;
\r
3826 gd_i[colour_index] += gd_ia;
\r
3827 gd_c[colour_index] += gd_ca;
\r
3828 colour_index=(colour_index+1)&0x3;
\r
3835 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3836 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3837 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3840 #ifndef blitter_code_0x00c040db
\r
3841 #define blitter_code_0x00c040db
\r
3842 void blitter_0x00c040db(void)
\r
3844 while (outer_loop--)
\r
3846 inner_loop=n_pixels;
\r
3847 while (inner_loop--)
\r
3849 uint32 srcdata = 0;
\r
3850 uint32 srczdata = 0;
\r
3851 uint32 dstdata = 0;
\r
3852 uint32 dstzdata = 0;
\r
3853 uint32 writedata = 0;
\r
3854 uint32 inhibit = 0;
\r
3855 srcdata = READ_PIXEL_8(a1);
\r
3856 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
3857 if (srcdata == READ_RDATA_8(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
3860 writedata |= srcdata & ~dstdata;
\r
3861 writedata |= srcdata & dstdata;
\r
3862 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3865 WRITE_PIXEL_8(a2, writedata);
\r
3869 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3870 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3877 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3878 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3879 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3882 #ifndef blitter_code_0x30c0429b
\r
3883 #define blitter_code_0x30c0429b
\r
3884 void blitter_0x30c0429b(void)
\r
3886 while (outer_loop--)
\r
3888 inner_loop=n_pixels;
\r
3889 while (inner_loop--)
\r
3891 uint32 srcdata = 0;
\r
3892 uint32 srczdata = 0;
\r
3893 uint32 dstdata = 0;
\r
3894 uint32 dstzdata = 0;
\r
3895 uint32 writedata = 0;
\r
3896 uint32 inhibit = 0;
\r
3897 srcdata = READ_PIXEL_8(a2);
\r
3898 dstdata = READ_PIXEL_8(a1);
\r
3899 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
3900 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
3903 writedata |= srcdata & ~dstdata;
\r
3904 writedata |= srcdata & dstdata;
\r
3905 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3906 WRITE_PIXEL_8(a1, writedata);
\r
3909 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3910 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3917 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3918 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3919 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3922 #ifndef blitter_code_0x08c0409b
\r
3923 #define blitter_code_0x08c0409b
\r
3924 void blitter_0x08c0409b(void)
\r
3926 while (outer_loop--)
\r
3928 inner_loop=n_pixels;
\r
3929 while (inner_loop--)
\r
3931 uint32 srcdata = 0;
\r
3932 uint32 srczdata = 0;
\r
3933 uint32 dstdata = 0;
\r
3934 uint32 dstzdata = 0;
\r
3935 uint32 writedata = 0;
\r
3936 uint32 inhibit = 0;
\r
3937 srcdata = READ_PIXEL_8(a2);
\r
3938 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
3939 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
3940 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
3943 writedata |= srcdata & ~dstdata;
\r
3944 writedata |= srcdata & dstdata;
\r
3945 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3948 WRITE_PIXEL_8(a1, writedata);
\r
3952 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3953 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
3960 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
3961 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
3962 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
3965 #ifndef blitter_code_0x00c0029b
\r
3966 #define blitter_code_0x00c0029b
\r
3967 void blitter_0x00c0029b(void)
\r
3969 while (outer_loop--)
\r
3971 inner_loop=n_pixels;
\r
3972 while (inner_loop--)
\r
3974 uint32 srcdata = 0;
\r
3975 uint32 srczdata = 0;
\r
3976 uint32 dstdata = 0;
\r
3977 uint32 dstzdata = 0;
\r
3978 uint32 writedata = 0;
\r
3979 uint32 inhibit = 0;
\r
3980 srcdata = READ_PIXEL_8(a2);
\r
3981 dstdata = READ_PIXEL_8(a1);
\r
3982 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
3985 writedata |= srcdata & ~dstdata;
\r
3986 writedata |= srcdata & dstdata;
\r
3987 } else { srczdata=dstzdata; writedata=dstdata; }
\r
3990 WRITE_PIXEL_8(a1, writedata);
\r
3994 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
3995 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4002 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4003 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4004 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4007 #ifndef blitter_code_0x20c00003
\r
4008 #define blitter_code_0x20c00003
\r
4009 void blitter_0x20c00003(void)
\r
4011 while (outer_loop--)
\r
4013 inner_loop=n_pixels;
\r
4014 while (inner_loop--)
\r
4016 uint32 srcdata = 0;
\r
4017 uint32 srczdata = 0;
\r
4018 uint32 dstdata = 0;
\r
4019 uint32 dstzdata = 0;
\r
4020 uint32 writedata = 0;
\r
4021 uint32 inhibit = 0;
\r
4022 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
4023 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
4024 writedata |= srcdata & ~dstdata;
\r
4025 writedata |= srcdata & dstdata;
\r
4026 WRITE_PIXEL_8(a1, writedata);
\r
4029 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4030 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4037 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4038 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4039 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4042 #ifndef blitter_code_0x00c0001b
\r
4043 #define blitter_code_0x00c0001b
\r
4044 void blitter_0x00c0001b(void)
\r
4046 while (outer_loop--)
\r
4048 inner_loop=n_pixels;
\r
4049 while (inner_loop--)
\r
4051 uint32 srcdata = 0;
\r
4052 uint32 srczdata = 0;
\r
4053 uint32 dstdata = 0;
\r
4054 uint32 dstzdata = 0;
\r
4055 uint32 writedata = 0;
\r
4056 uint32 inhibit = 0;
\r
4057 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
4058 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
4059 writedata |= srcdata & ~dstdata;
\r
4060 writedata |= srcdata & dstdata;
\r
4061 WRITE_PIXEL_8(a1, writedata);
\r
4064 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4065 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4072 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4073 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4074 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4077 #ifndef blitter_code_0x20c0002b
\r
4078 #define blitter_code_0x20c0002b
\r
4079 void blitter_0x20c0002b(void)
\r
4081 while (outer_loop--)
\r
4083 inner_loop=n_pixels;
\r
4084 while (inner_loop--)
\r
4086 uint32 srcdata = 0;
\r
4087 uint32 srczdata = 0;
\r
4088 uint32 dstdata = 0;
\r
4089 uint32 dstzdata = 0;
\r
4090 uint32 writedata = 0;
\r
4091 uint32 inhibit = 0;
\r
4092 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
4093 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
4094 writedata |= srcdata & ~dstdata;
\r
4095 writedata |= srcdata & dstdata;
\r
4096 WRITE_PIXEL_8(a1, writedata);
\r
4099 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4100 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4107 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4108 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4109 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4112 #ifndef blitter_code_0x30c0001c
\r
4113 #define blitter_code_0x30c0001c
\r
4114 void blitter_0x30c0001c(void)
\r
4116 while (outer_loop--)
\r
4118 inner_loop=n_pixels;
\r
4119 while (inner_loop--)
\r
4121 uint32 srcdata = 0;
\r
4122 uint32 srczdata = 0;
\r
4123 uint32 dstdata = 0;
\r
4124 uint32 dstzdata = 0;
\r
4125 uint32 writedata = 0;
\r
4126 uint32 inhibit = 0;
\r
4127 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4128 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4129 writedata |= srcdata & ~dstdata;
\r
4130 writedata |= srcdata & dstdata;
\r
4131 WRITE_PIXEL_16(a1, writedata);
\r
4134 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4135 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4142 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4143 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4144 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4147 #ifndef blitter_code_0x00c000db
\r
4148 #define blitter_code_0x00c000db
\r
4149 void blitter_0x00c000db(void)
\r
4151 while (outer_loop--)
\r
4153 inner_loop=n_pixels;
\r
4154 while (inner_loop--)
\r
4156 uint32 srcdata = 0;
\r
4157 uint32 srczdata = 0;
\r
4158 uint32 dstdata = 0;
\r
4159 uint32 dstzdata = 0;
\r
4160 uint32 writedata = 0;
\r
4161 uint32 inhibit = 0;
\r
4162 srcdata = READ_PIXEL_8(a1);
\r
4163 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
4164 writedata |= srcdata & ~dstdata;
\r
4165 writedata |= srcdata & dstdata;
\r
4166 WRITE_PIXEL_8(a2, writedata);
\r
4169 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4170 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4177 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4178 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4179 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4182 #ifndef blitter_code_0x00c00023
\r
4183 #define blitter_code_0x00c00023
\r
4184 void blitter_0x00c00023(void)
\r
4186 while (outer_loop--)
\r
4188 inner_loop=n_pixels;
\r
4189 while (inner_loop--)
\r
4191 uint32 srcdata = 0;
\r
4192 uint32 srczdata = 0;
\r
4193 uint32 dstdata = 0;
\r
4194 uint32 dstzdata = 0;
\r
4195 uint32 writedata = 0;
\r
4196 uint32 inhibit = 0;
\r
4197 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
4198 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
4199 writedata |= srcdata & ~dstdata;
\r
4200 writedata |= srcdata & dstdata;
\r
4201 WRITE_PIXEL_8(a1, writedata);
\r
4204 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4205 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4212 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4213 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4214 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4217 #ifndef blitter_code_0x34c10024
\r
4218 #define blitter_code_0x34c10024
\r
4219 void blitter_0x34c10024(void)
\r
4221 while (outer_loop--)
\r
4223 inner_loop=n_pixels;
\r
4224 while (inner_loop--)
\r
4226 uint32 srcdata = 0;
\r
4227 uint32 srczdata = 0;
\r
4228 uint32 dstdata = 0;
\r
4229 uint32 dstzdata = 0;
\r
4230 uint32 writedata = 0;
\r
4231 uint32 inhibit = 0;
\r
4232 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4233 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4234 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4235 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4236 WRITE_PIXEL_16(a1, writedata);
\r
4239 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4240 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4247 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4248 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4249 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4252 #ifndef blitter_code_0x3cc10024
\r
4253 #define blitter_code_0x3cc10024
\r
4254 void blitter_0x3cc10024(void)
\r
4256 while (outer_loop--)
\r
4258 inner_loop=n_pixels;
\r
4259 while (inner_loop--)
\r
4261 uint32 srcdata = 0;
\r
4262 uint32 srczdata = 0;
\r
4263 uint32 dstdata = 0;
\r
4264 uint32 dstzdata = 0;
\r
4265 uint32 writedata = 0;
\r
4266 uint32 inhibit = 0;
\r
4267 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4268 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4269 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4270 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
4273 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4274 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4275 WRITE_PIXEL_16(a1, writedata);
\r
4278 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4279 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4286 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4287 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4288 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4291 #ifndef blitter_code_0x04c10084
\r
4292 #define blitter_code_0x04c10084
\r
4293 void blitter_0x04c10084(void)
\r
4295 while (outer_loop--)
\r
4297 inner_loop=n_pixels;
\r
4298 while (inner_loop--)
\r
4300 uint32 srcdata = 0;
\r
4301 uint32 srczdata = 0;
\r
4302 uint32 dstdata = 0;
\r
4303 uint32 dstzdata = 0;
\r
4304 uint32 writedata = 0;
\r
4305 uint32 inhibit = 0;
\r
4306 srcdata = READ_PIXEL_16(a2);
\r
4307 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
4308 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4311 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4312 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4315 WRITE_PIXEL_16(a1, writedata);
\r
4319 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4320 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4327 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4328 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4329 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4332 #ifndef blitter_code_0x04010004
\r
4333 #define blitter_code_0x04010004
\r
4334 void blitter_0x04010004(void)
\r
4336 while (outer_loop--)
\r
4338 inner_loop=n_pixels;
\r
4339 while (inner_loop--)
\r
4341 uint32 srcdata = 0;
\r
4342 uint32 srczdata = 0;
\r
4343 uint32 dstdata = 0;
\r
4344 uint32 dstzdata = 0;
\r
4345 uint32 writedata = 0;
\r
4346 uint32 inhibit = 0;
\r
4347 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4348 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4349 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4352 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4353 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4356 WRITE_PIXEL_16(a1, writedata);
\r
4360 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4361 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4368 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4369 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4370 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4373 #ifndef blitter_code_0x30c000e4
\r
4374 #define blitter_code_0x30c000e4
\r
4375 void blitter_0x30c000e4(void)
\r
4377 while (outer_loop--)
\r
4379 inner_loop=n_pixels;
\r
4380 while (inner_loop--)
\r
4382 uint32 srcdata = 0;
\r
4383 uint32 srczdata = 0;
\r
4384 uint32 dstdata = 0;
\r
4385 uint32 dstzdata = 0;
\r
4386 uint32 writedata = 0;
\r
4387 uint32 inhibit = 0;
\r
4388 srcdata = READ_PIXEL_16(a1);
\r
4389 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
4392 writedata |= srcdata & ~dstdata;
\r
4393 writedata |= srcdata & dstdata;
\r
4394 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4395 WRITE_PIXEL_16(a2, writedata);
\r
4398 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4399 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4406 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4407 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4408 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4411 #ifndef blitter_code_0x04c10004
\r
4412 #define blitter_code_0x04c10004
\r
4413 void blitter_0x04c10004(void)
\r
4415 while (outer_loop--)
\r
4417 inner_loop=n_pixels;
\r
4418 while (inner_loop--)
\r
4420 uint32 srcdata = 0;
\r
4421 uint32 srczdata = 0;
\r
4422 uint32 dstdata = 0;
\r
4423 uint32 dstzdata = 0;
\r
4424 uint32 writedata = 0;
\r
4425 uint32 inhibit = 0;
\r
4426 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4427 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4428 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4431 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4432 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4435 WRITE_PIXEL_16(a1, writedata);
\r
4439 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4440 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4447 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4448 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4449 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4452 #ifndef blitter_code_0x0cc10004
\r
4453 #define blitter_code_0x0cc10004
\r
4454 void blitter_0x0cc10004(void)
\r
4456 while (outer_loop--)
\r
4458 inner_loop=n_pixels;
\r
4459 while (inner_loop--)
\r
4461 uint32 srcdata = 0;
\r
4462 uint32 srczdata = 0;
\r
4463 uint32 dstdata = 0;
\r
4464 uint32 dstzdata = 0;
\r
4465 uint32 writedata = 0;
\r
4466 uint32 inhibit = 0;
\r
4467 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4468 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4469 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4470 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
4473 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4474 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4477 WRITE_PIXEL_16(a1, writedata);
\r
4481 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4482 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4489 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4490 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4491 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4494 #ifndef blitter_code_0x1cc10024
\r
4495 #define blitter_code_0x1cc10024
\r
4496 void blitter_0x1cc10024(void)
\r
4498 while (outer_loop--)
\r
4500 inner_loop=n_pixels;
\r
4501 while (inner_loop--)
\r
4503 uint32 srcdata = 0;
\r
4504 uint32 srczdata = 0;
\r
4505 uint32 dstdata = 0;
\r
4506 uint32 dstzdata = 0;
\r
4507 uint32 writedata = 0;
\r
4508 uint32 inhibit = 0;
\r
4509 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4510 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4511 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4512 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
4515 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4516 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4517 WRITE_PIXEL_16(a1, writedata);
\r
4520 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4521 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4528 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4529 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4530 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4533 #ifndef blitter_code_0x0cc10084
\r
4534 #define blitter_code_0x0cc10084
\r
4535 void blitter_0x0cc10084(void)
\r
4537 while (outer_loop--)
\r
4539 inner_loop=n_pixels;
\r
4540 while (inner_loop--)
\r
4542 uint32 srcdata = 0;
\r
4543 uint32 srczdata = 0;
\r
4544 uint32 dstdata = 0;
\r
4545 uint32 dstzdata = 0;
\r
4546 uint32 writedata = 0;
\r
4547 uint32 inhibit = 0;
\r
4548 srcdata = READ_PIXEL_16(a2);
\r
4549 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
4550 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4551 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
4554 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4555 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4558 WRITE_PIXEL_16(a1, writedata);
\r
4562 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4563 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4570 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4571 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4572 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4575 #ifndef blitter_code_0x24c10024
\r
4576 #define blitter_code_0x24c10024
\r
4577 void blitter_0x24c10024(void)
\r
4579 while (outer_loop--)
\r
4581 inner_loop=n_pixels;
\r
4582 while (inner_loop--)
\r
4584 uint32 srcdata = 0;
\r
4585 uint32 srczdata = 0;
\r
4586 uint32 dstdata = 0;
\r
4587 uint32 dstzdata = 0;
\r
4588 uint32 writedata = 0;
\r
4589 uint32 inhibit = 0;
\r
4590 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4591 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4592 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4595 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4596 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4599 WRITE_PIXEL_16(a1, writedata);
\r
4603 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4604 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4611 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4612 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4613 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4616 #ifndef blitter_code_0x2cc10024
\r
4617 #define blitter_code_0x2cc10024
\r
4618 void blitter_0x2cc10024(void)
\r
4620 while (outer_loop--)
\r
4622 inner_loop=n_pixels;
\r
4623 while (inner_loop--)
\r
4625 uint32 srcdata = 0;
\r
4626 uint32 srczdata = 0;
\r
4627 uint32 dstdata = 0;
\r
4628 uint32 dstzdata = 0;
\r
4629 uint32 writedata = 0;
\r
4630 uint32 inhibit = 0;
\r
4631 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4632 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4633 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4634 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
4637 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4638 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4641 WRITE_PIXEL_16(a1, writedata);
\r
4645 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4646 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4653 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4654 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4655 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4658 #ifndef blitter_code_0x3401002c
\r
4659 #define blitter_code_0x3401002c
\r
4660 void blitter_0x3401002c(void)
\r
4662 while (outer_loop--)
\r
4664 inner_loop=n_pixels;
\r
4665 while (inner_loop--)
\r
4667 uint32 srcdata = 0;
\r
4668 uint32 srczdata = 0;
\r
4669 uint32 dstdata = 0;
\r
4670 uint32 dstzdata = 0;
\r
4671 uint32 writedata = 0;
\r
4672 uint32 inhibit = 0;
\r
4673 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4674 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4675 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4676 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4677 WRITE_PIXEL_16(a1, writedata);
\r
4680 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4681 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4688 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4689 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4690 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4693 #ifndef blitter_code_0x14010014
\r
4694 #define blitter_code_0x14010014
\r
4695 void blitter_0x14010014(void)
\r
4697 while (outer_loop--)
\r
4699 inner_loop=n_pixels;
\r
4700 while (inner_loop--)
\r
4702 uint32 srcdata = 0;
\r
4703 uint32 srczdata = 0;
\r
4704 uint32 dstdata = 0;
\r
4705 uint32 dstzdata = 0;
\r
4706 uint32 writedata = 0;
\r
4707 uint32 inhibit = 0;
\r
4708 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4709 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
4710 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4711 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
4712 WRITE_PIXEL_16(a1, writedata);
\r
4715 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4716 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4723 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4724 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4725 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4728 #ifndef blitter_code_0x14010013
\r
4729 #define blitter_code_0x14010013
\r
4730 void blitter_0x14010013(void)
\r
4732 while (outer_loop--)
\r
4734 inner_loop=n_pixels;
\r
4735 while (inner_loop--)
\r
4737 uint32 srcdata = 0;
\r
4738 uint32 srczdata = 0;
\r
4739 uint32 dstdata = 0;
\r
4740 uint32 dstzdata = 0;
\r
4741 uint32 writedata = 0;
\r
4742 uint32 inhibit = 0;
\r
4743 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
4744 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
4745 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
4746 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
4747 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
4748 WRITE_PIXEL_8(a1, writedata);
\r
4751 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4752 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4753 gd_i[colour_index] += gd_ia;
\r
4754 gd_c[colour_index] += gd_ca;
\r
4755 colour_index=(colour_index+1)&0x3;
\r
4762 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4763 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4764 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4767 #ifndef blitter_code_0x30000005
\r
4768 #define blitter_code_0x30000005
\r
4769 void blitter_0x30000005(void)
\r
4771 while (outer_loop--)
\r
4773 inner_loop=n_pixels;
\r
4774 while (inner_loop--)
\r
4776 uint32 srcdata = 0;
\r
4777 uint32 srczdata = 0;
\r
4778 uint32 dstdata = 0;
\r
4779 uint32 dstzdata = 0;
\r
4780 uint32 writedata = 0;
\r
4781 uint32 inhibit = 0;
\r
4782 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
4783 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
4784 WRITE_PIXEL_32(a1, writedata);
\r
4787 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4788 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4795 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4796 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4797 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4800 #ifndef blitter_code_0x3000001d
\r
4801 #define blitter_code_0x3000001d
\r
4802 void blitter_0x3000001d(void)
\r
4804 while (outer_loop--)
\r
4806 inner_loop=n_pixels;
\r
4807 while (inner_loop--)
\r
4809 uint32 srcdata = 0;
\r
4810 uint32 srczdata = 0;
\r
4811 uint32 dstdata = 0;
\r
4812 uint32 dstzdata = 0;
\r
4813 uint32 writedata = 0;
\r
4814 uint32 inhibit = 0;
\r
4815 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
4816 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
4817 WRITE_PIXEL_32(a1, writedata);
\r
4820 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4821 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4828 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4829 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4830 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4833 #ifndef blitter_code_0x30c0002c
\r
4834 #define blitter_code_0x30c0002c
\r
4835 void blitter_0x30c0002c(void)
\r
4837 while (outer_loop--)
\r
4839 inner_loop=n_pixels;
\r
4840 while (inner_loop--)
\r
4842 uint32 srcdata = 0;
\r
4843 uint32 srczdata = 0;
\r
4844 uint32 dstdata = 0;
\r
4845 uint32 dstzdata = 0;
\r
4846 uint32 writedata = 0;
\r
4847 uint32 inhibit = 0;
\r
4848 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4849 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4850 writedata |= srcdata & ~dstdata;
\r
4851 writedata |= srcdata & dstdata;
\r
4852 WRITE_PIXEL_16(a1, writedata);
\r
4855 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4856 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4863 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4864 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4865 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4868 #ifndef blitter_code_0x3000002d
\r
4869 #define blitter_code_0x3000002d
\r
4870 void blitter_0x3000002d(void)
\r
4872 while (outer_loop--)
\r
4874 inner_loop=n_pixels;
\r
4875 while (inner_loop--)
\r
4877 uint32 srcdata = 0;
\r
4878 uint32 srczdata = 0;
\r
4879 uint32 dstdata = 0;
\r
4880 uint32 dstzdata = 0;
\r
4881 uint32 writedata = 0;
\r
4882 uint32 inhibit = 0;
\r
4883 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
4884 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
4885 WRITE_PIXEL_32(a1, writedata);
\r
4888 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4889 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4896 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4897 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4898 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4901 #ifndef blitter_code_0x10000025
\r
4902 #define blitter_code_0x10000025
\r
4903 void blitter_0x10000025(void)
\r
4905 while (outer_loop--)
\r
4907 inner_loop=n_pixels;
\r
4908 while (inner_loop--)
\r
4910 uint32 srcdata = 0;
\r
4911 uint32 srczdata = 0;
\r
4912 uint32 dstdata = 0;
\r
4913 uint32 dstzdata = 0;
\r
4914 uint32 writedata = 0;
\r
4915 uint32 inhibit = 0;
\r
4916 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
4917 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
4918 WRITE_PIXEL_32(a1, writedata);
\r
4921 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4922 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4929 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4930 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4931 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4934 #ifndef blitter_code_0x28c0002c
\r
4935 #define blitter_code_0x28c0002c
\r
4936 void blitter_0x28c0002c(void)
\r
4938 while (outer_loop--)
\r
4940 inner_loop=n_pixels;
\r
4941 while (inner_loop--)
\r
4943 uint32 srcdata = 0;
\r
4944 uint32 srczdata = 0;
\r
4945 uint32 dstdata = 0;
\r
4946 uint32 dstzdata = 0;
\r
4947 uint32 writedata = 0;
\r
4948 uint32 inhibit = 0;
\r
4949 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4950 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
4951 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
4954 writedata |= srcdata & ~dstdata;
\r
4955 writedata |= srcdata & dstdata;
\r
4956 } else { srczdata=dstzdata; writedata=dstdata; }
\r
4959 WRITE_PIXEL_16(a1, writedata);
\r
4963 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
4964 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
4971 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
4972 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
4973 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
4976 #ifndef blitter_code_0x3002022c
\r
4977 #define blitter_code_0x3002022c
\r
4978 void blitter_0x3002022c(void)
\r
4980 while (outer_loop--)
\r
4982 inner_loop=n_pixels;
\r
4983 while (inner_loop--)
\r
4985 uint32 srcdata = 0;
\r
4986 uint32 srczdata = 0;
\r
4987 uint32 dstdata = 0;
\r
4988 uint32 dstzdata = 0;
\r
4989 uint32 writedata = 0;
\r
4990 uint32 inhibit = 0;
\r
4991 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
4992 dstdata = READ_PIXEL_16(a1);
\r
4993 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
4996 writedata = (srcdata & 0xff) + (dstdata & 0xff);
\r
4997 if (writedata > 0xff) writedata = 0xff;
\r
4998 writedata |= (srcdata & 0xf00) + (dstdata & 0xf00);
\r
4999 if (writedata > 0xfff) writedata = 0xfff;
\r
5000 writedata |= (srcdata & 0xf000) + (dstdata & 0xf000);
\r
5001 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5002 WRITE_PIXEL_16(a1, writedata);
\r
5005 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5006 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5013 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5014 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5015 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5018 #ifndef blitter_code_0x08c040e4
\r
5019 #define blitter_code_0x08c040e4
\r
5020 void blitter_0x08c040e4(void)
\r
5022 while (outer_loop--)
\r
5024 inner_loop=n_pixels;
\r
5025 while (inner_loop--)
\r
5027 uint32 srcdata = 0;
\r
5028 uint32 srczdata = 0;
\r
5029 uint32 dstdata = 0;
\r
5030 uint32 dstzdata = 0;
\r
5031 uint32 writedata = 0;
\r
5032 uint32 inhibit = 0;
\r
5033 srcdata = READ_PIXEL_16(a1);
\r
5034 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
5035 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
5038 writedata |= srcdata & ~dstdata;
\r
5039 writedata |= srcdata & dstdata;
\r
5040 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5043 WRITE_PIXEL_16(a2, writedata);
\r
5047 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5048 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5055 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5056 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5057 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5060 #ifndef blitter_code_0x30c042a4
\r
5061 #define blitter_code_0x30c042a4
\r
5062 void blitter_0x30c042a4(void)
\r
5064 while (outer_loop--)
\r
5066 inner_loop=n_pixels;
\r
5067 while (inner_loop--)
\r
5069 uint32 srcdata = 0;
\r
5070 uint32 srczdata = 0;
\r
5071 uint32 dstdata = 0;
\r
5072 uint32 dstzdata = 0;
\r
5073 uint32 writedata = 0;
\r
5074 uint32 inhibit = 0;
\r
5075 srcdata = READ_PIXEL_16(a2);
\r
5076 dstdata = READ_PIXEL_16(a1);
\r
5077 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
5078 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
5081 writedata |= srcdata & ~dstdata;
\r
5082 writedata |= srcdata & dstdata;
\r
5083 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5084 WRITE_PIXEL_16(a1, writedata);
\r
5087 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5088 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5095 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5096 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5097 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5100 #ifndef blitter_code_0x3401002b
\r
5101 #define blitter_code_0x3401002b
\r
5102 void blitter_0x3401002b(void)
\r
5104 while (outer_loop--)
\r
5106 inner_loop=n_pixels;
\r
5107 while (inner_loop--)
\r
5109 uint32 srcdata = 0;
\r
5110 uint32 srczdata = 0;
\r
5111 uint32 dstdata = 0;
\r
5112 uint32 dstzdata = 0;
\r
5113 uint32 writedata = 0;
\r
5114 uint32 inhibit = 0;
\r
5115 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
5116 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
5117 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
5118 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
5119 WRITE_PIXEL_8(a1, writedata);
\r
5122 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5123 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5130 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5131 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5132 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5135 #ifndef blitter_code_0x14010005
\r
5136 #define blitter_code_0x14010005
\r
5137 void blitter_0x14010005(void)
\r
5139 while (outer_loop--)
\r
5141 inner_loop=n_pixels;
\r
5142 while (inner_loop--)
\r
5144 uint32 srcdata = 0;
\r
5145 uint32 srczdata = 0;
\r
5146 uint32 dstdata = 0;
\r
5147 uint32 dstzdata = 0;
\r
5148 uint32 writedata = 0;
\r
5149 uint32 inhibit = 0;
\r
5150 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
5151 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
5152 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
5153 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
5154 WRITE_PIXEL_32(a1, writedata);
\r
5157 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5158 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5165 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5166 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5167 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5170 #ifndef blitter_code_0x2c01001b
\r
5171 #define blitter_code_0x2c01001b
\r
5172 void blitter_0x2c01001b(void)
\r
5174 while (outer_loop--)
\r
5176 inner_loop=n_pixels;
\r
5177 while (inner_loop--)
\r
5179 uint32 srcdata = 0;
\r
5180 uint32 srczdata = 0;
\r
5181 uint32 dstdata = 0;
\r
5182 uint32 dstzdata = 0;
\r
5183 uint32 writedata = 0;
\r
5184 uint32 inhibit = 0;
\r
5185 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
5186 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
5187 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
5188 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
5191 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
5192 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5195 WRITE_PIXEL_8(a1, writedata);
\r
5199 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5200 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5207 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5208 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5209 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5212 #ifndef blitter_code_0x3401001c
\r
5213 #define blitter_code_0x3401001c
\r
5214 void blitter_0x3401001c(void)
\r
5216 while (outer_loop--)
\r
5218 inner_loop=n_pixels;
\r
5219 while (inner_loop--)
\r
5221 uint32 srcdata = 0;
\r
5222 uint32 srczdata = 0;
\r
5223 uint32 dstdata = 0;
\r
5224 uint32 dstzdata = 0;
\r
5225 uint32 writedata = 0;
\r
5226 uint32 inhibit = 0;
\r
5227 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5228 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
5229 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5232 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
5233 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5234 WRITE_PIXEL_16(a1, writedata);
\r
5237 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5238 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5245 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5246 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5247 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5250 #ifndef blitter_code_0x05010083
\r
5251 #define blitter_code_0x05010083
\r
5252 void blitter_0x05010083(void)
\r
5254 while (outer_loop--)
\r
5256 inner_loop=n_pixels;
\r
5257 while (inner_loop--)
\r
5259 uint32 srcdata = 0;
\r
5260 uint32 srczdata = 0;
\r
5261 uint32 dstdata = 0;
\r
5262 uint32 dstzdata = 0;
\r
5263 uint32 writedata = 0;
\r
5264 uint32 inhibit = 0;
\r
5265 srcdata = READ_PIXEL_8(a2);
\r
5266 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
5267 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
5270 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
5271 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5272 WRITE_PIXEL_8(a1, writedata);
\r
5275 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5276 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5283 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5284 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5285 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5288 #ifndef blitter_code_0x05010084
\r
5289 #define blitter_code_0x05010084
\r
5290 void blitter_0x05010084(void)
\r
5292 while (outer_loop--)
\r
5294 inner_loop=n_pixels;
\r
5295 while (inner_loop--)
\r
5297 uint32 srcdata = 0;
\r
5298 uint32 srczdata = 0;
\r
5299 uint32 dstdata = 0;
\r
5300 uint32 dstzdata = 0;
\r
5301 uint32 writedata = 0;
\r
5302 uint32 inhibit = 0;
\r
5303 srcdata = READ_PIXEL_16(a2);
\r
5304 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
5305 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5308 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
5309 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5310 WRITE_PIXEL_16(a1, writedata);
\r
5313 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5314 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5321 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5322 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5323 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5326 #ifndef blitter_code_0x34010064
\r
5327 #define blitter_code_0x34010064
\r
5328 void blitter_0x34010064(void)
\r
5330 while (outer_loop--)
\r
5332 inner_loop=n_pixels;
\r
5333 while (inner_loop--)
\r
5335 uint32 srcdata = 0;
\r
5336 uint32 srczdata = 0;
\r
5337 uint32 dstdata = 0;
\r
5338 uint32 dstzdata = 0;
\r
5339 uint32 writedata = 0;
\r
5340 uint32 inhibit = 0;
\r
5341 srcdata = READ_RDATA_16(SRCDATA, a1, a1_phrase_mode);
\r
5342 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
5343 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
5346 writedata= READ_RDATA_16(PATTERNDATA, a2, a2_phrase_mode);
\r
5347 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5348 WRITE_PIXEL_16(a2, writedata);
\r
5351 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5352 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5359 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5360 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5361 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5364 #ifndef blitter_code_0x14010064
\r
5365 #define blitter_code_0x14010064
\r
5366 void blitter_0x14010064(void)
\r
5368 while (outer_loop--)
\r
5370 inner_loop=n_pixels;
\r
5371 while (inner_loop--)
\r
5373 uint32 srcdata = 0;
\r
5374 uint32 srczdata = 0;
\r
5375 uint32 dstdata = 0;
\r
5376 uint32 dstzdata = 0;
\r
5377 uint32 writedata = 0;
\r
5378 uint32 inhibit = 0;
\r
5379 srcdata = READ_RDATA_16(SRCDATA, a1, a1_phrase_mode);
\r
5380 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
5381 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
5384 writedata= READ_RDATA_16(PATTERNDATA, a2, a2_phrase_mode);
\r
5385 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5388 WRITE_PIXEL_16(a2, writedata);
\r
5392 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5393 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5400 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5401 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5402 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5405 #ifndef blitter_code_0x2401021b
\r
5406 #define blitter_code_0x2401021b
\r
5407 void blitter_0x2401021b(void)
\r
5409 while (outer_loop--)
\r
5411 inner_loop=n_pixels;
\r
5412 while (inner_loop--)
\r
5414 uint32 srcdata = 0;
\r
5415 uint32 srczdata = 0;
\r
5416 uint32 dstdata = 0;
\r
5417 uint32 dstzdata = 0;
\r
5418 uint32 writedata = 0;
\r
5419 uint32 inhibit = 0;
\r
5420 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
5421 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
5422 dstdata = READ_PIXEL_8(a1);
\r
5423 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
5424 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
5425 WRITE_PIXEL_8(a1, writedata);
\r
5428 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5429 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5436 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5437 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5438 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5441 #ifndef blitter_code_0x24010218
\r
5442 #define blitter_code_0x24010218
\r
5443 void blitter_0x24010218(void)
\r
5445 while (outer_loop--)
\r
5447 inner_loop=n_pixels;
\r
5448 while (inner_loop--)
\r
5450 uint32 srcdata = 0;
\r
5451 uint32 srczdata = 0;
\r
5452 uint32 dstdata = 0;
\r
5453 uint32 dstzdata = 0;
\r
5454 uint32 writedata = 0;
\r
5455 uint32 inhibit = 0;
\r
5456 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
5457 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
5458 dstdata = READ_PIXEL_1(a1);
\r
5459 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
5460 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
5461 WRITE_PIXEL_1(a1, writedata);
\r
5464 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5465 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5472 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5473 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5474 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5477 #ifndef blitter_code_0x2401021a
\r
5478 #define blitter_code_0x2401021a
\r
5479 void blitter_0x2401021a(void)
\r
5481 while (outer_loop--)
\r
5483 inner_loop=n_pixels;
\r
5484 while (inner_loop--)
\r
5486 uint32 srcdata = 0;
\r
5487 uint32 srczdata = 0;
\r
5488 uint32 dstdata = 0;
\r
5489 uint32 dstzdata = 0;
\r
5490 uint32 writedata = 0;
\r
5491 uint32 inhibit = 0;
\r
5492 srcdata = READ_RDATA_4(SRCDATA, a2, a2_phrase_mode);
\r
5493 srczdata = READ_RDATA_4(SRCZINT, a2, a2_phrase_mode);
\r
5494 dstdata = READ_PIXEL_4(a1);
\r
5495 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
5496 writedata= READ_RDATA_4(PATTERNDATA, a1, a1_phrase_mode);
\r
5497 WRITE_PIXEL_4(a1, writedata);
\r
5500 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5501 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5508 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5509 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5510 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5513 #ifndef blitter_code_0x2401021c
\r
5514 #define blitter_code_0x2401021c
\r
5515 void blitter_0x2401021c(void)
\r
5517 while (outer_loop--)
\r
5519 inner_loop=n_pixels;
\r
5520 while (inner_loop--)
\r
5522 uint32 srcdata = 0;
\r
5523 uint32 srczdata = 0;
\r
5524 uint32 dstdata = 0;
\r
5525 uint32 dstzdata = 0;
\r
5526 uint32 writedata = 0;
\r
5527 uint32 inhibit = 0;
\r
5528 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5529 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
5530 dstdata = READ_PIXEL_16(a1);
\r
5531 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
5532 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
5533 WRITE_PIXEL_16(a1, writedata);
\r
5536 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5537 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5544 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5545 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5546 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5549 #ifndef blitter_code_0x00c00064
\r
5550 #define blitter_code_0x00c00064
\r
5551 void blitter_0x00c00064(void)
\r
5553 while (outer_loop--)
\r
5555 inner_loop=n_pixels;
\r
5556 while (inner_loop--)
\r
5558 uint32 srcdata = 0;
\r
5559 uint32 srczdata = 0;
\r
5560 uint32 dstdata = 0;
\r
5561 uint32 dstzdata = 0;
\r
5562 uint32 writedata = 0;
\r
5563 uint32 inhibit = 0;
\r
5564 srcdata = READ_RDATA_16(SRCDATA, a1, a1_phrase_mode);
\r
5565 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
5566 writedata |= srcdata & ~dstdata;
\r
5567 writedata |= srcdata & dstdata;
\r
5568 WRITE_PIXEL_16(a2, writedata);
\r
5571 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5572 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5579 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5580 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5581 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5584 #ifndef blitter_code_0x00c00024
\r
5585 #define blitter_code_0x00c00024
\r
5586 void blitter_0x00c00024(void)
\r
5588 while (outer_loop--)
\r
5590 inner_loop=n_pixels;
\r
5591 while (inner_loop--)
\r
5593 uint32 srcdata = 0;
\r
5594 uint32 srczdata = 0;
\r
5595 uint32 dstdata = 0;
\r
5596 uint32 dstzdata = 0;
\r
5597 uint32 writedata = 0;
\r
5598 uint32 inhibit = 0;
\r
5599 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5600 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5601 writedata |= srcdata & ~dstdata;
\r
5602 writedata |= srcdata & dstdata;
\r
5603 WRITE_PIXEL_16(a1, writedata);
\r
5606 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5607 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5614 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5615 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5616 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5619 #ifndef blitter_code_0x01c042e4
\r
5620 #define blitter_code_0x01c042e4
\r
5621 void blitter_0x01c042e4(void)
\r
5623 while (outer_loop--)
\r
5625 inner_loop=n_pixels;
\r
5626 while (inner_loop--)
\r
5628 uint32 srcdata = 0;
\r
5629 uint32 srczdata = 0;
\r
5630 uint32 dstdata = 0;
\r
5631 uint32 dstzdata = 0;
\r
5632 uint32 writedata = 0;
\r
5633 uint32 inhibit = 0;
\r
5634 srcdata = READ_PIXEL_16(a1);
\r
5635 dstdata = READ_PIXEL_16(a2);
\r
5636 dstzdata = READ_RDATA_16(DSTZ, a2, a2_phrase_mode);
\r
5637 srczdata=z_i[colour_index]>>16;
\r
5638 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
5641 writedata |= srcdata & ~dstdata;
\r
5642 writedata |= srcdata & dstdata;
\r
5644 int intensity = srcdata & 0xFF;
\r
5645 int ia = gd_ia >> 16;
\r
5647 ia = 0xFFFFFF00 | ia;
\r
5651 if(intensity > 0xFF)
\r
5653 writedata = (srcdata & 0xFF00) | intensity;
\r
5655 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5656 WRITE_PIXEL_16(a2, writedata);
\r
5659 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5660 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5661 z_i[colour_index]+=zadd;
\r
5662 gd_i[colour_index] += gd_ia;
\r
5663 gd_c[colour_index] += gd_ca;
\r
5670 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5671 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5672 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5675 #ifndef blitter_code_0x20c0001c
\r
5676 #define blitter_code_0x20c0001c
\r
5677 void blitter_0x20c0001c(void)
\r
5679 while (outer_loop--)
\r
5681 inner_loop=n_pixels;
\r
5682 while (inner_loop--)
\r
5684 uint32 srcdata = 0;
\r
5685 uint32 srczdata = 0;
\r
5686 uint32 dstdata = 0;
\r
5687 uint32 dstzdata = 0;
\r
5688 uint32 writedata = 0;
\r
5689 uint32 inhibit = 0;
\r
5690 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5691 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5694 writedata |= srcdata & ~dstdata;
\r
5695 writedata |= srcdata & dstdata;
\r
5696 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5699 WRITE_PIXEL_16(a1, writedata);
\r
5703 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5704 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5711 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5712 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5713 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5716 #ifndef blitter_code_0x24010219
\r
5717 #define blitter_code_0x24010219
\r
5718 void blitter_0x24010219(void)
\r
5720 while (outer_loop--)
\r
5722 inner_loop=n_pixels;
\r
5723 while (inner_loop--)
\r
5725 uint32 srcdata = 0;
\r
5726 uint32 srczdata = 0;
\r
5727 uint32 dstdata = 0;
\r
5728 uint32 dstzdata = 0;
\r
5729 uint32 writedata = 0;
\r
5730 uint32 inhibit = 0;
\r
5731 srcdata = READ_RDATA_2(SRCDATA, a2, a2_phrase_mode);
\r
5732 srczdata = READ_RDATA_2(SRCZINT, a2, a2_phrase_mode);
\r
5733 dstdata = READ_PIXEL_2(a1);
\r
5734 dstzdata = READ_RDATA_2(DSTZ, a1, a1_phrase_mode);
\r
5737 writedata= READ_RDATA_2(PATTERNDATA, a1, a1_phrase_mode);
\r
5738 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5741 WRITE_PIXEL_2(a1, writedata);
\r
5745 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5746 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5753 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5754 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5755 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5758 #ifndef blitter_code_0x08c000a4
\r
5759 #define blitter_code_0x08c000a4
\r
5760 void blitter_0x08c000a4(void)
\r
5762 while (outer_loop--)
\r
5764 inner_loop=n_pixels;
\r
5765 while (inner_loop--)
\r
5767 uint32 srcdata = 0;
\r
5768 uint32 srczdata = 0;
\r
5769 uint32 dstdata = 0;
\r
5770 uint32 dstzdata = 0;
\r
5771 uint32 writedata = 0;
\r
5772 uint32 inhibit = 0;
\r
5773 srcdata = READ_PIXEL_16(a2);
\r
5774 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5775 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
5778 writedata |= srcdata & ~dstdata;
\r
5779 writedata |= srcdata & dstdata;
\r
5780 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5783 WRITE_PIXEL_16(a1, writedata);
\r
5787 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5788 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5795 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5796 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5797 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5800 #ifndef blitter_code_0x2c01001c
\r
5801 #define blitter_code_0x2c01001c
\r
5802 void blitter_0x2c01001c(void)
\r
5804 while (outer_loop--)
\r
5806 inner_loop=n_pixels;
\r
5807 while (inner_loop--)
\r
5809 uint32 srcdata = 0;
\r
5810 uint32 srczdata = 0;
\r
5811 uint32 dstdata = 0;
\r
5812 uint32 dstzdata = 0;
\r
5813 uint32 writedata = 0;
\r
5814 uint32 inhibit = 0;
\r
5815 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5816 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
5817 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5818 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
5821 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
5822 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5825 WRITE_PIXEL_16(a1, writedata);
\r
5829 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5830 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5837 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5838 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5839 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5842 #ifndef blitter_code_0x3c01001c
\r
5843 #define blitter_code_0x3c01001c
\r
5844 void blitter_0x3c01001c(void)
\r
5846 while (outer_loop--)
\r
5848 inner_loop=n_pixels;
\r
5849 while (inner_loop--)
\r
5851 uint32 srcdata = 0;
\r
5852 uint32 srczdata = 0;
\r
5853 uint32 dstdata = 0;
\r
5854 uint32 dstzdata = 0;
\r
5855 uint32 writedata = 0;
\r
5856 uint32 inhibit = 0;
\r
5857 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5858 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
5859 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5860 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
5863 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
5864 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5865 WRITE_PIXEL_16(a1, writedata);
\r
5868 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5869 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5876 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5877 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5878 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5881 #ifndef blitter_code_0x2c010218
\r
5882 #define blitter_code_0x2c010218
\r
5883 void blitter_0x2c010218(void)
\r
5885 while (outer_loop--)
\r
5887 inner_loop=n_pixels;
\r
5888 while (inner_loop--)
\r
5890 uint32 srcdata = 0;
\r
5891 uint32 srczdata = 0;
\r
5892 uint32 dstdata = 0;
\r
5893 uint32 dstzdata = 0;
\r
5894 uint32 writedata = 0;
\r
5895 uint32 inhibit = 0;
\r
5896 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
5897 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
5898 dstdata = READ_PIXEL_1(a1);
\r
5899 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
5900 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
5903 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
5904 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5907 WRITE_PIXEL_1(a1, writedata);
\r
5911 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5912 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5919 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5920 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5921 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5924 #ifndef blitter_code_0x3050021b
\r
5925 #define blitter_code_0x3050021b
\r
5926 void blitter_0x3050021b(void)
\r
5928 while (outer_loop--)
\r
5930 inner_loop=n_pixels;
\r
5931 while (inner_loop--)
\r
5933 uint32 srcdata = 0;
\r
5934 uint32 srczdata = 0;
\r
5935 uint32 dstdata = 0;
\r
5936 uint32 dstzdata = 0;
\r
5937 uint32 writedata = 0;
\r
5938 uint32 inhibit = 0;
\r
5939 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
5940 dstdata = READ_PIXEL_8(a1);
\r
5941 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
5944 writedata |= ~srcdata & ~dstdata;
\r
5945 writedata |= srcdata & ~dstdata;
\r
5946 } else { srczdata=dstzdata; writedata=dstdata; }
\r
5947 WRITE_PIXEL_8(a1, writedata);
\r
5950 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5951 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5958 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5959 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5960 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5963 #ifndef blitter_code_0x34c10004
\r
5964 #define blitter_code_0x34c10004
\r
5965 void blitter_0x34c10004(void)
\r
5967 while (outer_loop--)
\r
5969 inner_loop=n_pixels;
\r
5970 while (inner_loop--)
\r
5972 uint32 srcdata = 0;
\r
5973 uint32 srczdata = 0;
\r
5974 uint32 dstdata = 0;
\r
5975 uint32 dstzdata = 0;
\r
5976 uint32 writedata = 0;
\r
5977 uint32 inhibit = 0;
\r
5978 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
5979 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
5980 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
5981 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
5982 WRITE_PIXEL_16(a1, writedata);
\r
5985 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
5986 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
5993 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
5994 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
5995 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
5998 #ifndef blitter_code_0x05010218
\r
5999 #define blitter_code_0x05010218
\r
6000 void blitter_0x05010218(void)
\r
6002 while (outer_loop--)
\r
6004 inner_loop=n_pixels;
\r
6005 while (inner_loop--)
\r
6007 uint32 srcdata = 0;
\r
6008 uint32 srczdata = 0;
\r
6009 uint32 dstdata = 0;
\r
6010 uint32 dstzdata = 0;
\r
6011 uint32 writedata = 0;
\r
6012 uint32 inhibit = 0;
\r
6013 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
6014 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
6015 dstdata = READ_PIXEL_1(a1);
\r
6016 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
6017 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
6018 WRITE_PIXEL_1(a1, writedata);
\r
6021 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6022 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6029 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6030 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6031 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6034 #ifndef blitter_code_0x30020224
\r
6035 #define blitter_code_0x30020224
\r
6036 void blitter_0x30020224(void)
\r
6038 while (outer_loop--)
\r
6040 inner_loop=n_pixels;
\r
6041 while (inner_loop--)
\r
6043 uint32 srcdata = 0;
\r
6044 uint32 srczdata = 0;
\r
6045 uint32 dstdata = 0;
\r
6046 uint32 dstzdata = 0;
\r
6047 uint32 writedata = 0;
\r
6048 uint32 inhibit = 0;
\r
6049 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
6050 dstdata = READ_PIXEL_16(a1);
\r
6051 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
6052 writedata = (srcdata & 0xff) + (dstdata & 0xff);
\r
6053 if (writedata > 0xff) writedata = 0xff;
\r
6054 writedata |= (srcdata & 0xf00) + (dstdata & 0xf00);
\r
6055 if (writedata > 0xfff) writedata = 0xfff;
\r
6056 writedata |= (srcdata & 0xf000) + (dstdata & 0xf000);
\r
6057 WRITE_PIXEL_16(a1, writedata);
\r
6060 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6061 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6068 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6069 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6070 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6073 #ifndef blitter_code_0x24c1001b
\r
6074 #define blitter_code_0x24c1001b
\r
6075 void blitter_0x24c1001b(void)
\r
6077 while (outer_loop--)
\r
6079 inner_loop=n_pixels;
\r
6080 while (inner_loop--)
\r
6082 uint32 srcdata = 0;
\r
6083 uint32 srczdata = 0;
\r
6084 uint32 dstdata = 0;
\r
6085 uint32 dstzdata = 0;
\r
6086 uint32 writedata = 0;
\r
6087 uint32 inhibit = 0;
\r
6088 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
6089 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
6090 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
6091 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
6092 WRITE_PIXEL_8(a1, writedata);
\r
6095 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6096 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6103 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6104 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6105 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6108 #ifndef blitter_code_0x0501021b
\r
6109 #define blitter_code_0x0501021b
\r
6110 void blitter_0x0501021b(void)
\r
6112 while (outer_loop--)
\r
6114 inner_loop=n_pixels;
\r
6115 while (inner_loop--)
\r
6117 uint32 srcdata = 0;
\r
6118 uint32 srczdata = 0;
\r
6119 uint32 dstdata = 0;
\r
6120 uint32 dstzdata = 0;
\r
6121 uint32 writedata = 0;
\r
6122 uint32 inhibit = 0;
\r
6123 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
6124 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
6125 dstdata = READ_PIXEL_8(a1);
\r
6126 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
6127 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
6128 WRITE_PIXEL_8(a1, writedata);
\r
6131 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6132 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6139 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6140 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6141 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6144 #ifndef blitter_code_0x04c1001b
\r
6145 #define blitter_code_0x04c1001b
\r
6146 void blitter_0x04c1001b(void)
\r
6148 while (outer_loop--)
\r
6150 inner_loop=n_pixels;
\r
6151 while (inner_loop--)
\r
6153 uint32 srcdata = 0;
\r
6154 uint32 srczdata = 0;
\r
6155 uint32 dstdata = 0;
\r
6156 uint32 dstzdata = 0;
\r
6157 uint32 writedata = 0;
\r
6158 uint32 inhibit = 0;
\r
6159 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
6160 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
6161 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
6162 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
6163 WRITE_PIXEL_8(a1, writedata);
\r
6166 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6167 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6174 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6175 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6176 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6179 #ifndef blitter_code_0x24c10023
\r
6180 #define blitter_code_0x24c10023
\r
6181 void blitter_0x24c10023(void)
\r
6183 while (outer_loop--)
\r
6185 inner_loop=n_pixels;
\r
6186 while (inner_loop--)
\r
6188 uint32 srcdata = 0;
\r
6189 uint32 srczdata = 0;
\r
6190 uint32 dstdata = 0;
\r
6191 uint32 dstzdata = 0;
\r
6192 uint32 writedata = 0;
\r
6193 uint32 inhibit = 0;
\r
6194 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
6195 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
6196 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
6197 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
6198 WRITE_PIXEL_8(a1, writedata);
\r
6201 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6202 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6209 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6210 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6211 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6214 #ifndef blitter_code_0x01c040a4
\r
6215 #define blitter_code_0x01c040a4
\r
6216 void blitter_0x01c040a4(void)
\r
6218 while (outer_loop--)
\r
6220 inner_loop=n_pixels;
\r
6221 while (inner_loop--)
\r
6223 uint32 srcdata = 0;
\r
6224 uint32 srczdata = 0;
\r
6225 uint32 dstdata = 0;
\r
6226 uint32 dstzdata = 0;
\r
6227 uint32 writedata = 0;
\r
6228 uint32 inhibit = 0;
\r
6229 srcdata = READ_PIXEL_16(a2);
\r
6230 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
6231 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
6234 writedata |= srcdata & ~dstdata;
\r
6235 writedata |= srcdata & dstdata;
\r
6236 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6237 WRITE_PIXEL_16(a1, writedata);
\r
6240 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6241 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6248 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6249 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6250 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6253 #ifndef blitter_code_0x04c10024
\r
6254 #define blitter_code_0x04c10024
\r
6255 void blitter_0x04c10024(void)
\r
6257 while (outer_loop--)
\r
6259 inner_loop=n_pixels;
\r
6260 while (inner_loop--)
\r
6262 uint32 srcdata = 0;
\r
6263 uint32 srczdata = 0;
\r
6264 uint32 dstdata = 0;
\r
6265 uint32 dstzdata = 0;
\r
6266 uint32 writedata = 0;
\r
6267 uint32 inhibit = 0;
\r
6268 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
6269 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
6270 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
6273 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
6274 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6277 WRITE_PIXEL_16(a1, writedata);
\r
6281 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6282 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6289 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6290 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6291 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6294 #ifndef blitter_code_0x0501021c
\r
6295 #define blitter_code_0x0501021c
\r
6296 void blitter_0x0501021c(void)
\r
6298 while (outer_loop--)
\r
6300 inner_loop=n_pixels;
\r
6301 while (inner_loop--)
\r
6303 uint32 srcdata = 0;
\r
6304 uint32 srczdata = 0;
\r
6305 uint32 dstdata = 0;
\r
6306 uint32 dstzdata = 0;
\r
6307 uint32 writedata = 0;
\r
6308 uint32 inhibit = 0;
\r
6309 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
6310 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
6311 dstdata = READ_PIXEL_16(a1);
\r
6312 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
6315 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
6316 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6317 WRITE_PIXEL_16(a1, writedata);
\r
6320 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6321 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6328 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6329 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6330 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6333 #ifndef blitter_code_0x30e00224
\r
6334 #define blitter_code_0x30e00224
\r
6335 void blitter_0x30e00224(void)
\r
6337 while (outer_loop--)
\r
6339 inner_loop=n_pixels;
\r
6340 while (inner_loop--)
\r
6342 uint32 srcdata = 0;
\r
6343 uint32 srczdata = 0;
\r
6344 uint32 dstdata = 0;
\r
6345 uint32 dstzdata = 0;
\r
6346 uint32 writedata = 0;
\r
6347 uint32 inhibit = 0;
\r
6348 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
6349 dstdata = READ_PIXEL_16(a1);
\r
6350 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
6353 writedata |= ~srcdata & dstdata;
\r
6354 writedata |= srcdata & ~dstdata;
\r
6355 writedata |= srcdata & dstdata;
\r
6356 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6357 WRITE_PIXEL_16(a1, writedata);
\r
6360 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6361 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6368 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6369 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6370 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6373 #ifndef blitter_code_0x2401002d
\r
6374 #define blitter_code_0x2401002d
\r
6375 void blitter_0x2401002d(void)
\r
6377 while (outer_loop--)
\r
6379 inner_loop=n_pixels;
\r
6380 while (inner_loop--)
\r
6382 uint32 srcdata = 0;
\r
6383 uint32 srczdata = 0;
\r
6384 uint32 dstdata = 0;
\r
6385 uint32 dstzdata = 0;
\r
6386 uint32 writedata = 0;
\r
6387 uint32 inhibit = 0;
\r
6388 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
6389 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
6390 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
6391 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
6392 WRITE_PIXEL_32(a1, writedata);
\r
6395 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6396 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6403 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6404 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6405 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6408 #ifndef blitter_code_0x2401002c
\r
6409 #define blitter_code_0x2401002c
\r
6410 void blitter_0x2401002c(void)
\r
6412 while (outer_loop--)
\r
6414 inner_loop=n_pixels;
\r
6415 while (inner_loop--)
\r
6417 uint32 srcdata = 0;
\r
6418 uint32 srczdata = 0;
\r
6419 uint32 dstdata = 0;
\r
6420 uint32 dstzdata = 0;
\r
6421 uint32 writedata = 0;
\r
6422 uint32 inhibit = 0;
\r
6423 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
6424 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
6425 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
6426 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
6427 WRITE_PIXEL_16(a1, writedata);
\r
6430 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6431 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6438 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6439 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6440 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6443 #ifndef blitter_code_0x24010005
\r
6444 #define blitter_code_0x24010005
\r
6445 void blitter_0x24010005(void)
\r
6447 while (outer_loop--)
\r
6449 inner_loop=n_pixels;
\r
6450 while (inner_loop--)
\r
6452 uint32 srcdata = 0;
\r
6453 uint32 srczdata = 0;
\r
6454 uint32 dstdata = 0;
\r
6455 uint32 dstzdata = 0;
\r
6456 uint32 writedata = 0;
\r
6457 uint32 inhibit = 0;
\r
6458 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
6459 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
6460 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
6461 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
6462 WRITE_PIXEL_32(a1, writedata);
\r
6465 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6466 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6473 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6474 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6475 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6478 #ifndef blitter_code_0x04010220
\r
6479 #define blitter_code_0x04010220
\r
6480 void blitter_0x04010220(void)
\r
6482 while (outer_loop--)
\r
6484 inner_loop=n_pixels;
\r
6485 while (inner_loop--)
\r
6487 uint32 srcdata = 0;
\r
6488 uint32 srczdata = 0;
\r
6489 uint32 dstdata = 0;
\r
6490 uint32 dstzdata = 0;
\r
6491 uint32 writedata = 0;
\r
6492 uint32 inhibit = 0;
\r
6493 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
6494 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
6495 dstdata = READ_PIXEL_1(a1);
\r
6496 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
6497 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
6498 WRITE_PIXEL_1(a1, writedata);
\r
6501 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6502 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6509 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6510 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6511 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6514 #ifndef blitter_code_0x00c000ed
\r
6515 #define blitter_code_0x00c000ed
\r
6516 void blitter_0x00c000ed(void)
\r
6518 while (outer_loop--)
\r
6520 inner_loop=n_pixels;
\r
6521 while (inner_loop--)
\r
6523 uint32 srcdata = 0;
\r
6524 uint32 srczdata = 0;
\r
6525 uint32 dstdata = 0;
\r
6526 uint32 dstzdata = 0;
\r
6527 uint32 writedata = 0;
\r
6528 uint32 inhibit = 0;
\r
6529 srcdata = READ_PIXEL_32(a1);
\r
6530 dstdata = READ_RDATA_32(DSTDATA, a2, a2_phrase_mode);
\r
6531 writedata |= srcdata & ~dstdata;
\r
6532 writedata |= srcdata & dstdata;
\r
6533 WRITE_PIXEL_32(a2, writedata);
\r
6536 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6537 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6544 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6545 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6546 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6549 #ifndef blitter_code_0x040e026d
\r
6550 #define blitter_code_0x040e026d
\r
6551 void blitter_0x040e026d(void)
\r
6553 while (outer_loop--)
\r
6555 inner_loop=n_pixels;
\r
6556 while (inner_loop--)
\r
6558 uint32 srcdata = 0;
\r
6559 uint32 srczdata = 0;
\r
6560 uint32 dstdata = 0;
\r
6561 uint32 dstzdata = 0;
\r
6562 uint32 writedata = 0;
\r
6563 uint32 inhibit = 0;
\r
6564 srcdata = READ_RDATA_32(SRCDATA, a1, a1_phrase_mode);
\r
6565 srczdata = READ_RDATA_32(SRCZINT, a1, a1_phrase_mode);
\r
6566 dstdata = READ_PIXEL_32(a2);
\r
6567 dstzdata = READ_RDATA_32(DSTZ, a2, a2_phrase_mode);
\r
6568 writedata = (srcdata & 0xff) + (dstdata & 0xff);
\r
6569 writedata |= (srcdata & 0xf00) + (dstdata & 0xf00);
\r
6570 writedata |= (srcdata & 0xf000) + (dstdata & 0xf000);
\r
6571 WRITE_PIXEL_32(a2, writedata);
\r
6574 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6575 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6582 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6583 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6584 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6587 #ifndef blitter_code_0x0c01002c
\r
6588 #define blitter_code_0x0c01002c
\r
6589 void blitter_0x0c01002c(void)
\r
6591 // fprintf(log_get(),"blitter_0x0c01002c: 0x%.8x 0x%.8x 0x%.8x 0x%.8x cpu %i pc=0x%.8x\n",
\r
6592 // gd_i[0],gd_c[0],gd_ia,gd_ca,jaguar_cpu_in_exec,gpu_read_pc());
\r
6594 while (outer_loop--)
\r
6596 inner_loop=n_pixels;
\r
6597 while (inner_loop--)
\r
6599 uint32 dstdata = 0;
\r
6600 uint32 writedata = 0;
\r
6601 uint32 inhibit = 0;
\r
6602 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
6603 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
6606 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
6610 writedata=dstdata;
\r
6614 WRITE_PIXEL_16(a1, writedata);
\r
6618 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6619 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6620 gd_i[colour_index] += gd_ia;
\r
6621 gd_c[colour_index] += gd_ca;
\r
6628 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6629 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6630 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6633 #ifndef blitter_code_0x040e026c
\r
6634 #define blitter_code_0x040e026c
\r
6635 void blitter_0x040e026c(void)
\r
6637 while (outer_loop--)
\r
6639 inner_loop=n_pixels;
\r
6640 while (inner_loop--)
\r
6642 uint32 srcdata = 0;
\r
6643 uint32 srczdata = 0;
\r
6644 uint32 dstdata = 0;
\r
6645 uint32 dstzdata = 0;
\r
6646 uint32 writedata = 0;
\r
6647 uint32 inhibit = 0;
\r
6648 srcdata = READ_RDATA_32(SRCDATA, a1, a1_phrase_mode);
\r
6649 srczdata = READ_RDATA_32(SRCZINT, a1, a1_phrase_mode);
\r
6650 dstdata = READ_PIXEL_32(a2);
\r
6651 dstzdata = READ_RDATA_32(DSTZ, a2, a2_phrase_mode);
\r
6654 writedata = (srcdata & 0xff) + (dstdata & 0xff);
\r
6655 writedata |= (srcdata & 0xf00) + (dstdata & 0xf00);
\r
6656 writedata |= (srcdata & 0xf000) + (dstdata & 0xf000);
\r
6657 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6660 WRITE_PIXEL_32(a2, writedata);
\r
6664 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6665 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6672 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6673 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6674 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6677 #ifndef blitter_code_0x00c04280
\r
6678 #define blitter_code_0x00c04280
\r
6679 void blitter_0x00c04280(void)
\r
6681 while (outer_loop--)
\r
6683 inner_loop=n_pixels;
\r
6684 while (inner_loop--)
\r
6686 uint32 srcdata = 0;
\r
6687 uint32 srczdata = 0;
\r
6688 uint32 dstdata = 0;
\r
6689 uint32 dstzdata = 0;
\r
6690 uint32 writedata = 0;
\r
6691 uint32 inhibit = 0;
\r
6692 srcdata = READ_PIXEL_1(a2);
\r
6693 dstdata = READ_PIXEL_1(a1);
\r
6694 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
6695 if (srcdata == READ_RDATA_1(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
6698 writedata |= srcdata & ~dstdata;
\r
6699 writedata |= srcdata & dstdata;
\r
6700 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6703 WRITE_PIXEL_1(a1, writedata);
\r
6707 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6708 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6715 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6716 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6717 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6720 #ifndef blitter_code_0x04010200
\r
6721 #define blitter_code_0x04010200
\r
6722 void blitter_0x04010200(void)
\r
6724 while (outer_loop--)
\r
6726 inner_loop=n_pixels;
\r
6727 while (inner_loop--)
\r
6729 uint32 srcdata = 0;
\r
6730 uint32 srczdata = 0;
\r
6731 uint32 dstdata = 0;
\r
6732 uint32 dstzdata = 0;
\r
6733 uint32 writedata = 0;
\r
6734 uint32 inhibit = 0;
\r
6735 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
6736 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
6737 dstdata = READ_PIXEL_1(a1);
\r
6738 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
6741 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
6742 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6745 WRITE_PIXEL_1(a1, writedata);
\r
6749 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6750 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6757 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6758 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6759 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6762 #ifndef blitter_code_0x00600280
\r
6763 #define blitter_code_0x00600280
\r
6764 void blitter_0x00600280(void)
\r
6766 while (outer_loop--)
\r
6768 inner_loop=n_pixels;
\r
6769 while (inner_loop--)
\r
6771 uint32 srcdata = 0;
\r
6772 uint32 srczdata = 0;
\r
6773 uint32 dstdata = 0;
\r
6774 uint32 dstzdata = 0;
\r
6775 uint32 writedata = 0;
\r
6776 uint32 inhibit = 0;
\r
6777 srcdata = READ_PIXEL_1(a2);
\r
6778 dstdata = READ_PIXEL_1(a1);
\r
6779 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
6782 writedata |= ~srcdata & dstdata;
\r
6783 writedata |= srcdata & ~dstdata;
\r
6784 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6787 WRITE_PIXEL_1(a1, writedata);
\r
6791 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6792 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6799 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6800 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6801 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6804 #ifndef blitter_code_0x04010005
\r
6805 #define blitter_code_0x04010005
\r
6806 void blitter_0x04010005(void)
\r
6808 while (outer_loop--)
\r
6810 inner_loop=n_pixels;
\r
6811 while (inner_loop--)
\r
6813 uint32 srcdata = 0;
\r
6814 uint32 srczdata = 0;
\r
6815 uint32 dstdata = 0;
\r
6816 uint32 dstzdata = 0;
\r
6817 uint32 writedata = 0;
\r
6818 uint32 inhibit = 0;
\r
6819 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
6820 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
6821 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
6824 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
6825 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6828 WRITE_PIXEL_32(a1, writedata);
\r
6832 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6833 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6840 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6841 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6842 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6845 #ifndef blitter_code_0x0401002c
\r
6846 #define blitter_code_0x0401002c
\r
6847 void blitter_0x0401002c(void)
\r
6849 while (outer_loop--)
\r
6851 inner_loop=n_pixels;
\r
6852 while (inner_loop--)
\r
6854 uint32 srcdata = 0;
\r
6855 uint32 srczdata = 0;
\r
6856 uint32 dstdata = 0;
\r
6857 uint32 dstzdata = 0;
\r
6858 uint32 writedata = 0;
\r
6859 uint32 inhibit = 0;
\r
6860 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
6861 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
6862 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
6865 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
6866 } else { srczdata=dstzdata; writedata=dstdata; }
\r
6869 WRITE_PIXEL_16(a1, writedata);
\r
6873 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6874 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6881 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6882 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6883 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6886 #ifndef blitter_code_0x30c000db
\r
6887 #define blitter_code_0x30c000db
\r
6888 void blitter_0x30c000db(void)
\r
6890 while (outer_loop--)
\r
6892 inner_loop=n_pixels;
\r
6893 while (inner_loop--)
\r
6895 uint32 srcdata = 0;
\r
6896 uint32 srczdata = 0;
\r
6897 uint32 dstdata = 0;
\r
6898 uint32 dstzdata = 0;
\r
6899 uint32 writedata = 0;
\r
6900 uint32 inhibit = 0;
\r
6901 srcdata = READ_PIXEL_8(a1);
\r
6902 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
6903 writedata |= srcdata & ~dstdata;
\r
6904 writedata |= srcdata & dstdata;
\r
6905 WRITE_PIXEL_8(a2, writedata);
\r
6908 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6909 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6916 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6917 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6918 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6921 #ifndef blitter_code_0x30c002ad
\r
6922 #define blitter_code_0x30c002ad
\r
6923 void blitter_0x30c002ad(void)
\r
6925 while (outer_loop--)
\r
6927 inner_loop=n_pixels;
\r
6928 while (inner_loop--)
\r
6930 uint32 srcdata = 0;
\r
6931 uint32 srczdata = 0;
\r
6932 uint32 dstdata = 0;
\r
6933 uint32 dstzdata = 0;
\r
6934 uint32 writedata = 0;
\r
6935 uint32 inhibit = 0;
\r
6936 srcdata = READ_PIXEL_32(a2);
\r
6937 dstdata = READ_PIXEL_32(a1);
\r
6938 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
6939 writedata |= srcdata & ~dstdata;
\r
6940 writedata |= srcdata & dstdata;
\r
6941 WRITE_PIXEL_32(a1, writedata);
\r
6944 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6945 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6952 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6953 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6954 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6957 #ifndef blitter_code_0x3401009b
\r
6958 #define blitter_code_0x3401009b
\r
6959 void blitter_0x3401009b(void)
\r
6961 while (outer_loop--)
\r
6963 inner_loop=n_pixels;
\r
6964 while (inner_loop--)
\r
6966 uint32 srcdata = 0;
\r
6967 uint32 srczdata = 0;
\r
6968 uint32 dstdata = 0;
\r
6969 uint32 dstzdata = 0;
\r
6970 uint32 writedata = 0;
\r
6971 uint32 inhibit = 0;
\r
6972 srcdata = READ_PIXEL_8(a2);
\r
6973 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
6974 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
6975 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
6976 WRITE_PIXEL_8(a1, writedata);
\r
6979 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
6980 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
6987 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
6988 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
6989 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
6992 #ifndef blitter_code_0x04c1022d
\r
6993 #define blitter_code_0x04c1022d
\r
6994 void blitter_0x04c1022d(void)
\r
6996 while (outer_loop--)
\r
6998 inner_loop=n_pixels;
\r
6999 while (inner_loop--)
\r
7001 uint32 srcdata = 0;
\r
7002 uint32 srczdata = 0;
\r
7003 uint32 dstdata = 0;
\r
7004 uint32 dstzdata = 0;
\r
7005 uint32 writedata = 0;
\r
7006 uint32 inhibit = 0;
\r
7007 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
7008 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
7009 dstdata = READ_PIXEL_32(a1);
\r
7010 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
7011 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
7012 WRITE_PIXEL_32(a1, writedata);
\r
7015 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7016 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7023 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7024 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7025 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7028 #ifndef blitter_code_0x008002ad
\r
7029 #define blitter_code_0x008002ad
\r
7030 void blitter_0x008002ad(void)
\r
7032 while (outer_loop--)
\r
7034 inner_loop=n_pixels;
\r
7035 while (inner_loop--)
\r
7037 uint32 srcdata = 0;
\r
7038 uint32 srczdata = 0;
\r
7039 uint32 dstdata = 0;
\r
7040 uint32 dstzdata = 0;
\r
7041 uint32 writedata = 0;
\r
7042 uint32 inhibit = 0;
\r
7043 srcdata = READ_PIXEL_32(a2);
\r
7044 dstdata = READ_PIXEL_32(a1);
\r
7045 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
7046 writedata |= srcdata & dstdata;
\r
7047 WRITE_PIXEL_32(a1, writedata);
\r
7050 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7051 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7058 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7059 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7060 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7063 #ifndef blitter_code_0x14c1022d
\r
7064 #define blitter_code_0x14c1022d
\r
7065 void blitter_0x14c1022d(void)
\r
7067 while (outer_loop--)
\r
7069 inner_loop=n_pixels;
\r
7070 while (inner_loop--)
\r
7072 uint32 srcdata = 0;
\r
7073 uint32 srczdata = 0;
\r
7074 uint32 dstdata = 0;
\r
7075 uint32 dstzdata = 0;
\r
7076 uint32 writedata = 0;
\r
7077 uint32 inhibit = 0;
\r
7078 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
7079 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
7080 dstdata = READ_PIXEL_32(a1);
\r
7081 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
7082 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
7083 WRITE_PIXEL_32(a1, writedata);
\r
7086 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7087 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7094 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7095 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7096 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7099 #ifndef blitter_code_0x34c1022d
\r
7100 #define blitter_code_0x34c1022d
\r
7101 void blitter_0x34c1022d(void)
\r
7103 while (outer_loop--)
\r
7105 inner_loop=n_pixels;
\r
7106 while (inner_loop--)
\r
7108 uint32 srcdata = 0;
\r
7109 uint32 srczdata = 0;
\r
7110 uint32 dstdata = 0;
\r
7111 uint32 dstzdata = 0;
\r
7112 uint32 writedata = 0;
\r
7113 uint32 inhibit = 0;
\r
7114 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
7115 srczdata = READ_RDATA_32(SRCZINT, a2, a2_phrase_mode);
\r
7116 dstdata = READ_PIXEL_32(a1);
\r
7117 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
7118 writedata= READ_RDATA_32(PATTERNDATA, a1, a1_phrase_mode);
\r
7119 WRITE_PIXEL_32(a1, writedata);
\r
7122 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7123 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7130 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7131 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7132 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7135 #ifndef blitter_code_0x30c0029b
\r
7136 #define blitter_code_0x30c0029b
\r
7137 void blitter_0x30c0029b(void)
\r
7139 while (outer_loop--)
\r
7141 inner_loop=n_pixels;
\r
7142 while (inner_loop--)
\r
7144 uint32 srcdata = 0;
\r
7145 uint32 srczdata = 0;
\r
7146 uint32 dstdata = 0;
\r
7147 uint32 dstzdata = 0;
\r
7148 uint32 writedata = 0;
\r
7149 uint32 inhibit = 0;
\r
7150 srcdata = READ_PIXEL_8(a2);
\r
7151 dstdata = READ_PIXEL_8(a1);
\r
7152 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
7153 writedata |= srcdata & ~dstdata;
\r
7154 writedata |= srcdata & dstdata;
\r
7155 WRITE_PIXEL_8(a1, writedata);
\r
7158 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7159 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7166 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7167 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7168 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7171 #ifndef blitter_code_0x24c1021b
\r
7172 #define blitter_code_0x24c1021b
\r
7173 void blitter_0x24c1021b(void)
\r
7175 while (outer_loop--)
\r
7177 inner_loop=n_pixels;
\r
7178 while (inner_loop--)
\r
7180 uint32 srcdata = 0;
\r
7181 uint32 srczdata = 0;
\r
7182 uint32 dstdata = 0;
\r
7183 uint32 dstzdata = 0;
\r
7184 uint32 writedata = 0;
\r
7185 uint32 inhibit = 0;
\r
7186 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
7187 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
7188 dstdata = READ_PIXEL_8(a1);
\r
7189 dstzdata = READ_RDATA_8(DSTZ, a1, a1_phrase_mode);
\r
7190 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
7191 WRITE_PIXEL_8(a1, writedata);
\r
7194 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7195 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7202 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7203 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7204 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7207 #ifndef blitter_code_0x30c042ad
\r
7208 #define blitter_code_0x30c042ad
\r
7209 void blitter_0x30c042ad(void)
\r
7211 while (outer_loop--)
\r
7213 inner_loop=n_pixels;
\r
7214 while (inner_loop--)
\r
7216 uint32 srcdata = 0;
\r
7217 uint32 srczdata = 0;
\r
7218 uint32 dstdata = 0;
\r
7219 uint32 dstzdata = 0;
\r
7220 uint32 writedata = 0;
\r
7221 uint32 inhibit = 0;
\r
7222 srcdata = READ_PIXEL_32(a2);
\r
7223 dstdata = READ_PIXEL_32(a1);
\r
7224 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
7225 if (srcdata == READ_RDATA_32(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
7228 writedata |= srcdata & ~dstdata;
\r
7229 writedata |= srcdata & dstdata;
\r
7230 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7231 WRITE_PIXEL_32(a1, writedata);
\r
7234 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7235 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7242 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7243 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7244 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7247 #ifndef blitter_code_0x3e01261c
\r
7248 #define blitter_code_0x3e01261c
\r
7249 void blitter_0x3e01261c(void)
\r
7251 while (outer_loop--)
\r
7253 inner_loop=n_pixels;
\r
7254 while (inner_loop--)
\r
7256 uint32 srcdata = 0;
\r
7257 uint32 srczdata = 0;
\r
7258 uint32 dstdata = 0;
\r
7259 uint32 dstzdata = 0;
\r
7260 uint32 writedata = 0;
\r
7261 uint32 inhibit = 0;
\r
7262 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
7263 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
7264 dstdata = READ_PIXEL_16(a1);
\r
7265 dstzdata = READ_ZDATA_16(a1);
\r
7266 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7267 srczdata=z_i[colour_index]>>16;
\r
7268 if (srczdata > dstzdata) inhibit = 1;
\r
7271 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
7272 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
7273 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7274 WRITE_PIXEL_16(a1, writedata);
\r
7275 WRITE_ZDATA_16(a1, srczdata);
\r
7278 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7279 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7280 z_i[colour_index]+=zadd;
\r
7281 gd_i[colour_index] += gd_ia;
\r
7282 gd_c[colour_index] += gd_ca;
\r
7283 colour_index=(colour_index+1)&0x3;
\r
7290 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7291 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7292 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7295 #ifndef blitter_code_0x00e00280
\r
7296 #define blitter_code_0x00e00280
\r
7297 void blitter_0x00e00280(void)
\r
7299 while (outer_loop--)
\r
7301 inner_loop=n_pixels;
\r
7302 while (inner_loop--)
\r
7304 uint32 srcdata = 0;
\r
7305 uint32 srczdata = 0;
\r
7306 uint32 dstdata = 0;
\r
7307 uint32 dstzdata = 0;
\r
7308 uint32 writedata = 0;
\r
7309 uint32 inhibit = 0;
\r
7310 srcdata = READ_PIXEL_1(a2);
\r
7311 dstdata = READ_PIXEL_1(a1);
\r
7312 dstzdata = READ_RDATA_1(DSTZ, a1, a1_phrase_mode);
\r
7313 writedata |= ~srcdata & dstdata;
\r
7314 writedata |= srcdata & ~dstdata;
\r
7315 writedata |= srcdata & dstdata;
\r
7316 WRITE_PIXEL_1(a1, writedata);
\r
7319 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7320 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7327 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7328 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7329 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7332 #ifndef blitter_code_0x00e00292
\r
7333 #define blitter_code_0x00e00292
\r
7334 void blitter_0x00e00292(void)
\r
7336 while (outer_loop--)
\r
7338 inner_loop=n_pixels;
\r
7339 while (inner_loop--)
\r
7341 uint32 srcdata = 0;
\r
7342 uint32 srczdata = 0;
\r
7343 uint32 dstdata = 0;
\r
7344 uint32 dstzdata = 0;
\r
7345 uint32 writedata = 0;
\r
7346 uint32 inhibit = 0;
\r
7347 srcdata = READ_PIXEL_4(a2);
\r
7348 dstdata = READ_PIXEL_4(a1);
\r
7349 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
7350 writedata |= ~srcdata & dstdata;
\r
7351 writedata |= srcdata & ~dstdata;
\r
7352 writedata |= srcdata & dstdata;
\r
7353 WRITE_PIXEL_4(a1, writedata);
\r
7356 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7357 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7364 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7365 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7366 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7369 #ifndef blitter_code_0x308002a4
\r
7370 #define blitter_code_0x308002a4
\r
7371 void blitter_0x308002a4(void)
\r
7373 while (outer_loop--)
\r
7375 inner_loop=n_pixels;
\r
7376 while (inner_loop--)
\r
7378 uint32 srcdata = 0;
\r
7379 uint32 srczdata = 0;
\r
7380 uint32 dstdata = 0;
\r
7381 uint32 dstzdata = 0;
\r
7382 uint32 writedata = 0;
\r
7383 uint32 inhibit = 0;
\r
7384 srcdata = READ_PIXEL_16(a2);
\r
7385 dstdata = READ_PIXEL_16(a1);
\r
7386 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
7387 writedata |= srcdata & dstdata;
\r
7388 WRITE_PIXEL_16(a1, writedata);
\r
7391 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7392 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7399 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7400 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7401 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7404 #ifndef blitter_code_0x00c002a4
\r
7405 #define blitter_code_0x00c002a4
\r
7406 void blitter_0x00c002a4(void)
\r
7408 while (outer_loop--)
\r
7410 inner_loop=n_pixels;
\r
7411 while (inner_loop--)
\r
7413 uint32 srcdata = 0;
\r
7414 uint32 srczdata = 0;
\r
7415 uint32 dstdata = 0;
\r
7416 uint32 dstzdata = 0;
\r
7417 uint32 writedata = 0;
\r
7418 uint32 inhibit = 0;
\r
7419 srcdata = READ_PIXEL_16(a2);
\r
7420 dstdata = READ_PIXEL_16(a1);
\r
7421 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
7422 writedata |= srcdata & ~dstdata;
\r
7423 writedata |= srcdata & dstdata;
\r
7424 WRITE_PIXEL_16(a1, writedata);
\r
7427 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7428 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7435 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7436 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7437 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7440 #ifndef blitter_code_0x01c042a4
\r
7441 #define blitter_code_0x01c042a4
\r
7442 void blitter_0x01c042a4(void)
\r
7444 while (outer_loop--)
\r
7446 inner_loop=n_pixels;
\r
7447 while (inner_loop--)
\r
7449 uint32 srcdata = 0;
\r
7450 uint32 srczdata = 0;
\r
7451 uint32 dstdata = 0;
\r
7452 uint32 dstzdata = 0;
\r
7453 uint32 writedata = 0;
\r
7454 uint32 inhibit = 0;
\r
7455 srcdata = READ_PIXEL_16(a2);
\r
7456 dstdata = READ_PIXEL_16(a1);
\r
7457 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
7458 if (srcdata == READ_RDATA_16(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
7461 writedata |= srcdata & ~dstdata;
\r
7462 writedata |= srcdata & dstdata;
\r
7463 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7464 WRITE_PIXEL_16(a1, writedata);
\r
7467 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7468 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7475 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7476 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7477 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7480 #ifndef blitter_code_0x06c066e4
\r
7481 #define blitter_code_0x06c066e4
\r
7482 void blitter_0x06c066e4(void)
\r
7484 while (outer_loop--)
\r
7486 inner_loop=n_pixels;
\r
7487 while (inner_loop--)
\r
7489 uint32 srcdata = 0;
\r
7490 uint32 srczdata = 0;
\r
7491 uint32 dstdata = 0;
\r
7492 uint32 dstzdata = 0;
\r
7493 uint32 writedata = 0;
\r
7494 uint32 inhibit = 0;
\r
7495 srcdata = READ_PIXEL_16(a1);
\r
7496 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
7497 dstdata = READ_PIXEL_16(a2);
\r
7498 dstzdata = READ_ZDATA_16(a2);
\r
7499 if (srczdata > dstzdata) inhibit = 1;
\r
7500 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
7503 writedata |= srcdata & ~dstdata;
\r
7504 writedata |= srcdata & dstdata;
\r
7505 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7508 WRITE_PIXEL_16(a2, writedata);
\r
7509 WRITE_ZDATA_16(a2, srczdata);
\r
7513 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7514 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7521 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7522 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7523 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7526 #ifndef blitter_code_0x04010222
\r
7527 #define blitter_code_0x04010222
\r
7528 void blitter_0x04010222(void)
\r
7530 while (outer_loop--)
\r
7532 inner_loop=n_pixels;
\r
7533 while (inner_loop--)
\r
7535 uint32 srcdata = 0;
\r
7536 uint32 srczdata = 0;
\r
7537 uint32 dstdata = 0;
\r
7538 uint32 dstzdata = 0;
\r
7539 uint32 writedata = 0;
\r
7540 uint32 inhibit = 0;
\r
7541 srcdata = READ_RDATA_4(SRCDATA, a2, a2_phrase_mode);
\r
7542 srczdata = READ_RDATA_4(SRCZINT, a2, a2_phrase_mode);
\r
7543 dstdata = READ_PIXEL_4(a1);
\r
7544 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
7545 writedata= READ_RDATA_4(PATTERNDATA, a1, a1_phrase_mode);
\r
7546 WRITE_PIXEL_4(a1, writedata);
\r
7549 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7550 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7557 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7558 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7559 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7562 #ifndef blitter_code_0x24010224
\r
7563 #define blitter_code_0x24010224
\r
7564 void blitter_0x24010224(void)
\r
7566 while (outer_loop--)
\r
7568 inner_loop=n_pixels;
\r
7569 while (inner_loop--)
\r
7571 uint32 srcdata = 0;
\r
7572 uint32 srczdata = 0;
\r
7573 uint32 dstdata = 0;
\r
7574 uint32 dstzdata = 0;
\r
7575 uint32 writedata = 0;
\r
7576 uint32 inhibit = 0;
\r
7577 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
7578 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
7579 dstdata = READ_PIXEL_16(a1);
\r
7580 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
7581 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
7582 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
7583 WRITE_PIXEL_16(a1, writedata);
\r
7586 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7587 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7588 gd_i[colour_index] += gd_ia;
\r
7589 gd_c[colour_index] += gd_ca;
\r
7596 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7597 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7598 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7601 #ifndef blitter_code_0x2000001b
\r
7602 #define blitter_code_0x2000001b
\r
7603 void blitter_0x2000001b(void)
\r
7605 while (outer_loop--)
\r
7607 inner_loop=n_pixels;
\r
7608 while (inner_loop--)
\r
7610 uint32 srcdata = 0;
\r
7611 uint32 srczdata = 0;
\r
7612 uint32 dstdata = 0;
\r
7613 uint32 dstzdata = 0;
\r
7614 uint32 writedata = 0;
\r
7615 uint32 inhibit = 0;
\r
7616 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
7617 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
7618 WRITE_PIXEL_8(a1, writedata);
\r
7621 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7622 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7629 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7630 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7631 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7634 #ifndef blitter_code_0x3000005b
\r
7635 #define blitter_code_0x3000005b
\r
7636 void blitter_0x3000005b(void)
\r
7638 while (outer_loop--)
\r
7640 inner_loop=n_pixels;
\r
7641 while (inner_loop--)
\r
7643 uint32 srcdata = 0;
\r
7644 uint32 srczdata = 0;
\r
7645 uint32 dstdata = 0;
\r
7646 uint32 dstzdata = 0;
\r
7647 uint32 writedata = 0;
\r
7648 uint32 inhibit = 0;
\r
7649 srcdata = READ_RDATA_8(SRCDATA, a1, a1_phrase_mode);
\r
7650 dstdata = READ_RDATA_8(DSTDATA, a2, a2_phrase_mode);
\r
7651 WRITE_PIXEL_8(a2, writedata);
\r
7654 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7655 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7662 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7663 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7664 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7667 #ifndef blitter_code_0x38000100
\r
7668 #define blitter_code_0x38000100
\r
7669 void blitter_0x38000100(void)
\r
7671 while (outer_loop--)
\r
7673 inner_loop=n_pixels;
\r
7674 while (inner_loop--)
\r
7676 uint32 srcdata = 0;
\r
7677 uint32 srczdata = 0;
\r
7678 uint32 dstdata = 0;
\r
7679 uint32 dstzdata = 0;
\r
7680 uint32 writedata = 0;
\r
7681 uint32 inhibit = 0;
\r
7682 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
7683 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
7684 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7687 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7688 WRITE_PIXEL_1(a1, writedata);
\r
7691 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7692 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7699 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7700 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7701 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7704 #ifndef blitter_code_0x1c010024
\r
7705 #define blitter_code_0x1c010024
\r
7706 void blitter_0x1c010024(void)
\r
7708 while (outer_loop--)
\r
7710 inner_loop=n_pixels;
\r
7711 while (inner_loop--)
\r
7713 uint32 srcdata = 0;
\r
7714 uint32 srczdata = 0;
\r
7715 uint32 dstdata = 0;
\r
7716 uint32 dstzdata = 0;
\r
7717 uint32 writedata = 0;
\r
7718 uint32 inhibit = 0;
\r
7719 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
7720 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
7721 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
7722 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7725 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
7726 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7727 WRITE_PIXEL_16(a1, writedata);
\r
7730 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7731 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7738 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7739 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7740 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7743 #ifndef blitter_code_0x000242e4
\r
7744 #define blitter_code_0x000242e4
\r
7745 void blitter_0x000242e4(void)
\r
7747 while (outer_loop--)
\r
7749 inner_loop=n_pixels;
\r
7750 while (inner_loop--)
\r
7752 uint32 srcdata = 0;
\r
7753 uint32 srczdata = 0;
\r
7754 uint32 dstdata = 0;
\r
7755 uint32 dstzdata = 0;
\r
7756 uint32 writedata = 0;
\r
7757 uint32 inhibit = 0;
\r
7758 srcdata = READ_PIXEL_16(a1);
\r
7759 dstdata = READ_PIXEL_16(a2);
\r
7760 dstzdata = READ_RDATA_16(DSTZ, a2, a2_phrase_mode);
\r
7761 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
7764 writedata = (srcdata & 0xff) + (dstdata & 0xff);
\r
7765 if (writedata > 0xff) writedata = 0xff;
\r
7766 writedata |= (srcdata & 0xf00) + (dstdata & 0xf00);
\r
7767 if (writedata > 0xfff) writedata = 0xfff;
\r
7768 writedata |= (srcdata & 0xf000) + (dstdata & 0xf000);
\r
7769 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7772 WRITE_PIXEL_16(a2, writedata);
\r
7776 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7777 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7784 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7785 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7786 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7789 #ifndef blitter_code_0x2c01002c
\r
7790 #define blitter_code_0x2c01002c
\r
7791 void blitter_0x2c01002c(void)
\r
7793 while (outer_loop--)
\r
7795 inner_loop=n_pixels;
\r
7796 while (inner_loop--)
\r
7798 uint32 srcdata = 0;
\r
7799 uint32 srczdata = 0;
\r
7800 uint32 dstdata = 0;
\r
7801 uint32 dstzdata = 0;
\r
7802 uint32 writedata = 0;
\r
7803 uint32 inhibit = 0;
\r
7804 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
7805 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
7806 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
7807 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7810 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
7811 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7814 WRITE_PIXEL_16(a1, writedata);
\r
7818 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7819 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7826 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7827 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7828 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7831 #ifndef blitter_code_0x30c042e4
\r
7832 #define blitter_code_0x30c042e4
\r
7833 void blitter_0x30c042e4(void)
\r
7835 while (outer_loop--)
\r
7837 inner_loop=n_pixels;
\r
7838 while (inner_loop--)
\r
7840 uint32 srcdata = 0;
\r
7841 uint32 srczdata = 0;
\r
7842 uint32 dstdata = 0;
\r
7843 uint32 dstzdata = 0;
\r
7844 uint32 writedata = 0;
\r
7845 uint32 inhibit = 0;
\r
7846 srcdata = READ_PIXEL_16(a1);
\r
7847 dstdata = READ_PIXEL_16(a2);
\r
7848 dstzdata = READ_RDATA_16(DSTZ, a2, a2_phrase_mode);
\r
7849 if (srcdata == READ_RDATA_16(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
7852 writedata |= srcdata & ~dstdata;
\r
7853 writedata |= srcdata & dstdata;
\r
7854 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7855 WRITE_PIXEL_16(a2, writedata);
\r
7858 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7859 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7866 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7867 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7868 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7871 #ifndef blitter_code_0x3c01002c
\r
7872 #define blitter_code_0x3c01002c
\r
7873 void blitter_0x3c01002c(void)
\r
7875 while (outer_loop--)
\r
7877 inner_loop=n_pixels;
\r
7878 while (inner_loop--)
\r
7880 uint32 srcdata = 0;
\r
7881 uint32 srczdata = 0;
\r
7882 uint32 dstdata = 0;
\r
7883 uint32 dstzdata = 0;
\r
7884 uint32 writedata = 0;
\r
7885 uint32 inhibit = 0;
\r
7886 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
7887 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
7888 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
7889 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7892 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
7893 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7894 WRITE_PIXEL_16(a1, writedata);
\r
7897 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7898 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7905 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7906 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7907 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7910 #ifndef blitter_code_0x0cc10212
\r
7911 #define blitter_code_0x0cc10212
\r
7912 void blitter_0x0cc10212(void)
\r
7914 while (outer_loop--)
\r
7916 inner_loop=n_pixels;
\r
7917 while (inner_loop--)
\r
7919 uint32 srcdata = 0;
\r
7920 uint32 srczdata = 0;
\r
7921 uint32 dstdata = 0;
\r
7922 uint32 dstzdata = 0;
\r
7923 uint32 writedata = 0;
\r
7924 uint32 inhibit = 0;
\r
7925 srcdata = READ_RDATA_4(SRCDATA, a2, a2_phrase_mode);
\r
7926 srczdata = READ_RDATA_4(SRCZINT, a2, a2_phrase_mode);
\r
7927 dstdata = READ_PIXEL_4(a1);
\r
7928 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
7929 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7932 writedata= READ_RDATA_4(PATTERNDATA, a1, a1_phrase_mode);
\r
7933 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7936 WRITE_PIXEL_4(a1, writedata);
\r
7940 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7941 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7948 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7949 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7950 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7953 #ifndef blitter_code_0x38000301
\r
7954 #define blitter_code_0x38000301
\r
7955 void blitter_0x38000301(void)
\r
7957 while (outer_loop--)
\r
7959 inner_loop=n_pixels;
\r
7960 while (inner_loop--)
\r
7962 uint32 srcdata = 0;
\r
7963 uint32 srczdata = 0;
\r
7964 uint32 dstdata = 0;
\r
7965 uint32 dstzdata = 0;
\r
7966 uint32 writedata = 0;
\r
7967 uint32 inhibit = 0;
\r
7968 srcdata = READ_RDATA_2(SRCDATA, a2, a2_phrase_mode);
\r
7969 dstdata = READ_PIXEL_2(a1);
\r
7970 dstzdata = READ_RDATA_2(DSTZ, a1, a1_phrase_mode);
\r
7971 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
7974 } else { srczdata=dstzdata; writedata=dstdata; }
\r
7975 WRITE_PIXEL_2(a1, writedata);
\r
7978 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
7979 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
7986 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
7987 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
7988 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
7991 #ifndef blitter_code_0x2401002b
\r
7992 #define blitter_code_0x2401002b
\r
7993 void blitter_0x2401002b(void)
\r
7995 while (outer_loop--)
\r
7997 inner_loop=n_pixels;
\r
7998 while (inner_loop--)
\r
8000 uint32 srcdata = 0;
\r
8001 uint32 srczdata = 0;
\r
8002 uint32 dstdata = 0;
\r
8003 uint32 dstzdata = 0;
\r
8004 uint32 writedata = 0;
\r
8005 uint32 inhibit = 0;
\r
8006 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
8007 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
8008 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
8009 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
8010 WRITE_PIXEL_8(a1, writedata);
\r
8013 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8014 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8021 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8022 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8023 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8026 #ifndef blitter_code_0x30c004ad
\r
8027 #define blitter_code_0x30c004ad
\r
8028 void blitter_0x30c004ad(void)
\r
8030 while (outer_loop--)
\r
8032 inner_loop=n_pixels;
\r
8033 while (inner_loop--)
\r
8035 uint32 srcdata = 0;
\r
8036 uint32 srczdata = 0;
\r
8037 uint32 dstdata = 0;
\r
8038 uint32 dstzdata = 0;
\r
8039 uint32 writedata = 0;
\r
8040 uint32 inhibit = 0;
\r
8041 srcdata = READ_PIXEL_32(a2);
\r
8042 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
8043 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
8044 writedata |= srcdata & ~dstdata;
\r
8045 writedata |= srcdata & dstdata;
\r
8046 WRITE_PIXEL_32(a1, writedata);
\r
8049 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8050 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8057 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8058 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8059 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8062 #ifndef blitter_code_0x04012000
\r
8063 #define blitter_code_0x04012000
\r
8064 void blitter_0x04012000(void)
\r
8066 while (outer_loop--)
\r
8068 inner_loop=n_pixels;
\r
8069 while (inner_loop--)
\r
8071 uint32 srcdata = 0;
\r
8072 uint32 srczdata = 0;
\r
8073 uint32 dstdata = 0;
\r
8074 uint32 dstzdata = 0;
\r
8075 uint32 writedata = 0;
\r
8076 uint32 inhibit = 0;
\r
8077 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
8078 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
8079 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
8080 srczdata=z_i[colour_index]>>16;
\r
8081 if (srczdata > dstzdata) inhibit = 1;
\r
8084 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
8085 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8088 WRITE_PIXEL_1(a1, writedata);
\r
8092 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8093 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8094 z_i[colour_index]+=zadd;
\r
8101 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8102 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8103 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8106 #ifndef blitter_code_0x34012000
\r
8107 #define blitter_code_0x34012000
\r
8108 void blitter_0x34012000(void)
\r
8110 while (outer_loop--)
\r
8112 inner_loop=n_pixels;
\r
8113 while (inner_loop--)
\r
8115 uint32 srcdata = 0;
\r
8116 uint32 srczdata = 0;
\r
8117 uint32 dstdata = 0;
\r
8118 uint32 dstzdata = 0;
\r
8119 uint32 writedata = 0;
\r
8120 uint32 inhibit = 0;
\r
8121 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
8122 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
8123 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
8124 srczdata=z_i[colour_index]>>16;
\r
8125 if (srczdata > dstzdata) inhibit = 1;
\r
8128 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
8129 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8130 WRITE_PIXEL_1(a1, writedata);
\r
8133 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8134 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8135 z_i[colour_index]+=zadd;
\r
8136 colour_index=(colour_index+1)&0x3;
\r
8143 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8144 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8145 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8148 #ifndef blitter_code_0x30c004ad
\r
8149 #define blitter_code_0x30c004ad
\r
8150 void blitter_0x30c004ad(void)
\r
8152 while (outer_loop--)
\r
8154 inner_loop=n_pixels;
\r
8155 while (inner_loop--)
\r
8157 uint32 srcdata = 0;
\r
8158 uint32 srczdata = 0;
\r
8159 uint32 dstdata = 0;
\r
8160 uint32 dstzdata = 0;
\r
8161 uint32 writedata = 0;
\r
8162 uint32 inhibit = 0;
\r
8163 srcdata = READ_PIXEL_32(a2);
\r
8164 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
8165 dstzdata = READ_RDATA_32(DSTZ, a1, a1_phrase_mode);
\r
8166 writedata |= srcdata & ~dstdata;
\r
8167 writedata |= srcdata & dstdata;
\r
8168 WRITE_PIXEL_32(a1, writedata);
\r
8171 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8172 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8179 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8180 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8181 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8184 #ifndef blitter_code_0x04012000
\r
8185 #define blitter_code_0x04012000
\r
8186 void blitter_0x04012000(void)
\r
8188 while (outer_loop--)
\r
8190 inner_loop=n_pixels;
\r
8191 while (inner_loop--)
\r
8193 uint32 srcdata = 0;
\r
8194 uint32 srczdata = 0;
\r
8195 uint32 dstdata = 0;
\r
8196 uint32 dstzdata = 0;
\r
8197 uint32 writedata = 0;
\r
8198 uint32 inhibit = 0;
\r
8199 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
8200 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
8201 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
8202 srczdata=z_i[colour_index]>>16;
\r
8203 if (srczdata > dstzdata) inhibit = 1;
\r
8206 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
8207 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8210 WRITE_PIXEL_1(a1, writedata);
\r
8214 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8215 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8216 z_i[colour_index]+=zadd;
\r
8223 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8224 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8225 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8228 #ifndef blitter_code_0x34012000
\r
8229 #define blitter_code_0x34012000
\r
8230 void blitter_0x34012000(void)
\r
8232 while (outer_loop--)
\r
8234 inner_loop=n_pixels;
\r
8235 while (inner_loop--)
\r
8237 uint32 srcdata = 0;
\r
8238 uint32 srczdata = 0;
\r
8239 uint32 dstdata = 0;
\r
8240 uint32 dstzdata = 0;
\r
8241 uint32 writedata = 0;
\r
8242 uint32 inhibit = 0;
\r
8243 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
8244 srczdata = READ_RDATA_1(SRCZINT, a2, a2_phrase_mode);
\r
8245 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
8246 srczdata=z_i[colour_index]>>16;
\r
8247 if (srczdata > dstzdata) inhibit = 1;
\r
8250 writedata= READ_RDATA_1(PATTERNDATA, a1, a1_phrase_mode);
\r
8251 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8252 WRITE_PIXEL_1(a1, writedata);
\r
8255 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8256 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8257 z_i[colour_index]+=zadd;
\r
8258 colour_index=(colour_index+1)&0x3;
\r
8265 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8266 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8267 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8270 #ifndef blitter_code_0x30808c92
\r
8271 #define blitter_code_0x30808c92
\r
8272 void blitter_0x30808c92(void)
\r
8274 while (outer_loop--)
\r
8276 inner_loop=n_pixels;
\r
8277 while (inner_loop--)
\r
8279 uint32 srcdata = 0;
\r
8280 uint32 srczdata = 0;
\r
8281 uint32 dstdata = 0;
\r
8282 uint32 dstzdata = 0;
\r
8283 uint32 writedata = 0;
\r
8284 uint32 inhibit = 0;
\r
8285 srcdata = READ_PIXEL_4(a2);
\r
8286 dstdata = READ_RDATA_4(DSTDATA, a1, a1_phrase_mode);
\r
8287 dstzdata = READ_RDATA_4(DSTZ, a1, a1_phrase_mode);
\r
8288 if (srczdata < dstzdata) inhibit = 1;
\r
8291 writedata |= srcdata & dstdata;
\r
8292 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8293 WRITE_PIXEL_4(a1, writedata);
\r
8296 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8297 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8304 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8305 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8306 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8309 #ifndef blitter_code_0x0040409b
\r
8310 #define blitter_code_0x0040409b
\r
8311 void blitter_0x0040409b(void)
\r
8313 while (outer_loop--)
\r
8315 inner_loop=n_pixels;
\r
8316 while (inner_loop--)
\r
8318 uint32 srcdata = 0;
\r
8319 uint32 srczdata = 0;
\r
8320 uint32 dstdata = 0;
\r
8321 uint32 dstzdata = 0;
\r
8322 uint32 writedata = 0;
\r
8323 uint32 inhibit = 0;
\r
8324 srcdata = READ_PIXEL_8(a2);
\r
8325 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
8326 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
8329 writedata |= srcdata & ~dstdata;
\r
8330 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8333 WRITE_PIXEL_8(a1, writedata);
\r
8337 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8338 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8345 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8346 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8347 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8350 #ifndef blitter_code_0x1000001d
\r
8351 #define blitter_code_0x1000001d
\r
8352 void blitter_0x1000001d(void)
\r
8354 while (outer_loop--)
\r
8356 inner_loop=n_pixels;
\r
8357 while (inner_loop--)
\r
8359 uint32 srcdata = 0;
\r
8360 uint32 srczdata = 0;
\r
8361 uint32 dstdata = 0;
\r
8362 uint32 dstzdata = 0;
\r
8363 uint32 writedata = 0;
\r
8364 uint32 inhibit = 0;
\r
8365 srcdata = READ_RDATA_32(SRCDATA, a2, a2_phrase_mode);
\r
8366 dstdata = READ_RDATA_32(DSTDATA, a1, a1_phrase_mode);
\r
8369 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8370 WRITE_PIXEL_32(a1, writedata);
\r
8373 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8374 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8381 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8382 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8383 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8386 #ifndef blitter_code_0x0000409b
\r
8387 #define blitter_code_0x0000409b
\r
8388 void blitter_0x0000409b(void)
\r
8390 while (outer_loop--)
\r
8392 inner_loop=n_pixels;
\r
8393 while (inner_loop--)
\r
8395 uint32 srcdata = 0;
\r
8396 uint32 srczdata = 0;
\r
8397 uint32 dstdata = 0;
\r
8398 uint32 dstzdata = 0;
\r
8399 uint32 writedata = 0;
\r
8400 uint32 inhibit = 0;
\r
8401 srcdata = READ_PIXEL_8(a2);
\r
8402 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
8403 if (srcdata == READ_RDATA_8(PATTERNDATA, a2,a2_phrase_mode)) inhibit=1;
\r
8406 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8409 WRITE_PIXEL_8(a1, writedata);
\r
8413 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8414 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8421 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8422 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8423 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8426 #ifndef blitter_code_0x0cc10024
\r
8427 #define blitter_code_0x0cc10024
\r
8428 void blitter_0x0cc10024(void)
\r
8430 while (outer_loop--)
\r
8432 inner_loop=n_pixels;
\r
8433 while (inner_loop--)
\r
8435 uint32 srcdata = 0;
\r
8436 uint32 srczdata = 0;
\r
8437 uint32 dstdata = 0;
\r
8438 uint32 dstzdata = 0;
\r
8439 uint32 writedata = 0;
\r
8440 uint32 inhibit = 0;
\r
8441 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
8442 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
8443 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
8444 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
8447 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
8448 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8451 WRITE_PIXEL_16(a1, writedata);
\r
8455 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8456 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8463 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8464 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8465 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8468 #ifndef blitter_code_0x2401001b
\r
8469 #define blitter_code_0x2401001b
\r
8470 void blitter_0x2401001b(void)
\r
8472 while (outer_loop--)
\r
8474 inner_loop=n_pixels;
\r
8475 while (inner_loop--)
\r
8477 uint32 srcdata = 0;
\r
8478 uint32 srczdata = 0;
\r
8479 uint32 dstdata = 0;
\r
8480 uint32 dstzdata = 0;
\r
8481 uint32 writedata = 0;
\r
8482 uint32 inhibit = 0;
\r
8483 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
8484 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
8485 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
8486 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
8487 WRITE_PIXEL_8(a1, writedata);
\r
8490 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8491 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8498 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8499 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8500 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8503 #ifndef blitter_code_0x01c042db
\r
8504 #define blitter_code_0x01c042db
\r
8505 void blitter_0x01c042db(void)
\r
8507 while (outer_loop--)
\r
8509 inner_loop=n_pixels;
\r
8510 while (inner_loop--)
\r
8512 uint32 srcdata = 0;
\r
8513 uint32 srczdata = 0;
\r
8514 uint32 dstdata = 0;
\r
8515 uint32 dstzdata = 0;
\r
8516 uint32 writedata = 0;
\r
8517 uint32 inhibit = 0;
\r
8518 srcdata = READ_PIXEL_8(a1);
\r
8519 dstdata = READ_PIXEL_8(a2);
\r
8520 dstzdata = READ_RDATA_8(DSTZ, a2, a2_phrase_mode);
\r
8521 if (srcdata == READ_RDATA_8(PATTERNDATA, a1,a1_phrase_mode)) inhibit=1;
\r
8524 writedata |= srcdata & ~dstdata;
\r
8525 writedata |= srcdata & dstdata;
\r
8526 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8527 WRITE_PIXEL_8(a2, writedata);
\r
8530 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8531 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8538 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8539 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8540 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8543 #ifndef blitter_code_0x34010224
\r
8544 #define blitter_code_0x34010224
\r
8545 void blitter_0x34010224(void)
\r
8547 while (outer_loop--)
\r
8549 inner_loop=n_pixels;
\r
8550 while (inner_loop--)
\r
8552 uint32 srcdata = 0;
\r
8553 uint32 srczdata = 0;
\r
8554 uint32 dstdata = 0;
\r
8555 uint32 dstzdata = 0;
\r
8556 uint32 writedata = 0;
\r
8557 uint32 inhibit = 0;
\r
8558 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
8559 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
8560 dstdata = READ_PIXEL_16(a1);
\r
8561 dstzdata = READ_RDATA_16(DSTZ, a1, a1_phrase_mode);
\r
8562 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
8563 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
8564 WRITE_PIXEL_16(a1, writedata);
\r
8567 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8568 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8569 gd_i[colour_index] += gd_ia;
\r
8570 gd_c[colour_index] += gd_ca;
\r
8571 colour_index=(colour_index+1)&0x3;
\r
8578 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8579 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8580 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8583 #ifndef blitter_code_0x30808800
\r
8584 #define blitter_code_0x30808800
\r
8585 void blitter_0x30808800(void)
\r
8587 while (outer_loop--)
\r
8589 inner_loop=n_pixels;
\r
8590 while (inner_loop--)
\r
8592 uint32 srcdata = 0;
\r
8593 uint32 srczdata = 0;
\r
8594 uint32 dstdata = 0;
\r
8595 uint32 dstzdata = 0;
\r
8596 uint32 writedata = 0;
\r
8597 uint32 inhibit = 0;
\r
8598 srcdata = READ_RDATA_1(SRCDATA, a2, a2_phrase_mode);
\r
8599 dstdata = READ_RDATA_1(DSTDATA, a1, a1_phrase_mode);
\r
8600 if (srczdata < dstzdata) inhibit = 1;
\r
8603 writedata |= srcdata & dstdata;
\r
8604 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8605 WRITE_PIXEL_1(a1, writedata);
\r
8608 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8609 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8616 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8617 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8618 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8621 #ifndef blitter_code_0x06c026e4
\r
8622 #define blitter_code_0x06c026e4
\r
8623 void blitter_0x06c026e4(void)
\r
8625 while (outer_loop--)
\r
8627 inner_loop=n_pixels;
\r
8628 while (inner_loop--)
\r
8630 uint32 srcdata = 0;
\r
8631 uint32 srczdata = 0;
\r
8632 uint32 dstdata = 0;
\r
8633 uint32 dstzdata = 0;
\r
8634 uint32 writedata = 0;
\r
8635 uint32 inhibit = 0;
\r
8636 srcdata = READ_PIXEL_16(a1);
\r
8637 srczdata = READ_RDATA_16(SRCZINT, a1, a1_phrase_mode);
\r
8638 dstdata = READ_PIXEL_16(a2);
\r
8639 dstzdata = READ_ZDATA_16(a2);
\r
8640 srczdata=z_i[colour_index]>>16;
\r
8641 if (srczdata > dstzdata) inhibit = 1;
\r
8644 writedata |= srcdata & ~dstdata;
\r
8645 writedata |= srcdata & dstdata;
\r
8646 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8649 WRITE_PIXEL_16(a2, writedata);
\r
8650 WRITE_ZDATA_16(a2, srczdata);
\r
8654 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8655 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8656 z_i[colour_index]+=zadd;
\r
8663 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8664 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8665 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8668 #ifndef blitter_code_0x06012624
\r
8669 #define blitter_code_0x06012624
\r
8670 void blitter_0x06012624(void)
\r
8672 while (outer_loop--)
\r
8674 inner_loop=n_pixels;
\r
8675 while (inner_loop--)
\r
8677 uint32 srcdata = 0;
\r
8678 uint32 srczdata = 0;
\r
8679 uint32 dstdata = 0;
\r
8680 uint32 dstzdata = 0;
\r
8681 uint32 writedata = 0;
\r
8682 uint32 inhibit = 0;
\r
8683 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
8684 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
8685 dstdata = READ_PIXEL_16(a1);
\r
8686 dstzdata = READ_ZDATA_16(a1);
\r
8687 srczdata=z_i[colour_index]>>16;
\r
8688 if (srczdata > dstzdata) inhibit = 1;
\r
8691 writedata= READ_RDATA_16(PATTERNDATA, a1, a1_phrase_mode);
\r
8692 writedata = ((gd_c[colour_index])<<8)|(gd_i[colour_index]>>16);
\r
8693 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8696 WRITE_PIXEL_16(a1, writedata);
\r
8697 WRITE_ZDATA_16(a1, srczdata);
\r
8701 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8702 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8703 z_i[colour_index]+=zadd;
\r
8704 gd_i[colour_index] += gd_ia;
\r
8705 gd_c[colour_index] += gd_ca;
\r
8712 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8713 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8714 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8717 #ifndef blitter_code_0x000200e4
\r
8718 #define blitter_code_0x000200e4
\r
8719 void blitter_0x000200e4(void)
\r
8721 while (outer_loop--)
\r
8723 inner_loop=n_pixels;
\r
8724 while (inner_loop--)
\r
8726 uint32 srcdata = 0;
\r
8727 uint32 srczdata = 0;
\r
8728 uint32 dstdata = 0;
\r
8729 uint32 dstzdata = 0;
\r
8730 uint32 writedata = 0;
\r
8731 uint32 inhibit = 0;
\r
8732 srcdata = READ_PIXEL_16(a1);
\r
8733 dstdata = READ_RDATA_16(DSTDATA, a2, a2_phrase_mode);
\r
8736 writedata = (srcdata & 0xff) + (dstdata & 0xff);
\r
8737 if (writedata > 0xff) writedata = 0xff;
\r
8738 writedata |= (srcdata & 0xf00) + (dstdata & 0xf00);
\r
8739 if (writedata > 0xfff) writedata = 0xfff;
\r
8740 writedata |= (srcdata & 0xf000) + (dstdata & 0xf000);
\r
8741 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8744 WRITE_PIXEL_16(a2, writedata);
\r
8748 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8749 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8756 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8757 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8758 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8761 #ifndef blitter_code_0x37c026a4
\r
8762 #define blitter_code_0x37c026a4
\r
8763 void blitter_0x37c026a4(void)
\r
8765 while (outer_loop--)
\r
8767 inner_loop=n_pixels;
\r
8768 while (inner_loop--)
\r
8770 uint32 srcdata = 0;
\r
8771 uint32 srczdata = 0;
\r
8772 uint32 dstdata = 0;
\r
8773 uint32 dstzdata = 0;
\r
8774 uint32 writedata = 0;
\r
8775 uint32 inhibit = 0;
\r
8776 srcdata = READ_PIXEL_16(a2);
\r
8777 srczdata = READ_RDATA_16(SRCZINT, a2, a2_phrase_mode);
\r
8778 dstdata = READ_PIXEL_16(a1);
\r
8779 dstzdata = READ_ZDATA_16(a1);
\r
8780 srczdata=z_i[colour_index]>>16;
\r
8781 if (srczdata > dstzdata) inhibit = 1;
\r
8784 writedata |= srcdata & ~dstdata;
\r
8785 writedata |= srcdata & dstdata;
\r
8786 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8787 WRITE_PIXEL_16(a1, writedata);
\r
8788 WRITE_ZDATA_16(a1, srczdata);
\r
8791 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8792 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8793 z_i[colour_index]+=zadd;
\r
8794 colour_index=(colour_index+1)&0x3;
\r
8801 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8802 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8803 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8806 #ifndef blitter_code_0x3c01001b
\r
8807 #define blitter_code_0x3c01001b
\r
8808 void blitter_0x3c01001b(void)
\r
8810 while (outer_loop--)
\r
8812 inner_loop=n_pixels;
\r
8813 while (inner_loop--)
\r
8815 uint32 srcdata = 0;
\r
8816 uint32 srczdata = 0;
\r
8817 uint32 dstdata = 0;
\r
8818 uint32 dstzdata = 0;
\r
8819 uint32 writedata = 0;
\r
8820 uint32 inhibit = 0;
\r
8821 srcdata = READ_RDATA_8(SRCDATA, a2, a2_phrase_mode);
\r
8822 srczdata = READ_RDATA_8(SRCZINT, a2, a2_phrase_mode);
\r
8823 dstdata = READ_RDATA_8(DSTDATA, a1, a1_phrase_mode);
\r
8824 if (a1_x < 0 || a1_y < 0 || (a1_x >> 16) >= (REG(A1_CLIP) & 0x7fff) || (a1_y >> 16) >= ((REG(A1_CLIP) >> 16) & 0x7fff)) inhibit = 1;
\r
8827 writedata= READ_RDATA_8(PATTERNDATA, a1, a1_phrase_mode);
\r
8828 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8829 WRITE_PIXEL_8(a1, writedata);
\r
8832 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8833 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8840 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8841 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8842 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8845 #ifndef blitter_code_0x2401006b
\r
8846 #define blitter_code_0x2401006b
\r
8847 void blitter_0x2401006b(void)
\r
8849 while (outer_loop--)
\r
8851 inner_loop=n_pixels;
\r
8852 while (inner_loop--)
\r
8854 uint32 srcdata = 0;
\r
8855 uint32 srczdata = 0;
\r
8856 uint32 dstdata = 0;
\r
8857 uint32 dstzdata = 0;
\r
8858 uint32 writedata = 0;
\r
8859 uint32 inhibit = 0;
\r
8860 srcdata = READ_RDATA_32(SRCDATA, a1, a1_phrase_mode);
\r
8861 srczdata = READ_RDATA_32(SRCZINT, a1, a1_phrase_mode);
\r
8862 dstdata = READ_RDATA_32(DSTDATA, a2, a2_phrase_mode);
\r
8865 writedata= READ_RDATA_32(PATTERNDATA, a2, a2_phrase_mode);
\r
8866 } else { srczdata=dstzdata; writedata=dstdata; }
\r
8867 WRITE_PIXEL_32(a2, writedata);
\r
8870 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8871 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8878 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8879 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8880 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r
8883 #ifndef blitter_code_0x30000024
\r
8884 #define blitter_code_0x30000024
\r
8885 void blitter_0x30000024(void)
\r
8887 while (outer_loop--)
\r
8889 inner_loop=n_pixels;
\r
8890 while (inner_loop--)
\r
8892 uint32 srcdata = 0;
\r
8893 uint32 srczdata = 0;
\r
8894 uint32 dstdata = 0;
\r
8895 uint32 dstzdata = 0;
\r
8896 uint32 writedata = 0;
\r
8897 uint32 inhibit = 0;
\r
8898 srcdata = READ_RDATA_16(SRCDATA, a2, a2_phrase_mode);
\r
8899 dstdata = READ_RDATA_16(DSTDATA, a1, a1_phrase_mode);
\r
8900 WRITE_PIXEL_16(a1, writedata);
\r
8903 a2_x = (a2_x + a2_xadd) & a2_mask_x;
\r
8904 a2_y = (a2_y + a2_yadd) & a2_mask_y;
\r
8911 WREG(A1_PIXEL, (a1_y & 0xffff0000) | ((a1_x >> 16) & 0xffff));
\r
8912 WREG(A1_FPIXEL, (a1_y << 16) | (a1_x & 0xffff));
\r
8913 WREG(A2_PIXEL, (a2_y & 0xffff0000) | ((a2_x >> 16) & 0xffff));
\r