Subject: Re: AppleWorks 3.0 and EPSON APL card

From: [email-masked]
Date: Wed, 20 Jan 93 23:50:40 NZS

> David,  Hi!  I'm interested in whatever patch you find for Applework3.0 and
> the Epson APL card.  Mine doesn't print from Appleworks just like you 
> described it.  Works fine with PrintShop and Basic though.  My second
> printer card works with Appleworks, but not Print Shop.  So I have to switch
> cable from printer depending on what program I'm running.  A real pain :)

I knew I should have saved a copy of the message I just sent, which
details the patch.  Here's the details.

The file APLWORKS.SYSTEM needs to be patched.  This patch assumes the
card is in slot 1.  I have no idea what affect this will have on
another printer card: my guess is that it will prevent the patched copy
of AppleWorks from working with another card.  Of course, you should
only do this patch on a backup copy, and keep an unmodified copy in
case you need to print to another card.

I'm assuming you have access to a sector editor, e.g. ZAP (part of Bag
of Tricks 2, by Quality Software).

The same patch works with all versions of AppleWorks from 1.1 to 3.0,
but the location differs.  I've only tried it with 2.0 and 3.0.

The original bytes: 09 C0 85 9B A9 00
The patched bytes:  C9 01 F0 49 D0 17

The location for the versions I know about:

Version    File offset     RBA for Bag of Tricks ZAP
2.0        $1E6E           $000F +$06E
2.1        $1F00           $000F +$100
3.0        $248C           $0012 +$08C

If you don't have ZAP, you can use the following commands in
BASIC.SYSTEM (for version 3.0, adjust the offsets for earlier versions):

]BLOAD APLWORKS.SYSTEM,TSYS,A$2000
]CALL-151
*448C.4491                         These lines confirm the original data
448C- 09 C0 85 9B                  ...
4490- A9 00                        ...
*448C:C9 01 F0 49 D0 17            Apply the patch
*[press ctrl-c then return]
]BSAVE APLWORKS.SYSTEM,TSYS,A$2000

-- 
David Empson

Internet: [email-masked]    [email-masked]
Snail mail: P.O. Box 27-103, Wellington, New Zealand

Path: news.weeg.uiowa.edu!news.uiowa.edu!uunet!wupost!waikato.ac.nz!comp.vuw.ac.nz!actrix!David.Empson
Newsgroups: comp.sys.apple2
Subject: EPSON APL patch for AppleWorks
Message-ID: <[email-masked]>
From: [email-masked]
Date: Wed, 20 Jan 1993 12:59:54 GMT
Sender: [email-masked] (David Empson)
Organization: Actrix Information Exchange
Lines: 110

Further to my earlier messages on this topic, I've now confirmed that
the patch I already knew about does work with AppleWorks 3.0.

Here's a summary of the problem:

There appear to be two versions of the ROM on the EPSON APL card.  One
of them doesn't work with AppleWorks, and the other one does.  If you
can print from AppleWorks using your EPSON APL card, you need not read
any further.

If you have the original ROM, any attempt to print from AppleWorks
will not send anything to the printer.  AppleWorks just zips through
the document in a couple of seconds.

A patch can be applied to AppleWorks to make it print through the
EPSON APL card's original ROM.

Warning: if you are going to apply this patch, make sure you take a
backup copy of your AppleWorks startup disk, and apply the patch to
the backup.  Your patched copy should be clearly labelled.  I will not
accept any responsibility for lost data.  Apply this patch entirely at
your own risk.

I suspect that a copy of AppleWorks with this patch applied will not
print properly with other printer cards.

The patch assumes the printer card is in slot 1.  It works with
AppleWorks version 1.1 to 3.0 (but the location to apply the patch is
different for each version).  I have tried it only with versions 2.0
and 3.0.

Only the file APLWORKS.SYSTEM is affected.  You must use a 'clean'
copy of this file.  If you have some utility program that patches
AppleWorks (e.g. Timeout), the location of the patch will probably be
different, and I can't help you.  You should be able to apply this
patch BEFORE other patches, without any problems.

Here are the details of the patch:

The following six byte replacement needs to be made in APLWORKS.SYSTEM:

Original: 09 C0 85 9B A9 00
Patched:  C9 01 F0 49 D0 17

The location for the various versions of AppleWorks:

Version   File Offset   Memory range for patch (see below)
1.1       $177A         377A.377F
1.2       $167E         367E.3683
2.0       $1E6E         3E6E.3E73
2.1       $1F00         3F00.3F05
3.0       $248C         448C.4491

(I don't have a copy of AppleWorks 1.0 or 1.3, so I don't know the
location for these versions.  I also cannot be certain if the patch
will work in either version.  By searching for the original byte
pattern above, you should be able to determine the appropriate
location to apply the patch.)

The patch can be applied using BASIC.SYSTEM as follows:

]BLOAD APLWORKS.SYSTEM,TSYS,A$2000
]CALL-151

We will first confirm that the bytes to be patched are at the expected
location, using the 'memory range' column from the table above.  This
example is for AppleWorks 3.0.

*448C.4491
448C- 09 C0 85 9B
4490- A9 00

If you see the correct (original) bytes, as shown here, you can
proceed.  If the bytes don't match, your copy of AppleWorks may have
been patched in some way, and a different method will be needed to
install the patch.  E-Mail me and I'll see if I can help.

We now patch the bytes.  The address at the start of this line should be
the start of the 'memory range' of the patch for the appropriate
version of AppleWorks.

*448C:C9 01 F0 49 D0 17

Now the file can be saved again.  Press Control-C then Return (to get
back to BASIC).

]BSAVE APLWORKS.SYSTEM,TSYS,A$2000

If you now launch the patched copy of AppleWorks, you should be able to
print to your EPSON APL card, from all AppleWorks modules.

If AppleWorks crashes, or doesn't print anything, you probably applied
the patch incorrectly.  Take another copy and try again (more
carefully).  E-Mail me if you are having problems.

This patch has been around for a long time.  I don't know who
discovered it in the first place.  It was described in the June 1986
issue of my user group's magazine (for versions 1.1 and 1.2, with an
incorrect patch for version 1.3), and was mentioned in an early 1985
issue.
-- 
David Empson

Internet: [email-masked]    [email-masked]
Snail mail: P.O. Box 27-103, Wellington, New Zealand