# CARD_UnlockRom

## Syntax

  `#include <nitro/card.h>`
  `void CARD_UnlockRom(u16 lock_id);`

## Arguments

`lock_id` | ID used for locking a card

## Return Values

None.

## Description

Unlocks the access bus to a Game Card ROM device. If another module (with another ID) is already waiting for release, access rights go to the waiting module.
If the specified ID refers to a device that is currently locked, the bus is unlocked, and control is returned.
If the ID refers to a device that is not currently locked, a warning message is output, and the `OS_Panic` function forcibly stops the process.
The function identifies devices with ROM when it executes, automatically selecting the Game Card or Game Pak and unlocking the bus.

## Note

All functions that access a Game Card ROM device must first lock the access bus.
You cannot access a Game Card ROM device and a backup device simultaneously.
While one bus is locked, other bus locks are forced to wait.

## See Also

`OS_UnlockCard`
`OS_UnlockCartridge`
`CARD_LockRom`

## Revision History

2009/01/30 Corrected the explanation of behavior for an invalid lock ID.
2004/09/06 Corrected the description of the prototype.
2004/08/31 Added description that indicates that this function will always succeed.
2004/08/04 In Description, changed "unlock" to "release" in one place.
2004/07/23 Changed lock ID type from `u32` to `u16`.
2004/07/10 Added description concerning bus lock and exclusive control of access with backup device.
2004/07/05 Initial version.

CONFIDENTIAL