

     |||||| |||||| ||  || |||||| ||||||
     ||     ||     ||| ||   ||   ||
     || ||| ||||   ||||||   ||   ||||               Your
     ||  || ||     || |||   ||   ||
     |||||| |||||| ||  || |||||| ||||||             GEnieLamp A2Pro

     ||    |||||| ||    || ||||||                   RoundTable
     ||    ||  || |||  ||| ||  ||
     ||    |||||| |||||||| ||||||                   RESOURCE!
     ||    ||  || || || || ||
     ||||| ||  || ||    || ||

                ~ A2PRO GENIELAMP IS LOOKING FOR WRITERS ~
             ~ LATEST NEWS FROM THE A2PRO ONLINE DEVELOPERS ~
          ~ A2U SPRING SESSION HAS STARTED WITH RESOURCE CLASS ~
                  ~ HOT NEWS ~ HOT MESSAGES ~ HOT VIEWS ~

 ////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  GEnie Lamp A2Pro  ~ A T/TalkNET OnLine Publication  ~  Vol.1, Issue 02
  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
  Publisher.................................GEnie Information Services
   Editor-In-Chief........................................John Peters
    Editor.................................................Jim Couch

  ~ GEnieLamp IBM ~ GEnieLamp [PR]/TX2 ~ GEnieLamp ST ~ GEnieLamp A2 ~
      ~ GEnieLamp MacPRO ~ GEnieLamp A2Pro ~ GEnieLamp Macintosh ~
            ~ Member Of The Digital Publishing Association ~
////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

          >>> WHAT'S HAPPENING IN THE APPLE A2Pro ROUNDTABLE? <<<
          """""""""""""""""""""""""""""""""""""""""""""""""""""""
                            ~ March 1, 1993 ~

 FROM MY DESKTOP ......... [FRM]        A2PRO ROUNDTABLE STAFF .. [DIR]
  Notes From The Editor.                 Staff Directory and Intros.

 HEY MISTER POSTMAN ...... [HEY]        DEVELOPER'S CORNER ...... [DEV]
  Is That A Letter For Me?               News from A2Pro Developers.

 A2U CAMPUS CHAT ......... [A2U]        ONLINE LIBRARY .......... [LIB]
  A2 University: Learning Online.        HOT Files You Can Download.

                      LOG OFF ................. [LOG]
                       GEnieLamp Information.

[IDX]"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

READING GEnieLamp   GEnieLamp  has  incorporated  a  unique   indexing
"""""""""""""""""   system to help make  reading the  magazine easier.
To  utilize this system, load GEnieLamp into any ASCII  word processor
or text  editor.  In the index  you will find the  following  example:

                   HUMOR ONLINE ............ [HUM]
                    [*]GEnie Fun & Games.

   To read this  article, set your  find or search command to [HUM].  If
you want to scan all of the articles, search for [EOA].  [EOF] will take
you to  the last page,  whereas [IDX]  will bring you back to the index.

MESSAGE INFO   To make it easy for you to respond to messages re-printed
""""""""""""   here in GEnieLamp, you will find all the information you
need immediately following the message.  For example:

                    (SMITH, CAT6, TOP1, MSG:58/M530)
        _____________|   _____|__  _|___    |____ |_____________
       |Name of sender   CATegory  TOPic    Msg.#   Page number|

    In this  example, to  respond to  Smith's  message, log  on to  page
475 enter the bulletin board and set CAT 6. Enter your REPly in TOPic 1.

    A message number that is surrounded by brackets indicates  that this
message  is a "target" message and is  referring  to  a "chain"  of  two
or more  messages that are following the same topic.  For example: {58}.

ABOUT GEnie   GEnie costs only $4.95 a month for  unlimited evening  and
"""""""""""   weekend  access  to  more  than  100  services   including
electronic mail,  online encyclopedia,  shopping,  news,  entertainment,
single-player games,  multi-player chess and bulletin  boards on leisure
and  professional  subjects.   With  many other services,  including the
largest  collection of files  to download and the best online games, for
only  $6  per hour  (non-prime-time/2400  baud).   To sign up for  GEnie
service,  call (with modem) 1-800-638-8369.  Upon  connection  type HHH.
Wait for the U#= prompt. Type: XTX99368,GENIE and hit RETURN. The system
will then prompt you for your information.
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""



[EOA]
[FRM]//////////////////////////////
                 FROM MY DESKTOP /
/////////////////////////////////
Notes From The Editor
"""""""""""""""""""""
By John Peters
   [GENIELAMP]



FROM MY DESKTOP   A GEnieLamp Swimsuit issue?  Yup!  Hey, if SI can do it,
"""""""""""""""   why not GEnieLamp?  Our resident CowToonist says, "These
bovine barnyard bathing beauties are truly livestock lovelies, heavenly
heifers, stockyard stunners, and Cowtoon Cuties.  They should be udderly
amoosing to anyone who never thought they'd see cows in 2-piece swimsuits."
I agree!  Definitely something you don't want to miss!

AMAZING!   Ten years ago I thought a 30 to 50K magazine was large.  Now
""""""""   it's unusual for T/TalkNET Online Publications to publish a
magazine less then 150K.  Of course, there are reasons for this situation.
For one, 300 baud modems were the norm back then; 1200 baud was the top end
and 2400 baud was reserved for the elite few who could afford them.
Secondly, those who could afford it, had 64K of RAM.  Third, floppy drives
were $800.00+, and hard drives were just a fantasy to most of me.
Thankfully, all of that has changed.  Today 2400 baud is the low end of
modems, 1, 2, 4 megs (or more) of RAM is not unusual and hard drives ae as
common as floppies.

     Still, in spite of the speed-demon modems, the mega-memory systems and
the monster hard drives, I must admit that 200K text files are probably
pushing the limits of online publishing, considering the hardware and
software we are dealing with today.  So....

     I have come up with an alternative plan.  As you may or may not know
within 48 hours of publishing GEnieLamp on the menus we also offer all the
Lamps in compressed format (Pk-Zip for the IBM, Mac and ST, BXY for the A2)
for downloading in the GEnieLamp Library.  Starting with this issue you
will now also find an abbreviated issue available for downloading as well.
These special issues will contain only the main courses from each of the
Lamps.  That is, no GEnie_Qwik_Quotes, no games or puzzles, or CowTOONS
(sorry, Mike :).  So, if you prefer your meat without the potatoes, we
have what you're looking for!

NEW CONTRIBUTOR   I am pleased to announce that Al Fasoldt has agreed to
"""""""""""""""   submit a monthly column for GEnieLamp.  Al writes about
computers and consumer electronics from Syracuse, N.Y., where he is a
newspaper editor and programmer.  I've always enjoyed Al's columns that he
occasionally posts here on GEnie, and I think you will too.

PACIFIC EDGE ON GEnie!   The Pacific Edge Magazine has joined the GEnieLamp
""""""""""""""""""""""   RoundTable.  Watch for new issues in the library
and reader support in the bulletin board.

PERSONAL INVITATION   The RealTime Conference room is available...so let's
"""""""""""""""""""   give it a go!  I know this is short notice, but
everyone interested in visiting with the Digital Publishing Association and
its members is welcome to join in some RTC chat every Wednesday night.
Drop by...
                6:30pm Pacific       8:30pm Central
                7:30pm Mountain      9:30pm Eastern

     ...to talk about these exciting times for lectronic publishing.  Make
a new friend, meet an old one, or just hang out.  It's all informal so
don't be shy -- give it a try -- and visit the inner sanctum of DPA's
enlightened pioneers of electronic publishing.  Hope we see you there!


Digital Publishing News   "Disktop Publishing"...Yes, that was the headline
"""""""""""""""""""""""   in the "Trends" section of PC Magazine's March
16 issue.  The two column story by Robert Kendall begins by saying Random
House is putting selected titles from its Modern Library series on floppy
disks in collaboration with Apple and Voyager Company.

     But the rest of his story focuses on the "new breed" of on-disk
publishers targeting the PC-compatible market.  First mention goes to
Floppyback Publishing International, Bruce Gilkin's "Angel of Death", and
even a color screen shot of chapter one as it looks using Dart (a
Hyper-text reader for IBM).

     Floppyback's association with Rutgers University Press is also cited
along with "Discovering the Mid-Atlantic: Historical Tours" by Patrick
Louis Cooney.

     Next, Mr. Kendall goes on to say Connected Editions "epitomizes the
effect of information technology on higher education" through Connected
Education's electronic graduate courses by modem.  Faculty member David
Hays' annually updated book on disk "Evolution of Technology" is mentioned
as an example of an inexpensive way to revise without the prohibitive
expense of bound paper reprints.

     The story quickly summarizes most of the advantages DPA members
already know and use, so it seems the author has been reading News from the
Disktop and the other gems of information that Ron Albright has diligently
distributed for two years.

     Kendall offers his own opinion that "Disktop publishing is especially
appealing for universities" for monographs and text- books using hypertext
as a research tool, and for students on a low budget who want to get into
'print' quickly.

     Regarding distribution, Kendall unfortunately failed to mention the
DPA's home on GEnie, (in the GEnieLamp RoundTable) but he did call the
DPA's free bulletin board system an "especially rich source of material."

     Since the PC Mag story appeared, the DPA BBS is averaging about 40
calls per day.  That's 1200 calls per month, and proof positive that the
public wants more of what the DPA has to offer.

     I once said something to the effect that this thing was going to take
off suddenly, catching us all with our mouths hanging open.  Brace
yourselves!  The tide is turning and is sure to flood the DPA beachfront as
this kind of attention roils into an electronic storm charged with new
writers, publishers, and adventurers.  -Mike White

                               [*][*][*]


     Until next month...
                                                     John Peters
                                                     [GENIELAMP]



[EOA]
[DIR]//////////////////////////////
          A2PRO ROUNDTABLE STAFF /
/////////////////////////////////
By Jim B. Couch
     [J.COUCH2]
                           ____________________________________________

                           A2 PROGRAMMERS & DEVELOPERS ROUNDTABLE STAFF
       _____  ______       ____________________________________________
      /_____|/______\
     /__/|__|  ___|__|     Head Sysop:   Matt Deatherage  (M.DEATHERAGE)
    /__/_|__| /_____/      Assistants:   Steve Gunn        (A2PRO.STEVE)
   /________|/__/       __ __ __         Jim Murphy          (A2PRO.JIM)
  /__/   |__|__/______ /_//_// /         Greg Da Costa      (A2PRO.GREG)
 /__/    |__|________//  / \/_/          Todd P. Whitesel (A2PRO.TODDPW)


INTRODUCING THE A2PRO STAFF   Over the next few issues we will be
"""""""""""""""""""""""""""   introducing the excellent staff members that
make A2Pro possible. A2Pro is blessed with a very talented and helpful
staff. The A2Pro GEnieLamp will give you a chance to get to know them.

     As Head SysOp Matt Deatherage (M.DEATHERAGE) administrates A2Pro.
There are 4 A2Pro assistants who help him. These folks are: Steve Gunn
(A2PRO.STEVE), Jim Murphy (A2PRO.JIM), Greg Da Costa (A2PRO.GREG), and Todd
P. Whitesel (A2PRO.TODDPW). Last month you met Steve Gunn, this month we
will meet A2Pro's fearless leader Matt Deatherage. We will also meet Todd
P. Whitesel. Next month we will meet the remaining members of A2Pro and
feature a profile of Jim Murphy!



INTRODUCING A2PRO'S FEARLESS LEADER   Jim Couch is on my back (like most
"""""""""""""""""""""""""""""""""""   good editors) to post a new biography
of me or he'll print the one I did last June in the March GEnieLamp A2Pro,
so I have to write a new one.  :)

     As most of you know, my name is Matt Deatherage.  I came to Apple
Computer as a college intern in March 1988 to work in the Apple II
Developer Technical Support group, on vacation from an Industrial
Engineering curriculum at the University of Oklahoma.  I was supposed to be
working on a couple of desk accessory projects, but this quickly got
sidetracked because I enjoyed answering Emails and working with seeded
(unannounced but sent to some developers) projects.  Six weeks before I
started, the Apple II DTS group was about 1/3 the size it needed to be (and
the Macintosh groups were about half the size they needed).  Counting me,
four people started in a two- month period and we were fully staffed
shortly.

     It's a good thing, too, because it was a busy time.  In those days,
DTS didn't refuse questions from anyone and if it burned out the engineers,
well, too bad.  Apple was in the middle of Apple IIgs system software 3.2
when I arrived, and before the end of that year they'd release 3.2, 4.0
(GS/OS) and would begin work on the ROM 3 machine.

     I got the chance to work as co-lead for the 3.2 release and lead for
the 4.0 release, which meant I started reading through a couple of reams of
preliminary engineering documentation on GS/OS in about June of 1988, and I
read the first draft of "GS/OS Reference, Volume 1" about four times,
marking it up each time with things I found to be inaccurate or unclear. If
you ever wonder how come I know the documentation so well, it's because I
had to read nearly all of it about three times each before it got released.

     I always had been a big fan of Technical Notes, so when Rilla Reynolds
(my boss) gave me a few documents and asked me to convert them into
Technical Notes, I did (though I didn't actually change much of the
technical content, which meant I had to redo several of them later to make
them more accurate). Right about this time, Darin Adler on the Macintosh
side had just finished going through all of the Macintosh notes and
revising, updating and expanding (and removing) them as necessary.  I
thought the same thing needed to be done on the Apple II side, so I asked
if I could coordinate it and I did.  I wound up doing much of it myself,
but the Apple II engineering groups and the rest of DTS was extremely
helpful, never complaining too much when I dropped off even _more_ Notes
for them to review, called them to pester them, etc.  Giving them all
"Note-worthy contributor" shirts at the end didn't hurt, either.  :)  That
massive revision was finished in September, right about the same time Mark
Johnson started as DTS's technical editor, and he reformatted and redid the
text into the currently-readable paper format, so they didn't get out to
the world until January 1989.

     Also in 1988, Rilla asked if I'd be interested in doing something with
file type assignments while Pete McDonald was out.  Pete had already
conceived of using auxiliary type assignments to stretch the number of file
types (limited to 256, dozens of which were already used), but he hadn't
done anything about it and there wasn't really a file types database.
There was a text file on his computer, but it hadn't been updated in years
and read "Cortland" for all the Apple IIgs file types.  I started an
AppleWorks database with all the file types and we started creating new
generic file types with specific auxiliary types.  I wrote an article for
the June 1988 APDAlog magazine describing the whole situation, but it was
hard to get people to go along with it because stealing file types was so
easy (as it still is, if you'll look at "Out of This World").

     So I created File Type Notes, a way for Apple to let people know about
public file formats, assignments and to encourage programs to use each
others' files, on the theory that it makes your program more valuable if
other programs know how to work with it.  It certainly never hurt
AppleWorks GS or AppleWorks, and to my knowledge it hasn't hurt any of the
other dozens of programs documented in File Type Notes since then.

     By this time, Apple had asked me to stay on permanently and, sinceI
was having so much fun, I agreed.

     The next few years were full of plenty of things to do -- System
Software 5.0, 5.0.2, 5.0.3, HyperCard IIgs, ROM 3, about five new books, a
hundred or more new Technical Notes, sample code and more.  Llew Roberts in
our group pioneered mixed ProDOS/HFS CD-ROMs to handle the Developer CD,
which stayed in that format until October 1991 (due to the impending HFS
FST). Others in that group still have familiar names to many of us -- Jim
Mensch, Keith Rollin (both now at Taligent), Eric Soldan, Jim Luther (who
ran the ADV area on America Online when he started at Apple), Dave Lyons,
Llew Roberts, Rilla Reynolds, CK Haun, Dan Strnad, Pete McDonald, Glenn
Baxter (not the author) and others throughout Apple we worked with like Tim
Swihart (who was an A2Pro sysop when he was hired), Ron Lichty, Jim Merritt
and many other great people.

     Eventually, as we all know, Apple decided that the Apple II wouldn't
be an important part of the company's future, and the workload declined.
As the others found less to do, I got to do more, and I still worked
full-time on the Apple II until early 1991, when all the DTS groups merged
together, and I worked on it the majority of my time for about 10 months
after that.  I'd always been active on online services (I started my GEnie
account four days before I started at Apple), and helping people out there
seemed a logical thing to do.

     I've been the lead Apple II engineer in DTS for about 3 years now,
working with the Apple II Continuation Engineering group on the new
projects they have in the pipeline (which Tim Swihart discussed at
KansasFest).  I also helped create and present the two rounds of Apple II
Achievement Awards that have been presented so far (December 1990 and April
1992), and I've written articles for GS+, A2-Central, Call -A.P.P.L.E.,
APDAlog and _develop_ and I'm soon to write for Fishhead's Children (if I
can get the article done).

     My main Macintosh focus is another of my hobby interests -- printing,
fonts and typography.  I hope to prepare a Macintosh technical book
proposal this spring and maybe get a book out by early next year, and I've
worked on the Personal LaserWriter NTR and LaserWriter Pro printers, and
I'm currently DTS's lead for the new Macintosh PostScript Level 2 writer in
open beta-test on AppleLink and the Developer CD.  I'm using all the
experience to help revise and maintain the Apple IIgs LaserWriter driver --
don't expect PostScript level 2, but I've already fixed the "doesn't know
the built-in font names" problem for the next System Software release.  I
may get to do more in the future as well, as time permits.

     As for here -- I've been running A2Pro since June 1992, but I've been
in here for five years.  March marks the end of my fifth year at Apple
Computer, and in June I'm eligible to take my Apple sabbatical, which is a
six-week paid vacation that doesn't affect my regular vacation time (17
days a year after five years at Apple).  I have no sabbatical plans yet,
but I'm sure I'll think of something.

     So now I'm 26 years old, I live in an apartment in Cupertino that I've
occupied ever since becoming a permanent Apple employee with an Apple IIe,
IIc Plus and IIgs as well as a Macintosh IIfx and Macintosh SE, two
printers (all networked together), a Yamaha G-1 5'3" grand piano, lots of
electronic goodies and in the same apartment complex as Dave Lyons, Andy
Nicholas and Jim Murphy, all of whom I helped to hire in one way or
another.

     Because of the volume of Email I get, I can't answer people's
technical questions in Email (I'd never do anything else), but I read the
bulletin board every day unless something goes wrong, and the staff we have
to assist is also top-notch, so don't hesitate to ask any of your questions
here.  If you can't figure out where to post, use the "Beginners:  Post
here" topic here in A2Pro or send GEnie Mail to A2PRO.HELP.

     Good enough, Jim?  :)   --Matt (I speak for myself, not for Apple)
                 (M.DEATHERAGE, CAT1, TOP2, MSG:124/M530)


ALSO INTRODUCING TODD P. WHITESEL   I first got started with Apples in
"""""""""""""""""""""""""""""""""   grade school, and when I went to live
with my father after that we had a Bell & Howell "black Apple" at the house
that I hacked to pieces after school. (He still uses it to do his taxes
every year with VisiCalc! Beat that!) I had a minor but somewhat successful
pirating career back then and there's one thing I'll say for it: it teaches
you to understand the machine for real, because there are no rules except
the hardware on the table and the disk in the drive. No programming course
will teach you that.

     I escaped from high school with the class of '88 and took a 4-year
bachelors in Engineering and Applied Science from the California Institute
of Technology, located in smoggy Pasadena on the north edge of the LA
valley. It was there that I got into big machines and networking other than
modems, and in a year I managed to get a great deal on a used IIgs so I
could demote the surplus ][+ I'd brought with me to the role of a dedicated
terminal. Soon after that, I took some real programming courses and managed
to bring my jungle-programmer instincts under control, so I could
successfully write large projects. It was during this time that I started
the now-infamous tybalt.caltech.edu FTP site and wrote various small to
mid-size hacks, which include the ZipTalk and ZipFix inits, the VOC 3200
research that was used by John MacLean in The RGB Exchange, the desktop
poscript downloader DLPS, and the (unfinished) GIF viewer LordHighGIFfer.

     Presently, I am working for Green Hills Software in Santa Barbara
(nyeah!). Our first product was the 68000 pascal compiler that Apple sold
with the original Lisa/MPW tools, before they brought development in-house.
When I arrived, the job of maintaining the 68000 series code was crying to
be filled, and I took on the project of bringing it up to date with the
rest of our back ends. The 68000 series is quite popular for modern
consumer applications, and lately I've been assigned the temporary task of
getting things set up so we can rigorously test our compilers and desktop
debugger with the actual programs running on bare 680x0 boards, which is
how our customers will be developing things like new 14.4 modems and
super-smart dishwashers and so on.

     Shortly after I started work here, I got an account on GEnie because I
could finally afford it :) -- after a rocky start on the bulletin boards,
Matt D. approached me about the position of A2Pro Library Slave because of
my experience with the FTP site, which is now under new management by a
IIgs user from this year's freshman class. I figured I needed yet another
hobby to keep me from actually finishing any of my programming projects, so
I took the job. Now that most of the public sections have been almost
totally rearranged, I will be going through the library in chronological
order, cleaning up the fluff and re-packaging more of the classic uploads,
like the AppleWorks 2.0 "Rosetta Stone" of technical docs and source code
(File #3109, if anyone's curious).

Todd Whitesel



[EOA]
[HEY]//////////////////////////////
              HEY MISTER POSTMAN /
/////////////////////////////////
Is That A Letter For Me?
""""""""""""""""""""""""
By Jim B Couch
    [J.COUCH2]

     o   BULLETIN BOARD HOT SPOTS

          o   A2PRO ODDS & ENDS

               o   WHAT'S NEW?

                    o   THROUGH THE GRAPEVINE

                         o   PROGRAMMER'S CORNER

                              o   HOT TOPICS

                                   o   MESSAGE SPOTLIGHT



                      >>> BULLETIN BOARD HOT SPOTS <<<
                      """"""""""""""""""""""""""""""""

   [*]  CAT13,  TOP4,  MSG{82}...........................Looking for...
   [*]  CAT20,  TOP17, MSG{1}..............General Apple IIgs questions
   [*]  CAT22,  TOP24, MSG{1}............Getting Started with Resources
   [*]  CAT31,  TOP9,  MSG{1}....SoftdiskTools -- a library of routines
   [*]  CAT33,  TOP7,  MSG{1}.....................Miscellaneous Library
   [*]  CAT34,  TOP3,  MSG{103}.......................Ultra Programming
   [*]  CAT35,  TOP5,  MSG{2}........................Edit-16 Discussion



                         >>> A2PRO ODDS & ENDS <<<
                         """""""""""""""""""""""""

A2PRO GENIELAMP STILL LOOKING FOR WRITERS!   We are still looking for
""""""""""""""""""""""""""""""""""""""""""   writers! You do not need to be
a professional programmer to write for the A2Pro Lamp. What we are really
looking for is people who can write and are interested in Apple II
programming. We are looking people to write reviews, tutorials and
articles. We are also looking for a couple of staff writers.

     As compensation for your talent and efforts we offer a forum for you
to amaze the world with your knowledge, become semi-famous and some get
free online time.  If you are interested in contributing to the A2Pro
GEnieLamp send your resume to me at GE Mail address J.COUCH2.  Please
carbon copy (CC) to GENIELAMP and M.DEATHERAGE as well.  We look forward to
hearing from you.


PSSST...KID, YA WANNA MAKE A QUICK 50 BUCKS?   How'd someone like to make a
""""""""""""""""""""""""""""""""""""""""""""   QUICK $50.00?  I need an
Xcmd to set the system prefix.  Put simply, I have a HyperCard stack that
launches an app.  When the app opens up it's SFDialog to save a file, I
want it to open up the folder that the stack is in, so I want to set the
proper prefix before I leave the stack.

Any takers?  $50.00 for a few minutes work ain't bad, eh?  <smile>
 --    HangTime [Script-Central]  B-)>
                  (A2.HANGTIME, CAT18, TOP5, MSG:24/M530)


TALK ABOUT SERVICE!   Hang...it's done and in your mailbox. You can even
"""""""""""""""""""   upload it here if you want.... Since your paying for
it, it's yours to with as you please.

After all...I couldn't turn down a "Quick" (pun intended) $50!! ;)

If there are any others you need or changes to this one let me know!

 -Shawn            (S.QUICK1, CAT18, TOP5, MSG:25/M530)


YOU HAVE TO MOVE FAST TO MAKE A BUCK IN THIS MODERN WORLD   Geez -- 5 hours
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""   from original
post to delivered software?  You have to be Quick around here.  :)

Mike Westerfield   (BYTEWORKS, CAT18, TOP5, MSG:26/M530)


BUT WAIT, THERES MORE!   I might add the preliminary tests show that
""""""""""""""""""""""   Shawn's Xcmd works perfectly <smile!>.  Not only
that, but someone else showed interest in writing an Xcmd, so I sent him on
a quest for another one I wanted.  Six hours later, it's sitting in my
mailbox waiting to be D/Led.

     Yes I'd say A2Pro is THE place to be, whether you want something, or
want to write something!
  --HangTime [A very happy camper]  B-)>
                  (A2.HANGTIME, CAT18, TOP5, MSG:27/M530)


OTHER PROGRAMMING OPPORTUNITIES   This is NOT an offer or solicitation,
"""""""""""""""""""""""""""""""   just a tip for anyone who may be
interested.  I'm only reporting here something I read in the Education RT.

     Roberta Pournelle (Mrs. Jerry) of the Education RT has a successful
program to teach reading to hard-to-teach kids.  It runs on a PC in CGA
mode.  Bobbi mentioned in a BB message that they were looking into an Apple
II version a while ago but things came apart.

     However, the Pournelles are now actively engaged in getting the
program adapted to other platforms, including the Mac.  This MAY be an
opportunity for an Apple II programmer.

     To read old messages on the program, read Cat 13 Topic 24 in the ERT
(M405;1) - Mrs. Pournelle's Reading Program. Bill Dooley
             (A2.BILL [A2 BB Mgr.], CAT13, TOP8, MSG:21/M530)


YET ANOTHER PROGRAMMING OPPORTUNITY!   A development company out here in
""""""""""""""""""""""""""""""""""""   the suburban Chicago area is looking
for experienced 65816 programmers.  As you might have guessed, they are
looking for people to program the Super Nintendo.  This would be a
full-time job, if anyone out there is looking for a job like this send me
some EMail and I'll pass your name along. Nate
             (N.TROST [65Nate16], CAT13, TOP8, MSG:22/M530)


HELP IS STILL AVAILABLE FROM APPLE   Great news, Matt.  I took your
""""""""""""""""""""""""""""""""""   suggestion and went to SW.LICENSE this
morning and had my call returned by a very pleasant, knowledgeable and
efficient person by the name of Theresa Kemp.  She is arranging to send me
the requisite developers installer!  <WOW>  I am pleased.

     I thank you both for your assistance, I thank GEnie for the means of
our making contact and I thank Apple for their quick response to my
request.

     All this and Apple just rewarded me by including my humble product in
the "Editors Choice" section of the new Winter-Spring 1993 Software
Newsletter.

What more can I say?  Thanks...   )9  Bob    (-:
               (R.MERRILL2 [Bob], CAT20, TOP6, MSG:21/M530)


DISCUSSION OF DEVELOPMENT STANDARDS INITIATED   Okay, this is a good place
"""""""""""""""""""""""""""""""""""""""""""""   to discuss development
standards...

     Recently there has been some discussion about making the ORCA editors
a little more savvy.  For now, we won't discuss the actual implementation
of what we are going to do, just the content.

     Here are some of the things that I think the editors should maintain
with each source file:

   o last position. Both a selStart and a selEnd for those cases
     where there was a selection: who knows what future editors
     will do?

   o markers. Support for multiple markers at that, something
     like offset, name.  Where name can be up to 32 (?)
     characters.

   o tab stops.  Yes, I'd like to see each source file
     maintaining their own tab stops.  If a source file doesn't
     contain this information, go ahead and use SysTabs.  Why is
     this important you may ask?  Well, in my job, fully half the
     source code I deal with was written by someone else -- and
     they _always_ seem to have different tab stops.  For C and
     Pascal source this is not so critical, but for assembly
     source that has real tabs and radically different tab stops
     than mine it can mean that the source is  assembled
     differently, and this is a Very Bad Thing! If each source
     file maintains this information, and editors are savvy
     enough to look for it, things would be much better!

   o font ID.  Eventually, someone is going to write a
     TextEdit-based editor. I think Luny's only mentioned this a
     dozen times or so.  If a text-based editor creates a file,
     they can default this to Courier 10 or something.

   o other editor globals, like insert/overstrike mode.  I guess
     we'd have to discuss this a bit before we know just what
     globals we want.  Auto-indent also comes to mind here.


I see that we need to do three things here:

   o decide WHAT we want to store with each source file
   o decide HOW we store that data
   o decide WHERE that data is stored


The floor is now open! :)  Bryan
               (SOFTDISK.INC [Zak], CAT19, TOP3, MSG:1/M530)



                            >>> WHAT'S NEW? <<<
                            """""""""""""""""""


GET A TASTE OF ZAKPAK 2.0!   I've just uploaded another ZakPak 2.0 utility
""""""""""""""""""""""""""   (only 15 more to go ;-
 File: ONLINE.BXY  V2.2B7           Number: 3103
 Desc: ZakPak 2.0: Online (display/query)

     Online can be used in two ways, one is in a script to see if a
particular disk is online (good for install type scripts), and the second
is to just dump a list of online volumes (including their file systems,
size and available disk space) to standard out.

     There are two optional flags: -p and -m. Using -p will result in a
copyright and version notice being displayed. Using -m will result in some
mousetext being used to improve the appearance. Using the wrong syntax will
result in a Usage line.

     Online should run just fine under any shell, including ORCA 1.x, ORCA
2.0, GNO, ProSel-16, Merlin, ECP-16, whatever. If you have any problems
with it, please let me know.

     The archive includes two help files, one is lengthy (includes examples
of how to use the command) and one is a single screen of text - install
your choice into your help directory.

     Online is also restartable (all ZakPak utilities are).  Bryan
                   (BRYAN.ZAK, CAT1, TOP30, MSG:49/M530)


MORE ZAKPAK 2.0 ON THE HORIZON   Just in case anyone cares, the others that
""""""""""""""""""""""""""""""   I have done, and ready to go (as soon as I
archive them up and add the Usage stuff to them) are PFX, PWD, CD, ERROR,
VERSIONS and ETIME (elapsed time).

     After that, I have to finish the big ones: delete, copy, catalog and
type. All of these are in various stages of completion. One util went away:
SETVIS, no longer needed now that we can access the invisible bit with
enable/disable.

     A few new ones have been added: SetVersion, ShowVersion (for adding
and viewing rVersion resources).  Syntax is SetVersion <file> 1.0b5, or
whatever :)

     Once delete and copy are done, updating others like move and rename
are basically trivial.

     Hopefully, at the rate I'm now moving (hehe), I'll actually have these
done sometime in the next few months (especially now that I'm using ORCA
2.0 :)   Bryan
              (SOFTDISK.INC [Zak], CAT1, TOP30, MSG:50/M530)


JEM SOFTWARE'S ULTRA 4 UPDATED TO 4.2   Due to frenzied demand, Ultra 4.2
"""""""""""""""""""""""""""""""""""""   has been finalized today. The
changes were minor, but since v.1.1 of Ultra 4.1 caused confusion, we'll go
with Ultra 4.2 for the official Quality Computers release.

     Debug now has a OA-W Walk thru command to activate single stepping.
The Stuff init now includes .zapchar, .menubar2 and .vline.

     Since .flash and .over are so easy to do without a dot command,
they'll never take up dot command space. Will's other requests may be
answered in the future.

     A new archive will be available in the JEM area shortly.
                    (BRANDT, CAT34, TOP3, MSG:103/M530)


IF YOU LOG ON TO A2PRO WIH YOUR MAC, CHECK THIS OUT    The new version of
"""""""""""""""""""""""""""""""""""""""""""""""""""    Online Servant, the
shareware  Mac  front-end for GEnie, is here!

     File  #3573  in  the  MacPRO  Software  Library  (M480;3), is the
complete version of Online Servant 1.26d, for both new users  and
upgraders.  Servant  handles  GEnie mail and bulletin boards with automatic
online  sessions.  Command  selections,  reading,  and entering replies are
all done offline.

     Online  Servant is "Open Beta" software. Many bugs from 1.25 have been
fixed, plus other minor changes, over 60  in  all.  Requires HyperCard
2.0v2  or later or HyperCard Player. Needs a 4 Meg Mac under System 7 or
2.5 Meg Mac with System  6  (non-Multi-Finder). If  you have 1.25, please
download the complete file and use only the new stacks (rename or trash
your old Servant stacks). You can import  your  Main  Settings  and  Mail
Directory  from your old version. Check it out!
               (MACSPECT [ Erik ], CAT1, TOP14, MSG:15/M530)



                       >>> THROUGH THE GRAPEVINE <<<
                       """""""""""""""""""""""""""""

WHY YOU PROBABLY WON'T SEE ORCA/C UNDER MPW    > Man, I would _love_,
"""""""""""""""""""""""""""""""""""""""""""    > absolutely _love_ an
> ORCA/C that ran under MPW,  and I would pay $150 for such a compiler...

     Let's get with a touch of reality about pricing, here, folks.  First
off, the _native_ C compilers for the Mac cost more than $150.  THINK about
it: THINK C runs $250, and they sell in very large quantity.  Our $150
retail prices are, for compilers, dirt cheap.  For a compiler that is
intended for cross development, the price would have to be a lot higher.

     The main thing that has kept me from porting ORCA/C or ORCA/Pascal to
MPW in the past, outside of my personal feeling that cross development
hurts the GS, is money.  I'd have to make enough to make it worth not doing
native GS products, or some other product.  Based on the amount of work it
would take to do the port, the money it would take to produce the product,
and the money it would take to promote and maintain the product, I would
have to expect to gross $30,000 or so to even consider doing a port.  At
$150 a shot, that's 200 compilers -- and that assumes I get full retail for
every purchase, which means no discounts through the mail order houses.  I
really don't think there are 200 people who need such a beast, but if you
can send me a petition, I'll reTHINK the issue. :)

     Of course, there is the more traditional way.  I could charge
$500-$1000 per compiler, which is not out of range for this sort of
product. Apple makes this look like price gouging by selling their
cross-development products so cheap, but at this price I could do the
product if I thought there were 30- 60 people who wanted the compiler.

     So, to be blunt, the thing that is standing between here and an MPW
cross development version of ORCA/C is money.  Convince me that
numberOfCustomers * whatYouWillPay >= 30000, and we can talk turkey.

Mike Westerfield   (BYTEWORKS, CAT36, TOP3, MSG:23/M530)



                        >>> PROGRAMMER'S CORNER <<<
                        """""""""""""""""""""""""""

CHECK IT OUT!   This month's programmer's corner has all sorts of great
"""""""""""""   tips. We have a short discussion of what all of those
GS/OS prefixes are used for, how to copy files in AppleSoft BASIC, a
HyperCard question, and a bit of information about handling resources.
Check it out:


HERE IS WHAT ALL THOSE PREFIXES ARE USED FOR   Okay, there are currently 34
""""""""""""""""""""""""""""""""""""""""""""   prefixes defined by GS/OS:
0-31, @ and *.

     The * prefix _always_ represents the startup disk.  The @ prefix
_always_ represents the user's path.  The user's path is the place that a
program should save its config files.  Normally, the @ prefix is set to the
same location that the program is located at, but if the application was
run from a server it would be  set to the user's folder on the server.

     Prefixes 0..7 aren't really used that much anymore because they are
throwbacks to the ProDOS-16 day and can only handle 64 character pathnames
(the others can deal with 8K pathnames).  Although, if possible, 0 always
mirrors 8 and 1 always mirrors 9 - if possible.

     Prefix 8 is the "working prefix". It's what Standard File looks at,
it's what evelopment shells consider the current directory, all that good
stuff.

     Prefix 9 is the "application prefix". It's always set to the location
of the current application. For example, my programs always use
9:HelpSystem as the  pathname for their help systems (btw: to explain the @
prefix, my programs always use @:MySettings for the configuration files).

     If a program had some data files associated with it (title screens,
etc), and chose not to put them in resources (tsk, tsk), they use something
like: "9:MyData:MyTitleScreen" to get to it.

     Prefixes 10, 11 and 12 are kinda reserved by GS/OS for input, output
and erroroutput.

     Prefixes 13..31 are free for the taking - BUT, if an application uses
them, they MUST restore them after exiting - do NOT just wantonly stomp on
System- wide resources like prefixes.

     Hope this helps, not you put it in English instead of programmer-speak
:)  Bryan      (SOFTDISK.INC [Zak], CAT13, TOP4, MSG:85/M530)


CLARIFICATION ON PREFIX 13 THROUGH 31 USE   > Prefixes 13..31 are free for
"""""""""""""""""""""""""""""""""""""""""   > the taking - BUT, if an
> application uses them, they MUST restore them after exiting - do NOT just
> wantonly stomp on System- wide resources like prefixes.

     Where did this notion come from?

     I mean, there's definitely nothing wrong with saving/restoring
prefixes, and it's required if you're not an application...but nothing
anywhere says that an application has to save/restore prefix values.

     That presumes that some code can be depending on a value in prefix
13-31 to stay the same across an application launch, which is really false.

     As far as I know, Apple's always said prefixes 13-31 are for the
application to do as it sees fit with, and depending on any values in them
or expecting them to stay set isn't valid.

--Matt (I speak for myself, not for Apple)
                 (M.DEATHERAGE, CAT13, TOP4, MSG:87/M530)



HERE IS A WAY TO COPY FILES FROM APPLESOFT   > From: A2.DEAN [A2 Chief]
""""""""""""""""""""""""""""""""""""""""""   > We are in need of either an
> Applesoft command file or & command to handle copying files under
> Applesoft. We need something that is compatible with Appletalk and that
> is available for a reasonable price.

     Is free okay?  :-)

     I just got finished documenting a way to copy files from BASIC for
Greg Da Costa (Greg, do you have that message?).  It's really easy to do if
you have MD-BASIC.  Here was the general approach:

  fVerify Source$
  fileType = PEEK(_FIFILID)
  fCreate Target$ ",T" fileType
  fOpen Source$ ",T" fileType
  srcRefNum = PEEK(_OREFNUM)
  fOpen Target$ ",T" fileType
  trgRefNum = PEEK(_OREFNUM)

  gosub FileCopy             ' Copy srcRefNum to trgRefNum

  fClose Source$
  fClose Target$


     That's it!

     The FileCopy subroutine is the part I documented thoroughly for Greg.
In essence, all it loops through MLI _READ and _WRITE calls (poked in at
768) until an error (end of file) occurs.  There was a little trickery
involved in setting up a file I/O buffer using an integer array (which is a
keen trick for allocating safe, albeit slippery, data buffers in BASIC).
If you can't get this stuff from Greg, I'll document it again.

     The code involved could be easily rolled into a nice MD-BASIC
subroutine to stash away in your library of cool routines.  It's probably
less than a couple hundred bytes and would have less impact on memory than
an external ampersand command or added BASIC command, yet perform
admirably.

     With a little extra code, you could have it do a _SET_INFO on the
Target$ file so that the modification dates and file access info is
duplicated, but that might not be important.  This is essentially:

 fVerify Source$

and then change the MLI command at 768 to do a _SET_INFO.

     MD-BASIC's <prodos.h> interface file contains all the MLI codes and
ProDOS BASIC global page structure addresses (e.g. _SGINFO for the set/get
file info stuff).  It makes integrating low level MLI access with your
BASIC programs clean and easy.
                  (MORGAN-DAVIS, CAT9, TOP7, MSG:23/M530)


HERE IS THE FILECOPY SUBROUTINE    > I just got finished documenting a way
"""""""""""""""""""""""""""""""    > to copy files from BASIC for Greg
> Da Costa (Greg, do you have that message?).

     Yes, I do.  Here it is:

     Date: Tue, 26 Jan 1993 11:58:48 -0800 Ppath: pro-desert!root To:
root@pro- desert From: mdavis@mdg.cts.com (Morgan Davis) Subject: File copy
code

     Here's a routine I snagged from sendmail. It uses AmperWorks &MLI
command, but you could easily create your own at, say, $300, and just CALL
768 after poking the arguments in.  &MLI calls the MLI ($BF00) directly.
However, you can make use of BASIC.System's easier GOSYSTEM ($BE70)
interface.  Here's how the ProDOS Tech Ref describes it:

>GOSYSTEM is used to make all MLI calls since errors must be translated [to
>BASIC error codes] before returning to the calling routine.  On entry, the
>accumulator should contain the MLI call number.  The address of the
>parameter table is looked up and set based on the call number.  Only file
>management calls can be made using this routine: $C0 - $D3.  The original
>implementation of this BASIC system program contains only these calls.

     So, to replace the &MLI statements, you'd do something like this:

        POKE $300, $A9          ' LDA #..
        POKE $301, _READ        ' MLI Code number
        POKE $302, $20          ' JSR
        POKE $303, $70          ' $xx70
        POKE $304, $BE          ' $BExx
        POKE $305, $85          ' STA ..
        POKE $306, $00          ' zero page location $00
        POKE $307, $60          ' RTS

        CALL $300               ' Call the MLI

        errCode = peek(0)       ' Get the error code

     Of course, you could optimize this by poking all the stuff in except
for the MLI code number and only do that before each CALL (the other stuff
would already be in place):

        POKE $301, _READ
        CALL $300
        errCode = peek(0)

     See the prodos.h file for all the MLI codes and locations for the
parameter tables.

     The &POKE command in AmperWorks just pokes values into subsequent
locations so that you don't have to have a whole string of individual POKE
N,X : POKE N+1,Y : POKE N+2,Z, etc.  So, &MLI and &POKE are easily
simulated in BASIC, but the code is a little more verbose.

     The FileCopy subroutine requires an open file reference number in
"src" for the source file, and "trg" for the target file.  Earlier in your
program, you'll want to DIM an integer array called IOBuf%.  This array is
used as the read/write buffer, and is about the easiest way to allocate a
huge chunk of space in BASIC without stepping on something.  A 1K or 2K
buffer should be fine, though you could get away with as little as 256
bytes if space is really tight.  Anything smaller than 256 bytes would give
you terrible disk access.

     BTW, the formula for dimensioning IOBuf% is to take the bytes desired
and divide by two, because integer array elements are 16-bits wide.  Thus,
DIM IOBuf%[512] would give you a 1K Buffer (512 * 2 = 1024).

To use the FileCopy routine, you'd do something like this:

#include <prodos.h> #include <fileio.h>

#define IOBUFSIZ        $0400                   ' 1K buffer #define IOBUFL
                        $00                     ' (low byte of IOBUFSIZ)
#define IOBUFH          $04                     ' (high byte of IOBUFSIZ)

        DIM IOBuf[IOBUFSIZ / 2]                 ' Allocate an I/O buffer

        fVerify SourceFile$                     ' Does a GET_INFO
        theType = peek(_FIFILID)                ' Get source file's type

        fCreate TargetFile$ ",T" theType        ' Create target file

        fOpen SourceFile$                       ' Open source
        src = peek(_OREFNUM)                    ' ...get refnum
        fOpen TargetFile$                       ' Open target
        trg = peek(_OREFNUM)                    ' ...get refnum

        gosub FileCopy                          ' Copy source to target

        fClose SourceFile$                      ' Close files
        fClose TargetFile$

That's it!  Here's the FileCopy routine:



' ====================
  FileCopy: ' ====================
        & poke _NEWLREF, src, 0                 ' Turn off newline mode
        & MLI (_NEWLINE, _SNEWLIN), errCode

        ' Find address of IOBuf%[0] for file I/O buffer space.
        ' All variables used up to the end of the routine should
        ' be presented here so that their space is allocated now.

        a1 = 0
        a2 = 0
        IOBuf%[0] = 0
        poke 0, peek(131)
        poke 1, peek(132)
        a1 = peek(0)
        a2 = peek(1)

        ' WARNING!  DO NOT INTRODUCE ANY NEW VARIABLES HERE!
        ' If you introduce an undefined variable at this point,
        ' memory will move and the pointer now contained in a1/a2
        ' will not be valid!  Introduce variables above where
        ' indicated.

        repeat
                & poke _RWREFNUM, src, a1, a2, IOBUFL, IOBUFH
                & MLI (_READ, _SREAD), errCode
                if not errCode then
                        & poke _RWREFNUM, trg, a1, a2, \
                                peek(_RWTRANS), peek(_RWTRANS+1)
                        & MLI (_WRITE, _SWRITE), errCode
                endif
        until errCode

        poke _CFREFNUM, trg
        & MLI (_FLUSH, _SFLUSH), errCode return


  _   _
 / _ | \   Greg Da Costa
 \_| |_/  A2Pro Archivist    (who hasn't had time to try it out yet)
                   (A2PRO.GREG, CAT9, TOP7, MSG:27/M530)


HOW DO I IMPORT DATA BASE INFO INTO HYPERCARD GS?   Can someone give me
"""""""""""""""""""""""""""""""""""""""""""""""""   some quick information?
I'm looking for a simple way to import AWGS DB info into a HCGS stack.  I
can't find any provisions for importing data from outside sources in any of
the manuals.  It this a really impractical thing to accomplish?  It seems
strange that HyperCard, which is  designed to organize and handle
information could not import data from other sources simply and easily.

     I want to use HCGS because of its flexible printing template support.
             (D.DILGER [PH /// Dan], CAT18, TOP3, MSG:24/M530)


THE MOST STRAIGHTFORWARD WAY IS TO USE A TEXT FILE    > I'm looking for a
""""""""""""""""""""""""""""""""""""""""""""""""""    > simple way to
> import AWGS DB info into a HCGS stack.

     HyperCard doesn't have facilities to manage _every_ way data could be
stored.  It also won't read DBase, DB Master, Filemaker Pro, Lotus 1-2-3 or
many other "well-known" file formats because if it did HyperCard would be
twice its current size.

     It _will_ read text files, though, and you can make a text file report
from an AppleWorks Data Base.  That seems like the most straightforward way
to me.

     Of course, the AW DB format is documented, and it's possible someone
could write an external function to do it.  But that's a question best left
to HangTime, externalist extraordinare.  :)

--Matt (I speak for myself, not for Apple)
                 (M.DEATHERAGE, CAT18, TOP3, MSG:25/M530)


ONE MIGHT BE ABLE TO READ THE INFORMATION DIRECTLY   I haven't looked at
""""""""""""""""""""""""""""""""""""""""""""""""""   the AWGS file
structure, but it is also possible to read non-text files ("open" and
"read" can be used with non-text files, too) and "parse" the information
out of them.

     Exporting the data to a tab-delimited text file would make the process
easier, though. You can "read until return" to get each line, then locate
the tabs to break the line up into fields (HyperCard 1.1's "itemDelimiter"
property makes this very easy; you just set the itemDelimiter to tab and
read the items sequentially).
              (A2-CENTRAL [Dennis], CAT18, TOP3, MSG:27/M530)


HOW TO CORRECTLY MANIPULATE RESOURCE FORKS   Recently there was a thread
""""""""""""""""""""""""""""""""""""""""""   over in A2 about a buggy
Finder extension that wasn't properly closing files it accessed. In any
case, there's something that we should talk about folks.

     Over the past year I've seen maybe 10 submissions here at Softdisk
where the programmers were manipulating a file's resource fork. In other
words, they called OpenResourceFile with read and write (r/w) access.

     The problem is that you have to check for errors when you make the
CloseResourceFile call.  If you don't and just quit, Bad Things can happen.

     Now, you may be thinking, what kind of errors can happen from
CloseResourceFile that won't happen on AddResource?!?  Remember that the
Resource Manager does NOT immediately flush your stuff out to the disk.
How about disk write protected errors?  Or, perhaps disk full errors?  What
about volume not found errors (they could have ejected the disk!)

     First, the brute force solution: If CloseResourceFile fails, set bit
15 of the file ID and pass it back to CloseResourceFile.  This is
documented in the Programmer's Reference to 6.0 and simply tells the
Resource Manger to just go ahead and close the file regardless of the
ramifications.

     Second, the "nice, program is subserviant to the user" solution: write
yourselves an RMCloseResourceFile routine that does the following:

  o saves the current sysprefs
  o sets them so that the user is prompted for disks (w/ a cancel button)
  o call CloseResourceFile
  o if it finishes the restore sysprefs and return
  o if it (er, up above if no errors) fails then do the following:

     o if volNotFound, set bit 15, call CloseResourceFile and cleanup
     o if writeProt, then find the pathanme (you can do this if you
       know the fileID), eject the disk (if not ejectable, then just
       force it closed with bit 15, and cleanup--could be on a CD-ROM
       in this case!), and display an alert like "The file xxx could not
       be written because the disk yyy is write-protected. Slide the
       write-protect..etc...(Cancel) ((Try Again))"
         o if the user cancels, then force it closed, and cleanup
         o if the user tries again, then well, try again
     o all other errors just force it closed and cleanup

     btw: Force it closed means to set bit 15 of the fileID and call
CloseResourceFile again, and cleanup means to restore sysprefs and exit.

     Now...if anyone is interested I can pull my RMCloseResourceFile
(fileID) routine out of GSLib and place it a library by itself so that you
can link it into  any ORCA/APW program.  I have interfaces/headers for
assembly, C and Pascal. I'll also include the source code if anyone likes.

Bryan         (SOFTDISK.INC [Zak], CAT15, TOP30, MSG:37/M530)



                            >>> HOT TOPICS <<<
                            """"""""""""""""""
I'M LOST AND I CAN'T FIND MY WAY BACK HOME   If you're using a word
""""""""""""""""""""""""""""""""""""""""""   processor and you hit the Home
key on your extended keyboard, where do you expect/want the cursor to go
to?

     This is not an idle question, it's one that's causing (almost)
bloodshed in the office. Jay
                    (PUNKWARE, CAT31, TOP8, MSG:3/M530)


HOME IS AT THE TOP OF THE FILE...   Well, naturally, I expect the cursor to
"""""""""""""""""""""""""""""""""   go home.  Where else?
The word pro text editor should draw a little picture of a house with a
garage and a dog out front (tail wagging optional) and the cursor should
move inside.

     Barring that, I think the cursor should go to the top of the file.

     - Andy
              (FADDEN [HardPressed], CAT31, TOP8, MSG:4/M530)

>>>>   Home goes to the top left of the document.  The very top That's how
"""""   it's supposed to work.  -Dean Esmay
               (A2.DEAN [A2 Chief], CAT31, TOP8, MSG:5/M530)

>>>>>   Hmmm, good question. I can see how you may have opened a can of
"""""   worms.  As for myself, I would expect it to go to the very
beginning of the document.  -Jim Couch
             (J.COUCH2 [A2Pro Lamp], CAT31, TOP8, MSG:10/M530)

OR IS IT THE CORNER OF THE SCREEN?   Home should send the cursor to the
""""""""""""""""""""""""""""""""""   upper left corner of the screen.
Bear                (A2.BEAR, CAT31, TOP8, MSG:14/M530)

OR MAYBE THE BEGINNING OF THE CURRENT LINE?   Hmmmmmm?  No, home and end
"""""""""""""""""""""""""""""""""""""""""""   should go to the beginning
and end of the current line, respectively.  Command-page-up and
Command-page-down (or Option?) should go to the beginning and end of the
document.          (QC [Jerry], CAT31, TOP8, MSG:6/M530)

>>>>>   I would expect it to go to the beginning of the current line,
"""""   unless I did something like Control-Home, or Shift-Home or something to
that effect that would make it go to the top of the document
 __
 |_)avid
|\/|iller  (D.MILLER132 [GTerm] [Dave], CAT31, TOP8, MSG:12/M530)

>>>>>   Home and End should send the cursor to the beginning and end of the
"""""   line. Ctrl-Home and Ctrl-End should go to the beginning and end of
the document.

     If Home and End just move the scroll bars and not the cursor then what
is the point?  You would then have to move your hands from the keyboard to
click with the mouse to move the insertion point or else the first thing
you type puts you back where you started.   ...Chris
               (K.FLYNN [ Chris ], CAT31, TOP8, MSG:18/M530)

HOME ACCORDING TO THE HUMAN INTERFACE GUIDELINES   Thus spake the original
""""""""""""""""""""""""""""""""""""""""""""""""   Human Interface
Guidelines, on page 105, which define the function keys of the extended
keyboard:

     "Home.  Pressing the Home key is equivalent to moving the scroll boxes
(elevators) all the way to the top of the vertical scroll bar and to the
left end of the horizontal scroll bar.  _It has no effect on the location
of the insertion point or any selected material._"  [italics -theirs-]

     "End.  This is the opposite of Home: it's equivalent to moving the
scroll boxes (elevators) all the way to the bottom of the vertical scroll
bar and to the right end of the horizontal scroll bar.  _It has no effect
on the location of the insertion point or any selected material._"  [again,
italics theirs.]

     "PC programs do it differently" is not a good reason, IMHO, to violate
these published guidelines.

--Matt (I speak for myself, not for Apple)
                 (M.DEATHERAGE, CAT31, TOP8, MSG:13/M530)


HERE IS YET ANOTHER IDEA   Jay, one of the nicest features for HOME and END
""""""""""""""""""""""""   keys that I have ever seen was implemented in
BRIEF (a programmer's editor in the MSDOS world).

     Basically, hitting either key once would take you to beginning of line
(HOME key of course....End of line with end), hitting it a second time took
you to TOP/BOTTOM of page, and a third time would take you to top of file
or end of file.  It was incredibly easy to remember (only 1 key) and you
just have to use the same key 1 2 or 3 times. Try it!   -Shawn
                   (S.QUICK1, CAT31, TOP8, MSG:17/M530)

                                 [*][*][*]


EDIT 16 IMPROVMENT SUGGESTED   Really!  This is GREAT!!!!!!!!!  I am VERY
""""""""""""""""""""""""""""   glad to hear this as EdIt-16 is my favorite
editor and I use it about 50 hours a week :)

     Do you want suggestions for improvements?

     One I would like to see is having it remember that last position in a
source file. I think this could be done by saving the position in a resouce
and (a resource in the source file itself) and just not choking if the
resource isn't present.  Bryan
               (SOFTDISK.INC [Zak], CAT35, TOP5, MSG:2/M530)


MULTIPLE MARKERS COULD EVEN BE STORED IN RESOURCES   I talked to Bill
""""""""""""""""""""""""""""""""""""""""""""""""""   yesterday about a
really cool way to do multiple markers.

     There would be three new commands: Mark, UnMark, Move to Mark.
Setting a mark would be as simple as pressing the key equivalent and then
you would be  prompted (either with a dialogue or at the bottom of the
screen) for a name to use for the mark (eg, About Window). Then, to move to
a mark, one would invoke the command and you'd get a scrolling list of all
your marks (kinda like the  dialogue one gets when switching buffers with
more than 2 files open) and you can just select one to jump to.

     To remove a mark, select the unmark command and you get the list once
again, this time the selected mark is deleted.

     The best part of this would be that the marks would be saved as a
resource and available everytime you edit the file. This would be very cool
(I got the idea from MPW by the way).  Bryan
               (SOFTDISK.INC [Zak], CAT35, TOP5, MSG:5/M530)


SOME PEOPLE DON'T WANT RESOURCES ATTACHED TO SOURCE CODE   I don't want any
""""""""""""""""""""""""""""""""""""""""""""""""""""""""   resources
attached to any of my source code files. period. perhaps a separate data
file could contain the "mark" information.  :-)
                 (JWANKERL [Joe], CAT35, TOP5, MSG:7/M530)


SOME PEOPLE DON'T WANT ANY MORE FILES!   Please don't create yet another
""""""""""""""""""""""""""""""""""""""   file that I have to keep track of.
Let's see, for a given source file we could have a .mac, .sym, .root, .a,
etc files.  Please, don't go and add a .mrk and .pos file as well - it
would seem to just complicate things further in my opinion.

     As an example, it would have been nice if ORCA/C 2.0's symbol tables
were actually resources in the source file instead of external files things
would be cleaner.

     I guess if the rule had been "Apple IIGS source code files may have
resources attached to them, under no condition should these resources be
stripped or changed or assumed to even exist."  <sigh>   Bryan
              (SOFTDISK.INC [Zak], CAT35, TOP5, MSG:14/M530)


POSITIONAL DATA WILL BE AN OPTION   IF Edit-16 allows the creation of
"""""""""""""""""""""""""""""""""   positional data, it will be an option.
As Bill hasn't walked into this budding mine-field yet, I'm going to go
with an assumption that 2.0 will not add resources or external files for
this feature.  Marc Wolfgram,  Lunar Productions
           (M.WOLFGRAM2 [Lunar Host], CAT35, TOP5, MSG:15/M530)


EDIT 16 AUTHOR ENTERS THE MINE FIELD!   Well, Bill just walked into the
"""""""""""""""""""""""""""""""""""""   "minefield". My position is still
"open" on these ideas. If something like adding resources to SRC files, or
adding a ".mrk" file was done, then it would be an _optional_ function in
the editor. -Bill   (W.TUDOR, CAT35, TOP5, MSG:16/M530)


YET ANOTHER IDEA!   MicroEmacs supports 'tags' and the ctags program.
"""""""""""""""""   Basically the ctags program creates a tags file which
contains a list of functions in the C code and how to find them by context.
That way, even if you insert lines and such it can locate your function
quickly. -Jawaid  (PROCYON.INC, CAT35, TOP5, MSG:12/M530)


ANOTHER APPROACH IS THIS...   vi and emacs have something called "mode
"""""""""""""""""""""""""""   lines"... basically, the first four or so
lines can be interpreted specially by the editor.  This allows you to put
things like "text mode" or "set tabstop=4" in there on a per-file basis.

     You could try to do something similar here, maybe adding them at the
end of the file when its saved and removing them when its loaded.  The
trick would be to use an appropriate comment delimiter to prevent them from
making the assembler/compiler/whatever choke.   - Andy
             (FADDEN [HardPressed], CAT35, TOP5, MSG:20/M530)


OR HOW ABOUT THIS APPROACH?   The way I see it, we don't want a bunch of
"""""""""""""""""""""""""""   extra files for each and  every SRC file we
edit, and I don't think we could ever come to any kind of consensus on what
special characters to use...so how about this:

     Why don't we simply define a set of user defineable 'rules' that are
stored in a file something like SYSTABS that define the marker positions
for each of the languages we use..for example:

ASM:
    |0{var}?| C:  |{var}(=){|

     {var} is the subsitution string passed to the 'find/locate/goto lable'
function.  So the first one would mean go to lable {var} if and only if it
starts in column 0 and is followed by anything (?). Or you could specify
the '0' as the first non white space char on a line, etc.

      The second definition for 'C' would mean go to function {var} which
must be followed by '(' and ')' with anything or nothing in between which
is then followed by a '{'.  There would also be flags to ignore white-space
etc.

      I think with just a few 'commands' we could create a 'goto label'
function for just about any language.   - Shawn
                   (S.QUICK1, CAT35, TOP5, MSG:23/M530)


THE PROGRAMER SPEAKS   Whether or not we add resources to a SRC file or add
""""""""""""""""""""   additional ".TAG" (or whatever) files to be "used"
with source files, I think we should work out a structure for this
information so that more than one utiltity (more than one editor, etc.)
could make use of it. I will spend a few weeks writing up a spec for "Line
tags" (for use with a "Goto..." command in Ed16). I will probably include
in the structure some project control items that may be used in a future
version of Ed16, as well as simply things like cursor position when file
was last saved. After I have done this, I will upload for everyone to
comment on and/or make additions to. Once we have a format, then we can
decide (with all issues being considered) where the structure will be
stored. I personally think the resource fork is a good place, but I also
think such a thing should not be done until the File Type Notes coverering
SRC files says it can be done. There is no doubt a "hit" with resource-
forked SRC files (P8, etc.) but I do not believe the ones discussed so far
are too much of a problem. In any case, saving this type of auxiliary data
would be an option in Ed16.

     Version 2.0 of Edit-16 will contain as many new features as I can get
coded and de-bugged before March 1. After March 1, Ed16 will  continue to
be updated and supported by Lunar Productions and myself. We will announce
the v2.0 features in the coming weeks...  Bill
                    (W.TUDOR, CAT35, TOP5, MSG:73/M530)



                         >>> MESSAGE SPOTLIGHT <<<
                         """""""""""""""""""""""""

     One topic that has gotten a LOT of discussion this past month is the
question of adding resources to GS source files. (See this month's HOT
TOPICS section for some of the discussion.) Various members of A2Pro have
advocated to either add resources to source code files, or to leave the
source code files alone. Morgan Davis presented this thoughtful argument in
favor of adding the resources.

                               [*][*][*]

Category 35,  Topic 5
Message 58        Sat Jan 30, 1993
MORGAN-DAVIS                 at 02:03 EST

Gack!!  What's the big deal here?!

     While we're making a huge fuss about why one should or should not
store editor info in the resource fork of a source file, Macintosh
programmers are productively coding away with ease and comfort right now!
They have resources attached to their source files.  They've done it for
years.  It works well.  The two major programming environments, MPW
(Apple's own, no less) and Symantec's THINK (C and Pascal) can read and
support each other's resources without trouble.  I can use any other text
editing program to open and read a file created with either MPW or THINK C.

     Time to play devil's advocate to make a point...

     Let's face it, the IIGS is a Mac-wannabe.  It has been since
inception, what with nearly identical toolbox nomenclature, user interface,
and so on. The IIGS has done a number of very intelligent things that the
Mac does not do.  However, it takes a major step back into the stone-age
with respect to this issue.  It is patently silly to accept an ivory tower
mandate that resources are big no-no's in source files, but they're okay
EVERYWHERE ELSE.

     The Macintosh developers, for better or worse, espouse ease-of-use and
strict adherence to the computer-human interface.  They would surely
protest if some Macintosh engineer at Apple decided, "Sorry folks, but you
have to keep those source files pure.  No editor info in the resource
forks.  Use separate, parallel files for holding window positions, current
text selection ranges, label tags, object file pathnames, and whatever else
is not source code."  Can you imagine having to manage and shuffle around
two files for each source file?  Under CP/M, sure.  MS-DOS, of course.
UNIX, indeed.  But, on the Mac?  How crude.  It would never fly in the
developer community.

     Since the IIGS is a Macintosh-wannabe, why not go The Mac Way?  It
makes sense.  Editor information saved in a file's resource fork totally
validates the entire concept of resources!  After all, isn't this what the
resource fork is for, supplementary info that you wouldn't want to get
mixed up with data, yet you want to be "part of" the document?  Bingo,
that's just what we need.  I don't understand why Apple has hesitated to
fully reverse its position with respect to IIGS source files.

     Okay, granted, there will be some trouble, especially with ProDOS-8's
inability to access extended files.  Well, so what?  I'm already annoyed by
the fact that I can't even delete an extended file from ProDOS-8, but I
don't think that's ever going to change.  Plus, you can easily strip a
file's source away from the resources if you have to by doing this in ORCA:

     type mySRCfile >myTXTfile

Problem solved.

     Then, someone was lamenting about Merlin not being able to read SRC
files but why would you want it to?  SRC files have plain text, and perhaps
even real TABS!  Merlin would get upset that it wasn't in its traditionally
bizarre format.  Nevermind resources; it's a bad example.

     Like everything, there are good and bad reasons for doing something.
Only, in my opinion, there are a lot more good reasons than bad for
allowing SRC+ files.

(End Lucifer's advocate mode).

  /\/\
 / /__\  Morgan Davis

                              [*][*][*]


    While on GEnie,  do  you spend most of your time  downloading files?
If so, you may be missing out some excellent information in the Bulletin
Board  area.   The messages  listed above  only scratch  the surface  of
what's available and waiting for you in the bulletin board area.

    If  you are  serious  about your AII, the GEnieLamp  staff  strongly
urge  you to give the  bulletin board area a try.   There are  literally
thousands  of messages  posted  from people  like you from  all over the
world.


[EOA]
[DEV]//////////////////////////////
              DEVELOPER'S CORNER /
/////////////////////////////////
News from the A2Pro Online Developers
"""""""""""""""""""""""""""""""""""""
By Jim B.Couch
    [J.COUCH2]



                      >>> ONLINE SUPPORT IN A2PRO <<<
                      """""""""""""""""""""""""""""""

     CAT  COMPANY
     ===  =======
     30   Procyon, Inc.
     31   Softdisk Publishing
     32   Morgan Davis Group (MDG)
     33   GS+ Magazine
     34   JEM Software
     35   Lunar Productions
     36   The Byte Works

     Each month this column feature highlights and news from various
developers who provide support via A2Pro:



                   >>> NEWS FROM PROCYON ENTERPRISES <<<
                   """""""""""""""""""""""""""""""""""""

MEET JAWAID BAZYAR OF PROCYON ENTERPRISES   Okay, I remember doing this
"""""""""""""""""""""""""""""""""""""""""   before but since everyone else
                                            is playing... :-)

     My name is Jawaid Bazyar, and I'm the Vice President of Procyon
Enterprises, Inc.  But more on that later.

     I started playing with computers in Junior High (we had a couple
][+'s). We had a small group of students who took a BASIC programming
course taught by one of the math instructors there.  I immediately got
violently addicted to the tune of bugging my parents daily to buy me a
computer.  Four years later I finally got a IIe. :-)  At that point, while
I'd written a lot of programs I'd not finished one of them. But, with the
IIe I also got a Hayes MicroModem IIe.  That was the beginning of the end
as far as my leading a normal non-computer life goes. I wrote a BBS system
in BASIC and assembly for the MM2E, and finished it.

     I attended the University of Illinois at Urbana Champaign, and got my
Bachelor's degree in May 1991 (in Computer Engineering).  In April 1991, a
friend of mine (Derek Taubert of GScii fame) and I got to  playing with
some multitasking on the IIgs.  We'd been discussing probabilities of
writing a UNIX operating system for the IIgs for almost two years (ever
since I discovered UNIX) and finally started doing something about it.  By
the time the First Annual Programming Party (attended by Tim Meekins from
Ohio and Greg Thompson from _Pennsylvania_) in Champaign came about, Derek
and I had a basic multitasker working. The program only ran two processes
that incremented numbers on the screen, but it proved that the basics of
multitasking were in fact possible on the IIgs.  (Two other people, Bill
Gulstad and one other whose name I've forgotten, had gotten to this point
before. Oh, it was Andy McFadden. :-)  Anyway, that had been accomplished
before but what we _really_ had to do was get multiple ORCA shell programs
running at once.  I got that part running in about two weeks (just after I
graduated) and two months later, after creating Procyon, Inc. (a Missouri
corporation) we showed GNO/ME off at the 1991 KansasFest.  Scott Gentry,
author of the Allison image software, has the distinction of being the
first Procyon customer when he bought GNO/ME.

     We finally finished GNO/ME 1.0 in Feb. 1992, and between then and now
I have written Switch-It! and am almost done with the next version of GNO
(which sports significant improvements over 1.0).  I'm greatly enjoying the
Apple II market and am actually on the verge of making money, which is
really great. (Thanks to all of our customers!)

     Current projects include a C compiler, a Scheme language system that
I'd like to convert to run Dylan programs, a telecommunications program
with Unix X-Windows style functionality, TCP/IP internetworking software,
and some things I can't mention because I'm under non-disclosure. :-)

  Jawaid          (PROCYON.INC, CAT1, TOP2, MSG:128/M530)



                   >>> NEWS FROM SOFTDISK PUBLISHING <<<
                   """""""""""""""""""""""""""""""""""""
By Bryan Pietrzak
   [SOFTDISK.INC]

     What's new at Softdisk this month you ask? Well, first, let's take
care of some old business: I'd like to thank everyone that responded to
last month's call for resumes--we've been very pleased. Hopefully, we'll
soon have a new employee (or two) to introduce to you!

     Okay, on to new business. The new business this month is definitely
the release of SoftdiskTools. SoftdiskTools is a library (OMF format, which
means you can use it with any ORCA or APW language) of routines that
Softdisk will be adding to every few weeks. First, a little history...

     Those of you that know me may have heard me talk about GSLib. GSLib is
a library of about 375 routines (kind of a mini-toolbox) that really help
me put out product for Softdisk G-S. Since GSLib is just too darn big to
release all at once, we (my manager and I) decided to release a few
routines every month (each routine will be thoroughly documented). In fact,
the documentation for SoftdiskTools looks just like the Toolbox Reference
documentation. Also, we'll be including sample source so that you can see
exactly how to use the routines in SoftdiskTools.

     Quite possibly the most important aspect of all this is the fact that
we are also releasing the source code! So, if you want to improve
SoftdiskTools, or (eek!) if you find a bug, you can make the changes
yourself. (Incidentally, the source code is 100% assembly, so if you use
Merlin, you should be able to port the source code over fairly easily).

     Okay, enough background, let's get to the important thing here, what
does SoftdiskTools v1.0 have for me this month?

  C1GetName..............extract the file name from a full pathname
  C1GetVolume............extract the volume name from a full pathname
  OSDoSysPrefs...........a handier way to deal with the system preferences
  OSExpandPath...........expands a pathname and can allocate a handle for
                         it
  OSUnlockDisk...........test a full pathname to see if the disk containing
                         the file is write-protected and if so, asks the
                         user to unwrite-protect it (if applicable, for
                         example, that would be kinda tough to do to a
                         CD-ROM disc).
  MMResizeHandle.........resizes the handle while maintaining its lock
                         state (it unlocks the handle before resizing).
  ResultToC1.............converts a Class 1 result string to a C1 string
  RMAddNamedResource.....pretty self-explanatory I think
  RMCloseResourceFile....handles errors nicely (eg, drvrWriteProt, volFull)
  RMDetachNamedResource..can you possibly guess what this one does?
  RMOpenResourceFile.....if looking for write access this routine will make
                         sure that the disk is not write-protected before
                         continuing. For example, doing this on a file that
                         is located on a CD-ROM disc returns drvrWriteProt
  RMRemoveNamedResource..come on, guess what this one does!

     SoftdiskTools is in Library 31 of A2Pro's library, if you have any
questions, suggestions, comments, whatever about it, feel free to stop by
Category 31, Topic 9 of A2Pro.

     Coming next month: BytesToString and FatalStartError (and supporting
routines!)



                      >>> NEWS FROM GS+ MAGAZINE <<<
                      """"""""""""""""""""""""""""""

GS+ OPENS MISCLIB SUPPORT TOPIC   This topic is for the discussion of the
"""""""""""""""""""""""""""""""   Miscellaneous Library (affectionately
known as MiscLib).  MiscLib contains routines to ease working with the List
Manager, to provide a slick Finder-like about window, to provide Undo/Redo
capabilities for TextEdit, and more!!!


     I'll be glad to discuss how certain routines work, concepts behind
undo/redo, and just about anything else pertaining to MiscLib.

     Also, I'd like suggestions for new routines that I could add into
MiscLib. The more the merrier.
                 (JWANKERL [Joe], CAT33, TOP7, MSG:1/M530)


MISCLIB V4.N3 NOW SHIPPING!   Hey, we're starting to mail out V4.N3 now, so
"""""""""""""""""""""""""""   I wanna blab about some new routines I've
*finally* thrown into MiscLib!  :-)  (I should have put them in there a
looooonnnng time ago...)  They are ConvertString and AppendString.
ConvertString will convert one string type to another (pascal, C, class 1
input string, class 1 output string, or generic text block).  AppendString
takes two strings (of any type) and concatenates them together giving you a
result of any of the above mentioned string types.  If you've ever
complained about the different string types before, now you can have some
fun!  :-)        (JWANKERL [Joe], CAT33, TOP7, MSG:6/M530)


MISCLIB INTERFACE INFORMATION   Sure!  I'd be glad to give a description of
"""""""""""""""""""""""""""""   the interface (which is finally consistent
                                among all my library calls now :-)

     OK, so let's say you've just called SFGetFile2 to get a file and you
want to display the filename - but nothing out there (except for TextEdit,
I believe :-) will accept a class 1 GS/OS output string aas returned by
Standard File. Just do this:

 PushLong pathRef
 PushWord #stOutputString+stHandle
  PushWord #stPString
 jsl >ConvertString
 sta pStringHndl
 stx pStringHndl+2

 ...OR...

 pStringHndl = ConvertString ((LongWord) ReplyRec.pathRef,
    stOutputString + stHandle, stPString);

 ...OR...

 pStringHndl := ConvertString (ReplyRec.pathRef,
    stOutputString + stHandle, stPString);

     As you might expect, the first parameter to ConvertString is the
original string to convert.  This string may be a handle, a resource ID, or
a pointer (except that text blocks can only be passed by resource ID or
handle).  The next parameter tells ConvertString what kind of string the
original string is, and if it's a handle, etc.  You can also pass
stDisposeHandle and ConvertString will dispose of the original handle for
you when its done with the conversion.  The last parameter is the desired
string type. When ConvertString is done, it'll give you a handle to the
converted string.

     You can make calls to the MiscLib from assembly, ORCA/C, or
ORCA/Pascal - or any language that follows the ORCA-style parameter passing
convention. (Inputs on the stack, results in the accumulator and X
register.)

     I'd be happy to go on and on, but I think this is enough information
for you to get a feel for what's going on.  :-)
                 (JWANKERL [Joe], CAT33, TOP7, MSG:8/M530)



[EOA]
[A2U]//////////////////////////////
                 A2U CAMPUS CHAT /
/////////////////////////////////
A2 University; Learning Online
""""""""""""""""""""""""""""""
By Jim B. Couch
     [J.COUCH2]



                  >>> A2U SPRING QUARTER HAS STARTED <<<
                  """"""""""""""""""""""""""""""""""""""

     A2 University started it's srping quarter this month with Marc
Wolfgram's introduction to Apple IIgs resources. This class just started at
the end of February so it is not to late to get involved. The class is
geared toward ALL GS users. You DO NOT need to be a programmer to benifit
or learn from this class! A later course will explore programming issues
related to resources.



JOIN A2U IN AN INTRODUCTION TO RESOURCES   Greetings... I'm Marc Wolfgram
""""""""""""""""""""""""""""""""""""""""   (we  CAN drop this PROFESSOR
stuff, right?) and I'll be your guide on this six week tour of Resources on
the IIGS.

     As Steve pointed out, I've been programming with and for Resources
since slightly before they were introduced with System 5.0.  I worked on
SSSi's Genesys, and later developed the Foundation project under our own
company, Lunar Productions.

     Resources are really neat and amazingly simple things, but they seem
to remain a mystery to quite a few folks.  I remember when I asked the now
infamous question "What are Resources?" and in response got an equally
confusing "Whatever you want them to be!"  What I quickly learned is the
real truth that lived in that answer.  Join me and your fellow tourists for
what I hope will be an enlightening introduction to Resources!

     This is the "tentative" outline I've prepared for the next six weeks,
but the course will be flexible and if you want to take a side excursion or
two, that's perfectly fine with me.

Resources - Introductory Short Course

Audience - Technical and non-technical Apple IIGS users.

Purpose - To provide an introduction to Resources and how they're used on
          the Apple IIGS.

Prerequisite - none.

Materials - TBR3 very helpful.


WEEK 1: WHAT ARE RESOURCES?  A comparison of conventional and resourced
        based programming will be discussed.  The benefits of programming
        with  resources will be highlighted.

WEEK 2: A TECHNICAL SIDETRACK INTO FILE STRUCTURES.  A quick review of
        ProDOS file structures and why files with resources left ProDOS 8
        in the dust.

WEEK 3: RESOURCES AND TOOLS, A SYMBIOTIC WORLD - PART 1.  The anatomy of
        a program's resource data.  How resources use other resources.

WEEK 4: RESOURCES AND TOOLS, A SYMBIOTIC WORLD - PART 2.  How the Window
        and Menu Managers are easier to use with resources.  The benefits
        for the end user add up too.

WEEK 5: SYSTEM 6, THE FINDER AND OTHER GOODIES.

WEEK 6: PROGRAMS FOR RESOURCES, A SURVEY OF WHAT'S OUT THERE.  Shareware
        and commercial products will be discussed for a variety of
        programming and non-programming purposes.

Thanks for having me :) Marc Wolfgram (M.WOLFGRAM2)
           (M.WOLFGRAM2 [Lunar Host], CAT22, TOP24, MSG:5/M530)


INTRODUCTION TO RESOURCES COURSE OFFICIALLY BEGINS   I thought I had done
""""""""""""""""""""""""""""""""""""""""""""""""""   this earlier, so
excuse the delay in this post!  I had a bit of a problem getting the first
lesson up last week... in fact it didn't get up until Tuesday, so we're now
off by one week on the Introduction to resources course.

     The first lesson is up in A2PRO Library 16... stop by before Wednesday
and download it.  Wednesday (Feb 24) starting at 9:30 EST I'll be in the
A2PRO RTC to answer any questions you have.  I'm looking forward to talking
with you Wednesday!  You can also send me email (M.WOLFGRAM2).

Marc Wolfgram

 *********************************
Number: 3173  Name: A2URESINTRO.BXY
Address: M.WOLFGRAM2                Date: 930217
Approximate # of bytes: 4736
Number of Accesses: 40  Library: 16

Description:
This is the first lesson in the A2U Introduction to Resources for the Apple
IIGS.  The RTC is Wednesday nights at 9:30 EST.  Marc Wolfgram

Keywords: A2U, Resources, Apple IIGS, IIGS, Beginners, Introduction
           (M.WOLFGRAM2 [Lunar Host], CAT22, TOP24, MSG:26/M530)



[EOA]
[LIB]//////////////////////////////
                  ONLINE LIBRARY
/////////////////////////////////
HOT Files You Can Download
""""""""""""""""""""""""""

     File #  Filename             Desc
     ------- -------------------- -----------------------------------------
     3173    A2URESINTRO.BXY      A2U Resource Introduction, lesson 1
     3142    ORCAQUIKREF.BXY      Orca Editor 2.0 Quick Reference
     3140    ALL.NOTES.BXY        All TNs and FTNs as of 6/92
     3139    ALL.TNS.BXY          All Technical Notes as of 6/92
     3124    ALL.FTNS.BXY         All File Type Notes as of 6/92
     3127    SFTDSKTOOLS.BXY  V1. A library of VERY handy routines!
     3121    U42UP.BXY            Updates Ultra 4.1 v1.1 to Ultra 4.2
     3120    U42.BXY              Updates Ultra 4.1 v1.0 to Ultra 4.2
     3109    AW20ROSETTA.BXY      AW 2.0 Rosetta Stone - Classic Specs
     3107    A2U.ULT.ALL.BXY      Ultra 4 to the MAX! The whole course
     ------- -------------------- -----------------------------------------


UPDATES TO ULTRA 4.1 AVAILABLE VIA A2PRO LIBRARY!
"""""""""""""""""""""""""""""""""""""""""""""""""
 ------------
 Number: 3120
 Name: U42.BXY
 Address: BRANDT
 Date: 930211
 Approximate # of bytes: 50944
 Number of Accesses: 1  Library: 34

     This archive contains all of the files needed to upgrade Ultra 4.1
v1.0 to Ultra 4.2. If you already have Ultra 4.1 v1.1, you can download the
smaller U42UP.BXY archive. Changes include a new debugger, bug fixes, and
several new dot commands. Note: These files are useless for pre-Ultra 4.1
users.

Keywords: jem,macros,ultra,ultra 4

 ------------
 Number: 3121
 Name: U42UP.BXY
 Address: BRANDT
 Date: 930211
 Approximate # of bytes: 22400
 Number of Accesses: 1  Library: 34

     This archive contains all of the files needed to upgrade Ultra 4.1
v1.1 to Ultra 4.2. If you just have Ultra 4.1 v1.0, you need the U42.BXY
archive. Changes in Ultra include a new debugger, bug fixes, and several
new dot commands. Note: These files are useless for pre-Ultra 4.1 users.

Keywords: jem,macros,ultra,ultra 4

            (A2PRO.TODDPW [growf?], CAT1, TOP22, MSG:7&8/M530)

                                 [*][*][*]


APPLE TECH NOTES AVAILABLE IN ONE PLACE!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ------------
 Number: 3140
 Name: ALL.NOTES.BXY
 Address: M.DEATHERAGE
 Date: 930214
 Approximate # of bytes: 1078912
 Number of Accesses: 8
 Library: 2

     This archive contains all the Technical Notes and File Type Notes
released by Apple Computer as of 6/92, which was the last released batch.
Downloading this archive gives you _all_ the current Technical Notes and
File Type Notes; you'll have every one of them and can throw all your older
ones away.

Keywords: Apple,TN,FTN,Technical,Technote,Filetype,File Type,DTS


 ------------
 Number: 3139
 Name: ALL.TNS.BXY
 Address: M.DEATHERAGE
 Date: 930214
 Approximate # of bytes: 828160
 Number of Accesses: 2
 Library: 2

     This archive contains all the Technical Notes (but not File Type
notes) released by Apple Computer as of 6/92, which was the last released
batch. Downloading this archive gives you _all_ the current Technical
Notes.

Keywords: Apple,TN,Technical,Technote,Notes,DTS


 ------------
 Number: 3124
 Name: ALL.FTNS.BXY
 Address: M.DEATHERAGE
 Date: 930213
 Approximate # of bytes: 273280
 Number of Accesses: 3
 Library: 2

     This archive contains all the File Type Notes released by Apple
Computer as of 6/92, which was the last released batch.  Downloading this
archive gives you _all_ the File Type Notes that have been published.

Keywords: Apple,TN,FTN,Filetype,File Type,Notes,DTS

                                 [*][*][*]


DOWNLOAD ALL OF THE "ULTRA 4 TO THE MAX!" COURSE AT ONCE!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ------------
 Number: 3107
 Name: A2U.ULT.ALL.BXY
 Address: A2PRO.STEVE
 Date: 930201
 Approximate # of bytes: 275328
 Number of Accesses: 14
 Library: 16

     This is all the lessons in the Ultra 4 to the MAX! course that was
taught by macro wizard Will Nelken. It's the same as the individual files,
but put up together for convenience.

Keywords: a2u,macros,ultra,max,course,appleworks


[EOA]
[LOG]//////////////////////////////
                         LOG OFF /
/////////////////////////////////
GEnieLamp Information
"""""""""""""""""""""

    o   COMMENTS: Contacting GEnieLamp

         o   GEnieLamp STAFF: Who Are We?

              o   GET_THE_LAMP Scripts & Macros

                    o   SEARCH-ME! Answers



GEnieLamp     GEnieLamp is monthly  online magazine  published  in  the
"""""""""     GEnieLamp  RoundTable  on page 515.   You can  also  find
GEnieLamp in the ST (475), the  Macintosh (605), the IBM (615) Apple II
(645),  A2Pro (530), Unix  (160),  Mac Pro (480), Geoworks (1050),  BBS
(610), CE Software  (1005) and  the  Mini/Mainframe (1145) RoundTables.
GEnieLamp can also be found on CrossNet,  Internet,  America Online and
many public and commercial BBS systems worldwide.

     We welcome and respond to all GEmail.To leave messages, suggestions
or just to say hi,  you can contact us in the GEnieLamp RoundTable (515)
or send GE Mail to John Peters at [GENIELAMP] on page 200.


U.S. MAIL
"""""""""
                       GEnieLamp Online Magazine
                           Atten: John Peters
                       5102 Galley Rd. Suite 115/B
                       Colorado Springs, CO  80915


                        >>> GEnieLamp STAFF <<<
                        """""""""""""""""""""""

  GEnieLamp    o John Peters        [GENIELAMP]    Editor-In-Chief
  """""""""

   ATARI ST    o John Gniewkowski   [J.GNIEWKOWSK] Editor
   """"""""    o Mel Motogawa       [M.MOTOGAWA]   ST Staff Writer
               o Terry Quinn        [TQUINN]       ST Staff Writer
               o Sheldon Winick     [S.WINICK]     ST Staff Writer
               o Richard Brown      [R.BROWN30]    ST Staff Writer
               o John Hoffman       [JLHOFFMAN]    ST Staff Writer

  ATARI TX2    o David Holmes       [D.HOLMES14]   TX2 Editor
  """""""""
 ATARI [PR]    o Fred Koch          [F.KOCH]       Editor/PD_Q
 """"""""""
        IBM    o Robert M. Connors  [R.CONNORS2]   Editor
        """    o Peter Bogert       [P.BOGERT1]    IBM Staff Writer
               o Brad Biondo        [B.BIONDO]     IBM Staff Writer
               o Tippy Martinez     [TIPPY.ONE]    IBM Staff Writer

  MACINTOSH    o James Flanagan     [JFLANAGAN]    Editor
  """""""""    o Richard Vega       [R.VEGA]       Mac Co-Editor
               o Dan "Remo" Barter  [D.BARTER]     Mac Staff Writer
               o Tom Trinko         [T.TRINKO]     Mac Staff Writer
               o Bret Fledderjohn   [FLEDDERJOHN]  Mac Staff Writer
               o Bill Garrett       [BILL.GARRETT] Mac Staff Writer

     MacPRO    o James Flanagan     [JFLANAGAN]    Editor
     """"""    o Erik C. Thauvin    [MACSPECT]     Supervising Editor
               o Chris Innanen      [C.INNANEN]    MacPRO Staff Writer
               o Paul Collins       [P.COLLINS]    MacPRO Staff Writer

   APPLE II    o Darrel Raines      [D.RAINES]     Editor
   """"""""    o Phil Shapiro       [P.SHAPIRO1]   A2 Co-Editor
               o Mel Fowler         [MELSOFT]      A2 Staff Writer

       A2Pro   o Jim B. Couch       [J.COUCH2]     Editor
       """""

    INTERNET   o Jim Lubin          [JIM.LUBIN]    GEnieLamp IBM
    """"""""

       ETC.    o Jim Lubin          [JIM.LUBIN]    Add Aladdin
       """"    o Scott Garrigus     [S.GARRIGUS]   Search-ME!
               o Bruce Faulkner     [R.FAULKNER4]  CrossNET Support
               o Mike White         [M.WHITE25]    Cowlumnist (CowTOONS!)


GEnieLamp CONTRIBUTORS
""""""""""""""""""""""

                   o Steven Weyhrich            [S.WEYHRICH]
                   o Bill Yung                  [W.YUNG1]
                   o Al Fasoldt                 [A.FASOLDT]
                   o Gina Saikin                [G.SAIKIN]


                       >>> SEARCH-ME! ANSWERS <<<
                       """"""""""""""""""""""""""

             + + + + + + S S U I R A U Q A + + + + + + + +
             + + + + + C + + + + + + E + + S U R U A T + +
             + + + + O + + A + + + + P + + + + O + + + + A
             + + + R + + N + + + + + O + + + E + + + + R +
             P + P + + A S + + C + + C + + L + + + + B + +
             + I + + L + A C + + A + S + + + + + + I + + +
             O + S Y + S G A + + + P O + + + + + L + + + +
             + + S C N + I N + + + G R + S N E V A E H A +
             + E + G E + T C + + E + O I + + + + + + S + +
             S + I + + S T E + M A + H + C + + + + T + + S
             L S + + + + A R I + + S + + + O + + R + + E +
             + A + + + + R N + + + + T + + + R O + + I + +
             + + C + + S I + + + + V I R G O L N + R + + +
             + + + I T + U C H A R T + + O O + + A + + + +
             + + + A T + S + + + + + + + G L + + + + + + +
             + + R + + S + + + + + + + I + + O + + + + + +
             + S + + + + Y + + + + + C + + + + G + + + + +
             + + + + + + + M + + + A + + + + + + Y + + + +
             + + + + + + + + + + L + + + + + + + + + + + +
             + + + + + + + + + + + + + + + + + + + + + + +

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\////////////////////////////////////
   Material  published in this  edition may  be reprinted  under  the
   following  terms  only.   All articles  must remain  unedited  and
   include  the issue  number and author  at the top of  each article
   reprinted.  Reprint permission granted, unless otherwise noted, to
   registered  computer user groups and not  for profit publications.
   Opinions  present herein  are those of the  individual authors and
   does  not necessarily  reflect those of  the publisher or staff of
   GEnieLamp.   We reserve  the right  to edit all  letters and copy.
   Include the following at the end of every reprint:
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\////////////////////////////////////
   (c) Copyright 1993 T/TalkNET Online Publishing and GEnie.  To join
   GEnie,  set  your modem  to 2400  baud  (or less)  and half duplex
   (local echo).  Have the modem dial 1-800-638-8369.  When you get a
   CONNECT message, type HHH. At the U#= prompt, type: XTX99368,GENIE
   and  hit  the return key.   The system will then  ask you for your
   information. Call (voice)1-800-638-9636 for more information about
   GEnie.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\////////////////////////////////////
[EOF]
