5 extern bool keyboardfrozen;
6 extern bool buttons[3];
7 /********************> IsKeyDown() <*****/
8 Boolean IsKeyDown( unsigned char *keyMap, unsigned short theKey )
10 if(keyboardfrozen)return 0;
11 if(theKey< 0x80 /*1000*/){
12 static long keyMapIndex;
13 static Boolean isKeyDown;
14 static short bitToCheck;
16 // Calculate the key map index
17 keyMapIndex = keyMap[theKey/8];
19 // Calculate the individual bit to check
20 bitToCheck = theKey%8;
22 // Check the status of the key
23 isKeyDown = ( keyMapIndex >> bitToCheck ) & 0x01;
25 // Return the status of the key
28 else if(theKey==MAC_MOUSEBUTTON1)
30 else if(theKey==MAC_MOUSEBUTTON2)
36 unsigned short CharToKey(char* which)
39 if(!stricmp(which,"a")){
42 if(!stricmp(which,"b")){
45 if(!stricmp(which,"c")){
48 if(!stricmp(which,"d")){
51 if(!stricmp(which,"e")){
54 if(!stricmp(which,"f")){
57 if(!stricmp(which,"g")){
60 if(!stricmp(which,"h")){
63 if(!stricmp(which,"i")){
66 if(!stricmp(which,"j")){
69 if(!stricmp(which,"k")){
72 if(!stricmp(which,"l")){
75 if(!stricmp(which,"m")){
78 if(!stricmp(which,"n")){
81 if(!stricmp(which,"o")){
84 if(!stricmp(which,"p")){
87 if(!stricmp(which,"q")){
90 if(!stricmp(which,"r")){
93 if(!stricmp(which,"s")){
96 if(!stricmp(which,"t")){
99 if(!stricmp(which,"u")){
102 if(!stricmp(which,"v")){
105 if(!stricmp(which,"w")){
108 if(!stricmp(which,"x")){
111 if(!stricmp(which,"y")){
114 if(!stricmp(which,"z")){
119 if(!stricmp(which,"KP0")){
120 return MAC_NUMPAD_0_KEY;
122 if(!stricmp(which,"KP1")){
123 return MAC_NUMPAD_1_KEY;
125 if(!stricmp(which,"KP2")){
126 return MAC_NUMPAD_2_KEY;
128 if(!stricmp(which,"KP3")){
129 return MAC_NUMPAD_3_KEY;
131 if(!stricmp(which,"KP4")){
132 return MAC_NUMPAD_4_KEY;
134 if(!stricmp(which,"KP5")){
135 return MAC_NUMPAD_5_KEY;
137 if(!stricmp(which,"KP6")){
138 return MAC_NUMPAD_6_KEY;
140 if(!stricmp(which,"KP7")){
141 return MAC_NUMPAD_7_KEY;
143 if(!stricmp(which,"KP8")){
144 return MAC_NUMPAD_8_KEY;
146 if(!stricmp(which,"KP9")){
147 return MAC_NUMPAD_9_KEY;
151 if(!stricmp(which,"enter")){
152 return MAC_ENTER_KEY;
156 if(!stricmp(which,"0")){
159 if(!stricmp(which,"1")){
162 if(!stricmp(which,"2")){
165 if(!stricmp(which,"3")){
168 if(!stricmp(which,"4")){
171 if(!stricmp(which,"5")){
174 if(!stricmp(which,"6")){
177 if(!stricmp(which,"7")){
180 if(!stricmp(which,"8")){
183 if(!stricmp(which,"9")){
188 if(!stricmp(which,"F1")){
191 if(!stricmp(which,"F2")){
194 if(!stricmp(which,"F3")){
197 if(!stricmp(which,"F4")){
200 if(!stricmp(which,"F5")){
203 if(!stricmp(which,"F6")){
206 if(!stricmp(which,"F7")){
209 if(!stricmp(which,"F8")){
212 if(!stricmp(which,"F9")){
215 if(!stricmp(which,"F10")){
218 if(!stricmp(which,"F11")){
221 if(!stricmp(which,"F12")){
226 if(!stricmp(which,"escape")){
227 return MAC_ESCAPE_KEY;
229 if(!stricmp(which,"backspace")){
230 return MAC_DELETE_KEY;
232 if(!stricmp(which,"tab")){
235 if(!stricmp(which,"`")){
236 return MAC_TILDE_KEY;
238 if(!stricmp(which,"caps_lock")){
239 return MAC_CAPS_LOCK_KEY;
244 if(!stricmp(which,"command")){
245 return MAC_COMMAND_KEY;
247 if(!stricmp(which,"option")){
248 return MAC_OPTION_KEY;
250 if(!stricmp(which,"delete")){
253 if(!stricmp(which,"insert")){
254 return MAC_INSERT_KEY;
256 if(!stricmp(which,"home")){
259 if(!stricmp(which,"end")){
262 if(!stricmp(which,"page_up")){
263 return MAC_PAGE_UP_KEY;
265 if(!stricmp(which,"page_down")){
266 return MAC_PAGE_DOWN_KEY;
268 if(!stricmp(which,"clear")){
269 return MAC_NUMPAD_CLEAR_KEY;
272 if(!stricmp(which,"control")){
273 return MAC_CONTROL_KEY;
275 if(!stricmp(which,"return")){
276 return MAC_RETURN_KEY;
278 if(!stricmp(which,"space")){
279 return MAC_SPACE_KEY;
281 if(!stricmp(which,"shift")){
282 return MAC_SHIFT_KEY;
284 if(!stricmp(which,"uparrow")){
285 return MAC_ARROW_UP_KEY;
287 if(!stricmp(which,"downarrow")){
288 return MAC_ARROW_DOWN_KEY;
290 if(!stricmp(which,"leftarrow")){
291 return MAC_ARROW_LEFT_KEY;
293 if(!stricmp(which,"rightarrow")){
294 return MAC_ARROW_RIGHT_KEY;
296 if(!stricmp(which,"mouse1")){
297 return MAC_MOUSEBUTTON1;
299 if(!stricmp(which,"mouse2")){
300 return MAC_MOUSEBUTTON2;
302 if(!stricmp(which,"+")){
303 return MAC_NUMPAD_PLUS_KEY;
305 if(!stricmp(which,"*")){
306 return MAC_NUMPAD_ASTERISK_KEY;
308 if(!stricmp(which,"/")){
309 return MAC_SLASH_KEY;
311 if(!stricmp(which,"\\")){
312 return MAC_BACKSLASH_KEY;
314 if(!stricmp(which,"[")){
315 return MAC_LEFTBRACKET_KEY;
317 if(!stricmp(which,"]")){
318 return MAC_RIGHTBRACKET_KEY;
320 if(!stricmp(which,".")){
321 return MAC_PERIOD_KEY;
323 if(!stricmp(which,",")){
324 return MAC_COMMA_KEY;
326 if(!stricmp(which,"\"")){
327 return MAC_APOSTROPHE_KEY;
329 if(!stricmp(which,";")){
330 return MAC_SEMICOLON_KEY;
335 char* KeyToChar(unsigned short which)
340 if(which==MAC_A_KEY){
343 if(which==MAC_B_KEY){
346 if(which==MAC_C_KEY){
349 if(which==MAC_D_KEY){
352 if(which==MAC_E_KEY){
355 if(which==MAC_F_KEY){
358 if(which==MAC_G_KEY){
361 if(which==MAC_H_KEY){
364 if(which==MAC_I_KEY){
367 if(which==MAC_J_KEY){
370 if(which==MAC_K_KEY){
373 if(which==MAC_L_KEY){
376 if(which==MAC_M_KEY){
379 if(which==MAC_N_KEY){
382 if(which==MAC_O_KEY){
385 if(which==MAC_P_KEY){
388 if(which==MAC_Q_KEY){
391 if(which==MAC_R_KEY){
394 if(which==MAC_S_KEY){
397 if(which==MAC_T_KEY){
400 if(which==MAC_U_KEY){
403 if(which==MAC_V_KEY){
406 if(which==MAC_W_KEY){
409 if(which==MAC_X_KEY){
412 if(which==MAC_Y_KEY){
415 if(which==MAC_Z_KEY){
420 if(which==MAC_NUMPAD_1_KEY){
423 if(which==MAC_NUMPAD_2_KEY){
426 if(which==MAC_NUMPAD_3_KEY){
429 if(which==MAC_NUMPAD_4_KEY){
432 if(which==MAC_NUMPAD_5_KEY){
435 if(which==MAC_NUMPAD_6_KEY){
438 if(which==MAC_NUMPAD_7_KEY){
441 if(which==MAC_NUMPAD_8_KEY){
444 if(which==MAC_NUMPAD_9_KEY){
447 if(which==MAC_NUMPAD_0_KEY){
452 if(which==MAC_ENTER_KEY){
457 if(which==MAC_1_KEY){
460 if(which==MAC_2_KEY){
463 if(which==MAC_3_KEY){
466 if(which==MAC_4_KEY){
469 if(which==MAC_5_KEY){
472 if(which==MAC_6_KEY){
475 if(which==MAC_7_KEY){
478 if(which==MAC_8_KEY){
481 if(which==MAC_9_KEY){
484 if(which==MAC_0_KEY){
489 if(which==MAC_F1_KEY){
492 if(which==MAC_F2_KEY){
495 if(which==MAC_F3_KEY){
498 if(which==MAC_F4_KEY){
501 if(which==MAC_F5_KEY){
504 if(which==MAC_F6_KEY){
507 if(which==MAC_F7_KEY){
510 if(which==MAC_F8_KEY){
513 if(which==MAC_F9_KEY){
516 if(which==MAC_F10_KEY){
519 if(which==MAC_F11_KEY){
522 if(which==MAC_F12_KEY){
527 if(which==MAC_ESCAPE_KEY){
530 if(which==MAC_DELETE_KEY){
533 if(which==MAC_TAB_KEY){
536 if(which==MAC_TILDE_KEY){
539 if(which==MAC_CAPS_LOCK_KEY){
542 if(which==MAC_COMMAND_KEY){
545 if(which==MAC_OPTION_KEY){
548 if(which==MAC_DEL_KEY){
551 if(which==MAC_INSERT_KEY){
554 if(which==MAC_HOME_KEY){
557 if(which==MAC_END_KEY){
560 if(which==MAC_PAGE_UP_KEY){
563 if(which==MAC_PAGE_DOWN_KEY){
566 if(which==MAC_NUMPAD_CLEAR_KEY){
569 if(which==MAC_CONTROL_KEY){
572 if(which==MAC_SPACE_KEY){
575 if(which==MAC_RETURN_KEY){
578 if(which==MAC_SHIFT_KEY){
581 if(which==MAC_ARROW_UP_KEY){
584 if(which==MAC_ARROW_DOWN_KEY){
587 if(which==MAC_ARROW_LEFT_KEY){
590 if(which==MAC_ARROW_RIGHT_KEY){
593 if(which==MAC_MOUSEBUTTON1){
596 if(which==MAC_MOUSEBUTTON2){
599 if(which==MAC_ARROW_RIGHT_KEY){
602 if(which==MAC_MINUS_KEY||which==MAC_NUMPAD_MINUS_KEY){
605 if(which==MAC_PLUS_KEY||which==MAC_NUMPAD_EQUALS_KEY){
608 if(which==MAC_NUMPAD_PLUS_KEY){
611 if(which==MAC_NUMPAD_ASTERISK_KEY){
614 if(which==MAC_SLASH_KEY||which==MAC_NUMPAD_SLASH_KEY){
617 if(which==MAC_BACKSLASH_KEY){
620 if(which==MAC_LEFTBRACKET_KEY){
623 if(which==MAC_RIGHTBRACKET_KEY){
626 if(which==MAC_PERIOD_KEY||which==MAC_NUMPAD_PERIOD_KEY){
629 if(which==MAC_COMMA_KEY){
632 if(which==MAC_APOSTROPHE_KEY){
635 if(which==MAC_SEMICOLON_KEY){
641 char KeyToSingleChar(unsigned short which)
645 if(which==MAC_A_KEY){
648 if(which==MAC_B_KEY){
651 if(which==MAC_C_KEY){
654 if(which==MAC_D_KEY){
657 if(which==MAC_E_KEY){
660 if(which==MAC_F_KEY){
663 if(which==MAC_G_KEY){
666 if(which==MAC_H_KEY){
669 if(which==MAC_I_KEY){
672 if(which==MAC_J_KEY){
675 if(which==MAC_K_KEY){
678 if(which==MAC_L_KEY){
681 if(which==MAC_M_KEY){
684 if(which==MAC_N_KEY){
687 if(which==MAC_O_KEY){
690 if(which==MAC_P_KEY){
693 if(which==MAC_Q_KEY){
696 if(which==MAC_R_KEY){
699 if(which==MAC_S_KEY){
702 if(which==MAC_T_KEY){
705 if(which==MAC_U_KEY){
708 if(which==MAC_V_KEY){
711 if(which==MAC_W_KEY){
714 if(which==MAC_X_KEY){
717 if(which==MAC_Y_KEY){
720 if(which==MAC_Z_KEY){
723 if(which==MAC_NUMPAD_1_KEY){
726 if(which==MAC_NUMPAD_2_KEY){
729 if(which==MAC_NUMPAD_3_KEY){
732 if(which==MAC_NUMPAD_4_KEY){
735 if(which==MAC_NUMPAD_5_KEY){
738 if(which==MAC_NUMPAD_6_KEY){
741 if(which==MAC_NUMPAD_7_KEY){
744 if(which==MAC_NUMPAD_8_KEY){
747 if(which==MAC_NUMPAD_9_KEY){
750 if(which==MAC_NUMPAD_0_KEY){
753 if(which==MAC_1_KEY){
756 if(which==MAC_2_KEY){
759 if(which==MAC_3_KEY){
762 if(which==MAC_4_KEY){
765 if(which==MAC_5_KEY){
768 if(which==MAC_6_KEY){
771 if(which==MAC_7_KEY){
774 if(which==MAC_8_KEY){
777 if(which==MAC_9_KEY){
780 if(which==MAC_0_KEY){
783 if(which==MAC_SPACE_KEY){
786 if(which==MAC_MINUS_KEY||which==MAC_NUMPAD_MINUS_KEY){
789 if(which==MAC_PLUS_KEY||which==MAC_NUMPAD_EQUALS_KEY){
792 if(which==MAC_NUMPAD_PLUS_KEY){
795 if(which==MAC_NUMPAD_ASTERISK_KEY){
798 if(which==MAC_SLASH_KEY||which==MAC_NUMPAD_SLASH_KEY){
801 if(which==MAC_BACKSLASH_KEY){
804 if(which==MAC_LEFTBRACKET_KEY){
807 if(which==MAC_RIGHTBRACKET_KEY){
810 if(which==MAC_PERIOD_KEY||which==MAC_NUMPAD_PERIOD_KEY){
813 if(which==MAC_COMMA_KEY){
816 if(which==MAC_APOSTROPHE_KEY){
819 if(which==MAC_SEMICOLON_KEY){
825 char Shift(char which)
982 bool Compare(char *thestring, char *tocompare, int start, int end)
985 for(i=start;i<=end;i++){
986 if(thestring[i]!=tocompare[i-start]&&thestring[i]!=tocompare[i-start]+'A'-'a')return 0;