10 /* #define DEBUG_INT */
13 int do_int26(struct sigcontext_struct
*context
)
15 BYTE
*dataptr
= PTR_SEG_OFF_TO_LIN(DS
, BX
);
18 if(!DOS_ValidDrive(AL
))
21 AX
= 0x0101; /* unknown unit */
23 /* push flags on stack */
25 setword(PTR_SEG_OFF_TO_LIN(SS
,SP
), (WORD
) EFL
);
30 begin
= getdword(dataptr
);
31 length
= getword(&dataptr
[4]);
32 dataptr
= (BYTE
*) PTR_SEG_TO_LIN(getdword(&dataptr
[6]));
39 dprintf_int(stdnimp
,"int26: abs diskwrite, drive %d, sector %ld, "
40 "count %ld, buffer %d\n", (int)EAX
& 0xff, begin
, length
, (int) dataptr
);
44 /* push flags on stack */
46 setword(PTR_SEG_OFF_TO_LIN(SS
,SP
), (WORD
) EFL
);