Previously the upscale test was changing the frame contents with incorrect data
before going back, but the algorithm relies on not changing contents for some
pixels by "skipping" them. Duplicated a bit of code to create a
non-destructive upscale test before decoding the whole frame.