Windows 3.x High-Speed Communications Library and Tools.
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> |
||
|---|---|---|
| delphi | ||
| drivers | ||
| drv | ||
| vbx | ||
| .gitattributes | ||
| .gitignore | ||