int main(int argn, char** argv){ char user[10]; if(argn != 2){ printf("Usage: %s \"YOUR NAME\"\n",argv[0]); return 1; } strcpy(user,argv[1]); if((!strcmp("user",user))&&(strlen(user)>8)) winner(); else looser(); return 0; }
void main(void) { uint8_t genx = 0; uint8_t geny = 0; int8_t posx = 0; int8_t posy = 0; uint8_t bumpx[ANZ + 1]; uint8_t bumpy[ANZ + 1]; uint8_t i = 0; uint8_t mscount = 0; int8_t randx = 0; int8_t randy = 0; //char *schtring = "hello world"; PDR00 = 0xff; DDR00 = 0xff; // Set Port00 as output (right 7Segment display) PDR09 = 0xff; DDR09 = 0xff; // Set Port09 as output (left 7Segment display) PDR09 = DEC7SEG[1]; PDR00 = DEC7SEG[1]; lcd_init(); adc_init(); lcd_clear(0); random_init(); for(i = 0; i < ANZ + 1; i++) { do { genx = (random() % (128 / bumpsize)) * bumpsize; geny = (random() % (64 / bumpsize)) * bumpsize; } while((genx == 0 && geny == 0) || bumpcollision(bumpx, bumpy, i, genx, geny)); bumpx[i] = genx; bumpy[i] = geny; } for(;;) { for(i = 0; i < ANZ; i++) { lcd_drawRect(bumpx[i], bumpy[i], bumpsize, bumpsize, 1, 1); } lcd_drawRect(bumpx[ANZ], bumpy[ANZ], size + 2, size + 2, 0, 1); lcd_drawRect(posx, posy, size, size, 0, 1); posx = minmax((int) (((float) -(adc_getValue(1) - 255) / (float) 255) * (128 - size)) + randx, 128); posy = minmax((int) (((float) -(adc_getValue(2) - 255) / (float) 255) * (64 - size)) + randy, 64); lcd_drawRect(posx, posy, size, size, 1, 1); if(checkCollision(posx, posy) == 1) looser(); if(posx == bumpx[ANZ] + 1 && posy == bumpy[ANZ] + 1) winner(); lcd_drawRect(bumpx[ANZ], bumpy[ANZ], size + 2, size + 2, 1, 1); lcd_drawRect(bumpx[ANZ] + 1, bumpy[ANZ] + 1, size, size, 0, 1); mscount++; if(mscount == 50) { mscount = 0; if(random() % 2) { randx = minmax(randx + posorneg(), 5 + size); } else { randy = minmax(randy + posorneg(), 5 + size); } } delay_ms(10); } }