Hello. Bart Oldeman wrote:
IIRC himem uses Big Real Mode for the 386, LOADALL for the 286
Yes, but 286 is a bit out of the scope:)
and int15 if (BRM/LOADALL) fails.
It checks the PE bit of cr0 before trying BRM, and if it is set, it does int15/ah=0x87: --- smsw ax shr ax, 1 ; Protected mode? jc MEM3_MoveBlock ; if so, use int 15h --- However int15/87h executes in protected mode and requires a pointer to GDT as a parameter, so again, I have a very big doubts it can work in v86: --- ; MEM3_MoveBlock ; Set up GDT and call int 15h Move Block [] mov ah, 87h ; Block Move - Assumes protect int 15h ; mode code will allow interrupts --- So again, whoever hooks int15, must either have a ring0 access to set up the GDTR for that GDT or, probably, it is also possible to just evaluate the necessary addresses from that GDT and do the transfer from within the ring3 (taking into an account also bases, access rights and all the other info from that GDT) but then who told that this can't work under cpu-emu?:) - To unsubscribe from this list: send the line "unsubscribe linux-msdos" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html