| | video game type thing...
|
|
I'm building a video game type thing. It has three touch sensors, for left, right, and fire. The LCD controls where the enemy is. I'm having some problems with my code, so here it is(I'm using kernel 0.2.4): #include "conio.h" #include "dmotor.h" (...) (24 years ago, 12-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
(...) I think you mean if (enemy == 1). Also, the identifier "fight" resolves to the address of the fight function. Doing "fight;" is equivalent to doing "1;". It's legal, but it doesn't accomplish anything. You want to do "fight();" and (...) (24 years ago, 12-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
Thanks for the response! Now I'm almost ready to test it. I just need to know if, when you have a call void function, and you then use the int main() to close the program with return 0;, will the void keep running? Thanks Nick Howell (...) (24 years ago, 12-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
Thanks for the response! Now I'm almost ready to test it. I just need to know if, when you have a call void function, and you then use the int main() to close the program with return 0;, will the void keep running? Here's my current copy, without (...) (24 years ago, 12-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
(...) No, it will not. Functions don't work like that, in general. If you want to call a function and have it run independently of the calling function, you must use execi() to start it. (24 years ago, 12-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
I worked on that. I'm having trouble with "execi()" and some stuff related to it. Here's the offending area, but not the entire program: int main(int argc, char **argv) { pid1=execi(&startup, 0, NULL, 1, DEFAULT_STACK_SIZE); MYexit = -1; cputs("x"); (...) (24 years ago, 13-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
It probably should. But why does it say that "pid1" is undeclared? Shouldn't that be taken care of in tm.h or unistd.h? (24 years ago, 13-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
Or pid_t pid1 = execi... Philippe (...) (24 years ago, 13-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
I just got new batteries for my RCX, so I just did an actual test. I didn't get very far. I don't believe that it is registering the touch sensors. Here's how I had it: if(TOUCH_2 == 1) { do this and that and that; } What's wrong with it? I should (...) (24 years ago, 13-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
(...) <-- Cut -- > (...) Shouldn't thist say kill(pid1); ? - ciaran (24 years ago, 13-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
(...) Shouldn't (...) No, the returned process id is an integer (int) I believe, you just replace it with int pid1 = execi .... for example :) - Ciaran (24 years ago, 13-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
Nick, The TOUCH_x macros are boolean - they return true or false. You should be testing if (TOUCH_2) {....} HTH ROSCO (...) (24 years ago, 15-Mar-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: video game type thing...
|
|
I'll try that. I thought it was something or other like this. I'll post when I'm at least partially successful. (24 years ago, 15-Mar-01, to lugnet.robotics.rcx.legos)
|