Egads! My eyes.
I'd rather it was just written in assembly. It's the do { opening a block under the case 0, but then proceeding to have further case statements inside that block. You now have case statements in two different scopes that are part of the same switch.