Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/17/84; site opus.UUCP Path: utzoo!linus!decvax!ucbvax!ucdavis!lll-crg!seismo!hao!nbires!opus!rcd From: rcd@opus.UUCP (Dick Dunn) Newsgroups: net.graphics Subject: Re: exclusive-ORed cursors (money for nothing) Message-ID: <142@opus.UUCP> Date: Sat, 19-Oct-85 01:50:25 EDT Article-I.D.: opus.142 Posted: Sat Oct 19 01:50:25 1985 Date-Received: Tue, 22-Oct-85 06:54:41 EDT References: <588@stc-b.stc.UUCP> <5988@utzoo.UUCP> <914@turtlevax.UUCP> <745@terak.UUCP> <1238@tekgvs.UUCP> <2750@watvlsi.UUCP> Organization: NBI,Inc, Boulder CO Lines: 40 > >What a neat way to make money. If he makes > >$100 on 100 companies, he has just earned $10,000 for nothing. > > I think '$10,000 for nothing' is an unfair assessment of the > situation. As with most great ideas, once someone shows you how to > do something it becomes obvious (also spoken: 'Once someone opens the door > everyone can see through it'). Just because a process is obvious and > in widespread use this does not lessen an inventor's credit for it. Only true if the inventor actually "invented" the process--i.e., that the process had been unknown. (The key phrase above is "once someone shows you". Sure, if you can't figure it out yourself, there's some substance there.) Otherwise it's just a legal game. I think that any decent programmer could figure out the xor cursor. It's nothing more than a pixel version of an old trick in machines with fast registers and slow memory--how do you exchange two registers without using memory or other registers? Simple--takes three xor's; if the registers you want to exchange are R1 and R2, the two-address form (op src,dst) is xor r1,r2 xor r2,r1 xor r1,r2 I saw this in about '68 or so, and it was an old trick then. I've posed it as a riddle to students taking their first assembly-language course. BFD. For the graphic equivalent, it seems to me that as soon as you start thinking about manipulating pixels with bitwise ops, you come up with something that will run along the lines of RasterOps. Once you get to that point (whether you've actually seen all the material on RasterOps or not), the next natural thing to think about is what all of the 16 possible transformations of (source*dest) bits mean. You find the obvious functions like clear-to-white, clear-to-black, copy, paint white, paint black, invert, etc.--and lo and behold, xor is in there; any sophomore will recognize it. In other words, the technique and the usefulness is obvious as soon as you look at the problem. Why in hell this could be patentable (if, indeed, it is an explicit part of the patent!) is beyond me. Can I patent the use of a pencil for taking up the slack in a cassette tape? -- Dick Dunn {hao,ucbvax,allegra}!nbires!rcd (303)444-5710 x3086 ...Simpler is better.