Uploaded to ftp://ftp.devoresoftware.com/downloads, yes downloads, are emm386.zip (executable) and emm386sr.zip (source) fixing two minor problems with the official Tom Ehlert release of EMM386. The files are dated April 20, 2004. This version of EMM386 supports EMS 4.0 function 58h, so that it EMS will work with TDSK, and any other utility which might use function 58h. Additionally, EMM386 now shadows the ROM at FC00-FFFFh plus other stuff, to help some PC's which have problems rebooting via the BIOS call. You only really need this version of EMM386 if you use TDSK with EMS or have another program which is having problems with EMS, or if you use FDAPM or FDISK and their reboot commands. In the first of the two changes, both the 0 and 1 subfunctions of EMS 4.0 function 58h dealing with mappable page counts and info are now supported in EMM386. In the second change, EMM386 now shadows the 16K ROM block at FC00-FFFF so that it can modify instructions at the standard BIOS reboot address of FFFF:0. This is necessary because some BIOS's or environments are not compatible with operating in V86 mode under the EMM when rebooting the machine. They crash the machine instead, and not necessarily to a reboot condition. Now what EMM386 does is shadow the ROM address with RAM (just like the way UMB's work) and copy that original ROM block image to that RAM. It then writes an INT 9 instruction at address FFFF:0 in the RAM shadow memory, overwriting the original ROM instructions there. EMM386 already has a special interrupt vector check for INT 9 keyboard interrupt, so that it can catch Ctrl-Alt-Del keypresses. When those are detected, EMM386 reboots the machine either by port or by turning off protected mode and memory mapping, then jumping to ROM image address FFFF:0 in real mode. In the latest revision, I added code so that on entry to the V86 INT 9 handler, EMM386 checks to see if the INT 9 came from address FFFF:0. If so, it acts as if a Ctrl-Alt-Del key sequence was pressed. It's actually frightfully clever and I would be immoderately proud of myself were it not for the piddling fact that I scavenged all the good ideas from other code and people.