IRET for INT 3 was accidentally placed in the same memory location as the fake SFT, move the IRET

This commit is contained in:
Jonathan Campbell
2024-06-02 18:50:53 -07:00
parent 1ce9c83895
commit 1544a71ddb
2 changed files with 3 additions and 1 deletions

View File

@@ -1,4 +1,6 @@
Next:
- DOS kernel: Interrupt handler IRET was accidentally placed within
the SFT table, move it up to resolve the conflict. (joncampbell123).
- Local DOS drive support: On Windows, if the guest is attempting to
create a hidden file, make sure to call the right APIs to create a
hidden file on the host. Not only is this needed to create a hidden

View File

@@ -581,7 +581,7 @@ void DOS_SetupMemory(void) {
assert(DOS_IHSEG != 0);
ihseg = DOS_IHSEG;
ihofs = 0xF4;
ihofs = 0xCC; /* 0xF4 conflics with SFT */
real_writeb(ihseg,ihofs,(uint8_t)0xCF); //An IRET Instruction
if (machine != MCH_PCJR) RealSetVec(0x02,RealMake(ihseg,ihofs)); //BioMenace (segment<0x8000). Else, taken by BIOS NMI interrupt