Of course, it's always better to confirm with code than it is to speculate:
#include "Arduino.h"
void setup() {
Serial.begin(115200);
delay(1000);
pinMode(2, INPUT_PULLUP);
pinMode(3, INPUT_PULLUP);
// Set Interrupt Control Register A for FALLING
EICRA = (EICRA & ~((1 << ISC00) | (1 << ISC01))) | (FALLING << ISC00);
EICRA = (EICRA & ~((1 << ISC10) | (1 << ISC11))) | (FALLING << ISC10);
EIMSK = 0; // clear interrupt mask so ISR doesn't run
EIFR = 3; // clear INTF1 & INTF0
Serial.print("Flag Register = ");
Serial.println(EIFR, BIN);
Serial.print("Ground Pins 2 and 3, then press enter:");
while (Serial.available() == 0) {
}
Serial.println();
Serial.print("After setting, Flag Register = ");
Serial.println(EIFR, BIN);
EIFR = EIFR; // clear INTF1 & INTF0
Serial.print("After clearing, Flag Register = ");
Serial.println(EIFR, BIN);
}
void loop() {
}
Serial Monitor Output:
Flag Register = 0
Ground Pins 2 and 3, then press enter:
After setting, Flag Register = 11
After clearing, Flag Register = 0