|
|
1.1 root 1: #include <jerq.h>
2: #include "layer.h"
3:
4: lpoint(l, pt, f)
5: register Layer *l;
6: Point pt;
7: Code f;
8: {
9: register bit;
10: register Word *p;
11: register Obscured *o;
12: register Bitmap *b;
13: b=(Bitmap *)l;
14: if(ptinrect(pt, l->rect)){
15: if (l->someobs == l->nonevis)
16: b = (l->nonevis?l->obs:(Bitmap *)l);
17: else
18: for(o=lfront; o; o=o->back)
19: if(ptinrect(pt, o->rect)){
20: b=((o!=l)?l->obs:(Bitmap *)l);
21: break;
22: }
23: p=addr(b, pt);
24: bit=1<<(WORDSIZE-1)-(pt.x&WORDMASK);
25: if (f == F_XOR)
26: *p ^= bit;
27: else
28: if (f == F_CLR)
29: *p &= ~bit;
30: else
31: *p |= bit;
32: }
33: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.