Commit Graph

13 Commits

Author SHA1 Message Date
smesgr9000
e7e0da80b0 remove some duplicate printing code and declare more global text strings 2024-04-22 18:51:01 +02:00
Ancyker
e61ac414d8 Code optimization, cleanup, and stylization
* Reduced PROGMEM / DRAM usage slightly (Using defaults w/HW5: Before -> 214,668 bytes / 5,757 bytes; After -> 213,414 bytes / 5,751 bytes)
  * Optimized some menu options and calls
  * Added more string constants and implemented them where found.
* Fixed some stylization
  * Constants should always be uppercase.
  * Features should use the `ENABLE_<feature name>` format.
  * Options for features should use the `OPTION_<feature name>_<option name>` format.
  * Added ENUMs for more clarity and better type checking.
  * Moved some defines over to `constexpr` and `const` types. These are preferred over preprocessor constants when not intended for use with `#if` and other preprocessor language.
2024-03-02 11:26:35 -05:00
Ancyker
3468703a51 Added ability to use config file for some options.
A sample `config.txt` is in the SD folder. Currently the option is disabled by default and must be enabled.

Also:
* Eliminated the 5V spike at boot when VSELECT is installed and enabled. See discussion #906
* Fixed a warning in `MD.ino`
* Did some code cleanup, more cleanup to come.
2024-02-29 17:52:04 -05:00
sanni
1eac83ef79
Update OSCR.cpp 2023-11-21 09:55:10 +01:00
sanni
a06d9ee87b Update version 2023-11-20 12:19:32 +01:00
PsyK0p4T
4ddd867f87
Update OSCR.cpp
update app version
2023-09-25 16:16:07 +02:00
sanni
829408c655
Unify HW3 and HW5 menues 2023-07-19 15:13:06 +02:00
Ancyker
ff62f494eb Firmware Updates for RTC
Also minor edits to `setVoltage()`
2023-07-16 01:01:58 -04:00
sanni
95f4f44786
Update OSCR.cpp 2023-07-13 10:32:02 +02:00
Ancyker
2cf7f5dbe7 Cleanup voltage requests
The `setVoltage()` function should be called even when `ENABLE_VSELECT` is disabled because `ENABLE_3V3FIX` also uses it. There is no resource cost to do this as when both options are disabled the compiler will optimize this function out. This just "future proofs" the code so if that function ever does more it doesn't need updated everywhere. This applies to `setup_FlashVoltage()` as well.

The changes to OSCR.cpp are just for code formatting and additional comments to clarify this.
2023-06-26 15:25:54 -04:00
Ancyker
9fb7af3f5b Fix automatic voltage selection (fixes #818)
Fix for automatic voltage selection only working when 3V3FIX was enabled.
2023-06-26 14:59:27 -04:00
sanni
abe029eefc V12.6 Add MSX and Pokemon Mini modules (thx to skaman) 2023-06-25 14:09:17 +02:00
Ancyker
010b7e7525 Firmware Updater support, 3.3V Fix, and more
Lots of changes/additions.

Added:
* Firmware Updater support: Supports the Firmware Updater app (release to follow soon). Enabled by default, can be disabled in the config.
* 3.3V Fix (3V3FIX): Enable if you have stability issues when using 3.3V, works best with VSELECT. Disabled by default, can be enabled in the config.
* `DynamicClockSerial`: Class that extends and modifies HardwareSerial to be compatible with a dynamically changing clock speed. Used through the `ClockedSerial` object/variable.
* `OSCR.cpp` & `OSCR.h`: New files for storing globals. Only contains these new additions for now. More code cleanup to come.

Changed:
* Moved configuration flags to `Config.h` and documented them better.
* Removed `vselect()` function. Now uses `setVoltage()` with the params `VOLTS_SET_3V3` and `VOLTS_SET_5V`.

Known Issues:
* Rarely the LCD backlight turns white when using 3V3FIX. Resetting fixes it. Doesn't affect functionality/usability; it's just weird.
2023-03-29 21:05:01 -04:00