Path: utzoo!attcan!sobmips!uunet!aplcen!samsung!munnari.oz.au!comp.vuw.ac.nz!comp.vuw.ac.nz!lloyd From: lloyd@comp.vuw.ac.nz (lloyd Parkes) Newsgroups: comp.os.minix Subject: Almost a mouse driver Message-ID: <1989Nov16.003710.19533@comp.vuw.ac.nz> Date: 16 Nov 89 00:37:10 GMT Sender: news@comp.vuw.ac.nz (News Admin) Organization: Dept. of Comp. Sci., Victoria Uni. of Wellington, New Zealand Lines: 82 I have got most of a mouse driver going under real mode minix. There are just a few things that need to be done. Things it does do ~~~~~~~~~~~~~~~~~ Places a (text) cursor on the screen. Knows about hardware and software scrolling. Keeps track of what is under the cusor. Works with two or three buttons. Looks very nice. Things it doesn't do ~~~~~~~~~~~~~~~~~~~~ 1) Run in protected mode. :-( 2) Work with serial or 'new bus' mouse. 3) I only have a two button mouse, so I can't verify the three button code. 4) The IRQ setting should be determined at run(boot)time, this seems to be very hard in protected mode. 5) There aren't enough IRQ lines to go around. 6) Send messages anywhere. Fixs ~~~~ 1) I will fix up some of the segment stuff, and hope it goes. (I don't know much about protected mode). 2) I have access to a serial mouse. I hope someone will offer to test my 'new bus' mouse code. 3) The serial mouse has three buttons. 4) Bruce?? are you out there??? 5) Tough, you must drop something, although this will only be a problem if you have lots of hardware e.g. AT with two terminals and a hard drive. Ethernet counts as a second terminal. 6) I don't know what people want, so a few points a then some suggestions. You can guarantee (sp?) three buttons, if the mouse only has two buttons, the third will be simulated by both at once. It is assumed that the messages will be sent to the tty task, probably pretending to be keyboard messages. It is also assumed that because there is no fancy windows (yet) that the mouse will be used most often in elle. I don't want any double click hacks, (the third button one is bad enough), those are for people who can't even get to grips with two buttons :-) There can be no clicking and dragging or menus, because the mouse driver has no task of its own. Suggestion 1: left button sends enough ^B, ^F, ^P and ^N to move the elle cursor to the mouse cursor. Right button does same, but sends ^@ first and ^W afterwards to kill the region. Middle button same as right, but a copy region instead of kill. Suggestion 2: left button moves, as for one. Right button grabs word (whitespace delimited) at mouse cursor and sends that to tty. This creates problems, because the tty driver expects to recieve scan code, not ASCII codes. This is horrid, and is on my 'to fix' list. :-) Middle button, kill or copy region?? Suggestion 3: up to you. Please mail any offers to test 'new bus' driver and your suggestions. How many people out there actually have mice? and what type do you have two/three buttons new/old/serial ? Lloyd ------------------------------------------------------------------------ Lloyd | lloyd@comp.vuw.ac.nz | I just hope these addresses Parkes | ...!uunet!vuwcomp!lloyd | are right. :-) ------------------------------------------------------------------------