update frame