prototype SAMI player / code refined