Commit Graph

105 Commits

Author SHA1 Message Date
oliverschmidt
d4528e427f Changed Contiki File System (cfs) from a service to a plain library.
This change means that one needs to select _ONE_ cfs implementation at Contiki library link time. But this doesn't appear to be an issue as all platforms have their "favorite" implementation anyway.
2007-05-19 21:16:08 +00:00
oliverschmidt
1e372f13c6 Added new include directory to VC++ project files. 2007-05-19 13:38:25 +00:00
oliverschmidt
eaff19200b Added new header file to VC++ project file. 2007-05-19 13:37:16 +00:00
oliverschmidt
237b1617b5 Factored out setup directory search path for source files into Makefile.include.
- Search target specific directories before CPU specific directories.
- Search CPU specific directories before generic directories.

Note: I checked several builds but nevertheless one or the other might need some additional adjustsments. Sorry for the inconvenience.
2007-05-13 08:41:11 +00:00
oliverschmidt
4fd1e3ece0 Added signed 32 bit data type. 2007-05-12 20:58:12 +00:00
oliverschmidt
42d0fe9c18 Very minor beautification. 2007-04-21 22:17:22 +00:00
oliverschmidt
3b7c27b9e9 Use generally lowercase names for functin variables. 2007-04-21 15:11:21 +00:00
oliverschmidt
dba1672323 Make use of __inline (just as making use of __fastcall) in order to check that CC_CONF_INLINE (just as CC_CONF_FASTCALL) are used in a syntactically correct manner. 2007-04-18 21:36:44 +00:00
oliverschmidt
33eeb8ccbb - Switched from from a CTK draw service to a statically linked CTK draw implementation.
- Workarounded the following CTK glitch:

ctk.c calls ctk_arch_keyavail() and ctk_arch_getkey() and needs therefore appropriate declarations (or macros) but it doesn't include a ctk_arch.h or alike to bring those in. So it's necessary to bring those declarations in via contiki-conf.h.

But ctk_arch_getkey() is supposed to return a ctk_arch_key_t - and this typedef'ed in ctk.h which means that ctk.h would need to be included in contiki-conf.h before declaring ctk_arch_getkey().

This IS rather undesirable so the current workaround is to declare ctk_arch_getkey() as returning a char - this is btw done similiar in platform/gtk as well. See ctk/ctk-gtksim.h:

guint ctk_arch_getkey(void);
2007-04-15 13:30:16 +00:00
oliverschmidt
f16d041476 Provided a meaningful clock_time() implementation - which btw. makes the Cygwin variant finally work :-) 2007-04-14 23:23:15 +00:00
oliverschmidt
3a8fb3ad9f Initializing the console Just-In-Time on CTK startup and starting up the WinPcap before CTK allows WinPcap to print initialization errors (especially a missing command line arg) without clearing the shell output. 2007-04-14 14:57:19 +00:00
oliverschmidt
c1b0a3f0d3 Cygin (in opposite to VC++) doesn't call exit() - and thus our atexit function - on Ctrl-C. Therefore we install an explict ConsoleCtrlHandler which calls exit(). For the sake of simplicity it's not #ifdef'ed _CYGWIN_. 2007-04-14 14:28:19 +00:00
oliverschmidt
766878f5c9 Added the shell server to the Win32 platform. 2007-04-13 21:55:55 +00:00
oliverschmidt
59c2158274 Removed minor redundancy. 2007-04-13 21:47:09 +00:00
oliverschmidt
7aae71934d Providing a dummy program_handler_load() made made the telnet server work without program-handler but on the other hand incompatible with an exsistng program handler :-(
Therefore I replaced that hack with a clean CONF macro, which by the way really removes the run() and exec() functionality instead of just implementing it empty.
2007-04-13 21:04:52 +00:00
oliverschmidt
36f6efd21c Build the web server with CTK support. 2007-04-11 01:08:46 +00:00
oliverschmidt
743ec10b21 Added copyright notice. 2007-04-11 01:07:47 +00:00
oliverschmidt
902e2226b6 Use the cpu/native/net WinPcap driver for platform/win32 as well. 2007-04-11 00:33:08 +00:00
oliverschmidt
0b140bdec4 Integrated WinPcap driver into platform/win32 Cygwin build. 2007-04-11 00:32:31 +00:00
oliverschmidt
ee6180dec6 Use the cpu/native/net WinPcap driver for platform/win32 as well. 2007-04-11 00:17:25 +00:00
oliverschmidt
38c3950d66 Link WinPcap packet driver statically into the main binary in preparation of removing the services. 2007-04-09 11:57:15 +00:00
oliverschmidt
9cc1871810 Fixed stupid bug. I have no idea how I didn't run into this one for months ! The development platforms have 400-600 bytes buffer size. So every incoming 1500 packet overwrote ~ 1000 bytes of uIP variables. And this happens very easily as every packet coming in for the Windows IP stack is seen by uIP as well (and discarded because of the wrong IP address). 2007-04-08 20:06:56 +00:00
oliverschmidt
d0e75920f1 Moved VC++ project files into vcproj subdirectory. 2007-04-06 23:53:59 +00:00
oliverschmidt
5653794966 Allow to build platform/win32 using Cygwin and the Contiki build system. The WinPcap driver is missing as it is about to be changed from dynamic to static loading anyway. 2007-04-06 23:09:32 +00:00
oliverschmidt
5532354cd8 Now that Contiki has a htonl() we need the same workaround here that we already have for htons(). 2007-04-06 22:36:31 +00:00
oliverschmidt
52da435b27 Made import library consistent with header file. 2007-03-27 20:01:35 +00:00
oliverschmidt
fe0e9fde11 Updated VC++ project file. 2007-03-27 19:59:06 +00:00
oliverschmidt
75f4408119 Autoload the WinPcap driver now that I consider it fully functional. 2007-01-03 10:36:58 +00:00
oliverschmidt
3229e5fa9d Minor source consistency improvement. 2006-12-29 00:06:32 +00:00
oliverschmidt
8b319eef83 Updated/improved documentation. 2006-10-14 23:48:51 +00:00
oliverschmidt
ca05ae80a5 Added automatic detection of Ethernet address - this makes the WinPcap packet driver service kind of working :-)
First the WinPcap library is used to enumerate the existing interfaces to make sure that only those are taken into account which the WinPcap library is able to actually work with. Their IP addresses are compaired against the one on the cmdline to find the desired interface.

Then the IP Helper API is used to enumerate the existing adapters to find out the the Ethernet address of the desired adapter. This Ethernet address is then used by Contiki too.
2006-10-06 22:39:31 +00:00
oliverschmidt
50fda17c3e Moved error_exit() to the Win32 Contiki Core. 2006-10-03 11:27:51 +00:00
oliverschmidt
58be00541d Added the CCIF (Contiki Core InterFace) declarations necessary for fatal error display on Win32. 2006-10-03 00:30:42 +00:00
oliverschmidt
d62f9608dc Improved error handling. 2006-10-03 00:28:36 +00:00
adamdunkels
a043ca000b Short description added 2006-10-02 22:06:14 +00:00
adamdunkels
8c080b3677 Brief instructions for getting started with Contiki for Windows 2006-10-02 20:08:40 +00:00
oliverschmidt
328071ff10 Added network support to the Win32 platform.
Network I/O is done using the usual suspect - which is WinPcap. There's no need for the WinPcap Developer's Pack! An ordinary WinPcap install - as it is i.e. part of Ethereal - is sufficient.

The code is still under development. But as I recently successfully opened HTML pages with the Contiki web browser I thought it might be the right time for an initial commit.
2006-09-23 20:25:02 +00:00
oliverschmidt
f601f3a0ac Added the CCIF (Contiki Core InterFace) declarations necessary for logging from loadable code on Win32. 2006-09-23 20:12:40 +00:00
oliverschmidt
253dcb44ce Replaced Win32 ctrl-c handler with C-library atexit handler (taking care of ctrl-c too) now that we have a Contiki Quit menu calling exit(). 2006-09-09 23:20:39 +00:00
oliverschmidt
e3dab56825 Do a consistent non-UNICODE build. 2006-09-09 23:13:09 +00:00
oliverschmidt
162ca26b65 Activated quit menu option. 2006-08-30 22:41:52 +00:00
oliverschmidt
301c1f45cf Move the strcasecmp macro out of the diretory app context now that it is used in the shell app too. 2006-08-30 22:07:53 +00:00
oliverschmidt
67d7c515a4 Added missing header files to VC++ project file. 2006-08-26 23:50:45 +00:00
oliverschmidt
a72fdc7208 Fixed discrepancy between makefile and VC++ project file. 2006-08-26 23:43:03 +00:00
oliverschmidt
c32390ab76 Added VC++ 2005 solution file (.sln) and project files (.vcproj).
Please note that the VC++ 2005 Express Edition combined with the Platform SDK - which are both free downloads - are sufficient to build, run and debug Contiki on Win32.
2006-08-21 22:37:16 +00:00
oliverschmidt
3de5f38218 Avoid temporary console window scroll on redraw due to writing to lower right screen cell. 2006-08-21 22:27:10 +00:00
oliverschmidt
155b37491c Some object files made from *_dsc.c files get linked both into the Contiki core (for desktop icons) as well as into *.dsc files. So make sure that the *_dsc symbol gets exported regardless in which context the object files are made. 2006-08-16 22:47:01 +00:00
oliverschmidt
62fa3b8c01 Changed the Contiki Interface declaration macros from CCI/CLI to CCIF/CLIF because of already existing macros: Both CCI and CLI :-( 2006-08-15 14:46:33 +00:00
oliverschmidt
ad7bbcdf17 Now that they assumed a shape ... 2006-08-14 23:53:55 +00:00
oliverschmidt
15154b071e The *-arch.h files seem to be out of style in Contiki 2.x so removed the only Win32 one - most of the content will show up in the (one and only) Win32 conf header. 2006-08-14 23:50:51 +00:00
oliverschmidt
56b07d90a6 Improved code clarity by moving the API macros definitions to the support function declarations. 2006-08-14 23:46:43 +00:00
oliverschmidt
bace5b3481 Removed obsolete header include. 2006-08-14 23:42:33 +00:00
oliverschmidt
96d97031d6 Added a Win32 dll loader for loading/unloading *.prg and *.dsc files. It requires at least WinXP as it uses GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS flag for unloading. The "self-unloading" via LOADER_UNLOAD() is implemented by defering the actual unload until back in the main loop using a user-mode APC (Asynchronous Procedure Call). 2006-08-13 16:49:43 +00:00
oliverschmidt
f0e9388fed Added a Win32 Console Program based CTK (Contiki Tool Kit) conio low level library. Beside the core/lib/libconio.h interface it implements the CTK mouse interface. 2006-08-13 16:36:01 +00:00
oliverschmidt
92c982f829 Added a Win32 CFS (Contiki File System) service. The opendir() parameter "/" is mapped to the directory containing contiki.exe. That allows easy access to *.prg and *.dsc files which are supposed to reside in the same directory. 2006-08-13 16:23:10 +00:00