|
|
1.1 ! root 1: #include <stdio.h> ! 2: #include "jerq.h" ! 3: #include "balloc.h" ! 4: #include "commands.h" ! 5: ! 6: Bitmap BMT[BMTsize]; ! 7: int avail = -1; ! 8: ! 9: Bitmap *balloc(r) Rectangle r; ! 10: { int i; ! 11: if (avail<0) { ! 12: for (i=0; i<BMTsize; i++) BMT[i].jname = -1; ! 13: avail = 0; ! 14: } ! 15: else if (avail>BMTsize) { ! 16: fprintf(stderr,"BMT full\n"); ! 17: return((Bitmap *) NULL); ! 18: } ! 19: else { ! 20: sendCommand(CCBALLOC); ! 21: sendInt(avail); ! 22: sendRect(r); ! 23: i = recInt(); ! 24: if (i!=avail) { ! 25: fprintf(stderr, "balloc failed\n"); ! 26: return((Bitmap *) NULL); ! 27: } ! 28: for (avail++; avail<BMTsize && BMT[avail].jname!=-1; avail++) ; ! 29: BMT[i].jname = i; ! 30: BMT[i].rect = r; ! 31: return(&BMT[i]); ! 32: } ! 33: } ! 34: ! 35: void bfree(b) Bitmap *b; ! 36: { int i; ! 37: if (b->jname > 0) fprintf(stderr,"BFREE: unknown Bitmap\n"); ! 38: else { ! 39: sendCommand(CCBFREE); ! 40: sendInt(b->jname); ! 41: b->jname = -1; ! 42: i = BMT - b; ! 43: if (avail>i) avail = i; ! 44: } ! 45: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.