otya128 / winevdm

16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows
GNU General Public License v2.0
2.68k stars 152 forks source link

clear carry in vtd gettime and restore fs on function return #1395

Closed cracyc closed 5 months ago

cracyc commented 7 months ago

ChromaZone uses vxd calls to get the tick count and expects carry to be clear on success. It also expects fs and gs to be saved across the call. I'm not sure if there are programs that expect them to be 0 on return, if there are some way to save them only across vxd calls should be found or maybe it's good enough to check if there selectors are invalid and just clear them in that case.

re: https://github.com/otya128/winevdm/issues/1394