// Rowley AVR C Compiler, runtime support.
//
// Copyright (c) 2004, 2010 Rowley Associates Limited.
//
// This file may be distributed under the terms of the License Agreement
// provided with this software.
//
// THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

#ifndef __ina90_H
#define __ina90_H

#include "inavr.h"

/*! \brief Disable interrupts and return original status register \ingroup Status register manipulation \synopsis

  \description see \ref __disable_interrupt
*/
#define _CLI() __disable_interrupt()

/*! \brief Enable interrupts and return original status register \ingroup Status register manipulation \synopsis

  \description see \ref __enable_interrupt
*/
#define _SEI() __enable_interrupt()

/*! \brief Disable interrupts and return original status register \ingroup Status register manipulation \synopsis

  \description see \ref __disable_interrupt
*/
#define disable_interrupt()  __disable_interrupt()

/*! \brief Enable interrupts and return original status register \ingroup Status register manipulation \synopsis

  \description see \ref __enable_interrupt
*/
#define enable_interrupt() __enable_interrupt()

/*! \brief NOP \ingroup Miscellaneous functions \synopsis

   \description see \ref __no_operation
*/
#define _NOP() __no_operation()

/*! \brief Put processor to sleep \ingroup Miscellaneous functions \synopsis

  \description see \ref __sleep
*/
#define _SLEEP() __sleep()

/*! \brief Reset the watchdog \ingroup Miscellaneous functions \synopsis

   \description see \ref __watchdog_reset
*/
#define _WDR() __watchdog_reset()

/*! \brief Insert an opcode \ingroup Miscellaneous functions \synopsis

  \description see \ref __insert_opcode
*/
#define _OPC(op) __insert_opcode(op)

/*! \brief Programmed breakpoint \ingroup Miscellaneous functions \synopsis

   \description see \ref __breakpoint
*/
#define _BREAK() __breakpoint();

#if 0
#ifndef _LPM
#define _LPM(ADDR) __load_program_memory(ADDR)
#endif

#ifdef __HAS_ELPM__
#ifndef _ELPM
#define _ELPM(ADDR) __extended_load_program_memory(ADDR)
#endif
#endif

#ifndef _EEPUT
#define _EEPUT(V,A) __EEPUT(V,A)
#endif

#ifndef _EEGET
#define _EEGET(V,A) __EEGET(V,A)
#endif
#endif

#endif