static void GrPointsWrapper(void *r) { nxPointsReq *req = r; int count; count = GetReqVarLen(req) / sizeof(GR_POINT); GrPoints(req->drawid, req->gcid, count, (GR_POINT *)GetReqData(req)); }
void generator_nine( int x, int y ) { GR_POINT black[] = { {5+x,1+y}, {6+x,1+y}, {7+x,1+y}, {8+x,1+y}, {9+x,1+y}, {3+x,2+y}, {4+x,2+y}, {5+x,2+y}, {6+x,2+y}, {7+x,2+y}, {8+x,2+y}, {9+x,2+y}, {10+x,2+y}, {11+x,2+y}, {2+x,3+y}, {3+x,3+y}, {4+x,3+y}, {5+x,3+y}, {6+x,3+y}, {7+x,3+y}, {8+x,3+y}, {9+x,3+y}, {10+x,3+y}, {11+x,3+y}, {12+x,3+y}, {2+x,4+y}, {3+x,4+y}, {4+x,4+y}, {5+x,4+y}, {9+x,4+y}, {10+x,4+y}, {11+x,4+y}, {12+x,4+y}, {2+x,5+y}, {3+x,5+y}, {4+x,5+y}, {10+x,5+y}, {11+x,5+y}, {12+x,5+y}, {1+x,6+y}, {2+x,6+y}, {3+x,6+y}, {4+x,6+y}, {10+x,6+y}, {11+x,6+y}, {12+x,6+y}, {13+x,6+y}, {1+x,7+y}, {2+x,7+y}, {3+x,7+y}, {4+x,7+y}, {10+x,7+y}, {11+x,7+y}, {12+x,7+y}, {13+x,7+y}, {1+x,8+y}, {2+x,8+y}, {3+x,8+y}, {4+x,8+y}, {10+x,8+y}, {11+x,8+y}, {12+x,8+y}, {2+x,9+y}, {3+x,9+y}, {4+x,9+y}, {5+x,9+y}, {9+x,9+y}, {10+x,9+y}, {11+x,9+y}, {12+x,9+y}, {2+x,10+y}, {3+x,10+y}, {4+x,10+y}, {5+x,10+y}, {6+x,10+y}, {7+x,10+y}, {8+x,10+y}, {9+x,10+y}, {10+x,10+y}, {11+x,10+y}, {12+x,10+y}, {3+x,11+y}, {4+x,11+y}, {5+x,11+y}, {6+x,11+y}, {7+x,11+y}, {8+x,11+y}, {9+x,11+y}, {10+x,11+y}, {11+x,11+y}, {4+x,12+y}, {5+x,12+y}, {6+x,12+y}, {7+x,12+y}, {8+x,12+y}, {9+x,12+y}, {10+x,12+y}, {11+x,12+y}, {7+x,13+y}, {8+x,13+y}, {9+x,13+y}, {10+x,13+y}, {7+x,14+y}, {8+x,14+y}, {9+x,14+y}, {10+x,14+y}, {7+x,15+y}, {8+x,15+y}, {9+x,15+y}, {6+x,16+y}, {7+x,16+y}, {8+x,16+y}, {9+x,16+y}, {6+x,17+y}, {7+x,17+y}, {8+x,17+y}, {5+x,18+y}, {6+x,18+y}, {7+x,18+y}, {8+x,18+y}, {5+x,19+y}, {6+x,19+y}, {7+x,19+y}, {4+x,20+y}, {5+x,20+y}, {6+x,20+y}, {7+x,20+y}, {6+x,21+y} }; GR_POINT darkgrey[] = { {4+x,1+y}, {10+x,1+y}, {1+x,5+y}, {13+x,5+y}, {13+x,8+y}, {13+x,9+y}, {12+x,11+y}, {6+x,13+y}, {11+x,13+y}, {6+x,15+y}, {10+x,15+y}, {5+x,17+y}, {9+x,17+y}, {4+x,19+y}, {8+x,19+y}, {5+x,21+y}, {7+x,21+y} }; GR_POINT grey[] = { {5+x,0+y}, {6+x,0+y}, {7+x,0+y}, {8+x,0+y}, {9+x,0+y}, {3+x,1+y}, {2+x,2+y}, {12+x,2+y}, {1+x,4+y}, {6+x,4+y}, {7+x,4+y}, {8+x,4+y}, {13+x,4+y}, {5+x,5+y}, {9+x,5+y}, {5+x,8+y}, {9+x,8+y}, {1+x,9+y}, {6+x,9+y}, {2+x,11+y}, {3+x,12+y}, {5+x,13+y}, {4+x,21+y}, {6+x,22+y} }; GrSetGCForeground( generator_gc, BLACK ); GrPoints( generator_wid, generator_gc, 128, black ); GrSetGCForeground( generator_gc, GRAY ); GrPoints( generator_wid, generator_gc, 17, darkgrey ); GrSetGCForeground( generator_gc, LTGRAY ); GrPoints( generator_wid, generator_gc, 24, grey ); }
void saver4_exposure(nstate *state) { int i; s4state *s = state->priv; GrClearWindow(state->main_window, 0); if(!s->length) return; for(i = 0; i < SAVER4_NUMWORMS; i++) { GrSetGCForeground(state->main_gc, s->worms[i].colour); GrPoints(state->main_window, state->main_gc, s->length, s->worms[i].points); } }