# OS_EnableIrqMask

## Syntax

  `#include <nitro/os.h>`
  `OSIrqMask OS_EnableIrqMask( OSIrqMask intr );`

## Arguments

intr | The IRQ interrupt causes to be enabled (expressed as a logical sum).

## Return Values

Returns the IRQ interrupt cause parameters from before this function was called. See below for information about causes. The return value is the logical sum of the causes that were formerly set.

Types of Interrupts

## Description

Sets IRQ interrupt parameters. This function enables the designated causes in addition to the currently enabled parameters.

###
Types of Interrupts

Specify the interrupt causes to enable using the intr argument. See below for information on the types of interrupts.

Types of Interrupts

###
Example

> `// Enable V-Blank interrupts and DMA0 interrupts in addition to the current settings.
> OS_EnableIrqMask( OS_IE_V_BLANK | OS_IE_DMA0 );
> `

###
Note:

This function adds the specified causes in addition to the current settings. `OS_SetIrqMask` is used to overwrite and set a specific cause. However, because there may be interrupt cause settings defined by the system that we do not want to change, it is best not to use the `OS_SetIrqMask` function, because that overwrites all settings. In nearly all cases, the `OS_EnableIrqMask()` function should be used to set only the specified causes.

## Internal Operation

Operates on one of the I/O registers, IE (Interrupt Enable).

## See Also

`OS_DisableIrqMask`, `OS_SetIrqMask`

## Revision History

2008/05/30 Moved the types of interrupts to a separate page.
2005/03/08 Standardized the Japanese term for of "interrupt."
2004/03/12 Emphasized the differences with `OS_SetIrqMask()`.
2003/12/01 Initial version.

CONFIDENTIAL