mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-12-30 15:30:30 +00:00
fda46f6800
- cc65 2.13. allows to override the stacksize from the linker command line thus eliminating the need for linker configs maintained by Contiki. - cc65 2.13. integrates the startup code with the library. In 2.12. the startup code pulled in main(). Now main() is supposed to pull in the startup code. But if main() resides itself in a library (as with Contiki) then nothing is pulled in at all :-(. The workaround is to pull in main() explicitly through the new option -u (working like the same GCC option). |
||
---|---|---|
.. | ||
ctk | ||
lib | ||
net | ||
sys | ||
6502def.h | ||
Makefile.6502 | ||
README |
The cpu/6502/ directory is used for targeting 6502-based machines using the cc65 compiler (http://www.cc65.org/). In almost all cases it is preferable to go for a recent snapshot instead of the latest official version. The most recent cc65 snapshot is available at ftp://ftp.musoftware.de/pub/uz/cc65/snapshot/. The Contiki network configuration for 6502-based targets is loaded from a binary configuration file (by default named contiki.cfg). It has the following format: - Bytes 1 - 4: IP Address (HiByte first) - Bytes 5 - 8: Subnet Mask (HiByte first) - Bytes 9 - 12: Default Router (HiByte first) - Bytes 13 - 16: DNS Server (HiByte first) - Bytes 17 - 18: Ethernet card I/O address (LoByte first !) - Bytes 19 - xx: Ethernet card driver name (ASCII / PETSCII) An online Contiki configuration file generator is available at two sites: - http://www.a2retrosystems.com/contiki.html - http://www.cbm8bit.com/contiki/ The build for 6502-based machines includes the 'disk' make goal which creates a bootable floppy disk image containing the project binary, a sample configuration file and the Ethernet card drivers. The 6502-based targets do in general not support keyboard input or screen output through stdin, stdout and stderr. The build for 6502-based machines supports so-called high-level configuration macros which allow to customize Contiki on a per-project basis. They are set in form of a comma-separated list as value of the make variable DEFINES on the make command line. The value of DEFINES can be saved with the 'savedefines' make goal. The values of the high-level configuration macros are not tracked by the build so a manual rebuild is necessary on any change. The following high-level configuration macros may be set: MTU_SIZE - Default: 1500 - Purpose: Set the Maximum Transfer Unit size. WITH_LOGGING - Default: 0 - Purpose: Have log_message() write messages to the screen. WITH_BOOST - Default: 0 - Purpose: Significantly improve troughput on sending full sized packets by splitting them thus workarounding the "delayed acknowledge". WITH_FORWARDING - Default: 0 - Purpose: Enable support for the 'IP forwarding' packet driver. WITH_CLIENT - Default: 0 - Purpose: Enable support for outgoing TCP connections. WITH_DNS - Default: 0 - Purpose: Enable UDP support and initialize resolver process on startup. WITH_GUI - Default: 0 - Purpose: Initialize the the CTK process on startup. WITH_MOUSE - Default: 0 - Purpose: Enable CTK mouse support and load a mouse driver. WITH_PFS - Default: 0 - Purpose: Implement the CFS interface with a Platform-specific File System instead of the POSIX file system.