#
# Transition effects for SHR slideshows
#
# Each Mega-Attract Module that is an SHR slideshow (see ATTRACT.CONF)
# will use a single transition effect for the length of the module.
# Transition effects are loaded in the order listed in this file. Each line
# of this file is a filename (not including comments, like this one). The
# name of the next transition effect is stored in the global prefs, so this
# file should not contain duplicates.
#
# Transition effects are binary files loaded at $A000 and called with main
# memory banked in (read/write) and the next SHR graphic already loaded at
# $2000/main. A transition effect has full use of zero page (main),
# $0200-$07FF (main), and $A000-$BEFF/main. $BF00-$BFFF/main is reserved for
# the ProDOS shim. LC RAM banks 1 and 2 are reserved for the launcher.
#
# /!\ You can not assume auxiliary memory exists! No, really.
#
# Consider this (supported) configuration: Apple ][+, 64K, VidHD card.
# This machine is capable of displaying SHR graphics by copying pixel and
# palette data from $2000-$9FFF/main to $2000-$9FFF/aux, despite the fact
# that auxiliary memory does not exist and the writes will actually go to
# main memory. However, the VidHD card notices and respects the WRITEAUXMEM
# softswitch and will cache the data in its internal cache and ultimately
# display it.
#
# Even worse, this means that SHR transitions must be careful about writing
# to aux anything other than the current value of that address in main,
# because in some (supported) configurations, those writes will actually
# be altering main memory. Example: you want to clear the palettes space
# before progressively fading them in. Writing all zeros to the palettes
# in "auxiliary" memory will actually overwrite the original palettes in
# main memory.
#
# Important: LC RAM bank 1 will be read/write on entry and must be read/write
# on exit. If you need ROM routines, you are responsible for switching to ROM
# then switching back to RAM bank 1 (read/write) before returning. However,
# you can leave WRITEAUXMEM active; the calling code unconditionally switches
# back to WRITEMAINMEM after the transition code returns.
#
# This file is converted to a binary data structure (SFX.IDX) during build
# then added to TOTAL.DATA on the final disk image.
#
SHR.80BOXES
SHR.FIZZLE
SHR.RIPPLE
SHR.TWOPASS.LR
SHR.RADIAL
SHR.80.SNAKE
SHR.SOFT.IRIS
SHR.DIAGONAL
SHR.80.DOWN
SHR.IRIS.IN
SHR.LR
SHR.RADIAL2
SHR.80.SPIRAL
SHR.FADEIN
SHR.SOFTIRIS.IN
SHR.80.SIDE2
SHR.LR2
SHR.80.ARROW
SHR.IRIS
SHR.UD

[eof]
