#include "scsGimbal/ArduWin.h"

int main()
{
    std::cout << "Hello World!\n"; 
}

CSerial SerialUSB;
CSerial Serial1;
CSerial Serial2;
CSerial Serial3;
CSerial Serial4;
CSerial Serial5;
CSerial Serial6;
TimerThree Timer1;
TimerThree Timer3;
//int REG_PIOC_PDSR;
void TimerThree::initialize(int){};
void TimerThree::attachInterrupt(void *){};
int UART0_S1;
int UART0_D;
int UART1_S1;
int UART1_D;
int UART2_S1;
int UART2_D;
int UART3_S1;
int UART3_D;
int PINC;
int PIND;
int GPIOC_PDIR;
int GPIOD_PDIR;
int DDRC;
int DDRD;

//--------------------------------------------------------------------
// Serial
//--------------------------------------------------------------------

void CSerial::begin(long){}
void CSerial::begin(long, long){}
void CSerial::print(const char *pString){}
void CSerial::println(){}
void CSerial::flush(){}
void CSerial::println(char *pString){}
void CSerial::println(int value, int){}
void CSerial::println(unsigned int value, int){}
void CSerial::write(void*, int){}
void CSerial::write(int){}
void CSerial::println(unsigned long value, int){}
int CSerial::available(){return 0;}
int CSerial::availableForWrite(){return 0;}
void CSerial::addMemoryForRead(void *buffer, size_t length){};
void CSerial::addMemoryForWrite(void *buffer, size_t length){};

char CSerial::read(){return 0;}
void CSerial::_append(char c){}
void CSerial::setTimeout(int timeout){}
int CSerial::readBytes(char *c, int len){ return 0; }

//--------------------------------------------------------------------
// I/O
//--------------------------------------------------------------------

void pinMode(int, int){}
void analogWriteFrequency(int, int){}
void digitalWrite(int, int){}
void digitalWriteFast(int, int){}
void analogWrite(int, int){}
bool digitalRead(int){ return 0; }
bool digitalReadFast(int){ return 0; }
bool analogRead(int){ return 0; }
void analogReadResolution(int){}
void noInterrupts(){};
void interrupts(){};

//--------------------------------------------------------------------
// Timers
//--------------------------------------------------------------------

unsigned long millis(){ return 0; }
