Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

set CY before calling 21.71 or 21.73 DOS functions (LFN, FAT32) #168

Merged
merged 2 commits into from
Feb 20, 2025

Conversation

ecm-pushbx
Copy link
Contributor

Between the current lDOS kernel (which doesn't support 21.73), SRDISK, and dosemu2 revision 6a2f4f527 the return from 21.7303 somehow is with both Carry Flag and AX preserved. This makes the DIR command think that the call is supported when it isn't.

The proper check is to call with CY set before the call.

Between the current lDOS kernel (which doesn't support 21.73),
SRDISK, and dosemu2 revision 6a2f4f527 the return from 21.7303
somehow is with both Carry Flag and AX preserved. This makes the
DIR command think that the call is supported when it isn't.

The proper check is to call with CY set before the call.
@ecm-pushbx
Copy link
Contributor Author

There is another problem: EDR-DOS returns AX = 0000h from 21.7303. This is incorrectly detected as "not supported" in dir.c -- I will add another commit for that soon.

@ecm-pushbx
Copy link
Contributor Author

Reference on the correct "unsupported" return: https://sourceforge.net/p/freedos/mailman/message/59128382/

Incorrect interrupt list entry: https://fd.lod.bz/rbil/interrup/dos_kernel/217303.html

EDR-DOS returns NC, AX = 0000h from 21.7303. This was incorrectly
detected as "not supported" here. CF unchanged and AL = 00h is
the typical error return, albeit CF unchanged AX unchanged has
also been observed (on dosemu2 + lDOS + SRDISK).

Reference on the correct "unsupported" return:
https://sourceforge.net/p/freedos/mailman/message/59128382/

Incorrect interrupt list entry:
https://fd.lod.bz/rbil/interrup/dos_kernel/217303.html
@ecm-pushbx
Copy link
Contributor Author

Linked this PR from dosemu2/dosemu2#2395

@PerditionC PerditionC merged commit a6ffd2a into FDOS:master Feb 20, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants