
WARNING: this is currently very much work in progress and involves some
ugly hackery that will be removed over time!

some hints:

- if you attempt compiling, do a "make clean" before in the top level of
the sourcetree. 
- to clean up the cluttered ./platform/c64 dir change into that dir and do
a "make clean-c64"
- to build just the main contiki executable go to the ./platform/c64 dir and
use "make contiki-c64-main.c64"
- try "make -r" if something strange happens, the rules arent worked out
100% yet and this sometimes seems to fix it

TODO:

- assembling of the full disc doesnt really work yet, several contiki programs
do not compile yet, the whole thing is kinda screwed :/
- look in "makefile.programs" to get an idea of what kinda problems remain when
compiling the programs

- compiling the programs in the examples directory does not work, somehow the buildsystem
fails to build everything like it should.

- currently the ./platform/c64 directory is cluttered with object files
when compiling, that should be changed so these files end up in the obj_c64
subdirectory

- strangely there is a contiki-c64-main.co AND a contiki-c64-main.o created *shrug* and 
also linked. this is WRONG

- final linking cant be done with cl65 (sux) since it doesnt know the ".co" extension.
however the buildsystem seems to rely on this? why? to link with ld65 the crt0 and lib
needs to be linked manually, which sux :/

- if apps are linked statically to the contiki main binary they do not appear on the
desktop nor in the list of programs (why?)

- if contiki is linked with loader arch, and then trying to load something from disk then
the disk is not even accessed (why?)

--------------------------------------------------------------------------------------

- the following files still need changes to compile with cc65:

contiki-2.x/core/sys/lc.h

#ifndef __LC_H__
#define __LC_H__

// FIXME!
#include "lib/lc-cc65.h"

//#ifdef LC_CONF_INCLUDE
//#include LC_CONF_INCLUDE
//#else /* LC_CONF_INCLUDE */
//#include "sys/lc-switch.h"
//#endif /* LC_CONF_INCLUDE */

#endif /* __LC_H__ */

note: cc65 does not like the include string beeing a define. this is a cc65
bug and can not be easily worked around :/
 
contiki-2.x/core/sys/mt.c ~line174

// FIXME!
  process_start(
	t->p, 
	(char*)function
	);

note: this file is -according to adam- not used at all. why it still wants to
be compiled remains an unsolved issue :=P

contiki-2.x/core/net/uaodv.c

note: there is a pointer to some struct passed to uaodv_rt_lookup() at various 
places, cc65 complains about incompatible pointer types here - so we need to cast 
these to (uip_ipaddr_t*) explicitly (i'm almost sure cc65 is right about complaining 
here) - same thing for uaodv_rt_add(), send_rrep(),sendto() in the same file.

however, this file shouldnt be needed at all for the c64 port, why it still wants 
to be compiled remains an unsolved issue :=P
