info-mac@uw-beaver (02/11/85)
From: John Mark Agosta <INFO-MAC-REQUEST@SUMEX-AIM.ARPA>
#! /bin/sh
: This is a shar archive. Extract with sh, not csh.
echo x - slide.doc
cat > slide.doc << '22415!Funky!Stuff!'
At Stanford we use a video projector at our user group meetings
to show new programs and give "Mac slide shows". Some people have
been using the Magnum Software "Slide Show Magician".
In fact I was using (or trying to use it) in front of our group
recently, and was quite embarrassed when it totally refused to read
the "script" for my show. The same disks that failed on the demo
machine, worked fine on three different Macs back in my office.
What gives?
Well I discovered this: as a "feature", the Magnum Software puts
bad sectors on your nice clean disks. They record special copy
protection sectors on top of your script file whenever you "save" it.
This is bad design, but it usually works. However if you are using
a different machine for the final demo, and it happens to have
a very slightly out of spec disk drive, you can kiss your presentation
goodbye. Apple II users will recognize these problems, I'm sure;
the copy protection schemes in use there are in some cases very
disk drive dependent.
At any rate, here's my solution: the C source and binhex binaries
for a very simple and easy to use "slide projector". It is called
"slide".
It uses the same "slide format" as the Magnum program: just simple
MacPaint documents. There is a template provided called "slideblank"
that you should use as a guide in positioning your material. Basically
your pictures must be in the upper left corner of the MacPaint
"physical page". "slideblank" has the four rounded screen corners, and
two off screen lines to show you the limits of this area. Be careful
not to move these bits on the physical page (you can move the viewing
window, but don't move the actual page dots in "show page" mode).
"slideblank" also has a single dot positioned where I usually start
the first line of my text or graphics. I found the grid lock mode
very handy for lining up the blocks of text.
The slide order is determined by the MacPaint file names. Only one slide
show can be stored per disk. The file names have the form "NumberName",
for example "1title", "2overview", "3goals", etc. Only the number
part of the file name determines the slide order. You can use numbers
as large as you like (16000 max); I suppose basic fans might number
their slides 10, 20, 30, etc. You can also use fractions to "insert" slides,
e.g.: "1.2credits". You could set the numbers at the time of creation
with MacPaint, or go back latter with the Finder and touch up the
slide ordering.
The mouse can be used to sketch on the screen. Spacebar advances
to the next slide. Backspace reverses.
--Bill Croft, SUMEX project, Stanford Univ.
[Stored on <info-mac> as slide.shar (C source), slide.hcx (program)
and slideblank.hcx (blank slide)]
22415!Funky!Stuff!
echo x - slide.c
cat > slide.c << '22415!Funky!Stuff!'
/* slide.c 1.1 2/5/85 */
/*
* Simple slide showing program.
*
* Copyright (C) 1985, Stanford Univ. SUMEX project.
* May be used but not sold without permission.
*/
/*
* history
* 02/05/85 croft created.
*/
/*
*
* The slides that are used are MacPaint files. Your drawing must be
* positioned in the upper left corner of the physical page image.
* The accompanying MacPaint file 'slide.blank' is a blank slide with
* tiny guide marks at the corners to show you this area. It also
* contains a guide dot that you can use to align your first line of
* text.
*
* The slide order is determined by the file names. Only one slide show
* can be stored per disk. The file names have the form "NumberName",
* for example "1title", "2overview", "3goals", etc. Only the number
* part of the file name determines the slide order. You can use numbers
* as large as you like; you can also use fractions to "insert" slides,
* e.g.: "1.2credits".
*
* The mouse can be used to sketch on the screen. Spacebar advances
* to the next slide. Backspace reverses.
*/
#include "mac/quickdraw.h"
#include "mac/osintf.h"
#include "mac/toolintf.h"
int pensz = 2;
GrafPort *myPort;
int wasevent,mouse;
Point p,pold;
EventRecord er;
#define NIL 0
#define NFILES 64 /* number of files */
#define LFILES 32 /* length of file names */
char *files; /* pointer to array, files[NFILES][LFILES] */
int filescount;
int filesindex;
VolumeParam vp;
FileParam fp;
char fpname[LFILES]; /* output of PBGetFInfo */
main()
{
struct QDVar QDVar;
GrafPort gp;
QD = &QDVar;
InitGraf(&thePort);
InitCursor();
InitFonts();
InitWindows();
InitMenus();
TEInit();
InitDialogs((ProcPtr)NIL);
myPort = &gp;
OpenPort(myPort);
PenSize(pensz,pensz);
MoveTo(256,256);
files = NewPtr(NFILES*LFILES);
sortfiles();
showfile(0);
for (;;) {
SystemTask();
wasevent = GetNextEvent(everyEvent, &er);
event();
}
}
event() /* look for events */
{
if (!wasevent)
goto out;
switch (er.what) {
case keyDown:
case autoKey:
switch (er.message & 0xff) {
case 'q':
ExitToShell();
case ' ':
if (++filesindex >= filescount)
ExitToShell();
showfile(filesindex);
break;
case '\b':
if (--filesindex < 0)
filesindex = 0;
showfile(filesindex);
break;
case 'f': pensz += 1; goto setpen;
case 't': pensz -= 1; goto setpen;
case 'F': pensz += 16; goto setpen;
case 'T': pensz -= 16; goto setpen;
setpen:
PenSize(pensz,pensz);
break;
case 'b':
PenPat(&QD->black);
break;
case 'w':
PenPat(&QD->white);
break;
case 'g':
PenPat(&QD->gray);
break;
}
break;
case mouseDown:
mouse = 1;
break;
case mouseUp:
mouse = 0;
break;
}
out:
GetMouse(&p);
if (!EqualPt(&p, &pold)) {
pold = p;
if (mouse)
LineTo(p.h,p.v);
else
MoveTo(p.h,p.v);
}
}
sortfiles()
{
register i;
int compare();
if (PBGetVInfo(&vp, 0) != noErr)
abort("no volinfo?");
fp.ioNamePtr = fpname;
for (i = 1 ; i <= vp.ioVNmFls ; i++) {
fp.ioFDirIndex = i;
if (PBGetFInfo(&fp, 0) != noErr)
abort("getfinfo error");
if (strncmp((char *)&fp.ioFlFndrInfo.fdType, "PNTG", 4) !=0 )
continue;
if (fpname[0] <= 0 || fpname[1] < '0' || fpname[1] > '9')
continue;
fpname[fpname[0]+1] = 0;
BlockMove(fpname, &files[LFILES*(filescount++)], LFILES);
}
if (filescount <= 0)
abort("can't find any numbered MacPaint files");
qsort(files, filescount, LFILES, compare);
}
convert(s)
char *s;
{
register char *cp;
register i, w, sawfrac;
i = w = sawfrac = 0;
for (cp = s + 1 ; *cp ; cp++) {
if (*cp == '.') {
w = i;
i = 0;
sawfrac++;
continue;
}
if (*cp < '0' || *cp > '9')
break;
i = (i * 10) + (*cp - '0');
}
if (sawfrac)
return ((w<<16) | i);
else
return (i<<16);
}
compare(a,b)
char *a,*b;
{
int an,bn;
an = convert(a);
bn = convert(b);
if (an == bn)
return (0);
if (an > bn)
return (1);
else
return (-1);
}
#define srcBlocks 2
#define srcSize 512*srcBlocks
#define SCREEN 0x7A700
#define SWIDE 512
#define SHI 342
#define PWIDE 576 /* MacPaint width */
showfile(i)
{
char srcBuf[srcSize];
char lineBuf[PWIDE/8];
char *srcPtr,*dstPtr,*linePtr;
int rn, count;
if (FSOpen(&files[i*LFILES+1], 0, &rn) != noErr)
abort("fsopen");
count = 512;
FSRead(rn, &count, srcBuf); /* skip header */
count = srcSize;
FSRead(rn, &count, srcBuf); /* prime buffer */
srcPtr = srcBuf;
HideCursor();
dstPtr = (char *)SCREEN;
for (i = 0 ; i < SHI-1 ; i++) { /* read 341 lines */
linePtr = lineBuf;
UnPackBits(&srcPtr, &linePtr, PWIDE/8);
BlockMove(lineBuf, dstPtr, SWIDE/8);
dstPtr += (SWIDE/8);
if (srcPtr > (srcBuf + srcSize - 512)) {
BlockMove(&srcBuf[srcSize-512], &srcBuf[0], 512);
count = srcSize-512;
FSRead(rn, &count, &srcBuf[512]);
srcPtr = srcPtr - srcSize + 512;
}
}
FSClose(rn);
ShowCursor();
}
abort(s)
char *s;
{
ParamText(s, "", "", "");
StopAlert(257, (ProcPtr)NIL);
ExitToShell();
}
22415!Funky!Stuff!
echo x - slide.rc
cat > slide.rc << '22415!Funky!Stuff!'
* input for resource compiler
*
slide.rsrc
Type CCOM = STR
,0
Slide Version 1.0 -- Feb 85
Type ICN# = HEXA
,128(32)
* little picture of the C
00000e00 00001000 00001000 00001000 00000e00 00e00000 1fbe001e f003f0e0
80001f80 00000000 00000000 00008000 0300803e 3cf0c3c0 c01ce000 0000f000
0000f800 00008000 0003fc00 0001f800 3fc0000e e0780078 000fffc0 00000000
00000000 00000000 1fc0007e 303c03c0 e007fe00 00000000 00000000 00000000
* mask
ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
Type FREF = HEXA
,128(32)
* APPL uses loc icon 0, no tagalongs
4150504c
0000
00
Type BNDL = HEXA
,128(32)
* owner CCOM 0
43434F4D0000
* 2 types
0001
* ICN#, 1 entry, loc 0 to glob 128
49434e230000
Type ALRT
,257
60 81 180 431
258
5555
* DITL for the ALRT
* First the ID (DITL,258), then the number of items which follow.
Type DITL
,258
2
* These buttons are 20 hi by 70 wide
BtnItem Enabled
90 13 110 83
Abort
StatText Disabled
10 60 70 350
^0^1^2^3
Type CODE
b.out,0
22415!Funky!Stuff!
echo x - Makefile
cat > Makefile << '22415!Funky!Stuff!'
.SUFFIXES: .rsrc .b
.c.b:
cc68 -z -c $<
.s.b:
cc68 -c $<
.b.rsrc:
cc68 -z -m $<
rmaker $*.rc
# tohex <$*.rsrc >$*.dl
all: slide.rsrc
slide.rsrc: slide.b slide.rc
clean:
rm *.b *.rsrc b.out *.dl
22415!Funky!Stuff!
echo x - slide.hcx
cat > slide.hcx << '22415!Funky!Stuff!'
(This file must be converted with BinHex.Hex)
#APPLCCOM$0000
***COMPRESSED
***RESOURCE FORK
( 0 !< 6 +8
(
(
(
(
(
(
(
( !P;4VQI9&4@5F5R<VEO;B Q+C @+2T@1F5B(#@U
( 0 X 0 $ ! . #@ ?O@ >
(/ #\." !^ ( P" /CSPP\# '.
( \ /@ " #_ ?@ /\ #N!X '@ #__
( !_ 'XP/ / X ?^
( #_____________________________________
(/__________________________________________
(/__________________________________________
(/__________________________________________
(/____\ (05!03 .0T-/30 %)0TXC
( # \ %$ M &O 0)550 "P 0 6@ -
( !N %,$!D%B;W)T "@ \ $8!7H@(7C!>,5XR
(%XS & "@ ( " " #\\ &I\
(!/0 6 L @ #RX
( 0_K_TB()58$D6=7!
(!X2 H< #_0A+3D@R' _V< !A*AV8 HD6=7!
(& _][CG]7'8 #_UD)GJ71*'V< ! _/ !J<AP 4J
(&8 __PCS0, "I.N0, )0J>0P "JM] 3E;^Q$CN
( _L1![O\R(\@# !/((#D' !/(!H #*+P!.N00
( >T6(].N0, !]1.N0, ".1.N0, "11.N0, "71.N08
( DD+SP 3KD& DT6(]![O[&(\@# !-T+SD# !-T
($ZY! 'Q%B/+SD# !*(+SD# !*(3KD* @$4(\O/
( $ +SP $ 3KD' @D4(\O/ " !.N00 "%18CR/
( L $OQA * +SP 80 $MEB/3KD# ED+SP& !+L
("\\_____TZY! (]%"/(\ / !.$80Q@ /_<8 DY>
($YU3E8 $CN $JY!P 3A&8 9@ &N,#D& !+L
($C 8 !?B Y" 2[@* _V .I.N0, "'12N0,
(!-P(#D# !-PL+D% !+H;0 "$ZY P (="\Y" 3<&$
( 0F6(]@ $@4[D% !-P; "$*Y P 3<"\Y" 3<&$
( 0&6(]@ $ 4KD% !*(8 *%.Y!P 2B& !X&N0
( 0!P 2B& ! $N0 ! % !*(8 B\Y P 2B"\Y
( , $HA.N08 " 10CV +@@.0< $\@&@ +HO $ZY
( 8 "!18CV )X@.0< $\@&@ ,(O $ZY!@ (%%B/
(& (0@.0< $\@&@ +(O $ZY/@ (%%B/8 :@R
( &)G /^J;@ *@R "&< _S0,@ "!G /[^
( R 1F< _U0,@ %1G /]8#( !F9P#_+ R
( &=G /^>#( !Q9P#^Q@R =&< _Q@,@
( !W9P#_9F #XC_ $% !-X8 ,$*Y%P 3>&
( F!( !#( $8@ %M! ,#L !D[[ +_SO_<
(/YJ K^:B\\ P 3@$ZY! )!%B/+SP# !-\+SP# !.
($ZY!P (1%"/2H!F !2(_D" !. P 3?$JY!0 3>&<
( B,#D% !. 2, O # Y!0 3@DC +P!.N08 "#10CV
( >,#D% !. 2, O # Y!0 3@DC +P!.N1 ""10CV
( "3EY.=4Y6__Q([@" __PO/ O/ , $XA.N0<
( B$4(]*@&< XO/ 8 $HQA -X6(\C_ ( $P $ !,R
('X!,#D' !.P2,"^@&X ,0SQP8 $SPO/ O/ ,
(!,@3KD' B44(]*@&< XO/ D $IAA ,R6(\O/
( $+SP# !*G+SP# !- 3KD+ !%,W_P ,2H!G &
(& &I*.08 $P!O :##D , 8 $P%M .##D .0<
(!,!;P !F $00.04 $P!(@$C !H ( !,!($!"$"\\
( " @.0, $NA2N00 $NCK@-"Y! 2_"\ +SP# !,
($ZY"0 (9-_\ #%*'8 #_,DJY!0 2Z&X XO/ 8
(!*L80 "AEB/+SP& 6H+SP @+SD# !+H+SD# !+\
($ZY,P /(-_\ $& ),[@" __Q.7DYU3E;_\$CN
("#@__!"A2P%+@8@+@ (4H J0$H59P 3@P5 "YF ,
("P'0H=2A6 #8,%0 P;0 "@P5 #EO &8 *"\\
( HO!TZY70 1E%"/$A5(@4C!!($ PT($N %*-
(& _[!*A6< X@!G(0XZ" AV ! @!W(0XZ!@ &
(& ),[B#@__!.7DYU3E;_^$CN #_^"\N AA /]<
(%B/+4#__"\N QA /].6(\M0/_X("[__+"N__AF (
($* 8 'B N__RPKO_X;P "' !8 #'#_8 !F
( "3EY.=4Y6^Z1([@ ^Z1(;ONH+SP ("X ".N
(-"Y!0 2_%* +P!.N0D "*3?_ Q*@&< XO/!
(!+380 !)EB/+7P ( ^Z1(;OP 2&[[I"\N^ZA.N1
( C$W_P ,+7P 0 ^Z1(;OP 2&[[I"\N^ZA.N0H
( C$W_P ,0>[\ "U(^[1.N1H !^0M? 'IP#[L$*N
( (#*X %5 AL "D0>[[N"U(^ZPO/ $A(;ONL
($AN^[1.N0T "-3?_ PO/ $ O+ONP2&[[N$ZY
(!@ "&3?_ P&K@ $#[L$'N_@ @+ONTL(AC !*
("\\ " $AN_ !(;OX 3KD0 ADW_P ,+7P (
(/ND2&[^ $AN^Z0O+ONH3KD3 C$W_P ,("[[M 2
( @ M0/NT4JX "& _U0O+ONH3KD$ BT6(].N0P
( ?T8 DY>3G5.5@ 2.X +SP# !+<+SP# !+;
("\\!0 2VB\N A.N0P "53?_ ! O/ O/
( $!3KD$ E$4(].N0@ "'1@ "3EY.=0 3KD( F$
( !"H;DYQ !.N0@ "80 0J&].<0 3KD( F$
( "H4$YQ !.N0@ "80 J%).<0 3KD( F$
( "H4TYQ !.N0@ "80 !(J)M.<0 3KD( F$
( !"HG4YQ !.N0@ "80 !(J)-.<0 3KD( F$
( $BHD4YQ !.N0@ "80 $EJ(%.<0 3KD$ F$
( !($ NN !.N00 "80 20! ,A@ 3KD( F$
( "I]$YQ !.N00 "80 %1! .'@ 3KD$ F$
( 5$$ Z" !.N00 "80 Q9! -2 3KD$ F$
( D$ TL !.N00 "80 2)! -A 3KD( F$
( I"HT$YQ !.N0@ "80 J/Y.<0 3KD( F$
( (VI<$YQ !.N0@ "80 0J7).<0 3KD( F$
( "I$DYQ !.N0@ "80 J<Q.<0 3KD( F$
( !"I>TYQ !.N0@ "80 ")J89.<0 3KD( F$
( -MBIBTYQ !.N0@ "80 J;1.<0 3KD2 F$
( "I,$YQ !.5O\ 2.X@!/_X0B[_ #U\3OG_"BU\
(%4 "DS_#$ON_Q!![@ ,(FX !" 9/7Q.<?\$+5'_!FT&
(#U\3KG_!"( YH@"00 '/4'_ EF/,@#FB )! ?203([
(! &3OL0 @!B ! &@ X !X ,@ 6 !8B&#\!8-A2+O\
("\88- B6!(9X8D2&>&)$AGAB1(9+P%@O"(8'P%@MB(8
( B! !AG!"\!8*HB04*"(@U2C1K99PI2@@Q" .9M]%&-
(")!$H(O 6",*GD; J3N[_!$HN_P!G Z2^X #")N
( $)!GFBEF-6(TR N:* D$ !V<># $ !FWN9PPO%4ZY
( #.Q8CV#@(E4P$4C (H!@UC(N_P+203([$ 9.^Q "
( > ! %@ > !X &@ > !XP'TC 8 @@'V $0H 0'TSN
(" $__A.7EB/3G4B7R!?H"U@ !2H"Q@ !.(E\@3Z 9
(-[\ Y@ ^H1HO2 $8 -B)?(%^@&V "HO>0
( *J 1@ H+WD *F 1@ <(E\@'Z!,+H!@ $
( < O"3/ 5DYU< !@ /_T(E\@'Z!-8 #_Z* <
("] 1@ /_H(E\@'Z! 8 #_U")?H1TB""!?(($N@&
(/_"+WD $( 1@ /_"(E\@7Z!+8 #_KB)?(%^@+6
(/^D('D $P0_D $4( B0D70,L()E&B)1(\@ $4
("* 0A$B>0 JHBB"""T:D #$YU(E\@'Z$>+HA@ /]F
(")?(%^@'V _UPB7R!?H"$N@&H A"EV _TI@ /]$
(")?(!\@7Z @8 #_.B)?(%^A2"Z(8 #_+B)?(!^A(BZ(
(& _R(B7R!?H"-@ /\8(E\@7Z E+H!J (0I=@ /\&
(& _P B7R ?(%^@)& _O8B7R!?H28NB& _NHB7R!?
(*$H+HA@ /[<(E\@7Z K8 #^U")?(!\@7Z G8 #^R")?
("!?H"E@ /Z^(E\@7Z J8 #^M")?(%^@26 _JHB7R!?
(*!*8 #^H* V8 #^G"(?(!\B7R!?H"XB06 _HH_>0
( !6 1.=2]Y #* $3G4B7T)7(#D ,P9P #+"Y
( RAF &/KP! $[1(&\ !#)\ 0&$H 9PH2$!#
(! !4HE@\B )(&\ !!" ( A.=2!O 0B2$* $!A3@&T*
(!+89@)3B5'(__A"$2 O 1.=2!O 1"@! 0T<!2B$(0
(" O 12@$YU("\ ! C !A.=4Y6_\Y![O_.,6X " 8
(* !/4 "DY>(%]4CT[03E;_SD'N_\XA;@ . !(Q;@ ,
( 60B@ &D(H !M"J <H B;@ (,J@ &#U !).7B!?
(-_\ "D[0 !"@6 1R 4Y6_\Y![O_.(6X " @
(#%N ! &")N PA40 D0F@ +$*H "Y* 68 B@ F
( $H ,]0 2(FX #"*H "A.7B)?W_P *3M$ "(\
(* 3G5@ $0(CR@ 4YU8 !!B(\H ).=6 /PB/* #
($YU8 \B(\H 1.=6 .@B/* %3G5@ #>(CR@!DYU
(& -0B/* '3G5@ #*(CR@%$YU8 P"(\H!5.=6
( "V(CR@%TYU8 K"(\H#5.=6 *(B/* 33G5@ "8
("(\H A.=6 (XB/* )3G5@ "$(CR@"DYU8 >B(\
(* +3G5@ !P(CR@#$YU8 9B(\H U.=6 %PB/*!!
($YU8 4B(\H$).=6 $@B/*!#3G5@ ^(CR@$$YU
(& #0B/* 13G5@ J(CR@$DYU8 ("(\H!A.=6
( 6(CR@1$YU8 #"(\H$5.=6 (B7Q ?(%]G (
( "!! "\!3I=8CSZ 3M$B7R!?H \^@$[1(E\@7Z .
(#Z 3M$ $Y6 !([@ C[@ 4! 2X"/N ! ' !+D
("\N ! O+@ ,3KD2 !)84(_0K@ (+P O+@ (8090CTY>
($YU3E;_X$CN,(#_X"XY$0 2Y" N R0K@ (+4#_[+"'
(&, 50@!^. +P O+O_L3KD& !'D4(\O "\'3KDB !&4
(%"/+4#_[-"N @M0/_X+4#_]"IN @@+@ ,D(<H0& 0
()^N__@O+O_X2%5A $44(^[[O_X9 B"\N__A(52!Y
("( $N!.D%"/+4#_\&?22J[_\&U<8&B[[O_X9DA(5-^N
(/_T+R[_]$A580 !!M_\ #-^N__@J;O_X8$)(5"\N
(/_T('ED !+@3I!0CRU __!F)$A4WZ[_]"\N__1A "B
(%"/8!I(5$A580 EE"/F<?;QV _WQ*KO_P;IJ9Q[GN
(/_T8KB[[O_X9DP@+O_XD*X ""(N R2KO_TL(%M'"\N
( ,("[_]-"'+P!A /[64(\M;O_X Q@ /[:+R[_^"\N
( (80#^OE"/("[_]-"'+4 "& _KY(59^N__@O+O_X
($A484S?_ R?KO_T*&[_]& _OQ,[C" _^!.7DYU
($Y6__!([C" __ M>1@ $N3__"IN @H;@ ,'A4:U!C'
(%.N__QF]$SN,(#_\$Y>3G5.5O_L2.XX /_L+7F5 !+D
(/_X*FX ""AN PF;@ 0$!5(@$C +4#__!K3%M08[O__
(%.N__AFZ$SN. #_[$Y>3G4 $Y6__1([C" __0J;@ (
("AN PN+@ 08 Y"@& B$!6P'&8(2AUG\E.';/)*AVWJ
(! 52(!(P%.,$A1(@4C!D(%,[C" __1.7DYU3E8 $CG
(#@ *#P !)"X "&P 9$@D2$)BX #&P 9$@T2$
($* , + PS("2$+$PTA#PL/2@DA!0D'0@4J$; !$2
($S? !Q.7DYU !.5@ 2.<X " N @F "(N PH 0R!
( ! !L&$A H /__@,$T # #@,%(0# "2$!@-N*
(.*! H!_____ H%_____#($ 0 ;.B P0* #__R0
("\ +P1.N?\ $EA0C[: ; )3@B "3-\ '$Y>3G4 $Y6
( 2.<P "0N @F+@ ,0H P L##,@)(0L3#2$/"P]*"
($A!0D'0@4S? Q.7DYU FYO('9O;&EN9F\_ &=E
('1F:6YF;R!E<G)O<@!03E1' &-A;B=T(&9I;F0@86YY
("!N=6UB97)E9"!-86-086EN="!F:6QE<P!F<V]P96X
(
(
(
(
(
(
(
(
(
(
(
(
( < +8 !D-#
($]- .DE#3B, !&1E)%1@ %)"3D1, 7D%,
(%)4 :D1)5$P !V0T]$10 ! (( /__
( (#__R " (#__R 20 (#__R
( $P $!__\ %" $"__\ %2
%O__( !@@ ?__- !G@
***END OF DATA
***CRC:570E
22415!Funky!Stuff!
echo x - slideblank.hcx
cat > slideblank.hcx << '22415!Funky!Stuff!'
(This file must be converted with BinHex.Hex)
#PNTGMPNT$0000
***COMPRESSED
***DATA FORK
( +__________]W_=__=_W?_W7?==]UWW7>J5:I5
(*I5JE55_U7_5?]5_ZJJJJJJJJJJ[MV[=^[=NW>(B(B(
((B(B(BQ, ,;V, ,C8 0 B !"$ $_XB(B/^(B(C_@("
(/\(" B (! ( "! @ @D0Y1((! 0'X=")'
((\7(G%5H$! 50H$!!0B290IDD0HOP"_O["PL+
( " @ @ ( (@ (@"( "( B"*((H@BB"*J *H
(*H J@#_ /\ _P#_ !$B1(@1(D2(_P /\ ! @0(
(! @0("J ( B " /^ @(" @(" "!PBP8 ! @2(%")!
((@ J@! H ! H .$2# , @$!@(!!/@@(%.,0(%2J
(/\"! AWB8^/=YCX^ (%"I5*A0(
(
(
(
(
(
(
( #@PP ! X#Z # PP ! 8#Z " P@ @/H N0#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z /H
( " R0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H N0 @,( (#Z # PP ! 8#Z
( X,, 0. ^@ #\/_ /CY +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y +D N0"Y +D N0"Y +D N0"Y +D N0"Y +D
(+D N0"Y ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
(,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$ $#Z ,$
( ! ^@#! ! ^@#! ! ^@#! ! ^@#! ! ^@#! !
(/H P0 0/H P0 0/H P0 0/H P0 0/H P0 0/H
***END OF DATA
***CRC:9297
22415!Funky!Stuff!
-------info-mac@uw-beaver (02/11/85)
From: "Charlotte D. Mooers" <postmaster@CSNET-SH.ARPA>
Did you really mean to send this to me?
---Charlotte
Date: Sun 10 Feb 85 14:34:09-PST
To: post-net-sources-mac@UW-BEAVER.ARPA, postmaster@CSNET-SH.ARPA
From: John Mark Agosta <INFO-MAC-REQUEST@SUMEX-AIM.ARPA>
Subject: Slide.shar program source from info-mac,Feb 8
#! /bin/sh
: This is a shar archive. Extract with sh, not csh.
echo x - slide.doc
cat > slide.doc << '22415!Funky!Stuff!'
At Stanford we use a video projector at our user group meetings ...