I found this header file for PIC microcontrollers by the name of pic1250.h and I\'m unable to get the hang of some syntax used in it.
The source for the file is:
It's a compiler extension.
From PIC MPLAB XC8 compiler documentation (emphasis mine):
5.5.4 Absolute Variables
Most variables can be located at an absolute address by following its declaration with the construct @ address, where address is the location in memory where the variable is to be positioned. Such a variables is known as an absolute variables.
5.5.4.1 ABSOLUTE VARIABLES IN DATA MEMORY
Absolute variables are primarily intended for equating the address of a C identifier with a special function register, but can be used to place ordinary variables at an absolute address in data memory.
For example:
volatile unsigned char Portvar @ 0x06;
will declare a variable called Portvar located at 06h in the data memory. The compiler will reserve storage for this object (if the address falls into general-purpose RAM) and will equate the variable’s identifier to that address.
Note that MPLAB XC8 is not the only compiler to have the same @ construct to place an object in the specific memory location.
Another well known compiler is Freescale CodeWarrior (at least for HCS08).
Another one is IAR C Compiler (at least for MSP430 and AVR).