More complete sfx implementation, see log for all changes.