Check for output write errors (as yet unhandled, though) and cast wall corner coordinates to correct type (acknowledging some dirty reuse of variables there)
resolutions for issues raised by `splint -weak -unrecog hmstl.c` (with unistd.h include commented out, since splint barfs attempting to process it; -unrecog addresses consequential confusion about getopt, defined in unistd)