Skip to content

Missing interrupt handler 0x21, operation=0x67 #2231

Description

@gregoral

When I try to execute an executable I immediately get an exception.

Spice86.Core.Emulator.InterruptHandlers.UnhandledInterruptException
Error is: callbackNumber=0x21, operation=0x67

To Reproduce
It will be hard to reproduce without an executable that tries to call this specific interrupt.

Expected behavior
Spice86 should be able to handle this interrupt.

Desktop (please complete the following information):

  • OS: Windows
  • Version 11

Additional context
This is the code from DOSBox that handles this interrupt:

case 0x67:                    /* Set handle count */
/* Weird call to increase amount of file handles needs to allocate memory if >20 */
{
    DOS_PSP psp(dos.psp());
    psp.SetNumFiles(reg_bx);
    CALLBACK_SCF(false);
    break;
};

I'm willing to create a fix.
As discussed on discord, I will fork the repo and prepare a PR with a fix for the issue.

Metadata

Metadata

Assignees

Labels

DOSRelated to DOScompatibilityEmulator compatibility with DOS apps

Type

Fields

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions