Make sure to gen the frag shader matching the id.

Otherwise, the frag shader might be generated accounting for different
vertexFullAlpha values, or otherwise won't match up with the id, since we
change flags between the two Apply calls.
CALLs and JUMPs to misaligned addresses round down.

Fixes Pac-Man World 3.  Matches tests on hardware.
Note that VADDR/IADDR are not updated on PRIM.

Even though they do increase the addresses, they don't affect the CMD
registers.

Also, make sure not to use a crazy bytesRead for a zero-sized prim.
Pos=0 is treated the same as pos=1.
Fix a couple ARM VFPU flags.
Unknown's explanation:
LO means Lower (unsigned), but for floats, it means "Less than".
LT means Lower (signed), but for floats it means "Less than OR unordered".
ARM docs at http://infocenter.arm.com/help/topic/com.arm.doc.dui0068b/Chdhcfbc.html explain the following:
LE means Signed less than or equal, and for floats it means "Less than or equal, or unordered".
LS means Unsigned lower or same, but for floats, it means "Less than or equal"
Improve reset (and delay) and boot of another game.

Fixes #6023.
Merge pull request #6021 from unknownbrackets/gpu-minor

Make sure to gen the frag shader matching the id
Merge pull request #6027 from unknownbrackets/ui-tweaks

Improve reset (and delay) and boot of another game
Merge pull request #6026 from thedax/arm-JIT-flags-fix

Fix a couple buggy ARM VFPU flags.
Merge pull request #6024 from unknownbrackets/gpu-minor2

Fix jump/call alignment, no-pos vertices
Merge remote-tracking branch 'upstream/master' into fps2