De-Activate Non-Conversational Mode

Hi fellow Natural developers,

with SET CONTROL ‘N’ I can “skip” an unwanted INPUT statement. But is there a way to disable this skipping once it is set? Can I deactivate Non-Conversational Mode again? The documentation doesn’t contain any information about this. It only says that N can be used to activate Non-Conversational Mode, but not how to deactivate it.

If this isn’t possible, maybe someone knows another way to fix this problem I have: If I call a subprogram that might contain an INPUT (but doesn’t have to) and I want to display something after the call, the second INPUT isn’t shown if the subprogram didn’t contain an INPUT (because it is “skipped” due to SET CONTROL).

Example:

SET CONTROL 'N'
CALLNAT #SUB-TO-CALL /* might (!) contain an INPUT */
SET CONTROL '???' /* what can I do here to deactivate the INPUT suppression again? */
INPUT 'always display this' /* this is only displayed if #SUB-TO-CALL contains an INPUT, but I want it to always be displayed */

Best regards,
Stefan

I don’t think there is a way to “cancel” a %N but I’d say the SET CONTROL ‘N’ should be next to the INPUT you want to suppress in #SUB-TO-CALL, not the mainline.

Hi Stefan,

If you can’t modify #SUB-TO-CALL, then this might work. Add a 2nd %N followed by a dummy INPUT.

No guarantees, just a vague memory of fighting this fight before…

SET CONTROL ‘N’
CALLNAT #SUB-TO-CALL /* might (!) contain an INPUT /
SET CONTROL ‘N’
INPUT ’ ’ /
Never display this. Might display a blank line, but won’t wait for user to press Enter.
INPUT ‘always display this’ /*

Good luck,
George

1 Like

This nice little hack does the trick! :smiley: Thank you very much!