1 line
128 KiB
Plaintext
1 line
128 KiB
Plaintext
[HEA]
|
|
_____________________ ___ _
|
|
|___ ______________| | | | |
|
|
| | _ | | | |
|
|
| || | | | | |
|
|
| || | | | | |
|
|
| || | | | ____ _ _ _ _ ______ | |
|
|
| || | | | / __ \ | | / \_/ \ | ___ \ | |
|
|
| || |__ ____ | | / / \ | | /\ /\ \ | | \ \ | |
|
|
| || _ \ | _ \ | | \ \__/ | | | |_|| | | |__/ / | |
|
|
| || | | || |_|| | | \___/|_| |_| |_| | ____/ |_|
|
|
| || | | || |__ | |____________________ | | _
|
|
|__||_| |_|\____/ |________________________| | | |_|
|
|
| |
|
|
Lighting Your Apple II Path On Delphi | |
|
|
|_|
|
|
|
|
>>> WELCOME TO THE LAMP! <<<
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
WEB SLINGING 101: Halfway There
|
|
AND THE BEST OF THE A2 AND A2PRO MESSAGE BOARDS
|
|
"Teaching the Apple II user how to fish since 1998"
|
|
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
The Lamp! An Onipa'a Software Production Vol. 1, No. 9
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Publisher & Editor.......................Ryan M. Suenaga, M.S.W., L.S.W.
|
|
Internet Email........................................thelamp@delphi.com
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
|
|
TABLE OF CONTENTS
|
|
~~~~~~~~~~~~~~~~~
|
|
September 15, 1998
|
|
|
|
|
|
OPENING PITCH
|
|
I Can't Get No ------------------------------------------------- [OPN]
|
|
|
|
A FUNNY THING HAPPENED [FOR]
|
|
The Heat Is On ------------------------------------------------- [HET]
|
|
Miscellanea [MSC]
|
|
Rumor Mill ----------------------------------------------------- [RMR]
|
|
Public Postings [PUB]
|
|
Best Of The Best ----------------------------------------------- [BOB]
|
|
|
|
A2Pro_DUCTIVITY
|
|
Checking out A2PRO on Delphi ----------------------------------- [A2P]
|
|
|
|
WEB SLINGING 101
|
|
Halfway There: Uploading to Delphi via FTP --------------------- [WEB]
|
|
|
|
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].
|
|
|
|
|
|
:: DISCUSSED ON DELPHI ::::::::::::::::::::::::::::::::::
|
|
: :
|
|
: Do files get embarrassed when they are unzipped? :
|
|
: :
|
|
:::::::::::::::::::::::::::::::::::::::: LUMITECH :::::::
|
|
|
|
|
|
[EOA]
|
|
[OPN]------------------------------
|
|
OPENING PITCH |
|
|
-----------------------------------
|
|
From The Editor
|
|
"""""""""""""""
|
|
by Ryan M. Suenaga, B.A., M.S.W., L.S.W.
|
|
[thelamp@delphi.com]
|
|
|
|
I CAN'T GET NO
|
|
~~~~~~~~~~~~~~
|
|
|
|
It's been about two months since I was spending some idle time
|
|
browsing the World Wide Web, and used an Internet search engine to search
|
|
on my email address. I was distressed to discover that an Apple II user
|
|
group had posted issues of _The Lamp!_ on their World Wide Web site without
|
|
my permission.
|
|
|
|
To make matters worse, parts of the publication were missing,
|
|
apparently due to the issue being downloaded in a less than optimal way
|
|
from _The Lamp!_ World Wide Web page, but ironically, what was not missing
|
|
from the issues was the copyright notice. A couple of email messages later
|
|
the issues were removed, but the damage was done.
|
|
|
|
As far as I know, the phrase, "The only thing this job pays is
|
|
satisfaction," was originated by my predecessor on _GenieLamp A2_, Doug
|
|
Cuff, and the song is still the same. As much as I'd like otherwise, the
|
|
Apple II is a hobby, and as much time as I put into it, it doesn't pay the
|
|
bills (although counting everything I make from writing for other
|
|
publications a year, it might pay one bill--my yearly $35 Delphi
|
|
subscription). I counted the hours it took to create _GenieLamp A2_ every
|
|
month last year, and it averaged out to 30 hours each month. That's 30
|
|
hours I could spend at a part time job to pay the rent or on the weight
|
|
bench working on my bad right shoulder. Thirty hours is a worthwhile price
|
|
to pay for a job well done, no question, and most months it's hours well
|
|
spent.
|
|
|
|
But not that one.
|
|
|
|
So, in what we used to call "group punishment" back in the days when I
|
|
worked at the youth shelter, I delayed updating the official home page of
|
|
_The Lamp!_ for awhile. The user who started the fire by distributing _The
|
|
Lamp!_ got it from there, so I took away the matches, and I announced in
|
|
the _II Scribe_ Forum on Delphi that I'd delay placing issues there.
|
|
|
|
Interestingly, the only mail I received about _The Lamp!_ in that time
|
|
were people asking why the archive on the World Wide Web wasn't updated,
|
|
and after my standard reply, I received only one backhanded positive
|
|
comment about the work put into the publication.
|
|
|
|
After cooling down a bit, I've placed the back issues of _The Lamp!_
|
|
back up on the Web page, and in fact I've licensed another site on the Web
|
|
to handle back issues: the trenco.gno.org ftp site. This doesn't mean I've
|
|
gotten paid yet, just that I've decided that it's been a fitting punishment
|
|
for the crime.
|
|
|
|
I can't think of another way to say this, so here it is: if people
|
|
continue to abuse the distribution restriction placed on this publication,
|
|
it'll become more strict, and that'll be that. Period.
|
|
|
|
|
|
[*] [*] [*]
|
|
|
|
And Now For Something We Hope You'll Really Like Department: Realizing
|
|
that editorial was a bummer, I've decided I'll try to shine a little light
|
|
on the dark A2 universe--even post KansasFest, the A2 and A2Pro Forums on
|
|
Delphi keep pumping out new information, and our Apple II programmers keep
|
|
putting out new programs. I can't recall a time in the last three years
|
|
when we've seen so many new products as we have these past two months. And
|
|
we are still anxiously awaiting the essential IIgs tool in the age of the
|
|
'Net, _Marinetti 2.0_.
|
|
|
|
After all, it's tough to catch fish without a 'Net.
|
|
|
|
See you in thirty.
|
|
|
|
|
|
Ryan
|
|
thelamp@delphi.com
|
|
|
|
ASCII ART BEGINS
|
|
_________ _ _ _
|
|
|__ __| | | | | | |
|
|
| | | | | | | |
|
|
| | | |___ ____ | | _____ __ ___ _ _ _____ | |
|
|
| | | ___ \ / __ \ | | /____ \ | v v | | v ___ \ | |
|
|
| | | | | | | /__\ \ | | ____| | | /\ /\ | | / \ \ | |
|
|
| | | | | | | _____| | | / ___ | | || || | | | | | |_|
|
|
| | | | | | | |_____ | |____ | |__| | | || || | | \___/ / _
|
|
|_| |_| |_| \______| |______| \____^_| |_||_||_| | |\____/ |_|
|
|
| |
|
|
| |
|
|
|_|
|
|
|
|
ASCII ART ENDS
|
|
|
|
|
|
[EOA]
|
|
[OPN]------------------------------
|
|
A FUNNY THING HAPPENED. . . . |
|
|
-----------------------------------
|
|
Checking out A2 on Delphi
|
|
"""""""""""""""""""""""""
|
|
by Ryan M. Suenaga, B.A., M.S.W., L.S.W.
|
|
[thelamp@delphi.com]
|
|
|
|
* The Heat Is On
|
|
|
|
* Miscellanea
|
|
|
|
* Rumor Mill
|
|
|
|
* Public Postings
|
|
|
|
* Best Of The Best
|
|
|
|
THE HEAT IS ON
|
|
""""""""""""""
|
|
|
|
[*] General Chatter ....... Emulation And Copyrights
|
|
[*] The Apple II Legacy ....... Bussing In KFest From Canada?
|
|
[*] Hardware Hacker ....... Risk/Reward with ZipGSX Hop Ups
|
|
[*] User Groups & Publications ....... NiftySpell Vs. Big Mac?
|
|
[*] Vendors & Tech Support ....... Babelfish Bugs?
|
|
|
|
MISCELLANEA
|
|
"""""""""""
|
|
|
|
APPLE COPYRIGHT IN THE ERA OF EMULATION True. However, Apple is no longer
|
|
""""""""""""""""""""""""""""""""""""""" making money off the Apple II
|
|
line. Or are they? Some people are buying Macs instead of WinTel machines
|
|
so they can run Bernie and keep using their Apple II software. So Apple is
|
|
actually =making= money (if only a little bit) because Bernie is available.
|
|
|
|
Legally, I'm sure Apple could go after people for creating ROM images for
|
|
emulators. Realistically, why would they? Nobody is being hurt and nobody
|
|
is losing money because of Bernie and other emulators. Well, except for
|
|
those few lost WinTel sales...
|
|
|
|
The only real sticking point is making those ROM images available publicly.
|
|
There's still not going to be anybody hurt or losing money because of it,
|
|
unless someone =sells= them. Try that and you'd have Apple lawyers on your
|
|
back pretty fast I imagine.
|
|
|
|
-----------------------------------------------------
|
|
Tony Ward, A2 Database Manager
|
|
[Delivered with Spectrum 2.1 and Crock O' Gold 2.5]
|
|
--
|
|
"Whatever it is, I'm against it!" -- Groucho Marx
|
|
(TONYW1, 15322, GO COM A2)
|
|
|
|
>>>>> and if anyone recalls my comments on Apple IIgs Basic, this is
|
|
""""" along the same bullish tactics that Micro$oft used on Apple, or it
|
|
would have yanked the AppleSoft license altogether.
|
|
|
|
Apple had a version of BASIC developed for the Mac, M$ wanted to market
|
|
Microsoft BASIC for the Mac, .. so they put an ultimatum on the table:
|
|
|
|
Sell us Mac BASIC for $1, or you lose Applesoft. This being 1985, and would
|
|
not be a good thing, being that the Apple II was still the cash cow.
|
|
|
|
Apple, BASIC and Microsoft have been a touchy subject ever since.
|
|
|
|
A comprehensive 3rd party book had been published and marketed for
|
|
Macintosh BASIC, and was available in stores while all this was going on.
|
|
|
|
.microsoft. {s hurl}
|
|
|
|
Tony
|
|
(T_DIAZ, 15393, GO COM A2)
|
|
|
|
|
|
IIGS SERIAL SUPPORT VS. THE TURBO ASB In practical terms, the 57600 bps
|
|
""""""""""""""""""""""""""""""""""""" serial port is speedy enough for
|
|
most tasks. Think about the types of files you download. Most likely they
|
|
are already compressed (SHK/BXY, ZIP, GIF, JPG, etc.) These types of files
|
|
would not benefit much from the extra speed of the Turbo ASB. If, however,
|
|
you download a lot of highly compressible files (text/html, sounds, etc.)
|
|
that's where the Turbo ASB comes in handy.
|
|
|
|
Remember that you can only exceed the speed of your port by using
|
|
compression. In other words, a 57600 port will be able to keep up with a
|
|
56K modem but it won't be able to take advantage of compression. Since
|
|
compression can theoretically be as good as 4:1, that's where the 230,400
|
|
bps port can come in handy, theoretically. In practice, 115,200 bps is
|
|
almost always sufficient.
|
|
|
|
Keep in mind that the high speeds achievable by the Turbo ASB, namely
|
|
115,200 bps (230,400 bps seems to be too fast even for my 8MHz Zip),
|
|
practically require an accelerator and a shift boot.
|
|
|
|
-----------------------------------------------------
|
|
Tony Ward, A2 Database Manager
|
|
[Delivered with Spectrum 2.1 and Crock O' Gold 2.5]
|
|
--
|
|
Guns don't kill. Fast-moving projectiles do.
|
|
(TONYW1, 15649, GO COM A2)
|
|
|
|
|
|
BABELFISH BUGS? PART 1 I downloaded Babelfish from Ewen's Web page last
|
|
"""""""""""""""""""""" night. The few conversions I have tried with the
|
|
NDA worked great! I converted a document on goat care to HTML. Have to
|
|
take it to my Windows machine and open it with Netscape to see how it will
|
|
look. I was really just playing, though.
|
|
|
|
One problem I have had with Babelfish: In _some_ applications, I get an
|
|
'Error $5302' message when I try to access the Convert File NDA that
|
|
suggests that Babelfish is not properly installed. I walked thru my hard
|
|
drive trying programs, and came up with the following:
|
|
|
|
Babelfish configuration error:
|
|
|
|
JumpStart AWGS BeagleDraw MiniPaint Paintworks Gold TimeMaster
|
|
|
|
Convert NDA Opens successfully:
|
|
|
|
Finder SnowTerm GWIII PMPFaxApp HyperCard GSHK UniverseMaster
|
|
UtilityWorks DigitalSession rSounder3 WriteAway2.1 ICE WWPro
|
|
QuickClicCalc SuperConvert4 discQuest discQuest Encyclopedia CD.Roam
|
|
|
|
Note that all of the ones that give the error are pretty old programs,
|
|
although some of the ones that don't give the error are older ones too.
|
|
|
|
|
|
|
|
- Don (IronTooth)
|
|
|
|
Delivered by my ANSITerm off-line reader scripts...
|
|
|
|
They're OLRight!
|
|
(DZAHNISER, 14730, GO COM A2)
|
|
|
|
>>>>> My first guess is that those older programs aren't starting up a
|
|
""""" toolset that Convert File assumes is always available (possibly
|
|
Resource Manager -- I don't think the Resource Manager existed yet when any
|
|
of those applications were written, although AWGS was last updated just as
|
|
System 5 shipped, I don't think it uses the RM).
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 14732, GO COM A2)
|
|
|
|
>>>>> Why not just view it in SIS to see what you have got?
|
|
"""""
|
|
> One problem I have had with Babelfish: In _some_ applications, I get an
|
|
> 'Error $5302' message when I try to access the Convert File NDA that
|
|
> suggests that Babelfish is not properly installed.
|
|
|
|
Thanks for the bug report, it has gone on the 'to do' pile. As it turns out
|
|
that the 'SFUtility' Init is not needed, try removing that and see if it
|
|
fixes the problem.
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 14743, GO COM A2)
|
|
|
|
<<<<< Well, because I have neither SIS nor Spectrum (although they both
|
|
""""" are on the wish list).
|
|
|
|
> As it turns out that the 'SFUtility' Init is not needed, try removing
|
|
> that and see if it fixes the problem.
|
|
|
|
I inactivated SFUtility, and still have the same symptoms.
|
|
|
|
BTW - What function does SFUtility serve?
|
|
|
|
|
|
- Don (IronTooth)
|
|
|
|
Delivered by my ANSITerm off-line reader scripts...
|
|
|
|
They're OLRight!
|
|
(DZAHNISER, 14757, GO COM A2)
|
|
|
|
>>>>> I checked this out too, and SFUtility is not the cause of the
|
|
""""" problem. But it is only the Convert File NDA that is affected by
|
|
the older applications. The Babelfish Init itself is called by the NDA and
|
|
any application that knows about Babelfish directly. For the meantime,
|
|
until I can make a fix, just make your conversions at the Finder level.
|
|
When I get some time, I will try and determine what the problem is with
|
|
these older programs.
|
|
|
|
SFUtility was intended to handle some of the disk switching in the
|
|
SFDialogs. The functionality was added to later versions of Babelfish. I
|
|
only bug fixed Babelfish, and so missed the item buried deep in the version
|
|
notes that said SFUtility was no longer needed.
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 14779, GO COM A2)
|
|
|
|
|
|
BABELFISH BUGS? PART 2 There hasn't been much discussion of Babelfish
|
|
"""""""""""""""""""""" here. I've found what I think is a bug, but,
|
|
before I get to that I want to thank Ewen, Richard Bennett, Ian Brumby,
|
|
Dave Hecker, and the other 7 Hillsers for this amazing utility. The
|
|
potential for it is almost unlimited, and I'm looking forward to the
|
|
developers' kit being made available. That said, there's a problem with the
|
|
HyperStudio Sound translator, both in importing and exporting sounds.
|
|
Importing: it chokes on any of the sounds in HyperStudio's "HS.Sounds"
|
|
folder with the message "File Translation Error: Bad file format or wrong
|
|
translator used. ($8002)". Exporting: Sound Shop (from HyperStudio)
|
|
complains that it doesn't recognize HS sounds created by Babelfish,
|
|
although it will load and play them if you insist. Sound Wizard (from
|
|
SoftDisk GS) loads and plays them without complaint. AudioZap 2.0 loaded
|
|
one but all it would play is a click.
|
|
(GARETH, 15053, GO COM A2)
|
|
|
|
>>>>> The developer's kit consists of two '.pdf' files and is available
|
|
""""" now on request from myself or SevenHills. You need to be able to
|
|
receive BinHex 4.0 attachments to receive the two files, and have an
|
|
Acrobat '.pdf' reader to view them.
|
|
|
|
Bill Tudor was the author of the HS sound translator, and is no longer
|
|
developing for the IIgs. The source files for this translator are in APW/C
|
|
format. As I don't understand C, and I am unfamiliar with sound files, I
|
|
can't help with fixing the bugs.
|
|
|
|
There are two options open to us here. Either a new Translator is written
|
|
from scratch, or if a developer capable of handling C and sound formats is
|
|
willing to take on the project on behalf of Seven Hills, we could send them
|
|
the existing source code to fix.
|
|
|
|
The first option only needs the '.pdf' files, the second option will need a
|
|
request to passed through to Seven Hills itself. In either case, get in
|
|
touch with me in e-mail.
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 15070, GO COM A2)
|
|
|
|
>>>>> Ewen, send me those sources, and I'll attend to them.
|
|
"""""
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 15075, GO COM A2)
|
|
|
|
|
|
SHIFTY LIST POWER USAGE Perhaps the most seriously useful feature of
|
|
""""""""""""""""""""""" Shifty List 2.0 is being able to select a script
|
|
at boot time either from a menu on screen or by pressing a key. Here are
|
|
some of my scripts and the keys that load them:
|
|
|
|
i - Boot to Finder with IR and a few debugging aids only.
|
|
s - Boot directly to Spectrum with known "good" system extras.
|
|
p - Boot to Finder with minimal setup for PMPFax.
|
|
o - Identical to my default (no key) boot, but launches the ORCA shell
|
|
instead of Wings (my preferred launcher.)
|
|
n - (<n>o sound). Same as my default boot but without sounds and without
|
|
the sound control panel.
|
|
|
|
I can choose any of these with a keypress at boot time, or I can press caps
|
|
lock and choose from these and others via on screen menu.
|
|
|
|
Other 2.0 goodies include playing sounds and displaying pictures during the
|
|
boot, launching different applications (as I do above), loading different
|
|
Battery RAM configurations, and lots more.
|
|
|
|
-----------------------------------------------------
|
|
Tony Ward, A2 Database Manager
|
|
[Delivered with Spectrum 2.1 and Crock O' Gold 2.5]
|
|
--
|
|
Gravity: it's not just a good idea, it's the law!
|
|
(TONYW1, 14778, GO COM A2)
|
|
|
|
|
|
KFEST THANK YOU FROM THE SENIOR APPLE II TEENAGER Thanks to All:
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""
|
|
But especially to Ewen, to my roommate, Russ Alman, to my
|
|
host-on-the-road Ron Merlin and to all the others that helped me in one way
|
|
or another---
|
|
Spectrum and C.O.G. are working perfectly, even in Oklahoma and with
|
|
sprintnet!
|
|
I received my "new" and I mean NEW SQ135 disk drive from SyQuest on the
|
|
next day after I returned from KFest. This was a replacement and was
|
|
covered by the warrantee. At first my RamFast SCSI did not seem to want to
|
|
recognize it and when I "fiddled" with the SCSI menu and got it to work, it
|
|
would work awhile, and then would fail to work.
|
|
Now, it seems to be working OK, especially if I leave my GS on all the
|
|
time, which is what I do most of the time anyway.
|
|
I appreciate all the consideration I received at KFest98. Sometimes I
|
|
felt like an honored guest. CEW
|
|
cewall {Ephraim}
|
|
Message delivered by Spectrum 2.1
|
|
and rushed to you by Crock O' Gold 2.5!
|
|
(CEWALL, 14760, GO COM A2)
|
|
|
|
|
|
CHOOSY IIGS FANATICS CHOOSE GIF As far as the GS is concerned, a GIF file
|
|
""""""""""""""""""""""""""""""" is an 8-bit, ascii text file. The ".gif"
|
|
suffix on the name is all that your gif viewer needs to know it's a gif. If
|
|
it's unreadable, maybe you only have a 7-bit connection. Have you been able
|
|
to download any programs that work?
|
|
--
|
|
Carl Knoblock - Telephone Tech
|
|
Via Crock O' Gold v2.5
|
|
cknoblo@novia.net
|
|
(CKNOBLO, 14770, GO COM A2)
|
|
|
|
>>>>> As Carl has pointed out, GIF files are plain text files, and so
|
|
""""" there is no filetype on the IIgs to mark them. They usually do not
|
|
have any binary wrapper applied to tell Spectrum what kind of files they
|
|
should be saved as, so they will be saved as Text.
|
|
|
|
When you try to view them in your '.GIF' viewing program, what happens?
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 14781, GO COM A2)
|
|
|
|
>>>>> Actually, there was a GIF filetype assigned. But it was assigned
|
|
""""" after there were already GIF viewers for the GS that accepted TXT
|
|
and BIN files (the two defaults for most Apple II telecom programs) so it
|
|
never caught on.
|
|
|
|
Technically, GIFs are not text files. They can be saved as text files if
|
|
that's how your telecom program is setup, or they can be saved as binary
|
|
files which is how I have my telecom programs setup.
|
|
|
|
If the GIF filetype had caught on in the Apple II world, we would be in the
|
|
same boat as Macintosh users who wrap all their uploads, including GIFs, in
|
|
MacBinary (although Mac users are getting better at this now <g>.) IMHO,
|
|
we're better off the way we are.
|
|
|
|
-----------------------------------------------------
|
|
Tony Ward, A2 Database Manager
|
|
[Delivered with Spectrum 2.1 and Crock O' Gold 2.5]
|
|
--
|
|
"To you I'm an atheist; to God, I'm the Loyal Opposition." -- Woody Allen
|
|
(TONYW1, 14813, GO COM A2)
|
|
|
|
|
|
ZIP SWITCH CHEAT SHEET Here are what the DIP switches control (with
|
|
"""""""""""""""""""""" factory default settings in parentheses):
|
|
|
|
SW1:
|
|
====
|
|
1 Cxxx/Dxxx Cache Disable (OFF)
|
|
2 Joystick Delay (ON)
|
|
3 AppleTalk Delay (OFF)
|
|
4 Counter Delay (ON) -- Allows passing of IIgs self test.
|
|
5 CPS Follow (ON)
|
|
6 OFF/ON -- Disable/Enable Acceleration.
|
|
|
|
7 |ON |ON |OFF |OFF
|
|
+ 8KB | 16KB | 32KB | 64KB |
|
|
8 |ON |OFF |ON |OFF
|
|
|
|
SW2:
|
|
===
|
|
1->7 Control the Speed of the corresponding IIgs slot.
|
|
1 (FAST, ON)
|
|
2 (NORMAL, OFF)
|
|
3 (FAST, ON)
|
|
4 (FAST, ON)
|
|
5 (NORMAL, OFF)
|
|
6 (NORMAL, OFF)
|
|
7 (FAST, ON)
|
|
8 Speaker Delay.
|
|
|
|
Hope this helps.
|
|
|
|
Paul.
|
|
|
|
Paul Schultz
|
|
schultp@delphi.com
|
|
sent your way via Spectrum 2.1 and Crock O' Gold 2.5
|
|
(SCHULTP, 14897, GO COM A2)
|
|
|
|
|
|
THE FINAL WORD ON PROTERM VERSION NUMBERS There seems to be some question
|
|
""""""""""""""""""""""""""""""""""""""""" about ProTERM versions here.
|
|
|
|
The current ProTERM versions are: ProTERM A2 3.1
|
|
ProTERM Mac 1.2.5
|
|
|
|
AutoReply: Jerry Cline @ InTrec Software, Inc. - <jerry@intrec.com>
|
|
ProTERM @ your service! The superior telnet and dialup application.
|
|
Sent w/ProTERM Message Manager (PTMM) - Details @ <ptmm@intrec.com>
|
|
Download ProTERM 1.2.5 & PTMM 2.5 (full versions): <www.intrec.com>
|
|
(INTREC, 14927, GO COM A2)
|
|
|
|
|
|
SWITCHING BETWEEN COLOR AND MONO ON THE FLY The Color/Mono setting in the
|
|
""""""""""""""""""""""""""""""""""""""""""" Display control panel on the
|
|
IIGS is useful for Double Hi-Res software such as PublishIt! and SB
|
|
Publisher (these programs seem to set it for you..but if you go in and set
|
|
it to mono and then back to color you can see the icky Color DHR version of
|
|
these desktop programs)
|
|
|
|
Question...how does one set a mono display for Hi-Res ("Single" Hi-Res)
|
|
software? The GS control panel setting does not have an effect on
|
|
Hi-Res modes. A good example is MousePaint, which is a decent paint
|
|
program for hi-res mode. Text and patterns often have the telltale
|
|
green and purple characteristics.
|
|
|
|
A simple P8 or Basic program to do this could be occasionally handy.
|
|
|
|
Shawn
|
|
(STBEATTIE, 14811, GO COM A2)
|
|
|
|
>>>>> I'm working from dim memory here, but I think I achieved this with
|
|
""""" Computer Keyboarding by poking the double hi res softswitch which I
|
|
THINK is 49246.
|
|
|
|
With the GS, this only works if you also select monochrome from the control
|
|
panel. Hopefully someone else's memory will be better than mine.
|
|
|
|
|
|
Charlie Hartley ... via the ProTERM Message Manager (PTMM) v2.5
|
|
(CKHARTLEY, 14816, GO COM A2)
|
|
|
|
>>>>> Charlie's memory is certainly in good shape.
|
|
"""""
|
|
I usually add a:
|
|
|
|
10 POKE 49246,0
|
|
|
|
to the beginning of BASIC programs that use the single hi-res screen. This
|
|
kills the color smearing that occurs on IIGS RGB monitors. I _think_ it can
|
|
also occur on IIGS mono composite monitors, although it's not colors that
|
|
smear, but rather the image that blurs.
|
|
|
|
I have also POKED this location prior to running (or modified the programs,
|
|
I can't remember) some machine language programs that use the single hi-res
|
|
screen. It really makes a big difference.
|
|
|
|
For a detailed explanation of all this, you may wish to read the IIGS Tech
|
|
Note #29, and also the February, 1988 issue of Open-Apple. The brief
|
|
explanation is that the Control Panel setting for monochrome only works for
|
|
double-hires graphics. By poking 49246, you turn double-hires on, but
|
|
assuming you set the control panel to mono and your program doesn't invoke
|
|
80 column mode, everything 'works out'.<g>
|
|
|
|
Hugh...
|
|
(HUGHHOOD, 14895, GO COM A2)
|
|
|
|
|
|
MOCKINGBIRD TIDBITS Most software looks for the Mockingboard in slot 4.
|
|
""""""""""""""""""" Few scan all slots for it. (The mouse card was not in
|
|
existence way back..)
|
|
|
|
The IIgs may need to be at 1MHz for some software to find the card, and for
|
|
the card to work properly. Otherwise the computer may lock up or crash when
|
|
the Mockingboard is accessed.
|
|
|
|
Some images of various Apple II Sound Cards are available at:
|
|
http://www.apple2.org/images/InterfaceCards/Sound.Music/
|
|
|
|
There were several variations of Mockingboard made, I have one or two on
|
|
there now, in the next few weeks I plan on getting the cards out again and
|
|
filling in where I left off on some of the categories.
|
|
|
|
Tony
|
|
(T_DIAZ, 14969, GO COM A2)
|
|
|
|
|
|
KFEST PICS ON DISPLAY IN MOSCOW After annoying my school districts
|
|
""""""""""""""""""""""""""""""" Technician for a week or so, I've finally
|
|
got my web server back, and online!
|
|
|
|
You will now be able to view the pictures I took at KFest '98. Odd... I'm
|
|
not in any of them! B-{)
|
|
|
|
The initial page has 52 thumbnailed GIFs and according to my timing, takes
|
|
about 2-3 mins. to load. Clicking on a particular thumbnail will load the
|
|
full sized GIF. It's not pretty in lynx, but Apple II users should still
|
|
be able to grab and view everything.
|
|
|
|
The URL is:
|
|
|
|
http://moscow2.pld.com/kfest98/
|
|
|
|
Kirk
|
|
(KMITCHEL, 14955, GO COM A2)
|
|
|
|
|
|
USING MAC CD ROMS FROM WITHIN BERNIE What you need to do is mount the
|
|
"""""""""""""""""""""""""""""""""""" disk on the Mac desktop (which
|
|
basically only involves inserting the CD-ROM :), then go back to Bernie and
|
|
share the volume:
|
|
|
|
- open File->Mount Disk...
|
|
- in the standard Open File box, click the Desktop button to see all
|
|
devices that are online
|
|
- highlight (not double-click) the CD-ROM volume
|
|
- push the button "Mount <name of CD-ROM>"
|
|
|
|
It is only possible to mount the first session of a CD-ROM.
|
|
|
|
woof,
|
|
Henrik
|
|
(GUDATH, 15013, GO COM A2)
|
|
|
|
>>>>> This is true for Apples' CDROM drivers.
|
|
"""""
|
|
I had to install FWB's CD-ROM Toolkit in order to access the other
|
|
partitions on the "Golden Orchard CD-ROM" that I got from Joe Kohn at
|
|
KFest.
|
|
|
|
Unfortunately, it won't mount the Prodos partition, but was able to access
|
|
the HFS partitions.
|
|
|
|
To simplify matters, I copied each partition into a big disk image (6 Gigs
|
|
is fun!), so they don't take up valuable disk slots in Bernie.
|
|
(KMITCHEL, 15027, GO COM A2)
|
|
|
|
|
|
APPLE II REUNION MAKES MSNBC What a great read!
|
|
""""""""""""""""""""""""""""
|
|
John Romero's Apple II reunion party on MSNBC
|
|
|
|
http://www.msnbc.com/news/187499.asp
|
|
|
|
- Matt
|
|
(MPORTUNE, 15074, GO COM A2)
|
|
|
|
|
|
GETTING ROGER'S ATTENTION RWP is a rapidly growing company. Just like a
|
|
""""""""""""""""""""""""" person in a growth spurt, they are occasionally
|
|
a bit clumsy. I think they simply stumbled a bit with your e-mail. In fact,
|
|
when I've asked them where I should tell people to send e-mail, I've never
|
|
been told it should be sent to support@hyperstudio.com, which is where I
|
|
assume you sent it.
|
|
|
|
Try e-mailing Dallas, their customer support head, at
|
|
dallas@hyperstudio.com. Explain what you want, and ask him how you can get
|
|
the upgrade. Be sure and include your complete mailing address. The
|
|
simplest response for him will be to drop a set of disks in the mail, so
|
|
make it easy for him to help you.
|
|
|
|
If that fails, let me know.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 15142, GO COM A2)
|
|
|
|
|
|
IIGS TRIVIA If you examine an ASCII dump of a GS' ROM, you'll see it has
|
|
""""""""""" a patent notice embedded in it.
|
|
|
|
--
|
|
Steve Reeves
|
|
(REEVESST, 15315, GO COM A2)
|
|
|
|
|
|
PROFILING THE PROFILE You can run a ProFile on a GS. You need a certain
|
|
""""""""""""""""""""" ROM revision on the interface card, and a certain
|
|
modification to the card, in order to use it with GSOS. (I can retrieve
|
|
that info if you need it, but I don't have it at hand.)
|
|
|
|
The typically available ProFile is a 5 megger. The drives are more common
|
|
than the cards (because they were fairly common on the Apple III, and the
|
|
cards from the III won't fit a II or a IIgs). Both are pretty hard to find,
|
|
and a ProFile drive without an interface card is not much more than a
|
|
doorstop or a curio.
|
|
|
|
You can only do a low level format on a ProFile with a Lisa (predecessor to
|
|
the Mac).
|
|
|
|
ProFiles are very slow, and very noisy, and the power supplies, despite the
|
|
fact that they are HUGE (by todays standards) are not terribly powerful.
|
|
|
|
The ProFile manual specifically recommends that the drive not be turned off
|
|
on a day to day basis.
|
|
|
|
(Those are the tidbits I can remember off the top of my head.)
|
|
|
|
Gary R. Utter
|
|
(UTTER, 15216, GO COM A2)
|
|
|
|
>>>>> The controller card you'll want to find is labeled: Apple II
|
|
""""" Interface 820-5006-[]B. Another number on the card is 656-0203-D
|
|
(or some other revision letter).
|
|
|
|
Cards had BIOS support for 5 or 10 meg Profiles but I've been informed that
|
|
it's one or the other, the BIOS on the card determines what size drive it
|
|
will support and cannot be changed without swapping out the BIOS chip, i.e.
|
|
a 10MB card won't work with a 5MB drive or vice versa. Bummer.
|
|
(SFAHEY, 15223, GO COM A2)
|
|
|
|
>>>>> Two things on Profile cards:
|
|
"""""
|
|
The ROM and GS/OS,ProDOS 16, et al.
|
|
|
|
Apple says you need to change the ROM. I have never changed the ROM. I have
|
|
never had a problem either, other than the thermometer does not work during
|
|
boot. So what, it doesn't work on the CMS card either, or most other older
|
|
hard disk controller cards.
|
|
|
|
The ROM (BIOS? Blech. That's PC stuff.), dictates the size drive you can
|
|
attach to it?
|
|
|
|
I must say, that I have *NEVER*, *EVER* heard of that. Not ever in any of
|
|
the service manuals I have ever read, tech notes, or even in using them.
|
|
When did that start?
|
|
|
|
Someone may be thinking the controller card on the drive itself, and I
|
|
don't mean the board on top of the power supply, but the one on the drive
|
|
itself.
|
|
|
|
Actually, there is one type of 5MB mechanism, but there are two types of
|
|
10MB, one being the Seagate with Apple's controller on it, like the 5MB,
|
|
the other is the Wigit drive. These are the 10MB drives used INTERNALLY on
|
|
Lisa 2/10 systems.
|
|
|
|
Tony
|
|
(T_DIAZ, 15306, GO COM A2)
|
|
|
|
|
|
SIZING UP SPEED I don't think I would be willing to pay so much for an
|
|
""""""""""""""" accelerator. I would however probably be willing to pay
|
|
$200 - if it cost more I would just have to do without.
|
|
|
|
Well, $40,000 = 100 x $400 OR 200 x $200 !
|
|
|
|
If there were more of us, maybe it would cost the individual less - do you
|
|
think one could find so many takers? You could put my name on the list at
|
|
least.
|
|
|
|
OTOH, maybe a Transwarp GS could not be produced and sold profitably for
|
|
under $400. An original Applied Engineering 1991 catalog lists this as the
|
|
price for a TWGS (32K cache). Do you know why a new production would cost
|
|
so much? Is there some sort of special microchip that would have to go into
|
|
production again?
|
|
|
|
Giselle
|
|
(GSCHNAUBELT, 15405, GO COM A2)
|
|
|
|
>>>>> You know, at this point an incredible accelerator for you GS is a
|
|
""""" Power Mac equipped with Bernie II the Rescue.
|
|
|
|
Worth thinking about, anyway. :)
|
|
---
|
|
|
|
Dean Esmay -- esmay@syndicomm.com
|
|
(ESMAY, 15406, GO COM A2)
|
|
|
|
>>>>> Looking at the TWGS, there aren't any real custom parts, but the
|
|
""""" GALs would need to be programmed and they appear to be copy
|
|
protected, and the ROM would need to be copied. There's also the copyright
|
|
issue, although I think Joachim over at //SHH Systeme resolved that with
|
|
the ROM issue.
|
|
|
|
The ZipGSX has that custom part which can't be made without a substantial
|
|
one time investment.
|
|
|
|
So, if someone could get the code for the GALs and the ROM, the TWGS might
|
|
be a better candidate to put back into production in terms of initial start
|
|
up costs. Whether or not it could be done in a profitable manner in a
|
|
small run is unknown.
|
|
|
|
|
|
-
|
|
Ryan M. Suenaga, M.S.W., L.S.W. - rsuenaga@apple2.org
|
|
Editor and Publisher, _The Lamp!_, published monthly on Delphi
|
|
Delivered via FFNSS alpha .5
|
|
(RSUENAGA, 15408, GO COM A2)
|
|
|
|
<<<<< I suppose that the logical person to produce Transwarps would be
|
|
""""" Joachim Lange - anyone else able and willing? He offers a
|
|
re-designed version of the original TransWarp 32K cache piggyback board for
|
|
upgrading 8K Transwarps and I know he has permission to do the necessary
|
|
firmware upgrades of EPROM versions older than 1.7 or 1.8. I expect that
|
|
other copyright issues would be involved however, to do a whole TW board
|
|
and all the necessary firmware programming.
|
|
|
|
I will try contacting him about this, as well as a realistic price
|
|
estimate.
|
|
|
|
Giselle
|
|
(GSCHNAUBELT, 15441, GO COM A2)
|
|
|
|
|
|
THE NO SLOT CLOCK--AVAILABLE IN THE LATE 90'S I believe the NSC can be
|
|
""""""""""""""""""""""""""""""""""""""""""""" had for new by buying a
|
|
Dallas Semiconductor chip (unfortunately, I don't have the info handy at
|
|
the moment). There is software freely available which can set up this chip
|
|
(I believe it is called something like Smartwatch.shk on some of the ftp
|
|
sites). The chip can be purchased from either Jameco or JDR Microdevices
|
|
(can't remember which catalog I saw it in).
|
|
|
|
If I remember, I'll dig up the info when I get home and post here. I may
|
|
even have the smartwatch software. If I do, I'll try to upload it here.
|
|
|
|
Paul.
|
|
(SCHULTP, 15587, GO COM A2)
|
|
|
|
<<<<< Here is the info for the 'No Slot Clock' and the SmartWatch
|
|
""""" software for setting the DS1216E. I'm going to try to upload the
|
|
SmartWatch.bxy file tonight. Since I've never uploaded to delphi yet please
|
|
bear with me. Hopefully, you'll see the software in a day or so :-)
|
|
|
|
I believe that Alltech still sells the No Slot Clock but if I recall the
|
|
provided software isn't as good as what is provided with the SmartWatch.bxy
|
|
package.
|
|
|
|
Paul.
|
|
|
|
--------------------------------------------------------------------------
|
|
The following is an excerpt taken from the INSTRUCTIONS file from within
|
|
the SmartWatch.bxy archive:
|
|
|
|
- SWU.SYSTEM is a self-contained utility program that is used to start
|
|
and set the date/time in an installed DS1216E. This program does not
|
|
require any particular version of ProDOS8 and does not use the ProDOS MLI
|
|
call 'GET_TIME'. This program makes direct call to the DS1216E using
|
|
selected address in the $C300 page. This memory page was selected due to
|
|
its constant availability in Apple //e's and Apple //c's.
|
|
--------------------------------------------------------------------------
|
|
|
|
Paul Schultz
|
|
schultp@delphi.com
|
|
sent your way via Spectrum 2.1 and Crock O' Gold 2.5
|
|
(SCHULTP, 15612, GO COM A2)
|
|
|
|
|
|
UDC CARDS AND 800K DRIVES I used to have a generic Mac 800k drive (Chinon
|
|
""""""""""""""""""""""""" mech, I think) that had a manual eject button
|
|
hooked up to a UDC card, and I was copying disks with Diversi-Copy. I was
|
|
stunned to find that this most generic of Mac drives in combo with the UDC
|
|
card supported software eject!
|
|
|
|
So, any software that normally ejects 3.5 disks ought to work fine with the
|
|
UDC card and external drives, but you're generally out of luck for software
|
|
that doesn't do software ejects. . .
|
|
|
|
-
|
|
Ryan M. Suenaga, M.S.W., L.S.W. - rsuenaga@apple2.org
|
|
Editor and Publisher, _The Lamp!_, published monthly on Delphi
|
|
Delivered via FFNSS alpha .6
|
|
(RSUENAGA, 15669, GO COM A2)
|
|
|
|
|
|
HABANERO'S GS MISADVENTURES As does the Apple IIGS. I was in the
|
|
""""""""""""""""""""""""""" Himalayas, oh about 15 years ago, just
|
|
walking around, minding my own business, picking wild flowers and feeding
|
|
the yaks when I decided to hike up into the snow country.
|
|
|
|
I had struggled my way up to about 8,000 meters and was really tired due to
|
|
the thin air and the weight of my back pack. I couldn't take another step
|
|
so I decided to sit on a ledge of ice that was protruding from a rock.
|
|
|
|
After about 20 minutes, I had finally regained my breath and noticed a cold
|
|
draft that was tingling my spine. I turned around and saw a little hole in
|
|
the ice surrounding the rock. I pushed away some of the snow and chiseled
|
|
away some of the ice and realized that there was a cave underneath the
|
|
rock.
|
|
|
|
I wanted to get a feel for how large the cave might be so I shouted
|
|
'hallooo' into the opening. There was a 6 second delay when the 'halloo'
|
|
finally returned.
|
|
|
|
Wow, I thought to myself, that cave must be at least 3 meters wide and 10
|
|
meters deep.
|
|
|
|
I looked to the left, looked to the right, looked uphill and downhill and
|
|
didn't see anyone for at least 20 kilometers in any direction, although if
|
|
I squinted I could make out 20 Hare Krishna's bothering a tent salesman for
|
|
donations way down the hill. Well, since no one was nearby, I would take a
|
|
chance on exploring the cave myself.
|
|
|
|
I pushed away all the snow and chiseled and hacked away enough of the ice
|
|
so I could fit all 140 kilograms of myself into the cave.
|
|
|
|
It was dark inside, but I could make out that I had vastly under estimated
|
|
the size of the cave. I could see at LEAST 15 meters down the corridor!!!!
|
|
|
|
As I walked forward and the light became too faint to see anymore I pulled
|
|
the Zippo from my back pack (no kids, I don't smoke, I carry the Zippo
|
|
because in certain small towns in the Himalayas it is considered rude to
|
|
say 'I don't smoke, you cancer infested lackey of the tobacco industry'
|
|
when someone asks you for a light) and fired it up.
|
|
|
|
In the distance, I could make out a large room, through the dim yet not too
|
|
unpleasant glow of the flame from the Zippo. When I called out 'Hey,
|
|
dudes, what's happening!' to the group of faint figures against the
|
|
farthest wall, they jumped up and raced towards me, in a velocity I can
|
|
only describe as 'quick', yelling what appeared to be obscenities in a
|
|
language that not only did I not understand, but found to be strangely
|
|
unfriendly.
|
|
|
|
As I had, by now, determined that an equally quick disembarkation from the
|
|
cave may be the best course of action, I turned and dove out the hole I had
|
|
made at the surface.
|
|
|
|
Once outside again in the fresh air and sunshine, I thought that I should
|
|
now go back down the mountain (at least out of the snow country) and eat
|
|
some lunch. As I took my first carefree steps towards my mid-day repast, I
|
|
suddenly heard some scowls and smelled the unpleasant odor of 'garlic,
|
|
shrimp, truffles and tapioca' breath.
|
|
|
|
The figures turned out to be yetis and apparently I must have offended them
|
|
by calling them 'dudes' because they were still pursuing me even after my
|
|
renaissance from the bowels of their humble, yet conservatively furnished
|
|
in animal and human bones, abode.
|
|
|
|
As I picked up my pace down the mountainside, they were gaining on me, and
|
|
I had to do something quick. I finally realized that the pack on my back
|
|
was slowing me down, (gee I left home in such a rush when I came to the
|
|
Himalayas that I'm not even sure what I packed), so I stopped to see what
|
|
was so heavy.
|
|
|
|
D'oh! I had inadvertently packed my IIGS including the monitor when I
|
|
meant to pack an extra pair of socks.
|
|
|
|
Time was so short at this moment that I would never be able to repack the
|
|
back pack in an orderly manner (tip from heloise: it is easier to find
|
|
things when you unpack if you pack them in an orderly and logical manner)
|
|
so a bit of improvisation was required.
|
|
|
|
I placed the monitor onto the system saver, then put that unit onto the cpu
|
|
box, plugged in the keyboard and mouse, put the back pack over my shoulder,
|
|
and proceeded to sit on top and pushed off with both feet.
|
|
|
|
As I began speeding down the snow covered mountainside attempting stem
|
|
christies along the way, I was horrified to see that the yetis were still
|
|
gaining on me.
|
|
|
|
What could I do? What would MacGiver do?
|
|
|
|
I recalled from an episode of Gilligan's Island that when the batteries on
|
|
the radio had gone dead, that the professor had them all sit around the
|
|
table and stir some cups of something with electrodes connected and this
|
|
powered the radio.
|
|
|
|
Hmm, dang this old age, my memory had gotten so bad that I could not for
|
|
the life of me (and with the yetis gaining, this could be true!) remember
|
|
what the professor had put into the cups. Scratch that idea anyway, if I
|
|
needed a radio on a deserted island, then maybe that would be useful, but
|
|
not here.
|
|
|
|
Batteries! That's the ticket. In my best MacGiver imitation, I pulled a
|
|
paper clip from my knapsack and the batteries from my flashlight (hmm, why
|
|
did I use the Zippo in the cave when I had a flashlight?) and fashioned
|
|
these items into a 120 volt 60 hz ac power supply, soldered it to the power
|
|
cord on the IIGS, booted up (thank God for the internal Focus Hard Card, I
|
|
don't think I would have had time to boot up from floppy disks!) held down
|
|
the open-apple and control keys and pressed escape.
|
|
|
|
No, it didn't help me escape, but it did bring up the control panel program
|
|
and I was able to select the Zip GS control. You see, I had disabled the
|
|
Zip GS when I was playing 'Where in the world is Carmen San Diego?'. At
|
|
this point, just nanoseconds before they grabbed me, I kicked the Zip into
|
|
the highest speed and WHOOSH! I was off down the mountain! The design of
|
|
the IIGS allowed me to float down the deep and heavy snow, just like the
|
|
best designed skis.
|
|
|
|
|
|
|
|
To this day I thank my lucky stars that I spent the extra money for the
|
|
ZipGSX 10/64 instead of settling for the cheaper 7/16.
|
|
|
|
|
|
|
|
Burp!
|
|
(HABANERO, 15026, GO COM A2)
|
|
|
|
<<<<< All this talk about airplanes and sky diving reminds me of a trip I
|
|
""""" took on a Northwest Airlines Flight a while back.
|
|
|
|
It was about 3 years ago. I was on my way to San Francisco from Detroit and
|
|
was running slightly late for the flight. As I rushed my 1977 Chrysler
|
|
Cordoba (yes, the one with the Corinthian Leather) into the parking garage
|
|
and parked it in a Frank Drebbin- (you know, the guy from 'Police Squad'
|
|
and the 'Naked Gun' movies) -like manner on the third level, I glanced at
|
|
my watch to see how much time I had before the plane disembarked.
|
|
|
|
Mickey's hands pointed out that I had exactly 4 minutes to get from the
|
|
garage, to the terminal, check in, go through the security check, walk the
|
|
2.5 miles from the security checkpoint to the gate, and board the plane.
|
|
|
|
I didn't think I could make it, especially since the sky-blue double-knit
|
|
Sans-a-belt slacks I was wearing (with the matching green and red plaid
|
|
long sleeve shirt, smartly buttoned all the way to the top button, no
|
|
neck-tie, of course, {although being a business trip, I was allowed to
|
|
travel casually dressed, hence, no tie}) were a bit on the snug side. Even
|
|
though they had been comfortable for the past 16 years, I had put on a few
|
|
extra pounds the last couple of them.
|
|
|
|
Putting my negative thoughts aside, I made a mad dash toward the terminal,
|
|
my white socks a blur in the partly sunny Monet-like landscape of concrete,
|
|
asphalt, yellow painted lines and oil spots left on the ground by aging
|
|
Oldsmobiles and Dodge Mini-vans.
|
|
|
|
Porting all I would need for this trip in one carry-on valese of
|
|
pebble-grained vinyl, I could actually by-pass the check-in and head
|
|
straight for the terminal, this would save me 3 minutes. My chances of
|
|
making the plane on time were getting better (if you don't count that I was
|
|
supposed to check in one hour before departure).
|
|
|
|
I made it through the hernia-exam-like security frisk and hopped onto the
|
|
moving sidewalk still running at full speed (well, as full a speed as a 36
|
|
year old, overweight, couch potato with a vinyl valese and brown
|
|
winged-tipped Hush-Puppies could manage).
|
|
|
|
At this point I recalled the old Hertz Rent-a-car commercials that used to
|
|
play on tv during the seventies and eighties, the ones with O.J. Simpson.
|
|
You remember........ O.J. would be in California saying you could rent a
|
|
car for $29.99 and Arnold Palmer (the golfer, not the star of the
|
|
Terminator movies) would be in Florida saying you could rent a similar car
|
|
for $19.99.
|
|
|
|
An odd choice to be thinking of while running through an airport.
|
|
|
|
Anyway, I made it to the gate to find that the last (well second to last if
|
|
you count me) passenger was just getting on board.
|
|
|
|
I dragged myself, huffing and puffing, up to the gate and handed over my
|
|
ticket to the attendant. He proceeded to inform me that my pre-booked seat
|
|
by the window had been given to a standby passenger, but they did have a
|
|
seat between two children travelling alone to see their granny in Colma.
|
|
|
|
Rats. Oh well, "I'll take it", I told him, not wanting to miss my
|
|
appointment in San Francisco. As I walked down the boarding ramp, I thought
|
|
I heard him say to the janitor that they had to separate the two kids
|
|
because they fought like cats and dogs if they were seated next to each
|
|
other.
|
|
|
|
My seat, as it turns out was backed up against the bulkhead, which meant I
|
|
would not be able to recline. This was not a pleasant thought on a three
|
|
hour tour ... er plane ride. Especially if the weather started getting
|
|
rough. The tiny plane could get tossed, if not for the courage of the
|
|
fearless crew, the Boeing 666 airliner could get lost. The Boeing could get
|
|
lost.
|
|
|
|
When I tossed my valese into the overhead compartment and sat down, (on
|
|
some freshly chewed bubble gum) I tried to find the two parts of my safety
|
|
belt. My favorite part of any commercial flight is to follow along with the
|
|
stewardess... er, flight attendant, during the safety drill. Well, it
|
|
seems that both parts of the belt had slipped down under the seat onto the
|
|
floor of the cabin.
|
|
|
|
As I contorted myself into a yoga position that I had seen on tv a number
|
|
of years back in order to retrieve the belt halves, the two kids erupted
|
|
into a nasty competition, apparently a resumption of a continuing battle as
|
|
to who could come up with a tongue twister the other couldn't say.
|
|
|
|
"Rubber Baby Buggy Bumper....Rubber Baby Buggy Bumper....Rubber Baby Buggy
|
|
Bumper" one of the darling infant forencists yelled into my ear.
|
|
|
|
"She Sells Sea Shells By The Seashore....She sells Sea Shells By The
|
|
Seashore...." the other retorted in an equally profound and ear-splitting
|
|
manner.
|
|
|
|
I finally exhumed the seat belts and settled into my seat, hearing about
|
|
pecks of pickled peppers and the like, and after clasping the buckle closed
|
|
decided to put a stop to this quibble.
|
|
|
|
"Quick Click Calc....Quick Click Calc....Quick Click Calc" I interjected.
|
|
|
|
The two stunned, yet suddenly pleasantly silent youngsters, were in awe.
|
|
|
|
Quick Kick Clack....Kick quick clalc....Quack Quack Duck.....It was evident
|
|
to everyone on the plane that neither enfant horrible could duplicate my
|
|
feat.
|
|
|
|
There wasn't another peep from anyone on the plane (although the radiant
|
|
smiles of adult parents were felt, even to a contorted, rumpled, gum stuck
|
|
yutz like me) for the next 10 minutes.
|
|
|
|
Just before take off, the little brother of the pair whispered to me "What
|
|
is a Quake Cake Clamp anyway?
|
|
|
|
"A program from the company with the 'Fish-Wearing-Holstein-Cow-Clothes'
|
|
logo" I responded, patting the little dear on the head.
|
|
|
|
"IT'S NOT A FISH IT'S AN KILLER WHALE YOU <expletive deleted>. DON'T YOU
|
|
KNOW AN ORCA WHEN YOU'VE SEEN ONE?" the little sister of the pair retorted.
|
|
"AND THEIR LOGO IS GEARS, YOU <what I assumed was an expletive, not having
|
|
heard this word before>."
|
|
|
|
Just then a light bulb went on over my head. (It was the reading lamp of
|
|
the woman just in front of me, but a minor epiphany was experienced
|
|
nonetheless)
|
|
|
|
So now it all makes sense! It is not ORKUM and ORKAK, but rather ORKA-EM
|
|
and ORKA-SEE. Duh! What country was I born in?
|
|
|
|
Just then the plane took off. Now I was stuck. The scared little munchkins
|
|
claws stuck into my legs (why did they have to be afraid of flying too, I
|
|
lamented silently to myself).
|
|
|
|
I thought that my best course of action would be to just ignore them and
|
|
start getting ready for the work that lay ahead. I pulled out my
|
|
credit-card-sized electronic Rolodex and began punching those tiny little
|
|
buttons with my big, fat fingers. Yeah, right.
|
|
|
|
I started to day dream a little, over the raucous noise the H.R.
|
|
Puff'n'stuff dropouts were manufacturing, about some programs I had put
|
|
together to download data from my Apple IIGS into my pocket Rolodex. You
|
|
see, it isn't documented in any of the tech manuals but there is a small
|
|
connector underneath the motherboard of the Rom 01 GS that is just perfect
|
|
for loading serial data into palm-sized mini-micro-sized-computerized
|
|
gadgets, provided you have the proper handshaking cable.
|
|
|
|
While investigating the possibilities and putting together some code on the
|
|
GS, a former Apple employee that was working at the local hand-toweled car
|
|
wash let me in on the biggest secret surrounding the ROM on ROM 01 GS's.
|
|
|
|
If you 'Peek' location $D8/BEEF and 'Poke' that into location $CC/FEEB
|
|
while there is no memory expansion card in the slot, the firmware will spew
|
|
forth 'Microsoft Flight Simulator' out the serial port, perfect for pirates
|
|
and Microsoft disenchantee's alike.
|
|
|
|
Well, the only catch was that it came out backwards, and big-endian to
|
|
boot. It was only a minor patch to fix that and since I was experimenting
|
|
with the hidden-serial-to-gizmo port anyway, I proceeded to download the
|
|
game into my Rolodex.
|
|
|
|
How convenient for me, as I could boot up this game and keep these
|
|
quasimodo descendants occupied for the next three hours.
|
|
|
|
I showed them how to do it and they were fascinated. I traded seats with
|
|
the distaff child and they were merrily playing for the next hour and a
|
|
half.
|
|
|
|
Suddenly the plane lurched up and shot 4,000 feet higher than our
|
|
travelling ceiling. Next it plunged 6,000 feet in less than 3 seconds.
|
|
Those who weren't buckled in (like the flight attendant told them, the
|
|
I-can-do-what-I-want-because-it's-a-free-country God-less democrats) were
|
|
tossed up and banged their heads a-la one of those Indoesian Gamelans. You
|
|
know what I mean, in a musically rhythmic fashion, sort of in the tune to
|
|
'shave and a haircut, two bits'.
|
|
|
|
In fear that we were going to crash, I panicked and grabbed the Rolodex
|
|
from the Addams-Family kids and threw it into my shirt pocket (not the one
|
|
with the pocket protector, but the other one).
|
|
|
|
Just as suddenly, the plane leveled out and we continued on our trip.
|
|
|
|
You probably heard about the incident of the plane that mysteriously shot
|
|
up and dove down in the papers back then, but nobody could understand what
|
|
had happened, not the pilot, not the janitor, not the Federal Aviation
|
|
Administration officials.
|
|
|
|
At least until the past week.
|
|
|
|
During the long and drawn out law suit that we passengers had filed against
|
|
the airline for subjecting us to 'shave and a haircut, two bits' a new
|
|
revelation came forth.
|
|
|
|
You see, a Boeing factory worker who was installing the firmware into the
|
|
electronic computerized passenger seat game/fax/phone ports in the plane's
|
|
passenger cabin was moonlighting in Redmond as a Programmer for Microsoft.
|
|
The day he was installing the firmware in the seat next to the one I
|
|
occupied, he had been terminated by the software giant. It seems he had
|
|
produced 2,000 consecutive lines of code without one bug, which is, of
|
|
course, against company policy and grounds for immediate termination.
|
|
|
|
When he came to work at the Boeing facility that day, he had brought along
|
|
a bootleg copy of, you guessed it, Flight Simulator, and wired it into the
|
|
cockpit controls. When the kids had inadvertently plugged the earphone
|
|
adapter to my Rolodex into the headphone jack at their seat, they had
|
|
accidently tripped the cockpit override and were actually steering the
|
|
plane.
|
|
|
|
Scary.
|
|
|
|
I had to tell the FAA that I've never owned anything other than a IIGS and
|
|
a Newton.
|
|
|
|
My mom will probably wash out my mouth with soap for that fib.
|
|
|
|
Don't tell anyone, ok?
|
|
(HABANERO, 15548, GO COM A2)
|
|
|
|
|
|
|
|
RUMOR MILL
|
|
""""""""""
|
|
|
|
SHEPPY'S SOFTDISK STUFF All of my Softdisk-published stuff has been
|
|
""""""""""""""""""""""" updated and released as freeware or shareware
|
|
since Softdisk G-S went away.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 15308, GO COM A2)
|
|
|
|
|
|
NEW SCRIPTS FOR COG? Well, all I've told Ewen so far is that I'm working
|
|
"""""""""""""""""""" on some scripts he might want to include in the next
|
|
version of COG. What I'm working on at present is a replacement for the
|
|
Msg.Reader script that will give COG users the ability to deal with
|
|
messages, threads and topics a little easier.
|
|
|
|
I'm creating a new message reader window which contains pop-up menus for
|
|
Forum and Topic (both of which can be set to "All" if you don't want to
|
|
limit which message threads get displayed in the Thread list box. This
|
|
allows you go through the thread subjects and pick and choose which
|
|
messages you want to read (unread messages will be marked).
|
|
|
|
There is a second window that is for displaying the message that you select
|
|
in the Thread listbox. I haven't decided yet whether I will be putting
|
|
buttons in like the current Msg.Reader scripts does for Reply, Download,
|
|
Archive, etc. I'm thinking more of using keyboard commands or a menu but I
|
|
haven't decided yet.
|
|
|
|
You will be able to set how many days you wish to keep messages on your
|
|
system. After that many days, they will be deleted unless you have told
|
|
the script that you want to keep the message. I'll probably add a COG
|
|
Archive menu item to the Forum pop-up menu for this but I might just leave
|
|
the kept message in their own Forums. Again, I haven't decided yet.
|
|
|
|
This script is in its very early infancy but I did want to let people know
|
|
that an improved threaded message reader is in the works. I'm not sure
|
|
when it will be done as I'm also working on several other things at the
|
|
same time but rest assured, it will be done if for no other reason than the
|
|
fact that I want it. :)
|
|
|
|
Jeff Blakeney - Dean of A2U in A2Pro on Delphi
|
|
sent via COG v2.5, Spectrum v2.1 and a Linux box to here.
|
|
(JBLAKENEY, 14896, GO COM A2)
|
|
|
|
|
|
NEW LIFE FOR PLATINUM PAINT? I inquired through Gina a week or so ago
|
|
"""""""""""""""""""""""""""" into the status of Platinum Paint, and she
|
|
indicated that SQC still has the rights to the program, but apparently has
|
|
no intention of ever distributing it again.
|
|
|
|
I have asked for a price on obtaining the rights to Platinum Paint so that
|
|
I can distribute it through Juiced.GS, and if the price is not too steep I
|
|
intend to do just that. I'm still waiting to hear a price, or even if the
|
|
rights are for sale. Wish me luck ....
|
|
|
|
The good news is that we still have Gina inside SQC to keep an eye on
|
|
things for us. :-)
|
|
|
|
|
|
Max Jones, Juiced.GS
|
|
http://www.wbwip.com/juiced.gs
|
|
Delivered by Spectrum 2.1 and Crock O' Gold 2.5
|
|
(JUICEDGS, 14898, GO COM A2)
|
|
|
|
|
|
MARINETTI PROGRESS Well, yes I'm working on Marinetti 2.0 at the moment,
|
|
"""""""""""""""""" and as Carl says, probably the end of September (I'm
|
|
busy job hunting at the moment).
|
|
|
|
Marinetti 1.1 and 2.0 are basically the same thing. In fact if a certain
|
|
person hadn't accidentally (yeah, it was an accident, I understand they
|
|
happen every now and again :) posted about it, nobody would have been
|
|
confused about the version number. That's why we do secret development, so
|
|
that rumours and fiction don't get started.
|
|
|
|
As with most Apple II software these does, it will be done when its done,
|
|
and here on Delphi you'll hear about it first, the Marinetti home page
|
|
second, and csa2 hopefully never. :-)
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 14908, GO COM A2)
|
|
|
|
|
|
WAITING FOR GODOT. . . UH, GUS I think it's safe to assume that since
|
|
'""""""""""""""""""""""""""""" Andy Nicholas is no longer at Apple, and
|
|
Dave Lyons is a busy guy, we probably shouldn't hold our breaths waiting
|
|
for Gus to be released to the general public.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 15277, GO COM A2)
|
|
|
|
|
|
|
|
PUBLIC POSTINGS
|
|
"""""""""""""""
|
|
|
|
FROM SPECCIE WITH LOVE Until now, I haven't really said anything online
|
|
"""""""""""""""""""""" about the TABBS CD-ROM, mainly because I was
|
|
waiting to get copies of the CD-ROM for distribution. A slew of copies
|
|
arrived this morning, and I've just spent the past few hours going through
|
|
the CD-ROM. It's going to take much, much longer - maybe even years -
|
|
before I discover everything on the TABBS CD-ROM, as there is more than 600
|
|
megabytes of compressed files on the CD.
|
|
|
|
As those of you who attend Kfest 98 know, the TABBS CD-ROM was put together
|
|
by Sir Ewen Wannop, of Spectrum fame. For years, Ewen ran a BBS system for
|
|
various Apple II British user groups, and the TABBS CD includes everything
|
|
that was ever uploaded to that BBS, plus I presume, a whole lot more.
|
|
|
|
It's a hybrid CD, with software on it for Apple II, Macintosh and IBM PC.
|
|
|
|
It includes, among other things, the entire Apple2000 Apple II disk
|
|
library, as well as the more recent British Apple IIgs Club library. In
|
|
addition, the British Apple IIgs Club put out a monthly newsletter in
|
|
HyperStudio format, and all of those are on the disk as well. Each one of
|
|
those newsletter disks contains articles, news, and of course software.
|
|
|
|
In looking at the CD for just a few hours, I feel overwhelmed with
|
|
software. For that reason, I've asked Ewen if he can send me a complete
|
|
catalog of everything on the disk (as it is, each folder on the CD has a
|
|
catalog listing, but there are probably 100 different folders) so that I
|
|
can make that info available so that folks can see what's on the disk.
|
|
|
|
Like I said, it's going to take me a long time to go through the disk
|
|
just to see what's there.
|
|
|
|
In any case, the TABBS Library Archive CD-ROM is now available from
|
|
Shareware Solutions II for $25. It comes on one large HFS volume.
|
|
|
|
Send checks/money orders to:
|
|
|
|
Joe Kohn
|
|
Shareware Solutions II
|
|
166 Alpine St
|
|
San Rafael, CA 94901
|
|
(JOE_KOHN, 15184, GO COM A2)
|
|
|
|
|
|
NEW WEBWORKS FROM SHEPPY WebWorks GS has been updated to version 1.1!
|
|
""""""""""""""""""""""""
|
|
The new version fixes the copyright symbol bug (which could potentially
|
|
crash the system, and would corrupt documents), and adds an exciting new
|
|
feature!
|
|
|
|
WebWorks GS now provides an HTML preview option, whereby you can, without
|
|
quitting WebWorks GS, see how your page will look when viewed in Spectrum
|
|
Internet Suite!
|
|
|
|
Thanks to Ewen Wannop and Geoff Weiss, who kindly provided the SIS HTML
|
|
engine used to display the page, ordinary mortals (ie, people without The
|
|
Manager, Spectrum, SIS, *and* a lot of memory) can check out their pages
|
|
while editing them.
|
|
|
|
Current WebWorks GS owners can upgrade by downloading the updater
|
|
application, UpdateWWGS.shk, either from Delphi's A2 library when it's
|
|
released (I just uploaded it now), or from
|
|
ftp://ftp.sheppyware.net/pub/apple_iigs/UpdateWWGS.shk.
|
|
|
|
The updater includes a readme file describing the usage of the updater
|
|
application and the new feature, an updater application, and Dan Krass'
|
|
WebWorks GS logo graphic, which you can use freely on WWGS-built pages if
|
|
you like.
|
|
|
|
You'll need around 100k of free disk space (about 50k on the boot disk and
|
|
about 50k on the disk that WebWorks GS is on) to install the update.
|
|
|
|
If you don't have WebWorks GS already, send Joe Kohn $20 and get your copy
|
|
today! All disks sent out henceforth will be version 1.1!
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 14977, GO COM A2)
|
|
|
|
|
|
SHEPPYWARE SNAIL MAIL IN LIMBO By the way, everyone, my snail mail
|
|
"""""""""""""""""""""""""""""" address will be going away soon. Given the
|
|
decrease in shareware payments and software purchases over the last year, I
|
|
can no longer justify keeping my mailbox, so I'm letting my contract lapse.
|
|
It will go away effective the 20th or so of this month.
|
|
|
|
I'll make some sort of arrangement for a replacement address to send
|
|
payments to if anyone feels like paying for anything anymore.
|
|
|
|
This is going to make collecting payments tougher, but since nobody sends
|
|
me money anymore really anyway, I guess it's no big deal.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 14984, GO COM A2)
|
|
|
|
|
|
NEW SHIFTY LIST Just a note: later this week, I'll be releasing the
|
|
""""""""""""""" long-awaited Shifty List 2.0.1 update for registered
|
|
Shifty List owners (people using the unregistered demo are out of luck--
|
|
they can just put up with the bugs :).
|
|
|
|
This will be available as a downloadable update, similar to the WebWorks GS
|
|
update, that will update a copy of your Shifty List 2.0 floppy to 2.0.1;
|
|
you can then install the updated version from there.
|
|
|
|
Fixed bugs include (this is only the half of the stuff I remember offhand):
|
|
|
|
Hitting certain keys in the ScriptBuilder FExt doesn't crash anymore.
|
|
|
|
ScriptBuilder doesn't always ask you to specify where to save a file if you
|
|
close the FExt without saving first; if the file already exists on disk,
|
|
and you tell it to save when it asks, it saves with that name.
|
|
|
|
If you boot with a script that has an application in it, and there's no
|
|
SetStart.Data file, the application will actually get launched; in 2.0,
|
|
this didn't work right.
|
|
|
|
The hopefully final version has been sent to testers, so with luck it'll be
|
|
out in two or three days (Shifty List 2.0.1 has passed testing already; the
|
|
updater program needs a couple days of testing still though).
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 15495, GO COM A2)
|
|
|
|
<<<<< The Shifty List 2.0.1 updater application is now available from the
|
|
""""" SheppyWare web site at
|
|
ftp://ftp.sheppyware.net/pub/apple_iigs/UpdateSL201.shk. Please note that
|
|
this update does *not* affect the demo version, which won't up updated to
|
|
version 2.0.1.
|
|
|
|
Visit the *new* Shifty List web site at
|
|
http://www.sheppyware.net/software/shiftylist_gs/ for more information!
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 15610, GO COM A2)
|
|
|
|
|
|
SHEPPYWARE ONLINE OVERHAUL The SheppyWare Online web site is undergoing
|
|
"""""""""""""""""""""""""" yet another renovation; this will be an
|
|
ongoing process over the coming weeks. It's all being redone with an
|
|
improved look & feel in WebWorks GS. :)
|
|
|
|
Drop by at http://www.sheppyware.net from time to time to have a look!
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 15599, GO COM A2)
|
|
|
|
|
|
|
|
BEST OF THE BEST
|
|
""""""""""""""""
|
|
|
|
|
|
15000 11-AUG 19:34 The Apple II Legacy
|
|
RE: KFest '98 (Re: Msg 3681)
|
|
From: KEN_GAGNE To: ALL
|
|
|
|
Hi All,
|
|
|
|
This is an article I wrote for my local newspaper after returning from my
|
|
first KansasFest a few weeks ago. They ran it on page B1 & B2 on Saturday,
|
|
August 1st, along with a sidebar of addresses & phone numbers for various
|
|
Apple II resources: Alltech, Quality Computers, Byteworks, Seven Hills,
|
|
Juiced.GS, and SSII.
|
|
|
|
Figured I'd share it with y'all, FWIW...
|
|
-----
|
|
|
|
Ken Gagne KansasFest '98 and the Apple II
|
|
|
|
Somewhere in a home office rests a new Pentium computer, purchased for a
|
|
small fortune. Not far away is a G3 Macintosh, equipped with the latest in
|
|
high-performance technology. Yet between the two sits the real workhorse:
|
|
a 20-year-old Apple II, a computer that's beaten the odds and stayed alive,
|
|
thanks to a community of dedicated users.
|
|
|
|
In today's marketplace, computer equipment is often outdated within three
|
|
to six months of purchase. To stay competitive and compatible, constant
|
|
upgrading is necessary. The quests for an effective $1000 computer, or the
|
|
fabled $500 "Internet box," remain elusive. But go to any flea market or
|
|
garage sale and chances are there's an Apple II available for less than the
|
|
cost of a mouse. When properly equipped, the wheelbarrow becomes an
|
|
18-wheeler, suitable to most tasks without any of the glitter of modern
|
|
machines.
|
|
|
|
The Apple II is the brainchild of Steve Wozniak, who designed the original
|
|
machine and founded Apple in his garage in 1977. Various models have
|
|
existed, from the IIe to the IIc to the II+. In 1986, the IIgs was
|
|
introduced, a 16-bit machine that could run the software of its 8-bit
|
|
brethren, but also its own league of new software.
|
|
|
|
Despite competition from other early computers, such as the Atari, Amiga,
|
|
and Commodore, the Apple II had a strong presence. "It got into the
|
|
business place with a piece of software called VisiCalc, the first
|
|
spreadsheet program," recalls Ron Dagenais. Dagenais, who operates
|
|
Computer Systems & Software in Searstown, has been an authorized Apple
|
|
dealer since he opened the store in 1979. "And then there was payroll and
|
|
inventory software. Also, schools standardized on the Apple II. The
|
|
computer was, and still is, adequate for grades K-4." Even today, it is
|
|
often used to establish a cheap network: rather than ask for a $2000
|
|
computer from administration, teachers can find Apple II's for as little as
|
|
$20.
|
|
|
|
In 1993, Apple Inc. stopped manufacturing the computers, favoring the
|
|
Macintosh, an entirely different system not compatible with the II. Yet
|
|
the lack of official support has not stopped people from using it.
|
|
|
|
Whereas once the Apple II was heavily supported by user groups - people in
|
|
a town banding together to share problems and solutions - most groups today
|
|
have absorbed their Apple II support into the Macintosh, essentially
|
|
eliminating the former. Yet those few user groups still knowledgeable
|
|
about the supposedly-obsolete machine offer free technical support and huge
|
|
libraries of free software.
|
|
|
|
The disappearance of such groups has not killed the community of Apple
|
|
users, but forced them to relocate; like many modern organizations, they
|
|
have banded together online. Be it on the Internet or a commercial service
|
|
such as Delphi, not a day goes by when a problem isn't solved, a glitch
|
|
corrected, a new user introduced to the basics, or a new piece of software
|
|
is released. Apple II users are reaching out on a global scale,
|
|
strengthening the few of them left with whatever cooperation possible.
|
|
|
|
Last week, Avila College in Kansas City became the site of a computer expo
|
|
dedicated to the Apple II. KansasFest began in 1989 as A2-Central
|
|
Developer Conference, but the programming focus has since lessened. This
|
|
year, 50 people from as far away as Hawaii, Australia, and the Netherlands,
|
|
ranging in age from nineteen to ninety, came to see product demonstrations,
|
|
give sessions on obscure ways to use the Apple, and enjoy the company of a
|
|
small but strong community.
|
|
|
|
Several programs were unveiled at KansasFest, creating new uses and filling
|
|
needs. Among them was Eric Shepherd's WebWorks GS, a HyperText Markup
|
|
Language (HTML) editor, making the creation of web pages easy. The Byte
|
|
Works presented GSoft Basic, a IIgs-specific form of the Basic programming
|
|
language. Also released were updates to Marinetti, a tool for connecting
|
|
to the Internet using the SLIP/PPP protocol; Spectrum, a potent
|
|
telecommunications program; and GraphicWriter III, a desktop publishing
|
|
program.
|
|
|
|
This year's KansasFest included a HackFest, a competition to see who could
|
|
write the "coolest" program, from scratch in 12 hours. I entered using the
|
|
new GSoft Basic as my language. When I hit a snag, Mike Westerfield,
|
|
author of the program, was on-hand to show me the ropes and correct bugs -
|
|
both mine and his, in the language itself - as needed.
|
|
|
|
The unlikely equivalent in the IBM world would be showing Bill Gates a
|
|
Windows 98 bug, and having him fix it - on the spot.
|
|
|
|
It's just another example that it's not so much the computer itself which
|
|
is so significant, as it is the community. The people are programmers,
|
|
writers, and users who do what they can to support each other because they
|
|
enjoy doing so.
|
|
|
|
Max Jones, publisher of the Juiced.GS newsletter, commented: "It's
|
|
remarkable to see so many people from so many diverse lifestyles and so
|
|
many parts of the world come together for a common purpose: to celebrate
|
|
the Apple II and the wonderful community that has grown up around it."
|
|
|
|
Other activities included the traditional opening barbeque feast at K.C.
|
|
Masterpiece, a strange tie contest, and a roast, at which a major
|
|
contributor to the Apple II community is honored by having his name dragged
|
|
through the mud, with a few embarrassing stories along the way. This year's
|
|
victim was Tony Diaz, without whom Alltech Electronics would probably not
|
|
support the computer with a variety of essential hardware. Diaz also owns a
|
|
private Apple II museum, which includes many prototypes and other things
|
|
which officially never exist.
|
|
|
|
Many attendees were not using Apple II's, but Macintoshes equipped with
|
|
Bernie II the Rescue, a program which allows virtually all Apple II
|
|
software to be run on a PowerMac. As dedicated as the cult-like following
|
|
of the Mac, which holds only 4% of today's market, is, the Apple II
|
|
following is even more so.
|
|
|
|
From indoor frisbee to the sharing of steak and song, the Apple II is as
|
|
much about the people as it is the computer. Two years ago at KansasFest,
|
|
in the wee hours of the morning, three programmers, from Australia,
|
|
England, and New Jersey, met and found themselves in an Avila dorm room
|
|
talking about the Internet. A year and much collaboration later, they
|
|
released Spectrum Internet Suite, the first and only graphical web browser
|
|
for the IIgs.
|
|
|
|
Although dead to the masses, the Apple II continues to be the computer of
|
|
choice to many. As long as people have fun using it and interacting with
|
|
others of similar interests, it will remain useful while still growing.
|
|
|
|
---------
|
|
This article is copyright (c) 1998 by Ken Gagne. All rights reserved. Not
|
|
to be distributed in a modified form.
|
|
|
|
This and other Apple II material can be found on Ken Gagne's web page at
|
|
http://www.ziplink.net/~kgagne
|
|
|
|
Original Publication: Sentinel & Enterprise, 01-Aug-98
|
|
|
|
Genie: Ken.Gagne (Ken.Gagne@genie.com)
|
|
CIS: 75162,3001 (75162.3001@compuserve.com)
|
|
Delphi: Ken_Gagne (Ken_Gagne@delphi.com)
|
|
Internet: kgagne@ziplink.net
|
|
|
|
|
|
|
|
|
|
[EOA]
|
|
[A2P]------------------------------
|
|
A2Pro_DUCTIVITY |
|
|
-----------------------------------
|
|
Checking out A2PRO on Delphi
|
|
""""""""""""""""""""""""""""
|
|
by Ryan M. Suenaga, B.A., M.S.W., L.S.W.
|
|
[thelamp@delphi.com]
|
|
|
|
|
|
NINJAFORCE ASSEMBLER VS. MERLIN I was just wondering, aside from the fact
|
|
""""""""""""""""""""""""""""""" that you have to pay for Merlin and your
|
|
assembler is free, why would someone like me want to change from Merlin
|
|
which is a pretty damn powerful assembler, to yours?
|
|
|
|
I'm not having a dig, I'm just interested why you went to so much trouble
|
|
to basically emulate Merlin?
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 1980, GO COM A2)
|
|
|
|
>>>>> I released NF Asm basically to have a backup on the Internet :) and
|
|
""""" thought that nobody needs assemblers anyway nowadays. I might be
|
|
wrong about that, but I sure did not want to decrease ORCA/M sales, or
|
|
Merlin 16+.
|
|
|
|
You're right, NF Assembler can't (for example) handle file chunks like
|
|
ORCA/M. I don't know what Merlin can do, but I guess it has similar
|
|
capabilities (to Orca).
|
|
|
|
NF Assembler is close to Merlin (as I found out years later), but the
|
|
editor in Merlin is just a pain. Also, I don't know if it has some sort of
|
|
debugger as NF Asm?
|
|
|
|
Many greetings,
|
|
|
|
Jesse Blue / Ninjaforce
|
|
|
|
Check out our upcoming Apple IIGS game at:
|
|
http://www.ninjaforce.home.ml.org
|
|
(JESSEBLUE, 1986, GO COM A2)
|
|
|
|
>>>>> OOPS! Sorry Richard,
|
|
"""""
|
|
I didn't seem to have read your post correctly. I wrote NF Asm a long time
|
|
ago on an Apple IIe. I did not have an assembler at all, then. Later I
|
|
moved it to the GS and upgraded it for 16bit. THEN I bought Orca/M and was
|
|
totally confused (and scared off by its "speed" (sorry Mike W.)) so I was
|
|
continuing work on NF Asm. Then I had a chance to see Merlin 16, and didn't
|
|
like that, too. That's how it came.
|
|
|
|
Jesse Blue / Ninjaforce
|
|
|
|
Check out our upcoming Apple IIGS game at:
|
|
http://www.ninjaforce.home.ml.org
|
|
(JESSEBLUE, 1987, GO COM A2)
|
|
|
|
<<<<< Interesting. Obviously it makes more sense to me that you wrote
|
|
""""" without knowing about Merlin. :)
|
|
|
|
Tell us about the debugger in NF Asm, and does the link spit out OMF files
|
|
etc.?
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 1988, GO COM A2)
|
|
|
|
>>>>> The NF Assembler can put out OMF files in one step - i.e. no object
|
|
""""" files. They can only have one segment, though, so it is limiting.
|
|
Also, being p8 based, testing OMF style output isn't so convenient. For
|
|
real GS/OS based programming, Merlin or ORCA/M are much more suitable.
|
|
(KWS, 1989, GO COM A2)
|
|
|
|
|
|
DO YOU REMEMBER YOUR SWEET 16? Sweet 16 is an interpreted 16-bit code
|
|
"""""""""""""""""""""""""""""" environment for the 6502. The source code
|
|
for Sweet 16 is floating around several FTP sites and I'm sure its
|
|
distribution use is included with the source. My first assembler was the
|
|
S-C assembler and I know the source for sweet 16 was included with that,
|
|
but I don't recall what Apple's distribution policy was.
|
|
|
|
In terms of speed, it is significant slower than hand tweaked 16-bit code,
|
|
but you can write an incredible amount of 16-bit code in very little memory
|
|
space.
|
|
|
|
Geoff
|
|
(SISGEOFF, 1992, GO COM A2)
|
|
|
|
|
|
GS(DE)BUG I figure its about time we tried to sort out the latest version
|
|
""""""""" of the various debugging tools available, with so few
|
|
developers left, we pretty much could do with the best that are available.
|
|
|
|
For starters, I think 1.6 of GSBug came with the System 6 CD. What are
|
|
other people using?
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 2001, GO COM A2)
|
|
|
|
>>>>> Where can I download GSBug? I never used it.
|
|
"""""
|
|
Blatant plug: I use the debugger that belongs to the NF Assembler. It is a
|
|
CDA that allows you to browse through your labels, view them, disassemble
|
|
memory with the labels displayed etc. Not very good, but useful.
|
|
|
|
Any other debuggers out there? CDAs?
|
|
|
|
Jesse Blue / Ninjaforce
|
|
|
|
Check out our upcoming Apple IIGS game at:
|
|
http://www.ninjaforce.home.ml.org
|
|
(JESSEBLUE, 2002, GO COM A2)
|
|
|
|
>>>>> Try: {<ftp://ftp.apple.com/dts/aii/tools/gsbug/gsbug-1-6-shk.bsc>
|
|
""""" ftp://ftp.apple.com/dts/aii/tools/gsbug/gsbug-1-6-shk.bsc}
|
|
(SISGEOFF, 2003, GO COM A2)
|
|
|
|
>>>>> I think someone already pointed out the Apple FTP site. Of course,
|
|
""""" once you download it you need to figure out what it does. For both
|
|
disks _and_ documentation, give us a buzz.
|
|
|
|
GSBug (with documentation) in included in these Byte Works products:
|
|
|
|
GS-04 ORCA/M Assembler $75.00
|
|
APDA-15 Apple II GSBug and Debugging Tools Ref. $30.00
|
|
|
|
For a complete price list by e-mail, send me a note. For a printed catalog
|
|
by snail-mail, include your snail-mail address.
|
|
|
|
Mike Westerfield
|
|
Byte Works, Inc.
|
|
(BYTEWORKS, 2005, GO COM A2)
|
|
|
|
>>>>> Yeah, 1.6 is the last version of GSBug (that I know of). Too bad
|
|
""""" it's still got some problems, but it's still a pretty good tool.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2006, GO COM A2)
|
|
|
|
>>>>> That is the one I am using, and that one version also comes with
|
|
""""" ORCA, but then you would not know that of course... :)
|
|
|
|
Mike would presumably be the arbiter of which is the latest version.
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 2008, GO COM A2)
|
|
|
|
>>>>> I'm using GSBug v1.6b21.
|
|
"""""
|
|
Jeff Blakeney - Dean of A2U in A2Pro on Delphi
|
|
sent via COG v2.5, Spectrum v2.1 and a Linux box to here.
|
|
(JBLAKENEY, 2010, GO COM A2)
|
|
|
|
<<<<< You've never used GSBug? Oh my, will you be in for a shock.
|
|
"""""
|
|
GSBug allows you to step and trace your program in real (if somewhat slow)
|
|
time. You can set break points, monitor locations, display and modify
|
|
memory. You can even trace to disk and view it again later. There's heaps
|
|
of stuff in there.
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 2007, GO COM A2)
|
|
|
|
>>>>> It is indeed better than a CDA, but that control sequence does not
|
|
""""" work with Bernie or GUS, as that is the sequence you use to quit
|
|
both of them...
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 2009, GO COM A2)
|
|
|
|
>>>>> Actually, the problem is that the keyboard combination
|
|
""""" Command-Option-ESC forces any Mac application to quit, and that
|
|
conflicts with the GSBug entry keys.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2011, GO COM A2)
|
|
|
|
>>>>> There is a developer version of Bernie available that has a menu
|
|
""""" item that will send the Command-Option-Control-Escape sequence to
|
|
the emulated GS. It also has a couple memory monitor tools in it as well,
|
|
made possible by the fact that the GS is emulated. The reason these tools
|
|
are not included in the standard Bernie distribution is that it slows down
|
|
Bernie.
|
|
|
|
Dave Miller
|
|
(JUSTDAVE, 2019, GO COM A2)
|
|
|
|
>>>>> I take it Henrik and the Bernie Boys know about this one? If not,
|
|
""""" I think we ought to woof up the right tree :)
|
|
|
|
-
|
|
Ryan M. Suenaga, M.S.W., L.S.W. - rsuenaga@apple2.org
|
|
Editor and Publisher, _The Lamp!_, published monthly on Delphi
|
|
"Teaching the Apple II user how to fish since 1982"
|
|
Posted by PTMM v2.5 - The integrated information solution
|
|
(RSUENAGA, 2013, GO COM A2)
|
|
|
|
>>>>> A cool side effect of GSBug is it allows entry to the CDA menu when
|
|
""""" a program has attempted to lock it out. It also interfaces nicely
|
|
with Nifty List.
|
|
|
|
- Tony
|
|
(TONYW1, 2014, GO COM A2)
|
|
|
|
<<<<< You know, funny thing about the "n" command in GSBug to enter Nifty
|
|
""""" List. I was after a way to call Pixie from GSBug, because I use it
|
|
instead of Nifty List.
|
|
|
|
Well, next thing you know, GSBug has a command to call Nifty List, but to
|
|
explain it away, Dave calls it a "N"eat hook or something. It was supposed
|
|
to stand for Nifty List, but "N"eat hook sounded more like a generic thing
|
|
for other debuggers.
|
|
|
|
A command like "D" or "C" for CDA would make more sense, but then Nifty
|
|
List doesn't start with "D" or "C". :)
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 2015, GO COM A2)
|
|
|
|
>>>>> Henrik knows. It's on the Sheppy List of 25 -- my list of Bernie
|
|
""""" requests that I mailed him a few days ago. :)
|
|
|
|
I promised him that if he gets 17 of those 25 items fixed, I'll make him a
|
|
custom version of Wolf 3D that replaces the dogs with St. Bernards that
|
|
come up and schmooze you to death. :)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2022, GO COM A2)
|
|
|
|
|
|
BABELFISHING VIA C? Babelfish translators require several code resources
|
|
""""""""""""""""""" containing functions that handle various things.
|
|
|
|
ORCA/C doesn't seem to be capable of doing this (or if it can, I haven't
|
|
found the trick) without a special pragma (cdev, for example).
|
|
|
|
Is there any way to make ORCA not care that main() doesn't exist? :)
|
|
|
|
I tried telling ORCA that these files are CDEVs, but the resulting code
|
|
just crashes. :)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2012, GO COM A2)
|
|
|
|
>>>>> main() is called by the code in the ".root" file, so #pragma noroot
|
|
""""" might work (or just delete the ".root" file before you link).
|
|
You'd have to be careful to do all the setup that the ".root" file normally
|
|
does.
|
|
|
|
--
|
|
Steve Reeves
|
|
(REEVESST, 2017, GO COM A2)
|
|
|
|
>>>>> There are several issues in trying to set up a custom entry
|
|
""""" mechanism for ORCA/C.
|
|
|
|
Entry is always at the first segment the linker sees. That's what .root is
|
|
really all about. If you get rid of it, you must be very careful to make
|
|
sure the first subroutine that is linked is really your entry point.
|
|
|
|
There is nothing sacred about main()--if you get rid of the .root segment,
|
|
which generated code to set up the ORCA environment and call main(), then
|
|
nothing really expects main() to exist. It's the code in .root that is
|
|
really looking for main(). Delete it or replace it and the issue vanishes.
|
|
|
|
There is another problem, though--that entry code is needed! It sets up the
|
|
environment ORCA/C programs expect when they are running. It does thing
|
|
like initialize the ORCA/C memory manager; sets up the registers properly
|
|
(all 16 bit, D points to the top of the stack area, B points to the segment
|
|
containing global variables); initializes various variables for exit()
|
|
returns, argc, and so forth; and initializes several global variables, like
|
|
errno. If you get rid of this preamble code, you _must_ replace it with
|
|
something else that does the job for you. That's what all the specialized
|
|
pragmas are for: they create .root segments that are appropriate to the
|
|
environment they are designed for.
|
|
|
|
To be absolutely safe, you should get the runtime library source and
|
|
disassemble the .root segment. Create your own preamble code, and why not,
|
|
name the object code with a .root extension and drop it in with your object
|
|
files.
|
|
|
|
For this particular case, though, you may be very close to the requirements
|
|
for an NBA or XCMD. Check those environments out. If you are, you can just
|
|
use one of those.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2018, GO COM A2)
|
|
|
|
|
|
>>>>> Sheppy, be sure and check out the "System Functions" section in the
|
|
""""" reference manual, too. This outlines the various subroutines used
|
|
by the startup code, telling what each does. It will give you a head start
|
|
on writing a new startup routine, if that's what you need to do.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2023, GO COM A2)
|
|
|
|
>>>>> I seem to remember doing something like this a while back. If I
|
|
""""" remember correctly, I called SysEnvironmentInit (not sure on the
|
|
spelling) to make sure everything was setup the way C likes it.
|
|
|
|
- Tony
|
|
(TONYW1, 2025, GO COM A2)
|
|
|
|
<<<<< Yeah, that might do it.
|
|
"""""
|
|
Interestingly, the original code was for APW C, which worked fine. I'm
|
|
half-tempted to dig up my copy and just build this thing using that. Oddly,
|
|
the compiled program size is 28 blocks smaller with APW C (ORCA/C builds it
|
|
out to 31 blocks, APW C builds to 3, apparently).
|
|
|
|
Would there be a horrible conflict if I just installed APW C under ORCA?
|
|
Would it cause a problem with ORCA/C? I've never used APW C, so I dunno. :)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2026, GO COM A2)
|
|
|
|
>>>>> APW C should install under ORCA 2.0 just fine.
|
|
"""""
|
|
That difference in block size is due to the fact that you brought in all
|
|
sorts of ORCA/C setup code that you don't need. :) For example, are you
|
|
_really_ using exit() or argv? Do you really need floating point? Do you
|
|
really need malloc() and the other memory management tools? Do you really
|
|
need to initialize stdio? If not, the code size will dwindle rapidly.
|
|
|
|
Also, APW C, like ORCA/C, makes assumptions about registers and direct page
|
|
use. If you create a single subroutine in ORCA/C, compile it with noroot,
|
|
and link the result, you'll get a very short chunk of code--probably 3
|
|
blocks. :) It stands about the same chance of working as the APW C code
|
|
does. But what's it _really_ doing in there with the direct page space (how
|
|
is D set), with static variables (how is B set), and with calls to the
|
|
libraries (did you initialize all the things you need)? It may be a pain to
|
|
set all of these things correctly in ORCA/C, but at least you have all of
|
|
the tools you need to do it. If you don't set these things up, though,
|
|
whether you use ORCA/C or APW C, be sure and let all of us know so we can
|
|
avoid your program!
|
|
|
|
But truly, your chances of working without initialization code are the same
|
|
for ORCA/C and APW C. They both use the same memory model.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2028, GO COM A2)
|
|
|
|
<<<<< Woah! This isn't *my* program. I'm just updating someone else's
|
|
""""" code to fix a minor problem with translating to and from
|
|
HyperStudio sound format. :)
|
|
|
|
I think it's going to be too much work to try to do all the stuff everybody
|
|
says needs to be done to make ORCA/C actually build a viable Babelfish
|
|
translator, and I don't really want to write the code to do the
|
|
floating-point calculations on frequency and the like in assembly (the only
|
|
thing I hate more than doing string manipulation in assembly is doing
|
|
floating-point math in assembly :).
|
|
|
|
I'm thinking I maybe better hand this project off to someone with more time
|
|
to figure out the tricks needed to make C happy. :)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2030, GO COM A2)
|
|
|
|
>>>>> Nice try, but I'm not letting you off the hook that easily!
|
|
"""""
|
|
Just to keep the discussion clear for the lurkers, this is not an ORCA/C
|
|
problem, it's an ORCA/C solution. You _must_ to certain initialization for
|
|
_any_ compiler before it is safe to execute its code. The difference with
|
|
ORCA/C is that I can tell you how to do it, and even if I didn't, the
|
|
documentation and libraries you need to figure it out for yourself are
|
|
available. That is not true for APW C or any other non-ORCA Apple IIGS
|
|
compiler.
|
|
|
|
I really haven't spent much time looking at Babelfish. What are the
|
|
requirements for a Babelfish translator's interface? Specifically, how are
|
|
the registers set on entry to the translator, and how are parameters
|
|
passed? One of the existing pragmas might actually do the job. If not, and
|
|
if the requirements are not too outrageous, I could add a new pragma so you
|
|
can safely write translators.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2034, GO COM A2)
|
|
|
|
<<<<< I understand all that... my entire point is that I don't have time
|
|
""""" to figure it all out myself right now; I'd expected this to be a 30
|
|
minute fix-up job, and didn't realize it would involve writing custom C
|
|
initialization code. :)
|
|
|
|
Babelfish is accessed with all parameters on the stack (both inputs and
|
|
outputs). There are multiple code resources, each with a different set of
|
|
stack-passed parameters. I don't have the Babelfish docs handy at the
|
|
moment so I can't tell you exactly what each code resource requires.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2036, GO COM A2)
|
|
|
|
>>>>> Not so... All communication between applications and Babelfish and
|
|
""""" a translator and Babelfish are done through IPC calls...
|
|
|
|
So there should be no problem using any language you choose.
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 2039, GO COM A2)
|
|
|
|
<<<<< Ewen, I'm referring to the interface between Babelfish and a
|
|
""""" translator; I know that Babelfish itself is accessed via IPC, and
|
|
that it does send IPC requests to the translator, but Babelfish still calls
|
|
these code resources at times as well.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2043, GO COM A2)
|
|
|
|
>>>>> So how does the application start? Does Babelfish load the
|
|
""""" translator as if it is a standard application? Is there an initial
|
|
call that starts the program running? If so, how does the program know when
|
|
it is time to quit? If not, when is the program supposed to initialize
|
|
itself?
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2041, GO COM A2)
|
|
|
|
>>>>> Well, sort of.
|
|
"""""
|
|
Babelfish calls the translator at load time, at load point. It is there
|
|
that the translator installs an IPC request handler and returns to caller.
|
|
|
|
All translation functions are then handled through IPC.
|
|
|
|
So what you need, is a way to call _AcceptRequests at the beginning of the
|
|
file, and a way to build IPC request procedures.
|
|
|
|
Regards,
|
|
Richard
|
|
(RICHARD_B, 2045, GO COM A2)
|
|
|
|
<<<<< But the Standard File filter procedure is always called directly,
|
|
""""" and that's the first thing that crashes as I'm building things
|
|
right now. :)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2046, GO COM A2)
|
|
|
|
>>>>> I did not write Babelfish, so am going from memory from the docs...
|
|
"""""
|
|
Babelfish is a PIF. When an application wants to Import or Export
|
|
something, Babelfish is called by an appropriate IPC call, then (quoting
|
|
from the docs):
|
|
|
|
"Babelfish loads a translator from disk, assigns a user ID, and calls
|
|
Resource Startup at BFImportThis or BFExportThis time (before TrInit and
|
|
TrStartUp are called by Babelfish). This makes the translators independent
|
|
resource applications, which they remain throughout the Read/Write life
|
|
cycle. When the Read/Write process is complete (or terminated due to an
|
|
error), Babelfish calls Resource Shutdown on the translator and completely
|
|
purges the translator from memory."
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 2048, GO COM A2)
|
|
|
|
>>>>> Ewen kindly sent me the Babelfish documentation, and I looked it
|
|
""""" over this morning.
|
|
|
|
The short version: It's worse than I thought.
|
|
|
|
The slightly longer version: There will be no ORCA/C pragma to create a
|
|
Babelfish translator from C. In fact, it's not even _possible_ to create an
|
|
ORCA/C pragma to allow you to create a Babelfish translator from C.
|
|
|
|
The situation is pretty grim, actually. Babelfish translators are not a
|
|
single program, they are a collection of programs and resources. The code
|
|
portion of the translator is broken up into multiple individual programs,
|
|
each of which resides in a separate executable chunk. Since there is no
|
|
loader for loading a program split into multiple resources, each of these
|
|
individual pieces is, and must remain, a completely separate program from
|
|
each of the other pieces of the translator. They cannot share subroutines
|
|
or data, at least not the way a program does, which is to simply make the
|
|
subroutine or data global and allow all pieces of the program to make use
|
|
of them.
|
|
|
|
This means that writing a translator involves writing several individual
|
|
programs, one for each of the Babelfish calls. These programs are then
|
|
combined with separate resources using a program like Rez. Unless you do it
|
|
on your own through IPC calls or some other mechanism, these chunks of
|
|
program code cannot share data or subroutines.
|
|
|
|
The actual calling mechanism is about the only glimmer of light. It's
|
|
essentially the same one used by a subroutine, which means you can write
|
|
the individual programs as a C function, and simply declare the needed
|
|
parameters. Create your program using the noroot pragma, make sure the
|
|
first subroutine in the source file is the one Babelfish is supposed to
|
|
call, don't use partial compiles, and make sure the object file produced is
|
|
the first one specified in the link command. If you do all of that, the
|
|
call itself will work. (Sheppy: The same is _not_ true of APW C, which uses
|
|
a different calling mechanism.)
|
|
|
|
Make sure you use the databank pragma around this entry function. That
|
|
tells C to set up the data bank, and allows you to use global variables.
|
|
This step is also required by some libraries, even if you are not using
|
|
global variables. (But remember: the variables are only global to this
|
|
specific piece of the translator. There is no way to make a variable global
|
|
in multiple pieces of the translator!)
|
|
|
|
If your program links without bringing in libraries, that's all you need to
|
|
do. If you need to use libraries, you may need to take additional steps to
|
|
set them up. You will probably have to do some of this from assembly
|
|
language, since you don't have a direct page area, and some of the routines
|
|
(notably SANE) need one. As a minimum, examine the section "System
|
|
Functions" in Chapter 19 of the ORCA/C manual. You should also keep a copy
|
|
of the sublib source handy so you can look at the requirements of
|
|
individual library routines you may see linked into your program. Remember:
|
|
even if _you_ don't call a library through a .h header file, C may call one
|
|
for something like converting a float to an integer. You must initialize
|
|
the environment for all of the libraries you see linked into your program,
|
|
not just for the ones you know you called!
|
|
|
|
At this point, it's reasonable to ask why I can't create something that
|
|
would initialize the things you need for you. The answer is that it would
|
|
be possible, but I don't think it's reasonable. It would take a great deal
|
|
of my time to create a separate pragma for each and every Babelfish call,
|
|
and that is what would be required. Considering the number of calls, the
|
|
amount of work that it is going to take anyone to write a translator, and
|
|
the number of people who would do it even if I could make it easy (which I
|
|
can't--just easier), I don't think it's a good use of my time.
|
|
|
|
If you're _seriously_ interested in writing a translator in C, post that
|
|
fact here. So far I'm only aware of two people. If I've drastically
|
|
underestimated the number of people who would use this feature, I'll
|
|
reconsider whether I should spend the time needed to create all those
|
|
pragmas.
|
|
|
|
Or maybe the Babelfish interface could simply be redesigned so it didn't,
|
|
ahem, so closely resemble its namesake.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2092, GO COM A2)
|
|
|
|
>>>>> Bill Tudor has sent me the message below. I have the source file
|
|
""""" for 'Debug' and can send it to anyone who wants it if the
|
|
information he gives is not enough.
|
|
|
|
I would guess that we are stuck with Babelfish as it is now, but if
|
|
translators can be written freely in Orca/C, then at least further
|
|
development of new translators is not held up.
|
|
|
|
-------------------------------------------------------------------------
|
|
Ewen,
|
|
|
|
Yes, there are/were a number of translators written with Orca/C. The best
|
|
one to look at is the Debug translator because it is essentially a "shell"
|
|
of a translator (it does nothing).
|
|
|
|
Maybe a quick glance of the technical documentation leaves you with the
|
|
wrong impression.
|
|
|
|
Below is a short discussion from memory.
|
|
|
|
NOTE: My memory is not perfect, so I may get some of this wrong!
|
|
|
|
There are no #pragma's or special techniques/mixed assembly or anything
|
|
like that needed. Most of the communication between babelfish and the
|
|
translator is through the System 6 IPC mechanism, not through any function
|
|
calls. If you can write an INIT, Finder Extension, Code Resource, etc, you
|
|
can write a translator. Here's what I remember:
|
|
|
|
Basically, a babelfish translator is a resource file with 4 Code Resources
|
|
in it. There are a number of other required and optional resources as well,
|
|
but let's talk about the 4 code resources. The rez source would have lines
|
|
like this:
|
|
|
|
read rCodeResource(TrInit,locked,convert) "Init.out";
|
|
read rCodeResource(TrImportOptions,locked,convert) "Import.out";
|
|
read rCodeResource(TrExportOptions,locked,convert) "Export.out";
|
|
read rCodeResource(TrFilter,locked,convert) "Filter.out";
|
|
|
|
Basically, it is reading in the code resources from compiled C Code (or any
|
|
language) which was linked to the files xxxx.out. Prototypes for the 4
|
|
functions that make up these resources look something like this:
|
|
|
|
TrInit Code Resource:
|
|
pascal void init();
|
|
|
|
TrImportOptions Code Resource:
|
|
pascal word DebugFilter(DirEntryRecPtrGS entryPtr);
|
|
|
|
TrExportOptions Code Resource:
|
|
pascal void importOptions(xferRecPtr ptr);
|
|
|
|
TrFilter Code Resource:
|
|
pascal void exportOptions(xferRecPtr ptr);
|
|
|
|
Of course, you can name the functions anything you like, just link things
|
|
so that the object code contains this function as the entry point.
|
|
Typically, these functions do not need global variables or do very much.
|
|
The TrInit function must install a IIgs IPC Request Procedure, just like a
|
|
system 6 Finder extension would do. Here is the TrInit code from the Debug
|
|
Translator:
|
|
|
|
* Function: init()
|
|
* --------
|
|
* + Setup the accept requests routine.
|
|
*
|
|
* Parameters: <none>
|
|
* Returns: <none>
|
|
*
|
|
* Created: 6/16/93 12:40:49 AM
|
|
* ---------------------------------------------
|
|
*/
|
|
pascal unsigned int myRequestProc();
|
|
|
|
pascal void init() {
|
|
unsigned int userID;
|
|
userID = MMStartUp();
|
|
Int2Hex(userID,&reqName[27],4);
|
|
AcceptRequests(reqName,userID, myRequestProc);
|
|
}
|
|
|
|
Note that all it does is setup the request procedure. That is where all the
|
|
work gets done. Writing one of those in C is easy enough as well, except
|
|
that you have to do the DBR save/restore things, etc.
|
|
|
|
* Function: myRequestProc(request, dataIn, dataOut)
|
|
* --------
|
|
* + My Accept Requests procedure.
|
|
*
|
|
* Parameters: request : (uint) request code
|
|
* dataIn : (long) input data ptr
|
|
* dataOut : (long) output data ptr
|
|
*
|
|
* Returns: (uint) : result (True is handled)
|
|
*
|
|
* Created: 6/16/93 12:42:28 AM
|
|
* ---------------------------------------------
|
|
*/
|
|
|
|
pascal unsigned int myRequestProc(request, dataIn, dataOut)
|
|
unsigned int request;
|
|
xferRecHndl dataIn;
|
|
TrOutBufferPtr dataOut;
|
|
{
|
|
unsigned int oldDBR;
|
|
unsigned int result;
|
|
|
|
result = 0;
|
|
oldDBR = SaveDB();
|
|
|
|
switch(request) {
|
|
case srqGoAway:
|
|
((srqGoAwayOutPtr)dataOut)->resultID = MMStartUp();
|
|
result = 1;
|
|
break;
|
|
case TrStartUp:
|
|
if (AlertWindow(awResource+awButtonLayout,0L,(long)
|
|
startupAlert)) {
|
|
(*dataIn)->Status = bfContinue;
|
|
dataOut->TRresult = bfNoErr;
|
|
}
|
|
else {
|
|
(*dataIn)->Status = bfAbortErr;
|
|
dataOut->TRresult = 0x0120;
|
|
}
|
|
result = 1;
|
|
break;
|
|
|
|
. etc etc
|
|
|
|
RestoreDB(oldDBR);
|
|
return(result ? 0x8000:0);
|
|
|
|
See the rest of the enclosed Debug translator for all the details. Although
|
|
I always used Orca/C, I did like using "linkiigs" tool from Apple. I am not
|
|
sure why, however, there may be an issue here regarding what linker options
|
|
are needed to compile the code resource fragment. I always did it like
|
|
this:
|
|
|
|
echo "Compiling DBG.Init.c..."
|
|
compile DBG.Init.c keep=Init.o
|
|
echo "Linking..."
|
|
linkiigs Init.o.= -lib 13:clib -o Init.out
|
|
echo "Done."
|
|
|
|
Notice that the "init.out" is the actual file that is imported in by the
|
|
rez source shown at the beginning of this message. The linkiigs tool was
|
|
freely available - it may have even shipped with Orca/C, I cannot remember.
|
|
|
|
The bottom line - yes, easy to write in C. I personally preferred writing
|
|
them in C. Of the ones I wrote...
|
|
|
|
The following Translators were done in C:
|
|
|
|
AESound
|
|
AsciiFilter
|
|
Debug
|
|
HSSound
|
|
|
|
The following were in Assembly:
|
|
BinSound
|
|
IIGSFont
|
|
QuickDrawII Picture
|
|
rSound
|
|
|
|
So it was pretty much split down the middle. The Debug Translator is
|
|
enclosed. If you want a "real" example (i.e., a translator that actually
|
|
does something), take a look at the AsciiFilter or AESound ones.
|
|
|
|
Bill
|
|
|
|
|
|
Ewen Wannop - Speccie
|
|
Delivered without using a IIgs by Spectrum & Crock O' Gold 2.5!
|
|
Setup: Bernie ][ the Rescue 1.3 and a PowerMac 8200/120
|
|
http://ourworld.compuserve.com/homepages/ewannop/
|
|
(EWANNOP, 2102, GO COM A2)
|
|
|
|
>>>>> To Ewen, Bill, and anyone else lurking:
|
|
"""""
|
|
What Bill said was true for the BabelFish side, but completely misses the
|
|
point. When a compiler creates code for a computer, it makes certain
|
|
assumptions about registers and the like. Libraries also need to be
|
|
initialized.
|
|
|
|
While _some_ subroutines written in ORCA/C may indeed run without problems
|
|
when called by Babelfish, the only way to be _sure_ that happens is to make
|
|
sure all of the assumptions made by the compiler, and all initialization
|
|
needed by any called libraries, have been taken care of. You sometimes need
|
|
to initialize libraries even if you don't deliberately call them. For
|
|
example, Bill's code dereferences an array. Depending on how big the array
|
|
elements are and how he has set the optimize pragma, that could cause a
|
|
multiply subroutine to be linked into the code. That's just the most
|
|
obvious example.
|
|
|
|
As I tried to point out, there are several areas where some kind of
|
|
initialization is required:
|
|
|
|
1. Registers. Long (16 bit) registers are required on entry. They are
|
|
probably set that way. The data bank must point to the bank containing
|
|
global data. Even if your program doesn't use global variables, some of the
|
|
libraries do. (No, there is no way to avoid that--in C anyway. errno by
|
|
itself forces global variables on us, and errno is pervasive in C.) That's
|
|
what the databank pragma is for. While there are cases where you can get by
|
|
without using the databank pragma, I would suggest that it's fair to say it
|
|
should be required.
|
|
|
|
2. Library initialization. You've got to check the libraries and make sure
|
|
that any that require initialization have been initialized. I pointed out
|
|
the part of the ORCA/C manual that deals with this topic. If you don't read
|
|
it before trying to write a code resource for Babelfish, and either
|
|
|
|
a. carefully initialize the ORCA/C environment fully, or
|
|
b. verify carefully that no libraries that require initialization are
|
|
linked into your program
|
|
|
|
then you are doing yourself and the people who use your program a grave
|
|
disservice. Simply assuming that because something worked one time it will
|
|
always work is foolish. As one example: Say you do something innocent like
|
|
use malloc() or fopen(). Those will set an error code in errno. If you have
|
|
not set the data bank properly, the actual bank where the errno value is
|
|
set is, effectively, random. It may work--in fact, will probably work--many
|
|
times, wiping out a word in memory that is not critical. But someday it's
|
|
going to do damage. That damage could have been avoided by properly
|
|
initializing the compiler's environment or verifying that the
|
|
initialization was not needed.
|
|
|
|
ORCA/C _can_ be used to safely write Babelfish translators. It's not
|
|
trivial, but it is possible. What Bill has recommended, though, is
|
|
absolutely, positively NOT safe.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2107, GO COM A2)
|
|
|
|
|
|
NEW HO-REZ-ONS? I couldn't find any subject threads about the Rez
|
|
""""""""""""""" resource compiler, so I figured I'd start one.
|
|
|
|
Anyway, the "Types.rez" file I have is dated 1992 and doesn't include any
|
|
of the System 6.0.1 stuff. Was a more recent one ever released? Would
|
|
this now fall under the purview of A2Pro, along with the assignment of file
|
|
types, etc.?
|
|
|
|
--
|
|
Steve Reeves
|
|
(REEVESST, 2024, GO COM A2)
|
|
|
|
>>>>> I don't think there _were_ any changes in types.rez. If Apple made
|
|
""""" any, I missed them.
|
|
|
|
System 6.0.1 did result in a lot of changes to interface and header files.
|
|
You can get the latest when you upgrade your ORCA language to the most
|
|
recent version. Disk upgrades are $7 per language (you need to own 2.x);
|
|
upgrades from pre-2.x systems are more because you get a manual. You can
|
|
also get one disk upgrade free with any product you order, so get GSoft
|
|
BASIC and get the latest disk upgrade for a 2.x ORCA language for free.
|
|
|
|
If you are not using an ORCA language, you have two options. First, you
|
|
could buy one. :) Second, you could get Apple's interfaces:
|
|
|
|
APDA-37 APW & MPW Interfaces for System 6.0.1 $20
|
|
|
|
This is the official Apple interface release that all others (even ours)
|
|
are built from.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2029, GO COM A2)
|
|
|
|
>>>>> Apple released an updated types.rez file when System 6.0.1 shipped;
|
|
""""" you need to buy something that comes with a more recent types.rez
|
|
file :)
|
|
|
|
Mike'll probably have suggestions. :)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2027, GO COM A2)
|
|
|
|
<<<<< I did! The Types.rez files that came with ORCA/C 2.1.0 and ORCA/M
|
|
""""" 2.1.0 (both circa 1996) are bit-for-bit identical to the one in the
|
|
System 6.0 With ORCA Interfaces package (circa 1992).
|
|
|
|
Its no big deal to add the few new things for System 6.0.1, but it'd be
|
|
nice if we were all on the same page with respect to flag names and such.
|
|
|
|
--
|
|
Steve Reeves
|
|
(REEVESST, 2032, GO COM A2)
|
|
|
|
>>>>> I ship the interfaces Apple supplied. Maybe I should fill in gaps
|
|
""""" they leave, especially at this late date, but I generally only do
|
|
that for the interfaces like ORCA/C and ORCA/Pascal, where I actually write
|
|
them. Unless I made a mistake, types.rez is what Apple supplied.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2035, GO COM A2)
|
|
|
|
<<<<< Here is the stuff that Apple left out of the "Types.rez" file. Let
|
|
""""" me know if I missed anything.
|
|
|
|
There is one modification that must be made to Types.rez. Add this line to
|
|
the end of the editLineControl portion of the rControlTemplate definition
|
|
(after line 803):
|
|
_mybase_ integer; /* keyMask - 6.0.1 */
|
|
|
|
The rest of these are equates you can put in another file to keep Types.rez
|
|
small and as close to the original as possible:
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Flag equates for StatText controls
|
|
/*-------------------------------------------------------*/
|
|
#define fSquishText $0010
|
|
#define fTextCanDim $0008
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Flag equates for icon buttons
|
|
/*-------------------------------------------------------*/
|
|
#define fSelectableIcon $0010
|
|
#define fNoIconBorder $0004
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Flag equates for scroll bar controls
|
|
/*-------------------------------------------------------*/
|
|
#define horScroll $0010
|
|
#define rightFlag $0008
|
|
#define leftFlag $0004
|
|
#define downFlag $0002
|
|
#define upFlag $0001
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Flag equates for size box controls
|
|
/*-------------------------------------------------------*/
|
|
#define fCallWindowMgr $0001
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Password characters for LineEdit controls
|
|
/*-------------------------------------------------------*/
|
|
#define defaultPwChar $0000
|
|
#define notForPassword $FFFF
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Key mask bits for LineEdit controls
|
|
/*-------------------------------------------------------*/
|
|
#define specialEditingKey $8000
|
|
#define digitKey $4000
|
|
#define hexDigitKey $2000
|
|
#define letterKey $1000
|
|
#define nonControlKey $0800
|
|
#define anyKey $0001
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* List types for list controls
|
|
/*-------------------------------------------------------*/
|
|
#define fListScrollBar $0004
|
|
#define fListSelect $0002
|
|
#define fListString $0001
|
|
|
|
/*-------------------------------------------------------*/
|
|
/* Key modifier flags for keystroke equivalents
|
|
/*-------------------------------------------------------*/
|
|
#define keyPad $2000
|
|
#define controlKey $1000
|
|
#define optionKey $0800
|
|
#define capsLock $0400
|
|
#define shiftKey $0200
|
|
#define appleKey $0100
|
|
#define btn0State $0080
|
|
#define btn1State $0040
|
|
|
|
|
|
--
|
|
Steve Reeves
|
|
(REEVESST, 2047, GO COM A2)
|
|
|
|
|
|
BYTEWORKS ON THE WEB We've opened the doors on our new Byte Works web
|
|
"""""""""""""""""""" site. While we're still adding new information and
|
|
haven't finished all of the cosmetic niceties, it's still the most complete
|
|
technical description of our product line ever published in one place.
|
|
|
|
Check it out at
|
|
|
|
www.hypermall.com/byteworks
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2053, GO COM A2)
|
|
|
|
|
|
PAINTWORKS ANIMATION SPECS? Nathan Mates created his own filetype note
|
|
""""""""""""""""""""""""""" for Paintworks animations, since there wasn't
|
|
one available. It may be on my hard drive, but I can't find it at the
|
|
moment. If someone else has it, then I'm sure it can be shared. (I don't
|
|
remember any restrictive codicils on it). Otherwise, it has vanished in his
|
|
grand suttee reformat.
|
|
(GARETH, 2091, GO COM A2)
|
|
|
|
>>>>> There is no x,y coordinates in a paintworks anim.
|
|
""""" PW anims are built up like this (I have to look it up as well):
|
|
|
|
$8000 bytes of screen data
|
|
2 bytes: animation speed
|
|
rest of file consists of pairs of data:
|
|
2 bytes: pointer in graphic screen $E12000+ptr
|
|
2 bytes: data to be written at pointer location.
|
|
|
|
An Anim routine would then work like this:
|
|
|
|
lda [file_data],y
|
|
tax
|
|
iny
|
|
iny
|
|
lda [file_data],y
|
|
|
|
tax
|
|
sta $e12000,x
|
|
|
|
Jesse Blue / Ninjaforce
|
|
|
|
Check out our upcoming Apple IIGS game at:
|
|
http://www.ninjaforce.home.ml.org
|
|
(JESSEBLUE, 2103, GO COM A2)
|
|
|
|
>>>>> Yes, you can do that of course, but that would need rescaling the
|
|
""""" animation from the screen to the window, which would cost a lot of
|
|
speed.
|
|
|
|
But I assume that you already HAVE an animation (an animation that uses
|
|
only a small part of the screen), right?
|
|
|
|
In that case, all you would have to do, if the animation fits into the
|
|
window, is you take the offset (x,y) of the top left window pixel:
|
|
|
|
address=y*160+x/2
|
|
|
|
and add that to your animation offset, like this:
|
|
|
|
lda [file_data],y
|
|
clc
|
|
adc address ;here!
|
|
tax
|
|
iny
|
|
iny
|
|
lda [file_data],y
|
|
sta $e12000,x
|
|
|
|
Since I don't know very much about windows, etc. maybe somebody knows how
|
|
the exact update routine would work like?
|
|
|
|
Jesse Blue / Ninjaforce
|
|
|
|
Check out our upcoming Apple IIGS game at:
|
|
http://www.ninjaforce.home.ml.org
|
|
(JESSEBLUE, 2111, GO COM A2)
|
|
|
|
>>>>> Btw. If you want to make animations, check out ANIME, an NDA that
|
|
""""" does a good job on that. You can make animations very easily, view
|
|
them while being in a paint program and save everything to a Paintworks
|
|
animation file.
|
|
|
|
For our homepage location, see below.
|
|
|
|
Jesse Blue / Ninjaforce
|
|
|
|
Check out our upcoming Apple IIGS game at:
|
|
http://www.ninjaforce.home.ml.org
|
|
(JESSEBLUE, 2112, GO COM A2)
|
|
|
|
|
|
ALTERING TRANSWARP GS SPEEDS You can write a program that controls the
|
|
"""""""""""""""""""""""""""" speed of a TWGS; however, TWGS cards can
|
|
only be speed-adjusted to 1 MHz (slow), 2.6 MHz (fast), and whatever the
|
|
fastest possible speed is that's supported by the card.
|
|
|
|
ZipGS cards, on the other hand, can be set to any of 16 speeds, ranging
|
|
from very slow (on the order of a few kHz) to full speed.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2101, GO COM A2)
|
|
|
|
|
|
NEW ORCA/C HEADERS? I've begun work on my own set of C headers for
|
|
""""""""""""""""""" ORCA/C; I don't personally care for the choices of
|
|
types for some of the prototypes of functions. Once I've done all that
|
|
(probably will take a while :), I'll look and tidying up types.rez too.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2037, GO COM A2)
|
|
|
|
>>>>> Frankly, neither do I. There is one point you should consider,
|
|
""""" though. The ORCA/C interfaces use the type Apple documents in the
|
|
toolbox reference manual (the only printed reference we have) unless the
|
|
type Apple documented just flat won't work. If you change that, the result
|
|
is a set of interfaces that can't be used unless you have a copy of each
|
|
and every header file available as you program. It will also mean that
|
|
source code is not compatible between programs written under the two sets
|
|
of header files.
|
|
|
|
At the very least, I'd implore you to make sure all of your file names are
|
|
unique so all of the existing headers, as well as your new ones, can live
|
|
in the same folder. That will make the job of compiling programs written
|
|
under different headers a lot easier.
|
|
|
|
Even better, don't do it. The confusion a second set of header files will
|
|
cause is, in my opinion, far worse than any potential gain.
|
|
|
|
And there are far better projects to spend time on--like a set of libraries
|
|
that use 32 bit int, so UNIX ports are easier. (There is an undocumented
|
|
ORCA/C directive that causes int to be treated as 32 bit, but you need 32
|
|
bit libraries to make effective use of the directive.)
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2042, GO COM A2)
|
|
|
|
<<<<< I'm not sure why it would be bad for me to have my own set of
|
|
""""" headers that I can use without having to look stuff up in the
|
|
headers constantly to figure out which bizarre type they're using.
|
|
|
|
I mean, it gets a little tedious when half the TextEdit calls use
|
|
CtlRecHndl for the handle to a TextEdit record, and the other half use
|
|
TERecord **. The amount of type-casting I have to do is tiresome.
|
|
|
|
I also don't see why I'd need to have two sets of headers; once I've
|
|
updated all my code to use my own headers, they'll work fine from then on
|
|
out and the old ones can be happily forgotten.
|
|
|
|
As for the 32-bit integer thing: I'd love to have a library like that, and
|
|
I hope someone does it... me, I have to many projects on my plate already,
|
|
or I'd do it myself. :(
|
|
|
|
I think I'm overextended (pardon the upcoming blathering, I'm thinking
|
|
aloud :)... I'm simultaneously working on Shifty List 2.0.1 (hopefully done
|
|
next week), WebWorks GS 1.2, a general-purpose GS Installer/Updater package
|
|
with an Installer Builder application, a major BeOS project of epic
|
|
proportions, a series of articles on GSoft BASIC programming, documentation
|
|
for the BeOS R4 Media Kit, and these new headers I'm toying with. It's a
|
|
busy life. ;)
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2044, GO COM A2)
|
|
|
|
>>>>> The problem comes if any of the following ever happens:
|
|
"""""
|
|
1. You distribute your new header files.
|
|
|
|
2. You distribute the source to any of your programs.
|
|
|
|
3. You try to compile someone else's program on your system.
|
|
|
|
All of those situations imply that two different sets of headers must exist
|
|
on one machine, unless you somehow think that the entire world will
|
|
instantly convert every program ever written in ORCA/C to use your headers.
|
|
|
|
Personally, I think it's a bad idea to create the second set of headers at
|
|
all, but I'm sure there will be some people who will like the idea. I'm
|
|
also certain that there will be a lot of people who continue to use the old
|
|
headers, and a huge amount of source that will never be converted to use
|
|
the new headers. So, if you do it, I do have that one very concrete
|
|
suggestion: use unique file names so the headers can all coexist
|
|
peacefully. That way people really can keep both sets of headers on the
|
|
same machine, and the compiler will use whichever set the source needs.
|
|
|
|
There are two simple ways to do this.
|
|
|
|
1. Name all of your files with some unique, predictable prefix or suffix.
|
|
For example, start each file name with an S for Sheppy, as in
|
|
|
|
Stypes.h
|
|
Sgsos.h
|
|
|
|
If a name would be longer that 15 characters, truncate the last one.
|
|
|
|
2. Less C-like, but perfectly effective, is to replace .h with something
|
|
else, like .s for sheppy or .i for interface:
|
|
|
|
types.i
|
|
gsos.s
|
|
|
|
Like I said, I hope you don't do it at all. I do not believe the confusion
|
|
when (not if!) you finally put those interfaces out into the publics grasp
|
|
will not be worth any potential gain. But it's your decision, and I assume
|
|
you'll go ahead with the project. Making that assumption, I really hope you
|
|
use some sort of unique file names so both sets of headers can coexist.
|
|
|
|
Mike Westerfield
|
|
(BYTEWORKS, 2050, GO COM A2)
|
|
|
|
>>>>> if I may butt in: How about using the ORCA/C command-line include
|
|
""""" path statement to keep the headers separate?
|
|
|
|
Like, say, you want to compile something that uses Sheppy's headers, you
|
|
could do:
|
|
|
|
occ -c -I /usr/local/sheppyinclude myfile.c
|
|
|
|
OK, so I'm biased. :)
|
|
|
|
compile myfile.c cc=(-I 13:sheppyinclude) keep=myfile
|
|
|
|
would work just as well, of course (if I didn't forget some hyphens in
|
|
there somewhere).
|
|
|
|
Soenke
|
|
(SBEHRENS, 2051, GO COM A2)
|
|
|
|
<<<<< Mike, if I ever distribute my custom headers (which I've never said
|
|
""""" I was going to do), I'll give them all unique names. That seems
|
|
fairly obvious to me as a necessary step.
|
|
|
|
But for me, I'm just going to replace my headers and fix my sources to use
|
|
them. Should make all my code easier to read and probably will help isolate
|
|
some bugs I never found before.
|
|
|
|
Eric "Sheppy" Shepherd
|
|
Macintosh & PowerPC Programmers Forum
|
|
(SHEPPY, 2052, GO COM A2)
|
|
|
|
|
|
MORE HABANERO HUMOR
|
|
"""""""""""""""""""
|
|
Windows '98 source code.
|
|
TOP SECRET Microsoft(c) Code
|
|
Project: Chicago(tm)
|
|
Projected release-date: MAY 1998
|
|
$History$
|
|
*/
|
|
|
|
#include "win31.h"
|
|
#include "win95.h"
|
|
#include "evenmore.h"
|
|
#include "oldstuff.h"
|
|
#include "billrulz.h"
|
|
#define INSTALL = HARD
|
|
|
|
char make_prog_look_big[1600000];
|
|
|
|
void main()
|
|
{
|
|
while(!CRASHED)
|
|
{
|
|
display_copyright_message();
|
|
display_bill_rules_message();
|
|
do_nothing_loop();
|
|
if (first_time_installation)
|
|
{
|
|
make_50_megabyte_swapfile();
|
|
do_nothing_loop();
|
|
totally_screw_up_HPFS_file_system();
|
|
|
|
search_and_destroy_the_rest_of_OS/2();
|
|
hang_system();
|
|
}
|
|
write_something(anything);
|
|
display_copyright_message();
|
|
do_nothing_loop();
|
|
do_some_stuff();
|
|
if (still_not_crashed)
|
|
{
|
|
display_copyright_message();
|
|
do_nothing_loop();
|
|
basically_run_windows_3.1();
|
|
do_nothing_loop();
|
|
do_nothing_loop();
|
|
}
|
|
}
|
|
|
|
if (detect_cache())
|
|
disable_cache();
|
|
|
|
if (fast_cpu())
|
|
{
|
|
set_wait_states(lots);
|
|
set_mouse(speed, very_slow);
|
|
set_mouse(action, jumpy);
|
|
set_mouse(reaction, sometimes);
|
|
}
|
|
|
|
/* printf("Welcome to Windows 3.11"); */
|
|
/* printf("Welcome to Windows 95"); */
|
|
printf("Welcome to Windows 98");
|
|
if (system_ok())
|
|
crash(to_dos_prompt);
|
|
else
|
|
system_memory = open("a:\swp0001.swp" O_CREATE);
|
|
|
|
while(something)
|
|
{
|
|
sleep(5);
|
|
get_user_input();
|
|
sleep(5);
|
|
act_on_user_input();
|
|
sleep(5);
|
|
}
|
|
create_general_protection_fault();
|
|
}
|
|
(HABANERO, 1977, GO COM A2)
|
|
|
|
|
|
|
|
|
|
[EOA]
|
|
[WEB]------------------------------
|
|
WEB SLINGING 101 |
|
|
-----------------------------------
|
|
HALFWAY THERE: UPLOADING TO DELPHI VIA FTP
|
|
""""""""""""""""""""""""""""""""""""""""""
|
|
by Ryan M. Suenaga, B.A., M.S.W., L.S.W.
|
|
[thelamp@delphi.com]
|
|
|
|
|
|
AVOIDING THE BINARY BLUES
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
In the second installment of this series, I talked about variations on
|
|
the telnet theme and how you could attempt to address problems with file
|
|
transfers and telnet connections. If you've tried all of these things and
|
|
are still having problems, there is another solution, at least for
|
|
uploading--using Delphi's built-in Internet tools to move files into your
|
|
Delphi workspace, then copy the files to the Database of A2 or another
|
|
Forum.
|
|
|
|
In this article, we'll go into some detail on the multi-step process
|
|
of getting a file into a Delphi Database using these Internet tools. We
|
|
will not cover such steps in the process as figuring out keywords to search
|
|
on or file naming conventions. For more assistance, you may want to check
|
|
the message thread "Uploading Suggestions" in the General Chatter area of
|
|
the A2 Forum on Delphi.
|
|
|
|
In order to use the Delphi's Internet tools to get files into the
|
|
Forum Database, these are the steps to follow:
|
|
|
|
1) Place the file you wish to download in a space where you can use
|
|
Delphi's Internet tools to access it;
|
|
|
|
2) Use Delphi's Internet tools (likely either File Transfer Protocol, aka
|
|
FTP, or Delphi's version of Lynx, to place the file into your Delphi
|
|
Workspace;
|
|
|
|
3) Go to the Database of the Forum you wish to place your file in;
|
|
|
|
4) Copy the file from your Delphi Workspace to the Database.
|
|
|
|
To accomplish step one, you'll likely need some kind of publicly
|
|
accessible ftp site where you can leave your files temporarily. Some
|
|
Internet Service Providers (ISPs) give users public FTP space to place
|
|
files they want accessible, or a file could even be placed in a public HTML
|
|
space and brought to the area you want using Lynx. If you don't have such
|
|
a space provided by your ISP, you may need to place files on a public FTP
|
|
server, which is far beyond the scope of this document.
|
|
|
|
Once your files are in such a space, use Delphi's Internet tools to
|
|
move them to your Delphi Workspace. To get to these tools, you need to go
|
|
to Delphi's Computing and Technology Navigating The Net page. To do this,
|
|
from any main Delphi prompt, simply type:
|
|
|
|
GO COM NAV
|
|
|
|
And press return. This will lead you to a screen that looks something like
|
|
this:
|
|
|
|
[BEGINNING OF SCREEN EXAMPLE ]------------------------------------
|
|
|
|
NAVIGATING THE NETS
|
|
|
|
Welcome to Navigating the Nets! This Delphi Community is the place to
|
|
get help in exploring the World Wide Web and the Internet and to share
|
|
your experiences with others. When you need a break from surfing the
|
|
nets, or just want good companionship, join us in the message forum or
|
|
in chat. Whether you are joining us from textside or webside, drop in
|
|
anytime. There is always something interesting going on.
|
|
|
|
Walt Howe (walthowe@delphi.com)
|
|
|
|
Navigating the Net Menu:
|
|
|
|
Conference Lynx (VT-100 Web Browser)
|
|
Databases (Files) Telnet
|
|
Forum (Messages) Utility (finger,traceroute,ping,whois)
|
|
Internet Navigator Usenet Groups via nn
|
|
Mail (Electronic) FTP-File Transfer Protocol
|
|
Set Preferences Help
|
|
Who's Here Exit
|
|
Workspace Auditorium
|
|
IRC- Internet Relay Chat
|
|
|
|
NAVIGATING>What do you want to do?
|
|
|
|
[END OF SCREEN EXAMPLE ]------------------------------------------
|
|
|
|
It's likely you will want to use the FTP option to move the files to
|
|
your Delphi Workspace, although it is possible you may want to use Lynx if
|
|
you've placed the files in an HTML area rather than a FTP area. If you
|
|
want to use FTP, simply type:
|
|
|
|
FTP
|
|
|
|
and hit return. You will then see a prompt that looks like this:
|
|
|
|
[BEGINNING OF SCREEN EXAMPLE ]------------------------------------
|
|
|
|
Enter destination INTERNET address:
|
|
|
|
[END OF SCREEN EXAMPLE ]------------------------------------------
|
|
|
|
Here you put in the name of the FTP server you will be getting the
|
|
files from. Let's say in this case the file you wish to get to Delphi is
|
|
in a private area at ftp.sheppyware.net. Type in "ftp.sheppyware.net"
|
|
without the quotes and press return. You will be prompted for a username:
|
|
|
|
[BEGINNING OF SCREEN EXAMPLE ]------------------------------------
|
|
|
|
Enter username (default: anonymous):
|
|
|
|
[END OF SCREEN EXAMPLE ]------------------------------------------
|
|
|
|
As the file I want to get to a private area on this server, I need to
|
|
enter my personal username and, when prompted, my personal password.
|
|
|
|
If your file is on a publicly accessible FTP server, you may be able
|
|
to access the file via "anonymous" FTP. If this is the case, you can use
|
|
the usual anonymous FTP login procedure: use the username "anonymous" and
|
|
your email address as a password.
|
|
|
|
Once you have logged in, you can simply use the FTP command "GET" to
|
|
transfer copies of the files on the FTP server to your Delphi workspace.
|
|
Say the file we wish to transfer is named mfaq.bxy. We first issue the
|
|
command "BIN" by typing "bin" and hitting return, to ensure a binary
|
|
transfer (as opposed to a text one, as this is a binary and not a text
|
|
file), then enter:
|
|
|
|
get mfaq.bxy
|
|
|
|
and hit return. You will see the following:
|
|
|
|
[BEGINNING OF SCREEN EXAMPLE ]------------------------------------
|
|
|
|
200 PORT command successful.
|
|
150 Opening BINARY mode data connection for mfaq.bxy (13184 bytes).
|
|
226 Transfer complete.
|
|
FTP>
|
|
|
|
[END OF SCREEN EXAMPLE ]------------------------------------------
|
|
|
|
and, magically, the file will be in your Delphi Workspace.
|
|
|
|
You can then exit FTP using the "bye" command.
|
|
|
|
Once you are out of FTP, use the "workspace" command to enter your
|
|
Delphi Workspace. At that point, you will see a listing of files in your
|
|
Delphi Workspace, which will include the transferred file, as in this
|
|
example:
|
|
|
|
[BEGINNING OF SCREEN EXAMPLE ]------------------------------------
|
|
|
|
MFAQ.BXY;1 26/36 20-SEP-1998 08:30:34.91
|
|
|
|
[END OF SCREEN EXAMPLE ]------------------------------------------
|
|
|
|
You may want to jot the filename down, ignoring the ";1".
|
|
|
|
At this point you will want to enter the Database of the Delphi Forum
|
|
where you want to submit the file. You will be prompted to choose a Topic,
|
|
then begin the process by entering Submit. While it is possible to
|
|
complete the process a number of ways, it is strongly suggested you enter
|
|
Begin to begin the process of submitting the file, which will take you
|
|
through a step-by-step process to get the various pieces of information on
|
|
the file you are placing in the Database, including such things as keywords
|
|
to search on and a description of the file. Finally, instead of choosing
|
|
the Upload option to upload the file, choose the Copy option to copy the
|
|
file from your database. You will be prompted for the filename (which you
|
|
DID jot down), and other information.
|
|
|
|
You have now mastered the art of getting a file into the Delphi
|
|
database without having to use a protocol transfer via telnet, which is
|
|
problematic for many users. In future issues, we'll see other ways to
|
|
enhance our Delphi experience using the World Wide Web.
|
|
|
|
|
|
|
|
|
|
:: DISCUSSED ON DELPHI ::::::::::::::::::::::::::::::::::
|
|
: :
|
|
: Some change when they see the light, :
|
|
: others when they feel the heat. :
|
|
: :
|
|
:::::::::::::::::::::::::::::::::::::::: GOLDFISCHE :::::
|
|
|
|
|
|
|
|
[EOA]
|
|
[INN]------------------------------
|
|
EXTRA INNINGS |
|
|
-----------------------------------
|
|
About The Lamp! The Lamp! is published on the fifteenth of every month in
|
|
""""""""""""""" the Database of the II Scribe Forum on the Delphi online
|
|
service (GO CUS 11).
|
|
|
|
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 1998 by Ryan M. Suenaga, M.S.W. All
|
|
rights reserved.
|
|
|
|
* To reach The Lamp! on Internet email send mail to
|
|
thelamp@delphi.com.
|
|
|
|
* Back issues of The Lamp! are available in the II Scribe Forum on
|
|
Delphi as well as The Lamp! Home Page,
|
|
http://lamp.sheppyware.net.
|
|
|
|
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
|
Opinions expressed herein are those of the individual authors, and do not
|
|
necessarily represent the opinions of the Delphi Online Services,
|
|
Syndicomm, Inc., or Ryan M. Suenaga. Forum messages are reprinted
|
|
verbatim and are included in this publication with permission from the
|
|
individual authors. Delphi Online Services, Syndicomm, Inc. and Ryan M.
|
|
Suenaga 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]
|
|
|