I guess the easy workaround in my code to avoid this "amp;" problem is to remove the "break" from the loop, so it scans all events, instead of quitting when it finds the zforce (touchscreen) device.
The reason I scan for the zforce device is because it is a different device number depending on whether you booted from main or diags when using the touchscreen.
I wonder if the name "zforce" implies that it can read how much force is applied to the screen...
When pressing the screen with a soft fingertip, more "pixels" are covered as the fingertip flattens out. You can see this effect when you run the "zforcediag" program on the diags partition. Unfortunately, you have to boot to diags using mmcblk0p2_ssh, because zforcediag looks for the touchscreen input device in the wrong location when booting from main. From diags, run "/usr/local/bin/zforcediag", and you will see that if you read the touchscreen LED and photodiodes directly instead of using the input device I am using, you could even measure the diameter of a coin or other object laid (carefully) on the screen.
EDIT: Because the zforcediag program resides in the same directory as the dropbear files needed by SSH, the new 5.1.0 OTA updates probably delete this very useful diagnostic tool when they delete dropbear. Bad amazon! I plan to copy my /usr/local file to my usb drive to hide them from amazon.