Some windowports that are currently being written by third parties need more information about the engine than they currently have. Two specific reported problems: a) needing to know whether a putstr() call relates to a count (so that it can be placed in a different part of the user interface from the message area); b) needing to know whether a request for a character relates to command input (some hangup handling routines need this so that they can determine what behaviour is potentially exploitable). Knowing whether or not you're inside parse() fixes both of them. This would be cleaner to do by changing the windowport API, but that'd break existing windowports, which isn't really ideal. Setting a globalish variable that the windowport can inspect, but can ignore if it prefers, means that existing windowports will continue to work fine, but new windowports will have more information and thus more flexibility in how they handle command entry.
24 KiB
24 KiB