-1

I 'm trying to send an IPI to myself.

Writing to APIC at position 0x310 and 0x300 succeeds (the interrupt is sent), but only once.

Next write does nothing, until I restart.

Any suggestions?

Michael Chourdakis
  • 10,345
  • 3
  • 42
  • 78

1 Answers1

0

I found it.

I should write to the EOI register.

; Write it to 0xB0 (EOI)
    MOV EDI,[DS:LocalApic]
    ADD EDI,0xB0
    MOV dword [FS:EDI],0
Michael Chourdakis
  • 10,345
  • 3
  • 42
  • 78