I was having a problem with a networked dos program that produces a lot of printing (a sales program that writes invoices etc.). The sales program runs on the server as well as other workstations, and the INKEY$ code sequences really fouls up the network spooler performance when printing from a workstation when the server is in an inkey loop.
After reading Lance's remarks about time slicing, I tried his code snippet (without the PbvHost test):
while not instat
if IsWindows% then
! push DS
! mov AX, &H1680
! int &H2F
! pop DS
end if
wend
a$ = inkey$
and it works very well, allowing the workstations to print normally. Perhaps I should mention that the printer is attached to the server, and workstations direct their printouts to the server printer.
My question is, allowing that I am strictly a high-level language programmer and know next to nothing about assemblers: should this code work reliably in a non-windows system, or am I just lucky? I wonder, because the original code tested for a windows environment, whether the routine is legit for dos.
-
------------------
After reading Lance's remarks about time slicing, I tried his code snippet (without the PbvHost test):
while not instat
if IsWindows% then
! push DS
! mov AX, &H1680
! int &H2F
! pop DS
end if
wend
a$ = inkey$
and it works very well, allowing the workstations to print normally. Perhaps I should mention that the printer is attached to the server, and workstations direct their printouts to the server printer.
My question is, allowing that I am strictly a high-level language programmer and know next to nothing about assemblers: should this code work reliably in a non-windows system, or am I just lucky? I wonder, because the original code tested for a windows environment, whether the routine is legit for dos.
-
------------------
Comment