[HEA]
    _____________________   ___                                   _
    |___   ______________| |   |                                 | |
        |  | _             |   |                                 | |
        |  || |            |   |                                 | |
        |  || |            |   |                                 | |
        |  || |            |   |   ____ _   _ _   _   ______     | |
        |  || |            |   |  / __ \ | | / \_/ \  | ___ \    | |
        |  || |__   ____   |   | / /  \  | |  /\ /\ \ | |  \ \   | |
        |  ||  _ \ |  _ \  |   | \ \__/  | | | |_|| | | |__/ /   | |
        |  || | | || |_||  |   |  \___/|_| |_|    |_| | ____/    |_|
        |  || | | || |__   |   |____________________  | |         _
        |__||_| |_|\____/  |________________________| | |        |_|
                                                      | |
         Lighting Your Apple II Path                  | |
                                                      |_|

-----------------------------------


                       >>> WELCOME TO THE LAMP! <<<
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~


           THE BEST OF THE A2 BULLETIN BOARD ON Syndicomm Online
          AND THE BEST OF THE DELPHI A2 AND A2PRO MESSAGE BOARDS
           "Teaching the Apple II user how to fish since 1998"


 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 The Lamp!            An Onipa'a Software Production        Vol. 7, No. 9
 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Publisher................................Ryan M. Suenaga, M.S.W., L.S.W.
 Editor.....................................................Lyle Syverson
 Internet Email, Publisher.........................thelamp@sheppyware.net
 Internet Email, Editor................................lyle@FoxValley.net
 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

                            TABLE OF CONTENTS
                            ~~~~~~~~~~~~~~~~~
                            September 15, 2004

HIGH ABOVE THE ROCK RIVER---------------------------------------------[OPN]
     Two Copper Wires

A2 FORUM AT Syndicomm Online (A2Central.com) DISTILLATIONS------------[DAS]
     Two New Uploads in A2 Library------------------------------------[TNU]
     Another Upload in The A2 Library---------------------------------[AUL]
     Yet Another Upload in The A2 Library-----------------------------[YAU]
     New Version of VNCview GS Released-------------------------------[VNC]
     Wireless ADB Keyboard Tested-------------------------------------[WKT]
     Juiced.GS V9I3 on The Way----------------------------------------[JGS]
     Programmer's Chats Suggested-------------------------------------[PCS]
     Cooperative Approach to Programing For The Apple II's------------[CPA]
     Help With The Rez Resource Compiler------------------------------[HWR]
     Programing Help--------------------------------------------------[PGH]
     Help With Programing Using The Marinetti TCP/IP Stack------------[MTS]
     How do You Create an Accented 'e' in Windows?--------------------[CAE]
     Telnet/SSH Terminal Program for Windows--------------------------[TST]

ILLUMINATING THE LAMP-------------------------------------------------[ITL]
     An overview of GEnieLamp A2 and The Lamp!
          2001

ANNOUNCEMENTS FROM SYNDICOMM------------------------------------------[ANS]
     To Sign up for Syndicomm Online----------------------------------[TSU]
     September 2004 Issue of Syndicommotion Available-----------------[SSA]
     New Page Added for Syndicommotion--------------------------------[NPA]

LETTERS TO THE EDITOR-------------------------------------------------[LTE]
     No Letters to the Editor This Month
     An Invitation

KFEST 2004------------------------------------------------------------[KFF]
     Code for Ken G's HackFest 2004 Entry-----------------------------[KHF]

KFEST 2005------------------------------------------------------------[KF5]
     KansasFest 2005 to be Held July 19-24th--------------------------[TBH]
     KansasFest Website-----------------------------------------------[KFW]
     Golf Outing as an Event at KFest 2005?---------------------------[GOK]

EXTRA INNINGS
     About The Lamp! ------------------------------------------------ [INN]


                                [*] [*] [*]

READING THE LAMP!   The index system used by The Lamp! is designed to make
"""""""""""""""""   your reading easier.  To use this system, load this
issue into any word processor or text editor.  In the index you will find
something like:

EXTRA INNINGS
     About The Lamp! ------------------------------------------------ [INN]

To read this article, simply use your search or find command to locate
[INN].  There is a similar tag at the end of each article: [EOA].



[OPN]-------------------------------
         HIGH ABOVE THE ROCK RIVER |
------------------------------------
From The Editor
"""""""""""""""
by Lyle Syverson <lyle@FoxValley.net>

                             Two Copper Wires
                             ~~~~~~~~~~~~~~~~
     Observation of the valley from High Above The Rock River reveals that
the cool nights and warm days of early Fall have triggered the start of the
annual Parade of Colors.  Almost hidden among the changing leaves are the
power and telephone lines.  Cell phone towers sprout from hills.  This
leads to contemplation of the evolution of electronic communication during
one's lifetime.

     Back on the farm there were the poles carrying the two copper wires of
the telephone system.  The wooden box mounted on the kitchen wall was owned
by the phone company and serviced by them if needed.  Two bells mounted at
the top on the outside, a crank on the outside on the right, a hinged arm
12" in length allowed the mouthpiece to be adjusted for height, the
receiver hanging on a hook on the left side.  And a knife switch on the
wall above the box to disconnect the phone during thunder storms.

     It was a party line.  The number of parties varied... at one time
there were 27 parties on the one line.  Calling someone on the same line
involved using the crank to generate the power to ring the bells on all
those phones on the line... each party having a different combination of
long and short rings.

     Calling someone on another line in the same exchange involved calling
the operator with one long ring and asking for the party by name.  Same for
calling someone long distance in another exchange.

     It was easy to listen in on someone else's conversation so it happened
often.  While you were talking to someone the signal would slowly become
stronger as the snoopers decided the conversation was not interesting and
would hang up.

     For a fee the phone company would have the operator give a "general
ring" (a really long ring) calling all phones on all lines of the exchange
and reading an advertisement.

     The operators got to learn a lot about people in the community... who
was calling who... what they were talking about... etc.

     By today's standards it was rather crude... but it was possible to
talk to your friends and relatives without traveling to their home... order
fuel delivery to the farm... check on grain prices before hauling your
grain to the elevator for marketing... check to see if a certain spare part
was available for your machinery, etc.

     As time went on there were the dial phones... the party lines where
you heard only your own ring... the private lines... the touch tone
phones... own your own phones... multiple lines... direct dialing... fax
machines... modems... faster and faster modems... wireless (cell) phones.

     And now DSL... and competition from the TV cable systems... to move
data faster and faster...

     Broadband in the home must be getting quite popular... the local
Salvation Army "As Is" store has 56K modems for $1... I picked up a spare
and it works!

[EOA]



ASCII ART BEGINS
_________  _                     _                                      _
|__   __| | |                   | |                                    | |
   | |    | |                   | |                                    | |
   | |    | |___     ____       | |       _____   __ ___ _   _ _____   | |
   | |    | ___ \   / __ \      | |      /____ \  | v   v | | v ___ \  | |
   | |    | |  | | | /__\ \     | |       ____| | | /\ /\ | |  /   \ \ | |
   | |    | |  | | | _____|     | |      / ___  | | || || | | |    | | |_|
   | |    | |  | | | |_____     | |____  | |__| | | || || | |  \___/ /  _
   |_|    |_|  |_| \______|     |______| \____^_| |_||_||_| | |\____/  |_|
                                                            | |
                                                            | |
                                                            |_|

ASCII ART ENDS
[EOA]



[DAS]----------------------------------------------
DISTILLATIONS FROM The A2 FORUM at Syndicomm.com  |
                                  (A2Central.com) |
---------------------------------------------------

by Lyle Syverson <lyle@foxvalley.net>

[TNU]
TWO NEW UPLOADS IN A2 LIBRARY
"""""""""""""""""""""""""""""
There are two new uploads in the
a2/system_software/misc_16-bit/desk_accessories/nda directory:

File: myipnda1b2.bxy
Size: 6656
Date: Aug 22

MyIPNDA 1.0b2 is the latest version of my simple New Desk Accessory for
reporting the IP address of the Apple IIgs it runs on.  Version 1.0b2 fixes
a bug that may interfere with other NDAs or applications using substitution
strings.  Freeware by Ryan Suenaga; email a2.ryan@syndicomm.com for
assistance.

File: theirip1b1.bxy
Size: 7552
Date: Aug 22

TheirIPNDA 1.0b1 is the latest version of my simple New Desk Accessory for
looking up the IP address of computers on the Internet.  Freeware by Ryan
Suenaga; email a2.ryan@syndicomm.com for assistance.

Uploaded by the author, Ryan Suenaga.

Tony Ward, A2 Librarian

(A2.TONY, Cat 2, Top 37, Msg 37)
[EOA]


[AUL]
ANOTHER UPLOAD IN THE A2 LIBRARY
""""""""""""""""""""""""""""""""
There is a new upload in the
programming/a2pro_general_files/source.code.samples directory:

File: waitctrl.bxy
Size: 13824
Date: Aug 22

WaitCtrl.bxy - A custom IIgs control and example NDA code to utilize it.

Draws a rotating "barbershop pole".

Copyrighted Freeware / BSD license.

Uploaded by the author, Kelvin W Sherlock / kws@syndicomm.com

Tony Ward, A2 Librarian

(A2.TONY, Cat 2, Top 37, Msg 38)
[EOA]


[YAU]
YET ANOTHER UPLOAD IN THE A2 LIBRARY
""""""""""""""""""""""""""""""""""""
There is a new upload in the
system_software/misc_16-bit/desk_accessories/nda directory:

File: theirip1b3.bxy
Size: 7552
Date: Sep 5

TheirIPNDA 1.0b3 is the latest version of my simple New Desk Accessory for
looking up the IP address of computers on the Internet.  Implements a bug
fix for the redrawing of controls, and fixes a significant bug introduced
in 1.0b2.  Beta freeware by Ryan Suenaga; email a2.ryan@syndicomm.com for
assistance.

Tony Ward, A2 Librarian

(A2.TONY, Cat 2, Top 37, Msg 39)
[EOA]


[VNC]
NEW VERSION OF VNCview GS RELEASED
""""""""""""""""""""""""""""""""""
I've released a new version of VNCview GS, version 1.0b1 (it's at beta
status now, since it includes most of the features I have planned for a 1.0
release and has been demonstrated to work for some people other than me).
The main change is a considerable performance improvement in Raw mode;
whenever the server's display changes, the screen is updated much more
quickly than in previous versions.  This version also includes support for
resizing the server's screen while connected to it (some servers don't
support this, but RealVNC 4.0 and OSXvnc do) and for using servers with
screen dimensions smaller than the IIgs's.  VNCview GS 1.0b1 can be
downloaded at:

http://www.syndicomm.com/~s.heumann/VNCviewGSb1.bxy

Stephen Heumann

(S.HEUMANN, Cat 11, Top 37, Msg 11)
[EOA]


[WKT]
WIRELESS ADB KEYBOARD TESTED
""""""""""""""""""""""""""""
I just finished testing a wireless ADB keyboard with both a Mac and a
GS--this puppy works on both!

It's made by Acer, and while it doesn't have the same feel as a real GS
keyboard, it's nice to be "unwired" once in a while.  There's a description
of it on the seller's webpage:
     http://www.macsruscomputers.com/

Later.................Howard

(A2.HOWARD, Cat 17, Top 19, Msg 30)
[EOA]


[JGS]
Juiced.GS V9I3 ON THE WAY
"""""""""""""""""""""""""
I declared the pending Volume 9, Issue 3 of Juiced.GS final on Wednesday
night and passed it on to the publisher, so blame any shipping delays on
him :-)

Ryan
Editor-in-Chief, Juiced.GS magazine

(A2.RYAN, Cat 23, Top 2, Msg 622)

>>>>>
"""""
Volume 9, Issue 3 has been mailed to all subscribers.  Enjoy!

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.com
                     Building communities, bit by bit.

(SYNDICOMM, Cat 23, Top 2, Msg 627)
[EOA]


[PCS]
PROGRAMMER'S CHATS SUGGESTED
""""""""""""""""""""""""""""
After a chat with Ryan and a couple of others last night, it occurs to me
that something that might be good is to have a chat or two scheduled where
people could get together and discuss some ideas for developing software
that interacts with each other.

For example, instead of someone trying to write an email program, one
person could write an address book NDA, someone else could write a send
email program, and another person could write a read email program.
Designed to interact using IPC, these can become a fairly substantial email
package.

Similarly, a good all-around Uuencode/Binhex/Binscii/yEnc encoder and
decoder NDA, with some IPC calls, becomes an engine that can be used by web
browsers, news readers, and email programs to deal with file archives.

Nobody in our community has time for huge projects anymore -- we need to
find ways to develop lots of small, individual projects that work together
to do big things.

So I'd like to suggest that the staff here could host one, or a series of,
RTCs where programmers and prospective programmers could talk about ideas
for how to do this and what sorts of projects could be done.

I've already taken a step toward this by changing the design for my context
menu manager (formerly PapaSan, now SideClick), so that any Apple IIgs
program or DA can install items into the contextual menu, instead of having
to be done through SideClick-specific plugins.

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.co
                     Building communities, bit by bit.

(SYNDICOMM, Cat 2, Top 6, Msg 111)

>>>>>
"""""
This sounds like a pretty good idea.  I'm still in the learning stages
here.  I'm trying to do some small programs and learn a thing or two.
I like the new name of "Sideclick".

It will be interesting to see how this turns out.

Dain

(A2.DAIN, Cat 2, Top 6, Msg 112)

>>>>>
"""""
I think that this is a promising idea; where's that Kirk Mitchell guy to
look at a schedule?

I would like to address some of your other comments--let's move this over
to Category 50/topic 5, "Programmer's Cafe".

Ryan
Chief Sysop

(A2.RYAN, Cat 2, Top 6, Msg 113)

>>>>>
"""""
I'm willing to schedule something.

I wonder if the forum might not be just as important in assisting
programmers in deciding what to work on, as well as how.  I know nothing
about IPC, while Sheppy may explain it very well, so that even a dope like
me could understand, he's not going to want to do that live for every
ignorant programmer that comes along to an RTC.

The nature of the RTC does shine when brainstorming for ideas though.  Any
particular evenings that folks would like to see this on, and should we
move it to one of our rarely used other rooms to avoid annoying
nonprogrammers?

I'm always open for any RTC comments and requests!

Kirk

(A2.KIRK, Cat 2, Top 6, Msg 114)

>>>>>
"""""

I've always thought that the multiple rooms per forum was a greatly
underutilized* feature of Syndicomm, and I would say that this would be the
perfect opportunity to use it.
_________
  | homas

(TCOMPTER, Cat 2, Top 6, Msg 115)

>>>>>
"""""
I like the idea of using one of the other rooms, so non-programmers don't
have to put up with us. :)

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.com
                     Building communities, bit by bit.

(SYNDICOMM, Cat 2, Top 6, Msg 117)

>>>>>
"""""
I'm wondering if this scheduled conference is to focus on TCP/IP
applications in particular or just applications?  One way or another, it
may be helpful to invite some of our friends who only occasionally jump in
here (like Richard Bennett-Forrest, for instance; Ewen seems to be absent
now too).

Also, maybe a couple of conferences would make some sense as well.

Ryan
Chief Sysop

(A2.RYAN, Cat 2, Top 6, Msg 118)

>>>>>
"""""
I would think any kind of applications could benefit from this notion.

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.com
                     Building communities, bit by bit.

(SYNDICOMM, Cat 2, Top 6, Msg 119)

>>>>>
"""""
I am not absent, just somulent! I check in about twice a week these days,
as until Henrik gets Sweet Sixteen sorted out for OS X, I have to reboot my
Mac to get to OS 9.0.

It would certainly help to get a lot of these things into the desktop.
Most of the Internet related stuff I have written has revolved round
Spectrum for obvious reasons.
 
 Ewen Wannop - Speccie

(CONDUCTOR, Cat 2, Top 6, Msg 120)
[EOA]


[CPA]
COOPERATIVE APPROACH TO PROGRAMING FOR THE Apple II's
"""""""""""""""""""""""""""""""""""""""""""""""""""""
In another world (well, Cat 2, Top 6), Sheppy typed:

>> Nobody in our community has time for huge projects anymore -- we need to
find ways to develop lots of small, individual projects that work together
to do big things. <<

I've been thinking (and conversing with you similar ideas) on this for
quite some time.

If we look at the example of, say, a stand alone email program (not SAM,
that works, thanks, Ewen, but not everyone owns Spectrum :) I think that
one has not yet gotten done in some part because of feature creep, but also
that--and we don't usually think of this, since email is such a part of
everyday life--an email program is a -huge- undertaking.

To address feature creep--I think that some folks start working on their
email program thinking they'll bring Eudora 6 to the IIgs, when the reality
is, it took a team of programmers many years and revisions to get Eudora 6
on the platforms it's done completed.  It might be better to think more
along the lines of Claris Emailer Lite 1.0. :)

Then there is just the issue of a big project.  It's much more likely small
projects will get done than big ones, because of the time and size of such
projects, and then there's the psychological factor--there's a certain
reward psychologically of getting something finished and out the door.
Like many other things in life, a completed program is likely to result in
more completed programs, and it can be contagious, which is only good for
the Apple II community :)

In any case, I think that the idea of a bunch of small programs working
together is a great one.  Just last night I was thinking about the
feasibility of a CDev something like the old Internet Config on the Mac.  I
don't know enough about IPC yet to say how useful it could be, but it was
just a thought.

Ryan
Chief Sysop

(A2.RYAN, Cat 50, Top 5, Msg 16)

>>>>>
"""""
We actually talked about doing an Internet Config type of CDev years ago;
Geoff and I discussed it in particular and I was actually working on one at
one point but didn't get very far.

I'm not sure there are enough network programs of any given kind to make
this really necessary. :)

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.com
                     Building communities, bit by bit.

(SYNDICOMM, Cat 50, Top 5, Msg 17)
[EOA]


[HWR]
HELP WITH THE Rez Resource Compiler
"""""""""""""""""""""""""""""""""""
Lots of Rez code in this message alert!

I regret to say that I have spent way too much time away from working on
code and I have lost what little I knew about Rez.  I am currently drawing
a window with a small title bar, a close box, and a small content region.
I need to put a static text control in the content region (the whole
region) and for the life of me I just can't get it.

Here's my Rez code for the window currently:


#include "types.rez"

#define linedColors   1

/*- Document Window --------------------------------------------*/

resource rWindParam1 (1001) {
   $C0A5,                      /* wFrameBits */
   nil,                        /* wTitle */
   0,                          /* wRefCon */
   {0,0,0,0},                  /* ZoomRect */
   linedColors,                /* wColor ID */
   {0,0},                      /* Origin */
   {0,0},                      /* data size */
   {0,0},                      /* max height-width */
   {0,0},                      /* scroll ver hors */
   {0,0},                      /* page ver horiz */
   0,                          /* winfoRefcon */
   0,                          /* wInfoHeight */
   {50,50,62,225},             /* wposition */
   infront,                    /* wPlane */
   nil,                        /* wStorage */
   $0800                       /* wInVerb */
   };

/*- Standard color table for lined windows ---------------------*/

resource rWindColor (linedColors) {
   0x0000,                     /* frameColor */
   0x0F00,                     /* titleColor */
   0x020F,                     /* tbarColor */
   0xF0F0,                     /* growColor */
   0x00F0,                     /* infoColor */
   };

I think I need to make wInVerb $0802 and add a resource value for wStorage,
then add a static text control, but no matter what I do I can't get it.
Help?

Thanks.

Ryan
Chief Sysop

(A2.RYAN, Cat 52, Top 48, Msg 9)

>>>>>
"""""
Hi Ryan. It's been a while for me, but looking at some code I have here:

wStorage should be the id of a rControlList listing the ids of the
controls on the window
wInVerb I have as $0809

So for example, you might have:

wStorage 1101
wInVerb  $0809

Then

resource rControlList(1101) {
        {
                2001,
                        }
        };

rControlTemplate (2001) {
        1,              /* control ID */
        {2,10,180,600}, /* control Rect */
        statTextControl {{
                $0000,  /* Flags */
                $1002,  /* More Flags */
                0,      /* refCon */
                3003    /* Title Ref */
                }};
        };

resource rTextForLETextBox2 (3003) {"The text for the static text box"};

This is from my sketchy memory, and looking at a couple of listings
here. I hope it's of some use :)

Kim

(KIMHOWE, Cat 52, Top 48, Msg 10)

>>>>>
"""""
Thanks, Kim, that helped, although since I only had one control, I didn't
need an actual rControlList (but I ended up going that route anyway,
because I was having so many problems).  In any case, that along with
remembering I had to use local instead of global coordinates for the
resource and using a DrawControls call (duh) fixed most of my problems.

Now I have to figure out how to do substitution strings for the static text
box. . .

Ryan
Chief Sysop

(A2.RYAN, Cat 52, Top 48, Msg 11)

>>>>>
"""""
I am at least starting to remember what I've done with Rez in the past and
started getting some of my more simple resources done as you can see with
MyIP.NDA (and I have a few more projects I'm working on, one more might be
out before the end of the month).  What I've never really figured out is
how folks get their custom icons done and into their resources.  What's the
secret(s)?

Ryan
Chief Sysop

(A2.RYAN, Cat 52, Top 48, Msg 12)

>>>>>
"""""
I use an icon editor.  I think IconED can save as source code.  I don't
recall if it saves as rez code, but it should save as asm code (hex
strings) which can be converted to rez code fairly easily.

GS+ published an icon editor (ICE?) which can save as a resource or
old-fashioned icon file.  (I don't recall if it will save as rez code
directly).

Genesys also allowed add/editing resource icons.

If you have a resource file, the derez utility can convert it back to rez
source code:

(orca/gno prompt)

# derez your_file_here Types.rez > source.rez

there are options to only derez certain types or resource ids.  "help
derez" for more information.

If you have too much free time, you could also write a utility to convert
an icon file to rez source code.  I wouldn't be surprised if such a beast
already existed.  Lots of stuff is lurking in Time In A Bottle (and the
syndicomm a2 library).

Kelvin

(KWS, Cat 52, Top 48, Msg 13)

>>>>>
"""""
I use ICE to create my icons.  Be aware of the bugs in ICE that allows you
to create illegal icon files, though.

I keep the icons in their own resource icon file.  When I want to add the
icons to the resource fork of my application, I use the include command in
the rez file:

include "icon.file";

You don't have to worry about having to derez the icon file. You can
include multiple icon files if needed--just make sure you use unique IDs
across your icons.

Geoff

(GEOFF, Cat 52, Top 48, Msg 16)

>>>>>
"""""
Keeping the icons in an icon file also allows greater flexibility to edit
the icons with your favorite icon editor.  You edit the source icon file
and then rerun rez to create your final resource fork (and then copy the
fork to your app).

Geoff

(GEOFF, Cat 52, Top 48, Msg 17)

>>>>>
"""""
Here's another Rez question that must be stupid (but I can't find the
answer tonight):

How do I make the text in a static text control appear boldfaced?

Ryan
Chief Sysop

(A2.RYAN, Cat 52, Top 48, Msg 19)

>>>>>
"""""
Take a look on page G-34 in Toolbox Ref 3. That shows an example of a
static text resource with several different style implemented.  TBStyleBold
enables bold face.  TBStylePlain is for plain text.  Take a look in
13:rinclude:types.rez and you can find all the different LETextBox2 styles
that rez knows about.

Geoff

(GEOFF, Cat 52, Top 48, Msg 20)

>>>>>
"""""
Thanks, Geoff.  That helps.

Ryan
Chief Sysop

(A2.RYAN, Cat 52, Top 48, Msg 21)
[EOA]


[PGH]
PROGRAMING HELP
"""""""""""""""
Okay, my NDA is essentially finished, with one problem that I'm not really
sure how to fix.  When I move my NDA window, the windows underneath it are
erased and not redrawn; I assumed TaskMasterDA would help me fix this, but
my reading is telling me that the Event Mask in TaskMasterDA is not used?

I am basing this largely on the Byteworks example in Desktop Programming in
Pascal, and Mike's example does the same thing, which at least makes me
feel like I didn't break anything :)

Suggestions?

Thanks.

Ryan
Chief Sysop

(A2.RYAN, Cat 55, Top 21, Msg 1)

>>>>>
"""""
It sounds like update events aren't being delivered to the other windows.
Are you somehow swallowing events that don't belong to you?  I'd be curious
to see your event loop.

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.co
                     Building communities, bit by bit.

(SYNDICOMM, Cat 55, Top 21, Msg 2)

>>>>>
"""""
I now think I understand what the problem is, but it's not really a bug,
more that I want the IP to update automatically even if in the background;
I'll explain more in a bit (gotta run--literally, got a few miles to put in
:)

Ryan
Chief Sysop

(A2.RYAN, Cat 55, Top 21, Msg 3)

>>>>>
"""""
Ryan,

If you're doing what I think you're doing, marinetti sends a message
whenever marinetti connects or disconnects to the network.  If you call
AcceptMessages() with a name of "TCP~RyanWare~MyIP", marinetti will call
your function whenever the network connects/disconnects.  As always, check
the marinetti documentation for more information.

If you use resources and try to do anything with them (the window,
controls, etc), you need to save the old resource app (oldApp :=
GetResourceApp), set it to yours (SetResourceApp(myResourceID)), do your
stuff, then restore (SetResourceApp(oldApp)).

Kelvin

(KWS, Cat 55, Top 21, Msg 4)

>>>>>
"""""
Ah.  Okay, that helps.  Now that I know this, I probably need to rewrite
the whole thing from scratch :)  I was polling for any change in IP
manually, but clearly that's not needed.  Ya learn somethin' new every day.

Ryan
Chief Sysop

(A2.RYAN, Cat 55, Top 21, Msg 5)
[EOA]


[MTS]
HELP WITH PROGRAMING USING THE Marinetti TCP/IP STACK
"""""""""""""""""""""""""""""""""""""""""""""""""""""
After executing a TCPIPReadTCP or TCPIPReadLineTCP and getting the data
expected into rrBuff, is there some way (or just some need) to flush the
rrBuff before attempting another read?  Or does Marinetti take care of this
automagically?

Thanks.

Ryan
Chief Sysop and Head Geek

(A2.RYAN, Cat 57, Top 31, Msg 25)

>>>>>
"""""
When you use TCPIPReadTCP or TCPIPReadLineTCP, you are retrieving it into
either a buffer that you set up, or a buffer that Marinetti has allocated
on your request. In either case the buffer is your ownership, so do with it
what you like, just remembering to dispose of it correctly when you are
finished.

 Ewen Wannop - Speccie

(CONDUCTOR, Cat 57, Top 31, Msg 26)

>>>>>
"""""
Make sure you always retrieve data from TCPIPReadTCP as a handle.  Never
read to a pointer since Marinetti will purge its data when a connection
gets closed (the reason why older version of gwFTP hangs when closing a
connection).

To handle different speeds of systems (non-accelerated, accelerated, and
hyper-accelerated via an emulator), I found the best implementation to get
the number of bytes that Marinetti wants to hand to you.  So before calling
TCPReadTCP, call TCPIPStatusTCP and get the number of bytes in the receive
queue.  You now know how many bytes to read for TCPIPReadTCP.

Geoff

(GEOFF, Cat 57, Top 31, Msg 27)

>>>>>
"""""
I'm not sure I explained myself clearly the last time, so let me try this
again:

I am currently doing a TCPIPReadLineTCP into a buffer that Marinetti has
set up for me.

If after getting some data using TCPIPReadLineTCP I do another
TCPIPReadLineTCP, how do I make sure that this is new data rather that the
same thing I read previously?  Does Marinetti flush the buffer
automatically or do I need to do something to compare the results of
TCPIPReadLineTCP vs the previous result?

Thanks.

Ryan

(A2.RYAN, Cat 57, Top 31, Msg 28)

>>>>>
"""""
Well, I deleted that message I posted last night that had new code in it
because it was obvious I was in a state of delirium when I wrote it :)

I'll pose that question again a bit later.

Ryan
Chief Sysop and Head Geek

(A2.RYAN, Cat 57, Top 31, Msg 30)

>>>>>
"""""
I never use TCPIPReadLineTCP since there are plenty of broken servers out
there which use an EOL which differ from the RFCs.  For example, SIS and
gwFTP supports the EOL being a CR, LF, or CRLF.  To support this, you have
to parse the buffer returned by TCPIPReadTCP by yourself.

But to answer your question, I see no reason to not trust that
TCPIPReadLineTCP works as documented since Andrew's newsreader uses it and
appeared to work correctly.  Granted, it was written for Marinetti 1.x, but
I doubt that much would have changed for later versions of Marinetti.

I just question the real world use of needing to use it.

Also, I'm not sure what will happen if there are multiple lines left in the
receive queue and the socket is closed--you will either get one line and
lose the rest or you will get multiple lines at once.  Either way, I'd
recommend not to use this tool call.

Geoff

(GEOFF, Cat 57, Top 31, Msg 31)

>>>>>
"""""
Okay, now I think I have my wits more about me than last night.  After
implementing Geoff's suggestions re: TCPIPReadTCP, I need some help on
figuring out why I am consistently losing the first character in the data
I'm getting from Marinetti:

   while mysrBuff.srRcvQueued = 0 do begin {check on the buffer size}
      dummy := TCPIPStatusTCP(ipid,@mysrbuff);
      TCPIPPoll;
    end;   {end the check on buffer size}

    {Read in data the size of the buffer}
    dummy :=TCPIPReadTCP(ipid,2,0,mysrBuff.srRcvQueued,@myrlrBuff);
    HLock(myrlrBuff.rlrBuffHandle);
   
HandToPtr(myrlrBuff.rlrBuffHandle,@recieveddata,myrlrBuff.rlrBuffcount);
    HUnlock(myrlrBuff.rlrBuffHandle);

receivedata ends up with the leading "+" cut off from the expected
"+OK someotherstuffhere" data.

Any help appreciated.  Thanks.

Ryan
Chief Sysop and Head Geek

(A2.RYAN, Cat 57, Top 31, Msg 32)

>>>>>
"""""
How do you know that receivedata ends up with the leading "+" cut off?  Are
you looking at the buffer in GSBug?  If you are trying to write receivedata
as a string, you won't see the first character since pascal strings use the
first byte as a length.

Can you show your code how you prove receivedata^ points to an 'O'.

Geoff

(GEOFF, Cat 57, Top 31, Msg 33)

>>>>>
"""""
>> If you are trying to write receivedata as a string, you won't see the
first character since pascal strings use the first byte as a length. <<

I was going to mention the same thing. This would be the first thing I'd
check.

- Aaron

(A2PROGEEK, Cat 57, Top 31, Msg 34)

>>>>>
"""""
Another problem I noticed is this:

HandToPtr(myrlrBuff.rlrBuffHandle,@recieveddata,myrlrBuff.rlrBuffcount);

You have made an assumption that the recieveddata is at least
myrlrBuff.rlrBuffcount long.  But you have no idea how big
myrlrBuff.rlrBuffcount really is (i.e. if recieveddata is 256 bytes long
and myrlrBuff.rlrBuffcount is 257 bytes, you will corrupt memory in the
257th byte since it does not belong to recieveddata).  It would be better
to allocate a new handle that is myrlrBuff.rlrBuffcount long and copy the
data into that.

But you don't even need to do that.  You already have the received data in
myrlrBuff.rlrBuffHandle so you are just wasting cycles performing a memory
copy (and the tool calls to allocated and deallocate the extra memory).  As
far as Marinetti is concerned, the data in myrlrBuff.rlrBuffHandle is yours
to mess with (you are to deallocated this handle when you are done with it
too).

Geoff

(GEOFF, Cat 57, Top 31, Msg 35)

>>>>>
"""""
>> If you are trying to write receivedata as a string, you won't see the
first character since pascal strings use the first byte as a length. <<

This is true, but I have done all the usual things I do to try to get the
string to be a proper P-string and I still haven't seen the +.  Yes, I am
writing it as a string; I am going to try some other stuff (it's clear that
coding in the mornings or late at night after I teach is not the best
idea).

Thanks.

Ryan
Chief Sysop and Head Geek

(A2.RYAN, Cat 57, Top 31, Msg 36)

>>>>>
"""""
>> You have made an assumption that the recieveddata is at least
myrlrBuff.rlrBuffcount long.  But you have no idea how big
myrlrBuff.rlrBuffcount really is <<

Point taken, although for the purposes of this exercise (and right now,
that's all this is, an exercise.  Remember: I'm a social worker, not a
professional programmer, and this is all about learning, not making a
living--for me anyway) I don't think that'll be an issue.

>> You already have the received data in myrlrBuff.rlrBuffHandle so you are
just wasting cycles performing a memory copy (and the tool calls to
allocated and deallocate the extra memory). <<

While the point is also taken, there is a reason why I called HandToPtr;
there's a procedure I use later down the line that I specifically wrote for
a pointer and I -really- didn't want to change it.  Thanks, content
appreciated.

Ryan
Chief Sysop and Head Geek

(A2.RYAN, Cat 57, Top 31, Msg 37)

>>>>>
"""""
Instead of trying to write the text string, print each byte of the
receiveddata buffer (with a space between each number).  You'll need an
ASCII chart to convert the numbers to ASCII characters.  This is also a way
to make sure that your string manipulation routine is working correctly.

Geoff

(GEOFF, Cat 57, Top 31, Msg 38)

>>>>>
"""""
Even with a handle, you would dereference it to get a pointer.  Then your
routines later on that use a pointer will work correctly.

Geoff

(GEOFF, Cat 57, Top 31, Msg 39)

>>>>>
"""""
I'm having some issues with my TCPIPReadTCP routine.  On Geoff's sage
advice, I switched from doing a TCPIPReadLineTCP to TCPIPReadTCP.  The
routine appears to work the first time it's called but not a second time.

Code looks like:

      dummy :=TCPIPStatusTCP(ipid,@mysrbuff);
      while mysrBuff.srRcvQueued = 0 do begin   {if no data in the queue}
         TCPIPpoll;
         dummy :=TCPIPStatusTCP(ipid,@mysrbuff);
      end;   {if no data in the queue}
      dummy :=TCPIPReadTCP(ipid,2,0,mysrBuff.srRcvQueued,@myrrBuff);

There's a routine later to get rid of excess data if the rrMoreFlag is
true.

The first time it's called, the routine seems to work fine; the second
time, it loops forever as if it gets no data.  My sending routine (which
sends data) is called before this to send some data out and appears to
work, but I tend to hang right here.  Ideas?  Thanks.

Ryan
Chief Sysop

(A2.RYAN, Cat 57, Top 31, Msg 40)

>>>>>
"""""
First, it appears that you are unsure if the data you sent before calling
this routine a second time is actually getting sent.  That is the first
area of suspect.  This is easily identifiable if you run a POP mail server
on your local UNIX box.  Run tcpdump while the GS is communicating with
your server and you can see what it is sending/receiving.  This makes
troubleshooting much easier.  qpopper should be pretty trivial to set up on
the UNIX side.

Second, you need to determine which area of the code is hanging.  Assuming
memory is in a state where it is not trashed or to a point where it is
slightly trashed, the two areas where the problem is the while loop _or_
the TCPIPReadTCP.  Unless you add some debugging code, you will need to use
GSBug to figure that out.  If memory is getting very trashed,
TCPIPStatusTCP could fail and you have bigger problems since all it does it
copy values of a few socket variables.  Again, GSBug or adding debug code
will help.

It also isn't a good idea to just toss any data from the receive queue if
the rrMoreFlag is set.  If _TaskMaster is being called by any app, then
TCPIPPoll can get called automagically and you could purge data that you
are expecting.  It is a good idea to parse the data manually to make sure
what you get meets RFC specs (and modify your code accordingly for servers
which don't meet RFC specs).

Geoff

(GEOFF, Cat 57, Top 31, Msg 41)

>>>>>
"""""
Ryan,

The latest Juiced.gs mentioned you were using Marinetti v2 (to review
VNCView).  I would recommend using the v3 beta, as it's more stable and
seems to have fewer bugs.

Not marinetti related, but 2 options to debug pascal (or C, integer basic,
etc) code are Splat! (by Michael Hackett, formerly sold by Procyon, but no
longer available) and Orca/Debugger (available from Syndicomm, included on
Opus II).

I have Splat! and love it.  There are some limits (mostly imposed by the
Orca debug format), but it lets you step through your high-level code
line-by-line and examine variables, look at structures, etc in an 80-column
"windowed" text screen.

I have Orca/Debugger, but I can't comment on it since Splat! is so good to
me :).

We all make logic/programming errors, and stepping through your code can be
the only way to find the problem sometimes.

My 2 cents.

Kelvin

(KWS, Cat 57, Top 31, Msg 42)
[EOA]


[CAE]
HOW DO YOU CREATE AN ACCENTED 'e' IN WINDOWS?
"""""""""""""""""""""""""""""""""""""""""""""
I'd previously asked how, on a Macintosh, to create an accented 'e' as
appears in the French pronunciation of my surname; the solution was to
press Option-E then 'E' again.

Now I'm wondering how to replicate this product in Windows?  Right now, all
I know to do is open Microsoft Word, go to Insert->Symbol, and select that
link - then if I need that character in another application, I can cut and
paste.  Surely there's a keyboard equivalent of this process?

Thanks,

-Ken

(KGAGNE, Cat 2, Top 25, Msg 21)

>>>>>
"""""
With Word 97, the insert->symbol window shows the keyboard shortcut at the
bottom of the window (ctrl-',e in your case) and lets you reassign the
shortcut as well.

You could also record a macro while you insert the key.  Macros can also
have key-equivalents.

Kelvin

(KWS, Cat 2, Top 25, Msg 22)

>>>>>
"""""
Kelvin,

That works! :)  Too bad it's not the same key equivalent across Windows and
Mac.

Thanks,

-KEn

(KGAGNE, Cat 2, Top 25, Msg 23)
[EOA]


[TST]
Telnet/SSH Terminal Program for Windows
"""""""""""""""""""""""""""""""""""""""
Can anyone recommend a good telnet/SSH terminal program for Windows -
preferably one that supports split-screen chat?

Thanks,

-Ken

(KGAGNE, Cat 2, Top 25, Msg 24)

>>>>>
"""""
I'm not sure if it does SSH, but take a look at NetTerm.  It offers not
one, but TWO chat panes (one for short answers and one for long).
_________
  | homas

(TCOMPTER, Cat 2, Top 25, Msg 25)

>>>>>
"""""
Thanks, Thomas.  http://www.securenetterm.com offers a related program,
Secure NetTerm, that works for both telnet and SSH.  I think that it, like
its predecessor, is $30 shareware.  The last time it was updated was last
week.

-Ken

(KGAGNE, Cat 2, Top 25, Msg 26)
[EOA]



[ITL]------------------------
      ILLUMINATING THE LAMP |
-----------------------------

An overview of GEnieLamp A2 and The Lamp!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

By Steven Weyhrich


FOOL ON THE HILL

     Well, my one month hiatus on this column extended, unfortunately, to
be SIX months. For that I must apologize. The problem was simply too much
to do and not enough time to do it (again).


HELP!

     World events at the start of 2001 were, as usual, unsettled. The
result of the U.S. Presidential election was finally decided amid much
controversy in favor of George W. Bush, and he was inaugurated in January
2001. Race car driver Dale Earnhardt was killed at a race in the Daytona
500 when his car struck a wall at 180 mph in the final lap. California's
energy situation worsened, and with record shortages of electricity,
rolling blackouts occurred over the state. Oklahoma City bomber Timothy
McVeigh was executed on June 11th. And on Tuesday, September 11, the United
States sustained a major terrorist attack on the World Trade Center in New
York and on the Pentagon in Washington, D.C. The uncertainty of the source
and extent of the attacks led the government to take the unprecedented
action of grounding ALL air traffic in the country until the causes could
be clearly determined. A part of the aftermath to the devastating attack
included a major drop in the stock market, although this had improved by
the end of the year. Anthrax-tainted mail was discovered at major media
outlets and government offices, which further disrupted the economy. While
investigators sought clues to the source, the offices of the postal system
had to cleaned of any remaining particles of the infectious agent. The
Taliban-controlled government in Afghanistan came under direct attack [by]
of a coalition of nations led by the United States, in an effort to capture
Osama bin Laden, the suspected organizer of the September 11th attacks.

     Microsoft announced on January 1, 2001 that Windows 95 had been
reclassified as a legacy product, and would no longer be sold or shipped.
The company also introduced its own entry in the console gaming market, the
XBox, which was the first gaming system to contain a hard drive. By
October, Microsoft also updated its Windows operating system with the
introduction of Microsoft Windows XP. In April, Dell became the largest PC
maker in the U.S. USB 2.0 was introduced as a higher-speed upgrade to the
original Universal Serial Bus interface. CPU's running at 1.4 Gigahertz
began to become available. Excite@Home.com went into bankruptcy, as the
dot-com bust further expanded.

     At Apple, new models of the Power Mac G4 were released, with processor
speeds going beyond 500 MHz for the first time, with the support of a 133
MHz system bus. Later in the year, the speed increased to 667 and 733 MHz.
The higher end Power Mac G4 also included the SuperDrive, this time the
name indicating the ability to read and write CD-ROM and DVD formats. The
titanium PowerBook G4 also was introduced, starting at speeds of 400 and
500 MHz. Updated consumer desktop Macs were the Flower Power and Blue
Dalmation iMacs, at speeds from 400 to 600 MHz. Beginning in March, Apple
began to ship Mac OS X 10.0, and version 10.1 appeared in September.
Finally, new iBooks were released, receiving a speed increase to 500 and
667 MHz. The form of the computer was also changed, from the original
colored clam-shell appearance to a more standard-sized white form.


THE LAMP! INFO

     The year 2001 began with a near-emergency involving the production of
The Lamp! itself. Just as Delphi had promised (threatened? warned?) during
late 2000, the text-based part of the service began to experience failures
within six weeks of the November 1st date that maintenance on that part of
Delphi was due to be discontinued. Editor Lyle Syverson used this as an
opportunity to promote the new bulletin board system available in the
Syndicomm.com service. By February, he found it necessary to depend on the
postings in the Apple II forum on Syndicomm.com for much of his material,
as the message traffic on Delphi had declined considerably since the
failure of the text side of Delphi.


DELPHI A2 FORUM

     This malfunction of Delphi's text side, which had long been accessible
via telnet, occurred during late December 2000. The Delphi system
programmers were focused almost exclusively on the web-based message
boards, which had been set up to take a message posted on the text side,
move it to the web side, and then back to the text side again for display.
The function of this failed, came back and worked inconsistently, and then
by mid-January 2001 was not functioning at all.

     As the Internet boom of the late 1990's began to wind down, services
whose business model was based on advertising traffic began to see that
this revenue model was not working very well. Many services that had been
hoping to make a killing in the online world were instead finding
THEMSELVES being killed. As Delphi was increasingly feeling the squeeze,
its president, Rusty Williams, posted a message in January announcing the
need to reduce some support positions on its staff. During 2000, Delphi and
another Internet service called "Well Engaged" (which originated years
earlier as "The Well") had combined forces to form Propsero Technologies, a
business dedicated to managing message boards and chat services. Williams'
letter went on to discuss ways in which services would be automated in
order to make do without as much staff. The consequences of this, as well
as the inconsistent functioning of the text access to the service, caused a
significant decline in activities in the Delphi A2 Forum.

     Making official what was obvious to those trying to use the service,
Delphi announced on February 22 that the text and web forum access would no
longer be connected (that is, a message posted on one side would no longer
appear on the other side).  Finally, text subscribers were told in an
e-mail on March 12 that as of May 1, 2001, all text-based services would be
completely discontinued. This included e-mail accounts, text messages, and
text-based chat. Because of this, and the significantly decreased
participation in the Monday (or Thursday) Night Chats, Joe Kohn decided to
discontinue his sponsoring of those special nights on Delphi. Archives of
many of the bulletin board messages on Delphi A2 that were posted while
Syndicomm had managed the forum were made available on A2Central.com.


A2CENTRAL.COM / SYNDICOMM

     A2Central.com added e-mail service for its members in early January
2001. It was made to work with any POP3-compatible e-mail program for
reading mail, and required the use of the mail menu at the site in order to
send mail. Addresses were <username@a2people.com>.

     In February, Syndicomm began the testing of enhanced account services
for A2Central.com. These enhanced accounts included 10 megabytes of storage
space, accessible via FTP, which could be used for storing anything,
including a personal web site. At a rate of $15 per month, or $35 per
quarter, some might have considered it too expensive; however, if you
compared this to the costs of subscribing to GEnie or Delphi or CompuServe
in their prime ($6-$9/hour), this was quite reasonable. One advantage of
the enhanced service was the offering (in April) to these subscribers of an
SSL-capable version of Lynx (a text-based web browser). By August, the
enhanced service was expanded to be available to ALL subscribers, without
any additional cost.

     Members of the A2Central.com service were encouraged to write articles
for the web site's news and reviews section, and a month of free service
was offered to stimulate interest.

     Starting in April it was also announced that Dave Miller had begun
working as Syndicomm's first full time employee, continuing the programming
work necessary to build the service up into more than just a text-based
Apple II community. Specifically, he was focused on fully upgrading the
interface and the coordination between the telnet and web-based sides of
the service. He also upgraded the forum bulletin board software to give
much faster results when scanning.

     As part of the conversion of the forum and other parts of the service
to Syndicomm.com, e-mail addresses were changed from
<username@a2people.com> to <username@syndicomm.com>. Furthermore, personal
web space was now accessible at <http://www.syndicomm.com/~username>.
Payment of the subscription to Syndicomm was also now possible via credit
cards.

     Around the time Miller began to work further on the system,
instructions were posted instructing users to start accessing Syndicomm by
telnet to "syndicomm.com" instead of to "a2central.com" as it had
originally been designed. The reason for this was the beginning of
differentiation of the service into more forums than just the pioneering
Apple II forum. Other new forums that opened during 2001 included the Palm
OS forum (which started in May), and the Gamebits forum (hosted by Ken
Gagne) and the Singles Forum (which opened during the summer). After the
September 11th attacks, a WTC forum was opened to discuss the events and
their aftermath.

     In July, the new Syndicomm online store opened. To enhance its product
offerings, Sheppy negotiated arrangements to distribute Balloon, AutoArk,
Shrink II, the line of Parkhurst Micro Products, and all of The Byte Works
and APDA products.


HARDWARE NEWS

     During 2001, the theme of many postings in the A2 forum focused on
help with old hardware. These discussions included:

o ADB device hot-swapping problems
o Apple II Video Overlay Card and its pinouts for cable connection
o Apple IIe to IIGS upgrades and how to perform them
o Apple IIe and IIGS favorite RAM cards
o Apple IIGS accelerators and how they work(ed)
o Apple IIGS recommended upgrades
o Apple SCSI card DIP switch settings
o DSL vs Cable modems
o Dvorak keyboard modification instructions for the Apple IIe (thanks to
Chuck Stiles)
o LocalTalk connections between a Mac and a IIGS
o Monitors used on Apple II computers in the past, including the use of a
Commodore 1040 monitor on the IIGS
o MS-DOS disk formatting for optimum use with the MUG! utility


EMULATOR NEWS

     F.E. Systems' Bernie ][ The Rescue 3.0 Preview, announced at
KansasFest 2000, was released in January. It had improved full-screen mode,
improvement in sound, and various speed improvements.

     Charlie Danemark released FishWings in April. It was a freeware disk
image management tool for Windows. An update in May added limited DOS 3.3
support.

     "KEGS" (Ken's Emulated GS) had been mentioned only briefly in The
Lamp! before this month. In 1999, the contents of a future Juiced.GS issue
indicated that it was to be discussed in that issue, but thus far it had
not appeared to any extent in The Lamp!. KEGS was designed for X-Windows
(Unix) and KEGS32 was a port designed to run under Windows. In April,
Thomas Compter released DiskChanger, a disk-mounting utility to simplify
management of disk images used with KEGS32.


SOFTWARE NEWS

:: COLLECTIONS ::

     During March, collections of Apple II software on various FTP sites
were discussed. Also, Thomas Compter listed in the April issue the various
pieces of software he has written for the Apple II+, IIGS, Windows, and the
Web.

     Juiced.GS publisher Max Jones prepared to release a Friends For Life
Volume 2 CD. Eric Shepherd released The Totally Sheppyware CD in May, and
Joe Kohn released the A2-Central-On-Disk collection on 3.5 disks in July.

     Howard Katz announced new additions to the Lost Classics Project in
July, not only software (Beneath Apple Manor, Babble, and Linker) but also
books (Beneath Apple DOS, and Bag Of Tricks).


:: PRODUCTIVITY SOFTWARE ::

     Along with the various discussions of hardware that appeared during
2001, software also received some attention. In April, favorite word
processors were debated and compared, ranging from Apple Writer (DOS 3.3
version), Magic Window, Letter Perfect, SuperText, and Word Handler, to
AppleWorks and AppleWorks GS, to EgoEd, ShadowWrite, and Hermes.

     Geoff Weiss updated SCAP (Spectrum Create A PDF) to v1.1.1.

     Lucas Scharenbroich released a beta of his project, GTE (Generic Tile
Engine), which helped in production of graphic tiles consistent with games
used on various console games (i.e., Nintendo). (The current version of
this product cam be found at http://iigs.dreamhost.com/gte/gte.html)


:: TELECOMMUNICATIONS SOFTWARE ::

     Since A2Central.com was beginning to become a gathering place for the
Apple II faithful, a new offline reader was needed to help automate its
use. One that was announced in January was written by Ewen Wannop and
released as an open beta. SOAR was a collection of scripts made to work
with Spectrum 2.5.1 or greater, Marinetti 2.0 or 2.1, and an internet
provider with TCP/IP access. It was updated several times during the year.

     Not to be outdone, ProTERM 3.1 also got into the act with a free
script for offline reading of A2Central.com written by Ryan Suenaga.
Furthermore, Sheppy issued a programming challenge to anyone who could
produce ports of CoPilot (for ProTERM 3, Spectrum, Talk Is Cheap, or
ANSITerm) or GEM (GEnieMaster) to work with A2Central.com. Since the
structure of the new service was quite similar to GEnie in its prime, this
was certainly possible. A reward of $25 off of KansasFest registration was
offered.

     Wannop also released another Spectrum-scripted product in June. SAFE
(Spectrum Automated File Exchange) v1.0 was a freeware FTP client for the
Apple IIGS. Kim Howe released his Telnet NDA for the Apple IIGS in April,
and in May, Ninjaforce released Samurai, an Classic Desk Accessory-based
IRC client for the Apple IIGS.

     IPNetRouter for the Mac was discussed in February as a way to allow a
IIGS equipped with a LANceGS card to share an Internet connection with a
Macintosh.

     Kim Howe's Arachnid web browser for the Apple IIGS was updated to
Preview 3. (It is still available today at
http://www.a2central.com/~kimhowe/arachnid.html, rather than at the link
mentioned in the Lamp article from 2001.)

 
:: UTILITY SOFTWARE ::

     February's issue of The Lamp! included a discussion of various
available IIGS programming languages and their advantages or disadvantages.
In March, one topic of discussion was methods of translating (porting)
programs from one language to another.

     It was suggested in April that a "net install" version of System 6.0.1
for the Apple IIGS made, one that had the full set of disks combined into
one large file. This would simplify the installation for those who were
installing it on an emulator. (Whether or not anything came of this
suggestion has never been revealed in The Lamp!)


:: GAMES ::

     Jeff Fink continued to be busy during 2001 revising Silvern Castle. An
update to version 6.0 was released in December 2000, and by mid-January
2001 he had produced version 7.0. It was re-written to run completely under
MicroDot BASIC. Further updates to the game come out during the year, up to
version 7.3. Fink also uploaded several other games and utilities that he
had written, all as freeware.

     Sheppy's Lemonade Stand GS was updated to v1.0.2 to correct a bug, and
Thomas Compter released his Apple IIGS game "Hammurabi", in both text and
IIGS desktop versions.


PUBLICATIONS

     Juiced.GS continued to publish, concluding its fifth year and starting
its sixth year. A surprise was announced at KansasFest: Max Jones, who had
been editor and publisher of the magazine since its start, was turning over
the magazine to Ryan Suenaga as editor, and Syndicomm as publisher.

     A web site was discovered for The Apple Blossom, which had been out of
print since 1998. (This site, www.appleblossom.net still works today.)

     Syndicomm announced in May that it would be able to distribute past
issues GS+ magazines and copies of EGO software, having been granted
permission by Ross Falconer.


KANSASFEST

     Registration for KFest 2001 opened in March. As in recent years, it
was sponsored by InTrec Software, Inc. The KFest FAQ, written by Ryan
Suenaga, was updated to version 3.0 and appeared in the May issue. Also in
that issue were recollections of fond memories of KFest events by past
attendees.

     Webcasting of the event was again planned for this year. Sheppy
announced that he was going to use Sorenson Broadcaster this year to
simplify the production of the webcasts. He also planned to design the
setup to not overload the Avila network with webcasting as happened in
2000.

     KansasFest's keynote speaker for 2001 was Eric Shepherd, and the
recipient of the annual roast was Juiced.GS publisher Max Jones. The
sessions presented at the conference ranged from the technical (the LANceGS
card, by Geoff Weiss, and ways of getting the Internet to a IIGS, by Ryan
Suenaga), to games (Silvern Castle Exposed, by Bruce Baker), to the
historical (Tony Diaz's tour of his Apple2.org site). Margaret Anderson won
first place in HackFest, and Joe Kohn won the GShisen tournament. The "Bite
The Bag" contest was again held, won this year by Geoff Weiss.


WRITERS

     For the third year in a row, Ryan Suenaga presented the Apple II
Achievement Awards in the January issue. The Best Commercial Product award
was given to The Byte Works' Opus ][ CD collection. The Best Shareware
Product was Lemonade Stand GS, by Eric Shepherd, with Sarah Shepherd's GS
ROM Grabber given runner-up status. The award for Best Freeware Product was
given to Jeff Fink's Silvern Castle, which had changed status from
shareware to freeware during 2000. The honor for Best Publication again
went to Max Jones' Juiced.GS. The outstanding Apple II-Related Development
was given to //SHH Systeme's LANceGS Ethernet card. Finally, the award for
Outstanding Individual Achievement went to Eric Shepherd for his many
contributions to the Apple II community both in 2000 and in past years.

     Another major article by Suenaga in January was one describing the new
Syndicomm.com online service (called initially by the same name as the web
site, A2Central.com).


MISCELLANEOUS FEATURES

     Sheppy announced plans to update and reproduce the Apple II Technical
Notes, which had not been touched for quite a while. He asked for help in
creating these updates.

     The merits of the use of PayPal for sales of items on eBay was
discussed in March. Ways to become a programmer were also debated that
month. Memories of the introduction of the Apple IIGS were related in the
July issue. In November, the Apple II Documentation Project was announced.


STATS

     Here are statistics for the first ten years of GEnieLamp and The Lamp!
The numbers refer to the size of each issue in "K" (kilobytes):

Year    Min     Max     Avg
----    ----    ----    ----
1992    116K    212K    156K
1993     80K    256K    172K
1994    124K    216K    165K
1995     92K    176K    125K
1996     80K    192K    116K
1997     44K    124K     85K
1998     68K    156K    102K
1999     59K    120K     91K
2000     47K     81K     60K
2001     47K     96K     71K


MAGICAL MYSTERY TOUR

     I have decided to do one additional ITL column during 2004, to cover
the events of the year 2002 for The Lamp! After that, ITL will re-emerge
some time during 2005, and deal with 2003 and 2004. Although life has
significantly slowed down, it is still a bit hairy at times, and to keep ME
from being too spaced out on my own magical tour will require some more
time to work on other projects I've had to set aside for quite a while.


Steven Weyhrich
a2history@syndicomm.com
http://apple2history.org


References:

"About Prospero"
http://www.prosperotechnologies.com/about.htm

Computer History For The Year 2001
http://www.computerhope.com/history/2001.htm

"Delphi, Well Engaged To Form Propsero 01/25/00", Newbytes
(link no longer available)

The History Of Computing Project
http://www.thocp.net

The History Of The World Timeline
http://www.historychannel.com/timeline/index.jsp?year=2001

Macintosh History: 2001
http://www.lowendmac.com/history/2001.shtml

[EOA]



[ANS]-------------------------------
      ANNOUNCEMENTS FROM SYNDICOMM |
------------------------------------

by Lyle Syverson <lyle@foxvalley.net>

[TSU]
TO SIGN UP FOR SYNDICOMM ONLINE
"""""""""""""""""""""""""""""""
Please visit our web site at http://www.syndicomm.com for information or to
sign up!

(Logon message)
[EOA]


[SSA]
September 2004 Issue of Syndicommotion Available
""""""""""""""""""""""""""""""""""""""""""""""""
The September 2004 (Volume 3, Number 9) issue of Syndicommotion has been
emailed to subscribers.  The HTML edition can be found online at the
following URL:

http://www.syndicomm.com/syndicommotion/v3n9.html

or by selecting menu option #1 from Page 155 on Syndicomm Online (type
"m155;1" without the quotes at any menu prompt).

(KGAGNE, HelpDesk, Cat 5, Top 4, Msg 24)
[EOA]


[NPA]
NEW PAGE ADDED FOR Syndicommotion
"""""""""""""""""""""""""""""""""
I've just added page 155, keyword SYNDICOMM, for Syndicommotion.  You can
subscribe and unsubscribe from the emailed version, view the current issue,
and browse back issues.

Enjoy!

Eric "Sheppy" Shepherd                                sheppy@syndicomm.com
Owner, Syndicomm                                  http://www.syndicomm.com
                     Building communities, bit by bit.

(SYNDICOMM, HelpDesk, Cat 5, Top 4, Msg 23)
[EOA]



[LTE]-------------------------------
             LETTERS TO THE EDITOR |
------------------------------------

LETTER TO THE EDITOR
~~~~~~~~~~~~~~~~~~~~

NO LETTERS TO THE EDITOR THIS MONTH
"""""""""""""""""""""""""""""""""""
The mail box for Letters to the Editor remained empty this month.
[EOA]


AN INVITATION
~~~~~~~~~~~~~
Express your opinions about the comings and goings in the world of the
Apple II computers.

Send your comments to Lyle Syverson, Editor <lyle@FoxValley.net>

The Editor reserves the right to edit any material submitted.

The Editor reserves the right to reject any material he considers
unsuitable for publication in _The Lamp!_.
[EOA]



[KFF]------------------------------
                       KFest 2004 |
-----------------------------------

[KHF]
CODE FOR KEN G's HackFest 2004 ENTRY
""""""""""""""""""""""""""""""""""""
Here's the code to my HackFest 2004 entry.  It's simplistic and I'm sure
could be neater or cleaner, but I wasn't interested in writing good code.
:)

 10 TALLY = 50:PAUL$ = " "
 50  HOME : PRINT "Let's begin with a base of 50 attendees...": PRINT
 100  INPUT "What year is it? ";A$
 120  IF  LEN (A$) <  > 4 THEN  GOTO 100
 130 A = 1990 -  VAL (A$)
 140  GOSUB 1000
 200  PRINT "Did postcards go out this year (Y/N)? ";
 210  GET A$: PRINT
 215  IF A$ <  > "Y" AND A$ <  > "N" THEN  PRINT : GOTO 200
 220 A =  - 1: IF A$ = "Y" THEN A = 3
 230  GOSUB 1000
 300  PRINT "How much has the price changed from last year?"
 400  PRINT "1) -5%": PRINT "2) Same": PRINT "3) +5%": PRINT "4) +10%"
 410  GET B: PRINT
 415  IF B < 1 OR B > 4 THEN 410
 420  IF B = 1 THEN A = 2
 422  IF B = 2 THEN A = 0
 423  IF B = 3 THEN A =  - 2
 424  IF B = 3 THEN A =  - 4
 430  GOSUB 1000
 440  PRINT "When was registration information made available?"
 450  PRINT "1) November": PRINT "2) February": PRINT "3) March": PRINT "4)
May"
 460  GET B: PRINT
 465  IF B < 1 OR B > 4 THEN  GOTO 460
 470  IF B = 1 THEN A = 4
 471  IF B = 2 THEN A = 2
 472  IF B = 3 THEN A = 1
 473  IF B = 4 THEN A =  - 4
 480  GOSUB 1000
 500  PRINT "Have SARS, terrorists, or mad cows been in the news this year
(Y/N)? ";
 510  GET A$
 520  IF A$ <  > "Y" AND A$ <  > "N" THEN  PRINT : GOTO 500
 530 A = 3: IF A$ = "Y" THEN A =  - 3
 540  GOSUB 1000
 600  PRINT "Who is the keynote speaker this year?"
 610  PRINT "1) Steve Wozniak"
 620  PRINT "2) Steve Jobs"
 630  PRINT "3) Steve Weyhrich"
 635  PRINT "4) Steve Gozdziewski"
 640  PRINT "5) Steve Hawking"
 650  PRINT "6) Steve Gagne, Esq. (my brother)"
 660  GET B: PRINT
 665  IF B < 1 OR B > 6 THEN 660
 670  IF B = 1 THEN A = 13
 680  IF B = 2 THEN A = 5
 690  IF B = 3 THEN A = 2
 700  IF B = 4 THEN A = 2
 710  IF B = 5 THEN A = 8
 715  IF B = 6 THEN A =  - 2
 720  GOSUB 1000
 730  PRINT "Is Floppy Disk Ninja being played this year (Y/N)? ";
 740  GET A$: PRINT :A =  - 1:PAUL$ = " Paul Zaleski "
 745  IF A$ <  > "Y" AND A$ <  > "N" THEN  GOTO 730
 750  IF A$ = "Y" THEN A = 1
 760  GOSUB 1000
 999  GOTO 2000
 1000 TALLY = TALLY + A
 1005  IF A = 0 THEN  PRINT "No change there...": PRINT : RETURN
 1010  PRINT : PRINT "Okay - that's "; ABS (A);
 1020  IF A < 0 THEN  PRINT " fewer";
 1030  IF A > 0 THEN  PRINT " more";
 1040  PRINT PAUL$;"coming...": PRINT :PAUL$ = " "
 1050  RETURN
 2000  PRINT "Computing tally...";: GET A$
 2010  PRINT : PRINT "This year's KFest will be attended by ";
 2020  IF TALLY > 1 THEN  PRINT TALLY;" people this year."
 2022  IF TALLY > 60 THEN  PRINT "(could this be a renaissance?)": GOTO
2040
 2024  IF TALLY > 50 THEN  PRINT "(you must've done something right!)":
GOTO
2040
 2025  IF TALLY > 40 THEN  PRINT "(not bad!)": GOTO 2040
 2026  IF TALLY > 30 THEN  PRINT "(must be an off-year...)": GOTO 2040
 2027  IF TALLY > 20 THEN  PRINT "(what, did someone blow up Nebraska?"):
GOTO 2040
 2028  IF TALLY > 10 THEN  PRINT "(that's not a convention, that's a
coven!)": GOTO 2040
 2029  IF TALLY > 1 THEN  PRINT "(could this be the end??)"
 2030  IF TALLY <  = 1 THEN  PRINT "one person this year. (Thanks, Tony!)"
 2040  END

(KGAGNE, Cat 5, Top 6, Msg 50)
[EOA]



[KF5]------------------------------
                       KFest 2005 |
-----------------------------------

[TBH]
KansasFest 2005 to be Held JULY 19-24th
"""""""""""""""""""""""""""""""""""""""
Mark your calendar and start saving some money.


[KFW]
KansasFest Website
""""""""""""""""""
Is located here:   http://www.kfest.org
[EOA]


[GOK]
GOLF OUTING AS AN EVENT AT KFest 2005?
""""""""""""""""""""""""""""""""""""""
Now that I've actually been there I feel more comfortable to bringing a
group.  I am very awful at golf but enjoy the walk.  One lives for the good
shots and pretends to forget the bad ones.  By myself I can do a lot of do
overs with no problems, especially if there is no one waiting impatiently
behind me.

If we do it in the AM the crowds will be light.  As I was leaving around 1,
the groups were lining up to get on the course.

This is a pretty nice course.  Of course I hit from the red tees.  I also
prefer few water hazards to lose my ball in.  There are few here.

Bruce Baker

(BBAKER, Cat 5, Top 7, Msg 10)

>>>>>
"""""
If time permits I'd be interested in a "golf outing" with the KFest crew,
Bruce. Won't lug my clubs so I hope I can rent them there? (I seem to be
able to play just as bad no matter which clubs I use).

WHERE would we play - how far from Avila? Also, Cost?

Just "relim" questions, would probably go with you anyhow if time permits:)

Steve

(KFESTSTEVE, Cat 5, Top 5, Msg 108)

>>>>>
"""""
Minor Golf Club is right over on Minor.  It's maybe a mile away.  I've
walked over there, in my walk exploring I found it across from the YMCA.
Now they have several restaurants, a grocery store and a couple of gas
stations.

Minor is parallel to Wornall, the next major street over the opposite way
of how we usually go places, to the east.

It looks like a pretty nice suburban public course.

Renting clubs?  Do places do that?  Not many do in Houston, that's for
sure.  I can't speak for K.C.  Hopefully something can be worked out.
Whatever you rent will probably be better than my garage sale clubs.  :)

Bruce

(BBAKER, Cat 5, Top 5, Msg 109)
[EOA]



[INN]------------------------------
                    EXTRA INNINGS |
-----------------------------------
About The Lamp!   The Lamp! is published on the fifteenth of every month on
"""""""""""""""   the WEB at:   http://lamp.a2central.com/

This publication produced entirely with real or emulated Apple II computers
using Appleworks 5.1 and Hermes.  Apple II Forever!

     * The Lamp! is (c) copyright 2004 by Ryan M. Suenaga, M.S.W.  All
       rights reserved.

     * To reach The Lamp! on Internet email send mail to
       thelamp@sheppyware.net

     * All issues of The Lamp! are available at The Lamp! Home Page,
       http://lamp.a2central.com/

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Opinions expressed herein are those of the individual authors, and do not
necessarily represent the opinions of A2Central.com, Delphi Online
Services, Syndicomm, Ryan M. Suenaga, or Lyle Syverson.  Forum messages are
reprinted verbatim and are included in this publication with permission
from the individual authors.  A2Central.com, Delphi Online Services,
Syndicomm, Ryan M. Suenaga, and Lyle Syverson do not guarantee the accuracy
or suitability of any information included herein.  We reserve the right to
edit all letters and copy.

Material published in this edition may not be reprinted without the
expressed written consent of the  publisher.   Registered computer user
groups, not for profit publications , and other interested parties may
write the publisher to apply for permission to reprint any or all material.
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<



[EOF]
