OSCR
Open Source Cartridge Reader
Loading...
Searching...
No Matches
macros.h
Go to the documentation of this file.
1
5#pragma once
6#if !defined(OSCR_AVR_MACROS_H_)
7# define OSCR_AVR_MACROS_H_
8
9# include "arch.h"
10
11# if defined(OSCR_ARCH_AVR)
12
13# define NOP __asm__ __volatile__("nop\n\t")
14
15# define AVR_ASM(x) asm( x )
16# define AVR_INS(ins) ins "\n\t"
17
24# define __StringHelper __FlashStringHelper
25
30# define FS(pmem_string) (reinterpret_cast<__StringHelper const *>(pmem_string))
31
36# define FSP(pmem_string) (reinterpret_cast<char const *>(pmem_string))
37
42# define FP(pmem_pointer) ((char*)pgm_read_word(&(pmem_pointer)))
43
44
45# define LitStr(s) F(s)
46# define LitStr_P(s) PSTR(s)
47
48# endif /* OSCR_ARCH_AVR */
49
50#endif /* OSCR_AVR_MACROS_H_ */
Support Multiple Architectures.