Commit Graph

186 Commits

Author SHA1 Message Date
matsutsuka
efbe8ab536 renamed contiki-sdcc-conf.h to z80def.h in order to follow the convention of cpu-dependent configuration header file name. 2007-09-07 04:59:06 +00:00
nvt-se
b4f3ab5af7 Added support for configurable callbacks of uart1 input. 2007-09-06 11:45:08 +00:00
matsutsuka
d44a1e97e6 int32_t typedef is added to make compatibility with rand.c 2007-09-06 01:41:05 +00:00
matsutsuka
582a7476d4 *-dsc.c files have been changed to remove forward reference for struct_icon variable, bacause it is strange that this variable is used wholly inside the C source file and declared extern for the forward reference. 2007-09-06 01:36:10 +00:00
oliverschmidt
89e81f9eed Renamed 6502-conf.h into 6502def.h to be in line with similiar files created in the meanwhile and added C99 names. 2007-09-05 10:59:10 +00:00
joxe
aaae9f4cf8 removed redundant code - configuration of basic clock subsystem in clock and rtimer_arch 2007-09-03 19:22:37 +00:00
matsutsuka
4766593ff7 Add assembler checksum calculation support for z80 port. 2007-09-01 11:14:50 +00:00
ksb
af9bf1810c The file is generated from string-descriptors.xml, but since it probably won't change and not everyone has xsltproc I'm putting it in CVS. 2007-09-01 10:12:54 +00:00
ksb
9d5a2aed80 Added USB (specifically CDC-ACM) support 2007-09-01 10:00:35 +00:00
matsutsuka
3af69d229a Added some comments. 2007-09-01 01:09:25 +00:00
matsutsuka
cc2b6e58d7 Followed a coding convention of contiki, in which cast operation should not be followed by a space char. 2007-09-01 01:08:07 +00:00
oliverschmidt
34af8fbc1a Fixed recent change. 2007-08-30 20:47:14 +00:00
matsutsuka
9d4fc0a1a8 Support for z80(sdcc) port.
In order to support, some core modules are modified as follows:

core/sys/dsc.h
- If CTK_CONF_ICONS is diabled, the whole icon-related code is disabled.
- DSC_HEADER is changed to remove extra semicolon.

core/sys/process.h
- process_data_t is expressed by void* in signatures (known bug on sdcc).

core/sys/autostart.h
- autostart_processes is changed to remove extra semicolon.

core/sys/cc.h
- CC_CONF_ASSIGN_AGGREGATE is introduced.
- CC_CONF_INC_CAST_POINTER is introduced, a workaround of a kind
  of sdcc bug for an increment.

core/net/hc.c
core/net/uip_arp.c
core/net/uaodv.c
- Aggregation assignments are changed to uip_ipaddr_copy.

core/net/psock.c
core/net/uipbuf.c
core/net/dhcpc.c
apps/shell/shell.c
core/ctk/vnc-server.c
core/ctk/vnc-out.c
- "register" keyword in a signature cannot be used in sdcc,
  CC_REGISTER_ARG is used instead.

core/net/uip-over-mesh.c
- An extra semicolon is removed.

apps/dhcp/dhcp-dsc.c
apps/shell/shell-dsc.
apps/ftp/ftp-dsc.c
apps/process-list/process-list-dsc.c
apps/email/email-dsc.c
apps/webserver/webserver-dsc.c
apps/vnc/vnc-dsc.c
apps/vnc/vnc-viewer.h
apps/webbrowser/www-dsc.c
apps/about/about-dsc.c
apps/irc/irc-dsc.c
apps/telnet/telnet-dsc.c
apps/telnetd/telnetd-dsc.c
apps/netconf/netconf-dsc.c
apps/directory/directory-dsc.c
pps/calc/calc-dsc.c
- Modify an extern type to a real declaration, which is static
  to prevent a compile error.

core/net/mac/xmac.c
- Variables cannot be defined in a head of block on sdcc.

core/ctk/ctk.h
core/ctk/ctk.c
apps/program-handler/program-handler.c
- If CTK_CONF_ICONS is diabled, the whole icon-related code is disabled.

Makefile.include
- Add a set of configuration for an assembler.
- $(CLEAN) variable is introduced for customized cleanup.

apps/process-list/process-list.c
- PROCESSLIST_CONF_HEIGHT is introduced to address smaller screen size.

core/lib/ctk-filedialog.c
- FILES_CONF_HEIGHT is introduced to address smaller screen size.
- "register" keyword in a signature cannot be used in sdcc,
  CC_REGISTER_ARG is used instead.

apps/vnc/vnc-viewer.c
- A cast is added to prevent a compile error.
- "register" keyword in a signature cannot be used in sdcc,
  CC_REGISTER_ARG is used instead.

apps/webbrowser/webclient.c
- CC_CONF_INC_CAST_POINTER is introduced, a workaround of a kind
  of sdcc bug for an increment.

core/loader/elfloader.c
- A cast is added to prevent a compile error.

core/net/rime/rimeaddr.c
- An initialization is added to prevent a compile error.

core/net/rime/rudolph0.c
- NULL is changed to 0, because NULL causes a compile error.

core/net/rime/route-discovery.c
- Add an argument to match the definition of nf_callbacks.

cpu/z80/strcasecmp.h
cpu/z80/strcasecmp.c
cpu/z80/contiki-sdcc-conf.h
cpu/z80/mtarch.c
cpu/z80/mtarch.h
cpu/z80/Makefile.z80
- New files to make compilation availble on sdcc.
- Added support for multithreading.
2007-08-30 14:39:16 +00:00
ksb
792eae91c6 rtimer implementation (not well tested)
sprintf that use strformat, so there's no need to pull in the newlib
implementation.
Build system improvements.
2007-08-21 09:03:55 +00:00
bg-
0fedf8845d * Standard defines for AVR. 2007-08-16 13:20:09 +00:00
bg-
dcafdfe51a * Standard defines for MSP430. 2007-08-16 13:09:06 +00:00
oliverschmidt
63a6493e5c Made tapdev and wpcap driver similiar making up a "driver template". 2007-08-10 14:59:59 +00:00
oliverschmidt
1c77f6f1d5 - The cc65 assembler variable 'ptr1' (a general zero page pointer) is actually part of the cc65 zero page area so it's a bad idea (tm) to use it in swapping that very area.
- The cc65 assembler variable 'sp' (the pointer to the C stack) is actually part of the cc65 zero page area so there's no need to manage it explicitly. Furthermore it is known to reside at the very start of the area so it can be initialized there for new threads.
2007-08-10 10:45:35 +00:00
oliverschmidt
9399718ede Cosmetic change... 2007-05-29 22:25:49 +00:00
oliverschmidt
b23f4fc89d Added a Contiki clock_time() implementation based on the cc65 clock() implementation. 2007-05-29 21:56:21 +00:00
oliverschmidt
c874d56f32 Clock implementations are typically not located in a lib subdirectory. 2007-05-27 21:29:18 +00:00
oliverschmidt
75f04995a9 Changed packet drivers from services to plain processes.
Now tcpip_output() is a function pointer that is supposed to be set via the macro tcpip_set_outputfunc(). Packet drivers do so on process startup.

Thus if there are several packet drivers in a Contiki system the one started last is the one actually used. This behaviour is especially useful for the 'IP forwarding' "meta" packet driver.
2007-05-26 23:05:36 +00:00
oliverschmidt
6ab3a6d1e3 Fixed copy&paste bug. 2007-05-26 22:51:38 +00:00
oliverschmidt
f0d5a14745 Moved into backyard as it was never ported to Contiki 2.x. 2007-05-26 21:28:30 +00:00
adamdunkels
2c53a38075 Architecture dependent code for the CC2420 driver 2007-05-25 08:07:54 +00:00
oliverschmidt
9ab8b78381 Moved cc65 loader requiring "labels hack" into backyard. 2007-05-23 23:49:45 +00:00
oliverschmidt
a22c543b1a Moved cc65 specific app into backyard. 2007-05-23 23:47:16 +00:00
oliverschmidt
1629c207b5 That PROCESS_EXITHANDLER() thing was after all kind of overengineered... 2007-05-23 22:13:29 +00:00
oliverschmidt
0bf8c95b79 Made use of exit handler. 2007-05-22 22:01:03 +00:00
adamdunkels
00b1e371cf Added energy estimation, disabled IRQs for A/D converting as it used close to 100% CPU time 2007-05-22 21:01:32 +00:00
adamdunkels
3872d004bc Reading timer now quicker, embryo for possible future drift configuration 2007-05-22 21:00:09 +00:00
adamdunkels
432d242a3c Added energy estimation, embryo for possible future drift configuration 2007-05-22 20:59:47 +00:00
adamdunkels
9a5bac6282 Added energy estimation 2007-05-22 20:59:11 +00:00
bg-
3f4ec3cf44 * Use _end rather than nonstandard __bss_end. 2007-05-21 15:29:46 +00:00
bg-
d68e4bd3df * Add missing file. 2007-05-21 14:28:14 +00:00
oliverschmidt
5f3296e943 Changed packet drivers from services to plain processes.
Now tcpip_output() is a function pointer that is supposed to be set via the macro tcpip_set_outputfunc(). Packet drivers do so on process startup.

Thus if there are several packet drivers in a Contiki system the one started last is the one actually used. This behaviour is especially useful for the 'IP forwarding' "meta" packet driver.
2007-05-20 21:29:39 +00:00
oliverschmidt
61f54204d7 Improved map file naming consistency. 2007-05-19 21:46:43 +00:00
oliverschmidt
51509fa49a Added dummy value to allow for building. 2007-05-19 13:20:37 +00:00
oliverschmidt
ae2073cac9 Factored out setup directory search path for source files into Makefile.include.
- All compilers used support the -I option for setting an include search directory.

- The Contiki source tree follows the (common) approach of placing declarations (in headerf iles) in the same directory as definitions (in source files).

As a result it makes sense to use the -I compiler option for just the same set of directories used for the vpath gnumake directive.

Note: I checked several builds but nevertheless one or the other might need some additional adjustsments. Sorry for the inconvenience.
2007-05-19 07:54:53 +00:00
adamdunkels
4364a9929a Removed WITH_UIP 2007-05-15 08:09:45 +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
8d3496194f Added Multithreading support to the cc65 targets based on the Contiki 1.x C64 implementation with the following changes:
- Added support for the function parameter.
- Removed support for preemption because:
  - No other current implementation does so.
  - Preemption support would make the code at least target-dependent or it wouldn't work at all (as on plain Apple2 machines without timer interrupt).
2007-04-21 22:15:45 +00:00
oliverschmidt
ec2411d5ea Structured the cc65 makefile like all the other makefiles in the Contiki 2.x build system. 2007-04-21 15:04:23 +00:00
oliverschmidt
5d62bbd039 Used SED to replace the assembler sources with the objects in the dependency file generated by the cc65 compiler. This allows to hide the assembler sources from GNU make which solves several issues. Now the cc65 toolchain behaves very similiar to gcc from the GNU make perspective. 2007-04-21 13:23:47 +00:00
oliverschmidt
48977bd89f Replaced the PROJECT_OBJECTFILES hack with puting the Contiki library (containing contiki-main.o) and the cc65 libary into a cc65 "library group" which allows mutual crossreferences between the libraries in the group. 2007-04-18 22:52:22 +00:00
oliverschmidt
f3502e2ca4 Added NOP headers in order to allow build. 2007-04-18 21:38:55 +00:00
oliverschmidt
c7e8ac499e Consistently use curly brackets for function calls (and add the same disclaimer as used in "my" other makefiles). 2007-04-14 15:55:50 +00:00
oliverschmidt
9cf544c45e Added the same disclaimer as used in the header file. 2007-04-14 15:48:42 +00:00
oliverschmidt
274afdb55c Made driver compilable with both Cygwin and VC++ (and usable for platform/win32 by using logging API). 2007-04-11 00:21:28 +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
adamdunkels
b2b750e83b rtimer_arch_now() now returns the correct value 2007-04-07 05:45:08 +00:00
oliverschmidt
e37d79e4a3 Don't rely on gcc's auto-import feature. 2007-04-07 00:27:22 +00:00
oliverschmidt
e5d3453a79 Minor code formatting change. 2007-04-05 19:42:47 +00:00
oliverschmidt
be08e76366 Now that Contiki has a htonl() we need the same workaround here that we already have for htons(). 2007-04-05 19:41:02 +00:00
bg-
8aa34f1ea4 * remove author. 2007-04-04 11:53:07 +00:00
adamdunkels
08d825c450 Added rtimer-arch.c 2007-04-03 19:05:13 +00:00
adamdunkels
b108ca702a Fixed description 2007-04-03 19:04:27 +00:00
adamdunkels
00645113e5 MSP430 real-time rtimer support using timerb1 2007-04-03 19:03:09 +00:00
oliverschmidt
d41c0671d9 Ooops, that was one level of indirection to much. 2007-04-03 18:37:15 +00:00
oliverschmidt
aa4434ca55 CPU agnostic implementation of the platform specific part of the multi-threading library. Uses fibers on Windows and the ucontext functions on other platforms. 2007-04-03 00:40:51 +00:00
joxe
8add3d4660 corrected comments 2007-04-02 16:32:20 +00:00
oliverschmidt
5bceecfbb0 Added Cygwin networking support using WinPcap. 2007-04-01 21:05:17 +00:00
oliverschmidt
01b9b31952 Moved wpcap*.[ch] from platform/minimal-net/net to cpu/native/net. 2007-04-01 20:39:05 +00:00
adamdunkels
e6301c6221 Moved tapdev*.[ch] from platform/netsim/net and platform/minimal-net/net to cpu/native/net 2007-03-31 18:49:37 +00:00
adamdunkels
c4300e8e8d Added #include that #defines NULL 2007-03-31 11:19:08 +00:00
adamdunkels
92e5e7a13c Removed clock_delay() 2007-03-29 23:43:59 +00:00
adamdunkels
7db75a8aa6 x86 elfloader 2007-03-28 20:27:13 +00:00
adamdunkels
7f4014ca4d Preliminary implementation of the rtimer architecture functions for the native CPU 2007-03-28 20:09:09 +00:00
adamdunkels
fbd01ee50b Added native CPU to avoid reliance on x86-specific code for the native and netsim platforms 2007-03-28 20:07:57 +00:00
adamdunkels
d2683224e9 Added clock_delay() between characters to avoid dropping them 2007-03-25 21:52:41 +00:00
adamdunkels
6a8d8e3abf Added experimental clock_fine() function 2007-03-25 21:51:31 +00:00
nifi
f0ce3a5292 Moved buildscripts from cpu/msp430 to platform/esb. 2007-03-23 16:19:41 +00:00
adamdunkels
8293e6215f Added elfloader-stub, symbols generation 2007-03-22 23:58:08 +00:00
adamdunkels
199e0cb30d Added NM definition 2007-03-22 23:57:33 +00:00
adamdunkels
011306ce54 LPM4_EXIT instead of LPM_AWAKE() 2007-03-21 23:23:43 +00:00
ksb
7c8665fb89 Padded struct codeprop_tcphdr to 4 bytes, to get around different
alignment on different platforms.
2007-03-18 13:15:00 +00:00
adamdunkels
b0b3e5d0d6 Redefined LD to gcc to make things compile. Removed generation of symbols.[ch] due to problematic builds (seemingly neverending loops). 2007-03-15 21:52:00 +00:00
adamdunkels
5a5313aa80 Added uip include and asmv definition to make it compile 2007-03-15 21:51:12 +00:00
adamdunkels
8f9aa7b2f7 Moved uip_ipchksum() into a separate file to allow the Tmote Sky port to be compiled entirely without uIP 2007-03-15 21:47:45 +00:00
adamdunkels
b7107c0eea Added uart1.c and the dev/ subdirectory 2007-03-15 21:46:43 +00:00
adamdunkels
329bb14d94 +copyright header 2007-03-15 21:39:23 +00:00
adamdunkels
36c17d22d0 uIP checksum calculation for MSP430 2007-03-15 21:38:46 +00:00
adamdunkels
c1df2e6df8 MSP430 definitions 2007-03-15 21:38:22 +00:00
adamdunkels
1fbc0aa5b7 UART1 driver 2007-03-15 21:37:19 +00:00
adamdunkels
574becc10e Interrupt arbitration for sensor drivers 2007-03-15 21:37:01 +00:00
ksb
b105b40e9a Added ELF-loader code, should probably eventually end up in core/loader.
Added some replacements for newlib's stdout.
Added missing startup code.
Some minor fixes.
2007-03-07 16:07:25 +00:00
oliverschmidt
5d2f948bba Allow to build the statically linked telnet-server and webserver examples using cc65. 2007-03-03 13:38:07 +00:00
oliverschmidt
73fabe4ba3 Factored out settings specific more to architecture and/or toolchain rather than specific target. 2007-03-03 10:05:03 +00:00
oliverschmidt
97681fdada The one and only uip_arch.h resides in core/net. 2007-03-03 09:48:39 +00:00
ksb
13af443115 CPU specific files for the AT91SAM7S ARM-based microcontrollers 2007-02-24 00:09:45 +00:00
bg-
429d41defd * General stuff for different baudrates:
- ubr argument to slip_arch_int

    - macros for calculating ubr

    - argument -Bbaudrate to tools tunslip and scat
2007-02-02 13:26:48 +00:00
bg-
2918e5ae20 SLIP for AVR on UART1 2007-02-02 13:13:16 +00:00
bg-
6257bb670b Rename cc2420_uart0.c to cc2420_spi.c 2007-02-01 14:46:07 +00:00
bg-
394992b99f * Workaround for bug in msp430-ld where __bss_end is sometimes
misaligned.

* Indent trailing brace properly.
2007-01-30 20:01:45 +00:00
bg-
a3fc32318e * Generic AVR stuff. 2007-01-25 18:24:29 +00:00
bg-
20fa9351f2 * First port of CC2420 driver to the AVR. 2007-01-25 18:22:55 +00:00
bg-
8ebe0466a0 * Defines for 8MHz cpus. 2007-01-25 17:55:13 +00:00
bg-
6dea7b68d1 * Fill clock_delay with something (needs rewriting). 2007-01-24 16:28:51 +00:00
adamdunkels
83b348631f Changed the generation of symbols to the mknmlist script. Now symbols.h is not automatically generated so we can use it as a normal include file and remove symbols-def.h. 2007-01-24 16:11:48 +00:00