// @(#) $Header: /usr/local/scalawags_cvs/Scalawags/Frc2006/sim/simfuncs.h,v 1.17 2005/12/24 01:36:50 abrown Exp $
/***********************************************************************
  * Copyright (C) 2004,2005  Allen Brown
  * 
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  * 
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  * 
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the
  *   Free Software Foundation, Inc.
  *   59 Temple Place, Suite 330
  *   Boston, MA  02111-1307  USA
  * 
  * To contact the author of this software:
  *   Allen Brown
  *   PO Box J
  *   Corvallis, OR
  * 
  *   http://brown.armoredpenguin.com/~abrown/contact.html
  ***********************************************************************/

#ifndef simfuncs_h
  #define simfuncs_h
  #if defined(ABSIMULATION_NOCOPROCESSOR) || defined(ABSIMULATION_COPROCESSOR)\
      || defined(ABSIMULATION_COPRSIM) \
      || defined(COPROCESSOR_STANDALONE) || defined(COPROCESSOR_SIMULATION)
    #include "../ifi_aliases.h"
    #include "../ifi_default.h"
  #endif
  #if defined(ABSIMULATION_NOCOPROCESSOR) || defined(ABSIMULATION_COPROCESSOR) \
      || defined(ABSIMULATION_COPRSIM)
     int GetInput(void);
     void PutFast(void);
    #ifdef MAIN
      #define EXTERN
       unsigned int ADC_CH0=0, ADC_CH1=1, ADC_CH2=2, ADC_CH3=3,
	 ADC_CH4=4, ADC_CH5=5, ADC_CH6=6, ADC_CH7=7;
    #else
      #define EXTERN extern
       extern unsigned int ADC_CH0, ADC_CH1, ADC_CH2, ADC_CH3;
       extern unsigned int ADC_CH4, ADC_CH5, ADC_CH6, ADC_CH7;
    #endif
     EXTERN unsigned int actual_rc_ana[8];
  #endif
#endif

/*
 * $Log: simfuncs.h,v $
 * Revision 1.17  2005/12/24 01:36:50  abrown
 * Split the old target ABSIMULATION_COPROCESSOR into two.  Now
 * ABSIMULATION_COPROCESSOR includes a physical coprocessor.  The new
 * target, ABSIMULATION_COPRSIM, includes a simulated coprocessor.
 *
 * Revision 1.16  2005/05/13 23:47:00  abrown
 * Remove __ from defines.  Move Log to end of file.
 *
 * Revision 1.15  2005/04/30 18:05:04  abrown
 * Convert from obsolete defines to the new ones.
 *
 * Revision 1.14  2005/03/13 20:33:44  abrown
 * In a fairly kludgy way, add in support for rc_ana_in*.  This really
 * should be cleaned up some day.  But it require dealing with 10 bit
 * words being sent between Tcl and C.
 *
 * Revision 1.13  2005/02/19 06:51:45  abrown
 * Define ADC_CH0 (also known as rc_ana_in01).
 *
 * Revision 1.12  2005/02/17 02:33:19  abrown
 * Move simfuncs into the sim directory.
 *
 * Revision 1.11  2005/02/13 20:18:56  abrown
 * The merge effort between FRC and simulator in main.  It doesn't
 * work on the FRC yet.  But it got checked in anyway, so now I
 * need to make it work quickly.
 *
 * Revision 1.10  2005/01/14 03:35:27  abrown
 * Added rudimentary com link to a coprocessor.
 *
 * Revision 1.9  2005/01/09 05:15:00  abrown
 * Update to 2005 default code base. -- Allen Brown
 *
 * Revision 1.8  2004/12/29 05:24:37  abrown
 * Remove some function declarations that are declared elsewhere:
 * Set_Number_of_Analog_Channels, Initialize_Serial_Comms,
 * User_Proc_Is_Ready, Getdata, Putdata.  Define new message:
 * MSG_TEXIT.
 */


syntax highlighted by Code2HTML, v. 0.9.1