/*
 * Some handy 16F84 things
 *
 */
chip "16f84";
#include_only_once

#include <stdmac>
#include <tmr0ps>
#include <vref>

enum FOSC_LP, FOSC_XT, FOSC_HS, FOSC_RC;

enum PST0_2, PST0_4, PST0_8, PST0_16, PST0_32, PST0_64, PST0_128, PST0_256;
enum PSWDT_1, PSWDT_2, PSWDT_4, PSWDT_8, PSWDT_16, PSWDT_32, PSWDT_64, PSWDT_128;

area C7.0`2,	FOSC := FOSC_RC;	// default RC osc
area C7.2,	WDTE := 0;		// default wdt disabled
area C7.3,	PWRTE := 0;		// default pwrt enabled
area C7.4`10,	CP := -1;		// default no protection

// Bank 0
area R0,	INDF;
area R1,	TMR0;
area R2,	PCL;
area R3,	STATUS;
area		STATUS.0,	C, DC, Z, PD, TO;
area		STATUS.5`2,	RP;
area		STATUS.7,	IRP;
area R4,	FSR;
area R5,	PORTA;
area R6,	PORTB;
area R8,	EEDATA;
area R9,	EEADR;
area R10,	PCLATH;
area R11,	INTCON;
area		INTCON.0,	RBIF, INTF, T0IF, RBIE, INTE, T0IE, EEIE, GIE;

// Bank 1
area R1,	OPTION;
area		OPTION.0`3,	PS;
area		OPTION.3,	PSA, T0SE, T0CS, INTEDG, RBPU;
area R5,	TRISA;
area R6,	TRISB;
area R8,	EECON1;
area		EECON1.0,	RD, WR, WREN, WRERR, EEIF;
area R9,	EECON2;

