i think the read-byte and file-position failures can be
simplified to the problem that this doesn't behave right
when I > 8. i'm using od -x to check the contents of the
file.
(LET* ((I 8)
(S (OPEN "foo.txt" :DIRECTION :OUTPUT :IF-EXISTS :SUPERSEDE
:ELEMENT-TYPE (LIST 'UNSIGNED-BYTE 2))))
(write-byte (1- (ASH 1 I)) S)
(close s))