How to un-AssignCrt(Output)?

In TurboPascal program i took an advantage of DOS processed output and use Tab control character to form columns in the output:

const Tab = #09;
...
Writeln(X, Tab, F(X));

However, when i tried to add a pause-like functionality via ReadKey call and used Crt module, processed output broke, and the statement illustrated above began writing generic Tab glyph instead forming columns at the tab stops.

As i figured out, source of this phenomenon is AssignCrt(Output) call at the module initialization, which redefines means how Writeln works - it no longer uses DOS for output, but either video BIOS or direct video memory access (depending on DirectVideo value) instead.

How do i reverse whatever AssignCrt does? As far as i know from the documentation, there Crt module provides no means to restore normal output.

Answers


The Crt textfile driver does not support the tab character in turbo-pascal. To revert back the standard dos driver, do as follows:

Assign(Output,''); // Restores standard dos output

You can later reinstate the Crt driver by:

AssignCrt(Output);


Need Your Help

Override default icon of primefaces

css jsf primefaces

I am new to primefaces, I want to override or change the default icon ui-icon-circle-triangle-e of rowtoggler to ui-icon-plus. Please tell me if it is possible, and if so how to implement it.