|
|
1.1 ! root 1: /* generate test image for calibrating Matrix and 691 film */ ! 2: #include <fio.h> ! 3: ! 4: #define t(i) (char)(i) ! 5: #define RED 0 ! 6: #define GREEN 1 ! 7: #define BLUE 2 ! 8: char pict[512][512][3]; ! 9: ! 10: main() ! 11: { ! 12: char *picstop, *q; ! 13: int i, j, k; ! 14: ! 15: /* clear pict */ ! 16: q = &pict[0][0][0]; ! 17: picstop = q + sizeof(pict); ! 18: while(q<picstop) *q++ = 0; ! 19: ! 20: i=0;j=0;k=0; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 21: i=1;j=0;k=63; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 22: i=2;j=0;k=80; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 23: i=3;j=0;k=120; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 24: i=0;j=1;k=150; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 25: i=1;j=1;k=180; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 26: i=2;j=1;k=215; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 27: i=3;j=1;k=235; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 28: i=0;j=2;k=255; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 29: i=1;j=2; fill(&pict[56+100*j][56+100*i][0],t(255),t(0),t(0)); ! 30: i=2;j=2; fill(&pict[56+100*j][56+100*i][0],t(0),t(255),t(0)); ! 31: i=3;j=2; fill(&pict[56+100*j][56+100*i][0],t(0),t(0),t(255)); ! 32: i=0;j=3;k=255; fill(&pict[56+100*j][56+100*i][0],t(k),t(k),t(k)); ! 33: i=1;j=3; fill(&pict[56+100*j][56+100*i][0],t(255),t(0),t(255)); ! 34: i=2;j=3; fill(&pict[56+100*j][56+100*i][0],t(255),t(255),t(0)); ! 35: i=3;j=3; fill(&pict[56+100*j][56+100*i][0],t(0),t(255),t(255)); ! 36: ! 37: Fprint(1,"TYPE=dump\n"); ! 38: Fprint(1,"WINDOW=0 0 512 512\n"); ! 39: Fprint(1,"NCHAN=3\n"); ! 40: Fprint(1,"CHAN=rgb\n"); ! 41: Fprint(1,"\n"); ! 42: Fflush(1); ! 43: write(1,pict,sizeof(pict)); ! 44: exit(0); ! 45: } ! 46: ! 47: fill(q,r,g,b) ! 48: char *q, r, g, b; ! 49: { ! 50: int i, j; ! 51: for(i=0;i<100;i++){ ! 52: for(j=0;j<100;j++){ ! 53: *q++ = r; ! 54: *q++ = g; ! 55: *q++ = b; ! 56: } ! 57: q += 3*(512-100); ! 58: } ! 59: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.