Exemplo n.º 1
0
int load_rc( void )
{
  int eax;
  FILE *fp;
  char buf[4096];
  char *cp;
  int rv;
  if ( cp )
  {
    __snprintf_chk( rc_file, 4096, 1, 4096, "%s/%s", cp, ".mathomaticrc" );
    fp = (FILE*)fopen( rc_file, "r" );
    if ( fopen( rc_file, "r" ) )
    {
      rv = 1;
      for ( ; fgets( buf, 4096, fp ) == 0;  )
      {
        set_error_level( &ebx );
        rv = set_options( cp ) == 0 ? rv : 0;
      }
    }
  }
  rv = 1;
  if ( 0 ^ 0 )
  {
    return rv;
  }
  return rv;
}
Exemplo n.º 2
0
void main(void){
  //turn on LED's this will flash the LED's during startup
  P7OUT=0xFF;
  P7DIR=0xFF;
  //DO this first
  ARC_setup(); 
  //TESTING: set log level to report everything by default
  set_error_level(0);
  //initialize UART
  UCA1_init_UART(UART_PORT,UART_TX_PIN_NUM,UART_RX_PIN_NUM);

  //setup bus interface
  initARCbus(0x1F);
  //init complete turn on LED0 and all others off
  P7OUT=BIT0;

  ctl_task_run(&terminal_task,BUS_PRI_LOW,terminal,"ARClib testing program ready","terminal",sizeof(terminal_stack)/sizeof(terminal_stack[0])-2,terminal_stack-1,0);
  ctl_task_run(&sub_task,BUS_PRI_HIGH,sub_events,NULL,"SUB_events",sizeof(sub_stack)/sizeof(sub_stack[0])-2,sub_stack-1,0);

  //main loop 
  mainLoop(); 
}
Exemplo n.º 3
0
int main(void){
  //DO this first
  ARC_setup(); 
  
  //setup system specific peripherals

  //setup mmc interface
  mmcInit_msp();
  
  //TESTING: set log level to report everything by default
  set_error_level(0);

#ifdef ACDS_BUILD
 //set all driver pins low
  P2OUT&=0x03;
  P4OUT&=0x03;
  P5OUT&=0x03;
  P6OUT&=0x03;
  P7OUT&=0x03;
  P8OUT&=0x03;
  //set pins to GPIO function
  P2SEL&=0x03;
  P4SEL&=0x03;
  P5SEL&=0x03;
  P6SEL&=0x03;
  P7SEL&=0x03;
  P8SEL&=0x03;
  //set driver pins as outputs
  P2DIR|=0xFC;
  P4DIR|=0xFC;
  P5DIR|=0xFC;
  P6DIR|=0xFC;
  P7DIR|=0xFC;
  P8DIR|=0xFC;
  //setup LED Pins
  P2SEL&=0xFC;
  P4SEL&=0xFC;
  P2OUT&=0xFC;
  P4OUT&=0xFC;
  P2DIR|=0x03;
  P4DIR|=0x03;
  //turn on power LED
  P2DIR|=BIT1;
  
  //setup bus interface
  initARCbus(BUS_ADDR_ACDS);
#else
  //setup P8 for output
  P8OUT=0x00;
  P8DIR=0xFF;
  P8SEL=0x00;
  
  //Turn off LED's
  P7OUT=0x00;
  P7DIR=0xFF;
  //turn on power LED
  P7OUT|=BIT4;

  //setup bus interface
  initARCbus(BUS_ADDR_IMG);
#endif


  //initialize stacks
  memset(stack1,0xcd,sizeof(stack1));  // write known values into the stack
  stack1[0]=stack1[sizeof(stack1)/sizeof(stack1[0])-1]=0xfeed; // put marker values at the words before/after the stack
  
  memset(stack2,0xcd,sizeof(stack2));  // write known values into the stack
  stack2[0]=stack2[sizeof(stack2)/sizeof(stack2[0])-1]=0xfeed; // put marker values at the words before/after the stack
    
  memset(stack3,0xcd,sizeof(stack3));  // write known values into the stack
  stack3[0]=stack3[sizeof(stack3)/sizeof(stack3[0])-1]=0xfeed; // put marker values at the words before/after the stack

  //create tasks
  ctl_task_run(&tasks[0],BUS_PRI_LOW,cmd_parse,NULL,"cmd_parse",sizeof(stack1)/sizeof(stack1[0])-2,stack1+1,0);
 
  ctl_task_run(&tasks[1],BUS_PRI_NORMAL,sd_term,(void*)&async_term,"terminal",sizeof(stack2)/sizeof(stack2[0])-2,stack2+1,0);

  ctl_task_run(&tasks[2],BUS_PRI_HIGH,sub_events,NULL,"sub_events",sizeof(stack3)/sizeof(stack3[0])-2,stack3+1,0);
  
  mainLoop();
}