Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

config.h

Go to the documentation of this file.
00001 
00006 /*
00007  *  The contents of this file are subject to the Mozilla Public License
00008  *  Version 1.0 (the "License"); you may not use this file except in
00009  *  compliance with the License. You may obtain a copy of the License at
00010  *  http://www.mozilla.org/MPL/
00011  *
00012  *  Software distributed under the License is distributed on an "AS IS"
00013  *  basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
00014  *  License for the specific language governing rights and limitations
00015  *  under the License.
00016  *
00017  *  The Original Code is legOS code, released October 17, 1999.
00018  *
00019  *  The Initial Developer of the Original Code is Markus L. Noga.
00020  *  Portions created by Markus L. Noga are Copyright (C) 1999
00021  *  Markus L. Noga. All Rights Reserved.
00022  *
00023  *  Contributor(s): Markus L. Noga <markus@noga.de>
00024  */
00025 
00026 #ifndef __config_h__
00027 #define __config_h__
00028 
00029 // compilation environment
00030 //
00031 //#define CONF_RCX_COMPILER //!< a special RCX compiler is used.
00032 #define CONF_HOST
00033 
00034 // core system services
00035 //
00036 #define CONF_TIME   
00037 #define CONF_MM     
00038 #define CONF_TM     
00039 #define CONF_TM_VIS   
00040 #define CONF_TM_DEBUG           
00041 #define CONF_SEMAPHORES         
00042 #define CONF_PROGRAM          
00043 
00044 // networking services
00045 //
00046 #define CONF_LNP    
00047 //#define CONF_LNP_VIS    
00048 //#define CONF_LNP_FAST        
00049 #define CONF_LNP_HOSTADDR 0x8 
00050 #define CONF_LNP_HOSTMASK 0xf0  
00051 
00052 // drivers
00053 //
00054 //#define CONF_DKEY   //!< debounced key driver
00055 //#define CONF_LCD_REFRESH  //!< automatic display updates
00056 //#define CONF_CONIO    //!< console
00057 //#define CONF_ASCII    //!< ascii console
00058 //#define CONF_DSOUND   //!< direct sound
00059 //#define CONF_DMOTOR             //!< direct motor 
00060 //#define CONF_DSENSOR            //!< direct sensor
00061 //#define CONF_DSENSOR_ROTATION //!< rotation sensor
00062 //#define CONF_DSENSOR_SWMUX      //!< techno-stuff swmux sensor
00063 
00064 // dependencies
00065 //
00066 #if defined(CONF_ASCII) && !defined(CONF_CONIO)
00067 #error "Ascii needs console IO"
00068 #endif
00069 
00070 #if defined(CONF_DKEY) && !defined(CONF_TIME)
00071 #error "Key debouncing needs system time."
00072 #endif
00073 
00074 #if defined(CONF_TM) && !defined(CONF_TIME)
00075 #error "Task management needs system time."
00076 #endif
00077 
00078 #if defined(CONF_TM) && !defined(CONF_MM)
00079 #error "Task management needs memory management."
00080 #endif
00081 
00082 #if defined(CONF_MM) && defined(CONF_TM) && !defined(CONF_SEMAPHORES)
00083 #error "Tasksafe memory management needs semaphores."
00084 #endif
00085 
00086 #if defined(CONF_LNP) && defined(CONF_TM) && !defined(CONF_SEMAPHORES)
00087 #error "Tasksafe networking needs semaphores."
00088 #endif
00089 
00090 #if defined(CONF_PROGRAM) && (!defined(CONF_TM) || !defined(CONF_LNP))
00091 #error "Programm support needs task management and networking"
00092 #endif
00093 
00094 #if defined(CONF_DSENSOR_ROTATION) && !defined(CONF_DSENSOR)
00095 #error "Rotation sensor needs general sensor code."
00096 #endif
00097 
00098 #endif // __config_h__

Generated on Fri Feb 25 08:02:34 2005 for brickos by  doxygen 1.3.9.1