[z-machine] Spec inconsistency question of the day

Amir Karger amirkargerweb@yahoo.com
Wed, 26 Nov 2003 10:13:12 -0800 (PST)


Spec 7.2 and 7.2.1 say:

On output streams 1 and 2 (only), text printing may be "buffered" in
that new-lines are automatically printed to ensure that no word (of
length less than the width of the screen) spreads across two lines.
(This process is sometimes called "word-wrapping".) 

In Versions 1 to 3, buffering is always on. In Versions 4 and later it
is on by default (at the start of a game) and a game can switch it on
or off using the buffer_mode opcode. 

The buffer_mode command (sec. 15) says:
If set to 1, text output on the lower window in stream 1 is buffered up
so that it can be word-wrapped properly. If set to 0, it isn't. 


I originally thought sec. 15 is wrong.  But sec. 15 points out that
buffer_mode is a weird command in v6 (which window's buffer_mode should
you set?) and implies that the Infocom interpreters of the day didn't
modify buffering of stream 2 even if you set buffer_mode.  Or maybe
noone looked at it.

It seems logical to me that stream 2 buffering should be consistent
with stream 1, but I can see that once you get multiple windows, that
argument is less solid: which window would you synchronize with?

The spec should be self-consistent, though, whatever people decide.  

-Amir

__________________________________
Do you Yahoo!?
Free Pop-Up Blocker - Get it now
http://companion.yahoo.com/