Merge pull request #123 from oliverschmidt/master
Without anybody putting in a veto in the meantime it seems appropriate to merge now...
This commit is contained in:
commit
90186b035d
15 changed files with 48 additions and 366 deletions
|
@ -1,7 +1,7 @@
|
||||||
# -*- makefile -*-
|
# -*- makefile -*-
|
||||||
|
|
||||||
ifndef CONTIKI
|
ifndef CONTIKI
|
||||||
${error CONTIKI not defined! You must specify where CONTIKI resides}
|
${error CONTIKI not defined! You must specify where Contiki resides}
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(TARGET),)
|
ifeq ($(TARGET),)
|
||||||
|
@ -105,8 +105,8 @@ PROJECT_OBJECTFILES = ${addprefix $(OBJECTDIR)/,${call oname, $(PROJECT_SOURCEFI
|
||||||
|
|
||||||
ifdef APPS
|
ifdef APPS
|
||||||
APPDIRS += ${wildcard ${addprefix $(CONTIKI)/apps/, $(APPS)} \
|
APPDIRS += ${wildcard ${addprefix $(CONTIKI)/apps/, $(APPS)} \
|
||||||
${addprefix $(CONTIKI)/platform/$(TARGET)/apps/, $(APPS)} \
|
${addprefix $(CONTIKI)/platform/$(TARGET)/apps/, $(APPS)} \
|
||||||
$(APPS)}
|
$(APPS)}
|
||||||
APPINCLUDES = ${foreach APP, $(APPS), ${wildcard ${foreach DIR, $(APPDIRS), $(DIR)/Makefile.$(APP)}}}
|
APPINCLUDES = ${foreach APP, $(APPS), ${wildcard ${foreach DIR, $(APPDIRS), $(DIR)/Makefile.$(APP)}}}
|
||||||
-include $(APPINCLUDES)
|
-include $(APPINCLUDES)
|
||||||
APP_SOURCES = ${foreach APP, $(APPS), $($(APP)_src)}
|
APP_SOURCES = ${foreach APP, $(APPS), $($(APP)_src)}
|
||||||
|
@ -163,7 +163,7 @@ endif
|
||||||
|
|
||||||
ifneq ($(MAKECMDGOALS),clean)
|
ifneq ($(MAKECMDGOALS),clean)
|
||||||
-include ${addprefix $(OBJECTDIR)/,$(CONTIKI_SOURCEFILES:.c=.d) \
|
-include ${addprefix $(OBJECTDIR)/,$(CONTIKI_SOURCEFILES:.c=.d) \
|
||||||
$(PROJECT_SOURCEFILES:.c=.d)}
|
$(PROJECT_SOURCEFILES:.c=.d)}
|
||||||
endif
|
endif
|
||||||
|
|
||||||
### See http://make.paulandlesley.org/autodep.html#advanced
|
### See http://make.paulandlesley.org/autodep.html#advanced
|
||||||
|
@ -178,8 +178,8 @@ endef
|
||||||
clean:
|
clean:
|
||||||
rm -f *~ *core core *.srec \
|
rm -f *~ *core core *.srec \
|
||||||
*.lst *.map \
|
*.lst *.map \
|
||||||
*.cprg *.bin *.data contiki*.a *.firmware core-labels.S *.ihex *.ini \
|
*.cprg *.bin *.data contiki*.a *.firmware core-labels.S *.ihex *.ini \
|
||||||
*.ce *.co $(CLEAN)
|
*.ce *.co $(CLEAN)
|
||||||
-rm -rf $(OBJECTDIR)
|
-rm -rf $(OBJECTDIR)
|
||||||
|
|
||||||
ifndef CUSTOM_RULE_C_TO_CE
|
ifndef CUSTOM_RULE_C_TO_CE
|
||||||
|
|
|
@ -124,16 +124,6 @@ buf_bufto(CC_REGISTER_ARG struct psock_buf *buf, uint8_t endmarker,
|
||||||
return BUF_NOT_FOUND;
|
return BUF_NOT_FOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
while(*datalen > 0) {
|
|
||||||
c = **dataptr;
|
|
||||||
--*datalen;
|
|
||||||
++*dataptr;
|
|
||||||
|
|
||||||
if(c == endmarker) {
|
|
||||||
return BUF_FOUND | BUF_FULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return BUF_FULL;
|
return BUF_FULL;
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
|
@ -274,9 +264,9 @@ PT_THREAD(psock_readto(CC_REGISTER_ARG struct psock *psock, unsigned char c))
|
||||||
psock->readptr = (uint8_t *)uip_appdata;
|
psock->readptr = (uint8_t *)uip_appdata;
|
||||||
psock->readlen = uip_datalen();
|
psock->readlen = uip_datalen();
|
||||||
}
|
}
|
||||||
} while((buf_bufto(&psock->buf, c,
|
} while(buf_bufto(&psock->buf, c,
|
||||||
&psock->readptr,
|
&psock->readptr,
|
||||||
&psock->readlen) & BUF_FOUND) == 0);
|
&psock->readlen) == BUF_NOT_FOUND);
|
||||||
|
|
||||||
if(psock_datalen(psock) == 0) {
|
if(psock_datalen(psock) == 0) {
|
||||||
psock->state = STATE_NONE;
|
psock->state = STATE_NONE;
|
||||||
|
|
|
@ -39,7 +39,7 @@ endif
|
||||||
|
|
||||||
all: cs8900a.eth lan91c96.eth
|
all: cs8900a.eth lan91c96.eth
|
||||||
|
|
||||||
CONTIKI_TARGET_DIRS = . lib sys cfs
|
CONTIKI_TARGET_DIRS = . lib sys
|
||||||
CONTIKI_CPU_DIRS = . lib sys ctk net
|
CONTIKI_CPU_DIRS = . lib sys ctk net
|
||||||
|
|
||||||
CONTIKI_TARGET_SOURCEFILES += contiki-main.c
|
CONTIKI_TARGET_SOURCEFILES += contiki-main.c
|
||||||
|
@ -47,11 +47,9 @@ CONTIKI_CPU_SOURCEFILES += log.c error.c unload.c config.c ctk-mouse.c \
|
||||||
clock.c mtarch.c mtarch-asm.S lc-asm.S \
|
clock.c mtarch.c mtarch-asm.S lc-asm.S \
|
||||||
uip_arch.c ethernet-drv.c ethernet.c
|
uip_arch.c ethernet-drv.c ethernet.c
|
||||||
|
|
||||||
CONTIKI_SOURCEFILES += $(CTK) ctk-conio.c petsciiconv.c \
|
CONTIKI_SOURCEFILES += $(CTK) ctk-conio.c petsciiconv.c cfs-posix-dir.c \
|
||||||
$(CONTIKI_TARGET_SOURCEFILES) $(CONTIKI_CPU_SOURCEFILES)
|
$(CONTIKI_TARGET_SOURCEFILES) $(CONTIKI_CPU_SOURCEFILES)
|
||||||
|
|
||||||
TARGET_LIBFILES = $(TARGET).lib
|
|
||||||
|
|
||||||
ifdef ETHERNET
|
ifdef ETHERNET
|
||||||
CONTIKI_SOURCEFILES += $(ETHERNET)-eth.S
|
CONTIKI_SOURCEFILES += $(ETHERNET)-eth.S
|
||||||
CFLAGS += -DETHERNET=$(ETHERNET)
|
CFLAGS += -DETHERNET=$(ETHERNET)
|
||||||
|
@ -60,7 +58,7 @@ endif
|
||||||
### Compiler definitions
|
### Compiler definitions
|
||||||
|
|
||||||
AS = ca65
|
AS = ca65
|
||||||
CC = cc65
|
CC = cl65
|
||||||
LD = ld65
|
LD = ld65
|
||||||
AR = ar65
|
AR = ar65
|
||||||
|
|
||||||
|
@ -69,35 +67,29 @@ AR = ar65
|
||||||
|
|
||||||
ASFLAGS = -t $(TARGET)
|
ASFLAGS = -t $(TARGET)
|
||||||
CFLAGS += -t $(TARGET) -Or
|
CFLAGS += -t $(TARGET) -Or
|
||||||
LDFLAGS = -D __STACKSIZE__=0x200 -u _main -m contiki-$(TARGET).map
|
LDFLAGS = $(STARTADDR_FLAG) -t $(TARGET) -m contiki-$(TARGET).map -D __STACKSIZE__=0x200
|
||||||
AROPTS = a
|
AROPTS = a
|
||||||
|
|
||||||
### Compilation rules
|
### Compilation rules
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
|
||||||
CMD.EXE := $(shell echo)
|
|
||||||
|
|
||||||
CUSTOM_RULE_C_TO_OBJECTDIR_O = 1
|
CUSTOM_RULE_C_TO_OBJECTDIR_O = 1
|
||||||
$(OBJECTDIR)/%.o: %.c
|
$(OBJECTDIR)/%.o: %.c
|
||||||
$(CC) $(CFLAGS) --create-dep $< -o $(@:.o=.s)
|
$(CC) -c -o $@ $(CFLAGS) --create-dep $(@:.o=.d) $<
|
||||||
@$(AS) $(ASFLAGS) $(@:.o=.s) -o $@
|
|
||||||
@sed -e "s!.s:!.o:!" -e "s!\t! !" < $(@:.o=.u) > $(@:.o=.d)
|
|
||||||
@rm -f $(@:.o=.s) $(@:.o=.u)
|
|
||||||
ifndef CMD.EXE
|
|
||||||
@$(FINALIZE_DEPENDENCY)
|
|
||||||
endif
|
|
||||||
|
|
||||||
CUSTOM_RULE_C_TO_CO = 1
|
CUSTOM_RULE_C_TO_CO = 1
|
||||||
%.co: %.c
|
%.co: %.c
|
||||||
$(CC) $(CFLAGS) -DAUTOSTART_ENABLE $< -o $(@:.co=.s)
|
$(CC) -c -o $@ $(CFLAGS) -DAUTOSTART_ENABLE --create-dep $(@:.o=.d) $<
|
||||||
@$(AS) $(ASFLAGS) $(@:.co=.s) -o $@
|
|
||||||
@rm -f $(@:.co=.s)
|
CUSTOM_RULE_LINK = 1
|
||||||
|
%.$(TARGET): %.co contiki-$(TARGET).a
|
||||||
|
$(LD) -o $@ $(LDFLAGS) -u _main $^ $(TARGET).lib
|
||||||
|
|
||||||
%.eth: $(OBJECTDIR)/%.o
|
%.eth: $(OBJECTDIR)/%.o
|
||||||
$(LD) -t module -m $@.map $< -o $@
|
$(LD) -o $@ -t module -m $@.map $<
|
||||||
|
|
||||||
ifdef ETHERNET
|
ifdef ETHERNET
|
||||||
$(ETHERNET)-eth.S: $(ETHERNET).eth
|
$(ETHERNET)-eth.S: $(ETHERNET).eth
|
||||||
co65 --code-label _$(ETHERNET) -o $@ $<
|
co65 -o $@ --code-label _$(ETHERNET) $<
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
DEFINES = WITH_CLIENT,WITH_DNS,WITH_GUI,WITH_PFS
|
DEFINES = WITH_CLIENT,WITH_DNS,WITH_GUI
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
DEFINES = WITH_CLIENT,WITH_DNS,WITH_GUI,MTU_SIZE=900
|
DEFINES = WITH_CLIENT,WITH_DNS,WITH_GUI,MTU_SIZE=1000
|
||||||
|
|
|
@ -142,6 +142,8 @@ app_quit(void)
|
||||||
if(file != -1) {
|
if(file != -1) {
|
||||||
cfs_close(file);
|
cfs_close(file);
|
||||||
}
|
}
|
||||||
|
puts("Press any key to continue...");
|
||||||
|
getchar();
|
||||||
process_exit(&wget_process);
|
process_exit(&wget_process);
|
||||||
LOADER_UNLOAD();
|
LOADER_UNLOAD();
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,22 +33,22 @@
|
||||||
# $Id: Makefile.apple2enh,v 1.19 2010/10/23 08:17:45 oliverschmidt Exp $
|
# $Id: Makefile.apple2enh,v 1.19 2010/10/23 08:17:45 oliverschmidt Exp $
|
||||||
#
|
#
|
||||||
|
|
||||||
CONTIKI_SOURCEFILES += cfs-posix-dir.c
|
|
||||||
CONTIKI_TARGET_SOURCEFILES += pfs.S
|
CONTIKI_TARGET_SOURCEFILES += pfs.S
|
||||||
|
|
||||||
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
||||||
include $(CONTIKI_CPU)/Makefile.6502
|
include $(CONTIKI_CPU)/Makefile.6502
|
||||||
|
|
||||||
|
LDFLAGS += -D __HIMEM__=0xBF00
|
||||||
|
|
||||||
ifeq ($(findstring WITH_REBOOT,$(DEFINES)),WITH_REBOOT)
|
ifeq ($(findstring WITH_REBOOT,$(DEFINES)),WITH_REBOOT)
|
||||||
HIGHCODE_SOURCEFILES = process.c etimer.c uip_arp.c
|
LC_SOURCEFILES = process.c etimer.c uip_arp.c
|
||||||
LDFLAGS += -C apple2enh-reboot.cfg
|
LDFLAGS += -D __LCADDR__=0xD000 -D __LCSIZE__=0x1000
|
||||||
else
|
else
|
||||||
HIGHCODE_SOURCEFILES = process.c etimer.c ethernet.c
|
LC_SOURCEFILES = process.c etimer.c ethernet.c
|
||||||
LDFLAGS += -C apple2enh-loader.cfg
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Set a target-specific variable value
|
# Set a target-specific variable value
|
||||||
${addprefix $(OBJECTDIR)/,${call oname, $(HIGHCODE_SOURCEFILES)}}: CFLAGS += --code-name HIGHCODE
|
${addprefix $(OBJECTDIR)/,${call oname, $(LC_SOURCEFILES)}}: CFLAGS += --code-name LC
|
||||||
|
|
||||||
ifeq ($(MAKECMDGOALS),disk)
|
ifeq ($(MAKECMDGOALS),disk)
|
||||||
ifndef AC
|
ifndef AC
|
||||||
|
|
|
@ -35,13 +35,10 @@
|
||||||
|
|
||||||
ETHERNET = cs8900a
|
ETHERNET = cs8900a
|
||||||
|
|
||||||
CONTIKI_SOURCEFILES += cfs-posix-dir.c
|
|
||||||
CONTIKI_TARGET_SOURCEFILES += posixdirent.S
|
|
||||||
|
|
||||||
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
||||||
include $(CONTIKI_CPU)/Makefile.6502
|
include $(CONTIKI_CPU)/Makefile.6502
|
||||||
|
|
||||||
LDFLAGS += -C $(CONTIKI)/platform/$(TARGET)/$(TARGET).cfg -S 0x2000
|
STARTADDR_FLAG = -S 0x2000
|
||||||
|
|
||||||
ifeq ($(MAKECMDGOALS),disk)
|
ifeq ($(MAKECMDGOALS),disk)
|
||||||
ifndef DIR2ATR
|
ifndef DIR2ATR
|
||||||
|
@ -51,15 +48,15 @@ endif
|
||||||
|
|
||||||
disk: all
|
disk: all
|
||||||
mkdir atr
|
mkdir atr
|
||||||
cp $(CONTIKI)/tools/$(TARGET)/dos.sys atr/dos.sys
|
cp $(CONTIKI)/tools/$(TARGET)/dos25/dos.sys atr/dos.sys
|
||||||
cp $(CONTIKI)/tools/$(TARGET)/dup.sys atr/dup.sys
|
cp $(CONTIKI)/tools/$(TARGET)/dos25/dup.sys atr/dup.sys
|
||||||
cp $(CONTIKI_PROJECT).$(TARGET) atr/autorun.sys
|
cp $(CONTIKI_PROJECT).$(TARGET) atr/autorun.sys
|
||||||
cp $(CONTIKI)/tools/$(TARGET)/sample.cfg atr/contiki.cfg
|
cp $(CONTIKI)/tools/$(TARGET)/sample.cfg atr/contiki.cfg
|
||||||
ifeq ($(HTTPD-CFS),1)
|
ifeq ($(HTTPD-CFS),1)
|
||||||
cp httpd-cfs/index.htm atr/index.htm
|
cp httpd-cfs/index.htm atr/index.htm
|
||||||
cp httpd-cfs/backgrnd.gif atr/backgrnd.gif
|
cp httpd-cfs/backgrnd.gif atr/backgrnd.gif
|
||||||
cp httpd-cfs/contiki.gif atr/contiki.gif
|
cp httpd-cfs/contiki.gif atr/contiki.gif
|
||||||
cp httpd-cfs/notfound.htm atr/notfound.htm
|
cp httpd-cfs/notfound.htm atr/notfound.htm
|
||||||
endif
|
endif
|
||||||
$(DIR2ATR) -b Dos25 1040 contiki.atr atr
|
$(DIR2ATR) -b Dos25 1040 contiki.atr atr
|
||||||
rm -r atr
|
rm -r atr
|
||||||
|
|
|
@ -1,159 +0,0 @@
|
||||||
; Native: Shawn Jefferson, December 2005
|
|
||||||
; POSIX: Stefan Haubenthal, April 2008
|
|
||||||
|
|
||||||
.include "atari.inc"
|
|
||||||
.export _opendir, _readdir, _closedir
|
|
||||||
.import findfreeiocb, clriocb
|
|
||||||
.import __oserror, return0, __do_oserror
|
|
||||||
.importzp ptr1, tmp1
|
|
||||||
.ifdef DEFAULT_DEVICE
|
|
||||||
.import __defdev
|
|
||||||
.endif
|
|
||||||
|
|
||||||
|
|
||||||
.proc _opendir
|
|
||||||
sta ptr1
|
|
||||||
stx ptr1+1
|
|
||||||
jsr findfreeiocb
|
|
||||||
beq @iocbok
|
|
||||||
bne cioerr
|
|
||||||
@iocbok: stx diriocb
|
|
||||||
jsr clriocb
|
|
||||||
ldx diriocb
|
|
||||||
ldy #0 ; '.' -> "D:*.*"
|
|
||||||
lda (ptr1),y
|
|
||||||
cmp #'.'
|
|
||||||
bne @use_parm
|
|
||||||
|
|
||||||
; "." was given as parameter, use default device/dir
|
|
||||||
|
|
||||||
.ifdef DEFAULT_DEVICE
|
|
||||||
; construct a "Dn:*.*" like string from the default drive
|
|
||||||
lda __defdev+1
|
|
||||||
sta dddefdev+1 ; copy drive number (overwrite 2nd 'D')
|
|
||||||
lda #<dddefdev
|
|
||||||
sta ICBAL,x
|
|
||||||
lda #>dddefdev
|
|
||||||
sta ICBAH,x
|
|
||||||
bne @cont
|
|
||||||
.else
|
|
||||||
lda #<defdev
|
|
||||||
sta ICBAL,x
|
|
||||||
lda #>defdev
|
|
||||||
sta ICBAH,x
|
|
||||||
bne @cont
|
|
||||||
.endif
|
|
||||||
|
|
||||||
@use_parm: lda ptr1
|
|
||||||
sta ICBAL,x
|
|
||||||
lda ptr1+1
|
|
||||||
sta ICBAH,x
|
|
||||||
|
|
||||||
@cont: lda #OPEN
|
|
||||||
sta ICCOM,x
|
|
||||||
lda #OPNIN|DIRECT
|
|
||||||
sta ICAX1,x
|
|
||||||
jsr CIOV
|
|
||||||
bmi cioerr
|
|
||||||
lda #0
|
|
||||||
sta __oserror
|
|
||||||
tax
|
|
||||||
lda diriocb
|
|
||||||
rts
|
|
||||||
.endproc
|
|
||||||
|
|
||||||
cioerr: sty __oserror
|
|
||||||
jmp return0
|
|
||||||
|
|
||||||
.proc _readdir
|
|
||||||
tax
|
|
||||||
lda #GETREC
|
|
||||||
sta ICCOM,x
|
|
||||||
lda #<entry
|
|
||||||
sta ICBAL,x
|
|
||||||
sta ptr1
|
|
||||||
lda #>entry
|
|
||||||
sta ICBAH,x
|
|
||||||
sta ptr1+1
|
|
||||||
lda #DSCTSZ
|
|
||||||
sta ICBLL,x
|
|
||||||
lda #0
|
|
||||||
sta ICBLH,x
|
|
||||||
jsr CIOV
|
|
||||||
bmi cioerr
|
|
||||||
ldy #0 ; FREE SECTORS
|
|
||||||
lda (ptr1),y
|
|
||||||
cmp #'0'
|
|
||||||
bcs cioerr
|
|
||||||
dey
|
|
||||||
@next: iny ; remove trailing spaces
|
|
||||||
iny
|
|
||||||
iny
|
|
||||||
lda (ptr1),y
|
|
||||||
dey
|
|
||||||
dey
|
|
||||||
sta (ptr1),y
|
|
||||||
cpy #9
|
|
||||||
bcs @break
|
|
||||||
cmp #' '
|
|
||||||
bne @next
|
|
||||||
|
|
||||||
@break: lda #'.' ; extension dot
|
|
||||||
sta (ptr1),y
|
|
||||||
iny ; copy extension
|
|
||||||
sty tmp1
|
|
||||||
ldy #10
|
|
||||||
lda (ptr1),y
|
|
||||||
cmp #' '
|
|
||||||
bne @hasext
|
|
||||||
|
|
||||||
; no extension present: remove the trailing dot and be done
|
|
||||||
ldy tmp1
|
|
||||||
dey
|
|
||||||
bne @done
|
|
||||||
|
|
||||||
@hasext: jsr copychar
|
|
||||||
ldy #11
|
|
||||||
jsr copychar
|
|
||||||
ldy #12
|
|
||||||
jsr copychar
|
|
||||||
|
|
||||||
@done: lda #0 ; end of string
|
|
||||||
sta (ptr1),y
|
|
||||||
lda ptr1
|
|
||||||
ldx ptr1+1
|
|
||||||
rts
|
|
||||||
|
|
||||||
|
|
||||||
copychar: lda (ptr1),y ; src=y dest=tmp1
|
|
||||||
ldy tmp1
|
|
||||||
cmp #' '
|
|
||||||
beq @break
|
|
||||||
sta (ptr1),y
|
|
||||||
iny
|
|
||||||
sty tmp1
|
|
||||||
@break: rts
|
|
||||||
.endproc
|
|
||||||
|
|
||||||
.proc _closedir
|
|
||||||
tax
|
|
||||||
lda #CLOSE
|
|
||||||
sta ICCOM,x
|
|
||||||
jsr CIOV
|
|
||||||
bmi @cioerr
|
|
||||||
ldx #0
|
|
||||||
stx __oserror ; clear system specific error code
|
|
||||||
txa
|
|
||||||
rts
|
|
||||||
@cioerr: jmp __do_oserror
|
|
||||||
.endproc
|
|
||||||
|
|
||||||
.data
|
|
||||||
.ifdef DEFAULT_DEVICE
|
|
||||||
dddefdev: .byte "D"
|
|
||||||
.endif
|
|
||||||
defdev: .asciiz "D:*.*"
|
|
||||||
|
|
||||||
.bss
|
|
||||||
diriocb: .res 1
|
|
||||||
entry: .res DSCTSZ
|
|
|
@ -33,13 +33,12 @@
|
||||||
# $Id: Makefile.c128,v 1.15 2010/10/23 13:48:06 oliverschmidt Exp $
|
# $Id: Makefile.c128,v 1.15 2010/10/23 13:48:06 oliverschmidt Exp $
|
||||||
#
|
#
|
||||||
|
|
||||||
CONTIKI_TARGET_SOURCEFILES += cfs-cbm-dir.c pfs.S pfs_write.S
|
CONTIKI_TARGET_SOURCEFILES += pfs.S pfs_write.S
|
||||||
|
|
||||||
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
||||||
include $(CONTIKI_CPU)/Makefile.6502
|
include $(CONTIKI_CPU)/Makefile.6502
|
||||||
|
|
||||||
CFLAGS += -DWITH_PETSCII
|
CFLAGS += -DWITH_PETSCII
|
||||||
LDFLAGS += -t $(TARGET)
|
|
||||||
|
|
||||||
ifeq ($(MAKECMDGOALS),disk)
|
ifeq ($(MAKECMDGOALS),disk)
|
||||||
ifndef C1541
|
ifndef C1541
|
||||||
|
|
|
@ -1,69 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (c) 2010, Swedish Institute of Computer Science.
|
|
||||||
* 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. Neither the name of the Institute nor the names of its contributors
|
|
||||||
* may be used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``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 INSTITUTE OR CONTRIBUTORS 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.
|
|
||||||
*
|
|
||||||
* Author: Oliver Schmidt <ol.sc@web.de>
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
#include <cbm.h>
|
|
||||||
|
|
||||||
#include "contiki.h"
|
|
||||||
|
|
||||||
#include "cfs/cfs.h"
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
int
|
|
||||||
cfs_opendir(struct cfs_dir *p, const char *n)
|
|
||||||
{
|
|
||||||
return cbm_opendir(12, _curunit);
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
int
|
|
||||||
cfs_readdir(struct cfs_dir *p, struct cfs_dirent *e)
|
|
||||||
{
|
|
||||||
struct cbm_dirent dirent;
|
|
||||||
|
|
||||||
do {
|
|
||||||
if(cbm_readdir(12, &dirent)) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
} while(dirent.type == CBM_T_HEADER);
|
|
||||||
strcpy(e->name, dirent.name);
|
|
||||||
e->size = dirent.size;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
void
|
|
||||||
cfs_closedir(struct cfs_dir *p)
|
|
||||||
{
|
|
||||||
cbm_closedir(12);
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
|
@ -36,7 +36,7 @@
|
||||||
.constructor init_pfs
|
.constructor init_pfs
|
||||||
.destructor done_pfs
|
.destructor done_pfs
|
||||||
.importzp ptr1, ptr2, ptr3, sp
|
.importzp ptr1, ptr2, ptr3, sp
|
||||||
.import __curunit, __filetype, popax, addysp, subysp
|
.import curunit, __filetype, popax, addysp, subysp
|
||||||
.export pfs_rwcommon, pfs_rwsetflags, pfs_rwcommonend
|
.export pfs_rwcommon, pfs_rwsetflags, pfs_rwcommonend
|
||||||
.if F_IDE64
|
.if F_IDE64
|
||||||
.export ide64_rwprepare, ide64_rwfinish
|
.export ide64_rwprepare, ide64_rwfinish
|
||||||
|
@ -178,7 +178,7 @@ next: inc ptr2 ;next file number
|
||||||
stx ptr2+1
|
stx ptr2+1
|
||||||
nextsa: inc ptr2+1 ;next channel
|
nextsa: inc ptr2+1 ;next channel
|
||||||
retr: lda ptr2 ;file number
|
retr: lda ptr2 ;file number
|
||||||
ldx __curunit
|
ldx curunit
|
||||||
ldy ptr2+1 ;secondary address
|
ldy ptr2+1 ;secondary address
|
||||||
jsr SETLFS
|
jsr SETLFS
|
||||||
jsr OPEN ;open
|
jsr OPEN ;open
|
||||||
|
|
|
@ -33,13 +33,12 @@
|
||||||
# $Id: Makefile.c64,v 1.17 2010/10/23 13:48:06 oliverschmidt Exp $
|
# $Id: Makefile.c64,v 1.17 2010/10/23 13:48:06 oliverschmidt Exp $
|
||||||
#
|
#
|
||||||
|
|
||||||
CONTIKI_TARGET_SOURCEFILES += cfs-cbm-dir.c pfs.S pfs_write.S
|
CONTIKI_TARGET_SOURCEFILES += pfs.S pfs_write.S
|
||||||
|
|
||||||
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
CONTIKI_CPU = $(CONTIKI)/cpu/6502
|
||||||
include $(CONTIKI_CPU)/Makefile.6502
|
include $(CONTIKI_CPU)/Makefile.6502
|
||||||
|
|
||||||
CFLAGS += -DWITH_PETSCII
|
CFLAGS += -DWITH_PETSCII
|
||||||
LDFLAGS += -t $(TARGET)
|
|
||||||
|
|
||||||
ifeq ($(MAKECMDGOALS),disk)
|
ifeq ($(MAKECMDGOALS),disk)
|
||||||
ifndef C1541
|
ifndef C1541
|
||||||
|
|
|
@ -1,69 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (c) 2010, Swedish Institute of Computer Science.
|
|
||||||
* 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. Neither the name of the Institute nor the names of its contributors
|
|
||||||
* may be used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``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 INSTITUTE OR CONTRIBUTORS 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.
|
|
||||||
*
|
|
||||||
* Author: Oliver Schmidt <ol.sc@web.de>
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
#include <cbm.h>
|
|
||||||
|
|
||||||
#include "contiki.h"
|
|
||||||
|
|
||||||
#include "cfs/cfs.h"
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
int
|
|
||||||
cfs_opendir(struct cfs_dir *p, const char *n)
|
|
||||||
{
|
|
||||||
return cbm_opendir(12, _curunit);
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
int
|
|
||||||
cfs_readdir(struct cfs_dir *p, struct cfs_dirent *e)
|
|
||||||
{
|
|
||||||
struct cbm_dirent dirent;
|
|
||||||
|
|
||||||
do {
|
|
||||||
if(cbm_readdir(12, &dirent)) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
} while(dirent.type == CBM_T_HEADER);
|
|
||||||
strcpy(e->name, dirent.name);
|
|
||||||
e->size = dirent.size;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
void
|
|
||||||
cfs_closedir(struct cfs_dir *p)
|
|
||||||
{
|
|
||||||
cbm_closedir(12);
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
|
@ -36,7 +36,7 @@
|
||||||
.constructor init_pfs
|
.constructor init_pfs
|
||||||
.destructor done_pfs
|
.destructor done_pfs
|
||||||
.importzp ptr1, ptr2, ptr3, sp
|
.importzp ptr1, ptr2, ptr3, sp
|
||||||
.import __curunit, __filetype, popax, addysp, subysp
|
.import curunit, __filetype, popax, addysp, subysp
|
||||||
.export pfs_rwcommon, pfs_rwsetflags, pfs_rwcommonend
|
.export pfs_rwcommon, pfs_rwsetflags, pfs_rwcommonend
|
||||||
.if F_IDE64
|
.if F_IDE64
|
||||||
.export ide64_rwprepare, ide64_rwfinish
|
.export ide64_rwprepare, ide64_rwfinish
|
||||||
|
@ -178,7 +178,7 @@ next: inc ptr2 ;next file number
|
||||||
stx ptr2+1
|
stx ptr2+1
|
||||||
nextsa: inc ptr2+1 ;next channel
|
nextsa: inc ptr2+1 ;next channel
|
||||||
retr: lda ptr2 ;file number
|
retr: lda ptr2 ;file number
|
||||||
ldx __curunit
|
ldx curunit
|
||||||
ldy ptr2+1 ;secondary address
|
ldy ptr2+1 ;secondary address
|
||||||
jsr SETLFS
|
jsr SETLFS
|
||||||
jsr OPEN ;open
|
jsr OPEN ;open
|
||||||
|
|
Loading…
Add table
Reference in a new issue