diff -udrN contiki-2.x-20061211/core/sys/lc.h contiki-2.x-20061211-c64/core/sys/lc.h --- contiki-2.x-20061211/core/sys/lc.h 2006-06-17 15:41:20.000000000 -0700 +++ contiki-2.x-20061211-c64/core/sys/lc.h 2006-12-12 07:31:16.000000000 -0800 @@ -119,11 +119,14 @@ #ifndef __LC_H__ #define __LC_H__ -#ifdef LC_CONF_INCLUDE -#include LC_CONF_INCLUDE -#else /* LC_CONF_INCLUDE */ -#include "sys/lc-switch.h" -#endif /* LC_CONF_INCLUDE */ +/* Working around bug in cc65 for now */ +#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__ */ diff -udrN contiki-2.x-20061211/core/sys/loader.h contiki-2.x-20061211-c64/core/sys/loader.h --- contiki-2.x-20061211/core/sys/loader.h 2006-06-17 15:41:20.000000000 -0700 +++ contiki-2.x-20061211-c64/core/sys/loader.h 2006-12-12 16:04:22.000000000 -0800 @@ -69,7 +69,9 @@ #define LOADER_ERR_NOLOADER 9 /**< Program loading not supported. */ #ifdef LOADER_CONF_ARCH -#include LOADER_CONF_ARCH +/* XXX working around cc65 bug */ +#include "loader/loader-arch.h" +//#include LOADER_CONF_ARCH #endif /* LOADER_CONF_ARCH */ /** diff -udrN contiki-2.x-20061211/core/sys/process.c contiki-2.x-20061211-c64/core/sys/process.c --- contiki-2.x-20061211/core/sys/process.c 2006-08-17 08:39:24.000000000 -0700 +++ contiki-2.x-20061211-c64/core/sys/process.c 2006-12-15 20:19:51.000000000 -0800 @@ -46,6 +46,7 @@ #include +#include "contiki.h" #include "sys/process.h" #include "sys/arg.h" @@ -274,6 +275,7 @@ #endif } } + /*---------------------------------------------------------------------------*/ /* * Process the next event in the event queue and deliver it to @@ -287,6 +289,7 @@ static process_data_t data; static struct process *receiver; static struct process *p; + /* * If there are any events in the queue, take the first one and walk diff -udrN contiki-2.x-20061211/cpu/6502/Makefile.cc65 contiki-2.x-20061211-c64/cpu/6502/Makefile.cc65 --- contiki-2.x-20061211/cpu/6502/Makefile.cc65 2006-06-17 15:41:20.000000000 -0700 +++ contiki-2.x-20061211-c64/cpu/6502/Makefile.cc65 2006-12-15 20:17:41.000000000 -0800 @@ -6,16 +6,20 @@ INCLUDES=-I. -I$(CONTIKI_CPU) \ ${addprefix -I$(CONTIKI)/platform/$(TARGET)/, . apps ctk lib loader net} \ - ${addprefix -I,$(APPDIRS)} -I$(CONTIKI)/core + ${addprefix -I$(CONTIKI_CPU)/, . apps lib loader net} \ + ${addprefix -I,$(APPDIRS)} -I$(CONTIKI)/core -I$(CONTIKI)/core/net \ + -I$(CONTIKI)/core/ctk -I$(CONTIKI_CPU)/loader CCDEP=gcc CDEPFLAGS=$(INCLUDES) -CC=cc65 +CC=cl65 AS=ca65 LD=ld65 CL=cl65 +AR=ar65 +AROPTS=a PORTDIRS=apps conf ctk lib loader net CONTIKICC65DIRS=${addprefix $(CONTIKI_CPU)/, apps lib loader net} @@ -23,48 +27,43 @@ CFLAGSCC65=$(INCLUDES) \ -DWITH_PETSCII \ -t $(SYS) --add-source --create-dep +CFLAGS+=$(CFLAGSCC65) CLFLAGS=-Ln contiki-labels OPT=-Or -#%.o: %.c - -#%.s: %.c -# $(CC) $(CFLAGS) $(OPT) -o $(notdir $@) $< - -#%.o: %.s -# $(AS) $(AFLAGS) -o $@ $< - -#%.o: %.S -# $(AS) $(AFLAGS) -o $@ $< - +CUSTOM_RULE_C_TO_OBJECTDIR_O=1 $(OBJECTDIR)/%.o: %.c - $(CC) $(CFLAGS) $< -o $@ + $(CC) $(CFLAGS) -o $@ -c $< +$(OBJECTDIR)/%.o: %.S + $(AS) $(AFLAGS) -o $@ $< +$(OBJECTDIR)/%.o: %.s + $(AS) $(AFLAGS) -o $@ $< CONTIKI_TARGET_DIRS_CONCAT = ${addprefix $(CONTIKI)/platform/$(TARGET)/, \ $(CONTIKI_TARGET_DIRS)} -vpath %.c $(PROJECTDIRS) \ - $(CONTIKIDIRS) $(APPDIRS) $(CONTIKI_TARGET_DIRS_CONCAT) \ - $(CONTIKI_CPU) +vpath %.c $(CONTIKI_TARGET_DIRS_CONCAT) $(PROJECTDIRS) \ + $(CONTIKIDIRS) $(APPDIRS) \ + $(CONTIKI_CPU) $(CONTIKICC65DIRS) vpath %.S $(PORTDIRS) $(CONTIKICC65DIRS) $(CONTIKIDIRS) %.sav: %.o contiki-labels.o cl65 --module -t $(SYS) -o $@ loader-arch-module.o $^ -%.prg: %.o contiki-labels.o - cl65 --module -t $(SYS) -o $@ loader-arch-module.o $^ +%.prg: $(OBJECTDIR)/%.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t $(SYS) -o $@ $^ -%.drv: %-drv.o contiki-labels.o - cl65 --module -t $(SYS) -o $@ loader-arch-module.o $^ +%.drv: $(OBJECTDIR)/%-drv.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t $(SYS) -o $@ $^ -%.drv: %.o contiki-labels.o - cl65 --module -t $(SYS) -o $@ loader-arch-module.o $^ +%.drv: $(OBJECTDIR)/%.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t $(SYS) -o $@ $^ -%.dsc: %-dsc.o contiki-labels.o - cl65 --module -t $(SYS) -o $@ loader-arch-module-dsc.o $^ +%.dsc: $(OBJECTDIR)/%-dsc.o contiki-labels.o $(OBJECTDIR)/loader-arch-module-dsc.o + cl65 --module -t $(SYS) -o $@ $^ contiki-labels.s: contiki ./$(CONTIKI)/tools/cc65-make-labels Binary files contiki-2.x-20061211/cpu/6502/.Makefile.cc65.swp and contiki-2.x-20061211-c64/cpu/6502/.Makefile.cc65.swp differ Binary files contiki-2.x-20061211/.Makefile.include.swp and contiki-2.x-20061211-c64/.Makefile.include.swp differ diff -udrN contiki-2.x-20061211/platform/c64/apps/config.c contiki-2.x-20061211-c64/platform/c64/apps/config.c --- contiki-2.x-20061211/platform/c64/apps/config.c 2006-06-17 15:41:25.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/apps/config.c 2006-12-15 08:33:16.000000000 -0800 @@ -129,15 +129,16 @@ return nt + 1; } /*-----------------------------------------------------------------------------------*/ -static u16_t addr[2]; +//static u16_t addr[2]; +static uip_ipaddr_t addr; static char * ipaddrconf(char *str) { char *nt; nt = nullterminate(str); - if(uiplib_ipaddrconv(str, (unsigned char *)addr)) { - uip_sethostaddr(addr); + if(uiplib_ipaddrconv(str, (unsigned char *)&addr)) { + uip_sethostaddr(&addr); } return nt + 1; @@ -149,8 +150,8 @@ char *nt; nt = nullterminate(str); - if(uiplib_ipaddrconv(str, (unsigned char *)addr)) { - uip_setnetmask(addr); + if(uiplib_ipaddrconv(str, (unsigned char *)&addr)) { + uip_setnetmask(&addr); } return nt + 1; @@ -162,8 +163,8 @@ char *nt; nt = nullterminate(str); - if(uiplib_ipaddrconv(str, (unsigned char *)addr)) { - uip_setdraddr(addr); + if(uiplib_ipaddrconv(str, (unsigned char *)&addr)) { + uip_setdraddr(&addr); } return nt + 1; @@ -175,8 +176,8 @@ char *nt; nt = nullterminate(str); - if(uiplib_ipaddrconv(str, (unsigned char *)addr)) { - resolv_conf(addr); + if(uiplib_ipaddrconv(str, (unsigned char *)&addr)) { + resolv_conf(&addr); } return nt + 1; diff -udrN contiki-2.x-20061211/platform/c64/contiki-c64-main.c contiki-2.x-20061211-c64/platform/c64/contiki-c64-main.c --- contiki-2.x-20061211/platform/c64/contiki-c64-main.c 1969-12-31 16:00:00.000000000 -0800 +++ contiki-2.x-20061211-c64/platform/c64/contiki-c64-main.c 2006-12-15 20:36:07.000000000 -0800 @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2002-2004, Adam Dunkels. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior + * written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This file is part of the Contiki operating system + * + * $Id: main.c,v 1.1 2006/06/17 22:41:25 adamdunkels Exp $ + * + */ + +#include "contiki.h" + +#include "ctk/ctk.h" +#include "ctk/ctk-draw.h" + +#include "program-handler.h" + +#include "contiki-net.h" + +/* +#include "configedit-dsc.h" +#include "directory-dsc.h" +#include "processes-dsc.h" +*/ + +#include "cfs-cbm.h" +#include "cfs-init.h" + +#include + +PROCESS_NAME(ctk_hires_service_process); +PROCESS_NAME(cfs_cbm_process); + +PROCINIT(&tcpip_process, &resolv_process, &cfs_cbm_process, + &ctk_process, &ctk_hires_service_process, &etimer_process, &program_handler_process); + +/*---------------------------------------------------------------------------*/ +void +log_message(char *part1, char *part2) +{ + while(*part1 != 0) { + cbm_k_bsout(*part1++); + } + + while(*part2 != 0) { + cbm_k_bsout(*part2++); + } + + + cbm_k_bsout('\n'); +} +/*---------------------------------------------------------------------------*/ +clock_time_t +clock_time(void) +{ + return clock(); +} +/*---------------------------------------------------------------------------*/ +void +main(void) +{ + + log_message("Starting ", CONTIKI_VERSION_STRING); + + log_message(": process_init", ""); + process_init(); + + log_message(": procinit_init", ""); + procinit_init(); + + log_message("Starting process scheduling", ""); + + while(1) { + if( process_run() <= 1 ) { +log_message("Loading welcome.prg", ""); + program_handler_load("welcome.prg", NULL); + break; + } +log_message("still looping", ""); + } + +log_message("Welcome done", ""); + + + while(1) { + process_run(); + } +} +/*---------------------------------------------------------------------------*/ +void +reset(void) +{ + asm("lda #$36"); + asm("sta $01"); + asm("jmp $fce2"); +} +/*---------------------------------------------------------------------------*/ diff -udrN contiki-2.x-20061211/platform/c64/contiki-conf.h contiki-2.x-20061211-c64/platform/c64/contiki-conf.h --- contiki-2.x-20061211/platform/c64/contiki-conf.h 2006-08-15 07:46:33.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/contiki-conf.h 2006-12-12 19:47:52.000000000 -0800 @@ -3,6 +3,9 @@ #define LC_CONF_INCLUDE "lib/lc-cc65.h" +#define WITH_LOADER_ARCH 1 +#define LOADER_CONF_ARCH "loader/loader-arch.h" + /*#pragma charmap(0, 0); #pragma charmap(1, 1); #pragma charmap(2, 2); diff -udrN contiki-2.x-20061211/platform/c64/ctk/ctk-hires-service.c contiki-2.x-20061211-c64/platform/c64/ctk/ctk-hires-service.c --- contiki-2.x-20061211/platform/c64/ctk/ctk-hires-service.c 2006-06-17 15:41:26.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/ctk/ctk-hires-service.c 2006-12-15 19:52:42.000000000 -0800 @@ -903,6 +903,7 @@ PROCESS_THREAD(ctk_hires_service_process, ev, data) { PROCESS_BEGIN(); +log_message("hires started", ""); s_ctk_draw_init(); ctk_restore(); diff -udrN contiki-2.x-20061211/platform/c64/loader/cfs-cbm.c contiki-2.x-20061211-c64/platform/c64/loader/cfs-cbm.c --- contiki-2.x-20061211/platform/c64/loader/cfs-cbm.c 2006-06-17 15:41:26.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/loader/cfs-cbm.c 2006-12-15 08:06:51.000000000 -0800 @@ -49,7 +49,7 @@ static int s_closedir(struct cfs_dir *p); SERVICE(cfs_cbm_service, cfs_service, -{ s_open, s_close, s_read, s_write, s_opendir, s_readdir, s_closedir }); +{ s_open, s_close, s_read, s_write, NULL, s_opendir, s_readdir, s_closedir }); PROCESS(cfs_cbm_process, "CFS KERNAL service"); diff -udrN contiki-2.x-20061211/platform/c64/loader/cfs-init.c contiki-2.x-20061211-c64/platform/c64/loader/cfs-init.c --- contiki-2.x-20061211/platform/c64/loader/cfs-init.c 2006-06-17 15:41:26.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/loader/cfs-init.c 2006-12-15 08:06:15.000000000 -0800 @@ -48,21 +48,21 @@ static int s_readdir(struct cfs_dir *p, struct cfs_dirent *e) {return -1;} static int s_closedir(struct cfs_dir *p) {return -1;} -SERVICE(cfs_posix_service, cfs_service, -{ s_open, s_close, s_read, s_write, s_opendir, s_readdir, s_closedir }); +SERVICE(cfs_init_service, cfs_service, +{ s_open, s_close, s_read, s_write, NULL, s_opendir, s_readdir, s_closedir }); -PROCESS(cfs_posix_process, "CFS POSIX service"); -PROCESS_THREAD(cfs_posix_process, ev, data) { +PROCESS(cfs_init_process, "CFS INIT service"); +PROCESS_THREAD(cfs_init_process, ev, data) { PROCESS_BEGIN(); - SERVICE_REGISTER(cfs_posix_service); + SERVICE_REGISTER(cfs_init_service); while(ev != PROCESS_EVENT_SERVICE_REMOVED && ev != PROCESS_EVENT_EXIT) { PROCESS_WAIT_EVENT(); } - SERVICE_REMOVE(cfs_posix_service); + SERVICE_REMOVE(cfs_init_service); PROCESS_END(); } diff -udrN contiki-2.x-20061211/platform/c64/main.c contiki-2.x-20061211-c64/platform/c64/main.c --- contiki-2.x-20061211/platform/c64/main.c 2006-06-17 15:41:25.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/main.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,143 +0,0 @@ -/* - * Copyright (c) 2002-2004, Adam Dunkels. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials provided - * with the distribution. - * 3. The name of the author may not be used to endorse or promote - * products derived from this software without specific prior - * written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS - * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE - * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * This file is part of the Contiki operating system - * - * $Id: main.c,v 1.1 2006/06/17 22:41:25 adamdunkels Exp $ - * - */ - -#include "contiki.h" - -#include "ctk/ctk.h" -#include "ctk/ctk-draw.h" - -#include "program-handler.h" - - -#include "contiki-net.h" - -#include "configedit-dsc.h" -#include "directory-dsc.h" -#include "processes-dsc.h" - -#include "cfs-cbm.h" -#include "cfs-init.h" - - -#include - -PROCINIT(&tcpip_process, &resolv_process, /*&cfs_init_process,*/ - &ctk_process, &etimer_process, &program_handler_process); - -unsigned char -uip_fw_forward(void) -{ - return 0; -} -void -uip_fw_periodic(void) -{ - return; -} -/*---------------------------------------------------------------------------*/ -void -log_message(char *part1, char *part2) -{ - while(*part1 != 0) { - cbm_k_bsout(*part1++); - } - - while(*part2 != 0) { - cbm_k_bsout(*part2++); - } - - - cbm_k_bsout('\n'); -} -/*---------------------------------------------------------------------------*/ -clock_time_t -clock_time(void) -{ - return clock(); -} -/*---------------------------------------------------------------------------*/ -void -main(void) -{ - - log_message("Starting ", CONTIKI_VERSION_STRING); - - process_init(); - - log_message(": TCP/IP", ""); - - procinit_init(); - - /* tcpip_init(NULL); - - resolv_init(NULL); */ - - log_message(": CTK GUI", ""); - /* ctk_init();*/ - - log_message(": Initial filesystem", ""); - /* cfs_init_init(NULL);*/ - - /* program_handler_init();*/ - - /* - program_handler_add(&directory_dsc, "Directory", 1); - program_handler_add(&configedit_dsc, "Configuration", 1); - program_handler_add(&processes_dsc, "Processes", 1); */ - - - log_message("Starting process scheduling", ""); - - while(1) { - if(process_run() == 0) { - program_handler_load("welcome.prg", NULL); - break; - } - } - - - while(1) { - process_run(); - } -} -/*---------------------------------------------------------------------------*/ -void -reset(void) -{ - asm("lda #$36"); - asm("sta $01"); - asm("jmp $fce2"); -} -/*---------------------------------------------------------------------------*/ diff -udrN contiki-2.x-20061211/platform/c64/Makefile contiki-2.x-20061211-c64/platform/c64/Makefile --- contiki-2.x-20061211/platform/c64/Makefile 2006-06-17 15:41:25.000000000 -0700 +++ contiki-2.x-20061211-c64/platform/c64/Makefile 2006-12-15 08:39:22.000000000 -0800 @@ -30,48 +30,45 @@ # $Id: Makefile,v 1.1 2006/06/17 22:41:25 adamdunkels Exp $ # -CONTIKI=../.. -CONTIKICC65=../../cpu/6502 - -usage: - @echo "Make sure the Contiki sources is in the directory $(CONTIKI)" - @echo 'To compile Contiki, use "'$(MAKE)' target" where target' - @echo 'is one of the following:' - @echo all - @echo c64 - @echo programs - @echo d64 - @echo programs - @echo '(Also check the Makefile for more targets to try...)' - -all: clean c64 programs - -programs: - $(MAKE) CONTIKI=$(CONTIKI) CONTIKICC65=$(CONTIKICC65) -f Makefile.programs -c64: - $(MAKE) CONTIKI=$(CONTIKI) CONTIKICC65=$(CONTIKICC65) -f Makefile.c64 - -c64-exo: - $(MAKE) CONTIKI=$(CONTIKI) CONTIKICC65=$(CONTIKICC65) -f Makefile.c64 contiki-exo - -wget: - $(MAKE) CONTIKI=$(CONTIKI) CONTIKICC65=$(CONTIKICC65) -f Makefile.c64-wget +all: contiki -installer: clean - $(MAKE) CONTIKI=$(CONTIKI) CONTIKICC65=$(CONTIKICC65) -f Makefile.installer +d64: contiki config.cfg welcome.prg cfs-cbm.drv ctk-text.drv ctk-80col.drv \ + ctk-default.drv rrnet.drv config.prg configedit.prg configedit.dsc + c1541 -format contiki,00 d64 contiki-c64.d64 + c1541 -attach contiki-c64.d64 -write contiki + c1541 -attach contiki-c64.d64 -write welcome.prg + c1541 -attach contiki-c64.d64 -write cfs-cbm.drv + c1541 -attach contiki-c64.d64 -write ctk-text.drv + c1541 -attach contiki-c64.d64 -write ctk-80col.drv + c1541 -attach contiki-c64.d64 -write ctk-default.drv + c1541 -attach contiki-c64.d64 -write rrnet.drv + c1541 -attach contiki-c64.d64 -write configedit.prg + c1541 -attach contiki-c64.d64 -write configedit.dsc + c1541 -attach contiki-c64.d64 -write config.prg + c1541 -attach contiki-c64.d64 -write config.cfg + c1541 -attach contiki-c64.d64 -list +config.cfg: + echo C CFS-CBM.DRV > config.cfg + echo T CTK-80COL.DRV >> config.cfg + echo . >> config.cfg -CCDEPFLAGS=-D__CBM__ -D__C64__ -DCTK_HIRES -DWITH_UIP -DWITH_LOADER_ARCH -I/usr/local/lib/cc65/include +vice: d64 + x64 -sound -warp -truedrive -drive8type 1541 -drive8idle 0 -autostart contiki-c64.d64 -include $(CONTIKICC65)/Makefile.cc65 +CONTIKI=../.. +TARGET=c64 +SYS=$(TARGET) +APPS+=program-handler process-list directory +include $(CONTIKI)/Makefile.include -d64: - c1541 -format contiki,00 d64 contiki.d64 - c1541 -attach contiki.d64 -write contiki - c1541 -attach contiki.d64 -write config.cfg - c1541 -attach contiki.d64 $(foreach dsc, $(wildcard *.dsc), -write $(dsc)) - c1541 -attach contiki.d64 $(foreach prg, $(wildcard *.prg), -write $(prg)) - c1541 -attach contiki.d64 $(foreach sav, $(wildcard *.sav), -write $(sav)) - c1541 -attach contiki.d64 $(foreach drv, $(wildcard *.drv), -write $(drv)) - c1541 -attach contiki.d64 $(foreach ser, $(wildcard *.ser), -write $(ser)) - c1541 -attach contiki.d64 -list +ctk-text.drv: $(OBJECTDIR)/ctk-conio-service.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t c64 -o $@ $^ +ctk-80col.drv: $(OBJECTDIR)/ctk-80col.o $(OBJECTDIR)/ctk-80col-asm.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t c64 -o $@ $^ +ctk-default.drv: $(OBJECTDIR)/ctk-hires-service.o $(OBJECTDIR)/ctk-hires-asm.o $(OBJECTDIR)/ctk-hires-theme-default.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t c64 -o $@ $^ +rrnet.drv: $(OBJECTDIR)/rrnet-drv.o $(OBJECTDIR)/cs8900a.o $(OBJECTDIR)/rrnet-drv-asm.o $(OBJECTDIR)/uip_arp.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o + cl65 --module -t $(SYS) -o $@ $^ + +config.prg: $(OBJECTDIR)/config.o $(OBJECTDIR)/uiplib.o $(OBJECTDIR)/arg.o contiki-labels.o $(OBJECTDIR)/loader-arch-module.o diff -udrN contiki-2.x-20061211/platform/c64/Makefile.c64 contiki-2.x-20061211-c64/platform/c64/Makefile.c64 --- contiki-2.x-20061211/platform/c64/Makefile.c64 1969-12-31 16:00:00.000000000 -0800 +++ contiki-2.x-20061211-c64/platform/c64/Makefile.c64 2006-12-15 20:36:19.000000000 -0800 @@ -0,0 +1,19 @@ +CONTIKI_TARGET_DIRS = . apps ctk lib loader net + +CONTIKI_TARGET_MAIN = contiki-c64-main.c + +CTKC64 = $(CTK) ctk-draw.c ctk-hires-service.c ctk-hires-theme-default.c + +CONTIKI_TARGET_SOURCEFILES += loader-arch.c petsciiconv.c \ + configedit-dsc.c \ + cfs-cbm.c uip_arch.c $(CONTIKI_TARGET_MAIN) +CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES) $(CTKC64) +PROJECT_OBJECTFILES += $(OBJECTDIR)/contiki-c64-main.o $(OBJECTDIR)/lc-asm.o $(OBJECTDIR)/ctk-hires-asm.o + +CFLAGS += -DCTK_HIRES -DWITH_UIP -DWITH_LOADER_ARCH -DWITH_ETHERNET + +SYS=c64 +include $(CONTIKI)/cpu/6502/Makefile.cc65 + +contiki: $(PROJECT_OBJECTFILES) contiki-$(TARGET).a + cl65 -C c64.cfg -Ln contiki-labels -o $@ -t $(SYS) $^