🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.folklore.computers
10 messages
10 total messages Started by Michael Stimac Wed, 13 Dec 1989 23:20
revenge
#276
Author: Michael Stimac
Date: Wed, 13 Dec 1989 23:20
50 lines
2692 bytes
He Who Laughs Last Laughs Best Department:

(names are changed to protect the innocent)

I worked with RCA Computer Systems Division in Cinnaminson,
New Jersey (and later Blue Bell, Pa) for several years both 
before and after the Computer div. was sold to Univac (many
years before Univac became Unisys, or whatever). We wrote
all the OS, compiler, and communication software for RCA's
Spectra computers.

There was a super programmer (we didn't use the word hacker in
those antediluvian times) in the Languages Group, whom I will
refer to as Rube. Rube was/is your basic computer genius. He had
single-handedly invented and implemented a programming language
which I will call IPL. IPL was used for all kinds of semi-official
projects within the software development group.

\Everyone/ in the company had high regard for Rube, who was a
genial and helpful person to everyone. Well, nearly everyone.

Now several management control systems had been cobbled-up using
Rube's IPL language. There was one data center manager who
apparently had no idea who Rube was, or who was otherwise 
too self-important to treat Rube with respect. One day, Rube
wanted a small favor from this manager. The manager, forgetting
which side his bread was buttered on, refused Rube's request
as being against policy or whatever.

This same data center manager daily ran his summaries and
reports to higher management using Rube's IPL system. In a
nice display of justice, Rube included in the next release of
IPL, an additional feature, such that, when it was running
a job for THIS manager a deliberate delay would be taken
after each I/O operation. The amount of delay was minuscule,
but was increased each and every calendar day!

>From the point of view of the hapless manager, his job would
run imperceptibly slower each day; but after a period of months
(and years) he would no longer be able to get his report finished
within the 24-hour reporting period!

Remember - don't try this at home, kids!

This is not a so-called urban myth; I am personally acquainted with "Rube".

Michael Stimac
.....sun!oliveb!tymix!stimac

disclaimer: dis claimer here ain't dat claimer der!
Re: revenge
#277
Author: DN5
Date: Thu, 14 Dec 1989 16:17
18 lines
1321 bytes
In article <3117@tymix.UUCP>, stimac@strider.uucp (Michael Stimac) says:
>>From the point of view of the hapless manager, his job would
>run imperceptibly slower each day; but after a period of months
>(and years) he would no longer be able to get his report finished
>within the 24-hour reporting period!
>
>Remember - don't try this at home, kids!

At the place where my wife works, there was a bunch of pranks played on
some of the new programmers hired.  My favorite was one of a simplest:
somebody added a time delay into her LOGIN.COM file (VAX VMS, folks).
Like the above modification, it added a few seconds each day to the
delay.  It was up to 10 minutes before she figured out why it took
her so long to log on...

                              Jay, etc...
                              d...@psuvm.psu.edu
Pranks (was Re: revenge)
#278
Author: port... Michael Portuesi
Date: Thu, 14 Dec 1989 20:42
27 lines
1790 bytes

Back when I was in high school, they had a lab of about 30 or so
TRS-80 model III's that they used for Basic programming.

One day, either myself or another person got the idea for putting
together a fake basic interpreter.  It accepted any line that began
with a line number, just as if the user were talking to the
interpreter.  Any immediate mode commands, such as "run" or "list"
were greeted with "?syntax error".

We ran the program on all the lab machines.  Many people were very
confused, though most didn't lose much work.  They eventually just
turned the computer off and back on again, flushing the program from
memory.

Our sequel to the fake basic interpreter was a fake TRSDOS
interpreter.  It would interpret TRSDOS commands, and even spin the
disks in the drives in a convincing fashion, but not do anything.  I
don't think we finished that one before we lost interest in it and
gave up.

			--M
-- 
__
\/  Michael Portuesi	Silicon Graphics Computer Systems, Inc.
    port...@SGI.COM	Entry Systems Division -- Engineering
Re: revenge
#287
Author: Tim Pozar
Date: Fri, 15 Dec 1989 00:01
19 lines
1301 bytes
In article <3117@tymix.UUCP> sti...@tymnet.com writes:
>There was a super programmer (we didn't use the word hacker in
>those antediluvian times) in the Languages Group, whom I will
>refer to as Rube. Rube was/is your basic computer genius. He had
>single-handedly invented and implemented a programming language
>which I will call IPL. IPL was used for all kinds of semi-official
>projects within the software development group.

   IPL?  I remember programming in a language called IP/L-1 on a
timeshared 360 in '74.  This isn't the same language, is it?

	     Tim

-- 
Tim Pozar    Try also...
Internet: po...@toad.com   
    Fido:  1:125/555
  PaBell:  (415) 788-3904
  USNail:  KKSF / 77 Maiden Lane /  San Francisco CA 94108
Re: revenge
#288
Author: Tom Fitzgerald
Date: Sat, 16 Dec 1989 04:17
22 lines
1603 bytes
stimac@strider.uucp (Michael Stimac) writes:
>Rube included in the next release of
>IPL, an additional feature, such that, when it was running
>a job for THIS manager a deliberate delay would be taken
>after each I/O operation. The amount of delay was minuscule,
>but was increased each and every calendar day!

There's a modern variant of this for graphic workstations that can
be entertaining.  Start a demon process on someone's workstation that
gradually changes the mouse-velocity (or mouse-acceleration) upward,
then downward, then upward... with a period of a couple of hours.
They'll have a migraine by the end of the day.  And apparently it's
subliminal enough that people don't notice - they may keep
disassembling the mouse to clean the mouseball, though.

Under X-windows you can do this with XChangePointerControl.

[Mouse velocity is the ratio of the movement of the physical mouse
to the movement of the pointer on the screen.  When it's too high, tiny
movements of the mouse will fling the pointer across the screen.  When
it's too low, you have to slide the mouse across three feet of desktop
to move the pointer halfway across the screen.]
Re: Pranks (was Re: revenge)
#279
Author: Eugene Miya
Date: Mon, 18 Dec 1989 18:23
25 lines
1863 bytes
If you want programming pranks, you should check out a copy of
The Legends of Caltech.  The last one was the McDonald's Affair
which shows the very simple Fortran program to print out names and
addresses.  Enter as many times as you like.  Like 1.5 million.
This was about 1/3 of the total entries and they expected to win
1/3 of the prizes: mostly food, but also 5 small cars and 1 sports car.
McDonalds came out and said that for each Caltech won prize a
separate non-Caltech prize would be awarded.  This resulted
in coupons now saying "No electronic means of duplication.

Legends of Caltech is available from the Caltech bookstore for $10
along with the Richard Feynman CD and other curious and strange things.
Many other programming pranks (such as the reprogramming of the
Rose Bowl sign) can be found in RISKS.

This list is getting too long to read.  Starting to impact work!

Another gross generalization from

--eugene miya, NASA Ames Research Center, eug...@aurora.arc.nasa.gov
  resident cynic at the Rock of Ages Home for Retired Hackers:
  "You trust the `reply' command with all those different mailers out there?"
  "If my mail does not reach you, please accept my apology."
  {ncar,decwrl,hplabs,uunet}!ames!eugene
  		Support the Free Software Foundation (FSF)
Re: Pranks (was Re: revenge)
#280
Author: sc... Scott Yelich
Date: Tue, 19 Dec 1989 17:26
56 lines
3730 bytes
>   One day, either myself or another person got the idea for putting
>   together a fake basic interpreter.  It accepted any line that began
>   with a line number, just as if the user were talking to the
>   interpreter.  Any immediate mode commands, such as "run" or "list"
>   were greeted with "?syntax error".

See ``gremlins'' on the apple ][s.

1)  There was this guy who thought he was a super ``hacker.'' He would 
    STEAL your disks when you were not looking and copy them.  He would
    even take disks out of the drive of the machine you were using...

    Anyway, I made this program..... and started a rumor that I had the
    BEST and FASTEST copying program out.  It was the smallest program
    yet because it was written in a super high level language (PASCAL?)
    and it copied EVERY DISK.  Well, sure enough.... he stole one of my
    disks one day and got a copy of it.  The program was short, sure,
    the only commands it had in its executable were similar to:
    ``format; print "Please insert next disk...''

2)  I used to write my name in the ``hub'' section of ALL my 5.25 floppy
    disks.  I used to have so many I would lose track of them.  I would
    always inspect disks that I found... or that other people let me
    borrow.... one time a conversation went something like this:
    me : ``Is this your disk?''
    Him: ``Yes.''
    me : ``I lost a disk yesterday and it looks a lot like this one''
         (As I read my name in the center near the hub...)
    Him: ``I bought it last week.''
    me : ``Did you get a good deal?  I looks like a good quality disk.''
    Him: ``It was on sale.''
    me : ``Oh?  Tell me, do you always buy disks with my name on them?''
    Him: ``Huh? Oh, maybe I did find this one.''
    me : ``Yeah.''  (as I took the disk back)

3)  I did something similar to #1 above... except for the Atari computer.
    This was for a cheap BBS operator who thought having the newest WAREZ
    was cool.  Anyway, he wanted the newest upgrade to his BBS that was
    supposedly hacked out by hackers... :) Anyway, my program said something
    like insert your BBS MASTER disk... for upgrading.  It also said:
    DO NOT REMOVE THE DISK UNTIL UPGRADE IS FINISHED.  Well, all it really
    did was read the disk sectors from 1 to 720 by a step of 19... and that
    made it sound like it was formatting the disk!  Well, also, I did 
    punch hole in his vtoc!  :)

4)  There are a BUNCH of things for unix.. I love them.... especially
    for those who think they are hackers on unix.  like:
    ``alias whoami "echo root"''
    stuff like that.

--

 -----------------------------------------------------------------------------
 Scott D. Yelich                                 sc...@cs.odu.edu [128.82.8.1]
 After he pushed me off the cliff, he asked me, as I fell, ``Why'd you jump?''
 -----------------------------------------------------------------------------
Re: Pranks (was Re: revenge)
#281
Author: s... Stephen Wadlow
Date: Thu, 21 Dec 1989 02:21
31 lines
2159 bytes
In article <PORTUESI.89...@tweezers.esd.sgi.com> port...@sgi.com (Michael Portuesi) writes:

>One day, either myself or another person got the idea for putting
>together a fake basic interpreter.  It accepted any line that began
>with a line number, just as if the user were talking to the
>interpreter.  Any immediate mode commands, such as "run" or "list"
>were greeted with "?syntax error".

hey Mike!
We had done a similar version of this that would allow you to type
in an entire program, but on the command "run" it would
start printing peeks of all the memory from 1 to some large number
and the machine would freak.  We had disabled the break key, so
there was no way for the user to halt the program short of a power
cycle, though there was an interrupt (control shift up-arrow I think)
that would allow us to stop the program and return to basic.
Kind of nasty, but occasionally fun....

The other high school hack I pulled on the old model 3's was to
have it slowly draw in crufty trs-80 graphics some basic lines in 
some generic pattern.  I got then memorize the pattern, and
showed the program to the teacher.  While the program was running,
I touched the screen, and moved my finger at the same speed and in
the same places that the machine was drawing graphic blocks.  To
the unaware observer (ie, my teacher) it appeared that I had written
something that made the model-3 monitor into a touch screen.
He was disappointed when I told him the truth, though I think
he did pull the same stunt on a few other people.


		steve
Re: Pranks (was Re: revenge)
#283
Author: Tim Pozar
Date: Thu, 21 Dec 1989 07:42
296 lines
7430 bytes
In article <PORTUESI.89...@tweezers.esd.sgi.com> port...@sgi.com (Michael Portuesi) writes:
>Our sequel to the fake basic interpreter was a fake TRSDOS
>interpreter.  It would interpret TRSDOS commands, and even spin the
>disks in the drives in a convincing fashion, but not do anything.  I
>don't think we finished that one before we lost interest in it and
>gave up.

     I betcha everyone screwing around with MS-DOS did one of these...
                     
		     Tim
---

#include <stdio.h>
#include <ctype.h>

/*
	A replacement for COMMAND.COM

	T. Jennings 28 Dec 84

	Docs? You cant be serious ...

*/

version = 0;			/* initial (ahem) version */
char drive = 'A';
unsigned rnd;			/* fake random number */

#define same(s1,s2) (strcmp(s1,s2) == 0)

main() {

long l;
char ln[132];
char cmd[80],*arg,*cp;

	for (l= 10000L; l > 0L; l--);		/* look busy */

	cprintf("Current date is Tue  1-01-1980\r\n");
	get(ln,"Enter New date: ");
	cprintf("Current time is 0:01:21.32\r\n");
	get(ln,"Enter new time: ");

	cprintf("\r\n\r\nThe IBM Personal Computer DOS\r\n");
	cprintf("Version 2.00 (C)Copywrong IBM Corp 1981, 1982, 1983 so there\r\n");


/* Now the fun starts */

	drive= 'A';
	while (1) {
		cprintf("%c>",drive);
		drive+= 7; if (drive > 'Z') drive= 'A';
		get(ln,"");			/* get command line */
		arg= cmd;			/* copy of command name */
		cp= ln;
		while (*cp && (*cp != ' '))
			*arg++= *cp++;
		*arg= '\0';			/* terminate cmd name */
		while (*cp && (*cp == ' '))	/* skip spaces, etc */
			++cp;
		arg= cp;			/* arg is cmd tail */

		if (same(cmd,"dir")) dir();
		else if (same(cmd,"ver")) ver();
		else if (same(cmd,"cd")) cd(arg);
		else if (same(cmd,"chdir")) cd(arg);
		else if (same(cmd,"date")) date(arg);
		else if (same(cmd,"time")) time(arg);
		else if (same(cmd,"ren")) del(arg);
		else if (same(cmd,"del")) del(arg);
		else if (same(cmd,"erase")) del(arg);
		else if (same(cmd,"prompt")) prompt(arg);
		else if (same(cmd,"set")) set(arg);
		else if (same(cmd,"exit")) exitc();
		else if (same(cmd,"plugh")) goway();
		else if (strlen(cmd) > 0) command(cmd,arg);
	}
}
/* Go away */

goway() {
	cprintf("\r\n");
	cprintf("COMMAND.EXE -- 28 Dec 84 T. Jennings\r\n");
	exit();
}
/* Display wrong MSDOS version */

ver() {
	version += 137;
	cprintf("IBM Personal Computer DOS version 2.%d\r\n",version);
	cprintf("\r\n");
}

/* DOS prompt */

prompt() {

	cprintf("But I like the prompt as it is\r\n");
	cprintf("\r\n");
}
/* set environment */

set(s)
char *s;
{
	if (strlen(s)) cprintf("%s? ",s);
	cprintf("That sounds interesting\r\n");
	cprintf("\r\n");
}
/* Exit program */

exitc() {

	cprintf("No, I am not going away.\r\n");
	cprintf("\r\n");
}
/* delete some files */

del() {
	disk(); disk();

	if (chance(50)) dosmsg();
	else cprintf("File not found\r\n");
	cprintf("\r\n");
}
/* dont list disk files */

dir() {

	if (chance(30)) dosmsg();
	else {
		disk();
		cprintf("Volume in drive %c: label fell off\r\n",drive);
		disk(); disk();
		cprintf("Directory of  %c:\\\r\n",drive);
		cprintf("\r\nFile not frammished\r\n");
	}
	cprintf("\r\n");
}
/* Refuse to change directories */

cd(arg)
char *arg;
{
	if (chance(40)) dosmsg();
	else cprintf("Invalid directory\r\n");
	cprintf("\r\n");
}
/* Set the time */

time() {
	if (chance(35)) cprintf("Time? Who has time?\r\n");
	else if (chance(15)) cprintf("I forget\r\n");
	else cprintf("Buy a watch\r\n");
	cprintf("\r\n");
}

/* Set the date */

date() {
	if (chance(25)) cprintf("My birthday!\r\n");
	else if (chance(25)) cprintf("Most banks give out calendars, why not ask for one next time you're in?\r\n");
	else cprintf("Sometime after 1980\r\n");
	cprintf("\r\n");
}
/* Display a prompt, input a line of text, convert it to all
lower case. While we're at it, generate a fake random number by
continually incrementing an integer while waiting for a key. */

get(l,p)
char l[];
char *p;
{
int i,j;
char c;

	cprintf("%s",p);
	i= 0;
	while (1) {
		while (! (c= bdos(6,0xff))) rnd += 17;

/* Backspace and delete: MOST of the time, do it right. Once in a while,
backspace by deleting the whole line, and restoring it all except the
last deleted character. */

		if ((c == 8) || (c == 127)) {
			if (i > 0) {
				if (chance(30)) {
					for (j= i; j--;) cprintf("\010 \010");
					--i;
					for (j= 0; j < i; j++) bdos(6,l[j]);

				} else {
					--i;
					cprintf("\010 \010");
				}
			}

/* since control-c probably means banging on the keyboard in frustration,
be nasty. */

		} else if (c == 3) {
			switch (rnd % 4) {
				case 0: cprintf("Ouch!\07\r\n"); break;
				case 1: cprintf("Cut it out!\r\n"); break;
				case 2: cprintf("Stop it!\r\n"); break;
				case 3: cprintf("That hurts!\r\n"); break;
			}
			i= 0;
			break;

/* Carriage return: be merciful */

		} else if (c == 13) {
			cprintf("\r\n");
			break;

/* Tabs are fun. Space over a random number of spaces */

		} else if (c == 9) {
			for (j= (rnd % 6) + 4; j > 0; --j) {
				bdos(6,' ');
				l[i++]= ' ';
			}

/* Control characters: normal until I figure out what to do */

		} else if (c < ' ') {
			cprintf("^%c",c + '@');

		} else {
			bdos(6,c);
			l[i++]= c;
		}
	}

	l[i]= '\0';
	for (i= 0; l[i]; i++) l[i]= tolower(l[i]);
}

/* Chance: the number given is a percentage of 100, return true if
we are in range. */

chance(n)
int n;
{
	return(n > (rnd % 100));
}
/* make the disk look busy. */

disk() {

int n,i;
long l;

	for (i= 2; i--;) {
		n= open("foo",0);
		for (l= 1000L; l > 0L; l--);
		if (n != -1) close(n);
	}
}
/* Randomly choose a DOS message */

dosmsg() {
int i;

	i= rnd % 10;
	switch (i) {

		case 0: cprintf("What was that? I wasnt paying attention\r\n"); break;
		case 1: cprintf("Invalid directory\r\n"); break;
		case 2: cprintf("Insufficient disk space\r\n"); break;
		case 3: cprintf("Do you hear music?\r\n"); break;
		case 4: cprintf("Invalid number of parameters\r\n"); break;
		case 5: cprintf("Duplicate File name or File not found or I lost it\r\n"); break;
		case 6: cprintf("I see no  FILES  here\r\n"); break;
		case 7: cprintf("Nothing happens\r\n"); break;
		case 8: cprintf("Insufficient memory\r\n"); break;
		case 9: cprintf("Error creating file or pipe\r\n"); break;
		default: printf("rnd = %d default?\r\n",i); break;
	}
}

/* "execute" a command */

command() {
	disk(); disk(); disk();
	cprintf("Bad commmmmmmand or file name\r\n");
}
-- 
Tim Pozar    Try also...
Internet: po...@toad.com   
    Fido:  1:125/555
  PaBell:  (415) 788-3904
  USNail:  KKSF / 77 Maiden Lane /  San Francisco CA 94108
Re: Pranks (was Re: revenge)
#282
Author: arro... Kenneth Arromdee
Date: Thu, 21 Dec 1989 07:47
19 lines
1756 bytes
>>One day, either myself or another person got the idea for putting
>>together a fake basic interpreter.  It accepted any line that began
>>with a line number, just as if the user were talking to the
>>interpreter.  Any immediate mode commands, such as "run" or "list"
>>were greeted with "?syntax error".

There was a program called FOOLS which did this on an Apple ][, which I had a
bit of fun with in high school, for that matter.  It had appeared in Softside
as an April Fools joke, and for some reason the teacher (who also had an apple
][) brought a copy to class.  After I left it running on a few computers
once, the teacher deleted all copies of it on the floppies (nobody brought
their own).  By that time I had placed it after the end of the HELLO program,
and was able to get a copy any time I want by loading HELLO and deleting the
first few lines, so it stayed around for some time.
--
"Workers of the world, we're sorry!" --Soviet protestor's slogan

Kenneth Arromdee (UUCP: ....!jhunix!arromdee; BITNET: arromdee@jhuvm;
     INTERNET: arro...@crabcake.cs.jhu.edu)
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads