Skip to content

Commit 8f3d3ac

Browse files
committed
A few small changes. Expected to be low impact
1 parent 038eff9 commit 8f3d3ac

File tree

7 files changed

+18
-16
lines changed

7 files changed

+18
-16
lines changed

ChangeLog.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ These items are in addition to what was listed under changes already in release.
2222
## Unreleased changes
2323
Changes listed here are checked in to GitHub ("master" branch unless specifically noted; this is only done when a change involves a large amount of work and breaks the core in the interim, or where the change is considered very high risk, and needs testing by others prior to merging the changes with master - everything else goes straight into master). These changes are not yet in any "release" nor can they be installed through board manager, only downloading latest code from github will work. These changes will be included in the listed version, though planned version numbers may change without notice - critical fixes may be inserted before a planned release and the planned release bumped up a version, or versions may go from patch to minor version depending on the scale of changes.
2424

25-
The 2.6.11 release is pending, following that the next version will by 2.7.0.
25+
The 2.6.11 release is pending, following that the next version will by 2.7.0, barring major catastrophes.
2626

2727
## Released Versions
2828

@@ -33,6 +33,7 @@ The 2.6.11 release is pending, following that the next version will by 2.7.0.
3333
* General cleanup of wiring.c and timers.h for maintainability.
3434
* Fix some of the constants for timers so that all timers can still get uniform codes specifying the portmux and (for non-TCA's) which pin within the mux it is, which matters for the other core.
3535
* Documentation improvements.
36+
* Study of the state of 20 MHz timekeeping is ongoing. By my calculations it resulted in time passing 1/51th too fast
3637
* Corrected critical bug in the TCD0 millis option (the default on 1-series parts) (#1243)
3738
* Corrected bug sometimes encountered when using serial under atypical cases the causes of which remain mysterious), where it would complain about `__poll_dre_done`. (#1226)
3839
* Correct bug with Comparator (#1236)
@@ -41,6 +42,7 @@ The 2.6.11 release is pending, following that the next version will by 2.7.0.
4142
* Major Bugfix: Correct buffered PWM on all parts.
4243
* Major Bugfix: Correct PWM on non-default pins on all parts; digitalPinHasPWM() macro.
4344
* Fix bug with CCL clock source selection options.
45+
* Correct some ambiguities with the clock specification defines for RTC Millis using external clock; we don't support it,
4446
* Enhance documentation
4547
* Correct critical problem with timekeeping on parts with a TCD. (#1243)
4648
* Removed example of exactly the sort of boneheaded and strictly-worse code I rail against in a trivial part of Wire. While it was merely a bad example at the time it was written, it is now known to be a bad, dangerous example, because it featured code that demonstrated Strictly Worse access to registers, by loading a vport register to a pointer register, and using that - not only is it stupid and just a less-featureful PORT when accessed that way, avoiding pointer access to the I/O space (64 addresses, - 28 VPORTs and 4 GPIORs in low I/O and SP, RAMPZ (if applicable), CCP (the register used for `__PROTECTED_WRITE()`}), and of course the SREG) is necessary due to an erratum effecting all AVRxm parts. And indeed, none of those are registers that anyone should ever access using a pointer, even if it didn't wasn't safe against an incredibly scary bug - the low I/O is all about the bitwise instructions, which need both the register and bit compile time known. `VPORT_t*` is not a type you should ever declare - if you have had to declare it, *you get no benefit* from faster access to it (like you do if you use the compile-time known VPORT's amd access them without pointing. )

megaavr/boards.txt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -435,7 +435,7 @@ atxy7.menu.millis.timerb0.build.millistimer=B0
435435
atxy7.menu.millis.timerb1.build.millistimer=B1
436436
atxy7.menu.millis.rtc.build.millistimer=RTC
437437
atxy7.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
438-
atxy7.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
438+
atxy7.menu.millis.rtcxosc.build.millistimer=RTC_OSC
439439

440440
#----------------------------------------#
441441
# UPDI/RESET PIN CONFIGURATION #
@@ -1003,7 +1003,7 @@ atxy6.menu.millis.timerb0.build.millistimer=B0
10031003
atxy6.menu.millis.timerb1.build.millistimer=B1
10041004
atxy6.menu.millis.rtc.build.millistimer=RTC
10051005
atxy6.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
1006-
atxy6.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
1006+
atxy6.menu.millis.rtcxosc.build.millistimer=RTC_OSC
10071007

10081008
#----------------------------------------#
10091009
# UPDI/RESET PIN CONFIGURATION #
@@ -1542,7 +1542,7 @@ atxy4.menu.millis.timerb0.build.millistimer=B0
15421542
atxy4.menu.millis.timerb1.build.millistimer=B1
15431543
atxy4.menu.millis.rtc.build.millistimer=RTC
15441544
atxy4.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
1545-
atxy4.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
1545+
atxy4.menu.millis.rtcxosc.build.millistimer=RTC_OSC
15461546

15471547
#----------------------------------------#
15481548
# UPDI/RESET PIN CONFIGURATION #
@@ -2408,7 +2408,7 @@ microchip.menu.millis.timerb0.build.millistimer=B0
24082408
microchip.menu.millis.timerb1.build.millistimer=B1
24092409
microchip.menu.millis.rtc.build.millistimer=RTC
24102410
microchip.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
2411-
microchip.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
2411+
microchip.menu.millis.rtcxosc.build.millistimer=RTC_OSC
24122412

24132413
#----------------------------------------#
24142414
# UPDI/RESET PIN CONFIGURATION #
@@ -2832,7 +2832,7 @@ atxy7o.menu.millis.timerb0.build.millistimer=B0
28322832
atxy7o.menu.millis.timerb1.build.millistimer=B1
28332833
atxy7o.menu.millis.rtc.build.millistimer=RTC
28342834
atxy7o.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
2835-
atxy7o.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
2835+
atxy7o.menu.millis.rtcxosc.build.millistimer=RTC_OSC
28362836

28372837
#----------------------------------------#
28382838
# UPDI and RESET PIN configuration #
@@ -3277,7 +3277,7 @@ atx27o.menu.millis.timerb0.build.millistimer=B0
32773277
atx27o.menu.millis.timerb1.build.millistimer=B1
32783278
atx27o.menu.millis.rtc.build.millistimer=RTC
32793279
atx27o.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
3280-
atx27o.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
3280+
atx27o.menu.millis.rtcxosc.build.millistimer=RTC_OSC
32813281

32823282
#----------------------------------------#
32833283
# BODVOLTAGE #
@@ -3757,7 +3757,7 @@ atxy6o.menu.millis.timerb0.build.millistimer=B0
37573757
atxy6o.menu.millis.timerb1.build.millistimer=B1
37583758
atxy6o.menu.millis.rtc.build.millistimer=RTC
37593759
atxy6o.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
3760-
atxy6o.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
3760+
atxy6o.menu.millis.rtcxosc.build.millistimer=RTC_OSC
37613761

37623762
#----------------------------------------#
37633763
# BOD VOLTAGE #
@@ -4216,7 +4216,7 @@ atx26o.menu.millis.timerb0.build.millistimer=B0
42164216
atx26o.menu.millis.timerb1.build.millistimer=B1
42174217
atx26o.menu.millis.rtc.build.millistimer=RTC
42184218
atx26o.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
4219-
atx26o.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
4219+
atx26o.menu.millis.rtcxosc.build.millistimer=RTC_OSC
42204220

42214221
#----------------------------------------#
42224222
# BODVOLTAGE #
@@ -4694,7 +4694,7 @@ atxy4o.menu.millis.timerb0.build.millistimer=B0
46944694
atxy4o.menu.millis.timerb1.build.millistimer=B1
46954695
atxy4o.menu.millis.rtc.build.millistimer=RTC
46964696
atxy4o.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
4697-
atxy4o.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
4697+
atxy4o.menu.millis.rtcxosc.build.millistimer=RTC_OSC
46984698

46994699
#----------------------------------------#
47004700
# BOD VOLTAGE #
@@ -5110,7 +5110,7 @@ atx24o.menu.millis.timerb0.build.millistimer=B0
51105110
atx24o.menu.millis.timerb1.build.millistimer=B1
51115111
atx24o.menu.millis.rtc.build.millistimer=RTC
51125112
atx24o.menu.millis.rtcxtal.build.millistimer=RTC_XTAL
5113-
atx24o.menu.millis.rtcxosc.build.millistimer=RTC_XOSC
5113+
atx24o.menu.millis.rtcxosc.build.millistimer=RTC_OSC
51145114

51155115
#----------------------------------------#
51165116
# BODVOLTAGE #

megaavr/cores/megatinycore/core_devices.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1061,7 +1061,7 @@ has once worked for the same thing as meaning that thing */
10611061
#define TCB_CLKSEL_EVENT_gc (badCall("This processor does not support TCB count on event mode. Only Dx, Ex, and 2-series tiny support that"))
10621062
#endif
10631063
/* Make sure we error out quickly if told to use an RTC timing option that isn't available. */
1064-
#if (defined(MILLIS_USE_TIMERRTC_XTAL) || defined(MILLIS_USE_TIMERRTC_XOSC))
1064+
#if (defined(MILLIS_USE_TIMERRTC_XTAL) || defined(MILLIS_USE_TIMERRTC_OSC))
10651065
#if (MEGATINYCORE_SERIES == 0 || defined(__AVR_ATtinyxy2__))
10661066
#error "Only the tinyAVR 1-series and 2-series parts with at least 14 pins support external RTC timebase"
10671067
#endif

megaavr/libraries/tinyNeoPixel/tinyNeoPixel.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1115,7 +1115,7 @@ void tinyNeoPixel::show(uint16_t leds) {
11151115

11161116

11171117
interrupts();
1118-
#if (!defined(MILLIS_USE_TIMERNONE) && !defined(MILLIS_USE_TIMERRTC) && !defined(MILLIS_USE_TIMERRTC_XTAL) && !defined(MILLIS_USE_TIMERRTC_XOSC))
1118+
#if (defined(micros))
11191119
endTime = micros();
11201120
// Save EOD time for latch on next call
11211121
#endif

megaavr/libraries/tinyNeoPixel/tinyNeoPixel.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,7 @@ class tinyNeoPixel {
314314
*/
315315
static uint32_t gamma32(uint32_t x);
316316

317-
#if (!defined(MILLIS_USE_TIMERNONE) && !defined(MILLIS_USE_TIMERRTC) && !defined(MILLIS_USE_TIMERRTC_XTAL) && !defined(MILLIS_USE_TIMERRTC_XOSC))
317+
#if (defined(micros))
318318
inline bool canShow(void) { return (micros() - endTime) >= (uint32_t) latchTime; }
319319
#else
320320
inline bool canShow(void) {return 1;} // we don't have micros here;

megaavr/libraries/tinyNeoPixel_Static/tinyNeoPixel_Static.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1070,7 +1070,7 @@ void tinyNeoPixel::show(uint16_t leds) {
10701070

10711071

10721072
interrupts();
1073-
#if (!defined(MILLIS_USE_TIMERNONE) && !defined(MILLIS_USE_TIMERRTC) && !defined(MILLIS_USE_TIMERRTC_XTAL) && !defined(MILLIS_USE_TIMERRTC_XOSC))
1073+
#if (defined(micros))
10741074
endTime = micros();
10751075
// Save EOD time for latch on next call
10761076
#endif

megaavr/libraries/tinyNeoPixel_Static/tinyNeoPixel_Static.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ class tinyNeoPixel {
298298
*/
299299
static uint32_t gamma32(uint32_t x);
300300

301-
#if (!defined(MILLIS_USE_TIMERNONE) && !defined(MILLIS_USE_TIMERRTC) && !defined(MILLIS_USE_TIMERRTC_XTAL) && !defined(MILLIS_USE_TIMERRTC_XOSC))
301+
#if (defined(micros))
302302
inline bool canShow(void) { return (micros() - endTime) >= (uint32_t) latchTime; }
303303
#else
304304
inline bool canShow(void) {return 1;} // we don't have micros here;

0 commit comments

Comments
 (0)