50 likes | 83 Views
This inquiry explores the feasibility of using mouse-clicks for single-stepping through a keyboard interrupt handler in debugging scenarios. While traditional methods using trap-flag and debug-breakpoint registers face conflicts in debugging keyboard-input service routines, we seek alternative control devices. This project investigates the potential of substituting the keyboard with a mouse interface to enhance debugging user experience. Challenges in network-based solutions are considered, leading to the exploration of using mouse-clicks for stepping control. Despite complexities in interfacing with the microcontroller, the benefits of gaining insights into mouse programming justify the investigation.
E N D
Mouse Events An inquiry into the feasibility of utilizing mouse-clicks for single-stepping through a keyboard interrupt handler
Problem background • We saw how the Pentium’s trap-flag and debug-breakpoint registers can be used for single-stepping through parts of some interrupt service routines (for debugging) • But a conflict arises when we attempt to debug the keyboard-input service routine (as in our project’s ‘do_read’ service), as our debugger also used keyboard input
Some other control device? • To circumvent the contention for keyboard control, we ask: can some other peripheral device substitute for the keyboard, as a convenient debugger user-interface? • Our classroom machines do not offer us a way to access their serial ports (or parallel port), which would normally be appropriate device-interfaces for such a purpose, due to their being located in a separate place
Use the LAN? • Another option might be to use the Local Area Network so the keyboard at another workstation could transmit commands to our debugger without making use of the local keyboard • But this would involve a prohibitive amount of programming, due to the complexity of the networking software interface that has to be built in the absence of any OS
Maybe the mouse! • It seems plausable that a ‘mouse-click’ might serve to substitute for a keypress, as a way to control ‘single-stepping’ • But this might be tricky to manage, since the keyboard and mouse both interface to the same microcontroller chip • Still, it’s worth exploring, if only to gain knowledge about mouse programming