crose@mhuxi.UUCP (rose) (06/21/84)
I have discovered a bug in the DOS 2.0 INT 25 system call. It may exist on other calls also. It is that the direction bit in the flags register must be set to UP when the INT is executed.If it is not, DOS returns an error and does not perform the operation. The error code returned is "Unknown operation". This bit is freely manipulated by the movmem() subroutine of Lattice C and maybe other routines as well. The symptom in my programs was that after a movmem call, calls to my logical read routine (using INT 25) would fail. Adding a CLD instruction (to set the direction to UP) in the logical read routine solved the problem. I have not tested any of the other DOS interrupts to see if they have the same problem. Carl Rose ...mhuxi!crose