diff options
author | Andrzej Telszewski <andrzej@telszewski.com> | 2024-04-26 00:39:50 +0200 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2024-04-26 06:06:23 +0700 |
commit | 5e840e1d30c4058f002c439eb0dc725c568f854f (patch) | |
tree | aed673ca608261756130dd93e837fc9c28f0282f /misc | |
parent | 8806867c9bdac7b4964c49cccbdebb360787e8a5 (diff) |
misc/sigrok-firmware-fx2lafw: Fix building with SDCC >= 4.2.3
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'misc')
7 files changed, 1708 insertions, 12 deletions
diff --git a/misc/sigrok-firmware-fx2lafw/patches/00-fx2lafw__silence_integer_overflow_compile_warnings.patch b/misc/sigrok-firmware-fx2lafw/patches/00-fx2lafw__silence_integer_overflow_compile_warnings.patch new file mode 100644 index 000000000000..57143d0f91ea --- /dev/null +++ b/misc/sigrok-firmware-fx2lafw/patches/00-fx2lafw__silence_integer_overflow_compile_warnings.patch @@ -0,0 +1,26 @@ +From: Gerhard Sittig <redacted> +Date: Mon, 22 Feb 2021 19:17:02 +0000 (+0100) +Subject: fx2lafw: silence integer overflow compile warnings +X-Git-Url: http://sigrok.org/gitweb/?p=sigrok-firmware-fx2lafw.git;a=commitdiff_plain;h=61f1c8fc33ce959f167f6bcb5ba3b0959d60b038 + +fx2lafw: silence integer overflow compile warnings + +Explicitly mark literals for control bitfield values as unsigned, to +avoid compiler warnings when the MSB gets set in assignments to a byte. +This kind of follows up to commit f6ef2ff72979 after commit b283ba837a11 +re-introduced the warning. +--- + +diff --git a/gpif-acquisition.c b/gpif-acquisition.c +index 96476ccc..c6ba52a0 100644 +--- a/gpif-acquisition.c ++++ b/gpif-acquisition.c +@@ -161,7 +161,7 @@ static void gpif_make_data_dp_state(volatile BYTE *pSTATE) + * BRANCH + * Branch to IDLE if condition is true, back to S0 otherwise. + */ +- pSTATE[0] = (1 << 7) | (7 << 3) | (0 << 0); ++ pSTATE[0] = (1u << 7) | (7u << 3) | (0u << 0); + + /* + * OPCODE diff --git a/misc/sigrok-firmware-fx2lafw/patches/01-fx2lib__Update___interrupt_syntax_for_sdcc_4.2.3.patch b/misc/sigrok-firmware-fx2lafw/patches/01-fx2lib__Update___interrupt_syntax_for_sdcc_4.2.3.patch new file mode 100644 index 000000000000..72387ac5d796 --- /dev/null +++ b/misc/sigrok-firmware-fx2lafw/patches/01-fx2lib__Update___interrupt_syntax_for_sdcc_4.2.3.patch @@ -0,0 +1,575 @@ +From: Matthew Cengia <redacted> +Date: Tue, 15 Aug 2023 00:38:34 +0000 (+1000) +Subject: fx2lib: Update __interrupt syntax for sdcc>=4.2.3 +X-Git-Url: http://sigrok.org/gitweb/?p=sigrok-firmware-fx2lafw.git;a=commitdiff_plain;h=5aab87d358a4585a10ad89277bb88ad139077abd + +fx2lib: Update __interrupt syntax for sdcc>=4.2.3 + +The SDCC user manual https://sdcc.sourceforge.net/doc/sdccman.pdf +section 1.5 "Compatibility with previous versions" on page 11 states: + +> In 4.2.3, support for non-parenthesized arguments to __using and +> __interrupt was dropped. + +Adjust the imported fx2lib source files to unbreak compilation with +more recent SDCC versions. +--- + +diff --git a/fx2lib/include/autovector.h b/fx2lib/include/autovector.h +index 495a3126..38f80fcd 100644 +--- a/fx2lib/include/autovector.h ++++ b/fx2lib/include/autovector.h +@@ -172,49 +172,49 @@ typedef enum { + // you must include the predef of these in the file with your main + // so lets just define them here + +-void sudav_isr() __interrupt SUDAV_ISR; +-void sof_isr() __interrupt SOF_ISR; +-void sutok_isr() __interrupt SUTOK_ISR; +-void suspend_isr() __interrupt SUSPEND_ISR; +-void usbreset_isr() __interrupt USBRESET_ISR; +-void hispeed_isr() __interrupt HISPEED_ISR; +-void ep0ack_isr() __interrupt EP0ACK_ISR; +-void ep0in_isr() __interrupt EP0IN_ISR; +-void ep0out_isr() __interrupt EP0OUT_ISR; +-void ep1in_isr() __interrupt EP1IN_ISR; +-void ep1out_isr() __interrupt EP1OUT_ISR; +-void ep2_isr() __interrupt EP2_ISR; +-void ep4_isr() __interrupt EP4_ISR; +-void ep6_isr() __interrupt EP6_ISR; +-void ep8_isr() __interrupt EP8_ISR; +-void ibn_isr() __interrupt IBN_ISR; +-void ep0ping_isr() __interrupt EP0PING_ISR; +-void ep1ping_isr() __interrupt EP1PING_ISR; +-void ep2ping_isr() __interrupt EP2PING_ISR; +-void ep4ping_isr() __interrupt EP4PING_ISR; +-void ep6ping_isr() __interrupt EP6PING_ISR; +-void ep8ping_isr() __interrupt EP8PING_ISR; +-void errlimit_isr() __interrupt ERRLIMIT_ISR; +-void ep2isoerr_isr() __interrupt EP2ISOERR_ISR; +-void ep4isoerr_isr() __interrupt EP4ISOERR_ISR; +-void ep6isoerr_isr() __interrupt EP6ISOERR_ISR; +-void ep8isoerr_isr() __interrupt EP8ISOERR_ISR; +-void spare_isr() __interrupt RESERVED_ISR; // not used ++void sudav_isr() __interrupt(SUDAV_ISR); ++void sof_isr() __interrupt(SOF_ISR); ++void sutok_isr() __interrupt(SUTOK_ISR); ++void suspend_isr() __interrupt(SUSPEND_ISR); ++void usbreset_isr() __interrupt(USBRESET_ISR); ++void hispeed_isr() __interrupt(HISPEED_ISR); ++void ep0ack_isr() __interrupt(EP0ACK_ISR); ++void ep0in_isr() __interrupt(EP0IN_ISR); ++void ep0out_isr() __interrupt(EP0OUT_ISR); ++void ep1in_isr() __interrupt(EP1IN_ISR); ++void ep1out_isr() __interrupt(EP1OUT_ISR); ++void ep2_isr() __interrupt(EP2_ISR); ++void ep4_isr() __interrupt(EP4_ISR); ++void ep6_isr() __interrupt(EP6_ISR); ++void ep8_isr() __interrupt(EP8_ISR); ++void ibn_isr() __interrupt(IBN_ISR); ++void ep0ping_isr() __interrupt(EP0PING_ISR); ++void ep1ping_isr() __interrupt(EP1PING_ISR); ++void ep2ping_isr() __interrupt(EP2PING_ISR); ++void ep4ping_isr() __interrupt(EP4PING_ISR); ++void ep6ping_isr() __interrupt(EP6PING_ISR); ++void ep8ping_isr() __interrupt(EP8PING_ISR); ++void errlimit_isr() __interrupt(ERRLIMIT_ISR); ++void ep2isoerr_isr() __interrupt(EP2ISOERR_ISR); ++void ep4isoerr_isr() __interrupt(EP4ISOERR_ISR); ++void ep6isoerr_isr() __interrupt(EP6ISOERR_ISR); ++void ep8isoerr_isr() __interrupt(EP8ISOERR_ISR); ++void spare_isr() __interrupt(RESERVED_ISR); // not used + // gpif ints +-void ep2pf_isr() __interrupt EP2PF_ISR; +-void ep4pf_isr() __interrupt EP4PF_ISR; +-void ep6pf_isr() __interrupt EP6PF_ISR; +-void ep8pf_isr() __interrupt EP8PF_ISR; +-void ep2ef_isr() __interrupt EP2EF_ISR; +-void ep4ef_isr() __interrupt EP4EF_ISR; +-void ep6ef_isr() __interrupt EP6EF_ISR; +-void ep8ef_isr() __interrupt EP8EF_ISR; +-void ep2ff_isr() __interrupt EP2FF_ISR; +-void ep4ff_isr() __interrupt EP4FF_ISR; +-void ep6ff_isr() __interrupt EP6FF_ISR; +-void ep8ff_isr() __interrupt EP8FF_ISR; +-void gpifdone_isr() __interrupt GPIFDONE_ISR; +-void gpifwf_isr() __interrupt GPIFWF_ISR; ++void ep2pf_isr() __interrupt(EP2PF_ISR); ++void ep4pf_isr() __interrupt(EP4PF_ISR); ++void ep6pf_isr() __interrupt(EP6PF_ISR); ++void ep8pf_isr() __interrupt(EP8PF_ISR); ++void ep2ef_isr() __interrupt(EP2EF_ISR); ++void ep4ef_isr() __interrupt(EP4EF_ISR); ++void ep6ef_isr() __interrupt(EP6EF_ISR); ++void ep8ef_isr() __interrupt(EP8EF_ISR); ++void ep2ff_isr() __interrupt(EP2FF_ISR); ++void ep4ff_isr() __interrupt(EP4FF_ISR); ++void ep6ff_isr() __interrupt(EP6FF_ISR); ++void ep8ff_isr() __interrupt(EP8FF_ISR); ++void gpifdone_isr() __interrupt(GPIFDONE_ISR); ++void gpifwf_isr() __interrupt(GPIFWF_ISR); + + #endif + +diff --git a/fx2lib/lib/interrupts/ep0ack_isr.c b/fx2lib/lib/interrupts/ep0ack_isr.c +index dec4e56a..d216717d 100644 +--- a/fx2lib/lib/interrupts/ep0ack_isr.c ++++ b/fx2lib/lib/interrupts/ep0ack_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0ack_isr() __interrupt EP0ACK_ISR {} ++void ep0ack_isr() __interrupt(EP0ACK_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep0in_isr.c b/fx2lib/lib/interrupts/ep0in_isr.c +index 2fa99a42..f3d8990e 100644 +--- a/fx2lib/lib/interrupts/ep0in_isr.c ++++ b/fx2lib/lib/interrupts/ep0in_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0in_isr() __interrupt EP0IN_ISR {} ++void ep0in_isr() __interrupt(EP0IN_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep0out_isr.c b/fx2lib/lib/interrupts/ep0out_isr.c +index 043ae70d..a5acedb7 100644 +--- a/fx2lib/lib/interrupts/ep0out_isr.c ++++ b/fx2lib/lib/interrupts/ep0out_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0out_isr() __interrupt EP0OUT_ISR {} ++void ep0out_isr() __interrupt(EP0OUT_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep0ping_isr.c b/fx2lib/lib/interrupts/ep0ping_isr.c +index 3062d177..7b1ee929 100644 +--- a/fx2lib/lib/interrupts/ep0ping_isr.c ++++ b/fx2lib/lib/interrupts/ep0ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0ping_isr() __interrupt EP0PING_ISR {} ++void ep0ping_isr() __interrupt(EP0PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep1in_isr.c b/fx2lib/lib/interrupts/ep1in_isr.c +index d4ecf06f..b666fcb3 100644 +--- a/fx2lib/lib/interrupts/ep1in_isr.c ++++ b/fx2lib/lib/interrupts/ep1in_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep1in_isr() __interrupt EP1IN_ISR {} ++void ep1in_isr() __interrupt(EP1IN_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep1out_isr.c b/fx2lib/lib/interrupts/ep1out_isr.c +index 998b7aa8..6c87dc20 100644 +--- a/fx2lib/lib/interrupts/ep1out_isr.c ++++ b/fx2lib/lib/interrupts/ep1out_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep1out_isr() __interrupt EP1OUT_ISR {} ++void ep1out_isr() __interrupt(EP1OUT_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep1ping_isr.c b/fx2lib/lib/interrupts/ep1ping_isr.c +index ff8990e0..c32d437c 100644 +--- a/fx2lib/lib/interrupts/ep1ping_isr.c ++++ b/fx2lib/lib/interrupts/ep1ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep1ping_isr() __interrupt EP1PING_ISR {} ++void ep1ping_isr() __interrupt(EP1PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep2_isr.c b/fx2lib/lib/interrupts/ep2_isr.c +index 43a31b7d..4de637a3 100644 +--- a/fx2lib/lib/interrupts/ep2_isr.c ++++ b/fx2lib/lib/interrupts/ep2_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2_isr() __interrupt EP2_ISR {} ++void ep2_isr() __interrupt(EP2_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep2ef_isr.c b/fx2lib/lib/interrupts/ep2ef_isr.c +index e26c5e8a..46f3f87a 100644 +--- a/fx2lib/lib/interrupts/ep2ef_isr.c ++++ b/fx2lib/lib/interrupts/ep2ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2ef_isr() __interrupt EP2EF_ISR{} ++void ep2ef_isr() __interrupt(EP2EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep2ff_isr.c b/fx2lib/lib/interrupts/ep2ff_isr.c +index 22bb95d7..400e4803 100644 +--- a/fx2lib/lib/interrupts/ep2ff_isr.c ++++ b/fx2lib/lib/interrupts/ep2ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2ff_isr() __interrupt EP2FF_ISR{} ++void ep2ff_isr() __interrupt(EP2FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep2isoerr_isr.c b/fx2lib/lib/interrupts/ep2isoerr_isr.c +index b9dc9b50..d0ca4a89 100644 +--- a/fx2lib/lib/interrupts/ep2isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep2isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2isoerr_isr() __interrupt EP2ISOERR_ISR {} ++void ep2isoerr_isr() __interrupt(EP2ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep2pf_isr.c b/fx2lib/lib/interrupts/ep2pf_isr.c +index 7cad068e..9bd8e9aa 100644 +--- a/fx2lib/lib/interrupts/ep2pf_isr.c ++++ b/fx2lib/lib/interrupts/ep2pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2pf_isr() __interrupt EP2PF_ISR{} ++void ep2pf_isr() __interrupt(EP2PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep2ping_isr.c b/fx2lib/lib/interrupts/ep2ping_isr.c +index 78affed5..dad1e953 100644 +--- a/fx2lib/lib/interrupts/ep2ping_isr.c ++++ b/fx2lib/lib/interrupts/ep2ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2ping_isr() __interrupt EP2PING_ISR {} ++void ep2ping_isr() __interrupt(EP2PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep4_isr.c b/fx2lib/lib/interrupts/ep4_isr.c +index 0315c853..5affac9a 100644 +--- a/fx2lib/lib/interrupts/ep4_isr.c ++++ b/fx2lib/lib/interrupts/ep4_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4_isr() __interrupt EP4_ISR {} ++void ep4_isr() __interrupt(EP4_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep4ef_isr.c b/fx2lib/lib/interrupts/ep4ef_isr.c +index a203e7ba..4a0cff1a 100644 +--- a/fx2lib/lib/interrupts/ep4ef_isr.c ++++ b/fx2lib/lib/interrupts/ep4ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4ef_isr() __interrupt EP4EF_ISR{} ++void ep4ef_isr() __interrupt(EP4EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep4ff_isr.c b/fx2lib/lib/interrupts/ep4ff_isr.c +index e0cd201b..3278da2d 100644 +--- a/fx2lib/lib/interrupts/ep4ff_isr.c ++++ b/fx2lib/lib/interrupts/ep4ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4ff_isr() __interrupt EP4FF_ISR{} ++void ep4ff_isr() __interrupt(EP4FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep4isoerr_isr.c b/fx2lib/lib/interrupts/ep4isoerr_isr.c +index 579fb8bf..dcd7ff90 100644 +--- a/fx2lib/lib/interrupts/ep4isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep4isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4isoerr_isr() __interrupt EP4ISOERR_ISR {} ++void ep4isoerr_isr() __interrupt(EP4ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep4pf_isr.c b/fx2lib/lib/interrupts/ep4pf_isr.c +index ec5ce725..7bbe9f02 100644 +--- a/fx2lib/lib/interrupts/ep4pf_isr.c ++++ b/fx2lib/lib/interrupts/ep4pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4pf_isr() __interrupt EP4PF_ISR{} ++void ep4pf_isr() __interrupt(EP4PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep4ping_isr.c b/fx2lib/lib/interrupts/ep4ping_isr.c +index 18bac000..8d226856 100644 +--- a/fx2lib/lib/interrupts/ep4ping_isr.c ++++ b/fx2lib/lib/interrupts/ep4ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4ping_isr() __interrupt EP4PING_ISR {} ++void ep4ping_isr() __interrupt(EP4PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep6_isr.c b/fx2lib/lib/interrupts/ep6_isr.c +index 552e60de..630f9b26 100644 +--- a/fx2lib/lib/interrupts/ep6_isr.c ++++ b/fx2lib/lib/interrupts/ep6_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6_isr() __interrupt EP6_ISR {} ++void ep6_isr() __interrupt(EP6_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep6ef_isr.c b/fx2lib/lib/interrupts/ep6ef_isr.c +index 39e8e0c5..e9ba6d54 100644 +--- a/fx2lib/lib/interrupts/ep6ef_isr.c ++++ b/fx2lib/lib/interrupts/ep6ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6ef_isr() __interrupt EP6EF_ISR{} ++void ep6ef_isr() __interrupt(EP6EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep6ff_isr.c b/fx2lib/lib/interrupts/ep6ff_isr.c +index 54137316..011fe871 100644 +--- a/fx2lib/lib/interrupts/ep6ff_isr.c ++++ b/fx2lib/lib/interrupts/ep6ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6ff_isr() __interrupt EP6FF_ISR{} ++void ep6ff_isr() __interrupt(EP6FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep6isoerr_isr.c b/fx2lib/lib/interrupts/ep6isoerr_isr.c +index 407414c7..8c005777 100644 +--- a/fx2lib/lib/interrupts/ep6isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep6isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6isoerr_isr() __interrupt EP6ISOERR_ISR {} ++void ep6isoerr_isr() __interrupt(EP6ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep6pf_isr.c b/fx2lib/lib/interrupts/ep6pf_isr.c +index 808f7513..52f6d738 100644 +--- a/fx2lib/lib/interrupts/ep6pf_isr.c ++++ b/fx2lib/lib/interrupts/ep6pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6pf_isr() __interrupt EP6PF_ISR{} ++void ep6pf_isr() __interrupt(EP6PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep6ping_isr.c b/fx2lib/lib/interrupts/ep6ping_isr.c +index 53f8ba52..5430f209 100644 +--- a/fx2lib/lib/interrupts/ep6ping_isr.c ++++ b/fx2lib/lib/interrupts/ep6ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6ping_isr() __interrupt EP6PING_ISR {} ++void ep6ping_isr() __interrupt(EP6PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep8_isr.c b/fx2lib/lib/interrupts/ep8_isr.c +index 4f1dd51d..d415a3ec 100644 +--- a/fx2lib/lib/interrupts/ep8_isr.c ++++ b/fx2lib/lib/interrupts/ep8_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8_isr() __interrupt EP8_ISR {} ++void ep8_isr() __interrupt(EP8_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep8ef_isr.c b/fx2lib/lib/interrupts/ep8ef_isr.c +index c018f3ac..d04d2376 100644 +--- a/fx2lib/lib/interrupts/ep8ef_isr.c ++++ b/fx2lib/lib/interrupts/ep8ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8ef_isr() __interrupt EP8EF_ISR{} ++void ep8ef_isr() __interrupt(EP8EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep8ff_isr.c b/fx2lib/lib/interrupts/ep8ff_isr.c +index a6169de3..d1e5fcd7 100644 +--- a/fx2lib/lib/interrupts/ep8ff_isr.c ++++ b/fx2lib/lib/interrupts/ep8ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8ff_isr() __interrupt EP8FF_ISR{} ++void ep8ff_isr() __interrupt(EP8FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep8isoerr_isr.c b/fx2lib/lib/interrupts/ep8isoerr_isr.c +index a95bae9a..a7e8e0f9 100644 +--- a/fx2lib/lib/interrupts/ep8isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep8isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8isoerr_isr() __interrupt EP8ISOERR_ISR {} ++void ep8isoerr_isr() __interrupt(EP8ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep8pf_isr.c b/fx2lib/lib/interrupts/ep8pf_isr.c +index b0e687c6..53dcdf27 100644 +--- a/fx2lib/lib/interrupts/ep8pf_isr.c ++++ b/fx2lib/lib/interrupts/ep8pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8pf_isr() __interrupt EP8PF_ISR{} ++void ep8pf_isr() __interrupt(EP8PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep8ping_isr.c b/fx2lib/lib/interrupts/ep8ping_isr.c +index e9c25d9e..5cf05dc7 100644 +--- a/fx2lib/lib/interrupts/ep8ping_isr.c ++++ b/fx2lib/lib/interrupts/ep8ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8ping_isr() __interrupt EP8PING_ISR {} ++void ep8ping_isr() __interrupt(EP8PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/errlimit_isr.c b/fx2lib/lib/interrupts/errlimit_isr.c +index fe103c22..cf4e1f61 100644 +--- a/fx2lib/lib/interrupts/errlimit_isr.c ++++ b/fx2lib/lib/interrupts/errlimit_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void errlimit_isr() __interrupt ERRLIMIT_ISR {} ++void errlimit_isr() __interrupt(ERRLIMIT_ISR) {} + +diff --git a/fx2lib/lib/interrupts/gpifdone_isr.c b/fx2lib/lib/interrupts/gpifdone_isr.c +index 6bb15c77..ee5ce1f6 100644 +--- a/fx2lib/lib/interrupts/gpifdone_isr.c ++++ b/fx2lib/lib/interrupts/gpifdone_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void gpifdone_isr() __interrupt GPIFDONE_ISR{} ++void gpifdone_isr() __interrupt(GPIFDONE_ISR){} + +diff --git a/fx2lib/lib/interrupts/gpifwf_isr.c b/fx2lib/lib/interrupts/gpifwf_isr.c +index 49eba448..e9941541 100644 +--- a/fx2lib/lib/interrupts/gpifwf_isr.c ++++ b/fx2lib/lib/interrupts/gpifwf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void gpifwf_isr() __interrupt GPIFWF_ISR{} ++void gpifwf_isr() __interrupt(GPIFWF_ISR){} + +diff --git a/fx2lib/lib/interrupts/hispeed_isr.c b/fx2lib/lib/interrupts/hispeed_isr.c +index 7b05916f..9daabc12 100644 +--- a/fx2lib/lib/interrupts/hispeed_isr.c ++++ b/fx2lib/lib/interrupts/hispeed_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void hispeed_isr() __interrupt HISPEED_ISR {} ++void hispeed_isr() __interrupt(HISPEED_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ibn_isr.c b/fx2lib/lib/interrupts/ibn_isr.c +index 0f38871a..aa0a7523 100644 +--- a/fx2lib/lib/interrupts/ibn_isr.c ++++ b/fx2lib/lib/interrupts/ibn_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ibn_isr() __interrupt IBN_ISR {} ++void ibn_isr() __interrupt(IBN_ISR) {} + +diff --git a/fx2lib/lib/interrupts/sof_isr.c b/fx2lib/lib/interrupts/sof_isr.c +index 49bf5081..64a409c4 100644 +--- a/fx2lib/lib/interrupts/sof_isr.c ++++ b/fx2lib/lib/interrupts/sof_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void sof_isr() __interrupt SOF_ISR {} ++void sof_isr() __interrupt(SOF_ISR) {} + +diff --git a/fx2lib/lib/interrupts/spare_isr.c b/fx2lib/lib/interrupts/spare_isr.c +index 965b2818..3b81fd20 100644 +--- a/fx2lib/lib/interrupts/spare_isr.c ++++ b/fx2lib/lib/interrupts/spare_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void spare_isr() __interrupt RESERVED_ISR {} ++void spare_isr() __interrupt(RESERVED_ISR) {} + +diff --git a/fx2lib/lib/interrupts/sudav_isr.c b/fx2lib/lib/interrupts/sudav_isr.c +index 7660e115..4d36b59a 100644 +--- a/fx2lib/lib/interrupts/sudav_isr.c ++++ b/fx2lib/lib/interrupts/sudav_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void sudav_isr() __interrupt SUDAV_ISR {} ++void sudav_isr() __interrupt(SUDAV_ISR) {} + +diff --git a/fx2lib/lib/interrupts/suspend_isr.c b/fx2lib/lib/interrupts/suspend_isr.c +index 4b2f1aa2..cf08b28a 100644 +--- a/fx2lib/lib/interrupts/suspend_isr.c ++++ b/fx2lib/lib/interrupts/suspend_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void suspend_isr() __interrupt SUSPEND_ISR {} ++void suspend_isr() __interrupt(SUSPEND_ISR) {} + +diff --git a/fx2lib/lib/interrupts/sutok_isr.c b/fx2lib/lib/interrupts/sutok_isr.c +index 05330799..8c7368d2 100644 +--- a/fx2lib/lib/interrupts/sutok_isr.c ++++ b/fx2lib/lib/interrupts/sutok_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void sutok_isr() __interrupt SUTOK_ISR {} ++void sutok_isr() __interrupt(SUTOK_ISR) {} + +diff --git a/fx2lib/lib/interrupts/usbreset_isr.c b/fx2lib/lib/interrupts/usbreset_isr.c +index 7f2ed72d..8888eede 100644 +--- a/fx2lib/lib/interrupts/usbreset_isr.c ++++ b/fx2lib/lib/interrupts/usbreset_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void usbreset_isr() __interrupt USBRESET_ISR {} ++void usbreset_isr() __interrupt(USBRESET_ISR) {} + diff --git a/misc/sigrok-firmware-fx2lafw/patches/02-fx2lafw__Update___interrupt_syntax_for_sdcc_4.2.3.patch b/misc/sigrok-firmware-fx2lafw/patches/02-fx2lafw__Update___interrupt_syntax_for_sdcc_4.2.3.patch new file mode 100644 index 000000000000..402ec85b6469 --- /dev/null +++ b/misc/sigrok-firmware-fx2lafw/patches/02-fx2lafw__Update___interrupt_syntax_for_sdcc_4.2.3.patch @@ -0,0 +1,108 @@ +From: Matthew Cengia <redacted> +Date: Tue, 15 Aug 2023 00:39:32 +0000 (+1000) +Subject: fx2lafw: Update __interrupt syntax for sdcc>=4.2.3 +X-Git-Url: http://sigrok.org/gitweb/?p=sigrok-firmware-fx2lafw.git;a=commitdiff_plain;h=3e08500d22f87f69941b65cf8b8c1b85f9b41173 + +fx2lafw: Update __interrupt syntax for sdcc>=4.2.3 + +The SDCC user manual https://sdcc.sourceforge.net/doc/sdccman.pdf +section 1.5 "Compatibility with previous versions" on page 11 states: + +> In 4.2.3, support for non-parenthesized arguments to __using and +> __interrupt was dropped. + +Adjust the sigrok fx2lafw application source to unbreak compilation with +more recent SDCC versions. +--- + +diff --git a/fx2lafw.c b/fx2lafw.c +index 1035713d..42129219 100644 +--- a/fx2lafw.c ++++ b/fx2lafw.c +@@ -191,14 +191,14 @@ BOOL handle_set_configuration(BYTE cfg) + return (cfg == 1) ? TRUE : FALSE; + } + +-void sudav_isr(void) __interrupt SUDAV_ISR ++void sudav_isr(void) __interrupt(SUDAV_ISR) + { + got_sud = TRUE; + CLEAR_SUDAV(); + } + + /* IN BULK NAK - the host started requesting data. */ +-void ibn_isr(void) __interrupt IBN_ISR ++void ibn_isr(void) __interrupt(IBN_ISR) + { + /* + * If the IBN interrupt is not disabled, clearing +@@ -229,19 +229,19 @@ void ibn_isr(void) __interrupt IBN_ISR + SYNCDELAY(); + } + +-void usbreset_isr(void) __interrupt USBRESET_ISR ++void usbreset_isr(void) __interrupt(USBRESET_ISR) + { + handle_hispeed(FALSE); + CLEAR_USBRESET(); + } + +-void hispeed_isr(void) __interrupt HISPEED_ISR ++void hispeed_isr(void) __interrupt(HISPEED_ISR) + { + handle_hispeed(TRUE); + CLEAR_HISPEED(); + } + +-void timer2_isr(void) __interrupt TF2_ISR ++void timer2_isr(void) __interrupt(TF2_ISR) + { + /* Blink LED during acquisition, keep it on otherwise. */ + if (gpif_acquiring == RUNNING) { +diff --git a/include/scope.inc b/include/scope.inc +index 96422f1b..c6990853 100644 +--- a/include/scope.inc ++++ b/include/scope.inc +@@ -43,36 +43,36 @@ static volatile __bit dosuspend = FALSE; + extern __code BYTE highspd_dscr; + extern __code BYTE fullspd_dscr; + +-void resume_isr(void) __interrupt RESUME_ISR ++void resume_isr(void) __interrupt(RESUME_ISR) + { + CLEAR_RESUME(); + } + +-void sudav_isr(void) __interrupt SUDAV_ISR ++void sudav_isr(void) __interrupt(SUDAV_ISR) + { + dosud = TRUE; + CLEAR_SUDAV(); + } + +-void usbreset_isr(void) __interrupt USBRESET_ISR ++void usbreset_isr(void) __interrupt(USBRESET_ISR) + { + handle_hispeed(FALSE); + CLEAR_USBRESET(); + } + +-void hispeed_isr(void) __interrupt HISPEED_ISR ++void hispeed_isr(void) __interrupt(HISPEED_ISR) + { + handle_hispeed(TRUE); + CLEAR_HISPEED(); + } + +-void suspend_isr(void) __interrupt SUSPEND_ISR ++void suspend_isr(void) __interrupt(SUSPEND_ISR) + { + dosuspend = TRUE; + CLEAR_SUSPEND(); + } + +-void timer2_isr(void) __interrupt TF2_ISR ++void timer2_isr(void) __interrupt(TF2_ISR) + { + /* Toggle the probe calibration pin, only accurate up to ca. 8MHz. */ + TOGGLE_CALIBRATION_PIN(); diff --git a/misc/sigrok-firmware-fx2lafw/patches/03-fx2lafw__Update___at_syntax_for_sdcc_4.2.3.patch b/misc/sigrok-firmware-fx2lafw/patches/03-fx2lafw__Update___at_syntax_for_sdcc_4.2.3.patch new file mode 100644 index 000000000000..a591d310b95d --- /dev/null +++ b/misc/sigrok-firmware-fx2lafw/patches/03-fx2lafw__Update___at_syntax_for_sdcc_4.2.3.patch @@ -0,0 +1,300 @@ +From: Matthew Cengia <redacted> +Date: Tue, 15 Aug 2023 00:35:45 +0000 (+1000) +Subject: fx2lafw: Update __at syntax for sdcc>=4.2.3 +X-Git-Url: http://sigrok.org/gitweb/?p=sigrok-firmware-fx2lafw.git;a=commitdiff_plain;h=96b0b476522c3f93a47ff8f479ec08105ba6a2a5 + +fx2lafw: Update __at syntax for sdcc>=4.2.3 + +The SDCC user manual https://sdcc.sourceforge.net/doc/sdccman.pdf +section 1.5 "Compatibility with previous versions" on page 12 states: + +> In 4.2.3, support for non-parenthesized arguments to __at that are +> not constants was dropped. + +Adjust the sigrok fx2lafw application source to unbreak compilation with +more recent SDCC versions. +--- + +diff --git a/fx2lib/include/fx2regs.h b/fx2lib/include/fx2regs.h +index 0645fe36..6ae3339d 100644 +--- a/fx2lib/include/fx2regs.h ++++ b/fx2lib/include/fx2regs.h +@@ -266,14 +266,14 @@ __xdata __at 0xE50D volatile BYTE GPCR2; ///< Chip Features + + __sfr __at 0x80 IOA; + /* IOA */ +- __sbit __at 0x80 + 0 PA0; +- __sbit __at 0x80 + 1 PA1; +- __sbit __at 0x80 + 2 PA2; +- __sbit __at 0x80 + 3 PA3; +- __sbit __at 0x80 + 4 PA4; +- __sbit __at 0x80 + 5 PA5; +- __sbit __at 0x80 + 6 PA6; +- __sbit __at 0x80 + 7 PA7; ++ __sbit __at (0x80+0) PA0; ++ __sbit __at (0x80+1) PA1; ++ __sbit __at (0x80+2) PA2; ++ __sbit __at (0x80+3) PA3; ++ __sbit __at (0x80+4) PA4; ++ __sbit __at (0x80+5) PA5; ++ __sbit __at (0x80+6) PA6; ++ __sbit __at (0x80+7) PA7; + __sfr __at 0x81 SP; + __sfr __at 0x82 DPL; + __sfr __at 0x83 DPH; +@@ -283,14 +283,14 @@ __sfr __at 0x86 DPS; + __sfr __at 0x87 PCON; + __sfr __at 0x88 TCON; + /* TCON */ +- __sbit __at 0x88+0 IT0; +- __sbit __at 0x88+1 IE0; +- __sbit __at 0x88+2 IT1; +- __sbit __at 0x88+3 IE1; +- __sbit __at 0x88+4 TR0; +- __sbit __at 0x88+5 TF0; +- __sbit __at 0x88+6 TR1; +- __sbit __at 0x88+7 TF1; ++ __sbit __at (0x88+0) IT0; ++ __sbit __at (0x88+1) IE0; ++ __sbit __at (0x88+2) IT1; ++ __sbit __at (0x88+3) IE1; ++ __sbit __at (0x88+4) TR0; ++ __sbit __at (0x88+5) TF0; ++ __sbit __at (0x88+6) TR1; ++ __sbit __at (0x88+7) TF1; + __sfr __at 0x89 TMOD; + __sfr __at 0x8A TL0; + __sfr __at 0x8B TL1; +@@ -299,28 +299,28 @@ __sfr __at 0x8D TH1; + __sfr __at 0x8E CKCON; + __sfr __at 0x90 IOB; + /* IOB */ +- __sbit __at 0x90 + 0 PB0; +- __sbit __at 0x90 + 1 PB1; +- __sbit __at 0x90 + 2 PB2; +- __sbit __at 0x90 + 3 PB3; +- __sbit __at 0x90 + 4 PB4; +- __sbit __at 0x90 + 5 PB5; +- __sbit __at 0x90 + 6 PB6; +- __sbit __at 0x90 + 7 PB7; ++ __sbit __at (0x90+0) PB0; ++ __sbit __at (0x90+1) PB1; ++ __sbit __at (0x90+2) PB2; ++ __sbit __at (0x90+3) PB3; ++ __sbit __at (0x90+4) PB4; ++ __sbit __at (0x90+5) PB5; ++ __sbit __at (0x90+6) PB6; ++ __sbit __at (0x90+7) PB7; + __sfr __at 0x91 EXIF; + + //__sfr __at 0x92 MPAGE; + __sfr __at 0x92 _XPAGE; // same as MPAGE for pdata __sfr access w/ sdcc + __sfr __at 0x98 SCON0; + /* SCON0 */ +- __sbit __at 0x98+0 RI; +- __sbit __at 0x98+1 TI; +- __sbit __at 0x98+2 RB8; +- __sbit __at 0x98+3 TB8; +- __sbit __at 0x98+4 REN; +- __sbit __at 0x98+5 SM2; +- __sbit __at 0x98+6 SM1; +- __sbit __at 0x98+7 SM0; ++ __sbit __at (0x98+0) RI; ++ __sbit __at (0x98+1) TI; ++ __sbit __at (0x98+2) RB8; ++ __sbit __at (0x98+3) TB8; ++ __sbit __at (0x98+4) REN; ++ __sbit __at (0x98+5) SM2; ++ __sbit __at (0x98+6) SM1; ++ __sbit __at (0x98+7) SM0; + __sfr __at 0x99 SBUF0; + + __sfr __at 0x9A AUTOPTRH1; +@@ -330,27 +330,27 @@ __sfr __at 0x9E AUTOPTRL2; + + __sfr __at 0xA0 IOC; + /* IOC */ +- __sbit __at 0xA0 + 0 PC0; +- __sbit __at 0xA0 + 1 PC1; +- __sbit __at 0xA0 + 2 PC2; +- __sbit __at 0xA0 + 3 PC3; +- __sbit __at 0xA0 + 4 PC4; +- __sbit __at 0xA0 + 5 PC5; +- __sbit __at 0xA0 + 6 PC6; +- __sbit __at 0xA0 + 7 PC7; ++ __sbit __at (0xA0+0) PC0; ++ __sbit __at (0xA0+1) PC1; ++ __sbit __at (0xA0+2) PC2; ++ __sbit __at (0xA0+3) PC3; ++ __sbit __at (0xA0+4) PC4; ++ __sbit __at (0xA0+5) PC5; ++ __sbit __at (0xA0+6) PC6; ++ __sbit __at (0xA0+7) PC7; + __sfr __at 0xA1 INT2CLR; + __sfr __at 0xA2 INT4CLR; + + __sfr __at 0xA8 IE; + /* IE */ +- __sbit __at 0xA8+0 EX0; +- __sbit __at 0xA8+1 ET0; +- __sbit __at 0xA8+2 EX1; +- __sbit __at 0xA8+3 ET1; +- __sbit __at 0xA8+4 ES0; +- __sbit __at 0xA8+5 ET2; +- __sbit __at 0xA8+6 ES1; +- __sbit __at 0xA8+7 EA; ++ __sbit __at (0xA8+0) EX0; ++ __sbit __at (0xA8+1) ET0; ++ __sbit __at (0xA8+2) EX1; ++ __sbit __at (0xA8+3) ET1; ++ __sbit __at (0xA8+4) ES0; ++ __sbit __at (0xA8+5) ET2; ++ __sbit __at (0xA8+6) ES1; ++ __sbit __at (0xA8+7) EA; + + __sfr __at 0xAA EP2468STAT; + __sfr __at 0xAB EP24FIFOFLGS; +@@ -358,14 +358,14 @@ __sfr __at 0xAC EP68FIFOFLGS; + __sfr __at 0xAF AUTOPTRSETUP; + __sfr __at 0xB0 IOD; + /* IOD */ +- __sbit __at 0xB0 + 0 PD0; +- __sbit __at 0xB0 + 1 PD1; +- __sbit __at 0xB0 + 2 PD2; +- __sbit __at 0xB0 + 3 PD3; +- __sbit __at 0xB0 + 4 PD4; +- __sbit __at 0xB0 + 5 PD5; +- __sbit __at 0xB0 + 6 PD6; +- __sbit __at 0xB0 + 7 PD7; ++ __sbit __at (0xB0+0) PD0; ++ __sbit __at (0xB0+1) PD1; ++ __sbit __at (0xB0+2) PD2; ++ __sbit __at (0xB0+3) PD3; ++ __sbit __at (0xB0+4) PD4; ++ __sbit __at (0xB0+5) PD5; ++ __sbit __at (0xB0+6) PD6; ++ __sbit __at (0xB0+7) PD7; + __sfr __at 0xB1 IOE; + __sfr __at 0xB2 OEA; + __sfr __at 0xB3 OEB; +@@ -375,13 +375,13 @@ __sfr __at 0xB6 OEE; + + __sfr __at 0xB8 IP; + /* IP */ +- __sbit __at 0xB8+0 PX0; +- __sbit __at 0xB8+1 PT0; +- __sbit __at 0xB8+2 PX1; +- __sbit __at 0xB8+3 PT1; +- __sbit __at 0xB8+4 PS0; +- __sbit __at 0xB8+5 PT2; +- __sbit __at 0xB8+6 PS1; ++ __sbit __at (0xB8+0) PX0; ++ __sbit __at (0xB8+1) PT0; ++ __sbit __at (0xB8+2) PX1; ++ __sbit __at (0xB8+3) PT1; ++ __sbit __at (0xB8+4) PS0; ++ __sbit __at (0xB8+5) PT2; ++ __sbit __at (0xB8+6) PS1; + + __sfr __at 0xBA EP01STAT; + __sfr __at 0xBB GPIFTRIG; +@@ -392,61 +392,61 @@ __sfr __at 0xBF GPIFSGLDATLNOX; + + __sfr __at 0xC0 SCON1; + /* SCON1 */ +- __sbit __at 0xC0+0 RI1; +- __sbit __at 0xC0+1 TI1; +- __sbit __at 0xC0+2 RB81; +- __sbit __at 0xC0+3 TB81; +- __sbit __at 0xC0+4 REN1; +- __sbit __at 0xC0+5 SM21; +- __sbit __at 0xC0+6 SM11; +- __sbit __at 0xC0+7 SM01; ++ __sbit __at (0xC0+0) RI1; ++ __sbit __at (0xC0+1) TI1; ++ __sbit __at (0xC0+2) RB81; ++ __sbit __at (0xC0+3) TB81; ++ __sbit __at (0xC0+4) REN1; ++ __sbit __at (0xC0+5) SM21; ++ __sbit __at (0xC0+6) SM11; ++ __sbit __at (0xC0+7) SM01; + __sfr __at 0xC1 SBUF1; + __sfr __at 0xC8 T2CON; + /* T2CON */ +- __sbit __at 0xC8+0 CP_RL2; +- __sbit __at 0xC8+1 C_T2; +- __sbit __at 0xC8+2 TR2; +- __sbit __at 0xC8+3 EXEN2; +- __sbit __at 0xC8+4 TCLK; +- __sbit __at 0xC8+5 RCLK; +- __sbit __at 0xC8+6 EXF2; +- __sbit __at 0xC8+7 TF2; ++ __sbit __at (0xC8+0) CP_RL2; ++ __sbit __at (0xC8+1) C_T2; ++ __sbit __at (0xC8+2) TR2; ++ __sbit __at (0xC8+3) EXEN2; ++ __sbit __at (0xC8+4) TCLK; ++ __sbit __at (0xC8+5) RCLK; ++ __sbit __at (0xC8+6) EXF2; ++ __sbit __at (0xC8+7) TF2; + __sfr __at 0xCA RCAP2L; + __sfr __at 0xCB RCAP2H; + __sfr __at 0xCC TL2; + __sfr __at 0xCD TH2; + __sfr __at 0xD0 PSW; + /* PSW */ +- __sbit __at 0xD0+0 P; +- __sbit __at 0xD0+1 FL; +- __sbit __at 0xD0+2 OV; +- __sbit __at 0xD0+3 RS0; +- __sbit __at 0xD0+4 RS1; +- __sbit __at 0xD0+5 F0; +- __sbit __at 0xD0+6 AC; +- __sbit __at 0xD0+7 CY; ++ __sbit __at (0xD0+0) P; ++ __sbit __at (0xD0+1) FL; ++ __sbit __at (0xD0+2) OV; ++ __sbit __at (0xD0+3) RS0; ++ __sbit __at (0xD0+4) RS1; ++ __sbit __at (0xD0+5) F0; ++ __sbit __at (0xD0+6) AC; ++ __sbit __at (0xD0+7) CY; + __sfr __at 0xD8 EICON; // Was WDCON in DS80C320; Bit Values differ from Reg320 + /* EICON */ +- __sbit __at 0xD8+3 INT6; +- __sbit __at 0xD8+4 RESI; +- __sbit __at 0xD8+5 ERESI; +- __sbit __at 0xD8+7 SMOD1; ++ __sbit __at (0xD8+3) INT6; ++ __sbit __at (0xD8+4) RESI; ++ __sbit __at (0xD8+5) ERESI; ++ __sbit __at (0xD8+7) SMOD1; + __sfr __at 0xE0 ACC; + __sfr __at 0xE8 EIE; // EIE Bit Values differ from Reg320 + /* EIE */ +- __sbit __at 0xE8+0 EUSB; +- __sbit __at 0xE8+1 EI2C; +- __sbit __at 0xE8+2 EIEX4; +- __sbit __at 0xE8+3 EIEX5; +- __sbit __at 0xE8+4 EIEX6; ++ __sbit __at (0xE8+0) EUSB; ++ __sbit __at (0xE8+1) EI2C; ++ __sbit __at (0xE8+2) EIEX4; ++ __sbit __at (0xE8+3) EIEX5; ++ __sbit __at (0xE8+4) EIEX6; + __sfr __at 0xF0 B; + __sfr __at 0xF8 EIP; // EIP Bit Values differ from Reg320 + /* EIP */ +- __sbit __at 0xF8+0 PUSB; +- __sbit __at 0xF8+1 PI2C; +- __sbit __at 0xF8+2 EIPX4; +- __sbit __at 0xF8+3 EIPX5; +- __sbit __at 0xF8+4 EIPX6; ++ __sbit __at (0xF8+0) PUSB; ++ __sbit __at (0xF8+1) PI2C; ++ __sbit __at (0xF8+2) EIPX4; ++ __sbit __at (0xF8+3) EIPX5; ++ __sbit __at (0xF8+4) EIPX6; + + + /* CPU Control & Status Register (CPUCS) */ diff --git a/misc/sigrok-firmware-fx2lafw/patches/04-fx2lib_fix_SDCC_warning_283.patch b/misc/sigrok-firmware-fx2lafw/patches/04-fx2lib_fix_SDCC_warning_283.patch new file mode 100644 index 000000000000..7b6968a0956f --- /dev/null +++ b/misc/sigrok-firmware-fx2lafw/patches/04-fx2lib_fix_SDCC_warning_283.patch @@ -0,0 +1,686 @@ +From: Steve Markgraf <redacted> +Date: Wed, 17 Jan 2024 19:18:34 +0000 (+0100) +Subject: fx2lib: fix SDCC warning 283 +X-Git-Url: http://sigrok.org/gitweb/?p=sigrok-firmware-fx2lafw.git;a=commitdiff_plain;h=bb3c6dfdb3f95bf529ed95dcc5fb3610e4473673 + +fx2lib: fix SDCC warning 283 + +This fixes the following warnings that appear with +SDCC >= 4.3.0: + +"warning 283: function declarator with no prototype" +--- + +diff --git a/fx2lib/include/autovector.h b/fx2lib/include/autovector.h +index 38f80fcd..ecbeb411 100644 +--- a/fx2lib/include/autovector.h ++++ b/fx2lib/include/autovector.h +@@ -172,49 +172,49 @@ typedef enum { + // you must include the predef of these in the file with your main + // so lets just define them here + +-void sudav_isr() __interrupt(SUDAV_ISR); +-void sof_isr() __interrupt(SOF_ISR); +-void sutok_isr() __interrupt(SUTOK_ISR); +-void suspend_isr() __interrupt(SUSPEND_ISR); +-void usbreset_isr() __interrupt(USBRESET_ISR); +-void hispeed_isr() __interrupt(HISPEED_ISR); +-void ep0ack_isr() __interrupt(EP0ACK_ISR); +-void ep0in_isr() __interrupt(EP0IN_ISR); +-void ep0out_isr() __interrupt(EP0OUT_ISR); +-void ep1in_isr() __interrupt(EP1IN_ISR); +-void ep1out_isr() __interrupt(EP1OUT_ISR); +-void ep2_isr() __interrupt(EP2_ISR); +-void ep4_isr() __interrupt(EP4_ISR); +-void ep6_isr() __interrupt(EP6_ISR); +-void ep8_isr() __interrupt(EP8_ISR); +-void ibn_isr() __interrupt(IBN_ISR); +-void ep0ping_isr() __interrupt(EP0PING_ISR); +-void ep1ping_isr() __interrupt(EP1PING_ISR); +-void ep2ping_isr() __interrupt(EP2PING_ISR); +-void ep4ping_isr() __interrupt(EP4PING_ISR); +-void ep6ping_isr() __interrupt(EP6PING_ISR); +-void ep8ping_isr() __interrupt(EP8PING_ISR); +-void errlimit_isr() __interrupt(ERRLIMIT_ISR); +-void ep2isoerr_isr() __interrupt(EP2ISOERR_ISR); +-void ep4isoerr_isr() __interrupt(EP4ISOERR_ISR); +-void ep6isoerr_isr() __interrupt(EP6ISOERR_ISR); +-void ep8isoerr_isr() __interrupt(EP8ISOERR_ISR); +-void spare_isr() __interrupt(RESERVED_ISR); // not used ++void sudav_isr(void) __interrupt(SUDAV_ISR); ++void sof_isr(void) __interrupt(SOF_ISR); ++void sutok_isr(void) __interrupt(SUTOK_ISR); ++void suspend_isr(void) __interrupt(SUSPEND_ISR); ++void usbreset_isr(void) __interrupt(USBRESET_ISR); ++void hispeed_isr(void) __interrupt(HISPEED_ISR); ++void ep0ack_isr(void) __interrupt(EP0ACK_ISR); ++void ep0in_isr(void) __interrupt(EP0IN_ISR); ++void ep0out_isr(void) __interrupt(EP0OUT_ISR); ++void ep1in_isr(void) __interrupt(EP1IN_ISR); ++void ep1out_isr(void) __interrupt(EP1OUT_ISR); ++void ep2_isr(void) __interrupt(EP2_ISR); ++void ep4_isr(void) __interrupt(EP4_ISR); ++void ep6_isr(void) __interrupt(EP6_ISR); ++void ep8_isr(void) __interrupt(EP8_ISR); ++void ibn_isr(void) __interrupt(IBN_ISR); ++void ep0ping_isr(void) __interrupt(EP0PING_ISR); ++void ep1ping_isr(void) __interrupt(EP1PING_ISR); ++void ep2ping_isr(void) __interrupt(EP2PING_ISR); ++void ep4ping_isr(void) __interrupt(EP4PING_ISR); ++void ep6ping_isr(void) __interrupt(EP6PING_ISR); ++void ep8ping_isr(void) __interrupt(EP8PING_ISR); ++void errlimit_isr(void) __interrupt(ERRLIMIT_ISR); ++void ep2isoerr_isr(void) __interrupt(EP2ISOERR_ISR); ++void ep4isoerr_isr(void) __interrupt(EP4ISOERR_ISR); ++void ep6isoerr_isr(void) __interrupt(EP6ISOERR_ISR); ++void ep8isoerr_isr(void) __interrupt(EP8ISOERR_ISR); ++void spare_isr(void) __interrupt(RESERVED_ISR); // not used + // gpif ints +-void ep2pf_isr() __interrupt(EP2PF_ISR); +-void ep4pf_isr() __interrupt(EP4PF_ISR); +-void ep6pf_isr() __interrupt(EP6PF_ISR); +-void ep8pf_isr() __interrupt(EP8PF_ISR); +-void ep2ef_isr() __interrupt(EP2EF_ISR); +-void ep4ef_isr() __interrupt(EP4EF_ISR); +-void ep6ef_isr() __interrupt(EP6EF_ISR); +-void ep8ef_isr() __interrupt(EP8EF_ISR); +-void ep2ff_isr() __interrupt(EP2FF_ISR); +-void ep4ff_isr() __interrupt(EP4FF_ISR); +-void ep6ff_isr() __interrupt(EP6FF_ISR); +-void ep8ff_isr() __interrupt(EP8FF_ISR); +-void gpifdone_isr() __interrupt(GPIFDONE_ISR); +-void gpifwf_isr() __interrupt(GPIFWF_ISR); ++void ep2pf_isr(void) __interrupt(EP2PF_ISR); ++void ep4pf_isr(void) __interrupt(EP4PF_ISR); ++void ep6pf_isr(void) __interrupt(EP6PF_ISR); ++void ep8pf_isr(void) __interrupt(EP8PF_ISR); ++void ep2ef_isr(void) __interrupt(EP2EF_ISR); ++void ep4ef_isr(void) __interrupt(EP4EF_ISR); ++void ep6ef_isr(void) __interrupt(EP6EF_ISR); ++void ep8ef_isr(void) __interrupt(EP8EF_ISR); ++void ep2ff_isr(void) __interrupt(EP2FF_ISR); ++void ep4ff_isr(void) __interrupt(EP4FF_ISR); ++void ep6ff_isr(void) __interrupt(EP6FF_ISR); ++void ep8ff_isr(void) __interrupt(EP8FF_ISR); ++void gpifdone_isr(void) __interrupt(GPIFDONE_ISR); ++void gpifwf_isr(void) __interrupt(GPIFWF_ISR); + + #endif + +diff --git a/fx2lib/include/serial.h b/fx2lib/include/serial.h +index 7c5935eb..c83959c4 100644 +--- a/fx2lib/include/serial.h ++++ b/fx2lib/include/serial.h +@@ -51,4 +51,4 @@ void sio0_init( WORD baud_rate ) __critical ; // baud_rate max should be 57600 s + Just use one or the other. (This makes terminal echo easy) + **/ + void putchar(char c); +-char getchar(); ++char getchar(void); +diff --git a/fx2lib/include/setupdat.h b/fx2lib/include/setupdat.h +index 5dba882a..fc9e40c6 100644 +--- a/fx2lib/include/setupdat.h ++++ b/fx2lib/include/setupdat.h +@@ -148,7 +148,7 @@ __xdata BYTE* ep_addr(BYTE ep); + You can also use the usbjt and enable the sudav isr + and call the function from withing the sudav isr routine + */ +-void handle_setupdata(); ++void handle_setupdata(void); + + + /** +diff --git a/fx2lib/lib/interrupts/ep0ack_isr.c b/fx2lib/lib/interrupts/ep0ack_isr.c +index d216717d..547e0bfc 100644 +--- a/fx2lib/lib/interrupts/ep0ack_isr.c ++++ b/fx2lib/lib/interrupts/ep0ack_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0ack_isr() __interrupt(EP0ACK_ISR) {} ++void ep0ack_isr(void) __interrupt(EP0ACK_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep0in_isr.c b/fx2lib/lib/interrupts/ep0in_isr.c +index f3d8990e..c55d0fbc 100644 +--- a/fx2lib/lib/interrupts/ep0in_isr.c ++++ b/fx2lib/lib/interrupts/ep0in_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0in_isr() __interrupt(EP0IN_ISR) {} ++void ep0in_isr(void) __interrupt(EP0IN_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep0out_isr.c b/fx2lib/lib/interrupts/ep0out_isr.c +index a5acedb7..a93cd77c 100644 +--- a/fx2lib/lib/interrupts/ep0out_isr.c ++++ b/fx2lib/lib/interrupts/ep0out_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0out_isr() __interrupt(EP0OUT_ISR) {} ++void ep0out_isr(void) __interrupt(EP0OUT_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep0ping_isr.c b/fx2lib/lib/interrupts/ep0ping_isr.c +index 7b1ee929..218b7528 100644 +--- a/fx2lib/lib/interrupts/ep0ping_isr.c ++++ b/fx2lib/lib/interrupts/ep0ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep0ping_isr() __interrupt(EP0PING_ISR) {} ++void ep0ping_isr(void) __interrupt(EP0PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep1in_isr.c b/fx2lib/lib/interrupts/ep1in_isr.c +index b666fcb3..4197bd54 100644 +--- a/fx2lib/lib/interrupts/ep1in_isr.c ++++ b/fx2lib/lib/interrupts/ep1in_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep1in_isr() __interrupt(EP1IN_ISR) {} ++void ep1in_isr(void) __interrupt(EP1IN_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep1out_isr.c b/fx2lib/lib/interrupts/ep1out_isr.c +index 6c87dc20..8e19ca01 100644 +--- a/fx2lib/lib/interrupts/ep1out_isr.c ++++ b/fx2lib/lib/interrupts/ep1out_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep1out_isr() __interrupt(EP1OUT_ISR) {} ++void ep1out_isr(void) __interrupt(EP1OUT_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep1ping_isr.c b/fx2lib/lib/interrupts/ep1ping_isr.c +index c32d437c..62849214 100644 +--- a/fx2lib/lib/interrupts/ep1ping_isr.c ++++ b/fx2lib/lib/interrupts/ep1ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep1ping_isr() __interrupt(EP1PING_ISR) {} ++void ep1ping_isr(void) __interrupt(EP1PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep2_isr.c b/fx2lib/lib/interrupts/ep2_isr.c +index 4de637a3..4596b3ce 100644 +--- a/fx2lib/lib/interrupts/ep2_isr.c ++++ b/fx2lib/lib/interrupts/ep2_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2_isr() __interrupt(EP2_ISR) {} ++void ep2_isr(void) __interrupt(EP2_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep2ef_isr.c b/fx2lib/lib/interrupts/ep2ef_isr.c +index 46f3f87a..a88f1571 100644 +--- a/fx2lib/lib/interrupts/ep2ef_isr.c ++++ b/fx2lib/lib/interrupts/ep2ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2ef_isr() __interrupt(EP2EF_ISR){} ++void ep2ef_isr(void) __interrupt(EP2EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep2ff_isr.c b/fx2lib/lib/interrupts/ep2ff_isr.c +index 400e4803..1c073fbd 100644 +--- a/fx2lib/lib/interrupts/ep2ff_isr.c ++++ b/fx2lib/lib/interrupts/ep2ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2ff_isr() __interrupt(EP2FF_ISR){} ++void ep2ff_isr(void) __interrupt(EP2FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep2isoerr_isr.c b/fx2lib/lib/interrupts/ep2isoerr_isr.c +index d0ca4a89..7b121a51 100644 +--- a/fx2lib/lib/interrupts/ep2isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep2isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2isoerr_isr() __interrupt(EP2ISOERR_ISR) {} ++void ep2isoerr_isr(void) __interrupt(EP2ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep2pf_isr.c b/fx2lib/lib/interrupts/ep2pf_isr.c +index 9bd8e9aa..4aa71d33 100644 +--- a/fx2lib/lib/interrupts/ep2pf_isr.c ++++ b/fx2lib/lib/interrupts/ep2pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2pf_isr() __interrupt(EP2PF_ISR){} ++void ep2pf_isr(void) __interrupt(EP2PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep2ping_isr.c b/fx2lib/lib/interrupts/ep2ping_isr.c +index dad1e953..336616cd 100644 +--- a/fx2lib/lib/interrupts/ep2ping_isr.c ++++ b/fx2lib/lib/interrupts/ep2ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep2ping_isr() __interrupt(EP2PING_ISR) {} ++void ep2ping_isr(void) __interrupt(EP2PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep4_isr.c b/fx2lib/lib/interrupts/ep4_isr.c +index 5affac9a..19beb727 100644 +--- a/fx2lib/lib/interrupts/ep4_isr.c ++++ b/fx2lib/lib/interrupts/ep4_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4_isr() __interrupt(EP4_ISR) {} ++void ep4_isr(void) __interrupt(EP4_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep4ef_isr.c b/fx2lib/lib/interrupts/ep4ef_isr.c +index 4a0cff1a..77c5576b 100644 +--- a/fx2lib/lib/interrupts/ep4ef_isr.c ++++ b/fx2lib/lib/interrupts/ep4ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4ef_isr() __interrupt(EP4EF_ISR){} ++void ep4ef_isr(void) __interrupt(EP4EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep4ff_isr.c b/fx2lib/lib/interrupts/ep4ff_isr.c +index 3278da2d..cbe0b686 100644 +--- a/fx2lib/lib/interrupts/ep4ff_isr.c ++++ b/fx2lib/lib/interrupts/ep4ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4ff_isr() __interrupt(EP4FF_ISR){} ++void ep4ff_isr(void) __interrupt(EP4FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep4isoerr_isr.c b/fx2lib/lib/interrupts/ep4isoerr_isr.c +index dcd7ff90..d198f3b8 100644 +--- a/fx2lib/lib/interrupts/ep4isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep4isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4isoerr_isr() __interrupt(EP4ISOERR_ISR) {} ++void ep4isoerr_isr(void) __interrupt(EP4ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep4pf_isr.c b/fx2lib/lib/interrupts/ep4pf_isr.c +index 7bbe9f02..14ec7e5b 100644 +--- a/fx2lib/lib/interrupts/ep4pf_isr.c ++++ b/fx2lib/lib/interrupts/ep4pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4pf_isr() __interrupt(EP4PF_ISR){} ++void ep4pf_isr(void) __interrupt(EP4PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep4ping_isr.c b/fx2lib/lib/interrupts/ep4ping_isr.c +index 8d226856..47de3721 100644 +--- a/fx2lib/lib/interrupts/ep4ping_isr.c ++++ b/fx2lib/lib/interrupts/ep4ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep4ping_isr() __interrupt(EP4PING_ISR) {} ++void ep4ping_isr(void) __interrupt(EP4PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep6_isr.c b/fx2lib/lib/interrupts/ep6_isr.c +index 630f9b26..61801f2f 100644 +--- a/fx2lib/lib/interrupts/ep6_isr.c ++++ b/fx2lib/lib/interrupts/ep6_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6_isr() __interrupt(EP6_ISR) {} ++void ep6_isr(void) __interrupt(EP6_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep6ef_isr.c b/fx2lib/lib/interrupts/ep6ef_isr.c +index e9ba6d54..28b2db39 100644 +--- a/fx2lib/lib/interrupts/ep6ef_isr.c ++++ b/fx2lib/lib/interrupts/ep6ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6ef_isr() __interrupt(EP6EF_ISR){} ++void ep6ef_isr(void) __interrupt(EP6EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep6ff_isr.c b/fx2lib/lib/interrupts/ep6ff_isr.c +index 011fe871..051b6e29 100644 +--- a/fx2lib/lib/interrupts/ep6ff_isr.c ++++ b/fx2lib/lib/interrupts/ep6ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6ff_isr() __interrupt(EP6FF_ISR){} ++void ep6ff_isr(void) __interrupt(EP6FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep6isoerr_isr.c b/fx2lib/lib/interrupts/ep6isoerr_isr.c +index 8c005777..efae2cfd 100644 +--- a/fx2lib/lib/interrupts/ep6isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep6isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6isoerr_isr() __interrupt(EP6ISOERR_ISR) {} ++void ep6isoerr_isr(void) __interrupt(EP6ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep6pf_isr.c b/fx2lib/lib/interrupts/ep6pf_isr.c +index 52f6d738..dee40231 100644 +--- a/fx2lib/lib/interrupts/ep6pf_isr.c ++++ b/fx2lib/lib/interrupts/ep6pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6pf_isr() __interrupt(EP6PF_ISR){} ++void ep6pf_isr(void) __interrupt(EP6PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep6ping_isr.c b/fx2lib/lib/interrupts/ep6ping_isr.c +index 5430f209..9ed855f7 100644 +--- a/fx2lib/lib/interrupts/ep6ping_isr.c ++++ b/fx2lib/lib/interrupts/ep6ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep6ping_isr() __interrupt(EP6PING_ISR) {} ++void ep6ping_isr(void) __interrupt(EP6PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep8_isr.c b/fx2lib/lib/interrupts/ep8_isr.c +index d415a3ec..8ebce9b8 100644 +--- a/fx2lib/lib/interrupts/ep8_isr.c ++++ b/fx2lib/lib/interrupts/ep8_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8_isr() __interrupt(EP8_ISR) {} ++void ep8_isr(void) __interrupt(EP8_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep8ef_isr.c b/fx2lib/lib/interrupts/ep8ef_isr.c +index d04d2376..508f49b9 100644 +--- a/fx2lib/lib/interrupts/ep8ef_isr.c ++++ b/fx2lib/lib/interrupts/ep8ef_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8ef_isr() __interrupt(EP8EF_ISR){} ++void ep8ef_isr(void) __interrupt(EP8EF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep8ff_isr.c b/fx2lib/lib/interrupts/ep8ff_isr.c +index d1e5fcd7..88811d7d 100644 +--- a/fx2lib/lib/interrupts/ep8ff_isr.c ++++ b/fx2lib/lib/interrupts/ep8ff_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8ff_isr() __interrupt(EP8FF_ISR){} ++void ep8ff_isr(void) __interrupt(EP8FF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep8isoerr_isr.c b/fx2lib/lib/interrupts/ep8isoerr_isr.c +index a7e8e0f9..fa5f54c5 100644 +--- a/fx2lib/lib/interrupts/ep8isoerr_isr.c ++++ b/fx2lib/lib/interrupts/ep8isoerr_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8isoerr_isr() __interrupt(EP8ISOERR_ISR) {} ++void ep8isoerr_isr(void) __interrupt(EP8ISOERR_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ep8pf_isr.c b/fx2lib/lib/interrupts/ep8pf_isr.c +index 53dcdf27..245fd343 100644 +--- a/fx2lib/lib/interrupts/ep8pf_isr.c ++++ b/fx2lib/lib/interrupts/ep8pf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8pf_isr() __interrupt(EP8PF_ISR){} ++void ep8pf_isr(void) __interrupt(EP8PF_ISR){} + +diff --git a/fx2lib/lib/interrupts/ep8ping_isr.c b/fx2lib/lib/interrupts/ep8ping_isr.c +index 5cf05dc7..56965e6a 100644 +--- a/fx2lib/lib/interrupts/ep8ping_isr.c ++++ b/fx2lib/lib/interrupts/ep8ping_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ep8ping_isr() __interrupt(EP8PING_ISR) {} ++void ep8ping_isr(void) __interrupt(EP8PING_ISR) {} + +diff --git a/fx2lib/lib/interrupts/errlimit_isr.c b/fx2lib/lib/interrupts/errlimit_isr.c +index cf4e1f61..921b1def 100644 +--- a/fx2lib/lib/interrupts/errlimit_isr.c ++++ b/fx2lib/lib/interrupts/errlimit_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void errlimit_isr() __interrupt(ERRLIMIT_ISR) {} ++void errlimit_isr(void) __interrupt(ERRLIMIT_ISR) {} + +diff --git a/fx2lib/lib/interrupts/gpifdone_isr.c b/fx2lib/lib/interrupts/gpifdone_isr.c +index ee5ce1f6..03f0bb5f 100644 +--- a/fx2lib/lib/interrupts/gpifdone_isr.c ++++ b/fx2lib/lib/interrupts/gpifdone_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void gpifdone_isr() __interrupt(GPIFDONE_ISR){} ++void gpifdone_isr(void) __interrupt(GPIFDONE_ISR){} + +diff --git a/fx2lib/lib/interrupts/gpifwf_isr.c b/fx2lib/lib/interrupts/gpifwf_isr.c +index e9941541..b220a9fe 100644 +--- a/fx2lib/lib/interrupts/gpifwf_isr.c ++++ b/fx2lib/lib/interrupts/gpifwf_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void gpifwf_isr() __interrupt(GPIFWF_ISR){} ++void gpifwf_isr(void) __interrupt(GPIFWF_ISR){} + +diff --git a/fx2lib/lib/interrupts/hispeed_isr.c b/fx2lib/lib/interrupts/hispeed_isr.c +index 9daabc12..dcbd0e4b 100644 +--- a/fx2lib/lib/interrupts/hispeed_isr.c ++++ b/fx2lib/lib/interrupts/hispeed_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void hispeed_isr() __interrupt(HISPEED_ISR) {} ++void hispeed_isr(void) __interrupt(HISPEED_ISR) {} + +diff --git a/fx2lib/lib/interrupts/ibn_isr.c b/fx2lib/lib/interrupts/ibn_isr.c +index aa0a7523..97fb05e8 100644 +--- a/fx2lib/lib/interrupts/ibn_isr.c ++++ b/fx2lib/lib/interrupts/ibn_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void ibn_isr() __interrupt(IBN_ISR) {} ++void ibn_isr(void) __interrupt(IBN_ISR) {} + +diff --git a/fx2lib/lib/interrupts/sof_isr.c b/fx2lib/lib/interrupts/sof_isr.c +index 64a409c4..8b0b8654 100644 +--- a/fx2lib/lib/interrupts/sof_isr.c ++++ b/fx2lib/lib/interrupts/sof_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void sof_isr() __interrupt(SOF_ISR) {} ++void sof_isr(void) __interrupt(SOF_ISR) {} + +diff --git a/fx2lib/lib/interrupts/spare_isr.c b/fx2lib/lib/interrupts/spare_isr.c +index 3b81fd20..effb7d02 100644 +--- a/fx2lib/lib/interrupts/spare_isr.c ++++ b/fx2lib/lib/interrupts/spare_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void spare_isr() __interrupt(RESERVED_ISR) {} ++void spare_isr(void) __interrupt(RESERVED_ISR) {} + +diff --git a/fx2lib/lib/interrupts/sudav_isr.c b/fx2lib/lib/interrupts/sudav_isr.c +index 4d36b59a..d5ed73bf 100644 +--- a/fx2lib/lib/interrupts/sudav_isr.c ++++ b/fx2lib/lib/interrupts/sudav_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void sudav_isr() __interrupt(SUDAV_ISR) {} ++void sudav_isr(void) __interrupt(SUDAV_ISR) {} + +diff --git a/fx2lib/lib/interrupts/suspend_isr.c b/fx2lib/lib/interrupts/suspend_isr.c +index cf08b28a..1f471179 100644 +--- a/fx2lib/lib/interrupts/suspend_isr.c ++++ b/fx2lib/lib/interrupts/suspend_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void suspend_isr() __interrupt(SUSPEND_ISR) {} ++void suspend_isr(void) __interrupt(SUSPEND_ISR) {} + +diff --git a/fx2lib/lib/interrupts/sutok_isr.c b/fx2lib/lib/interrupts/sutok_isr.c +index 8c7368d2..9c424c67 100644 +--- a/fx2lib/lib/interrupts/sutok_isr.c ++++ b/fx2lib/lib/interrupts/sutok_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void sutok_isr() __interrupt(SUTOK_ISR) {} ++void sutok_isr(void) __interrupt(SUTOK_ISR) {} + +diff --git a/fx2lib/lib/interrupts/usbreset_isr.c b/fx2lib/lib/interrupts/usbreset_isr.c +index 8888eede..5a91e080 100644 +--- a/fx2lib/lib/interrupts/usbreset_isr.c ++++ b/fx2lib/lib/interrupts/usbreset_isr.c +@@ -17,5 +17,5 @@ + + #include <autovector.h> + +-void usbreset_isr() __interrupt(USBRESET_ISR) {} ++void usbreset_isr(void) __interrupt(USBRESET_ISR) {} + +diff --git a/fx2lib/lib/serial.c b/fx2lib/lib/serial.c +index 3114d580..60eb0187 100644 +--- a/fx2lib/lib/serial.c ++++ b/fx2lib/lib/serial.c +@@ -68,7 +68,7 @@ void sio0_init( WORD baud_rate ) __critical { // baud_rate max should be 57600 s + + } + +-char getchar() { ++char getchar(void) { + char c; + while (!RI) + ; +diff --git a/fx2lib/lib/setupdat.c b/fx2lib/lib/setupdat.c +index 878f7b94..a1eb41d1 100644 +--- a/fx2lib/lib/setupdat.c ++++ b/fx2lib/lib/setupdat.c +@@ -34,7 +34,7 @@ extern BOOL handle_vendorcommand(BYTE cmd); + extern BOOL handle_set_configuration(BYTE cfg); + extern BOOL handle_get_interface(BYTE ifc, BYTE* alt_ifc); + extern BOOL handle_set_interface(BYTE ifc,BYTE alt_ifc); +-extern BYTE handle_get_configuration(); ++extern BYTE handle_get_configuration(void); + extern BOOL handle_set_configuration(BYTE cfg); + extern void handle_reset_ep(BYTE ep); + +@@ -44,16 +44,16 @@ extern void handle_reset_ep(BYTE ep); + + + // GET_STATUS, +-BOOL handle_get_status(); ++BOOL handle_get_status(void); + // CLEAR_FEATURE, +-BOOL handle_clear_feature(); ++BOOL handle_clear_feature(void); + // 0x02 is reserved + // SET_FEATURE=0x03, +-BOOL handle_set_feature(); ++BOOL handle_set_feature(void); + // 0x04 is reserved + // SET_ADDRESS=0x05, // this is handled by EZ-USB core unless RENUM=0 + // GET_DESCRIPTOR, +-void handle_get_descriptor(); ++void handle_get_descriptor(void); + // SET_DESCRIPTOR, + // GET_CONFIGURATION, // handled by callback + // SET_CONFIGURATION, // handled by callback +@@ -68,7 +68,7 @@ void handle_get_descriptor(); + handshake + */ + +-void handle_setupdata() { ++void handle_setupdata(void) { + //printf ( "Handle setupdat: %02x\n", SETUPDAT[1] ); + + switch ( SETUPDAT[1] ) { +@@ -156,7 +156,7 @@ __xdata BYTE* ep_addr(BYTE ep) { // bit 8 of ep_num is the direction + volatile BOOL self_powered=FALSE; + volatile BOOL remote_wakeup_allowed=FALSE; + +-BOOL handle_get_status() { ++BOOL handle_get_status(void) { + + switch ( SETUPDAT[0] ) { + +@@ -201,7 +201,7 @@ BOOL handle_get_status() { + #define GF_DEVICE 0 + #define GF_ENDPOINT 2 + +-BOOL handle_clear_feature() { ++BOOL handle_clear_feature(void) { + //printf ( "Clear Feature\n" ); + switch ( SETUPDAT[0] ) { + case GF_DEVICE: +@@ -227,7 +227,7 @@ BOOL handle_clear_feature() { + return TRUE; + } + +-BOOL handle_set_feature() { ++BOOL handle_set_feature(void) { + printf ( "Set Feature %02x\n", SETUPDAT[0] ); + switch ( SETUPDAT[0] ) { + case GF_DEVICE: +@@ -299,7 +299,7 @@ void handle_hispeed(BOOL highspeed) { + * String + * Other-Speed + **/ +-void handle_get_descriptor() { ++void handle_get_descriptor(void) { + //printf ( "Get Descriptor\n" ); + + switch ( SETUPDAT[3] ) { diff --git a/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.SlackBuild b/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.SlackBuild index 72169f9aa7ed..04547b8cec6c 100644 --- a/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.SlackBuild +++ b/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for sigrok fx2lafw firmware -# Copyright 2019 Andrzej Telszewski, Szczecin +# Copyright 2024 Andrzej Telszewski, Koszalin # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -32,9 +32,6 @@ PKGTYPE=${PKGTYPE:-tgz} ARCH=noarch -# If the variable PRINT_PACKAGE_NAME is set, then this script will report what -# the name of the created package would be, and then exit. This information -# could be useful to other scripts. if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" exit 0 @@ -44,27 +41,31 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -set -e +set -eu rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP + rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION + chown -R root:root . -find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ - -o -perm 511 \) -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ - -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +chmod -R a-st,u+rwX,go-w+rX . + +patch -p1 < $CWD/patches/00-fx2lafw__silence_integer_overflow_compile_warnings.patch +patch -p1 < $CWD/patches/01-fx2lib__Update___interrupt_syntax_for_sdcc_4.2.3.patch +patch -p1 < $CWD/patches/02-fx2lafw__Update___interrupt_syntax_for_sdcc_4.2.3.patch +patch -p1 < $CWD/patches/03-fx2lafw__Update___at_syntax_for_sdcc_4.2.3.patch +patch -p1 < $CWD/patches/04-fx2lib_fix_SDCC_warning_283.patch ./configure --prefix=/usr make make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a AUTHORS ChangeLog COPYING{,.LESSER} INSTALL NEWS README $PKG/usr/doc/$PRGNAM-$VERSION +cp -a AUTHORS ChangeLog COPYING{,.LESSER} NEWS README $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install diff --git a/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.info b/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.info index 45cf878407dc..ee2f6c3ab295 100644 --- a/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.info +++ b/misc/sigrok-firmware-fx2lafw/sigrok-firmware-fx2lafw.info @@ -7,4 +7,4 @@ DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="sdcc" MAINTAINER="Andrzej Telszewski" -EMAIL="atelszewski@gmail.com" +EMAIL="andrzej@telszewski.com" |