Windows 3.x High-Speed Communications Library and Tools.
Find a file
Scott Duensing fbf4ed7c40 Fix input lag: add PM_NOYIELD, skip idle GetDC, eliminate redundant renders
PeekMessage without PM_NOYIELD surrenders the timeslice on every empty
queue check (~55ms per yield in Win16).  Adding pm_NoYield keeps the
polling loop hot so keystrokes and serial echoes are processed without
scheduler delays.

FlipToScreen was calling GetDC/ReleaseDC on every loop iteration even
with zero dirty rows.  Added early-exit scan before acquiring a DC.

TickBlink was calling FlipToScreen redundantly (main loop also calls it).
Removed the FlipToScreen from TickBlink and reordered the main loop to
TickBlink (dirty only) then FlipToScreen (single render pass).

Also: removed FBlinkOn := True reset from ParseData (was dirtying the
cursor row on every incoming chunk), added WriteDeferred for parse-only
without render, moved FlipToScreen from private to public, added Show
call before entering the polling loop.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 19:28:56 -06:00
delphi Fix input lag: add PM_NOYIELD, skip idle GetDC, eliminate redundant renders 2026-03-01 19:28:56 -06:00
drivers Initial commit. 2026-02-23 20:53:02 -06:00
drv Replace event-driven WM_COMMNOTIFY architecture with polling main loop 2026-03-01 19:01:40 -06:00
vbx VBX does not work. Moving to Delphi. 2026-02-25 22:06:08 -06:00
.gitattributes Initial commit. 2026-02-23 20:53:02 -06:00
.gitignore VBX does not work. Moving to Delphi. 2026-02-25 22:06:08 -06:00