Under each yyyy/dir there is a file of the form '*.orig.c' containing the original source code, or as close as we can get to the original source code.
110 lines
3.3 KiB
C
110 lines
3.3 KiB
C
#include<math.h>
|
|
#include<stdio.h>
|
|
#include<stdlib.h>
|
|
#include<sys/time.h>
|
|
#include<X11/Xlib.h>
|
|
#include<X11/keysym.h>
|
|
Window L;
|
|
GC N;
|
|
Display *K;
|
|
XEvent O;
|
|
XImage *Q;
|
|
float w, x, y[7 << 16];
|
|
struct timeval S, U;
|
|
int a, b, c, d =
|
|
92, e, f, g, h, i, j, k, l, m, n, o, p, *q[96], r[7 << 16], s[96], *t,
|
|
*u = r, *v, P = 256, R[64], T, J = 12288;
|
|
struct
|
|
{
|
|
int a, b, c, d, e;
|
|
} A[9999], *B, *G, *H;
|
|
unsigned char C, D[9999], *E = D, F[] = " .bmp";
|
|
FILE *I;
|
|
|
|
#define Q(o,X,Y,C)B->b=b+32*o,B->c=c+32*X,B->d=Y,B->e=C,B++->a=l,
|
|
#define D(o,X)(int)((X*(B->b-e)-o*(B->c-f))/(x*B->e-w*B->d))
|
|
|
|
int
|
|
main (int X, char **Y)
|
|
{
|
|
for (j = J << 8, x = y[i], w = y[i + 32], B = A; k = D (x, w), B->b;
|
|
k >> 8 ? 0 : (l = D (B->d, B->e), l > 0
|
|
&& l < j) ? j = l, h = k, g = B->a : 0, B++);
|
|
for (;
|
|
X
|
|
&& (p =
|
|
1 | 3 * (o = (--X < 2 || 119 - 1[Y[1]] ? 320 : atoi (2[Y]))) / 4);)
|
|
{
|
|
for (e = f = J / 2, K = XOpenDisplay (0); m < o << 8;
|
|
y[m] =
|
|
sin ((m & 255) / 20.4 + asin ((m / P - o / 2) / 3.2 / o)),
|
|
D[m & 511] = 10 + d * !(1 & (m >> 3 & m)), r[m++] =
|
|
m / 18 << (16 & (m >> 6 ^ m)));
|
|
for (N =
|
|
XCreateGC (K, L =
|
|
XCreateSimpleWindow (K, RootWindow (K, 0), 0, 0, o, p,
|
|
0, 0, 0), 0, 0), ((I =
|
|
fopen (X ?
|
|
Y[X]
|
|
: "",
|
|
"r")) ?
|
|
fread (E + 1,
|
|
1,
|
|
1 << 15,
|
|
I),
|
|
fclose (I) :
|
|
0), B = G =
|
|
A + J / 3; *++E; f = l == 32 ? e = b + 99, c + 99 : f)
|
|
for (l = *E - 10, *F = *E, k = !l, b *= !k, c += P * k, b += P;
|
|
l > 54 && l < 96
|
|
&& (Q (0, 0, 1, 0) Q (8, 0, 0, 1) Q (8, 8, -1, 0)
|
|
Q (0, 8, 0, -1)
|
|
! q[l] && (s[l] = 1, q[l] = u, I = fopen (F, "r"))); l = J)
|
|
for (q[l] = ++u + 19, m = 2;
|
|
n = (m++ % 3 ? n : 0 ** ++u) >> 8 | C << 16, *u =
|
|
n, 0 < fread (&C, 1, 1, I)
|
|
|| (m /= J, s[l] = m ? m : 1) * fclose (I););
|
|
for (XMapWindow (K, L),
|
|
XSelectInput (K, L, KeyPressMask | KeyReleaseMask), H = A; G->b;
|
|
*H = *G++, H += !B->b)
|
|
for (B = A + J / 3;
|
|
B->b && !(B != G && B->b == G->b - 128 * (B->d - G->d)
|
|
&& B->c == G->c - 128 * (B->e - G->e)); B++);
|
|
for (Q =
|
|
XCreateImage (K, DefaultVisual (K, 0), DefaultDepth (K, 0),
|
|
ZPixmap, 0, (char *) (v =
|
|
malloc (4 * o * p)), o, p,
|
|
32, 0);
|
|
d = (d + R[19] - R[17]) & 127, n = R[18] - R[20], n ? (i =
|
|
o * 128 +
|
|
d + (n <
|
|
0) *
|
|
64, main (0,
|
|
Y)
|
|
>
|
|
200) ? e +=
|
|
(int) (y[i] * 64), f += (int) (y[i + 32] * 64) : 1 : 1;
|
|
XSync (K, 0), gettimeofday (&S, 0), m = T - S.tv_usec)
|
|
{
|
|
for (T -=
|
|
(m > 0
|
|
&& m < J * 4 ? U.tv_usec =
|
|
m, select (0, 0, 0, 0, &U) : m) - 4 * J, a =
|
|
a + 1 & -1 >> 1, m = 0;
|
|
k =
|
|
1 +
|
|
(int) (p * 512 /
|
|
((i = m * P + d, g = n =
|
|
0, main (0, Y)) * y[m * P + 32])), m < o; m++)
|
|
for (t = g ? c =
|
|
64 * s[g], q[g] + h / 4 + 64 * (a / 3 % s[g]) : t;
|
|
l = 32 - (17 << (k < 2)) * (2 * n - p) / k, n < p;
|
|
v[m + o * n++] = l >> 6 ? 4477904 << (l < 0) : t[c * l]);
|
|
for (XPutImage (K, L, N, Q, 0, 0, 0, 0, o, p); XPending (K);
|
|
R[63 & XLookupKeysym (&O.xkey, 0 & XNextEvent (K, &O))] ^=
|
|
O.type == KeyPress || O.type == KeyRelease);
|
|
}
|
|
}
|
|
return j;
|
|
}
|