KiSSLD (versions 8, 9) by EMK
(ksld008z.lzh, ksld009i.lzh)
This viewer has been constantly updated, running from version 8a
to 8z and starting again at 9a, although only the latest version 9 is up
for download on EMK's page. It's the best
viewer I know for the PC, combining modest requirements (Windows 3.x with
Win32s installed) with advanced FKiSS support; moreover, its syntactic
sensitivity makes it a good spellchecker. Version 8z is what I used for
the Test Set; versions 9 also support enhanced palette, but along with
new features, new bugs have crept in which are being corrected in subsequent
updates, so for sets which rely on FKiSS effects, I'd recommend sticking with
8z until 9 is stable.
Archive support: internal
FKiSS: 2.1
CKiSS: yes
Enhanced palette: yes (as of 9e)
Bugs and idiosyncrasies:
Versions 9 have bugs that version 8z didn't have; version 9e triggers
unfix() at each click on an unfixed cel. This was solved in the
next version I downloaded (version 9i). The following idiosyncrasies (they're
not 100% bugs) apply to version 8z, and probably to all versions 9:
- May act strangely when it encounters an unknown event. (I found that it
ignored all object-mapping actions below viewport(), and had to
reference cels for all mapping actions until I found that putting viewport()
at the bottom of the FKiSS section solved the problem.)
- Seems to have a sort of built-in snap-to, which means that sometimes when
you drag a cel to a position, it jumps to another position. This has nothing
to do with any FKiSS code; it's unpredictable, unpreventable and darn annoying.
- Won't detect collision between two totally transparent cels, that is, with
transparency set to 255; at least one of the cels has to have a transparency of
254 or below. Collision between a completely transparent cel and a partly
transparent or non-transparent cel is detected, however.
- Will detect apart() between two cels even if one of them is no longer mapped,
and carries out collision detection when a cel is clicked, which means that it
sees a click as a drag. So if a cel is mapped on top of another cel and this
newly mapped cel is then clicked on, any collision events for either cel are
triggered. This can make it seem as if the mapping itself triggers
collision detection.
- Won't allow alarms longer than 65535 milliseconds. Any longer interval has to
be split up among two or more alarms which call each other.
- Loops midi files endlessly. (Which means you need a button to turn the music off.)
Click here for a screenshot.