home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Information / Digests / Alt-Sources-Mac / digest-07-94 < prev    next >
Encoding:
Text File  |  1994-12-08  |  36.5 KB  |  1,018 lines  |  [TEXT/R*ch]

  1. alt.sources.mac digest #7-94                      7/8/94
  2.  
  3. Today's Contents:
  4.  
  5.   [!] administrivia
  6.  
  7.   [*] 3dcdef.cpt.hqx
  8.   [*] battleship.cpt.hqx
  9.   [*] cdicon.cpt.hqx
  10.   [*] contours.cpt.hqx
  11.   [*] energybeaver.cpt.hqx
  12.   [*] genericlist.cpt.hqx
  13.   [*] grayimage.cpt.hqx
  14.   [*] loglib.cpt.hqx
  15.   [*] menuslide.cpt.hqx
  16.   [*] moviescroll.cpt.hqx
  17.   [*] mungeimage.cpt.hqx
  18.   [*] newbounce.cpt.hqx
  19.   [*] newdisplay.cpt.hqx
  20.   [*] newinterval.cpt.hqx
  21.   [*] newmorse.cpt.hqx
  22.   [*] newrae.cpt.hqx
  23.   [*] newssplash.cpt.hqx
  24.   [*] newstringart.cpt.hqx
  25.   [*] plotmgr.cpt.hqx
  26.   [*] rotateppc.cpt.hqx
  27.   [*] terminal.cpt.hqx
  28.   [*] username.cpt.hqx
  29.   [*] uucode.cpt.hqx
  30.   
  31.   [#] bcd2float
  32.   [#] blit2scrn
  33.   [#] blitdouble
  34.   [#] crc32b
  35.   [#] cdremoteid
  36.   [#] coderes
  37.   [#] coderes2
  38.   [#] controlstrip.h
  39.   [#] controlstrip.p
  40.   [#] convertcomments
  41.   [#] dialogpict
  42.   [#] drawellipse
  43.   [#] dticons
  44.   [#] enumstr
  45.   [#] eyedrop
  46.   [#] fasteryet
  47.   [#] fsreadline
  48.   [#] fsprefresh
  49.   [#] getdinfo
  50.   [#] getwdinfo
  51.   [#] gxperspective
  52.   [#] makepictfile
  53.   [#] mkfoldicon
  54.   [#] modalscrollc
  55.   [#] modalscrollp
  56.   [#] noforcequit
  57.   [#] openresfile
  58.   [#] pbparse
  59.   [#] prefsp
  60.   [#] regname
  61.   [#] rotpsig2
  62.   [#] savepict
  63.   [#] stkframes
  64.   [#] upppatch
  65.   
  66.   [!] Who's Who List
  67.   [!] Archive organization
  68.   
  69.   The alt.sources.mac archive is at ftpbio.bgsu.edu
  70. (129.1.252.66) in the /ftp/pub/alt.sources.mac directory.  
  71. Files listed with an [*] before them are in the main
  72. directory.  Files listed with an [#] in front of them
  73. are in the /ftp/pub/alt.sources.mac/00snippet directory.
  74. Scripts are stored in the /ftp/pub/alt.sources.mac/scripts
  75. directory.
  76.  
  77.   Also stored at the archive site are the FAQs for the
  78. Mac newsgroups in the /ftp/pub directory.  Postings to
  79. comp.sources.mac are archived in the /ftp/pub/comp.sources.mac
  80. directory.  The alt.sources.mac digests are archived in the
  81. /ftp/pub/digests directory.
  82.  
  83.   The alt.sources.mac newsgroup is for the distribution of
  84. sources only.
  85.  
  86. ************************************************************
  87.  
  88. From: dnebing@andy.bgsu.edu (Dave Nebinger)
  89. Subject: Administrivia
  90.  
  91.   Welcome to the alt.sources.mac digest.  Currently, I am
  92. the moderator of the archive.  I thought I would post this
  93. message to show everyone what has been accumulating at the
  94. archive site.
  95.  
  96.   Thanks to all of those people who responded to the survey
  97. that went out concerning the state of the alt.sources.mac
  98. archive.  All of the comments were good, and that makes me
  99. a happy camper!
  100.  
  101.   In the survey, I stated that the number of files has been
  102. growing steadily and that the size of the directories was
  103. getting difficult to manage.  So I asked for some suggestions
  104. to segment the archive into a reasonable format.  The best
  105. suggestion I got was to format the archive in volumes like
  106. the rest of the source groups do.  The suggestions to segment
  107. the packages into types (applications,utils,etc.) gets kinda
  108. messy when you are dealing with those borderline cases, so
  109. I decided against that suggestion.  Instead, I chose to
  110. segment the archive into volumes.
  111.  
  112.   So, that's what I have done.  The volumes are separated
  113. corresponding to the digests that have been posted previously.
  114. So, as this is Digest #7, all of the packages listed below
  115. are in the /ftp/pub/alt.sources.mac/vol-07 directory.
  116.  
  117.   Snippets are handled a little differently, however.  The
  118. snippets have been segmented, but not according to the
  119. digest numbers.  I have segmented the snippets into volumes
  120. representing six months each.  As this is the (about) seventh
  121. month in the life of the alt.sources.mac newsgroup, the
  122. snippets listed below are in the 
  123. /ftp/pub/alt.sources.mac/snippets-v02 directory.
  124.  
  125.   I hope that this new arrangement won't be too confusing
  126. or hard to get used to.
  127.  
  128.  
  129.   Any other suggestions are welcome and encouraged.
  130.   
  131.   Dave Nebinger (dnebing@andy.bgsu.edu)
  132.   
  133. ************************************************************
  134.  
  135. From: zig@wc.novell.com (Zig Zichterman)
  136. Subject: Re: 3D Controls?
  137.  
  138. Here's the CDEF again. Same CDEF, but changed readme. I had a
  139. typo in my email address in the original readme.
  140.  
  141. --Zig Zichterman
  142. ziggr@aol.com
  143.  
  144. [archived as: /ftp/pub/alt.sources.mac/vol-07/3dcdef.cpt.hqx]
  145. ===============================================================
  146.  
  147. From: kenlong@netcom.com (Ken Long)
  148. Subject: Battleship2.1.c
  149.  
  150. Battleship 2.1
  151. by Matthew Kavalauskas
  152.  
  153. This is the source code for Battleship 2.1 for the Macintosh.  It
  154. is done using THINK C version 5.0.  If you make any
  155. improvements/changes, he would love to see them.
  156.  
  157. He's at kaval@aol.com
  158.  
  159. -Ken-
  160.  
  161. [archived as: /ftp/pub/alt.sources.mac/vol-07/battleship.cpt.hqx]
  162. ===============================================================
  163.  
  164. From: peter@ncrpda.curtin.edu.au (Peter N Lewis)
  165. Subject: asm - CDIconKiller 1.0.0
  166.  
  167. CDIconKiller 1.0.0 Copyright 1994 Quinn & Peter N Lewis
  168.  
  169. Install this INIT to suppress custom icons on CD-ROM drives.
  170. This tends to speed up your CD-ROMs by a factor of about
  171. a zillion.
  172.  
  173. Caveats
  174.   Only works for Apple's CD-ROM driver.
  175.   Works under System 6 :-)
  176.  
  177. Warning: This program was written in 4 hours.
  178.  
  179. Quinn <quinn@cs.uwa.edu.au>
  180. Peter N Lewis <peter.lewis@info.curtin.edu.au>
  181.  
  182. [archived as: /ftp/pub/alt.sources.mac/vol-07/cdicon.cpt.hqx]
  183. ===============================================================
  184.  
  185. From: kenlong@netcom.com (Ken Long)
  186. Subject: Contours 1.0b (P)
  187.  
  188. I had a request for this one, since I mentioned it, so I thought I'd put 
  189. it here so anyone could snag it.
  190.  
  191. It's supposed to draw 2D contours according to a raster file.  But it 
  192. came with no raster files, and I haven't waded through the manual to see 
  193. how it's supposed to work.
  194.  
  195. It's Pascal source, but came with no project.  Get the .rsrc file out of
  196. the built ap. (new programers:  Select the ap.(in the Finder), hit
  197. Comman-D, change copy's type to 'rsrc' and creator to 'RSED', open with
  198. ResEdit, dump 'CODE' and other non-project resources, quit ResEdit, save
  199. changes, rename to match project name.)
  200.  
  201. Note:  There are Contour applications in the Statistics1.cpt.hqx and 
  202. Statistics4.cpt.hqx files at ftp mrcnext.cso.uiuc.edu /pub/mac, although 
  203. no source.  Maybe one is a later version of this (1988) one?
  204.  
  205. -Ken-
  206.  
  207. [archived as: /ftp/pub/alt.sources.mac/vol-07/contours.cpt.hqx]
  208. ===============================================================
  209.  
  210. From: tzs@u.washington.edu (Tim Smith)
  211. Subject: How to tell Energy Saver to turn the monitor on or off
  212.  
  213. A few months ago, I spent a while disassembling Apple's Energy Saver
  214. control panel to figure out how it worked.  I needed to know this
  215. because I wanted to make it work for me under A/UX.  That effort was
  216. a success, allowing me to create an extension, Energy Beaver, that
  217. loads before Energy Saver under A/UX, and diddles a few things so
  218. that Energy Saver will be happy.
  219.  
  220. [archived as: /ftp/pub/alt.sources.mac/vol-07/energybeaver.cpt.hqx]
  221. ===============================================================
  222.  
  223. From: kppomaki@jeeves.uwaterloo.ca (Keith Pomakis)
  224. Subject: Generic List Library for C  --  documentation
  225.  
  226.         Generic List Library
  227.  
  228.         by Keith Pomakis
  229.         kppomaki@jeeves.uwaterloo.ca
  230.  
  231.         Spring, 1994
  232.  
  233.  
  234. ****  Documentation  ****
  235.  
  236. PURPOSE AND HISTORY
  237.  
  238. The basic data structures of lists, stacks and queues are fundamental to
  239. programming at almost every level.  However, because of the nature of the C
  240. programming language, it is difficult to program a set of generic list
  241. functions without sacrificing simplicity.  Therefore, C programmers often
  242. find themselves programming specialized list functions over and over again.
  243. This is not only a large waste of effort, but can also be the source of many
  244. errors since each individual implementation is often tested only
  245. haphazardly.
  246.  
  247. After countless assignments and projects (both academic and personal) in
  248. which I found myself constantly rewriting the same list manipulation
  249. functions in slightly different contexts, I figured it was about time to
  250. take the effort and program an efficient, flexible, and easy-to-use library
  251. of generic list functions.  And that is exactly what I did!
  252.  
  253. It is my hope that, in distributing this library, others will be able to use
  254. what I've put together to increase their own programming productivity.
  255.  
  256. [archived as: /ftp/pub/alt.sources.mac/vol-07/genericlist.cpt.hqx]
  257. ===============================================================
  258.  
  259.  [Moderator's note: Kiselyov posted thes to comp.sources.misc,
  260.   but he states that it also compiles for the mac, so I included
  261.   it in the archive.]
  262.   
  263. From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
  264. Subject: v43i051:  grayimage - C++ classlib for generic processing of grayscale images, Part01/05
  265.  
  266. Submitted-by: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
  267. Posting-number: Volume 43, Issue 51
  268. Archive-name: grayimage/part01
  269. Environment: C++, G++ 2.2.2+, Symantec 6.0.1+, Sun, HP, Mac, Sequent
  270.  
  271. grayimage_classlib is a C++ class library to do a generic
  272. processing of grayscale images.  It is one part of my image
  273. compression code I've been messing with for almost 3 years. This part
  274. is general enough to be of some interest to folks at large (I
  275. hope). It lets you do a variety of different operations on images,
  276. rectangular areas, etc: say, add two images, compute their "scalar
  277. product", modify pixel values over the entire image or some
  278. rectangular area of it in a _variety_ of ways, equalize the image
  279. histogram, stuff like that.  One function, shift_clip_add(), does
  280. actually the filtration (convolution). Morphological filtration is
  281. implemented as well. I tried to make the code as optimal as I could
  282. think of (without getting into assembly -:). The package can
  283. read/write XWD, Group G TIFF and PGM file formats; actually, the
  284. package understands which file format it's asked to read and selects
  285. the appropriate method automatically.  I demonstrated pieces at Data
  286. Compression Conferences, and some people suggested me submit it into
  287. the public domain.
  288.  
  289. [archived as: /ftp/pub/alt.sources.mac/vol-07/grayimage.cpt.hqx]
  290. ===============================================================
  291.  
  292. From: dnebing@andy.bgsu.edu (Dave Nebinger)
  293. Subject: Log file routines
  294.  
  295. Here's a nice little, tiny, documented chunk of code for handling
  296. the creation and use of log files in your project.  It works great
  297. for those hard to debug items like bg-apps, inits, etc.
  298.  
  299. There are actually two different items here.  The first is a bugfix
  300. for the LogLib library that came out earlier.  The second item is
  301. new.  It is a component which implements the logging functions.
  302.  
  303. For those of you that don't know what a component is, here's a quick
  304. and dirty explanation.  Components are tiny extensions which the
  305. Component Manager takes care of.  All you, as a programmer, have to
  306. do is open the component and by using the value returned by the
  307. Component Manager you can use the library just like it was part of
  308. your application, yet the code doesn't exist in your app.  The
  309. Component Manager is part of QuickTime, AppleScript, and (supposedly)
  310. System 7.1 and up.
  311.  
  312. The code for the component and a test application showing how to use
  313. the component is included.  Also included are compiled versions of
  314. both so you can see how the component works (drop the component in
  315. the extension folder and restart before using the application).
  316.  
  317. The component is a full component which handles all of the Component
  318. Manager functions.  It also will draw it's own icon at startup time
  319. (Wow, cool! ;)
  320.  
  321. As part of the test application, there is also files called
  322. "Libsprintf.c/h" which are a standalone sprintf code (no ANSI/ANSI-small
  323. libs necessary!).  Read the beginning of the file for more info.
  324.  
  325. The code was written/compiled using Think C 7.0.3 with both the old headers
  326. and the new universal headers.  I took advantage of the fact that in
  327. "Mac #includes.c" for the universal headers there is a constant defined as
  328. NEW_HEADERS_AVAILABLE.  If you are using the universal headers with a
  329. different compiler that doesn't define this constant, just add the following
  330. line somewhere: #define NEW_HEADERS_AVAILABLE 1.  If you don't have
  331. the universal headers, you don't have anything to worry about.
  332.  
  333. This is all copyrighted to me (Dave Nebinger).  Feel free to email me with
  334. your questions and comments.  Also drop me a line if you plan to use
  335. the routines (I am just curious ;-)
  336.  
  337. [archived as: /ftp/pub/alt.sources.mac/vol-07/loglib.cpt.hqx]
  338. ===============================================================
  339.  
  340. From: hughf@cs.anu.edu.au (Hugh Fisher)
  341. Subject: Sliding the menu bar
  342.  
  343.   This is a little program I wrote to demonstrate a user interface idea, namely
  344.   sliding the menu bar when switching applications.
  345.  
  346. [archived as: /ftp/pub/alt.sources.mac/vol-07/menuslide.cpt.hqx]
  347. ===============================================================
  348.  
  349. From: kenlong@netcom.com (Ken Long)
  350. Subject: MovieScroll (C)
  351.  
  352. I little thing I tossed together in response to requests on c.s.m.p. for 
  353. source that scrolls text like a movie credits thing.
  354.  
  355. This does it, and does it nicely, but it's over a white TE background.  
  356. If anyone wants to modify and repost, with a fade-out/fade-in, and scroll 
  357. colored, styled text over a black background - before I do - please do.
  358.  
  359. In the meantime, this does the scroll.  I pasted in the styled text from 
  360. a word processor (into the 'styl' res.).  I tried it in 1bit mode and it 
  361. was okay.  I haven't tried it on any other machine that my LC.  Doesn't 
  362. really "call" any color routines, though, so it should work on any mac.
  363.  
  364. -Ken-
  365.  
  366. [archived as: /ftp/pub/alt.sources.mac/vol-07/moviescroll.cpt.hqx]
  367. ===============================================================
  368.  
  369. From: peter@ncrpda.curtin.edu.au (Peter N Lewis)
  370. Subject: pascal - MungeImage 1.1.0
  371.  
  372. MungeImage 1.1.0 © 1994 Quinn & Peter N Lewis
  373.  
  374. This mounts DiskCopy images as disk icons.
  375. It's free, do whatever you want with it.
  376.  
  377. To use image(s), drop them onto MungeImage.
  378.  
  379. To get rid of them, throw them in the trash.
  380.  
  381. Changes since 1.0.1:
  382.  
  383.   + Changed so MungeImage application quits immediately.
  384.       Therefore works with the Installer.
  385.       No foreground/background problems.
  386.   + Mounts disks by default read-only
  387.   + Option key to mount disks read/write.
  388.       Read/write disks are written back to the image file.
  389.   + Fixed several bugs
  390.  
  391. Warning: Version 1.0 was written in eight hours.  And v1.1 in 4.
  392.  
  393. Quinn <quinn@cs.uwa.edu.au>
  394. Peter N Lewis <peter.lewis@info.curtin.edu.au>
  395.  
  396. Do we get a gold star, Pete? [Mod Note: Pete said "Yep".]
  397.  
  398. [archived as: /ftp/pub/alt.sources.mac/vol-07/mungeimage.cpt.hqx]
  399. ===============================================================
  400.  
  401. From: kenlong@netcom.com (Ken Long)
  402. Subject: NewBounce-c
  403.  
  404. This is a revival of the old Steve hawley source for Bounce - a 
  405. screensaver much like Dave mark's FlyingLine.  It just goes about it a 
  406. little differently.
  407.  
  408. -Ken-
  409.  
  410. [archived as: /ftp/pub/alt.sources.mac/vol-07/newbounce.cpt.hqx]
  411. ===============================================================
  412.  
  413. From: kenlong@netcom.com (Ken Long)
  414. Subject: NewDisplay-c
  415.  
  416. No!  That's not "nude is play!"  NewDisplay is an update of Greg Corson's 
  417. old 1985 "TTY" like 'TEXT' file displayer application.  I hadn't gotten 
  418. it to werk right before, but when I did I saw that it was useful.  And 
  419. the source has teaching value for how to do such a thing: a "console" 
  420. type display without the ANSI console.
  421.  
  422. The original application, and thus the source, crashed with a full 
  423. freeze.  The only original included here is the Aztec C source.  I was 
  424. able to fix the source with a few pastes from MiniEdit - plus all the 
  425. character case corrections!
  426.  
  427. I forgot to check to see if it still needed ANSI library.  I think the 
  428. only ANSI call was to strcpy, which is now removed.
  429.  
  430. I also changed the .c file name AFTER I quit Think C, so you'll have to 
  431. handle that.
  432.  
  433. Enjoy!
  434.  
  435. -Ken-
  436.  
  437. [archived as: /ftp/pub/alt.sources.mac/vol-07/newdisplay.cpt.hqx]
  438. ===============================================================
  439.  
  440. From: kenlong@netcom.com (Ken Long)
  441. Subject: NewInterval-c
  442.  
  443. Another old C source "brought back from the dead" by Kenneth A. Long, at
  444. itty bitty bytes(tm)!
  445.  
  446. Original by Brad Needham, 25 May 1987.
  447.  
  448. Interval is a music student's program which plays synthesized tones
  449. while using music notation in a set of radio buttons and a graphic
  450. display.  I assume for familiarization with notation and tones. :)
  451.  
  452. The original application runs on System 6, on my LC, but I get an
  453. error 25 in System 7 with 32 bit on and an error -192 with it off.
  454.  
  455. The new one runs, but is buggy.  When you select "Student provides
  456. notes" (a checkbox in a menu) it may crash.
  457.  
  458. I set it to have the computer do everything, and set it to play
  459. harmonics, with "accidentals" (whatever they are) and it does the
  460. most.  But it gets its info from a table in the source, so there
  461. is only enough variety to keep me amuzed for a short time.  The fun
  462. part was getting it running.  That being done - although not 
  463. debugged - I'm on to other things.
  464.  
  465. But, as with most C source, there are things to be learned from it
  466. and useful routines someone may want to use in their code.
  467.  
  468. I also added some color icons.
  469.  
  470. Enjoy!
  471.  
  472. kenlong@netcom.com
  473. kenlong@aol.com
  474.  
  475. [archived as: /ftp/pub/alt.sources.mac/vol-07/newinterval.cpt.hqx]
  476. ===============================================================
  477.  
  478. From: kenlong@netcom.com (Ken Long)
  479. Subject: NewMorse-c
  480.  
  481. A revival of Brad Needham's 1987 C source for "Morse" - a morse code trainer.
  482.  
  483. This thing is slightly buggy, but not too bad.  That leaves something for 
  484. YOU to revive about it.
  485.  
  486. The original application errored and exited on my LC.  The new one seems 
  487. to run fine except when "sending" morse, when you hit the shift key there 
  488. is no differentiation on the interval of tone, so you cannot really send 
  489. separate letters easily.  You can do 'E' (.) and 'S' (...) and such, but 
  490. not an actual word.  Also, sometimes a Shift hit sticks, as far as the 
  491. program is concerned, so it generates a continuous tone.
  492.  
  493. One cool thing is it converts the Shift-down durations into a bitmap and 
  494. draws the tone (as a growing bar), so other "draw by sound" programs 
  495. could be developed from it.
  496.  
  497. Anyway, this one mostly works as is.  And HEY!  It's C source!
  498.  
  499. -Ken-
  500.  
  501. [archived as: /ftp/pub/alt.sources.mac/vol-07/newmorse.cpt.hqx]
  502. ===============================================================
  503.  
  504. From: kenlong@netcom.com (Ken Long)
  505. Subject: NewRae-c
  506.  
  507. Another old C source, brought back from the dead, by Kenneth A. Long, at 
  508. itty bitty bytes(tm)!
  509.  
  510. Rae was an old Steve Hawley source, from 1986.
  511.  
  512. What it does is put up a window, with a black fill, but a white line 
  513. inset from the sides and bottom.  Then, 16x16 "happy faces" (Steve was 
  514. into those) begin to fall, one at a time, from the top.  When they hit 
  515. the bottom, they bounce.  The bounce decays, as though by friction, until 
  516. the "marble" stops.  Then another one appears.  They just keep stacking 
  517. up as long as you don't click the mouse.
  518.  
  519. NewRae has a hot-wired window added.  The original worked, but after 
  520. Button () there were black areas all over the screen.
  521.  
  522. Next giration?  Color - ala "Blasto" - and clacking marble sounds.
  523. (pending interest and time, of course)
  524.  
  525. Enjoy!
  526.  
  527. -Ken-
  528.  
  529. [archived as: /ftp/pub/alt.sources.mac/vol-07/newrae.cpt.hqx]
  530. ===============================================================
  531.  
  532.  [Moderator's note: The archive also contains the two files that
  533.   Ken posted after the first submission.  The files in the archive
  534.   are not updated, that's left as an exercise for the user ;-) ]
  535.   
  536. From: kenlong@netcom.com (Ken Long)
  537. Subject: NewsSplash-c
  538.  
  539. A public domain demo of a "news flash" text splash screen,
  540. courtesy of Kenneth A. Long (kenlong@netcom.com).
  541. An itty bitty bytes(tm) production, for the benefit of anyone
  542. who wants use it.
  543.  
  544. What it does is put up a wide, short window, some 1pt. text appears in the
  545. center and scales up to 12pt.  It hangs for 3 seconds, then contiues to
  546. zoom "forward" until it goes off the edges.  Then the window closes.  If
  547. you want to see it again, it's the About Item in the Apple menu. 
  548.  
  549. This is basically just "Bullseye" with some things dumped and one routine
  550. added, and a resource file to back the addition. 
  551.  
  552. The routine was from the old Pascal source - File v1.1, by Cary Clark, 13 
  553. May 1985, which I ported to C.  The program was a simple text file 
  554. opening/saving program.  The about box was the only cool thing about the 
  555. whole program.
  556.  
  557. It's not the cleanest port in the world, but HEY!  It works!
  558.  
  559. I put a 3 tick delay in the scaling loop, to make the text arrival a 
  560. little more viewable.  The other 180 tick delay was originally 300 ticks.
  561.  
  562. Enjoy!
  563.  
  564. kenlong@netcom.com
  565. kenlong@aol.com
  566.  
  567. [archived as: /ftp/pub/alt.sources.mac/vol-07/newssplash.cpt.hqx]
  568. ===============================================================
  569.  
  570. From: kenlong@netcom.com (Ken Long)
  571. Subject: NewStringArt-c
  572.  
  573. Another old C source, "brought back from the dead," 
  574. by Kenneth A. Long, at itty bitty bytes.
  575.  
  576. Original source in Megamax C v.2 by Ron Hitchens, 13 September 1985.
  577.  
  578. There are two programs here.  One builds the 'stringnums.c' file, 
  579. by recursivly tapping from 12 available functions to create values,
  580. and writing them in the file.  This program is more or less a
  581. table compiler.  Interesting in and of itself.  The more interesting
  582. of the two.
  583.  
  584. The other program is the StringArt project.  It draws random sets
  585. of lines, based on the table it accesses.  Kinda slow.  Maybe 
  586. there's a delay call I didn't spot.  Lots slower than many
  587. screenSaver type programs, including FlyingLine.
  588.  
  589. The StringArt thing is nothing special.  Everybody, their brother,
  590. their sister and maybe even their Grandma may have put out some sort
  591. of screen saver. (I like Polygondrian :)
  592.  
  593. Enjoy!
  594.  
  595. kenlong@netcom.com
  596. kenlong@aol.com
  597.  
  598. [archived as: /ftp/pub/alt.sources.mac/vol-07/newstringart.cpt.hqx]
  599. ===============================================================
  600.  
  601.   [admin: The project file that Alex posted has been included into the
  602.           plotmanager.cpt.hqx file.  Dave]
  603.  
  604. From: kenlong@netcom.com (Ken Long)
  605. Subject: PlotManager (P)
  606.  
  607. This is a Think Pascal 4.0 project.  I removed the project file, itself, 
  608. because it was 237k and, therefore, must have contained objects.  Since I 
  609. do not have Think Pascal, that was the only way I had to reduce the file 
  610. size.
  611.  
  612. If someone gets this, and compiles it, please post a built application so 
  613. us C guys can see how this is.  I have a port started, but it's so huge 
  614. it would be good to try the ap. to see if it's going to be worth it.
  615.  
  616. The following in the ReadMeFirst doc from the source set.
  617.  
  618. -Ken-
  619. -------------------------------------------------------------------------
  620.  
  621. From: alex@track.cslab.tuwien.ac.at (Alex Riegler)
  622. Subject: PlotManager.proj
  623.  
  624. This is the (empty) project file for the PlotManager.
  625. Thanks to Ken for posting the source files!
  626.  
  627. - Alex
  628.  
  629. -------------------------------------------------------------------------
  630.  PlotManager 2.53b
  631.  
  632. The Archaeological Plotting Program by William Ferris
  633.  
  634. Western Heritage Services 563 5th Avenue North Saskatoon,
  635. Saskatchewan  Canada, S7K 2R1   A little over a year ago I bought
  636. my first Mac, and with it my first  Pascal Language, Think Pascal
  637. 3.0.  What I wanted to do was design a  plotting program for
  638. archaeological data, especially data generated  by a cataloging
  639. program called MacADEM (written by Terry Gibson also  of Western
  640. Heritage).
  641.  
  642. In Western Canada MacADEM was become a standard method for
  643. handling  archaeological data, Terry felt that the program needed
  644. some better  display and analysis tools, knew I was looking around
  645. for a project  and with some discussion PlotManager was born. 
  646. This program was an  in-house application but has undergone some
  647. rigourous discussion (most  of which will be in the next version).
  648.  
  649. I offer this up as a partial payback for all the source code that
  650. I've  downloaded.  Such source code provides invaluable
  651. information on how  and why to do things, it is often the best way
  652. to learn and understand. This program is perhaps the most finely
  653. crafted product but it all  works (more or less it is a little
  654. weak on error checking). I've  included the entire Think Pascal
  655. project and resources along with  some sample data files to show
  656. how data is formated.  This version  2.53b was the original B/W
  657. version, it runs on all Mac's, System 6  and 7.  It is currently a
  658. Think Pascal 4.0 project.  I am currently  updating this program
  659. to include new routines and a better Mac  interface, also I am
  660. working on a color version. 
  661.  
  662. I must acknowledge that one unit was taken from an article from
  663. MacTutor  Vol 7, No.9 September 1991 called 'Meter Windows' by
  664. Walt Davis.  I modified this unit slightly to accomdate my program
  665. but it remains essentially the same. 
  666.  
  667. [archived as: /ftp/pub/alt.sources.mac/vol-07/plotmgr.cpt.hqx]
  668. ===============================================================
  669.  
  670. From: Craig Kloeden <craig@raru.adelaide.edu.au>
  671. Subject: RotatePPC 0.1d1
  672.  
  673. RotatePPC 0.1d1
  674. ===============
  675.  
  676. This is a Power Macintosh only program that reads a set of
  677. 3-dimensional points and lines and plots them in a window.
  678. The image can then be rotated with the mouse in real time.
  679.  
  680. The provided source code demonstates a basic PPC C program
  681. that can handle the required apple events, set up and use
  682. an offscreen GWorld, get a file using StandardFile and
  683. read that file with standard C routines.
  684.  
  685. The resource file contains code that will put up an alert
  686. on non-PPC machines and quit.
  687.  
  688. The project file is for the Metrowerks PPC C DR/3 compiler.
  689.  
  690. Notes
  691. -----
  692.  
  693. A Power Macintosh 6100 can handle 500 input lines reasonably
  694. comfortably.
  695.  
  696. The executable is compiled for a maximum of 2500 input lines.
  697.  
  698. This program and the source are free and I take no responsibility
  699. if it kills your machine or drives you mad.
  700.  
  701. E-mail me if you find a use for it or come up with a killer
  702. set of points/lines. I am also interested in other methods for
  703. rotating 3d points (esp the trackball rotation).
  704.  
  705. [archived as: /ftp/pub/alt.sources.mac/vol-07/rotateppc.cpt.hqx]
  706. ===============================================================
  707.  
  708. From: kenlong@netcom.com (Ken Long)
  709. Subject: Terminal 2.2 (C)
  710.  
  711. This is Erny Tontlinger's Terminal 2.2 and Think C 5 source package.  He 
  712. wanted a terminal program he could live with so he wrote this one and then 
  713. made it free to the rest of us - source and all!  Has a 90k doc.  I 
  714. haven't tried the program, other than just seeing if it ran on MY Mac, 
  715. which it does.
  716.  
  717. Any of you seeking terminal, serial, transfer protocol, even BBS source, 
  718. there's a little (or a lot) of it in this.
  719.  
  720. -Ken-
  721.  
  722. [archived as: /ftp/pub/alt.sources.mac/vol-07/terminal.cpt.hqx]
  723. ===============================================================
  724.  
  725. From: ari@world.std.com (Ari I Halberstadt)
  726. Subject: UserName-101.hqx
  727.  
  728. UserName is a little program that lets you set the name of the machine
  729. it is run on (back in prehistory, this was the name seen in the
  730. Chooser desk accessory). You can run UserName either as an INIT
  731. (extension), or, if you prefer, as an application. When UserName runs,
  732. it displays a dialog, into which the user can enter his or her name.
  733. The dialog includes a timer, and will be automatically closed when the
  734. timer reaches zero. This means that even if you run UserName as an
  735. INIT, it will not prevent the system from booting up if no one is
  736. around to enter a name. The dialog also includes a help button, which
  737. enlarges the dialog and drops down a scrollable TextEdit field with
  738. help information.
  739.  
  740. Full THINK Pascal (v2.0) source code for UserName is included. The
  741. code shows how to make a program that can be run either as an INIT or
  742. as an application, how to show a dialog from an INIT, how to modify
  743. the dialog, and how to show a scrollable text edit field in an INIT.
  744. It also includes my own Pascal version of the ShowINIT code,
  745. translated from the assembly language source code.
  746.  
  747. [archived as: /ftp/pub/alt.sources.mac/vol-07/username.cpt.hqx]
  748. ===============================================================
  749.  
  750. From: oster@netcom.com (David Phillip Oster)
  751. Subject: Re: Q:How do I UU-encode/decode ???
  752.  
  753. Here are uuencode.c, uuenmain.c, uudecode.c, uudemain.c. These, in pairs
  754. make two small THINK C standalone programs for uuencoding and decoding files.
  755.  
  756.  
  757. [archived as: /ftp/pub/alt.sources.mac/vol-07/uucode.cpt.hqx]
  758.  
  759.  
  760. ************************************************************
  761.  
  762. snippetname     Description
  763.   
  764. bcd2float       Convert a BCD number to a float
  765.   Robert S. Mah (rmah@panix.com)
  766.   Convert a BCD number (such as the 0x0711 for the
  767.   system version) to a floating point number (7.11).
  768.   
  769. blit2scrn       Fast blitting to the screen
  770.   Jon (misc173@csc.canterbury.ac.nz)
  771.   Assembler routine for quickly moving things to the
  772.   screen.
  773.   
  774. blitdouble      Pixel doubling drawing code
  775.   Jon (misc173@csc.canterbury.ac.nz)
  776.   Assembler routine which draws to the screen using
  777.   the pixel doubling technique.
  778.   
  779. crc32b          32 bit CRC algorithm
  780.   Craig Bruce (csbruce@ccnga.uwaterloo.ca)
  781.   Craig's implementation of a 32 bit CRC algorithm in
  782.   C.
  783.   
  784. cdremoteid      Identifing a CD like CD Remote
  785.   Matt Mora (mxmora@unix.sri.com)
  786.   More of Matt's code to work with CD's.  This snippet
  787.   shows how to identify a CD the way that CD Remote
  788.   does.
  789.   
  790. coderes         Load and call a CODE resource
  791.   Mark Hanrek (hanrek@cts.com)
  792.   Example C code to load and call a code resource from
  793.   an application.
  794.   
  795. coderes2        Calling a CODE resource with callbacks
  796.   Kevin R. Boyce (Kevin.R.Boyce@gsfc.nasa.gov)
  797.   Shows how to add callbacks to Mark Hanrek's code.
  798.   
  799. controlstrip.h  Header file for the Control Strip
  800.   Robert S. Mah (rmah@panix.com)
  801.   Rob's C header file for creating modules for Apple's
  802.   Control Strip for PowerBooks (and/or desktop Macs with
  803.   Rob's patch...).
  804.   
  805. controlstrip.p  Pascal interface for the Control Strip
  806.   Christopher Owen (owenc@minerva.cis.yale.edu)
  807.   Chris ported Rob's ControlStrip.h file to pascal.
  808.   
  809. convertcomments Convert C++ comments to C comments
  810.   Kjetil Torgrim Homme (kjetilho@ifi.uio.no)
  811.   C program to convert comments from C++ to C.
  812.   
  813. dialogpict      Drawing PICTs in a dialog.
  814.   EJ Campbell (EJ_Campbell@onenet.com)
  815.   C routines to load and draw a PICT in a dialog.
  816.   
  817. drawellipse     Draw an ellipse
  818.   Matt Mora (mxmora@unix.sri.com)
  819.   C Code to draw an ellipse.
  820.   
  821. dticons         Getting icons from the desktop database
  822.   Jim Luthor (jumplong@aol.com)
  823.   Code to access the desktop database to retrieve
  824.   icons.
  825.   
  826. enumstr         Automated generation of enums and STR#s
  827.   Jay Krell (jmk3@crux4.cit.cornell.edu)
  828.   Program to help create enums and a STR# resource.
  829.   
  830. eyedrop         Code to implement an Eyedrop tool
  831.   Mark Hanrek (hanrek@cts.com)
  832.   C code to implement the eyedrop tool (get the color
  833.   of a certain point in the window).
  834.   
  835. fasteryet       Faster way to set a point in QuickDraw
  836.   Matt Mora (mxmora@unix.sri.com)
  837.   Matt revisits his previous post for quickly drawing
  838.   a point (using SetRect and PaintRect) with a faster
  839.   version.
  840.   
  841. fsreadline      Reading lines individually
  842.   Jim Luthor (jumplong@aol.com)
  843.   C routine to read individual lines (separated by
  844.   return characters) using PBReadSync.
  845.   
  846. fsprefresh      Have the finder refresh a file
  847.   Bob Bradley (bb@lightside.com)
  848.   C function to tell the finder to refresh a file given
  849.   a fsspec.
  850.   
  851. getdinfo        Getting drive information
  852.   Jim Luthor (jumplong@aol.com)
  853.   High level functions which call the lower level
  854.   File Manager function PBGetCatInfo.
  855.   
  856. getwdinfo       Getting info for the current working dir
  857.   Jim Luthor (jumplong@aol.com)
  858.   High level functions which call the lower level
  859.   File Manager function PBGetWDInfo.
  860.   
  861. gxperspective   Perspective transformations for QDGX
  862.   Ken Turkowski (turk@apple.com)
  863.   C code for doing perspective transformations for
  864.   QuickDraw GX.
  865.   
  866. makepictfile    Writing PICTs to a file
  867.   Carl B. Constantine (cconstan@epdiv1.env.gov.bc.ca)
  868.   C routine to write a PICT to a file like MacDraw.
  869.   
  870. mkfoldicon      Creating a folder with a custom icon
  871.   Brad Hilton (msmail.hiltonb@tsod.lmig.com)
  872.   C code to create a folder with a custom icon.
  873.   
  874. modalscrollc    Scrollbars in Modal dialogs
  875.   anonymous
  876.   C routine for implementing scroll bars in modal
  877.   dialogs.
  878.   
  879. modalscrollp    Scrollbars in Modal dialogs
  880.   Alex Kac (akac@delphi.com)
  881.   Pascal routine for implementing scroll bars in modal
  882.   dialogs.
  883. noforcequit     Patch that removes 'Force Quit' option
  884.   Spencer Low (spencerl@crl.com)
  885.   Assembler routine which shows how to patch SysErr so
  886.   that the user cannot 'Force Quit' the application.
  887.   
  888. openresfile     "Safe" method for opening resource files
  889.   Mark Pilgrim (f8dy@netaxs.com)
  890.   Mark shows a "safe" method for closing a res file, as
  891.   well as describing why this method is needed.
  892.   
  893. pbparse         Using PB[H]Read to parse a file
  894.   Jim Jarrett (jarrett@pixel.kodak.com)
  895.   C code to open and parse a file using PBRead/PBHRead.
  896.   
  897. prefsp          Prefs file creation in Pascal
  898.   Roygena R Weber (rweber@helium.Gas.UUG.Arizona.EDU)
  899.   Pascal code to read/write prefs files.
  900.   
  901. regname         IM:Networking NBP code C port
  902.   Jim Luthor (jumplong@aol.com)
  903.   Jim's C implementation for the NBP code in IM:Networking
  904.   that he originally wrote in Pascal.
  905.   
  906. rotpsig2        3D isometric projection of solids
  907.   Ken Long (kenlong@netcom.com)
  908.   Bug-fixed version of rotpsig.c.  Rotates 3D objects.
  909.   
  910. savepict        Saving a PICT file to disk
  911.   Bretton Wade (bwade@graphics.cornell.edu)
  912.   C function for saving a PICT file to disk.
  913.   
  914. stkframes       Macros for creating stack frames in MPW
  915.   Lawrence D'Oliveiro (ldo@waikato.ac.nz)
  916.   Lawrence's MPW macros for creating and disposing of stack
  917.   frames.
  918.   
  919. upppatch        Patching a trap using UniversalProcPtrs
  920.   Kevin Bell (kbell@cs.utexas.edu)
  921.   Keven shows how to patch a trap using UniversalProcPtrs
  922.   with a patch to ExitToShell.
  923.   
  924. ************************************************************
  925.  
  926. Who's Who in Digest #6...
  927.  
  928. The contributors to this digest are:
  929.  
  930.   Kevin Bell (kbell@cs.utexas.edu)
  931.   Kevin R. Boyce (Kevin.R.Boyce@gsfc.nasa.gov)
  932.   Bob Bradley (bb@lightside.com)
  933.   Craig Bruce (csbruce@ccnga.uwaterloo.ca)
  934.   EJ Campbell (EJ_Campbell@onenet.com)
  935.   Carl Constantine (cconstan@epdiv1.env.gov.bc.ca)
  936.   Hugh Fisher (hughf@cs.anu.edu.au)
  937.   Ari Halberstadt (ari@world.std.com)
  938.   Mark Hanrek (hanrek@cts.com)
  939.   Brad Hilton (msmail.hiltonb@tsod.lmig.com)
  940.   Kjetil Torgrim Homme (kjetilho@ifi.uio.no)
  941.   Jim Jarrett (jarrett@pixel.kodak.com)
  942.   Jon (misc173@csc.canterbury.ac.nz)
  943.   Alex Kac (akac@delphi.com)
  944.   Craig Kloeden (craig@raru.adelaide.edu.au)
  945.   Jay Krell (jmk3@crux4.cit.cornell.edu)
  946.   Peter Lewis (peter@ncrpda.curtin.edu.au)
  947.   Ken Long (kenlong@netcom.com)
  948.   Spencer Low (spencerl@crl.com)
  949.   Jim Luthor (jumplong@aol.com)
  950.   Robert Mah (rmah@panix.com)
  951.   Matt Mora (mxmora@unix.sri.com)
  952.   Dave Nebinger (dnebing@andy.bgsu.edu)
  953.   Kiselyov Oleg (oleg@ponder.csci.unt.edu)
  954.   Lawrence D'Oliveiro (ldo@waikato.ac.nz)
  955.   David Oster (oster@netcom.com)
  956.   Christopher Owen (owenc@minerva.cis.yale.edu)
  957.   Mark Pilgrim (f8dy@netaxs.com)
  958.   Keith Pomakis (kppomaki@jeeves.uwaterloo.ca)
  959.   Alex Riegler (alex@track.cslab.tuwien.ac.at)
  960.   Tim Smith (tzs@u.washington.edu)
  961.   Ken Turkowski (turk@apple.com)
  962.   Bretton Wade (bwade@graphics.cornell.edu)
  963.   Roygena R Weber (rweber@helium.Gas.UUG.Arizona.EDU)
  964.   Zig Zichterman (zig@wc.novell.com)
  965.  
  966. ************************************************************
  967.  
  968. The archive's organization is as follows:
  969.  
  970. /ftp/pub - root directory for the archive.  All available files
  971.   can be found in this directory.
  972.   
  973. /ftp/pub/alt.sources.mac/vol-XX - Contains all articles posted to
  974.     the alt.sources.mac newsgroup as well as some items posted to
  975.     the comp.sys.mac.programmer newsgroup.  Also, any files uploaded
  976.   to the incoming folder are put here.  All of the files are
  977.   compressed using CompactPro and BinHex.  The files also include
  978.   an information file with the extension .info which explain what
  979.   the archive contains.  The 00abstracts file contains abstracts
  980.   of the files in the directory.
  981.   
  982. /ftp/pub/alt.sources.mac/snippets-vXX - Contains small pieces of
  983.   code in a textual form (no compression or BinHexing).  The
  984.   00index file contains a brief description of each snippet.
  985.   
  986. /ftp/pub/alt.sources.mac/scripts - Contains scripts for any
  987.   scripting system available for the Mac (i.e. AppleScript or
  988.   Frontier).
  989.   
  990. /ftp/pub/comp.sources.atari.st - Source posted to the
  991.   comp.sources.atari.st newsgroup.  If the items are compressed,
  992.   they are extracted and re-compressed using CompactPro and
  993.   BinHex.
  994.   
  995. /ftp/pub/comp.sources.mac - Source posted to the comp.sources.mac
  996.   newsgroup.
  997.   
  998. /ftp/pub/digests - Contains all of the digests posted for the
  999.   alt.sources.mac archive.
  1000.   
  1001. /ftp/pub/incoming - Directory for uploading contributions to the
  1002.   archive.  All files which get added to the archive spend some
  1003.   time in this directory, so if you are looking for something
  1004.   which should be in the archive but isn't yet, check here.
  1005.   
  1006. /ftp/pub/mac-faqs - FAQs for some of the Mac groups.  Contains all
  1007.   of the "charter" information for the alt.sources.mac newsgroup.
  1008.   
  1009. /ftp/pub/mac-faqs/faq-sillyness - Contains the 'code' posted for
  1010.   distributing the alt.sources.mac FAQ in source-code form.
  1011.   
  1012. /ftp/pub/other - Other Mac stuff (i.e. 2 program fonts, etc.).
  1013.  
  1014. /ftp/pub/other/apprentice - Updates for files contained on the
  1015.   Apprentice CD.
  1016.   
  1017. /ftp/pub/soundsrc - Source for working with special sound formats.
  1018.