From 6034c43125e2e9d0337c7f3bfef5f39c0d3ba4f6 Mon Sep 17 00:00:00 2001 From: Brett Gordon Date: Fri, 12 Jan 2018 00:21:33 -0500 Subject: [PATCH] util: 6809 bogomips --- Applications/util/Makefile.6809 | 1 + Applications/util/bogomips.c | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/Applications/util/Makefile.6809 b/Applications/util/Makefile.6809 index 4620d2ae..4b3c1581 100644 --- a/Applications/util/Makefile.6809 +++ b/Applications/util/Makefile.6809 @@ -58,6 +58,7 @@ SRCSNS = \ SRCS = \ banner.c \ bd.c \ + bogomips.c \ cal.c \ cksum.c \ cut.c \ diff --git a/Applications/util/bogomips.c b/Applications/util/bogomips.c index a7440d03..527bc759 100644 --- a/Applications/util/bogomips.c +++ b/Applications/util/bogomips.c @@ -3,7 +3,24 @@ #include #include -#ifdef __SDCC_z80 +#if defined(__m6809__) && defined(__GNUC__) + +__attribute__((naked)) +void delay(unsigned long r) +{ + asm( + " ldd 4,s \n" + " ldx 2,s \n" + "a@ addd #-1 \n" + " bne a@ \n" + " leax ,x \n" + " beq b@ \n" + " leax -1,x \n" + " bra a@ \n" + "b@ rts \n" + ); +} +#elif defined(__SDCC_z80) void delay(unsigned long r) { __asm -- 2.34.1