More asm optimizations

Also HIDDEN must toggle, not set, the flag.