mkdjo
asked on
Disable FIFO
My serial port on an old notebook uses the FIFO-Mode. What I need to do is to disable this. I expect this is a MS-DOS configuration task, but first I found no DOS-Topic anymore and second my programm runs under win3.11.
Thanks
Thanks
ASKER
Because I want to use an external peripheral device which recommends no FIFO port. I don't know if it expects LIFO. It is an old notebook, which I don't know the ports too. But I expect it uses the UART 16550, which I expect to use more modes.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Surfers,
Also consider looking at programs, like terminal emulators (aka VT100, or those targetted to BBS), that like running DOS (speed/control/price) and need these DOS configuration options.
Also consider looking at programs, like terminal emulators (aka VT100, or those targetted to BBS), that like running DOS (speed/control/price) and need these DOS configuration options.
ASKER
I have deleted DOS and installed W95. Now it works fine. Only installing W95 over DOS does not solve this problem. Now it is only a theoretical question, but I still want to know how to disable it.
SunBow, I will look how W95 deactivates the FIFO. Maybe this will help to know.
SunBow, I will look how W95 deactivates the FIFO. Maybe this will help to know.
ASKER
Tried to look at a different way. A colleague wrote a program with pascal to disable the fifo.
program setfifo;
const com_adr : array [1..4] of word = ($3f8,$2f8,$3e8,$2e8);
var portnr, state, result : integer;
procedure fifoOnOff (comport ,state : integer);
begin
port[com_adr[comport]+2] := state and 1;
end;
begin
if (ParamCount <> 2) then begin
writeln ('SETFIFO: Enable/Disable FIFO-Mode of UART');
writeln ('Call: setfifo <COM-Nr> <0|1>');
exit;
end;
val(ParamStr(1),portnr,res ult);
val(ParamStr(2),state,resu lt);
fifoonoff (portnr,state);
You took me to the right way SunBow. Thank you very much, and please post it as an answer.
end.
program setfifo;
const com_adr : array [1..4] of word = ($3f8,$2f8,$3e8,$2e8);
var portnr, state, result : integer;
procedure fifoOnOff (comport ,state : integer);
begin
port[com_adr[comport]+2] := state and 1;
end;
begin
if (ParamCount <> 2) then begin
writeln ('SETFIFO: Enable/Disable FIFO-Mode of UART');
writeln ('Call: setfifo <COM-Nr> <0|1>');
exit;
end;
val(ParamStr(1),portnr,res
val(ParamStr(2),state,resu
fifoonoff (portnr,state);
You took me to the right way SunBow. Thank you very much, and please post it as an answer.
end.
I believe if you like a comment, you can now accept is as answer. I still have to post my own Q's to find out.
In Win95, most recommendations on use of its TAPI that include the UART issue, also recommend for 16550 setting receive and transmit buffers to high (14/16), ensure handshaking flow control is harware, and to pump the BPS up as high as you can, like to 115200.
Some equipment and WANs cannot handle, so this is no sure thing, just other ways to improve speed if you can control the environment. External modems for example, may not keep up as well as internal ones.
I'd be interested in interaction between your pgm & Winxx, if they behave well, or if Win just assumes there've been no changes since booting it. I ran some VB once and it did not produce same results as TAPI. That could have been just me.
In Win95, most recommendations on use of its TAPI that include the UART issue, also recommend for 16550 setting receive and transmit buffers to high (14/16), ensure handshaking flow control is harware, and to pump the BPS up as high as you can, like to 115200.
Some equipment and WANs cannot handle, so this is no sure thing, just other ways to improve speed if you can control the environment. External modems for example, may not keep up as well as internal ones.
I'd be interested in interaction between your pgm & Winxx, if they behave well, or if Win just assumes there've been no changes since booting it. I ran some VB once and it did not produce same results as TAPI. That could have been just me.
ASKER
There is no button to graduate a comment, at least I can't see one. I will look how this is possible.
I don't know the interaction with windows. Looks like my windows accepted this command, even DOS accept this command. (on a different old notebook)
I don't know the interaction with windows. Looks like my windows accepted this command, even DOS accept this command. (on a different old notebook)
ASKER
There is the botton. Thank you very much.
Now why do you wanna changed in the first place???