+* The remaining shared globals: WD1, WD1X, WD2, WD2X. These are used
+ rather promiscuously to pass around information that ought to be function
+ arguments in a modern language.
+
+* Remaining unstructured gotos in playermove() and do_command(). The goto L12
+ in playermove() is particularly horrible, jumping backwards into the
+ middle of a loop.
+
+* The way return values from handlers such as 2012 trigger side effects
+ based on global state is nasty.