Changeset 27463 in vbox for trunk/src/VBox/Devices/Input
- Timestamp:
- Mar 17, 2010 9:28:37 PM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 58950
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Input/DevPS2.cpp
r27188 r27463 685 685 : RT_MIN(s->mouse_dy, 255); 686 686 unsigned int b; 687 unsigned fButtonsPacked; 688 unsigned fButtonsLow = s->mouse_buttons & 0x03; 687 unsigned fButtonsLow = s->mouse_buttons & 0x07; 689 688 s->mouse_dx -= dx1; 690 689 s->mouse_dy -= dy1; 691 kbd_mouse_set_reported_buttons(s, fButtonsLow, 0x03); 692 fButtonsPacked = (s->mouse_buttons & 0x04 ? 0x04 : 0); 693 kbd_mouse_set_reported_buttons(s, s->mouse_buttons, 0x04); 694 LogRel3(("%s: dx1=%d, dy1=%d, fButtonsLow=0x%x, fButtonsPacked=0x%x\n", 695 __PRETTY_FUNCTION__, dx1, dy1, fButtonsLow, fButtonsPacked)); 696 b = 0x08 | ((dx1 < 0) << 4) | ((dy1 < 0) << 5) | fButtonsLow 697 | (fButtonsPacked & 4) | ((fButtonsPacked & 3) << 6); 690 kbd_mouse_set_reported_buttons(s, fButtonsLow, 0x07); 691 LogRel3(("%s: dx1=%d, dy1=%d, fButtonsLow=0x%x\n", 692 __PRETTY_FUNCTION__, dx1, dy1, fButtonsLow)); 693 b = 0x08 | ((dx1 < 0 ? 1 : 0) << 4) | ((dy1 < 0 ? 1 : 0) << 5) 694 | fButtonsLow; 698 695 kbd_queue(s, b, aux); 699 696 kbd_queue(s, dx1 & 0xff, aux); … … 707 704 int dz1 = s->mouse_dz < 0 ? RT_MAX(s->mouse_dz, -127) 708 705 : RT_MIN(s->mouse_dz, 127); 706 LogRel3(("%s: dz1=%d\n", __PRETTY_FUNCTION__, dz1)); 709 707 s->mouse_dz -= dz1; 710 708 kbd_queue(s, dz1 & 0xff, aux); … … 719 717 int dw1 = s->mouse_dw < 0 ? RT_MAX(s->mouse_dw, -31) 720 718 : RT_MIN(s->mouse_dw, 32); 719 LogRel3(("%s: dw1=%d\n", __PRETTY_FUNCTION__, dw1)); 721 720 s->mouse_dw -= dw1; 722 721 kbd_queue(s, 0x40 | (dw1 & 0x3f), aux); … … 726 725 int dz1 = s->mouse_dz < 0 ? RT_MAX(s->mouse_dz, -31) 727 726 : RT_MIN(s->mouse_dz, 32); 727 LogRel3(("%s: dz1=%d\n", __PRETTY_FUNCTION__, dz1)); 728 728 s->mouse_dz -= dz1; 729 729 kbd_queue(s, 0x80 | (dz1 & 0x3f), aux); … … 733 733 int dz1 = s->mouse_dz < 0 ? RT_MAX(s->mouse_dz, -7) 734 734 : RT_MIN(s->mouse_dz, 8); 735 unsigned fButtonsHigh = s->mouse_buttons & 0x18; 736 LogRel3(("%s: dz1=%d fButtonsHigh=0x%x\n", 737 __PRETTY_FUNCTION__, dz1, fButtonsHigh)); 735 738 s->mouse_dz -= dz1; 736 kbd_mouse_set_reported_buttons(s, s->mouse_buttons, 0x18);737 kbd_queue(s, (dz1 & 0x0f) | ( (s->mouse_buttons & 0x18)<< 1), aux);739 kbd_mouse_set_reported_buttons(s, fButtonsHigh, 0x18); 740 kbd_queue(s, (dz1 & 0x0f) | (fButtonsHigh << 1), aux); 738 741 } 739 742 } … … 785 788 s->mouse_dx += dx; 786 789 s->mouse_dy -= dy; 787 s->mouse_dz += dz; 790 if ( (s->mouse_type == MOUSE_PROT_IMPS2) 791 || (s->mouse_type == MOUSE_PROT_IMEX)) 792 s->mouse_dz += dz; 788 793 if ( ( (s->mouse_type == MOUSE_PROT_IMEX) 789 794 && s->mouse_flags & MOUSE_REPORT_HORIZONTAL)) … … 986 991 if (val == 40) 987 992 { 988 Log FlowFunc(("enabling IMEX horizontal scrolling reporting\n"));993 LogRelFlowFunc(("enabling IMEX horizontal scrolling reporting\n")); 989 994 s->mouse_flags |= MOUSE_REPORT_HORIZONTAL; 990 995 }
Note:
See TracChangeset
for help on using the changeset viewer.