URL and format fix 2001/rosten
Format fix README.md.
Dead link but I found his personal website and used that instead
(updated winners.{csv,html} as well).
This commit is contained in:
1 parent
7126a7e508
commit
b8da99f411
3 files changed
+84
-80
No files matched your search
+82
-78
@@ -1,14 +1,8 @@
|
|||||||
# Best abuse of the user
|
# Best abuse of the user
|
||||||
|
|
||||||
Edward Rosten
|
Edward Rosten
|
||||||
Oxford University
|
UK
|
||||||
34 The Chilterns
|
<https://www.edwardrosten.com>
|
||||||
Gloucester Green
|
|
||||||
Oxford
|
|
||||||
OX1 2DF
|
|
||||||
United Kingdom
|
|
||||||
|
|
||||||
http://users.ox.ac.uk/~scat1148
|
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
@@ -19,9 +13,14 @@ make
|
|||||||
## To run:
|
## To run:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
./rosten number
|
./rosten [number]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
WARNING: this will mess with your mouse and can make it hard to quit the
|
||||||
|
program. Use at your own risk.
|
||||||
|
|
||||||
|
NOTE: number is floating point.
|
||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
@@ -42,115 +41,120 @@ cursor) in the wrong way. :-)
|
|||||||
|
|
||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
NAME
|
### NAME
|
||||||
|
|
||||||
rosten - make the mouse act as if it has been greased
|
`rosten` - make the mouse act as if it has been greased
|
||||||
|
|
||||||
SYNOPSIS
|
### SYNOPSIS
|
||||||
|
|
||||||
rosten [greasiness]
|
```sh
|
||||||
|
./rosten [greasiness]
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
DESCRIPTION
|
### DESCRIPTION
|
||||||
|
|
||||||
This program is designed primarily to make your X windows interface more
|
This program is designed primarily to make your X windows interface more
|
||||||
obfuscated. Try doing something mouse driven (such as using a mouse
|
obfuscated. Try doing something mouse driven (such as using a mouse
|
||||||
driven editor on this program) whilst it is running. If you're not sure
|
driven editor on this program) whilst it is running. If you're not sure
|
||||||
what it does, looking at the code should give a fair idea.
|
what it does, looking at the code should give a fair idea.
|
||||||
|
|
||||||
It also has a [cat] man page if you want to install it as a `utility'.
|
It also has a [cat] man page if you want to install it as a 'utility'.
|
||||||
|
|
||||||
|
|
||||||
OPTIONS
|
### OPTIONS
|
||||||
|
|
||||||
It only takes one optional option: the greasiness factor. This is the
|
It only takes one optional option: the greasiness factor. This is the
|
||||||
number that the speed is divided by on each iteration. The default is
|
number that the speed is divided by on each iteration. The default is
|
||||||
1.03. A setting of 1 (no friction is fun), as is 0.99.
|
1.03. A setting of 1 - no friction - is fun as is 0.99.
|
||||||
|
|
||||||
Being an X program, it recognised the DISPLAY variable.
|
Being an X program, it recognised the `DISPLAY` variable.
|
||||||
|
|
||||||
|
|
||||||
PORTABILITY
|
### PORTABILITY
|
||||||
|
|
||||||
The program is very portable, even to non X architectures. All that is
|
The program is very portable, even to non X architectures. All that is
|
||||||
required is a large desk and some good grease.
|
required is a large desk and some good grease.
|
||||||
|
|
||||||
|
|
||||||
COMMENTS
|
### COMMENTS
|
||||||
|
|
||||||
It is really rather surprising that code like this should not only be
|
It is really rather surprising that code like this should not only be
|
||||||
portable, but compile with almost no warnings on most of the compilers
|
portable, but compile with almost no warnings on most of the compilers
|
||||||
tested. It's a kind of shame that none of the compilers do anything
|
tested. It's a kind of shame that none of the compilers do anything
|
||||||
like this:
|
like this:
|
||||||
|
|
||||||
$make greasymouse
|
```sh
|
||||||
cc greasymouse.c -o greasymouse -lX11
|
$ make greasymouse
|
||||||
greasymouse.c:30: This macro should have more text and spaces in it
|
cc greasymouse.c -o greasymouse -lX11
|
||||||
greasymouse.c:32: This is a really stupid way to perform this operation
|
greasymouse.c:30: This macro should have more text and spaces in it
|
||||||
greasymouse.c:42: This program would look better with a newline here
|
greasymouse.c:32: This is a really stupid way to perform this operation
|
||||||
greasymouse.c:48: That's a really silly thing to do
|
greasymouse.c:42: This program would look better with a newline here
|
||||||
greasymouse.c:55: So is that
|
greasymouse.c:48: That's a really silly thing to do
|
||||||
...
|
greasymouse.c:55: So is that
|
||||||
greasymouse.c:58: This program is rubbish. I'm not going to link it.
|
...
|
||||||
|
greasymouse.c:58: This program is rubbish. I'm not going to link it.
|
||||||
|
```
|
||||||
|
|
||||||
The code is best viewed with tabstops every 8 spaces.
|
The code is best viewed with [tab stops](https://en.wikipedia.org/wiki/Tab_stop) every 8 spaces.
|
||||||
|
|
||||||
|
|
||||||
BUGS
|
### BUGS
|
||||||
|
|
||||||
The mouse gets stuck completely if you give it an option of less
|
The mouse gets stuck completely if you give it an option of less
|
||||||
than 1 and leave it for too long. This is quite annoying if it
|
than 1 and leave it for too long. This is quite annoying if it
|
||||||
didn't leave the terminal if was run from in focus.
|
didn't leave the terminal it was run from in focus.
|
||||||
|
|
||||||
It gets very jerky if the processor is being used. There are
|
It gets very jerky if the processor is being used. There are
|
||||||
better time functions than clock() but I haven't used them.
|
better time functions than `clock()` but I haven't used them.
|
||||||
|
|
||||||
It deflects slightly when it gets very slow.
|
It deflects slightly when it gets very slow.
|
||||||
|
|
||||||
It annoys other people if you run it on their display too
|
It annoys other people if you run it on their display too
|
||||||
often. Maybe I should make future versions print funny jokes to
|
often. Maybe I should make future versions print funny jokes to
|
||||||
keep the humor fresh.
|
keep the humor fresh.
|
||||||
|
|
||||||
It's pretty ropey over a 56K modem.
|
It's pretty ropey over a 56K modem.
|
||||||
|
|
||||||
It's even ropier over a 56K modem and tunneled through 3 ssh links.
|
It's even ropier over a 56K modem and tunneled through 3 ssh links.
|
||||||
|
|
||||||
|
|
||||||
WARNINGS
|
### WARNINGS
|
||||||
|
|
||||||
Pages and pages and pages of things, with GCC at any rate.
|
Pages and pages and pages of things, with GCC at any rate.
|
||||||
|
|
||||||
It suggests loads of ()'s where they're not needed.
|
It suggests loads of `()`s where they're not needed.
|
||||||
|
|
||||||
It reckons I have not used some of the values I have computed. I
|
It reckons I have not used some of the values I have computed. I
|
||||||
would never do a thing like that: I just haven't used them in
|
would never do a thing like that: I just haven't used them in
|
||||||
the way it's used to.
|
the way it's used to.
|
||||||
|
|
||||||
The MIPS compiler suggests an == instead of an = in expressions
|
The MIPS compiler suggests an `==` instead of an `=` in expressions
|
||||||
such as:
|
such as:
|
||||||
|
|
||||||
&&(a=b)
|
```c
|
||||||
|
&&(a=b)
|
||||||
|
```
|
||||||
|
|
||||||
but I its suggestions would break my program. It also reckons
|
but its suggestions would break my program. It also reckons
|
||||||
that r() has no prototype.
|
that `r()` has no prototype.
|
||||||
|
|
||||||
Giving the -pedantic option to the MIPS compiler causes it to generate
|
Giving the `-pedantic` option to the MIPS compiler causes it to generate
|
||||||
warnings about its own header files, but not any extra ones with this
|
warnings about its own header files, but not any extra ones with this
|
||||||
program.
|
program.
|
||||||
|
|
||||||
With all warnings enabled, the DEC compiler, oddly enough finds some
|
With all warnings enabled, the DEC compiler, oddly enough finds some
|
||||||
problems with its own include files, but none with my program.
|
problems with its own include files, but none with my program.
|
||||||
|
|
||||||
|
|
||||||
ERRORS
|
### ERRORS
|
||||||
|
|
||||||
The DEC compiler of this version:
|
The DEC compiler of this version: `DEC C V5.6-079 on Digital UNIX V4.0 (Rev.
|
||||||
|
878)`
|
||||||
|
|
||||||
DEC C V5.6-079 on Digital UNIX V4.0 (Rev. 878)
|
can't compile the code. It thinks that preprocessor lines can not have
|
||||||
|
whitespace preceding the `#`. Moving the preprocessor directives to the
|
||||||
can't compile the code. It thinks that preprocessor lines can not have
|
beginning of the line wrecks the layout but makes it compile.
|
||||||
whitespace preceding the #. Moving the preprocessor directives to the
|
|
||||||
beginning of the line wrecks the layout but makes it compile.
|
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -63,7 +63,7 @@ E. Jay Berkenbilt,E._Jay_Berkenbilt,null,null,null,null,null
|
|||||||
Ed Luke,Ed_Luke,http://www.erc.msstate.edu/~lush,null,lush@erc.msstate.edu,null,null
|
Ed Luke,Ed_Luke,http://www.erc.msstate.edu/~lush,null,lush@erc.msstate.edu,null,null
|
||||||
Ed Lycklama,Ed_Lycklama,http://www.klg.com,null,eal@klg.com,null,null
|
Ed Lycklama,Ed_Lycklama,http://www.klg.com,null,eal@klg.com,null,null
|
||||||
Edward Giles,Edward_Giles,https://id523a.com/,null,edward@giles.net.au,null,null
|
Edward Giles,Edward_Giles,https://id523a.com/,null,edward@giles.net.au,null,null
|
||||||
Edward Rosten,Edward_Rosten,http://users.ox.ac.uk/~scat1148,null,scat1148@herald.ox.ac.uk,null,null
|
Edward Rosten,Edward_Rosten,https://www.edwardrosten.com,ed@edwardrosten.com,null,null
|
||||||
Eric Marshall,Eric_Marshall,null,null,eric@EMIEng.com,US,null
|
Eric Marshall,Eric_Marshall,null,null,eric@EMIEng.com,US,null
|
||||||
Eryk Kopczynski,Eryk_Kopczynski,http://www.mimuw.edu.pl/~erykk/,null,ek189185@zodiac.mimuw.edu.pl,null,null
|
Eryk Kopczynski,Eryk_Kopczynski,http://www.mimuw.edu.pl/~erykk/,null,ek189185@zodiac.mimuw.edu.pl,null,null
|
||||||
Esko Nuutila,Esko_Nuutila,http://www.cs.hut.fi/~enu/,null,enu@cs.hut.fi,null,null
|
Esko Nuutila,Esko_Nuutila,http://www.cs.hut.fi/~enu/,null,enu@cs.hut.fi,null,null
|
||||||
|
|||||||
|
Can't render this file because it contains an unexpected character in line 23 and column 6.
|
+1
-1
@@ -1027,7 +1027,7 @@ Contest </I></FONT></CENTER><BR>
|
|||||||
<LI TYPE=square>Most poetic use of strings (<A HREF="years.html#2013_robison">2013 robison</A>)
|
<LI TYPE=square>Most poetic use of strings (<A HREF="years.html#2013_robison">2013 robison</A>)
|
||||||
</UL><BR>
|
</UL><BR>
|
||||||
|
|
||||||
<LI TYPE=none><A NAME="Edward_Rosten"></A><B><a href="mailto:scat1148@herald.ox.ac.uk">Edward Rosten</a></B> -- <A HREF="http://users.ox.ac.uk/~scat1148">http://users.ox.ac.uk/~scat1148</a>
|
<LI TYPE=none><A NAME="Edward_Rosten"></A><B><a href="mailto:scat1148@herald.ox.ac.uk">Edward Rosten</a></B> -- <A HREF="https://www.edwardrosten.com">https://www.edwardrosten.com</a>
|
||||||
<UL>
|
<UL>
|
||||||
<LI TYPE=square>Best abuse of the user (<A HREF="years.html#2001_rosten">2001 rosten</A>)
|
<LI TYPE=square>Best abuse of the user (<A HREF="years.html#2001_rosten">2001 rosten</A>)
|
||||||
</UL><BR>
|
</UL><BR>
|
||||||
|
|||||||
Reference in new issue
Block a user