deleting old stuff

pull/100/head
Alan Johnston 5 years ago
parent 7f616554e6
commit 195f646d50

@ -1,539 +0,0 @@
TARGET_MODEL := --calling_convention=data_overlay --data_model=small --place_constants=code
TARGET_DEFINES := -D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=0
LIBSUFFIX :=
#TARGET_INSTDIR := C:/EDA/IAR\ Systems/Embedded\ Workbench\ 6.0\ Kickstart/8051
#TARGET_INSTDIR := C:/EDA/IAR\ Systems/Embedded\ Workbench\ 6.5/8051
#TARGET_INSTDIR := C:/Program\ Files\ \(x86\)/IAR\ Systems/Embedded\ Workbench\ 6.5/8051
TARGET_INSTDIR := C:/Program\ Files\ \(x86\)/IAR\ Systems/Embedded\ Workbench\ 7.3/8051
TARGET_ASM := $(TARGET_INSTDIR)/bin/a8051.exe
TARGET_LD := $(TARGET_INSTDIR)/bin/xlink.exe
TARGET_CC := $(TARGET_INSTDIR)/bin/icc8051.exe
TARGET_AR := $(TARGET_INSTDIR)/bin/xar.exe
TARGET_ASMFLAGS := -v0 -D__CORE__=1 -D__CODE_MODEL__=1 -D__NUMBER_OF_DPTRS__=1 $(TARGET_DEFINES) -s+ -M"<>" -r -w+ -I$(TARGET_INSTDIR)/src/lib
TARGET_LNKFLAGS := -D_NR_OF_BANKS=0 -D_CODEBANK_END=0 -D_CODEBANK_START=0 -I$(TARGET_INSTDIR)/config -e_small_write=_formatted_write -e_medium_read=_formatted_read -Faomf8051 -Y0 -I$(TARGET_INSTDIR)/lib -f $(TARGET_INSTDIR)/config/devices/_generic/lnk51ew_plain.xcl -D?DPMASK=0x01 -D_NR_OF_VIRTUAL_REGISTERS=8 -D?DPS=0x85 -D?PBANK=0xD9 -D?DPL1=0x84 -D?DPH1=0x85 -s __program_start $(TARGET_INSTDIR)/LIB/CLIB/cl-pli-nsdc-2e16inc.r51 -D_IDATA_STACK_SIZE=0x40 -D_EXTENDED_STACK_START=0x00 -D_EXTENDED_STACK_SIZE=0x00 -D_PDATA_STACK_SIZE=0x80 -D_XDATA_STACK_SIZE=0xEFF -D_XDATA_HEAP_SIZE=0xFF -D_FAR_HEAP_SIZE=0xFFF -D_HUGE_HEAP_SIZE=0xFFF -D_FAR22_HEAP_SIZE=0xFFF
TARGET_CFLAGS := -e --no_unroll --no_inline --no_tbaa --debug --core=plain --dptr=16,1,separate,xor $(TARGET_MODEL) --code_model=near --nr_virtual_regs 8 -Om --library_module --diag_suppress=Pa050 -I../source
LIBMFOBJ := lcdinit.r51 lcdsetpos.r51 lcdwrstr.r51 lcdclear.r51 lcdclrdisp.r51 lcdwru16.r51 lcdwru32.r51 \
lcdwrhexu16.r51 lcdwrhexu32.r51 lcduwrnum16.r51 lcduwrnum32.r51 lcduwrhex16.r51 lcduwrhex32.r51 \
dbglink.r51 dbglnktxbuf.r51 dbglnkrxbuf.r51 dbglnktx.r51 dbglnkrx.r51 dbglnkwrhexu16.r51 dbglnkwrhexu32.r51 dbglnkwrstr.r51 \
dbglnkwru16.r51 dbglnkwru32.r51 dbglnkwrnum16.r51 dbglnkwrnum32.r51 dbglnkwrhex16.r51 dbglnkwrhex32.r51 \
crc8ccitt.r51 crc8onewire.r51 crc8tccitt.r51 crc8tccittmsb.r51 crc8tonewire.r51 crc8tonewiremsb.r51 \
crc8ccittb.r51 crc8ccittmsbb.r51 crc8onewireb.r51 crc8onewiremsbb.r51 \
crc8ccitttable.r51 crc8onewiretable.r51 crc8ccittmsbtable.r51 crc8onewiremsbtable.r51 \
crcccitt.r51 crcccittmsb.r51 crc16ansi.r51 crc16ansimsb.r51 crc16dnp.r51 crc16dnpmsb.r51 crc32ansi.r51 crc32ansimsb.r51 \
crcccittb.r51 crcccittmsbb.r51 crc16ansib.r51 crc16ansimsbb.r51 crc16dnpb.r51 crc16dnpmsbb.r51 crc32ansib.r51 crc32ansimsbb.r51 \
crcccitttable.r51 crc16table.r51 crc16dnptable.r51 crcccittmsbtable.r51 crc16msbtable.r51 \
crc16dnpmsbtable.r51 crc32table.r51 crc32msbtable.r51 pn9.r51 pn9table.r51 pn9bit.r51 pn9bits.r51 pn9byte.r51 pn9buf.r51 \
pn15advtable.r51 pn15outtable.r51 pn15adv.r51 pn15out.r51 \
rev8.r51 hweight8.r51 hweight16.r51 hweight32.r51 signext12.r51 signext16.r51 signext20.r51 signext24.r51 \
chksgnlim16.r51 sgnlim16.r51 chksgnlim32.r51 sgnlim32.r51 grayenc8.r51 graydec8.r51 fmemsetiar.r51 fmemcpyiar.r51 \
delay.r51 random.r51 sleep.r51 sleepcont.r51 deepsleep.r51 standby.r51 resetcpu.r51 \
flashunlock.r51 flashlock.r51 flashwait.r51 flashpgerase.r51 flashwrite.r51 flashread.r51 flashcal.r51 flashcsec.r51 \
uarttimer0.r51 uarttimer1.r51 uarttimer2.r51 uart0init.r51 uart1init.r51 uart0stop.r51 uart1stop.r51 \
uart0txbuf.r51 uart1txbuf.r51 uart0rxbuf.r51 uart1rxbuf.r51 \
uart0tx.r51 uart1tx.r51 uart0rx.r51 uart1rx.r51 uart0wrhexu16.r51 uart1wrhexu16.r51 uart0wrhexu32.r51 uart1wrhexu32.r51 \
uart0wrstr.r51 uart1wrstr.r51 uart0wru16.r51 uart1wru16.r51 uart0wru32.r51 uart1wru32.r51 \
uart0wrnum16.r51 uart0wrnum32.r51 uart0wrhex16.r51 uart0wrhex32.r51 \
uart1wrnum16.r51 uart1wrnum32.r51 uart1wrhex16.r51 uart1wrhex32.r51 \
adctemp.r51 adccal.r51 adccalg.r51 adccalt.r51 adcuncal.r51 adcseoffs00.r51 adcseoffs01.r51 adcseoffs10.r51 \
bch3121dec.r51 bch3121decp.r51 bch3121enc.r51 bch3121encp.r51 bch3121stab.r51 bch3121syn.r51 \
wrnum16.r51 wrnum32.r51 offxosc.r51 offlpxosc.r51 setuplpxosc.r51 setupxosc.r51 setupcal.r51 \
wtimer.r51 wtrem.r51 wtcbadd.r51 wtcbrem.r51 wt0setcfg.r51 wt1setcfg.r51 wtstdby.r51 \
wt0adda.r51 wt1adda.r51 wt0addr.r51 wt1addr.r51 wt0curt.r51 wt1curt.r51 wt0rem.r51 wt1rem.r51 wt01rem.r51 \
radiord16.r51 radiord24.r51 radiord32.r51 radiowr16.r51 radiowr24.r51 radiowr32.r51 radiodswakecore.r51 \
ax5031comminit.r51 ax5031commslpexit.r51 ax5031reset.r51 ax5031deepsleep.r51 ax5031rclkena.r51 ax5031rclkdis.r51 \
ax5031rdfifo.r51 ax5031wrfifo.r51 \
ax5042comminit.r51 ax5042commslpexit.r51 ax5042reset.r51 ax5042deepsleep.r51 ax5042rclkena.r51 ax5042rclkdis.r51 \
ax5042rdfifo.r51 ax5042wrfifo.r51 \
ax5043comminit.r51 ax5043commslpexit.r51 ax5043reset.r51 ax5043deepsleep.r51 ax5043rclkena.r51 ax5043rclkdis.r51 \
ax5043rdfifo.r51 ax5043wrfifo.r51 \
ax5051comminit.r51 ax5051commslpexit.r51 ax5051reset.r51 ax5051deepsleep.r51 ax5051rclkena.r51 ax5051rclkdis.r51 \
ax5051rdfifo.r51 ax5051wrfifo.r51 \
ax8052regs.r51 radioregs.r51 CStartup.r51 getpspiar.r51 getxspiar.r51
BINARIES :=
LIBBINARIES := libmf.r51 libmflarge.r51 \
libmf-pli-nlpc-1e16x01.r51 libmf-pli-nlpd-1e16x01.r51 libmf-pli-nlxc-1e16x01.r51 libmf-pli-nlxd-1e16x01.r51 \
libmf-pli-nsdc-1e16x01.r51 libmf-pli-nsdd-1e16x01.r51 libmf-pli-nsic-1e16x01.r51 libmf-pli-nsid-1e16x01.r51 libmf-pli-nsoc-1e16x01.r51 libmf-pli-nsod-1e16x01.r51 \
libmf-pli-ntdc-1e16x01.r51 libmf-pli-ntdd-1e16x01.r51 libmf-pli-ntic-1e16x01.r51 libmf-pli-ntid-1e16x01.r51 libmf-pli-ntoc-1e16x01.r51 libmf-pli-ntod-1e16x01.r51
ifeq ($(LIBSUFFIX),)
all: $(LIBBINARIES) $(BINARIES) $(patsubst %.omf,%.cdb,$(BINARIES)) $(patsubst %.omf,%.ihx,$(BINARIES))
else
all: libmf$(LIBSUFFIX).r51
endif
clean:
rm -rf *.lnk radioregs.s51 $(LIBBINARIES) $(patsubst %.r51,%,$(LIBBINARIES)) mflibbiniar.tar.gz
tar: mflibbiniar.tar.gz
mflibbiniar.tar.gz: $(LIBBINARIES)
tar -c -v -z -f $@ $(LIBBINARIES)
ifeq ($(LIBSUFFIX),)
.PHONY: libmflarge.r51
.PHONY: libmf-pli-nlpc-1e16x01.r51
.PHONY: libmf-pli-nlpd-1e16x01.r51
.PHONY: libmf-pli-nlxc-1e16x01.r51
.PHONY: libmf-pli-nlxd-1e16x01.r51
.PHONY: libmf-pli-nsdc-1e16x01.r51
.PHONY: libmf-pli-nsdd-1e16x01.r51
.PHONY: libmf-pli-nsic-1e16x01.r51
.PHONY: libmf-pli-nsid-1e16x01.r51
.PHONY: libmf-pli-nsoc-1e16x01.r51
.PHONY: libmf-pli-nsod-1e16x01.r51
.PHONY: libmf-pli-ntdc-1e16x01.r51
.PHONY: libmf-pli-ntdd-1e16x01.r51
.PHONY: libmf-pli-ntic-1e16x01.r51
.PHONY: libmf-pli-ntid-1e16x01.r51
.PHONY: libmf-pli-ntoc-1e16x01.r51
.PHONY: libmf-pli-ntod-1e16x01.r51
libmflarge.r51:
make TARGET_MODEL="--calling_convention=pdata_reentrant --data_model=large --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=2 -D__CALLING_CONVENTION__=3" LIBSUFFIX=large
# name format: -pli-n(1)(2)(3)-1e16x01
# page 152
# (1): data model
# t - --data_model=tiny -D__DATA_MODEL__=0
# s - --data_model=small -D__DATA_MODEL__=1
# l - --data_model=large -D__DATA_MODEL__=2
# g - --data_model=generic -D__DATA_MODEL__=3
# j - --data_model=far_generic -D__DATA_MODEL__=5
# f - --data_model=far -D__DATA_MODEL__=4
# (2): calling convention
# d - --calling_convention=data_overlay -D__CALLING_CONVENTION__=0
# o - --calling_convention=idata_overlay -D__CALLING_CONVENTION__=1
# i - --calling_convention=idata_reentrant -D__CALLING_CONVENTION__=2
# p - --calling_convention=pdata_reentrant -D__CALLING_CONVENTION__=3
# x - --calling_convention=xdata_reentrant -D__CALLING_CONVENTION__=4
# e - --calling_convention=ext_stack_reentrant -D__CALLING_CONVENTION__=5
# (3): constant location
# c - --place_constants=code
# d - --place_constants=data
libmf-pli-nlpc-1e16x01.r51:
make TARGET_MODEL="--data_model=large --calling_convention=pdata_reentrant --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=2 -D__CALLING_CONVENTION__=3" LIBSUFFIX=-pli-nlpc-1e16x01
libmf-pli-nlpd-1e16x01.r51:
make TARGET_MODEL="--data_model=large --calling_convention=pdata_reentrant --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=2 -D__CALLING_CONVENTION__=3" LIBSUFFIX=-pli-nlpd-1e16x01
libmf-pli-nlxc-1e16x01.r51:
make TARGET_MODEL="--data_model=large --calling_convention=xdata_reentrant --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=2 -D__CALLING_CONVENTION__=4" LIBSUFFIX=-pli-nlxc-1e16x01
libmf-pli-nlxd-1e16x01.r51:
make TARGET_MODEL="--data_model=large --calling_convention=xdata_reentrant --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=2 -D__CALLING_CONVENTION__=4" LIBSUFFIX=-pli-nlxd-1e16x01
libmf-pli-nsdc-1e16x01.r51:
make TARGET_MODEL="--data_model=small --calling_convention=data_overlay --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=0" LIBSUFFIX=-pli-nsdc-1e16x01
libmf-pli-nsdd-1e16x01.r51:
make TARGET_MODEL="--data_model=small --calling_convention=data_overlay --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=0" LIBSUFFIX=-pli-nsdd-1e16x01
libmf-pli-nsic-1e16x01.r51:
make TARGET_MODEL="--data_model=small --calling_convention=idata_reentrant --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=2" LIBSUFFIX=-pli-nsic-1e16x01
libmf-pli-nsid-1e16x01.r51:
make TARGET_MODEL="--data_model=small --calling_convention=idata_reentrant --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=2" LIBSUFFIX=-pli-nsid-1e16x01
libmf-pli-nsoc-1e16x01.r51:
make TARGET_MODEL="--data_model=small --calling_convention=idata_overlay --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=1" LIBSUFFIX=-pli-nsoc-1e16x01
libmf-pli-nsod-1e16x01.r51:
make TARGET_MODEL="--data_model=small --calling_convention=idata_overlay --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=1 -D__CALLING_CONVENTION__=1" LIBSUFFIX=-pli-nsod-1e16x01
libmf-pli-ntdc-1e16x01.r51:
make TARGET_MODEL="--data_model=tiny --calling_convention=data_overlay --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=0 -D__CALLING_CONVENTION__=0" LIBSUFFIX=-pli-ntdc-1e16x01
libmf-pli-ntdd-1e16x01.r51:
make TARGET_MODEL="--data_model=tiny --calling_convention=data_overlay --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=0 -D__CALLING_CONVENTION__=0" LIBSUFFIX=-pli-ntdd-1e16x01
libmf-pli-ntic-1e16x01.r51:
make TARGET_MODEL="--data_model=tiny --calling_convention=idata_reentrant --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=0 -D__CALLING_CONVENTION__=2" LIBSUFFIX=-pli-ntic-1e16x01
libmf-pli-ntid-1e16x01.r51:
make TARGET_MODEL="--data_model=tiny --calling_convention=idata_reentrant --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=0 -D__CALLING_CONVENTION__=2" LIBSUFFIX=-pli-ntid-1e16x01
libmf-pli-ntoc-1e16x01.r51:
make TARGET_MODEL="--data_model=tiny --calling_convention=idata_overlay --place_constants=code" TARGET_DEFINES="-D__DATA_MODEL__=0 -D__CALLING_CONVENTION__=1" LIBSUFFIX=-pli-ntoc-1e16x01
libmf-pli-ntod-1e16x01.r51:
make TARGET_MODEL="--data_model=tiny --calling_convention=idata_overlay --place_constants=data" TARGET_DEFINES="-D__DATA_MODEL__=0 -D__CALLING_CONVENTION__=1" LIBSUFFIX=-pli-ntod-1e16x01
endif
.PRECIOUS: radioregs.s51
radioregs.s51: ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h
./genrregs.pl $^ > $@
libmf$(LIBSUFFIX):
[ ! -d $@ ] && mkdir -p $@
.PRECIOUS: %.r51 %.omf %.ihx %.cdb
%.r51: ../%.c
$(TARGET_CC) $(TARGET_CFLAGS) -o $@ -lC `basename $@ .r51`.lst $<
%.omf %.ihx %.cdb: %.r51 libmf$(LIBSUFFIX).r51
(libdir=`pwd`; dn=`dirname $<`/; fn=`basename $< .r51`; cd $${dn}; $(TARGET_LD) -V $(TARGET_LNKFLAGS) -L$${libdir} -llibmf$(LIBSUFFIX) $${fn}.r51; x=$$?; mv $${fn} $${fn}.omf; exit $${x})
libmf$(LIBSUFFIX)/%.r51: ../source/%.c | libmf$(LIBSUFFIX)
$(TARGET_CC) $(TARGET_CFLAGS) -o $@ -lC libmf$(LIBSUFFIX)/`basename $@ .r51`.lst $<
libmf$(LIBSUFFIX)/%.r51: libmf$(LIBSUFFIX)/%.c | libmf$(LIBSUFFIX)
$(TARGET_CC) $(TARGET_CFLAGS) -o $@ -lC libmf$(LIBSUFFIX)/`basename $@ .r51`.lst $<
libmf$(LIBSUFFIX)/%.r51: ../source/%.s51 | libmf$(LIBSUFFIX)
$(TARGET_ASM) $(TARGET_ASMFLAGS) -o $@ -l libmf$(LIBSUFFIX)/`basename $@ .r51`.lst -t8 $<
libmf$(LIBSUFFIX)/%.r51: %.s51 | libmf$(LIBSUFFIX)
$(TARGET_ASM) $(TARGET_ASMFLAGS) -o $@ -l libmf$(LIBSUFFIX)/`basename $@ .r51`.lst -t8 $<
libmf$(LIBSUFFIX)/%.s51: ../source/%.c | libmf$(LIBSUFFIX)
$(TARGET_CC) $(TARGET_CFLAGS) -o libmf$(LIBSUFFIX)/`basename $@ .s51`.r51 -lA $@ $<
libmf$(LIBSUFFIX)/%.s51: libmf$(LIBSUFFIX)/%.c | libmf$(LIBSUFFIX)
$(TARGET_CC) $(TARGET_CFLAGS) -o libmf$(LIBSUFFIX)/`basename $@ .s51`.r51 -lA $@ $<
libmf$(LIBSUFFIX).r51: $(patsubst %.r51,libmf$(LIBSUFFIX)/%.r51,$(LIBMFOBJ)) | libmf$(LIBSUFFIX)
$(TARGET_AR) -o $@ $(patsubst %.r51,libmf$(LIBSUFFIX)/%.r51,$(LIBMFOBJ))
libmf$(LIBSUFFIX)/uarttimer0.c: ../source/uarttimer.c
(unifdef -DTIMER=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer1.c: ../source/uarttimer.c
(unifdef -DTIMER=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer2.c: ../source/uarttimer.c
(unifdef -DTIMER=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0init.c: ../source/uartinit.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0stop.c: ../source/uartstop.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1init.c: ../source/uartinit.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1stop.c: ../source/uartstop.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0%.c: ../source/io%.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1%.c: ../source/io%.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/dbglnk%.c: ../source/io%.c
(unifdef -DUART=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdu%.c: ../source/io%.c
(unifdef -DUART=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5031%.c: ../source/radio%.c
(unifdef -DRADIO=5031 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5042%.c: ../source/radio%.c
(unifdef -DRADIO=5042 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5043%.c: ../source/radio%.c
(unifdef -DRADIO=5043 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5051%.c: ../source/radio%.c
(unifdef -DRADIO=5051 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccitt.c: ../source/crc8.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccittmsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewire.c: ../source/crc8.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewiremsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansi.c: ../source/crc16.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnp.c: ../source/crc16.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccitt.c: ../source/crc16.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansi.c: ../source/crc32.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsb.c: ../source/crc32msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittb.c: ../source/crc8b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittmsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewireb.c: ../source/crc8b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewiremsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansib.c: ../source/crc16b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpb.c: ../source/crc16b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittb.c: ../source/crc16b.c
(unifdef -DCRCMODE=4 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=5 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansib.c: ../source/crc32b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsbb.c: ../source/crc32b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdinit.r51: ../source/lcdinit.c ../source/libmflcd.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdsetpos.r51: ../source/lcdsetpos.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrstr.r51: ../source/lcdwrstr.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclear.r51: ../source/lcdclear.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclrdisp.r51: ../source/lcdclrdisp.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru16.r51: ../source/lcdwru16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru32.r51: ../source/lcdwru32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu16.r51: ../source/lcdwrhexu16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu32.r51: ../source/lcdwrhexu32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum16.r51: libmf$(LIBSUFFIX)/lcduwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum32.r51: libmf$(LIBSUFFIX)/lcduwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex16.r51: libmf$(LIBSUFFIX)/lcduwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex32.r51: libmf$(LIBSUFFIX)/lcduwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/delay.r51: ../source/delay.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/random.r51: ../source/random.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitt.r51: ../source/crc8ccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewire.r51: ../source/crc8onewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitttable.r51: ../source/crc8ccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiretable.r51: ../source/crc8onewiretable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbtable.r51: ../source/crc8ccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbtable.r51: ../source/crc8onewiremsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitttable.r51: ../source/crcccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16table.r51: ../source/crc16table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnptable.r51: ../source/crc16dnptable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbtable.r51: ../source/crcccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16msbtable.r51: ../source/crc16msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbtable.r51: ../source/crc16dnpmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32table.r51: ../source/crc32table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32msbtable.r51: ../source/crc32msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccitt.r51: libmf$(LIBSUFFIX)/crc8tccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccittmsb.r51: libmf$(LIBSUFFIX)/crc8tccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewire.r51: libmf$(LIBSUFFIX)/crc8tonewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewiremsb.r51: libmf$(LIBSUFFIX)/crc8tonewiremsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansi.r51: libmf$(LIBSUFFIX)/crc16ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsb.r51: libmf$(LIBSUFFIX)/crc16ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnp.r51: libmf$(LIBSUFFIX)/crc16dnp.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsb.r51: libmf$(LIBSUFFIX)/crc16dnpmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitt.r51: libmf$(LIBSUFFIX)/crcccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsb.r51: libmf$(LIBSUFFIX)/crcccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansi.r51: libmf$(LIBSUFFIX)/crc32ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsb.r51: libmf$(LIBSUFFIX)/crc32ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittb.r51: libmf$(LIBSUFFIX)/crc8ccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbb.r51: libmf$(LIBSUFFIX)/crc8ccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewireb.r51: libmf$(LIBSUFFIX)/crc8onewireb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbb.r51: libmf$(LIBSUFFIX)/crc8onewiremsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansib.r51: libmf$(LIBSUFFIX)/crc16ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsbb.r51: libmf$(LIBSUFFIX)/crc16ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpb.r51: libmf$(LIBSUFFIX)/crc16dnpb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbb.r51: libmf$(LIBSUFFIX)/crc16dnpmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittb.r51: libmf$(LIBSUFFIX)/crcccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbb.r51: libmf$(LIBSUFFIX)/crcccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansib.r51: libmf$(LIBSUFFIX)/crc32ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsbb.r51: libmf$(LIBSUFFIX)/crc32ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9.r51: ../source/pn9.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9table.r51: ../source/pn9table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bit.r51: ../source/pn9bit.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bits.r51: ../source/pn9bits.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9byte.r51: ../source/pn9byte.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9buf.r51: ../source/pn9buf.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15advtable.r51: ../source/pn15advtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15outtable.r51: ../source/pn15outtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15adv.r51: ../source/pn15adv.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15out.r51: ../source/pn15out.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/rev8.r51: ../source/rev8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight8.r51: ../source/hweight8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight16.r51: ../source/hweight16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight32.r51: ../source/hweight32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext12.r51: ../source/signext12.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext16.r51: ../source/signext16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext20.r51: ../source/signext20.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext24.r51: ../source/signext24.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim16.r51: ../source/chksgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim16.r51: ../source/sgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim32.r51: ../source/chksgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim32.r51: ../source/sgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/grayenc8.r51: ../source/grayenc8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/graydec8.r51: ../source/graydec8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemset.r51: ../source/fmemset.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemcpy.r51: ../source/fmemcpy.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemsetiar.r51: ../source/fmemsetiar.s51 | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemcpyiar.r51: ../source/fmemcpyiar.s51 | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/standby.r51: ../source/standby.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleep.r51: ../source/sleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleepcont.r51: ../source/sleepcont.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/deepsleep.r51: ../source/deepsleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/resetcpu.r51: ../source/resetcpu.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashunlock.r51: ../source/flashunlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashlock.r51: ../source/flashlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwait.r51: ../source/flashwait.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashpgerase.r51: ../source/flashpgerase.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwrite.r51: ../source/flashwrite.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashread.r51: ../source/flashread.c ../source/libmfflash.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcal.r51: ../source/flashcal.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcsec.r51: ../source/flashcsec.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0init.r51: libmf$(LIBSUFFIX)/uart0init.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1init.r51: libmf$(LIBSUFFIX)/uart1init.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0stop.r51: libmf$(LIBSUFFIX)/uart0stop.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1stop.r51: libmf$(LIBSUFFIX)/uart1stop.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0txbuf.r51: libmf$(LIBSUFFIX)/uart0txbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1txbuf.r51: libmf$(LIBSUFFIX)/uart1txbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rxbuf.r51: libmf$(LIBSUFFIX)/uart0rxbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rxbuf.r51: libmf$(LIBSUFFIX)/uart1rxbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0tx.r51: libmf$(LIBSUFFIX)/uart0tx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1tx.r51: libmf$(LIBSUFFIX)/uart1tx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rx.r51: libmf$(LIBSUFFIX)/uart0rx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rx.r51: libmf$(LIBSUFFIX)/uart1rx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu16.r51: libmf$(LIBSUFFIX)/uart0wrhexu16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu16.r51: libmf$(LIBSUFFIX)/uart1wrhexu16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu32.r51: libmf$(LIBSUFFIX)/uart0wrhexu32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu32.r51: libmf$(LIBSUFFIX)/uart1wrhexu32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrstr.r51: libmf$(LIBSUFFIX)/uart0wrstr.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrstr.r51: libmf$(LIBSUFFIX)/uart1wrstr.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru16.r51: libmf$(LIBSUFFIX)/uart0wru16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru16.r51: libmf$(LIBSUFFIX)/uart1wru16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru32.r51: libmf$(LIBSUFFIX)/uart0wru32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru32.r51: libmf$(LIBSUFFIX)/uart1wru32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum16.r51: libmf$(LIBSUFFIX)/uart0wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum16.r51: libmf$(LIBSUFFIX)/uart1wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum32.r51: libmf$(LIBSUFFIX)/uart0wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum32.r51: libmf$(LIBSUFFIX)/uart1wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex16.r51: libmf$(LIBSUFFIX)/uart0wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex16.r51: libmf$(LIBSUFFIX)/uart1wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex32.r51: libmf$(LIBSUFFIX)/uart0wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex32.r51: libmf$(LIBSUFFIX)/uart1wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglink.r51: ../source/dbglink.c ../source/libmfdbglink.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktxbuf.r51: libmf$(LIBSUFFIX)/dbglnktxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrxbuf.r51: libmf$(LIBSUFFIX)/dbglnkrxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktx.r51: libmf$(LIBSUFFIX)/dbglnktx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrx.r51: libmf$(LIBSUFFIX)/dbglnkrx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu16.r51: libmf$(LIBSUFFIX)/dbglnkwrhexu16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu32.r51: libmf$(LIBSUFFIX)/dbglnkwrhexu32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrstr.r51: libmf$(LIBSUFFIX)/dbglnkwrstr.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru16.r51: libmf$(LIBSUFFIX)/dbglnkwru16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru32.r51: libmf$(LIBSUFFIX)/dbglnkwru32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum16.r51: libmf$(LIBSUFFIX)/dbglnkwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum32.r51: libmf$(LIBSUFFIX)/dbglnkwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex16.r51: libmf$(LIBSUFFIX)/dbglnkwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex32.r51: libmf$(LIBSUFFIX)/dbglnkwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adctemp.r51: ../source/adctemp.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccal.r51: ../source/adccal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalg.r51: ../source/adccalg.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalt.r51: ../source/adccalt.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcuncal.r51: ../source/adcuncal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs00.r51: ../source/adcseoffs00.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs01.r51: ../source/adcseoffs01.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs10.r51: ../source/adcseoffs10.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121dec.r51: ../source/bch3121dec.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121decp.r51: ../source/bch3121decp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121enc.r51: ../source/bch3121enc.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121encp.r51: ../source/bch3121encp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121stab.r51: ../source/bch3121stab.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121syn.r51: ../source/bch3121syn.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum16.r51: ../source/wrnum16.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum32.r51: ../source/wrnum32.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offxosc.r51: ../source/offxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offlpxosc.r51: ../source/offlpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setuplpxosc.r51: ../source/setuplpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupxosc.r51: ../source/setupxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupcal.r51: ../source/setupcal.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtimer.r51: ../source/wtimer.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtrem.r51: ../source/wtrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbadd.r51: ../source/wtcbadd.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbrem.r51: ../source/wtcbrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0setcfg.r51: ../source/wt0setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1setcfg.r51: ../source/wt1setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtstdby.r51: ../source/wtstdby.c ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0adda.r51: ../source/wt0adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1adda.r51: ../source/wt1adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0addr.r51: ../source/wt0addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1addr.r51: ../source/wt1addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0curt.r51: ../source/wt0curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1curt.r51: ../source/wt1curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0rem.r51: ../source/wt0rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1rem.r51: ../source/wt1rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt01rem.r51: ../source/wt01rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord16.r51: ../source/radiord16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord24.r51: ../source/radiord24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord32.r51: ../source/radiord32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr16.r51: ../source/radiowr16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr24.r51: ../source/radiowr24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr32.r51: ../source/radiowr32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiodswakecore.r51: ../source/radiodswakecore.c ../source/radiodefs.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031comminit.r51: libmf$(LIBSUFFIX)/ax5031comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031commslpexit.r51: libmf$(LIBSUFFIX)/ax5031commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031reset.r51: libmf$(LIBSUFFIX)/ax5031reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031deepsleep.r51: libmf$(LIBSUFFIX)/ax5031deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkena.r51: ../source/ax5031rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkdis.r51: ../source/ax5031rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rdfifo.r51: libmf$(LIBSUFFIX)/ax5031rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031wrfifo.r51: libmf$(LIBSUFFIX)/ax5031wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031regs.r51: ../source/ax5031regs.c ../source/ax8052f131.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042comminit.r51: libmf$(LIBSUFFIX)/ax5042comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042commslpexit.r51: libmf$(LIBSUFFIX)/ax5042commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042reset.r51: libmf$(LIBSUFFIX)/ax5042reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042deepsleep.r51: libmf$(LIBSUFFIX)/ax5042deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkena.r51: ../source/ax5042rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkdis.r51: ../source/ax5042rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rdfifo.r51: libmf$(LIBSUFFIX)/ax5042rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042wrfifo.r51: libmf$(LIBSUFFIX)/ax5042wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042regs.r51: ../source/ax5042regs.c ../source/ax8052f142.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043comminit.r51: libmf$(LIBSUFFIX)/ax5043comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043commslpexit.r51: libmf$(LIBSUFFIX)/ax5043commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043reset.r51: libmf$(LIBSUFFIX)/ax5043reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043deepsleep.r51: libmf$(LIBSUFFIX)/ax5043deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkena.r51: ../source/ax5043rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkdis.r51: ../source/ax5043rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rdfifo.r51: libmf$(LIBSUFFIX)/ax5043rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043wrfifo.r51: libmf$(LIBSUFFIX)/ax5043wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043regs.r51: ../source/ax5043regs.c ../source/ax8052f143.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051comminit.r51: libmf$(LIBSUFFIX)/ax5051comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051commslpexit.r51: libmf$(LIBSUFFIX)/ax5051commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051reset.r51: libmf$(LIBSUFFIX)/ax5051reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051deepsleep.r51: libmf$(LIBSUFFIX)/ax5051deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkena.r51: ../source/ax5051rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkdis.r51: ../source/ax5051rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rdfifo.r51: libmf$(LIBSUFFIX)/ax5051rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051wrfifo.r51: libmf$(LIBSUFFIX)/ax5051wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051regs.r51: ../source/ax5051regs.c ../source/ax8052f151.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax8052regs.r51: ../source/ax8052regs.c ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radioregs.r51: radioregs.s51 | libmf$(LIBSUFFIX)

@ -1,32 +0,0 @@
#!/usr/bin/perl
my %regs;
while (<>) {
next unless /^\s*SFRX\(\s*([A-Za-z0-9_]+)\s*,\s*(0x(?:[0-9A-Fa-f])+)\s*\)/;
my $name = $1;
my $addr = hex($2);
next if $addr < 0x4000 || $addr > 0x5fff;
#printf "%s 0x%x\n", $name, $addr;
${$regs{$addr}}{$name} = 1;
}
# foreach $addr (sort keys(%regs)) {
# printf "0x%x:\n", $addr;
# foreach $name (sort keys(%{$regs{$addr}})) {
# printf "%s 0x%x\n", $name, $addr;
# }
# }
printf "\tMODULE radioregs\n\n", $addr;
foreach $addr (sort keys(%regs)) {
foreach $name (sort keys(%{$regs{$addr}})) {
printf "\tPUBWEAK %s\n", $name;
}
printf "\n\tASEGN XDATA_AN:XDATA:ROOT,%05XH\n", $addr;
foreach $name (sort keys(%{$regs{$addr}})) {
printf "%s:\n", $name;
}
printf "\tDATA8\n\tDS 1\n\n";
}
print "\tEND\n\n";

@ -1,433 +0,0 @@
TARGET_MODEL := SMALL
LIBSUFFIX :=
KEILPATH := C:/EDA/Keil
C51INC := $(KEILPATH)/C51/INC
C51LIB := $(KEILPATH)/C51/LIB
C51FLAGS := OBJECTEXTEND $(TARGET_MODEL) DEBUG INCDIR "($(shell cygpath -w ../source))"
A51OPT := "SET ($(TARGET_MODEL))" EP DEBUG
L51OPT := "RAMSIZE(256) XDATA(0x0-0x1FFF) CODE(0x0-0xFFFF)"
CPU_TYPE := 8052AH
CPU_VENDOR := Intel
CPU_XTAL := 0x01312D00
LIBMFOBJ := lcdinit.obj lcdsetpos.obj lcdwrstr.obj lcdclear.obj lcdclrdisp.obj lcdwru16.obj lcdwru32.obj \
lcdwrhexu16.obj lcdwrhexu32.obj lcduwrnum16.obj lcduwrnum32.obj lcduwrhex16.obj lcduwrhex32.obj \
dbglink.obj dbglnktxbuf.obj dbglnkrxbuf.obj dbglnktx.obj dbglnkrx.obj dbglnkwrhexu16.obj dbglnkwrhexu32.obj dbglnkwrstr.obj \
dbglnkwru16.obj dbglnkwru32.obj dbglnkwrnum16.obj dbglnkwrnum32.obj dbglnkwrhex16.obj dbglnkwrhex32.obj \
crc8ccitt.obj crc8onewire.obj crc8tccitt.obj crc8tccittmsb.obj crc8tonewire.obj crc8tonewiremsb.obj \
crc8ccittb.obj crc8ccittmsbb.obj crc8onewireb.obj crc8onewiremsbb.obj \
crc8ccitttable.obj crc8onewiretable.obj crc8ccittmsbtable.obj crc8onewiremsbtable.obj \
crcccitt.obj crcccittmsb.obj crc16ansi.obj crc16ansimsb.obj crc16dnp.obj crc16dnpmsb.obj crc32ansi.obj crc32ansimsb.obj \
crcccittb.obj crcccittmsbb.obj crc16ansib.obj crc16ansimsbb.obj crc16dnpb.obj crc16dnpmsbb.obj crc32ansib.obj crc32ansimsbb.obj \
crcccitttable.obj crc16table.obj crc16dnptable.obj crcccittmsbtable.obj crc16msbtable.obj \
crc16dnpmsbtable.obj crc32table.obj crc32msbtable.obj pn9.obj pn9table.obj pn9bit.obj pn9bits.obj pn9byte.obj pn9buf.obj \
pn15advtable.obj pn15outtable.obj pn15adv.obj pn15out.obj \
rev8.obj hweight8.obj hweight16.obj hweight32.obj signext12.obj signext16.obj signext20.obj signext24.obj \
chksgnlim16.obj sgnlim16.obj chksgnlim32.obj sgnlim32.obj grayenc8.obj graydec8.obj fmemset.obj fmemcpy.obj \
delay.obj random.obj sleep.obj sleepcont.obj deepsleep.obj standby.obj resetcpu.obj \
flashunlock.obj flashlock.obj flashwait.obj flashpgerase.obj flashwrite.obj flashread.obj flashcal.obj flashcsec.obj \
uarttimer0.obj uarttimer1.obj uarttimer2.obj uart0init.obj uart1init.obj uart0stop.obj uart1stop.obj \
uart0txbuf.obj uart1txbuf.obj uart0rxbuf.obj uart1rxbuf.obj \
uart0tx.obj uart1tx.obj uart0rx.obj uart1rx.obj uart0wrhexu16.obj uart1wrhexu16.obj uart0wrhexu32.obj uart1wrhexu32.obj \
uart0wrstr.obj uart1wrstr.obj uart0wru16.obj uart1wru16.obj uart0wru32.obj uart1wru32.obj \
uart0wrnum16.obj uart0wrnum32.obj uart0wrhex16.obj uart0wrhex32.obj \
uart1wrnum16.obj uart1wrnum32.obj uart1wrhex16.obj uart1wrhex32.obj \
adctemp.obj adccal.obj adccalg.obj adccalt.obj adcuncal.obj adcseoffs00.obj adcseoffs01.obj adcseoffs10.obj \
bch3121dec.obj bch3121decp.obj bch3121enc.obj bch3121encp.obj bch3121stab.obj bch3121syn.obj \
wrnum16.obj wrnum32.obj offxosc.obj offlpxosc.obj setuplpxosc.obj setupxosc.obj setupcal.obj \
wtimer.obj wtrem.obj wtcbadd.obj wtcbrem.obj wt0setcfg.obj wt1setcfg.obj wtstdby.obj \
wt0adda.obj wt1adda.obj wt0addr.obj wt1addr.obj wt0curt.obj wt1curt.obj wt0rem.obj wt1rem.obj wt01rem.obj \
radiord16.obj radiord24.obj radiord32.obj radiowr16.obj radiowr24.obj radiowr32.obj radiodswakecore.obj \
ax5031comminit.obj ax5031commslpexit.obj ax5031reset.obj ax5031deepsleep.obj ax5031rclkena.obj ax5031rclkdis.obj \
ax5031rdfifo.obj ax5031wrfifo.obj ax5031regs.obj \
ax5042comminit.obj ax5042commslpexit.obj ax5042reset.obj ax5042deepsleep.obj ax5042rclkena.obj ax5042rclkdis.obj \
ax5042rdfifo.obj ax5042wrfifo.obj ax5042regs.obj \
ax5043comminit.obj ax5043commslpexit.obj ax5043reset.obj ax5043deepsleep.obj ax5043rclkena.obj ax5043rclkdis.obj \
ax5043rdfifo.obj ax5043wrfifo.obj ax5043regs.obj \
ax5051comminit.obj ax5051commslpexit.obj ax5051reset.obj ax5051deepsleep.obj ax5051rclkena.obj ax5051rclkdis.obj \
ax5051rdfifo.obj ax5051wrfifo.obj ax5051regs.obj \
ax8052regs.obj
BINARIES :=
comma := ,
empty :=
space := $(empty) $(empty)
all: libmf.lib libmflarge.lib $(BINARIES) $(patsubst %.omf,%.hex,$(BINARIES))
clean:
rm -rf LIBMF.LIB libmf.lib libmf LIBMFLARGE.LIB libmflarge.lib libmflarge mflibbinkeil.tar.gz
tar: mflibbinkeil.tar.gz
mflibbinkeil.tar.gz:
[ -f LIBMF.LIB ] && mv LIBMF.LIB libmf.lib ; \
[ -f LIBMFLARGE.LIB ] && mv LIBMFLARGE.LIB libmflarge.lib ; \
tar -c -v -z -f $@ libmf.lib libmflarge.lib
ifeq ($(LIBSUFFIX),)
libmflarge.lib:
make TARGET_MODEL=LARGE LIBSUFFIX=large
endif
libmf$(LIBSUFFIX):
[ ! -d $@ ] && mkdir -p $@
.PRECIOUS: %.src %.obj %.omf
%.obj: %.src
$(KEILPATH)/C51/BIN/A51.EXE "$(shell cygpath -w $<)" "PR($(shell cygpath -w $(patsubst %.obj,%.ls1,$@)))" $(A51OPT)
%.src: %.src1
./fixmodname.pl $@ < $< > $@
%.omf: %.obj libmf$(LIBSUFFIX).lib $(shell cygpath -u $(C51LIB)/C51S.LIB)
($(KEILPATH)/C51/BIN/BL51.EXE "$(subst $(space),$(comma),$(foreach fn,$^,$(shell cygpath -w $(fn))))" TO "$(shell cygpath -w $@)" $(L51OPT); x=$$?; if [ $${x} -lt 2 ]; then x=0; fi; exit $${x})
%.hex: %.omf
$(KEILPATH)/C51/BIN/OH51.EXE "$(shell cygpath -w $<)" HEXFILE "($(shell cygpath -w $@))"
libmf$(LIBSUFFIX)/%.src: ../source/%.c | libmf$(LIBSUFFIX)
($(KEILPATH)/C51/BIN/C51.EXE "$(shell cygpath -w $<)" $(C51FLAGS) SRC "($(shell cygpath -w $@))" PR "($(shell cygpath -w $(patsubst %.src,%.lst,$@)))"; x=$$?; if [ $${x} -lt 2 ]; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/%.src: libmf$(LIBSUFFIX)/%.c | libmf$(LIBSUFFIX)
($(KEILPATH)/C51/BIN/C51.EXE "$(shell cygpath -w $<)" $(C51FLAGS) SRC "($(shell cygpath -w $@))" PR "($(shell cygpath -w $(patsubst %.src,%.lst,$@)))"; x=$$?; if [ $${x} -lt 2 ]; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX).lib: $(patsubst %.obj,libmf$(LIBSUFFIX)/%.obj,$(LIBMFOBJ)) | libmf$(LIBSUFFIX)
$(KEILPATH)/C51/BIN/LIB51.EXE TRANSFER "$(subst $(space),$(comma),$(foreach fn,$(patsubst %.obj,libmf$(LIBSUFFIX)/%.obj,$(LIBMFOBJ)),$(shell cygpath -w $(fn))))" TO $@
libmf$(LIBSUFFIX)/uarttimer0.c: ../source/uarttimer.c
(unifdef -DTIMER=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer1.c: ../source/uarttimer.c
(unifdef -DTIMER=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer2.c: ../source/uarttimer.c
(unifdef -DTIMER=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0init.c: ../source/uartinit.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0stop.c: ../source/uartstop.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1init.c: ../source/uartinit.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1stop.c: ../source/uartstop.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0%.c: ../source/io%.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1%.c: ../source/io%.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/dbglnk%.c: ../source/io%.c
(unifdef -DUART=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdu%.c: ../source/io%.c
(unifdef -DUART=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5031%.c: ../source/radio%.c
(unifdef -DRADIO=5031 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5042%.c: ../source/radio%.c
(unifdef -DRADIO=5042 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5043%.c: ../source/radio%.c
(unifdef -DRADIO=5043 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5051%.c: ../source/radio%.c
(unifdef -DRADIO=5051 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccitt.c: ../source/crc8.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccittmsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewire.c: ../source/crc8.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewiremsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansi.c: ../source/crc16.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnp.c: ../source/crc16.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccitt.c: ../source/crc16.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansi.c: ../source/crc32.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsb.c: ../source/crc32msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittb.c: ../source/crc8b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittmsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewireb.c: ../source/crc8b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewiremsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansib.c: ../source/crc16b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpb.c: ../source/crc16b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittb.c: ../source/crc16b.c
(unifdef -DCRCMODE=4 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=5 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansib.c: ../source/crc32b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsbb.c: ../source/crc32b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdinit.src: ../source/lcdinit.c ../source/libmflcd.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdsetpos.src: ../source/lcdsetpos.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrstr.src: ../source/lcdwrstr.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclear.src: ../source/lcdclear.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclrdisp.src: ../source/lcdclrdisp.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru16.src: ../source/lcdwru16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru32.src: ../source/lcdwru32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu16.src: ../source/lcdwrhexu16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu32.src: ../source/lcdwrhexu32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum16.src: libmf$(LIBSUFFIX)/lcduwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum32.src: libmf$(LIBSUFFIX)/lcduwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex16.src: libmf$(LIBSUFFIX)/lcduwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex32.src: libmf$(LIBSUFFIX)/lcduwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/delay.src: ../source/delay.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/random.src: ../source/random.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitt.src: ../source/crc8ccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewire.src: ../source/crc8onewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitttable.src: ../source/crc8ccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiretable.src: ../source/crc8onewiretable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbtable.src: ../source/crc8ccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbtable.src: ../source/crc8onewiremsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitttable.src: ../source/crcccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16table.src: ../source/crc16table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnptable.src: ../source/crc16dnptable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbtable.src: ../source/crcccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16msbtable.src: ../source/crc16msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbtable.src: ../source/crc16dnpmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32table.src: ../source/crc32table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32msbtable.src: ../source/crc32msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccitt.src: libmf$(LIBSUFFIX)/crc8tccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccittmsb.src: libmf$(LIBSUFFIX)/crc8tccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewire.src: libmf$(LIBSUFFIX)/crc8tonewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewiremsb.src: libmf$(LIBSUFFIX)/crc8tonewiremsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansi.src: libmf$(LIBSUFFIX)/crc16ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsb.src: libmf$(LIBSUFFIX)/crc16ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnp.src: libmf$(LIBSUFFIX)/crc16dnp.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsb.src: libmf$(LIBSUFFIX)/crc16dnpmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitt.src: libmf$(LIBSUFFIX)/crcccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsb.src: libmf$(LIBSUFFIX)/crcccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansi.src: libmf$(LIBSUFFIX)/crc32ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsb.src: libmf$(LIBSUFFIX)/crc32ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittb.src: libmf$(LIBSUFFIX)/crc8ccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbb.src: libmf$(LIBSUFFIX)/crc8ccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewireb.src: libmf$(LIBSUFFIX)/crc8onewireb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbb.src: libmf$(LIBSUFFIX)/crc8onewiremsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansib.src: libmf$(LIBSUFFIX)/crc16ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsbb.src: libmf$(LIBSUFFIX)/crc16ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpb.src: libmf$(LIBSUFFIX)/crc16dnpb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbb.src: libmf$(LIBSUFFIX)/crc16dnpmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittb.src: libmf$(LIBSUFFIX)/crcccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbb.src: libmf$(LIBSUFFIX)/crcccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansib.src: libmf$(LIBSUFFIX)/crc32ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsbb.src: libmf$(LIBSUFFIX)/crc32ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9.src: ../source/pn9.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9table.src: ../source/pn9table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bit.src: ../source/pn9bit.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bits.src: ../source/pn9bits.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9byte.src: ../source/pn9byte.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9buf.src: ../source/pn9buf.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15advtable.src: ../source/pn15advtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15outtable.src: ../source/pn15outtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15adv.src: ../source/pn15adv.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15out.src: ../source/pn15out.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/rev8.src: ../source/rev8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight8.src: ../source/hweight8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight16.src: ../source/hweight16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight32.src: ../source/hweight32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext12.src: ../source/signext12.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext16.src: ../source/signext16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext20.src: ../source/signext20.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext24.src: ../source/signext24.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim16.src: ../source/chksgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim16.src: ../source/sgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim32.src: ../source/chksgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim32.src: ../source/sgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/grayenc8.src: ../source/grayenc8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/graydec8.src: ../source/graydec8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemset.src: ../source/fmemset.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemcpy.src: ../source/fmemcpy.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/standby.src: ../source/standby.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleep.src: ../source/sleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleepcont.src: ../source/sleepcont.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/deepsleep.src: ../source/deepsleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/resetcpu.src: ../source/resetcpu.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashunlock.src: ../source/flashunlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashlock.src: ../source/flashlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwait.src: ../source/flashwait.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashpgerase.src: ../source/flashpgerase.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwrite.src: ../source/flashwrite.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashread.src: ../source/flashread.c ../source/libmfflash.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcal.src: ../source/flashcal.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcsec.src: ../source/flashcsec.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0init.src: libmf$(LIBSUFFIX)/uart0init.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1init.src: libmf$(LIBSUFFIX)/uart1init.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0stop.src: libmf$(LIBSUFFIX)/uart0stop.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1stop.src: libmf$(LIBSUFFIX)/uart1stop.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0txbuf.src: libmf$(LIBSUFFIX)/uart0txbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1txbuf.src: libmf$(LIBSUFFIX)/uart1txbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rxbuf.src: libmf$(LIBSUFFIX)/uart0rxbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rxbuf.src: libmf$(LIBSUFFIX)/uart1rxbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0tx.src: libmf$(LIBSUFFIX)/uart0tx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1tx.src: libmf$(LIBSUFFIX)/uart1tx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rx.src: libmf$(LIBSUFFIX)/uart0rx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rx.src: libmf$(LIBSUFFIX)/uart1rx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu16.src: libmf$(LIBSUFFIX)/uart0wrhexu16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu16.src: libmf$(LIBSUFFIX)/uart1wrhexu16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu32.src: libmf$(LIBSUFFIX)/uart0wrhexu32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu32.src: libmf$(LIBSUFFIX)/uart1wrhexu32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrstr.src: libmf$(LIBSUFFIX)/uart0wrstr.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrstr.src: libmf$(LIBSUFFIX)/uart1wrstr.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru16.src: libmf$(LIBSUFFIX)/uart0wru16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru16.src: libmf$(LIBSUFFIX)/uart1wru16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru32.src: libmf$(LIBSUFFIX)/uart0wru32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru32.src: libmf$(LIBSUFFIX)/uart1wru32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum16.src: libmf$(LIBSUFFIX)/uart0wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum16.src: libmf$(LIBSUFFIX)/uart1wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum32.src: libmf$(LIBSUFFIX)/uart0wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum32.src: libmf$(LIBSUFFIX)/uart1wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex16.src: libmf$(LIBSUFFIX)/uart0wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex16.src: libmf$(LIBSUFFIX)/uart1wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex32.src: libmf$(LIBSUFFIX)/uart0wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex32.src: libmf$(LIBSUFFIX)/uart1wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglink.src: ../source/dbglink.c ../source/libmfdbglink.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktxbuf.src: libmf$(LIBSUFFIX)/dbglnktxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrxbuf.src: libmf$(LIBSUFFIX)/dbglnkrxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktx.src: libmf$(LIBSUFFIX)/dbglnktx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrx.src: libmf$(LIBSUFFIX)/dbglnkrx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu16.src: libmf$(LIBSUFFIX)/dbglnkwrhexu16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu32.src: libmf$(LIBSUFFIX)/dbglnkwrhexu32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrstr.src: libmf$(LIBSUFFIX)/dbglnkwrstr.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru16.src: libmf$(LIBSUFFIX)/dbglnkwru16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru32.src: libmf$(LIBSUFFIX)/dbglnkwru32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum16.src: libmf$(LIBSUFFIX)/dbglnkwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum32.src: libmf$(LIBSUFFIX)/dbglnkwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex16.src: libmf$(LIBSUFFIX)/dbglnkwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex32.src: libmf$(LIBSUFFIX)/dbglnkwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adctemp.src: ../source/adctemp.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccal.src: ../source/adccal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalg.src: ../source/adccalg.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalt.src: ../source/adccalt.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcuncal.src: ../source/adcuncal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs00.src: ../source/adcseoffs00.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs01.src: ../source/adcseoffs01.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs10.src: ../source/adcseoffs10.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121dec.src: ../source/bch3121dec.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121decp.src: ../source/bch3121decp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121enc.src: ../source/bch3121enc.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121encp.src: ../source/bch3121encp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121stab.src: ../source/bch3121stab.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121syn.src: ../source/bch3121syn.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum16.src: ../source/wrnum16.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum32.src: ../source/wrnum32.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offxosc.src: ../source/offxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offlpxosc.src: ../source/offlpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setuplpxosc.src: ../source/setuplpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupxosc.src: ../source/setupxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupcal.src: ../source/setupcal.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtimer.src: ../source/wtimer.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtrem.src: ../source/wtrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbadd.src: ../source/wtcbadd.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbrem.src: ../source/wtcbrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0setcfg.src: ../source/wt0setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1setcfg.src: ../source/wt1setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtstdby.src: ../source/wtstdby.c ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0adda.src: ../source/wt0adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1adda.src: ../source/wt1adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0addr.src: ../source/wt0addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1addr.src: ../source/wt1addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0curt.src: ../source/wt0curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1curt.src: ../source/wt1curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0rem.src: ../source/wt0rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1rem.src: ../source/wt1rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt01rem.src: ../source/wt01rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord16.src: ../source/radiord16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord24.src: ../source/radiord24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord32.src: ../source/radiord32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr16.src: ../source/radiowr16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr24.src: ../source/radiowr24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr32.src: ../source/radiowr32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiodswakecore.src: ../source/radiodswakecore.c ../source/radiodefs.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031comminit.src: libmf$(LIBSUFFIX)/ax5031comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031commslpexit.src: libmf$(LIBSUFFIX)/ax5031commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031reset.src: libmf$(LIBSUFFIX)/ax5031reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031deepsleep.src: libmf$(LIBSUFFIX)/ax5031deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkena.src: ../source/ax5031rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkdis.src: ../source/ax5031rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rdfifo.src: libmf$(LIBSUFFIX)/ax5031rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031wrfifo.src: libmf$(LIBSUFFIX)/ax5031wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031regs.src: ../source/ax5031regs.c ../source/ax8052f131.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042comminit.src: libmf$(LIBSUFFIX)/ax5042comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042commslpexit.src: libmf$(LIBSUFFIX)/ax5042commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042reset.src: libmf$(LIBSUFFIX)/ax5042reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042deepsleep.src: libmf$(LIBSUFFIX)/ax5042deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkena.src: ../source/ax5042rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkdis.src: ../source/ax5042rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rdfifo.src: libmf$(LIBSUFFIX)/ax5042rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042wrfifo.src: libmf$(LIBSUFFIX)/ax5042wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042regs.src: ../source/ax5042regs.c ../source/ax8052f142.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043comminit.src: libmf$(LIBSUFFIX)/ax5043comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043commslpexit.src: libmf$(LIBSUFFIX)/ax5043commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043reset.src: libmf$(LIBSUFFIX)/ax5043reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043deepsleep.src: libmf$(LIBSUFFIX)/ax5043deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkena.src: ../source/ax5043rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkdis.src: ../source/ax5043rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rdfifo.src: libmf$(LIBSUFFIX)/ax5043rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043wrfifo.src: libmf$(LIBSUFFIX)/ax5043wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043regs.src: ../source/ax5043regs.c ../source/ax8052f143.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051comminit.src: libmf$(LIBSUFFIX)/ax5051comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051commslpexit.src: libmf$(LIBSUFFIX)/ax5051commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051reset.src: libmf$(LIBSUFFIX)/ax5051reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051deepsleep.src: libmf$(LIBSUFFIX)/ax5051deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkena.src: ../source/ax5051rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkdis.src: ../source/ax5051rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rdfifo.src: libmf$(LIBSUFFIX)/ax5051rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051wrfifo.src: libmf$(LIBSUFFIX)/ax5051wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051regs.src: ../source/ax5051regs.c ../source/ax8052f151.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax8052regs.src: ../source/ax8052regs.c ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)

@ -1,432 +0,0 @@
TARGET_MODEL := SMALL
LIBSUFFIX :=
KEILPATH := C:/EDA/Keil
C51INC := $(KEILPATH)/C51/INC
C51LIB := $(KEILPATH)/C51/LIB
C51FLAGS := OMF2 OBJECTADVANCED $(TARGET_MODEL) DEBUG INCDIR "($(shell cygpath -w ../source))"
A51OPT := "SET ($(TARGET_MODEL))" EP DEBUG
L51OPT := "CLASSES (XDATA (X:0x0-X:0x1FFF), HDATA (X:0x0-X:0x1FFF), CODE (C:0x0-C:0xFFFF), CONST (C:0x0-C:0xFFFF), ECODE (C:0x0-C:0xFFFF), HCONST (C:0x0-C:0xFFFF))"
CPU_TYPE := 8052AH
CPU_VENDOR := Intel
CPU_XTAL := 0x01312D00
LIBMFOBJ := lcdinit.obj lcdsetpos.obj lcdwrstr.obj lcdclear.obj lcdclrdisp.obj lcdwru16.obj lcdwru32.obj \
lcdwrhexu16.obj lcdwrhexu32.obj lcduwrnum16.obj lcduwrnum32.obj lcduwrhex16.obj lcduwrhex32.obj \
dbglink.obj dbglnktxbuf.obj dbglnkrxbuf.obj dbglnktx.obj dbglnkrx.obj dbglnkwrhexu16.obj dbglnkwrhexu32.obj dbglnkwrstr.obj \
dbglnkwru16.obj dbglnkwru32.obj dbglnkwrnum16.obj dbglnkwrnum32.obj dbglnkwrhex16.obj dbglnkwrhex32.obj \
crc8ccitt.obj crc8onewire.obj crc8tccitt.obj crc8tccittmsb.obj crc8tonewire.obj crc8tonewiremsb.obj \
crc8ccittb.obj crc8ccittmsbb.obj crc8onewireb.obj crc8onewiremsbb.obj \
crc8ccitttable.obj crc8onewiretable.obj crc8ccittmsbtable.obj crc8onewiremsbtable.obj \
crcccitt.obj crcccittmsb.obj crc16ansi.obj crc16ansimsb.obj crc16dnp.obj crc16dnpmsb.obj crc32ansi.obj crc32ansimsb.obj \
crcccittb.obj crcccittmsbb.obj crc16ansib.obj crc16ansimsbb.obj crc16dnpb.obj crc16dnpmsbb.obj crc32ansib.obj crc32ansimsbb.obj \
crcccitttable.obj crc16table.obj crc16dnptable.obj crcccittmsbtable.obj crc16msbtable.obj \
crc16dnpmsbtable.obj crc32table.obj crc32msbtable.obj pn9.obj pn9table.obj pn9bit.obj pn9bits.obj pn9byte.obj pn9buf.obj \
pn15advtable.obj pn15outtable.obj pn15adv.obj pn15out.obj \
rev8.obj hweight8.obj hweight16.obj hweight32.obj signext12.obj signext16.obj signext20.obj signext24.obj \
chksgnlim16.obj sgnlim16.obj chksgnlim32.obj sgnlim32.obj grayenc8.obj graydec8.obj fmemset.obj fmemcpy.obj \
delay.obj random.obj sleep.obj sleepcont.obj deepsleep.obj standby.obj resetcpu.obj \
flashunlock.obj flashlock.obj flashwait.obj flashpgerase.obj flashwrite.obj flashread.obj flashcal.obj flashcsec.obj \
uarttimer0.obj uarttimer1.obj uarttimer2.obj uart0init.obj uart1init.obj uart0txbuf.obj uart1txbuf.obj uart0rxbuf.obj uart1rxbuf.obj \
uart0tx.obj uart1tx.obj uart0rx.obj uart1rx.obj uart0wrhexu16.obj uart1wrhexu16.obj uart0wrhexu32.obj uart1wrhexu32.obj \
uart0wrstr.obj uart1wrstr.obj uart0wru16.obj uart1wru16.obj uart0wru32.obj uart1wru32.obj \
uart0wrnum16.obj uart0wrnum32.obj uart0wrhex16.obj uart0wrhex32.obj \
uart1wrnum16.obj uart1wrnum32.obj uart1wrhex16.obj uart1wrhex32.obj \
adctemp.obj adccal.obj adccalg.obj adccalt.obj adcuncal.obj adcseoffs00.obj adcseoffs01.obj adcseoffs10.obj \
bch3121dec.obj bch3121decp.obj bch3121enc.obj bch3121encp.obj bch3121stab.obj bch3121syn.obj \
wrnum16.obj wrnum32.obj offxosc.obj offlpxosc.obj setuplpxosc.obj setupxosc.obj setupcal.obj \
wtimer.obj wtrem.obj wtcbadd.obj wtcbrem.obj wt0setcfg.obj wt1setcfg.obj wtstdby.obj \
wt0adda.obj wt1adda.obj wt0addr.obj wt1addr.obj wt0curt.obj wt1curt.obj wt0rem.obj wt1rem.obj wt01rem.obj \
radiord16.obj radiord24.obj radiord32.obj radiowr16.obj radiowr24.obj radiowr32.obj radiodswakecore.obj \
ax5031comminit.obj ax5031commslpexit.obj ax5031reset.obj ax5031deepsleep.obj ax5031rclkena.obj ax5031rclkdis.obj \
ax5031rdfifo.obj ax5031wrfifo.obj ax5031regs.obj \
ax5042comminit.obj ax5042commslpexit.obj ax5042reset.obj ax5042deepsleep.obj ax5042rclkena.obj ax5042rclkdis.obj \
ax5042rdfifo.obj ax5042wrfifo.obj ax5042regs.obj \
ax5043comminit.obj ax5043commslpexit.obj ax5043reset.obj ax5043deepsleep.obj ax5043rclkena.obj ax5043rclkdis.obj \
ax5043rdfifo.obj ax5043wrfifo.obj ax5043regs.obj \
ax5051comminit.obj ax5051commslpexit.obj ax5051reset.obj ax5051deepsleep.obj ax5051rclkena.obj ax5051rclkdis.obj \
ax5051rdfifo.obj ax5051wrfifo.obj ax5051regs.obj \
ax8052regs.obj
BINARIES :=
comma := ,
empty :=
space := $(empty) $(empty)
all: libmf.lib libmflarge.lib $(BINARIES) $(patsubst %.omf,%.hex,$(BINARIES))
clean:
rm -rf LIBMF.LIB libmf.lib libmf LIBMFLARGE.LIB libmflarge.lib libmflarge mflibbinkeil2.tar.gz
tar: mflibbinkeil2.tar.gz
mflibbinkeil2.tar.gz:
[ -f LIBMF.LIB ] && mv LIBMF.LIB libmf.lib ; \
[ -f LIBMFLARGE.LIB ] && mv LIBMFLARGE.LIB libmflarge.lib ; \
tar -c -v -z -f $@ libmf.lib libmflarge.lib
ifeq ($(LIBSUFFIX),)
libmflarge.lib:
make TARGET_MODEL=LARGE LIBSUFFIX=large
endif
libmf$(LIBSUFFIX):
[ ! -d $@ ] && mkdir -p $@
.PRECIOUS: %.src %.obj %.omf
%.obj: %.src
$(KEILPATH)/C51/BIN/AX51.EXE "$(shell cygpath -w $<)" "PR($(shell cygpath -w $(patsubst %.obj,%.ls1,$@)))" $(A51OPT)
%.src: %.src1
./fixmodname.pl $@ < $< > $@
%.omf: %.obj libmf$(LIBSUFFIX).lib $(shell cygpath -u $(C51LIB)/C51S.LIB)
($(KEILPATH)/C51/BIN/LX51.EXE "$(subst $(space),$(comma),$(foreach fn,$^,$(shell cygpath -w $(fn))))" TO "$(shell cygpath -w $@)" CODE "($(shell cygpath -w $(patsubst %.omf,%.cod,$@)))" $(L51OPT); x=$$?; if [ $${x} -lt 2 ]; then x=0; fi; exit $${x})
%.hex: %.omf
$(KEILPATH)/C51/BIN/OHX51.EXE "$(shell cygpath -w $<)" HEXFILE "($(shell cygpath -w $@))"
libmf$(LIBSUFFIX)/%.src: ../source/%.c | libmf$(LIBSUFFIX)
($(KEILPATH)/C51/BIN/C51.EXE "$(shell cygpath -w $<)" $(C51FLAGS) DEFINE "(AX5043_DISABLE_XSFR,AX5043_DISABLE_NONBLOCKING)" SRC "($(shell cygpath -w $@))" PR "($(shell cygpath -w $(patsubst %.src,%.lst,$@)))"; x=$$?; if [ $${x} -lt 2 ]; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/%.src: libmf$(LIBSUFFIX)/%.c | libmf$(LIBSUFFIX)
($(KEILPATH)/C51/BIN/C51.EXE "$(shell cygpath -w $<)" $(C51FLAGS) DEFINE "(AX5043_DISABLE_XSFR,AX5043_DISABLE_NONBLOCKING)" SRC "($(shell cygpath -w $@))" PR "($(shell cygpath -w $(patsubst %.src,%.lst,$@)))"; x=$$?; if [ $${x} -lt 2 ]; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX).lib: $(patsubst %.obj,libmf$(LIBSUFFIX)/%.obj,$(LIBMFOBJ)) | libmf$(LIBSUFFIX)
$(KEILPATH)/C51/BIN/LIBX51.EXE TRANSFER "$(subst $(space),$(comma),$(foreach fn,$(patsubst %.obj,libmf$(LIBSUFFIX)/%.obj,$(LIBMFOBJ)),$(shell cygpath -w $(fn))))" TO $@
libmf$(LIBSUFFIX)/uarttimer0.c: ../source/uarttimer.c
(unifdef -DTIMER=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer1.c: ../source/uarttimer.c
(unifdef -DTIMER=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer2.c: ../source/uarttimer.c
(unifdef -DTIMER=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0init.c: ../source/uartinit.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0stop.c: ../source/uartstop.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1init.c: ../source/uartinit.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1stop.c: ../source/uartstop.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0%.c: ../source/io%.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1%.c: ../source/io%.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/dbglnk%.c: ../source/io%.c
(unifdef -DUART=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdu%.c: ../source/io%.c
(unifdef -DUART=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5031%.c: ../source/radio%.c
(unifdef -DRADIO=5031 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5042%.c: ../source/radio%.c
(unifdef -DRADIO=5042 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5043%.c: ../source/radio%.c
(unifdef -DRADIO=5043 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5051%.c: ../source/radio%.c
(unifdef -DRADIO=5051 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccitt.c: ../source/crc8.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccittmsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewire.c: ../source/crc8.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewiremsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansi.c: ../source/crc16.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnp.c: ../source/crc16.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccitt.c: ../source/crc16.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansi.c: ../source/crc32.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsb.c: ../source/crc32msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittb.c: ../source/crc8b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittmsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewireb.c: ../source/crc8b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewiremsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansib.c: ../source/crc16b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpb.c: ../source/crc16b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittb.c: ../source/crc16b.c
(unifdef -DCRCMODE=4 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=5 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansib.c: ../source/crc32b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsbb.c: ../source/crc32b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdinit.src: ../source/lcdinit.c ../source/libmflcd.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdsetpos.src: ../source/lcdsetpos.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrstr.src: ../source/lcdwrstr.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclear.src: ../source/lcdclear.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclrdisp.src: ../source/lcdclrdisp.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru16.src: ../source/lcdwru16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru32.src: ../source/lcdwru32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu16.src: ../source/lcdwrhexu16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu32.src: ../source/lcdwrhexu32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum16.src: libmf$(LIBSUFFIX)/lcduwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum32.src: libmf$(LIBSUFFIX)/lcduwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex16.src: libmf$(LIBSUFFIX)/lcduwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex32.src: libmf$(LIBSUFFIX)/lcduwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/delay.src: ../source/delay.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/random.src: ../source/random.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitt.src: ../source/crc8ccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewire.src: ../source/crc8onewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitttable.src: ../source/crc8ccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiretable.src: ../source/crc8onewiretable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbtable.src: ../source/crc8ccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbtable.src: ../source/crc8onewiremsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitttable.src: ../source/crcccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16table.src: ../source/crc16table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnptable.src: ../source/crc16dnptable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbtable.src: ../source/crcccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16msbtable.src: ../source/crc16msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbtable.src: ../source/crc16dnpmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32table.src: ../source/crc32table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32msbtable.src: ../source/crc32msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccitt.src: libmf$(LIBSUFFIX)/crc8tccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccittmsb.src: libmf$(LIBSUFFIX)/crc8tccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewire.src: libmf$(LIBSUFFIX)/crc8tonewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewiremsb.src: libmf$(LIBSUFFIX)/crc8tonewiremsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansi.src: libmf$(LIBSUFFIX)/crc16ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsb.src: libmf$(LIBSUFFIX)/crc16ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnp.src: libmf$(LIBSUFFIX)/crc16dnp.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsb.src: libmf$(LIBSUFFIX)/crc16dnpmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitt.src: libmf$(LIBSUFFIX)/crcccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsb.src: libmf$(LIBSUFFIX)/crcccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansi.src: libmf$(LIBSUFFIX)/crc32ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsb.src: libmf$(LIBSUFFIX)/crc32ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittb.src: libmf$(LIBSUFFIX)/crc8ccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbb.src: libmf$(LIBSUFFIX)/crc8ccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewireb.src: libmf$(LIBSUFFIX)/crc8onewireb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbb.src: libmf$(LIBSUFFIX)/crc8onewiremsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansib.src: libmf$(LIBSUFFIX)/crc16ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsbb.src: libmf$(LIBSUFFIX)/crc16ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpb.src: libmf$(LIBSUFFIX)/crc16dnpb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbb.src: libmf$(LIBSUFFIX)/crc16dnpmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittb.src: libmf$(LIBSUFFIX)/crcccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbb.src: libmf$(LIBSUFFIX)/crcccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansib.src: libmf$(LIBSUFFIX)/crc32ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsbb.src: libmf$(LIBSUFFIX)/crc32ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9.src: ../source/pn9.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9table.src: ../source/pn9table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bit.src: ../source/pn9bit.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bits.src: ../source/pn9bits.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9byte.src: ../source/pn9byte.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9buf.src: ../source/pn9buf.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15advtable.src: ../source/pn15advtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15outtable.src: ../source/pn15outtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15adv.src: ../source/pn15adv.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15out.src: ../source/pn15out.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/rev8.src: ../source/rev8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight8.src: ../source/hweight8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight16.src: ../source/hweight16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight32.src: ../source/hweight32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext12.src: ../source/signext12.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext16.src: ../source/signext16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext20.src: ../source/signext20.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext24.src: ../source/signext24.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim16.src: ../source/chksgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim16.src: ../source/sgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim32.src: ../source/chksgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim32.src: ../source/sgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/grayenc8.src: ../source/grayenc8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/graydec8.src: ../source/graydec8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemset.src: ../source/fmemset.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemcpy.src: ../source/fmemcpy.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/standby.src: ../source/standby.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleep.src: ../source/sleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleepcont.src: ../source/sleepcont.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/deepsleep.src: ../source/deepsleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/resetcpu.src: ../source/resetcpu.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashunlock.src: ../source/flashunlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashlock.src: ../source/flashlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwait.src: ../source/flashwait.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashpgerase.src: ../source/flashpgerase.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwrite.src: ../source/flashwrite.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashread.src: ../source/flashread.c ../source/libmfflash.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcal.src: ../source/flashcal.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcsec.src: ../source/flashcsec.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0init.src: libmf$(LIBSUFFIX)/uart0init.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1init.src: libmf$(LIBSUFFIX)/uart1init.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0stop.src: libmf$(LIBSUFFIX)/uart0stop.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1stop.src: libmf$(LIBSUFFIX)/uart1stop.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0txbuf.src: libmf$(LIBSUFFIX)/uart0txbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1txbuf.src: libmf$(LIBSUFFIX)/uart1txbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rxbuf.src: libmf$(LIBSUFFIX)/uart0rxbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rxbuf.src: libmf$(LIBSUFFIX)/uart1rxbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0tx.src: libmf$(LIBSUFFIX)/uart0tx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1tx.src: libmf$(LIBSUFFIX)/uart1tx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rx.src: libmf$(LIBSUFFIX)/uart0rx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rx.src: libmf$(LIBSUFFIX)/uart1rx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu16.src: libmf$(LIBSUFFIX)/uart0wrhexu16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu16.src: libmf$(LIBSUFFIX)/uart1wrhexu16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu32.src: libmf$(LIBSUFFIX)/uart0wrhexu32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu32.src: libmf$(LIBSUFFIX)/uart1wrhexu32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrstr.src: libmf$(LIBSUFFIX)/uart0wrstr.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrstr.src: libmf$(LIBSUFFIX)/uart1wrstr.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru16.src: libmf$(LIBSUFFIX)/uart0wru16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru16.src: libmf$(LIBSUFFIX)/uart1wru16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru32.src: libmf$(LIBSUFFIX)/uart0wru32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru32.src: libmf$(LIBSUFFIX)/uart1wru32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum16.src: libmf$(LIBSUFFIX)/uart0wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum16.src: libmf$(LIBSUFFIX)/uart1wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum32.src: libmf$(LIBSUFFIX)/uart0wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum32.src: libmf$(LIBSUFFIX)/uart1wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex16.src: libmf$(LIBSUFFIX)/uart0wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex16.src: libmf$(LIBSUFFIX)/uart1wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex32.src: libmf$(LIBSUFFIX)/uart0wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex32.src: libmf$(LIBSUFFIX)/uart1wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglink.src: ../source/dbglink.c ../source/libmfdbglink.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktxbuf.src: libmf$(LIBSUFFIX)/dbglnktxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrxbuf.src: libmf$(LIBSUFFIX)/dbglnkrxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktx.src: libmf$(LIBSUFFIX)/dbglnktx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrx.src: libmf$(LIBSUFFIX)/dbglnkrx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu16.src: libmf$(LIBSUFFIX)/dbglnkwrhexu16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu32.src: libmf$(LIBSUFFIX)/dbglnkwrhexu32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrstr.src: libmf$(LIBSUFFIX)/dbglnkwrstr.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru16.src: libmf$(LIBSUFFIX)/dbglnkwru16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru32.src: libmf$(LIBSUFFIX)/dbglnkwru32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum16.src: libmf$(LIBSUFFIX)/dbglnkwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum32.src: libmf$(LIBSUFFIX)/dbglnkwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex16.src: libmf$(LIBSUFFIX)/dbglnkwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex32.src: libmf$(LIBSUFFIX)/dbglnkwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adctemp.src: ../source/adctemp.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccal.src: ../source/adccal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalg.src: ../source/adccalg.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalt.src: ../source/adccalt.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcuncal.src: ../source/adcuncal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs00.src: ../source/adcseoffs00.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs01.src: ../source/adcseoffs01.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs10.src: ../source/adcseoffs10.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121dec.src: ../source/bch3121dec.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121decp.src: ../source/bch3121decp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121enc.src: ../source/bch3121enc.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121encp.src: ../source/bch3121encp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121stab.src: ../source/bch3121stab.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121syn.src: ../source/bch3121syn.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum16.src: ../source/wrnum16.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum32.src: ../source/wrnum32.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offxosc.src: ../source/offxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offlpxosc.src: ../source/offlpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setuplpxosc.src: ../source/setuplpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupxosc.src: ../source/setupxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupcal.src: ../source/setupcal.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtimer.src: ../source/wtimer.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtrem.src: ../source/wtrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbadd.src: ../source/wtcbadd.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbrem.src: ../source/wtcbrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0setcfg.src: ../source/wt0setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1setcfg.src: ../source/wt1setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtstdby.src: ../source/wtstdby.c ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0adda.src: ../source/wt0adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1adda.src: ../source/wt1adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0addr.src: ../source/wt0addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1addr.src: ../source/wt1addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0curt.src: ../source/wt0curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1curt.src: ../source/wt1curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0rem.src: ../source/wt0rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1rem.src: ../source/wt1rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt01rem.src: ../source/wt01rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord16.src: ../source/radiord16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord24.src: ../source/radiord24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord32.src: ../source/radiord32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr16.src: ../source/radiowr16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr24.src: ../source/radiowr24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr32.src: ../source/radiowr32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiodswakecore.src: ../source/radiodswakecore.c ../source/radiodefs.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031comminit.src: libmf$(LIBSUFFIX)/ax5031comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031commslpexit.src: libmf$(LIBSUFFIX)/ax5031commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031reset.src: libmf$(LIBSUFFIX)/ax5031reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031deepsleep.src: libmf$(LIBSUFFIX)/ax5031deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkena.src: ../source/ax5031rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkdis.src: ../source/ax5031rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rdfifo.src: libmf$(LIBSUFFIX)/ax5031rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031wrfifo.src: libmf$(LIBSUFFIX)/ax5031wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031regs.src: ../source/ax5031regs.c ../source/ax8052f131.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042comminit.src: libmf$(LIBSUFFIX)/ax5042comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042commslpexit.src: libmf$(LIBSUFFIX)/ax5042commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042reset.src: libmf$(LIBSUFFIX)/ax5042reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042deepsleep.src: libmf$(LIBSUFFIX)/ax5042deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkena.src: ../source/ax5042rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkdis.src: ../source/ax5042rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rdfifo.src: libmf$(LIBSUFFIX)/ax5042rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042wrfifo.src: libmf$(LIBSUFFIX)/ax5042wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042regs.src: ../source/ax5042regs.c ../source/ax8052f142.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043comminit.src: libmf$(LIBSUFFIX)/ax5043comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043commslpexit.src: libmf$(LIBSUFFIX)/ax5043commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043reset.src: libmf$(LIBSUFFIX)/ax5043reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043deepsleep.src: libmf$(LIBSUFFIX)/ax5043deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkena.src: ../source/ax5043rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkdis.src: ../source/ax5043rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rdfifo.src: libmf$(LIBSUFFIX)/ax5043rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043wrfifo.src: libmf$(LIBSUFFIX)/ax5043wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043regs.src: ../source/ax5043regs.c ../source/ax8052f143.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051comminit.src: libmf$(LIBSUFFIX)/ax5051comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051commslpexit.src: libmf$(LIBSUFFIX)/ax5051commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051reset.src: libmf$(LIBSUFFIX)/ax5051reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051deepsleep.src: libmf$(LIBSUFFIX)/ax5051deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkena.src: ../source/ax5051rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkdis.src: ../source/ax5051rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rdfifo.src: libmf$(LIBSUFFIX)/ax5051rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051wrfifo.src: libmf$(LIBSUFFIX)/ax5051wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051regs.src: ../source/ax5051regs.c ../source/ax8052f151.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax8052regs.src: ../source/ax8052regs.c ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)

@ -1,423 +0,0 @@
TARGET_ASM := sdcc-asx8051
TARGET_LD := sdcc-sdcc
TARGET_CC := sdcc-sdcc
TARGET_AR := sdcc-sdcclib
TARGET_MODEL := --model-small
TARGET_ASMFLAGS := -xlosg
TARGET_LNKFLAGS := -mmcs51 --debug --code-loc 0x0000 --code-size 0x2000 --xram-loc 0x0000 --xram-size 0x100 $(TARGET_MODEL) --data-loc 0x08
TARGET_CFLAGS := --debug -I../source $(TARGET_LNKFLAGS)
LIBSUFFIX :=
LIBMFOBJ := lcdinit.rel lcdsetpos.rel lcdwrstr.rel lcdclear.rel lcdclrdisp.rel lcdwru16.rel lcdwru32.rel \
lcdwrhexu16.rel lcdwrhexu32.rel lcduwrnum16.rel lcduwrnum32.rel lcduwrhex16.rel lcduwrhex32.rel \
dbglink.rel dbglnktxbuf.rel dbglnkrxbuf.rel dbglnktx.rel dbglnkrx.rel dbglnkwrhexu16.rel dbglnkwrhexu32.rel dbglnkwrstr.rel \
dbglnkwru16.rel dbglnkwru32.rel dbglnkwrnum16.rel dbglnkwrnum32.rel dbglnkwrhex16.rel dbglnkwrhex32.rel \
crc8ccitt.rel crc8onewire.rel crc8tccitt.rel crc8tccittmsb.rel crc8tonewire.rel crc8tonewiremsb.rel \
crc8ccittb.rel crc8ccittmsbb.rel crc8onewireb.rel crc8onewiremsbb.rel \
crc8ccitttable.rel crc8onewiretable.rel crc8ccittmsbtable.rel crc8onewiremsbtable.rel \
crcccitt.rel crcccittmsb.rel crc16ansi.rel crc16ansimsb.rel crc16dnp.rel crc16dnpmsb.rel crc32ansi.rel crc32ansimsb.rel \
crcccittb.rel crcccittmsbb.rel crc16ansib.rel crc16ansimsbb.rel crc16dnpb.rel crc16dnpmsbb.rel crc32ansib.rel crc32ansimsbb.rel \
crcccitttable.rel crc16table.rel crc16dnptable.rel crcccittmsbtable.rel crc16msbtable.rel \
crc16dnpmsbtable.rel crc32table.rel crc32msbtable.rel pn9.rel pn9table.rel pn9bit.rel pn9bits.rel pn9byte.rel pn9buf.rel \
pn15advtable.rel pn15outtable.rel pn15adv.rel pn15out.rel \
rev8.rel hweight8.rel hweight16.rel hweight32.rel signext12.rel signext16.rel signext20.rel signext24.rel \
chksgnlim16.rel sgnlim16.rel chksgnlim32.rel sgnlim32.rel grayenc8.rel graydec8.rel fmemset.rel fmemcpy.rel \
delay.rel random.rel sleep.rel deepsleep.rel sleepcont.rel standby.rel resetcpu.rel \
flashunlock.rel flashlock.rel flashwait.rel flashpgerase.rel flashwrite.rel flashread.rel flashcal.rel flashcsec.rel \
uarttimer0.rel uarttimer1.rel uarttimer2.rel uart0init.rel uart1init.rel uart0stop.rel uart1stop.rel \
uart0txbuf.rel uart1txbuf.rel uart0rxbuf.rel uart1rxbuf.rel \
uart0tx.rel uart1tx.rel uart0rx.rel uart1rx.rel uart0wrhexu16.rel uart1wrhexu16.rel uart0wrhexu32.rel uart1wrhexu32.rel \
uart0wrstr.rel uart1wrstr.rel uart0wru16.rel uart1wru16.rel uart0wru32.rel uart1wru32.rel \
uart0wrnum16.rel uart0wrnum32.rel uart0wrhex16.rel uart0wrhex32.rel \
uart1wrnum16.rel uart1wrnum32.rel uart1wrhex16.rel uart1wrhex32.rel \
adctemp.rel adccal.rel adccalg.rel adccalt.rel adcuncal.rel adcseoffs00.rel adcseoffs01.rel adcseoffs10.rel \
bch3121dec.rel bch3121decp.rel bch3121enc.rel bch3121encp.rel bch3121stab.rel bch3121syn.rel \
wrnum16.rel wrnum32.rel offxosc.rel offlpxosc.rel setuplpxosc.rel setupxosc.rel setupcal.rel \
wtimer.rel wtrem.rel wtcbadd.rel wtcbrem.rel wt0setcfg.rel wt1setcfg.rel wtstdby.rel \
wt0adda.rel wt1adda.rel wt0addr.rel wt1addr.rel wt0curt.rel wt1curt.rel wt0rem.rel wt1rem.rel wt01rem.rel \
radiord16.rel radiord24.rel radiord32.rel radiowr16.rel radiowr24.rel radiowr32.rel radiodswakecore.rel \
ax5031comminit.rel ax5031commslpexit.rel ax5031reset.rel ax5031deepsleep.rel ax5031rclkena.rel ax5031rclkdis.rel \
ax5031rdfifo.rel ax5031wrfifo.rel ax5031regs.rel \
ax5042comminit.rel ax5042commslpexit.rel ax5042reset.rel ax5042deepsleep.rel ax5042rclkena.rel ax5042rclkdis.rel \
ax5042rdfifo.rel ax5042wrfifo.rel ax5042regs.rel \
ax5043comminit.rel ax5043commslpexit.rel ax5043reset.rel ax5043deepsleep.rel ax5043rclkena.rel ax5043rclkdis.rel \
ax5043rdfifo.rel ax5043wrfifo.rel ax5043regs.rel \
ax5051comminit.rel ax5051commslpexit.rel ax5051reset.rel ax5051deepsleep.rel ax5051rclkena.rel ax5051rclkdis.rel \
ax5051rdfifo.rel ax5051wrfifo.rel ax5051regs.rel \
ax8052regs.rel
BINARIES :=
all: libmf.lib libmflarge.lib $(BINARIES) $(patsubst %.omf,%.cdb,$(BINARIES)) $(patsubst %.omf,%.ihx,$(BINARIES))
clean:
rm -rf *.lnk libmf.lib libmf libmflarge.lib libmflarge mflibbinsdcc.tar.gz mflibsrc.tar.gz
tar: mflibbinsdcc.tar.gz mflibsrc.tar.gz
mflibbinsdcc.tar.gz: libmf.lib libmflarge.lib
tar -c -v -z -f $@ libmf.lib libmflarge.lib
mflibsrc.tar.gz:
cd .. ; \
tar -c -v -z -f buildsdcc/$@ build*/Makefile source/*.c source/*.h source/*.s51 doc/LibMF.pdf buildiar/genrregs.pl
ifeq ($(LIBSUFFIX),)
libmflarge.lib:
make TARGET_MODEL=--model-large LIBSUFFIX=large
endif
libmf$(LIBSUFFIX):
[ ! -d $@ ] && mkdir -p $@
.PRECIOUS: %.rel %.omf %.ihx %.cdb
%.rel: ../%.c
($(TARGET_CC) -c $(TARGET_CFLAGS) -o $@ $<; x=$$?; dn=`dirname $<`/; fn=`basename $< .c`; rm -f $${dn}$${fn}.asm ; exit $${x})
%.omf %.ihx %.cdb: %.rel libmf$(LIBSUFFIX).lib
(libdir=`pwd`; dn=`dirname $<`/; fn=`basename $< .rel`; cd $${dn}; $(TARGET_LD) -V $(TARGET_LNKFLAGS) -L$${libdir} -llibmf$(LIBSUFFIX) $${fn}.rel; x=$$?; mv $${fn} $${fn}.omf; exit $${x})
libmf$(LIBSUFFIX)/%.rel: ../source/%.c | libmf$(LIBSUFFIX)
($(TARGET_CC) -c $(TARGET_CFLAGS) -o $@ $<; x=$$?; dn=`dirname $<`/; fn=`basename $< .c`; rm -f $${dn}$${fn}.asm ; exit $${x})
libmf$(LIBSUFFIX)/%.rel: libmf$(LIBSUFFIX)/%.c | libmf$(LIBSUFFIX)
($(TARGET_CC) -c $(TARGET_CFLAGS) -o $@ $<; x=$$?; dn=`dirname $<`/; fn=`basename $< .c`; rm -f $${dn}$${fn}.asm ; exit $${x})
libmf$(LIBSUFFIX).lib: $(patsubst %.rel,libmf$(LIBSUFFIX)/%.rel,$(LIBMFOBJ)) | libmf$(LIBSUFFIX)
$(TARGET_AR) -a $@ $(patsubst %.rel,libmf$(LIBSUFFIX)/%.rel,$(LIBMFOBJ))
libmf$(LIBSUFFIX)/uarttimer0.c: ../source/uarttimer.c
(unifdef -DTIMER=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer1.c: ../source/uarttimer.c
(unifdef -DTIMER=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uarttimer2.c: ../source/uarttimer.c
(unifdef -DTIMER=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0init.c: ../source/uartinit.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0stop.c: ../source/uartstop.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1init.c: ../source/uartinit.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1stop.c: ../source/uartstop.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart0%.c: ../source/io%.c
(unifdef -DUART=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/uart1%.c: ../source/io%.c
(unifdef -DUART=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/dbglnk%.c: ../source/io%.c
(unifdef -DUART=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdu%.c: ../source/io%.c
(unifdef -DUART=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5031%.c: ../source/radio%.c
(unifdef -DRADIO=5031 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5042%.c: ../source/radio%.c
(unifdef -DRADIO=5042 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5043%.c: ../source/radio%.c
(unifdef -DRADIO=5043 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/ax5051%.c: ../source/radio%.c
(unifdef -DRADIO=5051 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccitt.c: ../source/crc8.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tccittmsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewire.c: ../source/crc8.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8tonewiremsb.c: ../source/crc8msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansi.c: ../source/crc16.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnp.c: ../source/crc16.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccitt.c: ../source/crc16.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsb.c: ../source/crc16msb.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansi.c: ../source/crc32.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsb.c: ../source/crc32msb.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittb.c: ../source/crc8b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8ccittmsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewireb.c: ../source/crc8b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc8onewiremsbb.c: ../source/crc8b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansib.c: ../source/crc16b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16ansimsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpb.c: ../source/crc16b.c
(unifdef -DCRCMODE=2 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc16dnpmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=3 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittb.c: ../source/crc16b.c
(unifdef -DCRCMODE=4 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crcccittmsbb.c: ../source/crc16b.c
(unifdef -DCRCMODE=5 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansib.c: ../source/crc32b.c
(unifdef -DCRCMODE=0 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/crc32ansimsbb.c: ../source/crc32b.c
(unifdef -DCRCMODE=1 -o $@ $<; x=$$?; if [ $${x} -lt 2 ] ; then x=0; fi; exit $${x})
libmf$(LIBSUFFIX)/lcdinit.rel: ../source/lcdinit.c ../source/libmflcd.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdsetpos.rel: ../source/lcdsetpos.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrstr.rel: ../source/lcdwrstr.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclear.rel: ../source/lcdclear.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdclrdisp.rel: ../source/lcdclrdisp.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru16.rel: ../source/lcdwru16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwru32.rel: ../source/lcdwru32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu16.rel: ../source/lcdwrhexu16.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcdwrhexu32.rel: ../source/lcdwrhexu32.c ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum16.rel: libmf$(LIBSUFFIX)/lcduwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrnum32.rel: libmf$(LIBSUFFIX)/lcduwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex16.rel: libmf$(LIBSUFFIX)/lcduwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/lcduwrhex32.rel: libmf$(LIBSUFFIX)/lcduwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/delay.rel: ../source/delay.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/random.rel: ../source/random.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitt.rel: ../source/crc8ccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewire.rel: ../source/crc8onewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccitttable.rel: ../source/crc8ccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiretable.rel: ../source/crc8onewiretable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbtable.rel: ../source/crc8ccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbtable.rel: ../source/crc8onewiremsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitttable.rel: ../source/crcccitttable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16table.rel: ../source/crc16table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnptable.rel: ../source/crc16dnptable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbtable.rel: ../source/crcccittmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16msbtable.rel: ../source/crc16msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbtable.rel: ../source/crc16dnpmsbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32table.rel: ../source/crc32table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32msbtable.rel: ../source/crc32msbtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccitt.rel: libmf$(LIBSUFFIX)/crc8tccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tccittmsb.rel: libmf$(LIBSUFFIX)/crc8tccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewire.rel: libmf$(LIBSUFFIX)/crc8tonewire.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8tonewiremsb.rel: libmf$(LIBSUFFIX)/crc8tonewiremsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansi.rel: libmf$(LIBSUFFIX)/crc16ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsb.rel: libmf$(LIBSUFFIX)/crc16ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnp.rel: libmf$(LIBSUFFIX)/crc16dnp.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsb.rel: libmf$(LIBSUFFIX)/crc16dnpmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccitt.rel: libmf$(LIBSUFFIX)/crcccitt.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsb.rel: libmf$(LIBSUFFIX)/crcccittmsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansi.rel: libmf$(LIBSUFFIX)/crc32ansi.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsb.rel: libmf$(LIBSUFFIX)/crc32ansimsb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittb.rel: libmf$(LIBSUFFIX)/crc8ccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8ccittmsbb.rel: libmf$(LIBSUFFIX)/crc8ccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewireb.rel: libmf$(LIBSUFFIX)/crc8onewireb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc8onewiremsbb.rel: libmf$(LIBSUFFIX)/crc8onewiremsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansib.rel: libmf$(LIBSUFFIX)/crc16ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16ansimsbb.rel: libmf$(LIBSUFFIX)/crc16ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpb.rel: libmf$(LIBSUFFIX)/crc16dnpb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc16dnpmsbb.rel: libmf$(LIBSUFFIX)/crc16dnpmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittb.rel: libmf$(LIBSUFFIX)/crcccittb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crcccittmsbb.rel: libmf$(LIBSUFFIX)/crcccittmsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansib.rel: libmf$(LIBSUFFIX)/crc32ansib.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/crc32ansimsbb.rel: libmf$(LIBSUFFIX)/crc32ansimsbb.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9.rel: ../source/pn9.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9table.rel: ../source/pn9table.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bit.rel: ../source/pn9bit.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9bits.rel: ../source/pn9bits.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9byte.rel: ../source/pn9byte.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn9buf.rel: ../source/pn9buf.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15advtable.rel: ../source/pn15advtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15outtable.rel: ../source/pn15outtable.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15adv.rel: ../source/pn15adv.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/pn15out.rel: ../source/pn15out.c ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/rev8.rel: ../source/rev8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight8.rel: ../source/hweight8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight16.rel: ../source/hweight16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/hweight32.rel: ../source/hweight32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext12.rel: ../source/signext12.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext16.rel: ../source/signext16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext20.rel: ../source/signext20.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/signext24.rel: ../source/signext24.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim16.rel: ../source/chksgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim16.rel: ../source/sgnlim16.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/chksgnlim32.rel: ../source/chksgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sgnlim32.rel: ../source/sgnlim32.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/grayenc8.rel: ../source/grayenc8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/graydec8.rel: ../source/graydec8.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemset.rel: ../source/fmemset.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/fmemcpy.rel: ../source/fmemcpy.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/standby.rel: ../source/standby.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleep.rel: ../source/sleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/deepsleep.rel: ../source/deepsleep.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/sleepcont.rel: ../source/sleepcont.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/resetcpu.rel: ../source/resetcpu.c ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashunlock.rel: ../source/flashunlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashlock.rel: ../source/flashlock.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwait.rel: ../source/flashwait.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashpgerase.rel: ../source/flashpgerase.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashwrite.rel: ../source/flashwrite.c ../source/libmfflash.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashread.rel: ../source/flashread.c ../source/libmfflash.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcal.rel: ../source/flashcal.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/flashcsec.rel: ../source/flashcsec.c ../source/libmfcalsector.h ../source/libmfflash.h ../source/libmfcrc.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0init.rel: libmf$(LIBSUFFIX)/uart0init.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1init.rel: libmf$(LIBSUFFIX)/uart1init.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0stop.rel: libmf$(LIBSUFFIX)/uart0stop.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1stop.rel: libmf$(LIBSUFFIX)/uart1stop.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0txbuf.rel: libmf$(LIBSUFFIX)/uart0txbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1txbuf.rel: libmf$(LIBSUFFIX)/uart1txbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rxbuf.rel: libmf$(LIBSUFFIX)/uart0rxbuf.c ../source/libmfuart0.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rxbuf.rel: libmf$(LIBSUFFIX)/uart1rxbuf.c ../source/libmfuart1.h ../source/libmfuart.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0tx.rel: libmf$(LIBSUFFIX)/uart0tx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1tx.rel: libmf$(LIBSUFFIX)/uart1tx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0rx.rel: libmf$(LIBSUFFIX)/uart0rx.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1rx.rel: libmf$(LIBSUFFIX)/uart1rx.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu16.rel: libmf$(LIBSUFFIX)/uart0wrhexu16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu16.rel: libmf$(LIBSUFFIX)/uart1wrhexu16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhexu32.rel: libmf$(LIBSUFFIX)/uart0wrhexu32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhexu32.rel: libmf$(LIBSUFFIX)/uart1wrhexu32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrstr.rel: libmf$(LIBSUFFIX)/uart0wrstr.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrstr.rel: libmf$(LIBSUFFIX)/uart1wrstr.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru16.rel: libmf$(LIBSUFFIX)/uart0wru16.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru16.rel: libmf$(LIBSUFFIX)/uart1wru16.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wru32.rel: libmf$(LIBSUFFIX)/uart0wru32.c ../source/libmfuart0.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wru32.rel: libmf$(LIBSUFFIX)/uart1wru32.c ../source/libmfuart1.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum16.rel: libmf$(LIBSUFFIX)/uart0wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum16.rel: libmf$(LIBSUFFIX)/uart1wrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrnum32.rel: libmf$(LIBSUFFIX)/uart0wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrnum32.rel: libmf$(LIBSUFFIX)/uart1wrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex16.rel: libmf$(LIBSUFFIX)/uart0wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex16.rel: libmf$(LIBSUFFIX)/uart1wrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart0wrhex32.rel: libmf$(LIBSUFFIX)/uart0wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/uart1wrhex32.rel: libmf$(LIBSUFFIX)/uart1wrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglink.rel: ../source/dbglink.c ../source/libmfdbglink.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktxbuf.rel: libmf$(LIBSUFFIX)/dbglnktxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrxbuf.rel: libmf$(LIBSUFFIX)/dbglnkrxbuf.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnktx.rel: libmf$(LIBSUFFIX)/dbglnktx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkrx.rel: libmf$(LIBSUFFIX)/dbglnkrx.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu16.rel: libmf$(LIBSUFFIX)/dbglnkwrhexu16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhexu32.rel: libmf$(LIBSUFFIX)/dbglnkwrhexu32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrstr.rel: libmf$(LIBSUFFIX)/dbglnkwrstr.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru16.rel: libmf$(LIBSUFFIX)/dbglnkwru16.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwru32.rel: libmf$(LIBSUFFIX)/dbglnkwru32.c ../source/libmfdbglink.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum16.rel: libmf$(LIBSUFFIX)/dbglnkwrnum16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrnum32.rel: libmf$(LIBSUFFIX)/dbglnkwrnum32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex16.rel: libmf$(LIBSUFFIX)/dbglnkwrhex16.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/dbglnkwrhex32.rel: libmf$(LIBSUFFIX)/dbglnkwrhex32.c ../source/wrnum.h ../source/libmfuart0.h ../source/libmfuart1.h ../source/libmfdbglink.h ../source/libmflcd.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adctemp.rel: ../source/adctemp.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccal.rel: ../source/adccal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalg.rel: ../source/adccalg.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adccalt.rel: ../source/adccalt.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcuncal.rel: ../source/adcuncal.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs00.rel: ../source/adcseoffs00.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs01.rel: ../source/adcseoffs01.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/adcseoffs10.rel: ../source/adcseoffs10.c ../source/libmfadc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121dec.rel: ../source/bch3121dec.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121decp.rel: ../source/bch3121decp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121enc.rel: ../source/bch3121enc.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121encp.rel: ../source/bch3121encp.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121stab.rel: ../source/bch3121stab.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/bch3121syn.rel: ../source/bch3121syn.c ../source/libmfbch.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum16.rel: ../source/wrnum16.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wrnum32.rel: ../source/wrnum32.c ../source/wrnum.h ../source/libmftypes.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offxosc.rel: ../source/offxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/offlpxosc.rel: ../source/offlpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setuplpxosc.rel: ../source/setuplpxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupxosc.rel: ../source/setupxosc.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/setupcal.rel: ../source/setupcal.c ../source/libmfosc.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtimer.rel: ../source/wtimer.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtrem.rel: ../source/wtrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbadd.rel: ../source/wtcbadd.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtcbrem.rel: ../source/wtcbrem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0setcfg.rel: ../source/wt0setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1setcfg.rel: ../source/wt1setcfg.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wtstdby.rel: ../source/wtstdby.c ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0adda.rel: ../source/wt0adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1adda.rel: ../source/wt1adda.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0addr.rel: ../source/wt0addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1addr.rel: ../source/wt1addr.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0curt.rel: ../source/wt0curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1curt.rel: ../source/wt1curt.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt0rem.rel: ../source/wt0rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt1rem.rel: ../source/wt1rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/wt01rem.rel: ../source/wt01rem.c ../source/wtimer.h ../source/libmfwtimer.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord16.rel: ../source/radiord16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord24.rel: ../source/radiord24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiord32.rel: ../source/radiord32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr16.rel: ../source/radiowr16.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr24.rel: ../source/radiowr24.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiowr32.rel: ../source/radiowr32.c ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/radiodswakecore.rel: ../source/radiodswakecore.c ../source/radiodefs.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031comminit.rel: libmf$(LIBSUFFIX)/ax5031comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031commslpexit.rel: libmf$(LIBSUFFIX)/ax5031commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031reset.rel: libmf$(LIBSUFFIX)/ax5031reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031deepsleep.rel: libmf$(LIBSUFFIX)/ax5031deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkena.rel: ../source/ax5031rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rclkdis.rel: ../source/ax5031rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031rdfifo.rel: libmf$(LIBSUFFIX)/ax5031rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031wrfifo.rel: libmf$(LIBSUFFIX)/ax5031wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5031regs.rel: ../source/ax5031regs.c ../source/ax8052f131.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042comminit.rel: libmf$(LIBSUFFIX)/ax5042comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042commslpexit.rel: libmf$(LIBSUFFIX)/ax5042commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042reset.rel: libmf$(LIBSUFFIX)/ax5042reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042deepsleep.rel: libmf$(LIBSUFFIX)/ax5042deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkena.rel: ../source/ax5042rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rclkdis.rel: ../source/ax5042rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042rdfifo.rel: libmf$(LIBSUFFIX)/ax5042rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042wrfifo.rel: libmf$(LIBSUFFIX)/ax5042wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5042regs.rel: ../source/ax5042regs.c ../source/ax8052f142.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043comminit.rel: libmf$(LIBSUFFIX)/ax5043comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043commslpexit.rel: libmf$(LIBSUFFIX)/ax5043commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043reset.rel: libmf$(LIBSUFFIX)/ax5043reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043deepsleep.rel: libmf$(LIBSUFFIX)/ax5043deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkena.rel: ../source/ax5043rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rclkdis.rel: ../source/ax5043rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043rdfifo.rel: libmf$(LIBSUFFIX)/ax5043rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043wrfifo.rel: libmf$(LIBSUFFIX)/ax5043wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5043regs.rel: ../source/ax5043regs.c ../source/ax8052f143.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051comminit.rel: libmf$(LIBSUFFIX)/ax5051comminit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051commslpexit.rel: libmf$(LIBSUFFIX)/ax5051commslpexit.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051reset.rel: libmf$(LIBSUFFIX)/ax5051reset.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051deepsleep.rel: libmf$(LIBSUFFIX)/ax5051deepsleep.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkena.rel: ../source/ax5051rclkena.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rclkdis.rel: ../source/ax5051rclkdis.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051rdfifo.rel: libmf$(LIBSUFFIX)/ax5051rdfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051wrfifo.rel: libmf$(LIBSUFFIX)/ax5051wrfifo.c ../source/radiodefs.h ../source/libmfradio.h ../source/libmftypes.h ../source/ax8052.h ../source/ax8052f131.h ../source/ax8052f142.h ../source/ax8052f143.h ../source/ax8052f151.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax5051regs.rel: ../source/ax5051regs.c ../source/ax8052f151.h ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)
libmf$(LIBSUFFIX)/ax8052regs.rel: ../source/ax8052regs.c ../source/ax8052.h ../source/axcompiler.h | libmf$(LIBSUFFIX)

@ -1,24 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5031
#include "radiodefs.h"
__reentrantb void radio_comminit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x47;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
}

@ -1,25 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5031
#include "radiodefs.h"
__reentrantb void radio_commsleepexit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX |= 0x40;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
// restore IRQ setting and pullup
radio_probeirq();
}

@ -1,49 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5031
#include "radiodefs.h"
#if DEEPSLEEP
__reentrantb void radio_enter_deepsleep(void) __reentrant
{
PORTR |= 0x09;
// ensure last bit read before entering deep sleep is a zero;
// this is held until after wakeup is complete; otherwise,
// the wakeup protocol will not work
RADIO_PWRMODE = PWRMODE_PWRDOWN;
RADIO_PWRMODE = PWRMODE_DEEPSLEEP;
RADIOMUX &= (uint8_t)~0x40;
// turn off pull-up if MISO is driven low
PORTR &= 0xF7 | PINR;
}
__reentrantb uint8_t radio_wakeup_deepsleep(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x07;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
{
uint8_t i = radio_wakeup_deepsleep_core();
if (i)
return i;
}
if (radio_probeirq())
return RADIO_ERR_IRQ;
return 0;
}
#endif

@ -1,88 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5031
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
movx a,@dptr
mov @r0,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@dptr
movx @r0,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@r0
movx @dptr,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
movx a,@r0
;movc @dptr,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*ptr++ = *(const uint8_t __xdata *)(AX8052_RADIOBASE | FDATA);
} while (--len);
}
#endif

@ -1,96 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5031
#include "radiodefs.h"
__reentrantb uint8_t radio_reset(void) __reentrant
{
uint8_t i;
// Initialize Interface
DIRR = 0x15;
PORTR = 0xEB;
#if DEEPSLEEP
RADIOMUX = 0x07;
#else
RADIOMUX = 0x47;
#endif
RADIOACC = RACC;
GPIOENABLE = 1;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
#if DEEPSLEEP
// Ensure Device is not in Deep Sleep
radio_wakeup_deepsleep_core();
#endif
// Reset Device
RADIO_PWRMODE = 0x80;
RADIO_PWRMODE = PWRMODE_PWRDOWN;
// Wait some time for regulator startup
#if defined(VREGDELAY) && VREGDELAY > 0
delay(VREGDELAY);
#endif
// Check Scratch
i = RADIO_SILICONREVISION;
i = RADIO_SILICONREVISION;
#ifdef SILICONREV2
if (i != SILICONREV1 && i != SILICONREV2)
return RADIO_ERR_REVISION;
#else
if (i != SILICONREV1)
return RADIO_ERR_REVISION;
#endif
RADIO_SCRATCH = 0x55;
if (RADIO_SCRATCH != 0x55)
return RADIO_ERR_COMM;
RADIO_SCRATCH = 0xAA;
if (RADIO_SCRATCH != 0xAA)
return RADIO_ERR_COMM;
// Initialize Radio Interface Registers
if (radio_probeirq())
return RADIO_ERR_IRQ;
return RADIO_OK;
}
__reentrantb uint8_t ax5031_probeirq(void) __reentrant
{
uint8_t p = 0x60;
uint8_t pc1 = AX5031_PINCFG1 & 0x0F;
uint8_t iesave = IE;
IE_4 = 0;
PORTR = 0xEB;
AX5031_PINCFG1 = pc1;
AX5031_PINCFG2 = 0x22; /* IRQ Line 1 */
p &= PINR;
AX5031_PINCFG2 = 0x20; /* IRQ Line 0 */
p &= (uint8_t)~PINR;
AX5031_PINCFG2 = 0x00;
switch (p) {
case 0x20: /* IRQ on PR5 */
RADIOMUX &= (uint8_t)~0x08;
break;
case 0x40: /* IRQ on PR6 */
RADIOMUX |= 0x08;
break;
default:
/* Error */
AX5031_PINCFG1 = 0x20 | pc1; /* Disable IRQ line */
IE = iesave;
return 1;
}
PORTR &= (uint8_t)~p; /* disable pullup */
IE = iesave;
return 0;
}

@ -1,89 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5031
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
mov a,@r0
movx @dptr,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@r0
movx @dptr,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@dptr
movx @r0,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
clr a
movc a,@a+dptr
movx @r0,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*(uint8_t __xdata *)(AX8052_RADIOBASE | FDATA) = *ptr++;
} while (--len);
}
#endif

@ -1,24 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5042
#include "radiodefs.h"
__reentrantb void radio_comminit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x47;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
}

@ -1,25 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5042
#include "radiodefs.h"
__reentrantb void radio_commsleepexit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX |= 0x40;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
// restore IRQ setting and pullup
radio_probeirq();
}

@ -1,49 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5042
#include "radiodefs.h"
#if DEEPSLEEP
__reentrantb void radio_enter_deepsleep(void) __reentrant
{
PORTR |= 0x09;
// ensure last bit read before entering deep sleep is a zero;
// this is held until after wakeup is complete; otherwise,
// the wakeup protocol will not work
RADIO_PWRMODE = PWRMODE_PWRDOWN;
RADIO_PWRMODE = PWRMODE_DEEPSLEEP;
RADIOMUX &= (uint8_t)~0x40;
// turn off pull-up if MISO is driven low
PORTR &= 0xF7 | PINR;
}
__reentrantb uint8_t radio_wakeup_deepsleep(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x07;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
{
uint8_t i = radio_wakeup_deepsleep_core();
if (i)
return i;
}
if (radio_probeirq())
return RADIO_ERR_IRQ;
return 0;
}
#endif

@ -1,88 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5042
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
movx a,@dptr
mov @r0,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@dptr
movx @r0,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@r0
movx @dptr,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
movx a,@r0
;movc @dptr,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*ptr++ = *(const uint8_t __xdata *)(AX8052_RADIOBASE | FDATA);
} while (--len);
}
#endif

@ -1,100 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5042
#include "radiodefs.h"
__reentrantb uint8_t radio_reset(void) __reentrant
{
uint8_t i;
// Initialize Interface
DIRR = 0x15;
PORTR = 0xEB;
#if DEEPSLEEP
RADIOMUX = 0x07;
#else
RADIOMUX = 0x47;
#endif
RADIOACC = RACC;
GPIOENABLE = 1;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
#if DEEPSLEEP
// Ensure Device is not in Deep Sleep
radio_wakeup_deepsleep_core();
#endif
// Reset Device
RADIO_PWRMODE = 0x80;
RADIO_PWRMODE = PWRMODE_PWRDOWN;
// Wait some time for regulator startup
#if defined(VREGDELAY) && VREGDELAY > 0
delay(VREGDELAY);
#endif
// Check Scratch
i = RADIO_SILICONREVISION;
i = RADIO_SILICONREVISION;
#ifdef SILICONREV2
if (i != SILICONREV1 && i != SILICONREV2)
return RADIO_ERR_REVISION;
#else
if (i != SILICONREV1)
return RADIO_ERR_REVISION;
#endif
RADIO_SCRATCH = 0x55;
if (RADIO_SCRATCH != 0x55)
return RADIO_ERR_COMM;
RADIO_SCRATCH = 0xAA;
if (RADIO_SCRATCH != 0xAA)
return RADIO_ERR_COMM;
// Initialize Radio Interface Registers
AX5042_IFMODE = 0x00;
AX5042_AGCTARGET = 0x0E;
AX5042_PLLRNGMISC = 0x01;
AX5042_RXMISC = 0x35;
if (radio_probeirq())
return RADIO_ERR_IRQ;
return RADIO_OK;
}
__reentrantb uint8_t ax5042_probeirq(void) __reentrant
{
uint8_t p = 0x60;
uint8_t pc1 = AX5042_PINCFG1 & 0x0F;
uint8_t iesave = IE;
IE_4 = 0;
PORTR = 0xEB;
AX5042_PINCFG1 = 0xD0 | pc1;
AX5042_PINCFG2 = 0xE2; /* IRQ Line 1 */
p &= PINR;
AX5042_PINCFG2 = 0xE0; /* IRQ Line 0 */
p &= (uint8_t)~PINR;
AX5042_PINCFG2 = 0xC0;
switch (p) {
case 0x20: /* IRQ on PR5 */
RADIOMUX &= (uint8_t)~0x08;
break;
case 0x40: /* IRQ on PR6 */
RADIOMUX |= 0x08;
break;
default:
/* Error */
AX5042_PINCFG1 = 0xF0 | pc1; /* Disable IRQ line */
IE = iesave;
return 1;
}
PORTR &= (uint8_t)~p; /* disable pullup */
IE = iesave;
return 0;
}

@ -1,89 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5042
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
mov a,@r0
movx @dptr,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@r0
movx @dptr,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@dptr
movx @r0,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
clr a
movc a,@a+dptr
movx @r0,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*(uint8_t __xdata *)(AX8052_RADIOBASE | FDATA) = *ptr++;
} while (--len);
}
#endif

@ -1,24 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5043
#include "radiodefs.h"
__reentrantb void radio_comminit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x47;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
}

@ -1,25 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5043
#include "radiodefs.h"
__reentrantb void radio_commsleepexit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX |= 0x40;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
// restore IRQ setting and pullup
radio_probeirq();
}

@ -1,50 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5043
#include "radiodefs.h"
#if DEEPSLEEP
__reentrantb void radio_enter_deepsleep(void) __reentrant
{
PORTR |= 0x0B;
AX5043_PINFUNCSYSCLK = 0x01;
// ensure last bit read before entering deep sleep is a zero;
// this is held until after wakeup is complete; otherwise,
// the wakeup protocol will not work
RADIO_PWRMODE = PWRMODE_PWRDOWN;
RADIO_PWRMODE = PWRMODE_DEEPSLEEP;
RADIOMUX &= (uint8_t)~0x40;
// turn off pull-up if MISO is driven low
PORTR &= 0xF7 | PINR;
}
__reentrantb uint8_t radio_wakeup_deepsleep(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x07;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
{
uint8_t i = radio_wakeup_deepsleep_core();
if (i)
return i;
}
if (radio_probeirq())
return RADIO_ERR_IRQ;
return 0;
}
#endif

@ -1,88 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5043
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
movx a,@dptr
mov @r0,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@dptr
movx @r0,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@r0
movx @dptr,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
movx a,@r0
;movc @dptr,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*ptr++ = *(const uint8_t __xdata *)(AX8052_RADIOBASE | FDATA);
} while (--len);
}
#endif

@ -1,97 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5043
#include "radiodefs.h"
__reentrantb uint8_t radio_reset(void) __reentrant
{
uint8_t i;
// Initialize Interface
DIRR = 0x15;
PORTR = 0xEB;
#if DEEPSLEEP
RADIOMUX = 0x07;
#else
RADIOMUX = 0x47;
#endif
RADIOACC = RACC;
GPIOENABLE = 1;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
#if DEEPSLEEP
// Ensure Device is not in Deep Sleep
radio_wakeup_deepsleep_core();
#endif
// Reset Device
RADIO_PWRMODE = 0x80;
RADIO_PWRMODE = PWRMODE_PWRDOWN;
// Wait some time for regulator startup
#if defined(VREGDELAY) && VREGDELAY > 0
delay(VREGDELAY);
#endif
// Check Scratch
i = RADIO_SILICONREVISION;
i = RADIO_SILICONREVISION;
#ifdef SILICONREV2
if (i != SILICONREV1 && i != SILICONREV2)
return RADIO_ERR_REVISION;
#else
if (i != SILICONREV1)
return RADIO_ERR_REVISION;
#endif
RADIO_SCRATCH = 0x55;
if (RADIO_SCRATCH != 0x55)
return RADIO_ERR_COMM;
RADIO_SCRATCH = 0xAA;
if (RADIO_SCRATCH != 0xAA)
return RADIO_ERR_COMM;
// Initialize Radio Interface Registers
if (radio_probeirq())
return RADIO_ERR_IRQ;
return RADIO_OK;
}
SFRX(RADIODRV, 0x7045)
__reentrantb uint8_t ax5043_probeirq(void) __reentrant
{
uint8_t p = 0x60;
uint8_t iesave = IE;
IE_4 = 0;
PORTR &= 0xEB;
PORTR |= 0x2B;
AX5043_PINFUNCIRQ = 0x01; /* IRQ Line 1 */
p &= PINR;
AX5043_PINFUNCIRQ = 0x00; /* IRQ Line 0 */
p &= (uint8_t)~PINR;
AX5043_PINFUNCIRQ = 0x03;
switch (p) {
case 0x20: /* IRQ on PR5 */
RADIOMUX &= (uint8_t)~0x08;
break;
case 0x40: /* IRQ on PR6 */
RADIOMUX |= 0x08;
break;
default:
/* Error */
AX5043_PINFUNCIRQ = 0x02; /* Disable IRQ line */
IE = iesave;
return 1;
}
PORTR &= (uint8_t)~p; /* disable pullup */
IE = iesave;
return 0;
}

@ -1,89 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5043
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
mov a,@r0
movx @dptr,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@r0
movx @dptr,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@dptr
movx @r0,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
clr a
movc a,@a+dptr
movx @r0,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*(uint8_t __xdata *)(AX8052_RADIOBASE | FDATA) = *ptr++;
} while (--len);
}
#endif

@ -1,24 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5051
#include "radiodefs.h"
__reentrantb void radio_comminit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x47;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
}

@ -1,25 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5051
#include "radiodefs.h"
__reentrantb void radio_commsleepexit(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX |= 0x40;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
// restore IRQ setting and pullup
radio_probeirq();
}

@ -1,49 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5051
#include "radiodefs.h"
#if DEEPSLEEP
__reentrantb void radio_enter_deepsleep(void) __reentrant
{
PORTR |= 0x09;
// ensure last bit read before entering deep sleep is a zero;
// this is held until after wakeup is complete; otherwise,
// the wakeup protocol will not work
RADIO_PWRMODE = PWRMODE_PWRDOWN;
RADIO_PWRMODE = PWRMODE_DEEPSLEEP;
RADIOMUX &= (uint8_t)~0x40;
// turn off pull-up if MISO is driven low
PORTR &= 0xF7 | PINR;
}
__reentrantb uint8_t radio_wakeup_deepsleep(void) __reentrant
{
DIRR = 0x15;
PORTR = 0xEB;
RADIOMUX = 0x07;
RADIOACC = RACC;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
GPIOENABLE = 1;
{
uint8_t i = radio_wakeup_deepsleep_core();
if (i)
return i;
}
if (radio_probeirq())
return RADIO_ERR_IRQ;
return 0;
}
#endif

@ -1,88 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5051
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
movx a,@dptr
mov @r0,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@dptr
movx @r0,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@r0
movx @dptr,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
movx a,@r0
;movc @dptr,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_readfifo(uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*ptr++ = *(const uint8_t __xdata *)(AX8052_RADIOBASE | FDATA);
} while (--len);
}
#endif

@ -1,119 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5051
#include "radiodefs.h"
__reentrantb uint8_t radio_reset(void) __reentrant
{
uint8_t i;
// Initialize Interface
DIRR = 0x15;
PORTR = 0xEB;
#if DEEPSLEEP
RADIOMUX = 0x07;
#else
RADIOMUX = 0x47;
#endif
RADIOACC = RACC;
GPIOENABLE = 1;
#if defined SDCC
RADIOFDATAADDR = FDATA;
RADIOFSTATADDR = FSTAT;
#else
RADIOFDATAADDR0 = (FDATA) & 0xFF;
RADIOFDATAADDR1 = (FDATA) >> 8;
RADIOFSTATADDR0 = (FSTAT) & 0xFF;
RADIOFSTATADDR1 = (FSTAT) >> 8;
#endif
#if DEEPSLEEP
// Ensure Device is not in Deep Sleep
radio_wakeup_deepsleep_core();
#endif
// Reset Device
RADIO_PWRMODE = 0x80;
RADIO_PWRMODE = PWRMODE_PWRDOWN;
// Wait some time for regulator startup
#if defined(VREGDELAY) && VREGDELAY > 0
delay(VREGDELAY);
#endif
// Check Scratch
i = RADIO_SILICONREVISION;
i = RADIO_SILICONREVISION;
#ifdef SILICONREV2
if (i != SILICONREV1 && i != SILICONREV2)
return RADIO_ERR_REVISION;
#else
if (i != SILICONREV1)
return RADIO_ERR_REVISION;
#endif
RADIO_SCRATCH = 0x55;
if (RADIO_SCRATCH != 0x55)
return RADIO_ERR_COMM;
RADIO_SCRATCH = 0xAA;
if (RADIO_SCRATCH != 0xAA)
return RADIO_ERR_COMM;
// Initialize Radio Interface Registers
AX5051_IFMODE = 0x00;
AX5051_PLLVCOI = 0x01;
AX5051_RXMISC = 0x35;
if (radio_probeirq())
return RADIO_ERR_IRQ;
return RADIO_OK;
}
__reentrantb uint8_t ax5051_probeirq(void) __reentrant
{
uint8_t p = 0x60;
uint8_t pc1 = AX5051_PINCFG1 & 0x0F;
uint8_t iesave = IE;
IE_4 = 0;
PORTR = 0xEB;
AX5051_PINCFG1 = 0xD0 | pc1;
AX5051_PINCFG2 = 0xF2; /* IRQ Line 1 */
p &= PINR;
AX5051_PINCFG2 = 0xF0; /* IRQ Line 0 */
p &= (uint8_t)~PINR;
AX5051_PINCFG2 = 0xD0;
switch (p) {
case 0x20: /* IRQ on PR5 */
RADIOMUX &= (uint8_t)~0x08;
break;
case 0x40: /* IRQ on PR6 */
RADIOMUX |= 0x08;
break;
default:
/* Error */
AX5051_PINCFG1 = 0xA0 | pc1; /* Disable IRQ line */
IE = iesave;
return 1;
}
PORTR &= (uint8_t)~p; /* disable pullup */
/*
* Check voltage on test mode pins and drive them
* to the correct level. This is somewhat dangerous - we
* may momentarily short circuit the output driver (4mA)
* no short circuit will happen if the board complies
* to AX5051/AX5151/AX8052F151 programming manual
*/
EA = 0;
/* check T2 */
AX5051_PINCFG1 = 0xC0 | pc1;
AX5051_PINCFG2 |= AX5051_PINCFG3 & 0x01;
/* check T1 */
AX5051_PINCFG1 = 0x80 | pc1;
AX5051_PINCFG2 |= AX5051_PINCFG3 & 0x04;
/* check TST3 */
AX5051_PINCFG1 = pc1;
AX5051_PINCFG2 |= AX5051_PINCFG3 & 0x08;
IE |= p;
/* check whether TST3 is connected to PR5 - if so disable pullup */
PORTR &= PINR | (uint8_t)~0x20;
IE = iesave;
return 0;
}

@ -1,89 +0,0 @@
#include "libmftypes.h"
#include "libmfradio.h"
#define RADIO 5051
#include "radiodefs.h"
#if defined(SDCC)
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant __naked
{
ptr;
len;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
jz nodata$
mov r7,a
jb _B_7,codeptr$ ; >0x80 code
jnb _B_6,xdataptr$ ; <0x40 far
mov r0,dpl
mov dptr,#(AX8052_RADIOBASE | FDATA)
jb _B_5,pdataptr$ ; >0x60 pdata
idataloop$:
mov a,@r0
movx @dptr,a
inc r0
djnz r7,idataloop$
nodata$:
ret
pdataptr$:
pdataloop$:
movx a,@r0
movx @dptr,a
inc r0
djnz r7,pdataloop$
ret
xdataptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
xdataloop$:
movx a,@dptr
movx @r0,a
inc dptr
djnz r7,xdataloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
codeptr$:
mov a,#0x80
anl a,_IE
mov r5,a
clr _EA
mov r6,_XPAGE
mov _XPAGE,#((AX8052_RADIOBASE | FDATA) >> 8)
mov r0,#(AX8052_RADIOBASE | FDATA)
codeloop$:
clr a
movc a,@a+dptr
movx @r0,a
inc dptr
djnz r7,codeloop$
mov _XPAGE,r6
mov a,r5
orl _IE,a
ret
__endasm;
}
#else
__reentrantb void radio_writefifo(const uint8_t __generic *ptr, uint8_t len) __reentrant
{
if (!len)
return;
do {
*(uint8_t __xdata *)(AX8052_RADIOBASE | FDATA) = *ptr++;
} while (--len);
}
#endif

@ -1,51 +0,0 @@
#include "libmfcrc.h"
#define crc_byte crc_crc16_byte
#define crc_table crc_crc16_table
#define crc_table_asm _crc_crc16_table
#if defined(SDCC)
__reentrantb uint16_t crc_byte(uint16_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
clr c
rlc a
mov r2,a
clr a
rlc a
mov r3,a
mov a,#crc_table_asm
add a,r2
mov dpl,a
mov a,#(crc_table_asm >> 8)
addc a,r3
xch a,dph
mov r2,a
clr a
movc a,@a+dptr
xrl a,r2
mov r2,a
mov a,#1
movc a,@a+dptr
mov dph,a
mov dpl,r2
ret
__endasm;
}
#else
__reentrantb uint16_t crc_byte(uint16_t crc, uint8_t c) __reentrant
{
return (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff];
}
#endif

@ -1,243 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc16
#define crc_byte crc_crc16_byte
#define crc_table_asm _crc_crc16_table
#define CRCMSB 0
#if defined(SDCC)
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-5
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,51 +0,0 @@
#include "libmfcrc.h"
#define crc_msb_byte crc_crc16_msb_byte
#define crc_msbtable crc_crc16_msbtable
#define crc_msbtable_asm _crc_crc16_msbtable
#if defined(SDCC)
__reentrantb uint16_t crc_msb_byte(uint16_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dph
clr c
rlc a
mov r2,a
clr a
rlc a
mov r3,a
mov a,#crc_msbtable_asm
add a,r2
xch a,dpl
mov r2,a
mov a,#(crc_msbtable_asm >> 8)
addc a,r3
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r2
mov r2,a
clr a
movc a,@a+dptr
mov dpl,a
mov dph,r2
ret
__endasm;
}
#else
__reentrantb uint16_t crc_msb_byte(uint16_t crc, uint8_t c) __reentrant
{
return (crc << 8) ^ crc_msbtable[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff];
}
#endif

@ -1,243 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc16_msb
#define crc_byte crc_crc16_msb_byte
#define crc_table_asm _crc_crc16_msbtable
#define CRCMSB 1
#if defined(SDCC)
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-5
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,51 +0,0 @@
#include "libmfcrc.h"
#define crc_byte crc_crc16dnp_byte
#define crc_table crc_crc16dnp_table
#define crc_table_asm _crc_crc16dnp_table
#if defined(SDCC)
__reentrantb uint16_t crc_byte(uint16_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
clr c
rlc a
mov r2,a
clr a
rlc a
mov r3,a
mov a,#crc_table_asm
add a,r2
mov dpl,a
mov a,#(crc_table_asm >> 8)
addc a,r3
xch a,dph
mov r2,a
clr a
movc a,@a+dptr
xrl a,r2
mov r2,a
mov a,#1
movc a,@a+dptr
mov dph,a
mov dpl,r2
ret
__endasm;
}
#else
__reentrantb uint16_t crc_byte(uint16_t crc, uint8_t c) __reentrant
{
return (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff];
}
#endif

@ -1,243 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc16dnp
#define crc_byte crc_crc16dnp_byte
#define crc_table_asm _crc_crc16dnp_table
#define CRCMSB 0
#if defined(SDCC)
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-5
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,51 +0,0 @@
#include "libmfcrc.h"
#define crc_msb_byte crc_crc16dnp_msb_byte
#define crc_msbtable crc_crc16dnp_msbtable
#define crc_msbtable_asm _crc_crc16dnp_msbtable
#if defined(SDCC)
__reentrantb uint16_t crc_msb_byte(uint16_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dph
clr c
rlc a
mov r2,a
clr a
rlc a
mov r3,a
mov a,#crc_msbtable_asm
add a,r2
xch a,dpl
mov r2,a
mov a,#(crc_msbtable_asm >> 8)
addc a,r3
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r2
mov r2,a
clr a
movc a,@a+dptr
mov dpl,a
mov dph,r2
ret
__endasm;
}
#else
__reentrantb uint16_t crc_msb_byte(uint16_t crc, uint8_t c) __reentrant
{
return (crc << 8) ^ crc_msbtable[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff];
}
#endif

@ -1,243 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc16dnp_msb
#define crc_byte crc_crc16dnp_msb_byte
#define crc_table_asm _crc_crc16dnp_msbtable
#define CRCMSB 1
#if defined(SDCC)
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-5
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,60 +0,0 @@
#include "libmfcrc.h"
#define crc_byte crc_crc32_byte
#define crc_table crc_crc32_table
#define crc_table_asm _crc_crc32_table
#if defined(SDCC)
__reentrantb uint32_t crc_byte(uint32_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov r4,a
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
rl a
rl a
mov r3,a
anl a,#0xfc
add a,#crc_table_asm
mov dpl,a
mov a,r3
anl a,#0x03
addc a,#(crc_table_asm >> 8)
xch a,dph
mov r2,a
clr a
movc a,@a+dptr
xrl a,r2
mov r2,a
mov a,#2
movc a,@a+dptr
xrl a,r4
mov r3,a
mov a,#3
movc a,@a+dptr
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,b
mov dph,a
mov dpl,r2
mov b,r3
mov a,r4
ret
__endasm;
}
#else
__reentrantb uint32_t crc_byte(uint32_t crc, uint8_t c) __reentrant
{
return (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff];
}
#endif

@ -1,326 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc32
#define crc_byte crc_crc32_byte
#define crc_table_asm _crc_crc32_table
#define CRCMSB 0
#if defined(SDCC)
__reentrantb uint32_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint32_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-7
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r6,a
inc r0
mov a,@r0
mov r7,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00011$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
mov b,r6
mov a,r7
ret
00011$:
sjmp 00010$
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint32_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint32_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,61 +0,0 @@
#include "libmfcrc.h"
#define crc_msb_byte crc_crc32_msb_byte
#define crc_msbtable crc_crc32_msbtable
#define crc_msbtable_asm _crc_crc32_msbtable
#if defined(SDCC)
__reentrantb uint32_t crc_msb_byte(uint32_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov r2,a
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,r2
rl a
rl a
mov r3,a
anl a,#0xfc
add a,#crc_msbtable_asm
xch a,dpl
mov r2,a
mov a,r3
anl a,#0x03
addc a,#(crc_msbtable_asm >> 8)
xch a,dph
mov r3,a
mov a,#1
movc a,@a+dptr
xrl a,r2
mov r2,a
mov a,#2
movc a,@a+dptr
xrl a,r3
mov r3,a
mov a,#3
movc a,@a+dptr
xrl a,b
mov r4,a
clr a
movc a,@a+dptr
mov dpl,a
mov dph,r2
mov b,r3
mov a,r4
ret
__endasm;
}
#else
__reentrantb uint32_t crc_msb_byte(uint32_t crc, uint8_t c) __reentrant
{
return (crc << 8) ^ crc_msbtable[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff];
}
#endif

@ -1,326 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc32_msb
#define crc_byte crc_crc32_msb_byte
#define crc_table_asm _crc_crc32_msbtable
#define CRCMSB 1
#if defined(SDCC)
__reentrantb uint32_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint32_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-7
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r6,a
inc r0
mov a,@r0
mov r7,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00011$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
mov b,r6
mov a,r7
ret
00011$:
sjmp 00010$
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
xrl a,r6
mov r5,a
mov a,#2
movc a,@a+dptr
xrl a,r7
mov r6,a
mov a,#3
movc a,@a+dptr
mov r7,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 24) ^ c) & (uint8_t)0xff]
xrl a,r7
rl a
rl a
mov dpl,a
anl a,#0xfc
add a,#crc_table_asm
xch a,dpl
anl a,#0x03
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#3
movc a,@a+dptr
xrl a,r6
mov r7,a
mov a,#2
movc a,@a+dptr
xrl a,r5
mov r6,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint32_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint32_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,111 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc8ccitt
#define crc_byte crc_crc8ccitt_byte
#define crc_table_asm _crc_crc8ccitt_table
#define CRCMSB 0
#if defined(SDCC)
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-4
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,111 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc8ccitt_msb
#define crc_byte crc_crc8ccitt_msb_byte
#define crc_table_asm _crc_crc8ccitt_msbtable
#define CRCMSB 1
#if defined(SDCC)
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-4
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,111 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc8onewire
#define crc_byte crc_crc8onewire_byte
#define crc_table_asm _crc_crc8onewire_table
#define CRCMSB 0
#if defined(SDCC)
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-4
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,111 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_crc8onewire_msb
#define crc_byte crc_crc8onewire_msb_byte
#define crc_table_asm _crc_crc8onewire_msbtable
#define CRCMSB 1
#if defined(SDCC)
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-4
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
;; lsb/msb: crc = crc_table[crc ^ c]
xrl a,r4
mov dptr,#crc_table_asm
movc a,@a+dptr
mov r4,a
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint8_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint8_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,33 +0,0 @@
#include "libmfcrc.h"
#define crc_byte crc_crc8ccitt_byte
#define crc_table crc_crc8ccitt_table
#define crc_table_asm _crc_crc8ccitt_table
#if defined(SDCC)
__reentrantb uint8_t crc_byte(uint8_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
mov dptr,#crc_table_asm
movc a,@a+dptr
mov dpl,a
ret
__endasm;
}
#else
__reentrantb uint8_t crc_byte(uint8_t crc, uint8_t c) __reentrant
{
return crc_table[crc ^ c];
}
#endif

@ -1,33 +0,0 @@
#include "libmfcrc.h"
#define crc_msb_byte crc_crc8ccitt_msb_byte
#define crc_msbtable crc_crc8ccitt_msbtable
#define crc_msbtable_asm _crc_crc8ccitt_msbtable
#if defined(SDCC)
__reentrantb uint8_t crc_msb_byte(uint8_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
mov dptr,#crc_msbtable_asm
movc a,@a+dptr
mov dpl,a
ret
__endasm;
}
#else
__reentrantb uint8_t crc_msb_byte(uint8_t crc, uint8_t c) __reentrant
{
return crc_msbtable[crc ^ c];
}
#endif

@ -1,33 +0,0 @@
#include "libmfcrc.h"
#define crc_byte crc_crc8onewire_byte
#define crc_table crc_crc8onewire_table
#define crc_table_asm _crc_crc8onewire_table
#if defined(SDCC)
__reentrantb uint8_t crc_byte(uint8_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
mov dptr,#crc_table_asm
movc a,@a+dptr
mov dpl,a
ret
__endasm;
}
#else
__reentrantb uint8_t crc_byte(uint8_t crc, uint8_t c) __reentrant
{
return crc_table[crc ^ c];
}
#endif

@ -1,33 +0,0 @@
#include "libmfcrc.h"
#define crc_msb_byte crc_crc8onewire_msb_byte
#define crc_msbtable crc_crc8onewire_msbtable
#define crc_msbtable_asm _crc_crc8onewire_msbtable
#if defined(SDCC)
__reentrantb uint8_t crc_msb_byte(uint8_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
mov dptr,#crc_msbtable_asm
movc a,@a+dptr
mov dpl,a
ret
__endasm;
}
#else
__reentrantb uint8_t crc_msb_byte(uint8_t crc, uint8_t c) __reentrant
{
return crc_msbtable[crc ^ c];
}
#endif

@ -1,51 +0,0 @@
#include "libmfcrc.h"
#define crc_byte crc_ccitt_byte
#define crc_table crc_ccitt_table
#define crc_table_asm _crc_ccitt_table
#if defined(SDCC)
__reentrantb uint16_t crc_byte(uint16_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dpl
clr c
rlc a
mov r2,a
clr a
rlc a
mov r3,a
mov a,#crc_table_asm
add a,r2
mov dpl,a
mov a,#(crc_table_asm >> 8)
addc a,r3
xch a,dph
mov r2,a
clr a
movc a,@a+dptr
xrl a,r2
mov r2,a
mov a,#1
movc a,@a+dptr
mov dph,a
mov dpl,r2
ret
__endasm;
}
#else
__reentrantb uint16_t crc_byte(uint16_t crc, uint8_t c) __reentrant
{
return (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff];
}
#endif

@ -1,243 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_ccitt
#define crc_byte crc_ccitt_byte
#define crc_table_asm _crc_ccitt_table
#define CRCMSB 0
#if defined(SDCC)
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-5
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,51 +0,0 @@
#include "libmfcrc.h"
#define crc_msb_byte crc_ccitt_msb_byte
#define crc_msbtable crc_ccitt_msbtable
#define crc_msbtable_asm _crc_ccitt_msbtable
#if defined(SDCC)
__reentrantb uint16_t crc_msb_byte(uint16_t crc, uint8_t c) __reentrant __naked
{
crc;
c;
__asm;
mov a,sp
add a,#-2
mov r0,a
mov a,@r0
xrl a,dph
clr c
rlc a
mov r2,a
clr a
rlc a
mov r3,a
mov a,#crc_msbtable_asm
add a,r2
xch a,dpl
mov r2,a
mov a,#(crc_msbtable_asm >> 8)
addc a,r3
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r2
mov r2,a
clr a
movc a,@a+dptr
mov dpl,a
mov dph,r2
ret
__endasm;
}
#else
__reentrantb uint16_t crc_msb_byte(uint16_t crc, uint8_t c) __reentrant
{
return (crc << 8) ^ crc_msbtable[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff];
}
#endif

@ -1,243 +0,0 @@
#include "libmfcrc.h"
#define crc_buf crc_ccitt_msb
#define crc_byte crc_ccitt_msb_byte
#define crc_table_asm _crc_ccitt_msbtable
#define CRCMSB 1
#if defined(SDCC)
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant __naked
{
buf;
buflen;
crc;
__asm;
mov a,sp
add a,#-5
mov r0,a
mov a,@r0
mov r4,a
inc r0
mov a,@r0
mov r5,a
inc r0
mov a,@r0
mov r2,a
inc r0
mov a,@r0
mov r3,a
orl a,r2
jz 00001$
mov a,r2
jz 00000$
inc r3
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00020$ ; <0x40 far
mov r0,dpl
jb _B_5,00030$ ; >0x60 pdata
;; idata
00040$: mov a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00040$
djnz r3,00040$
sjmp 00001$
00030$: movx a,@r0
inc r0
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
djnz r2,00030$
djnz r3,00030$
00001$:
mov dpl,r4
mov dph,r5
ret
00020$: movx a,@dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00020$
djnz r3,00020$
sjmp 00001$
00010$: clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r1,dph
#if !CRCMSB
;; lsb: crc = (crc >> 8) ^ crc_table[((uint8_t)crc ^ c) & (uint8_t)0xff]
xrl a,r4
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
clr a
movc a,@a+dptr
xrl a,r5
mov r4,a
mov a,#1
movc a,@a+dptr
mov r5,a
#else
;; msb: crc = (crc << 8) ^ crc_table[((uint8_t)(crc >> 8) ^ c) & (uint8_t)0xff]
xrl a,r5
rl a
mov dpl,a
anl a,#0xfe
add a,#crc_table_asm
xch a,dpl
anl a,#0x01
addc a,#(crc_table_asm >> 8)
mov dph,a
mov a,#1
movc a,@a+dptr
xrl a,r4
mov r5,a
clr a
movc a,@a+dptr
mov r4,a
#endif
;; loop
mov dph,r1
mov dpl,r0
djnz r2,00010$
djnz r3,00010$
sjmp 00001$
__endasm;
}
#else
__reentrantb uint16_t crc_buf(const uint8_t __generic *buf, uint16_t buflen, uint16_t crc) __reentrant
{
if (!buflen)
return crc;
do {
crc = crc_byte(crc, *buf++);
} while (--buflen);
return crc;
}
#endif

@ -1,45 +0,0 @@
#include "ax8052.h"
#include "libmfdbglink.h"
#define uart_poll dbglink_poll
#define uart_txidle dbglink_txidle
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txdone dbglink_wait_txdone
#define uart_wait_txfree dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
__reentrantb void uart_wait_rxcount(uint8_t v) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_rxcount() >= v)
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb uint8_t uart_rx(void) __reentrant
{
uint8_t x;
uart_wait_rxcount(1);
x = uart_rxpeek(0);
uart_rxadvance(1);
return x;
}

@ -1,6 +0,0 @@
#include "ax8052.h"
#include "libmfdbglink.h"
DBGLINK_DEFINE_RXBUFFER(64)

@ -1,57 +0,0 @@
#include "ax8052.h"
#include "libmfdbglink.h"
#define uart_poll dbglink_poll
#define uart_txidle dbglink_txidle
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txdone dbglink_wait_txdone
#define uart_wait_txfree dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
__reentrantb void uart_wait_txfree(uint8_t v) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_txfree() >= v)
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb void uart_wait_txdone(void) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_txidle())
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb void uart_tx(uint8_t v) __reentrant
{
uart_wait_txfree(1);
uart_txpoke(0, v);
uart_txadvance(1);
}

@ -1,6 +0,0 @@
#include "ax8052.h"
#include "libmfdbglink.h"
DBGLINK_DEFINE_TXBUFFER(64)

@ -1,335 +0,0 @@
#include "wrnum.h"
#include "libmfdbglink.h"
#define uart_tx(x) do { dbglink_tx(x); } while (0)
#define _uart_tx _dbglink_tx
#define uart_writehex16 dbglink_writehex16
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 5;
mov r3,#5
; if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,dph
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 4)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-5
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = val >> (4 * (cnt - 1));
mov a,r3
dec a
clr c
rrc a
jnz 00032$
mov a,dpl
sjmp 00031$
00032$: dec a
jnz 00033$
mov a,dph
sjmp 00031$
00033$: clr a
00031$: jnc 00036$
swap a
00036$:
; d &= 0x0F;
anl a,#0x0F
; if (d >= 10) {
; if (flags & WRNUM_LCHEX)
; d += 'a' - '9' - 1;
; else
; d += 'A' - '9' - 1;
; }
add a,#-10
jc 00051$
add a,#10
sjmp 00050$
00051$: add a,#17
jnb WRNUM_BIT_LCHEX,00050$
add a,#32
00050$: mov r4,a
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
;mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 4;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,353 +0,0 @@
#include "wrnum.h"
#include "libmfdbglink.h"
#define uart_tx(x) do { dbglink_tx(x); } while (0)
#define _uart_tx _dbglink_tx
#define uart_writehex32 dbglink_writehex32
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
mov r6,a
mov r7,b
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 10;
mov r3,#10
; if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,r6
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
clr a
subb a,r7
mov r7,a
clr a
subb a,r6
mov r6,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
orl a,r7
orl a,r6
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 4)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-5
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = val >> (4 * (cnt - 1));
mov a,r3
dec a
clr c
rrc a
jnz 00032$
mov a,dpl
sjmp 00031$
00032$: dec a
jnz 00033$
mov a,dph
sjmp 00031$
00033$: dec a
jnz 00034$
mov a,r7
sjmp 00031$
00034$: dec a
jnz 00035$
mov a,r6
sjmp 00031$
00035$: clr a
00031$: jnc 00036$
swap a
00036$:
; d &= 0x0F;
anl a,#0x0F
; if (d >= 10) {
; if (flags & WRNUM_LCHEX)
; d += 'a' - '9' - 1;
; else
; d += 'A' - '9' - 1;
; }
add a,#-10
jc 00051$
add a,#10
sjmp 00050$
00051$: add a,#17
jnb WRNUM_BIT_LCHEX,00050$
add a,#32
00050$: mov r4,a
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
;mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 8;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,30 +0,0 @@
#include "libmfdbglink.h"
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txfree dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
__reentrantb void uart_writehexu16(uint16_t val, uint8_t nrdig) __reentrant
{
uint8_t nrdig1 = nrdig;
uint8_t digit = nrdig1;
uart_wait_txfree(nrdig);
while (digit) {
--digit;
uart_txpokehex(digit, val);
val >>= 4;
}
uart_txadvance(nrdig1);
}

@ -1,30 +0,0 @@
#include "libmfdbglink.h"
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txfree dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
void uart_writehexu32(uint32_t val, uint8_t nrdig)
{
uint8_t __autodata nrdig1 = nrdig;
uint8_t __autodata digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
--digit;
uart_txpokehex(digit, val);
val >>= 4;
}
uart_txadvance(nrdig1);
}

@ -1,305 +0,0 @@
#include "wrnum.h"
#include "libmfdbglink.h"
#define uart_tx(x) do { dbglink_tx(x); } while (0)
#define _uart_tx _dbglink_tx
#define uart_writenum16 dbglink_writenum16
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 5;
mov r3,#5
; if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,dph
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 3)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-4
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = cnt;
mov a,r3
mov r4,a
; val = libmf_num16_digit(val, (uint8_t __auto *)&d);
mov a,#ar4
push acc
lcall _libmf_num16_digit
dec sp
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 5;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num16_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,345 +0,0 @@
#include "wrnum.h"
#include "libmfdbglink.h"
#define uart_tx(x) do { dbglink_tx(x); } while (0)
#define _uart_tx _dbglink_tx
#define uart_writenum32 dbglink_writenum32
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
mov r6,a
mov r7,b
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 10;
mov r3,#10
; if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,r6
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
clr a
subb a,r7
mov r7,a
clr a
subb a,r6
mov r6,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
orl a,r7
orl a,r6
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 9)
; --nrdig;
; if (nrdig > 6)
; --nrdig;
; if (nrdig > 3)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00022$
mov a,r2
add a,#-10
jnc 00020$
dec r2
00020$: mov a,r2
add a,#-7
jnc 00021$
dec r2
00021$: mov a,r2
add a,#-4
jnc 00022$
dec r2
00022$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = cnt;
push ar3
; val = libmf_num32_digit(val, (uint8_t __auto *)&d);
mov a,sp
push b
push acc
mov b,r7
mov a,r6
lcall _libmf_num32_digit
mov r6,a
mov r7,b
dec sp
pop b
pop acc
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
mov r4,a
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jz 00042$
add a,#-3
jz 00042$
add a,#-3
jnz 00038$
; uart_tx(' ');
00042$: push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jz 00050$
add a,#-3
jz 00050$
add a,#-3
jnz 00038$
; uart_tx('\'');
00050$: push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 10;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && ((int32_t)val) < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 9)
--nrdig;
if (nrdig > 6)
--nrdig;
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num32_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,135 +0,0 @@
#include "libmfdbglink.h"
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txfree dbglink_wait_txfree
#define _uart_wait_txfree _dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_txbufptr dbglink_txbufptr
#define _uart_txbufptr _dbglink_txbufptr
#define uart_txfreelinear dbglink_txfreelinear
#define _uart_txfreelinear _dbglink_txfreelinear
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define _uart_txadvance _dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
#if defined(SDCC)
__reentrantb void uart_writestr(const char __generic *ch) __reentrant
{
ch;
__asm;
mov r0,dpl
mov r7,dph
clr a
mov r3,a
mov r2,a
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00011$ ; <0x40 far
jb _B_5,00012$ ; >0x60 pdata
;; idata
mov a,@r0
inc r0
sjmp 00013$
00010$: ;; code
mov dpl,r0
mov dph,r7
clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r7,dph
sjmp 00013$
00011$: ;; xdata
mov dpl,r0
mov dph,r7
movx a,@dptr
inc dptr
mov r0,dpl
mov r7,dph
sjmp 00013$
00012$: ;; pdata
movx a,@r0
inc r0
00013$: jz 00001$
mov r1,a
mov a,r3
jnz 00002$
mov a,r2
jz 00003$
mov dpl,a
lcall _uart_txadvance
00003$: lcall _uart_txfreelinear
mov a,dpl
jnz 00004$
mov r4,b
mov dpl,#1
lcall _uart_wait_txfree
mov b,r4
lcall _uart_txfreelinear
mov a,dpl
00004$: mov r3,a
clr a
mov r2,a
mov dpl,a
lcall _uart_txbufptr
mov r4,dpl
mov r5,dph
00002$: mov dpl,r4
mov dph,r5
mov a,r1
movx @dptr,a
inc dptr
mov r4,dpl
mov r5,dph
inc r2
dec r3
sjmp 00000$
00001$: mov a,r2
jz 00005$
mov dpl,a
lcall _uart_txadvance
00005$:
__endasm;
}
#else
__reentrantb void uart_writestr(const char __generic *ch) __reentrant
{
uint8_t __xdata *p;
uint8_t f = 0;
uint8_t a = 0;
for (;;) {
char c = *ch++;
if (!c)
break;
if (!f) {
if (a)
uart_txadvance(a);
f = uart_txfreelinear();
if (!f) {
uart_wait_txfree(1);
f = uart_txfreelinear();
}
p = uart_txbufptr(0);
a = 0;
}
*p++ = c;
++a;
--f;
}
if (a)
uart_txadvance(a);
}
#endif

@ -1,32 +0,0 @@
#include "libmfdbglink.h"
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txfree dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
__reentrantb void uart_writeu16(uint16_t val, uint8_t nrdig) __reentrant
{
uint8_t nrdig1 = nrdig;
uint8_t digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
uint8_t v1 = val;
val /= 10;
v1 -= 10 * (uint8_t)val;
--digit;
uart_txpoke(digit, '0' + v1);
}
uart_txadvance(nrdig1);
}

@ -1,32 +0,0 @@
#include "libmfdbglink.h"
#define uart_txfree dbglink_txfree
#define uart_rxcount dbglink_rxcount
#define uart_wait_txfree dbglink_wait_txfree
#define uart_wait_rxcount dbglink_wait_rxcount
#define uart_rxpeek dbglink_rxpeek
#define uart_txpokehex dbglink_txpokehex
#define uart_txpoke dbglink_txpoke
#define uart_rxadvance dbglink_rxadvance
#define uart_txadvance dbglink_txadvance
#define uart_rx dbglink_rx
#define uart_tx dbglink_tx
#define uart_writestr dbglink_writestr
#define uart_writehexu16 dbglink_writehexu16
#define uart_writehexu32 dbglink_writehexu32
#define uart_writeu16 dbglink_writeu16
#define uart_writeu32 dbglink_writeu32
void uart_writeu32(uint32_t val, uint8_t nrdig)
{
uint8_t __autodata nrdig1 = nrdig;
uint8_t __autodata digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
uint8_t __autodata v1 = val;
val /= 10;
v1 -= 10 * (uint8_t)val;
--digit;
uart_txpoke(digit, '0' + v1);
}
uart_txadvance(nrdig1);
}

@ -1,73 +0,0 @@
#include "wrnum.h"
#include "libmflcd.h"
#define uart_tx(x) do { lcd_writedata(x); lcd_waitshort(); } while (0)
#define uart_writehex16 lcd_writehex16
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 4;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}

@ -1,73 +0,0 @@
#include "wrnum.h"
#include "libmflcd.h"
#define uart_tx(x) do { lcd_writedata(x); lcd_waitshort(); } while (0)
#define uart_writehex32 lcd_writehex32
uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 8;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}

@ -1,67 +0,0 @@
#include "wrnum.h"
#include "libmflcd.h"
#define uart_tx(x) do { lcd_writedata(x); lcd_waitshort(); } while (0)
#define uart_writenum16 lcd_writenum16
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 5;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num16_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}

@ -1,71 +0,0 @@
#include "wrnum.h"
#include "libmflcd.h"
#define uart_tx(x) do { lcd_writedata(x); lcd_waitshort(); } while (0)
#define uart_writenum32 lcd_writenum32
uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 10;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && ((int32_t)val) < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 9)
--nrdig;
if (nrdig > 6)
--nrdig;
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num32_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}

File diff suppressed because it is too large Load Diff

@ -1,45 +0,0 @@
#include "ax8052.h"
#include "libmfuart0.h"
#define uart_poll uart0_poll
#define uart_txidle uart0_txidle
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txdone uart0_wait_txdone
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
__reentrantb void uart_wait_rxcount(uint8_t v) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_rxcount() >= v)
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb uint8_t uart_rx(void) __reentrant
{
uint8_t x;
uart_wait_rxcount(1);
x = uart_rxpeek(0);
uart_rxadvance(1);
return x;
}

@ -1,6 +0,0 @@
#include "ax8052.h"
#include "libmfuart0.h"
UART0_DEFINE_RXBUFFER(64)

@ -1,79 +0,0 @@
#include "ax8052.h"
#include "libmfuart.h"
#include "libmfuart0.h"
#define UARTS0 UART0S0
#define UARTS1 UART0S1
#define UARTS2 UART0S2
#define UARTS3 UART0S3
#define UARTS4 UART0S4
#define UARTS5 UART0S5
#define USHREG U0SHREG
#define UMODE U0MODE
#define UCTRL U0CTRL
#define USTATUS U0STATUS
#define _USHREG _U0SHREG
#define _UMODE _U0MODE
#define _UCTRL _U0CTRL
#define _USTATUS _U0STATUS
#define IRQENA EIE_4
#define uart_irq_nr 11
#define uart_vector_addr 0x5B
#define uart_init uart0_init
#define uart_stop uart0_stop
#define uart_iocore uart0_iocore
#define _uart_iocore _uart0_iocore
#define uart_irq uart0_irq
#define uart_poll uart0_poll
#define uart_rxbufptr uart0_rxbufptr
#define _uart_rxbufptr _uart0_rxbufptr
#define uart_txbufptr uart0_txbufptr
#define _uart_txbufptr _uart0_txbufptr
#define uart_txfreelinear uart0_txfreelinear
#define _uart_txidle _uart0_txidle
#define uart_txidle uart0_txidle
#define uart_txfree uart0_txfree
#define uart_rxcountlinear uart0_rxcountlinear
#define uart_rxcount uart0_rxcount
#define uart_txbuffersize uart0_txbuffersize
#define uart_rxbuffersize uart0_rxbuffersize
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define _uart_txpoke _uart0_txpoke
#define uart_rxbuffer uart0_rxbuffer
#define _uart_rxbuffer _uart0_rxbuffer
#define uart_txbuffer uart0_txbuffer
#define _uart_txbuffer _uart0_txbuffer
#define _uart_buffer_size _uart0_buffer_size
#define _uart_buffer_negsize _uart0_buffer_negsize
#define uart_rxbuffer_size uart0_rxbuffer_size
#define _uart_rxbuffer_size _uart0_rxbuffer_size
#define uart_txbuffer_size uart0_txbuffer_size
#define _uart_txbuffer_size _uart0_txbuffer_size
static volatile uint8_t __data fiforxwr;
static volatile uint8_t __data fiforxrd;
static volatile uint8_t __data fifotxwr;
static volatile uint8_t __data fifotxrd;
extern uint8_t __xdata uart_rxbuffer[];
extern uint8_t __xdata uart_txbuffer[];
#if !defined(SDCC)
extern const uint8_t __code uart_rxbuffer_size[];
extern const uint8_t __code uart_txbuffer_size[];
#endif
void uart_stop(void)
{
IRQENA = 0;
UMODE = 0;
UCTRL = 0;
}

@ -1,57 +0,0 @@
#include "ax8052.h"
#include "libmfuart0.h"
#define uart_poll uart0_poll
#define uart_txidle uart0_txidle
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txdone uart0_wait_txdone
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
__reentrantb void uart_wait_txfree(uint8_t v) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_txfree() >= v)
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb void uart_wait_txdone(void) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_txidle())
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb void uart_tx(uint8_t v) __reentrant
{
uart_wait_txfree(1);
uart_txpoke(0, v);
uart_txadvance(1);
}

@ -1,6 +0,0 @@
#include "ax8052.h"
#include "libmfuart0.h"
UART0_DEFINE_TXBUFFER(64)

@ -1,335 +0,0 @@
#include "wrnum.h"
#include "libmfuart0.h"
#define uart_tx(x) do { uart0_tx(x); } while (0)
#define _uart_tx _uart0_tx
#define uart_writehex16 uart0_writehex16
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 5;
mov r3,#5
; if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,dph
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 4)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-5
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = val >> (4 * (cnt - 1));
mov a,r3
dec a
clr c
rrc a
jnz 00032$
mov a,dpl
sjmp 00031$
00032$: dec a
jnz 00033$
mov a,dph
sjmp 00031$
00033$: clr a
00031$: jnc 00036$
swap a
00036$:
; d &= 0x0F;
anl a,#0x0F
; if (d >= 10) {
; if (flags & WRNUM_LCHEX)
; d += 'a' - '9' - 1;
; else
; d += 'A' - '9' - 1;
; }
add a,#-10
jc 00051$
add a,#10
sjmp 00050$
00051$: add a,#17
jnb WRNUM_BIT_LCHEX,00050$
add a,#32
00050$: mov r4,a
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
;mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 4;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,353 +0,0 @@
#include "wrnum.h"
#include "libmfuart0.h"
#define uart_tx(x) do { uart0_tx(x); } while (0)
#define _uart_tx _uart0_tx
#define uart_writehex32 uart0_writehex32
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
mov r6,a
mov r7,b
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 10;
mov r3,#10
; if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,r6
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
clr a
subb a,r7
mov r7,a
clr a
subb a,r6
mov r6,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
orl a,r7
orl a,r6
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 4)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-5
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = val >> (4 * (cnt - 1));
mov a,r3
dec a
clr c
rrc a
jnz 00032$
mov a,dpl
sjmp 00031$
00032$: dec a
jnz 00033$
mov a,dph
sjmp 00031$
00033$: dec a
jnz 00034$
mov a,r7
sjmp 00031$
00034$: dec a
jnz 00035$
mov a,r6
sjmp 00031$
00035$: clr a
00031$: jnc 00036$
swap a
00036$:
; d &= 0x0F;
anl a,#0x0F
; if (d >= 10) {
; if (flags & WRNUM_LCHEX)
; d += 'a' - '9' - 1;
; else
; d += 'A' - '9' - 1;
; }
add a,#-10
jc 00051$
add a,#10
sjmp 00050$
00051$: add a,#17
jnb WRNUM_BIT_LCHEX,00050$
add a,#32
00050$: mov r4,a
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
;mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 8;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,30 +0,0 @@
#include "libmfuart0.h"
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
__reentrantb void uart_writehexu16(uint16_t val, uint8_t nrdig) __reentrant
{
uint8_t nrdig1 = nrdig;
uint8_t digit = nrdig1;
uart_wait_txfree(nrdig);
while (digit) {
--digit;
uart_txpokehex(digit, val);
val >>= 4;
}
uart_txadvance(nrdig1);
}

@ -1,30 +0,0 @@
#include "libmfuart0.h"
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
void uart_writehexu32(uint32_t val, uint8_t nrdig)
{
uint8_t __autodata nrdig1 = nrdig;
uint8_t __autodata digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
--digit;
uart_txpokehex(digit, val);
val >>= 4;
}
uart_txadvance(nrdig1);
}

@ -1,305 +0,0 @@
#include "wrnum.h"
#include "libmfuart0.h"
#define uart_tx(x) do { uart0_tx(x); } while (0)
#define _uart_tx _uart0_tx
#define uart_writenum16 uart0_writenum16
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 5;
mov r3,#5
; if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,dph
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 3)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-4
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = cnt;
mov a,r3
mov r4,a
; val = libmf_num16_digit(val, (uint8_t __auto *)&d);
mov a,#ar4
push acc
lcall _libmf_num16_digit
dec sp
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 5;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num16_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,345 +0,0 @@
#include "wrnum.h"
#include "libmfuart0.h"
#define uart_tx(x) do { uart0_tx(x); } while (0)
#define _uart_tx _uart0_tx
#define uart_writenum32 uart0_writenum32
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
mov r6,a
mov r7,b
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 10;
mov r3,#10
; if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,r6
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
clr a
subb a,r7
mov r7,a
clr a
subb a,r6
mov r6,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
orl a,r7
orl a,r6
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 9)
; --nrdig;
; if (nrdig > 6)
; --nrdig;
; if (nrdig > 3)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00022$
mov a,r2
add a,#-10
jnc 00020$
dec r2
00020$: mov a,r2
add a,#-7
jnc 00021$
dec r2
00021$: mov a,r2
add a,#-4
jnc 00022$
dec r2
00022$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = cnt;
push ar3
; val = libmf_num32_digit(val, (uint8_t __auto *)&d);
mov a,sp
push b
push acc
mov b,r7
mov a,r6
lcall _libmf_num32_digit
mov r6,a
mov r7,b
dec sp
pop b
pop acc
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
mov r4,a
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jz 00042$
add a,#-3
jz 00042$
add a,#-3
jnz 00038$
; uart_tx(' ');
00042$: push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jz 00050$
add a,#-3
jz 00050$
add a,#-3
jnz 00038$
; uart_tx('\'');
00050$: push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 10;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && ((int32_t)val) < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 9)
--nrdig;
if (nrdig > 6)
--nrdig;
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num32_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,135 +0,0 @@
#include "libmfuart0.h"
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txfree uart0_wait_txfree
#define _uart_wait_txfree _uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_txbufptr uart0_txbufptr
#define _uart_txbufptr _uart0_txbufptr
#define uart_txfreelinear uart0_txfreelinear
#define _uart_txfreelinear _uart0_txfreelinear
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define _uart_txadvance _uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
#if defined(SDCC)
__reentrantb void uart_writestr(const char __generic *ch) __reentrant
{
ch;
__asm;
mov r0,dpl
mov r7,dph
clr a
mov r3,a
mov r2,a
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00011$ ; <0x40 far
jb _B_5,00012$ ; >0x60 pdata
;; idata
mov a,@r0
inc r0
sjmp 00013$
00010$: ;; code
mov dpl,r0
mov dph,r7
clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r7,dph
sjmp 00013$
00011$: ;; xdata
mov dpl,r0
mov dph,r7
movx a,@dptr
inc dptr
mov r0,dpl
mov r7,dph
sjmp 00013$
00012$: ;; pdata
movx a,@r0
inc r0
00013$: jz 00001$
mov r1,a
mov a,r3
jnz 00002$
mov a,r2
jz 00003$
mov dpl,a
lcall _uart_txadvance
00003$: lcall _uart_txfreelinear
mov a,dpl
jnz 00004$
mov r4,b
mov dpl,#1
lcall _uart_wait_txfree
mov b,r4
lcall _uart_txfreelinear
mov a,dpl
00004$: mov r3,a
clr a
mov r2,a
mov dpl,a
lcall _uart_txbufptr
mov r4,dpl
mov r5,dph
00002$: mov dpl,r4
mov dph,r5
mov a,r1
movx @dptr,a
inc dptr
mov r4,dpl
mov r5,dph
inc r2
dec r3
sjmp 00000$
00001$: mov a,r2
jz 00005$
mov dpl,a
lcall _uart_txadvance
00005$:
__endasm;
}
#else
__reentrantb void uart_writestr(const char __generic *ch) __reentrant
{
uint8_t __xdata *p;
uint8_t f = 0;
uint8_t a = 0;
for (;;) {
char c = *ch++;
if (!c)
break;
if (!f) {
if (a)
uart_txadvance(a);
f = uart_txfreelinear();
if (!f) {
uart_wait_txfree(1);
f = uart_txfreelinear();
}
p = uart_txbufptr(0);
a = 0;
}
*p++ = c;
++a;
--f;
}
if (a)
uart_txadvance(a);
}
#endif

@ -1,32 +0,0 @@
#include "libmfuart0.h"
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
__reentrantb void uart_writeu16(uint16_t val, uint8_t nrdig) __reentrant
{
uint8_t nrdig1 = nrdig;
uint8_t digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
uint8_t v1 = val;
val /= 10;
v1 -= 10 * (uint8_t)val;
--digit;
uart_txpoke(digit, '0' + v1);
}
uart_txadvance(nrdig1);
}

@ -1,32 +0,0 @@
#include "libmfuart0.h"
#define uart_txfree uart0_txfree
#define uart_rxcount uart0_rxcount
#define uart_wait_txfree uart0_wait_txfree
#define uart_wait_rxcount uart0_wait_rxcount
#define uart_rxpeek uart0_rxpeek
#define uart_txpokehex uart0_txpokehex
#define uart_txpoke uart0_txpoke
#define uart_rxadvance uart0_rxadvance
#define uart_txadvance uart0_txadvance
#define uart_rx uart0_rx
#define uart_tx uart0_tx
#define uart_writestr uart0_writestr
#define uart_writehexu16 uart0_writehexu16
#define uart_writehexu32 uart0_writehexu32
#define uart_writeu16 uart0_writeu16
#define uart_writeu32 uart0_writeu32
void uart_writeu32(uint32_t val, uint8_t nrdig)
{
uint8_t __autodata nrdig1 = nrdig;
uint8_t __autodata digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
uint8_t __autodata v1 = val;
val /= 10;
v1 -= 10 * (uint8_t)val;
--digit;
uart_txpoke(digit, '0' + v1);
}
uart_txadvance(nrdig1);
}

File diff suppressed because it is too large Load Diff

@ -1,45 +0,0 @@
#include "ax8052.h"
#include "libmfuart1.h"
#define uart_poll uart1_poll
#define uart_txidle uart1_txidle
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txdone uart1_wait_txdone
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
__reentrantb void uart_wait_rxcount(uint8_t v) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_rxcount() >= v)
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb uint8_t uart_rx(void) __reentrant
{
uint8_t x;
uart_wait_rxcount(1);
x = uart_rxpeek(0);
uart_rxadvance(1);
return x;
}

@ -1,6 +0,0 @@
#include "ax8052.h"
#include "libmfuart1.h"
UART1_DEFINE_RXBUFFER(64)

@ -1,79 +0,0 @@
#include "ax8052.h"
#include "libmfuart.h"
#include "libmfuart1.h"
#define UARTS0 UART1S0
#define UARTS1 UART1S1
#define UARTS2 UART1S2
#define UARTS3 UART1S3
#define UARTS4 UART1S4
#define UARTS5 UART1S5
#define USHREG U1SHREG
#define UMODE U1MODE
#define UCTRL U1CTRL
#define USTATUS U1STATUS
#define _USHREG _U1SHREG
#define _UMODE _U1MODE
#define _UCTRL _U1CTRL
#define _USTATUS _U1STATUS
#define IRQENA EIE_5
#define uart_irq_nr 12
#define uart_vector_addr 0x63
#define uart_init uart1_init
#define uart_stop uart1_stop
#define uart_iocore uart1_iocore
#define _uart_iocore _uart1_iocore
#define uart_irq uart1_irq
#define uart_poll uart1_poll
#define uart_rxbufptr uart1_rxbufptr
#define _uart_rxbufptr _uart1_rxbufptr
#define uart_txbufptr uart1_txbufptr
#define _uart_txbufptr _uart1_txbufptr
#define uart_txfreelinear uart1_txfreelinear
#define _uart_txidle _uart1_txidle
#define uart_txidle uart1_txidle
#define uart_txfree uart1_txfree
#define uart_rxcountlinear uart1_rxcountlinear
#define uart_rxcount uart1_rxcount
#define uart_txbuffersize uart1_txbuffersize
#define uart_rxbuffersize uart1_rxbuffersize
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define _uart_txpoke _uart1_txpoke
#define uart_rxbuffer uart1_rxbuffer
#define _uart_rxbuffer _uart1_rxbuffer
#define uart_txbuffer uart1_txbuffer
#define _uart_txbuffer _uart1_txbuffer
#define _uart_buffer_size _uart1_buffer_size
#define _uart_buffer_negsize _uart1_buffer_negsize
#define uart_rxbuffer_size uart1_rxbuffer_size
#define _uart_rxbuffer_size _uart1_rxbuffer_size
#define uart_txbuffer_size uart1_txbuffer_size
#define _uart_txbuffer_size _uart1_txbuffer_size
static volatile uint8_t __data fiforxwr;
static volatile uint8_t __data fiforxrd;
static volatile uint8_t __data fifotxwr;
static volatile uint8_t __data fifotxrd;
extern uint8_t __xdata uart_rxbuffer[];
extern uint8_t __xdata uart_txbuffer[];
#if !defined(SDCC)
extern const uint8_t __code uart_rxbuffer_size[];
extern const uint8_t __code uart_txbuffer_size[];
#endif
void uart_stop(void)
{
IRQENA = 0;
UMODE = 0;
UCTRL = 0;
}

@ -1,57 +0,0 @@
#include "ax8052.h"
#include "libmfuart1.h"
#define uart_poll uart1_poll
#define uart_txidle uart1_txidle
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txdone uart1_wait_txdone
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
__reentrantb void uart_wait_txfree(uint8_t v) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_txfree() >= v)
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb void uart_wait_txdone(void) __reentrant
{
uint8_t iesave = (IE & 0x80);
for (;;) {
EA = 0;
if (uart_txidle())
break;
if (!uart_poll())
wtimer_standby();
IE |= iesave;
}
IE |= iesave;
}
__reentrantb void uart_tx(uint8_t v) __reentrant
{
uart_wait_txfree(1);
uart_txpoke(0, v);
uart_txadvance(1);
}

@ -1,6 +0,0 @@
#include "ax8052.h"
#include "libmfuart1.h"
UART1_DEFINE_TXBUFFER(64)

@ -1,335 +0,0 @@
#include "wrnum.h"
#include "libmfuart1.h"
#define uart_tx(x) do { uart1_tx(x); } while (0)
#define _uart_tx _uart1_tx
#define uart_writehex16 uart1_writehex16
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 5;
mov r3,#5
; if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,dph
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 4)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-5
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = val >> (4 * (cnt - 1));
mov a,r3
dec a
clr c
rrc a
jnz 00032$
mov a,dpl
sjmp 00031$
00032$: dec a
jnz 00033$
mov a,dph
sjmp 00031$
00033$: clr a
00031$: jnc 00036$
swap a
00036$:
; d &= 0x0F;
anl a,#0x0F
; if (d >= 10) {
; if (flags & WRNUM_LCHEX)
; d += 'a' - '9' - 1;
; else
; d += 'A' - '9' - 1;
; }
add a,#-10
jc 00051$
add a,#10
sjmp 00050$
00051$: add a,#17
jnb WRNUM_BIT_LCHEX,00050$
add a,#32
00050$: mov r4,a
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
;mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
__reentrantb uint8_t uart_writehex16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 4;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,353 +0,0 @@
#include "wrnum.h"
#include "libmfuart1.h"
#define uart_tx(x) do { uart1_tx(x); } while (0)
#define _uart_tx _uart1_tx
#define uart_writehex32 uart1_writehex32
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
mov r6,a
mov r7,b
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 10;
mov r3,#10
; if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,r6
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
clr a
subb a,r7
mov r7,a
clr a
subb a,r6
mov r6,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
orl a,r7
orl a,r6
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 4)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-5
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = val >> (4 * (cnt - 1));
mov a,r3
dec a
clr c
rrc a
jnz 00032$
mov a,dpl
sjmp 00031$
00032$: dec a
jnz 00033$
mov a,dph
sjmp 00031$
00033$: dec a
jnz 00034$
mov a,r7
sjmp 00031$
00034$: dec a
jnz 00035$
mov a,r6
sjmp 00031$
00035$: clr a
00031$: jnc 00036$
swap a
00036$:
; d &= 0x0F;
anl a,#0x0F
; if (d >= 10) {
; if (flags & WRNUM_LCHEX)
; d += 'a' - '9' - 1;
; else
; d += 'A' - '9' - 1;
; }
add a,#-10
jc 00051$
add a,#10
sjmp 00050$
00051$: add a,#17
jnb WRNUM_BIT_LCHEX,00050$
add a,#32
00050$: mov r4,a
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
;mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-5
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
uint8_t uart_writehex32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 8;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 4)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = val >> (4 * (cnt - 1));
d &= 0x0F;
if (d >= 10) {
if (flags & WRNUM_LCHEX)
d += 'a' - '9' - 1;
else
d += 'A' - '9' - 1;
}
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 5)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,30 +0,0 @@
#include "libmfuart1.h"
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
__reentrantb void uart_writehexu16(uint16_t val, uint8_t nrdig) __reentrant
{
uint8_t nrdig1 = nrdig;
uint8_t digit = nrdig1;
uart_wait_txfree(nrdig);
while (digit) {
--digit;
uart_txpokehex(digit, val);
val >>= 4;
}
uart_txadvance(nrdig1);
}

@ -1,30 +0,0 @@
#include "libmfuart1.h"
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
void uart_writehexu32(uint32_t val, uint8_t nrdig)
{
uint8_t __autodata nrdig1 = nrdig;
uint8_t __autodata digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
--digit;
uart_txpokehex(digit, val);
val >>= 4;
}
uart_txadvance(nrdig1);
}

@ -1,305 +0,0 @@
#include "wrnum.h"
#include "libmfuart1.h"
#define uart_tx(x) do { uart1_tx(x); } while (0)
#define _uart_tx _uart1_tx
#define uart_writenum16 uart1_writenum16
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 5;
mov r3,#5
; if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,dph
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 3)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00020$
mov a,r2
add a,#-4
jnc 00020$
dec r2
00020$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = cnt;
mov a,r3
mov r4,a
; val = libmf_num16_digit(val, (uint8_t __auto *)&d);
mov a,#ar4
push acc
lcall _libmf_num16_digit
dec sp
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
mov a,r4
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jnz 00038$
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jnz 00038$
; uart_tx('\'');
push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
__reentrantb uint8_t uart_writenum16(uint16_t val, uint8_t nrdig1, uint8_t flags1) __reentrant
{
char ch = 0;
uint8_t d;
uint8_t cnt = 5;
uint8_t flags = flags1;
uint8_t nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && (int16_t)val < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num16_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,345 +0,0 @@
#include "wrnum.h"
#include "libmfuart1.h"
#define uart_tx(x) do { uart1_tx(x); } while (0)
#define _uart_tx _uart1_tx
#define uart_writenum32 uart1_writenum32
#if defined(SDCC) && UART != 3
#define WRNUM_BIT_SIGNED _B_0
#define WRNUM_BIT_PLUS _B_1
#define WRNUM_BIT_ZEROPLUS _B_2
#define WRNUM_BIT_PADZERO _B_3
#define WRNUM_BIT_TSDSEP _B_4
#define WRNUM_BIT_LCHEX _B_5
#define WRNUM_BIT_DIGSET _B_6
#define WRNUM_BIT_DIGCONT _B_7
#define ASCII_PLUS 0x2b
#define ASCII_MINUS 0x2d
#define ASCII_SPACE 0x20
#define ASCII_0 0x30
#define ASCII_APOSTROPHE 0x27
__reentrantb uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1) __reentrant __naked
{
val;
nrdig1;
flags1;
__asm;
ar7 = 0x07
ar6 = 0x06
ar5 = 0x05
ar4 = 0x04
ar3 = 0x03
ar2 = 0x02
ar1 = 0x01
ar0 = 0x00
mov r6,a
mov r7,b
; uint8_t flags = flags1;
mov a,sp
add a,#-3
mov r0,a
mov a,@r0
inc r0
anl a,#WRNUM_MASK
mov b,a
; uint8_t nrdig = nrdig1;
mov a,@r0
mov r2,a
; char ch = 0
mov r0,#0
; uint8_t d;
; --> r4
; uint8_t cnt = 10;
mov r3,#10
; if ((flags & WRNUM_SIGNED) && (int32_t)val < 0) {
; val = -val;
; ch = '-';
; } else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
; ch = '+';
; }
jnb WRNUM_BIT_SIGNED,00011$
mov a,r6
jnb acc.7,00011$
clr c
clr a
subb a,dpl
mov dpl,a
clr a
subb a,dph
mov dph,a
clr a
subb a,r7
mov r7,a
clr a
subb a,r6
mov r6,a
mov r0,#ASCII_MINUS
sjmp 00010$
00011$: jb WRNUM_BIT_ZEROPLUS,00012$
jnb WRNUM_BIT_PLUS,00010$
mov a,dph
orl a,dpl
orl a,r7
orl a,r6
jz 00010$
00012$: mov r0,#ASCII_PLUS
00010$:
; if (ch && nrdig > 0)
; --nrdig;
mov a,r0
jz 00018$
mov a,r2
jz 00018$
dec a
mov r2,a
00018$:
; if (flags & WRNUM_TSDSEP) {
; if (nrdig > 9)
; --nrdig;
; if (nrdig > 6)
; --nrdig;
; if (nrdig > 3)
; --nrdig;
; }
jnb WRNUM_BIT_TSDSEP,00022$
mov a,r2
add a,#-10
jnc 00020$
dec r2
00020$: mov a,r2
add a,#-7
jnc 00021$
dec r2
00021$: mov a,r2
add a,#-4
jnc 00022$
dec r2
00022$:
; flags &= WRNUM_MASK;
; if (cnt < nrdig)
; cnt = nrdig;
clr c
mov a,r3
subb a,r2
jnc 00028$
mov a,r2
mov r3,a
00028$:
; do {
00030$:
; d = cnt;
push ar3
; val = libmf_num32_digit(val, (uint8_t __auto *)&d);
mov a,sp
push b
push acc
mov b,r7
mov a,r6
lcall _libmf_num32_digit
mov r6,a
mov r7,b
dec sp
pop b
pop acc
; if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
mov r4,a
jnz 00040$
mov a,r3
dec a
jz 00040$
jb WRNUM_BIT_DIGCONT,00040$
; if (cnt > nrdig)
; continue;
mov a,r2
clr c
subb a,r3
jc 00038$
; if (!(flags & WRNUM_PADZERO)) {
jb WRNUM_BIT_PADZERO,00040$
; if (!(flags & WRNUM_DIGSET)) {
jb WRNUM_BIT_DIGSET,00041$
; nrdig = cnt;
mov a,r3
mov r2,a
; flags |= WRNUM_DIGSET;
setb WRNUM_BIT_DIGSET
; }
00041$:
; uart_tx(' ');
push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jz 00042$
add a,#-3
jz 00042$
add a,#-3
jnz 00038$
; uart_tx(' ');
00042$: push b
push dpl
push dph
mov dpl,#ASCII_SPACE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; continue;
;sjmp 00038$
; }
; }
; } while (--cnt);
00038$: djnz r3,00030$
; return nrdig;
mov dpl,r2
ret
00040$:
; if (!(flags & WRNUM_DIGCONT)) {
jb WRNUM_BIT_DIGCONT,00048$
; if (!(flags & WRNUM_DIGSET))
jb WRNUM_BIT_DIGSET,00049$
; nrdig = cnt;
mov a,r3
mov r2,a
00049$:
; flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
mov a,#WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET
orl b,a
; if (ch) {
mov a,r0
jz 00048$
; uart_tx(ch);
push b
push dpl
push dph
mov dpl,r0
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
; }
00048$:
; uart_tx('0' + d);
push b
push dpl
push dph
mov a,r4
add a,#ASCII_0
mov dpl,a
lcall _uart_tx
pop dph
pop dpl
pop b
; if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
jnb WRNUM_BIT_TSDSEP,00038$
mov a,r3
add a,#-4
jz 00050$
add a,#-3
jz 00050$
add a,#-3
jnz 00038$
; uart_tx('\'');
00050$: push b
push dpl
push dph
mov dpl,#ASCII_APOSTROPHE
lcall _uart_tx
pop dph
pop dpl
pop b
; ++nrdig;
inc r2
; }
sjmp 00038$
__endasm;
}
#else
uint8_t uart_writenum32(uint32_t val, uint8_t nrdig1, uint8_t flags1)
{
char __autodata ch = 0;
uint8_t __autodata d;
uint8_t __autodata cnt = 10;
uint8_t __autodata flags = flags1;
uint8_t __autodata nrdig = nrdig1;
if ((flags & WRNUM_SIGNED) && ((int32_t)val) < 0) {
val = -val;
ch = '-';
} else if ((flags & WRNUM_ZEROPLUS) || ((flags & WRNUM_PLUS) && val)) {
ch = '+';
}
if (ch && nrdig > 0)
--nrdig;
if (flags & WRNUM_TSDSEP) {
if (nrdig > 9)
--nrdig;
if (nrdig > 6)
--nrdig;
if (nrdig > 3)
--nrdig;
}
flags &= WRNUM_MASK;
if (cnt < nrdig)
cnt = nrdig;
do {
d = cnt;
val = libmf_num32_digit(val, (uint8_t __auto *)&d);
if (!d && cnt != 1 && !(flags & WRNUM_DIGCONT)) {
if (cnt > nrdig)
continue;
if (!(flags & WRNUM_PADZERO)) {
if (!(flags & WRNUM_DIGSET)) {
nrdig = cnt;
flags |= WRNUM_DIGSET;
}
uart_tx(' ');
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx(' ');
++nrdig;
}
continue;
}
}
if (!(flags & WRNUM_DIGCONT)) {
if (!(flags & WRNUM_DIGSET))
nrdig = cnt;
flags |= WRNUM_PADZERO | WRNUM_DIGCONT | WRNUM_DIGSET;
if (ch) {
uart_tx(ch);
++nrdig;
}
}
uart_tx('0' + d);
if ((flags & WRNUM_TSDSEP) && (cnt == 4 || cnt == 7 || cnt == 10)) {
uart_tx('\'');
++nrdig;
}
} while (--cnt);
return nrdig;
}
#endif

@ -1,135 +0,0 @@
#include "libmfuart1.h"
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txfree uart1_wait_txfree
#define _uart_wait_txfree _uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_txbufptr uart1_txbufptr
#define _uart_txbufptr _uart1_txbufptr
#define uart_txfreelinear uart1_txfreelinear
#define _uart_txfreelinear _uart1_txfreelinear
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define _uart_txadvance _uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
#if defined(SDCC)
__reentrantb void uart_writestr(const char __generic *ch) __reentrant
{
ch;
__asm;
mov r0,dpl
mov r7,dph
clr a
mov r3,a
mov r2,a
00000$: jb _B_7,00010$ ; >0x80 code
jnb _B_6,00011$ ; <0x40 far
jb _B_5,00012$ ; >0x60 pdata
;; idata
mov a,@r0
inc r0
sjmp 00013$
00010$: ;; code
mov dpl,r0
mov dph,r7
clr a
movc a,@a+dptr
inc dptr
mov r0,dpl
mov r7,dph
sjmp 00013$
00011$: ;; xdata
mov dpl,r0
mov dph,r7
movx a,@dptr
inc dptr
mov r0,dpl
mov r7,dph
sjmp 00013$
00012$: ;; pdata
movx a,@r0
inc r0
00013$: jz 00001$
mov r1,a
mov a,r3
jnz 00002$
mov a,r2
jz 00003$
mov dpl,a
lcall _uart_txadvance
00003$: lcall _uart_txfreelinear
mov a,dpl
jnz 00004$
mov r4,b
mov dpl,#1
lcall _uart_wait_txfree
mov b,r4
lcall _uart_txfreelinear
mov a,dpl
00004$: mov r3,a
clr a
mov r2,a
mov dpl,a
lcall _uart_txbufptr
mov r4,dpl
mov r5,dph
00002$: mov dpl,r4
mov dph,r5
mov a,r1
movx @dptr,a
inc dptr
mov r4,dpl
mov r5,dph
inc r2
dec r3
sjmp 00000$
00001$: mov a,r2
jz 00005$
mov dpl,a
lcall _uart_txadvance
00005$:
__endasm;
}
#else
__reentrantb void uart_writestr(const char __generic *ch) __reentrant
{
uint8_t __xdata *p;
uint8_t f = 0;
uint8_t a = 0;
for (;;) {
char c = *ch++;
if (!c)
break;
if (!f) {
if (a)
uart_txadvance(a);
f = uart_txfreelinear();
if (!f) {
uart_wait_txfree(1);
f = uart_txfreelinear();
}
p = uart_txbufptr(0);
a = 0;
}
*p++ = c;
++a;
--f;
}
if (a)
uart_txadvance(a);
}
#endif

@ -1,32 +0,0 @@
#include "libmfuart1.h"
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
__reentrantb void uart_writeu16(uint16_t val, uint8_t nrdig) __reentrant
{
uint8_t nrdig1 = nrdig;
uint8_t digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
uint8_t v1 = val;
val /= 10;
v1 -= 10 * (uint8_t)val;
--digit;
uart_txpoke(digit, '0' + v1);
}
uart_txadvance(nrdig1);
}

@ -1,32 +0,0 @@
#include "libmfuart1.h"
#define uart_txfree uart1_txfree
#define uart_rxcount uart1_rxcount
#define uart_wait_txfree uart1_wait_txfree
#define uart_wait_rxcount uart1_wait_rxcount
#define uart_rxpeek uart1_rxpeek
#define uart_txpokehex uart1_txpokehex
#define uart_txpoke uart1_txpoke
#define uart_rxadvance uart1_rxadvance
#define uart_txadvance uart1_txadvance
#define uart_rx uart1_rx
#define uart_tx uart1_tx
#define uart_writestr uart1_writestr
#define uart_writehexu16 uart1_writehexu16
#define uart_writehexu32 uart1_writehexu32
#define uart_writeu16 uart1_writeu16
#define uart_writeu32 uart1_writeu32
void uart_writeu32(uint32_t val, uint8_t nrdig)
{
uint8_t __autodata nrdig1 = nrdig;
uint8_t __autodata digit = nrdig1;
uart_wait_txfree(nrdig1);
while (digit) {
uint8_t __autodata v1 = val;
val /= 10;
v1 -= 10 * (uint8_t)val;
--digit;
uart_txpoke(digit, '0' + v1);
}
uart_txadvance(nrdig1);
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save

Powered by TurnKey Linux.