/demos/trunk/astro/rock.c |
---|
17,10 → 17,13 |
int kill_rock; |
rock_pos rocks[ROCK_NMAX]; |
void draw_rock(int x, int y, int r, int c) |
void draw_rock(int x, int y, int r, int c, int m) |
{ |
sem_wait(&mx_grf); |
grx_disc(x, y, r, c); |
if (m==0) |
grx_disc(x, y, r, c); |
else |
grx_circle(x, y, r, c); |
sem_post(&mx_grf); |
} |
119,7 → 122,7 |
r = rocks[i].r; |
sem_post(&mx_rk); |
draw_rock(ox, oy, r, RGB_BLACK); |
draw_rock(ox, oy, r, RGB_BLACK, 0); |
if ((kill_rock) || (crash)){ |
nrock--; |
186,7 → 189,7 |
return 0; |
} |
#endif |
draw_rock(ox, oy, r, RGB_YELLOW); |
draw_rock(ox, oy, r, RGB_YELLOW, 1); |
ty += dt; |
tx += dt; |
/demos/trunk/astro/asteroid.h |
---|
129,7 → 129,7 |
} rock_ini; |
double dist_xy(int x1, int y1, int x2, int y2); |
void draw_rock(int x, int y, int r, int c); |
void draw_rock(int x, int y, int r, int c, int m); |
void rock_create(rock_ini* ri); |
void frame_astro(); |
void frame_stat(); |
/demos/trunk/astro/initfile.c |
---|
36,7 → 36,7 |
/*+ Interrup Server */ |
#define INTDRIVE_Q 1000 |
#define INTDRIVE_T 10000 |
#define INTDRIVE_U 1000 |
#define INTDRIVE_FLAG 0 |
void call_shutdown_task(void *arg); |
51,7 → 51,7 |
{ |
struct multiboot_info *mb = (struct multiboot_info *)arg; |
INTDRIVE_register_level(INTDRIVE_Q,INTDRIVE_T,INTDRIVE_FLAG); |
INTDRIVE_register_level(INTDRIVE_Q, INTDRIVE_Q, INTDRIVE_U, INTDRIVE_FLAG); |
EDF_register_level(EDF_ENABLE_ALL); |
HCBS_register_level(HCBS_ENABLE_ALL, 1); |
RR_register_level(RRTICK, RR_MAIN_YES, mb); |
99,7 → 99,7 |
int res; |
KEYB_PARMS kparms = BASE_KEYB; |
LINUXC26_register_module(); |
LINUXC26_register_module(TRUE); |
PCI26_init(); |
/demos/trunk/astro/astro.c |
---|
81,7 → 81,7 |
sem_post(&mx_rk); |
if ((rp!=NIL) && (dist_xy(x, y, rx, ry) < (SHOT_RADIUS+rr))) { |
draw_rock(rx, ry, rr, RGB_BLACK); |
draw_rock(rx, ry, rr, RGB_BLACK, 0); |
if (rr == ROCK_RADIUS_I) { |
sem_wait(&mx_rk); |
rocks[i].r = ROCK_RADIUS_S; |
516,31 → 516,31 |
k.flag = 0; |
k.scan = KEY_SPC; |
k.ascii = ' '; |
k.status = KEY_PRESSED; |
k.status = KEY_PRESSED | KEY_REPEATED; |
keyb_hook(k,new_shot,FALSE); |
k.flag = 0; |
k.scan = KEY_O; |
k.ascii = 'o'; |
k.status = KEY_PRESSED; |
k.status = KEY_PRESSED | KEY_REPEATED; |
keyb_hook(k,pad,FALSE); |
k.flag = 0; |
k.scan = KEY_P; |
k.ascii = 'p'; |
k.status = KEY_PRESSED; |
k.status = KEY_PRESSED | KEY_REPEATED; |
keyb_hook(k,pad,FALSE); |
k.flag = 0; |
k.scan = KEY_S; |
k.ascii = 's'; |
k.status = KEY_PRESSED; |
k.status = KEY_PRESSED | KEY_REPEATED; |
keyb_hook(k,pad,FALSE); |
k.flag = 0; |
k.scan = KEY_Z; |
k.ascii = 'z'; |
k.status = KEY_PRESSED; |
k.status = KEY_PRESSED | KEY_REPEATED; |
keyb_hook(k,pad,FALSE); |
#ifdef ASTRO_MOVE |