Apple II Technical Notes _____________________________________________________________________________ Developer Technical Support AppleTalk #2: ProDOS 8 Compatibility on the IIe and IIGS Written by: Mark Day November 1988 This Technical Note describes areas which could cause an application to run under the AppleShare Apple IIe workstation software, but fail under the Apple IIGS workstation software. _____________________________________________________________________________ o If code is running in auxiliary memory in emulation mode (e.g., ProDOS 8 programs that run code from auxiliary memory), make sure $0100 in auxiliary memory is set to the normal stack pointer and $0101 in auxiliary memory is set to the auxiliary (alternate) stack pointer. (See page 93 of the Apple IIe Technical Reference Manual.) o Make sure ProDOS calls are not made from auxiliary memory; Apple has never recommended doing this, and it is not supported. o Make sure interrupts are enabled when making ProDOS 8 calls. o Make sure interrupts are not disabled for long periods of time, nor for a high percentage of time. Whenever interrupts are disabled, there is a chance that an AppleTalk packet will be missed (which could cause AppleShare volumes to be unmounted). The more interrupts are disabled, the more likely that packets will be missed. This risk is inherent for any application that disables interrupts (directly or indirectly), therefore, interrupts should be disabled with discretion and only when absolutely necessary. o Make sure programs get the completion routine return address from the GetInfo call when they are started. o Make sure to identify AppleTalk by calling GetInfo and checking for an invalid call number error (which means AppleTalk is not present). Do not use the ATLK signature bytes for identification. See Apple II AppleTalk Technical Note #1, Identifying AppleTalk. Further Reference o Apple IIe Technical Reference Manual o Apple II AppleTalk Technical Note #1, Identifying AppleTalk