replaced by maths.h
[btb/d2x.git] / unused / bios / testms.c
1 /*
2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
11 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
12 */
13
14 #include <stdio.h>
15 #include <conio.h>
16
17 #include "mouse.h"
18 #include "key.h"
19
20 short i_dx, i_dy, i_b, i_f, i_happend;
21
22 void John( mouse_event * evt )
23 {
24         i_dx = evt->dx;
25         i_dy = evt->dy;
26         i_b = evt->buttons;
27         i_f = evt->flags;
28         i_happend = 1;
29 }
30
31 void main (void)
32 {
33         short x, y, dx, dy, i, b;
34
35         printf( "This tests the mouse interface. ESC exits.\n" );
36
37         if (!mouse_init())  {
38                 printf( "No mouse installed.\n" );
39                 exit(1);
40         }
41
42         key_init();
43
44         mouse_set_handler( ME_LEFT_DOWN | ME_MOVEMENT | ME_RIGHT_DOWN, John );
45
46         while( !keyd_pressed[KEY_ESC])
47         {
48
49                 if (i_happend)
50                 {
51                         i_happend = 0;
52                         printf( "INT: POS:(%d,%d)\tBTN:%d\tFLG:%d\n", i_dx, i_dy, i_b, i_f );
53                 }
54         }
55
56         mouse_clear_handler();
57
58         delay(500);
59
60         while( !keyd_pressed[KEY_ESC])
61         {
62
63                 if (i_happend)
64                 {
65                         printf( "ERROR: INT SHouLD NOT HAVe HAPND !!\n" );
66                         break;
67                 }
68                 mouse_get_pos( &x, &y );
69                 mouse_get_delta( &dx, &dy );
70                 b = mouse_get_btns();
71                 printf( "POS:(%d,%d)\tDELTA:(%d,%d)\tBUTTONS:%d\n", x, y, dx, dy, b );
72         }
73
74
75         mouse_close();
76         key_close();
77 }