kilograham / rp2040-doom

Fully-featured Doom port for the Raspberry Pi RP2040 microcontroller
GNU General Public License v2.0
596 stars 79 forks source link

Modernize #17

Open arkadijs opened 8 months ago

arkadijs commented 8 months ago
  1. Allocate user IRQ to avoid conflict / hard fault when other parts are changed and/or SDK features included.
  2. Use *.cmake from SDK 1.5.1.
  3. Allow for in-tree board definitions.
  4. A distinctive CMake project name for IDE.
  5. Include host/usbh.h instead of tusb.h where the former could be ifdef-ed out depending on the config. I believe this is a proper semantic / intention.
  6. Overclocking now preserves correct peripherals clock (SPI).
  7. Invoke irq_set_pending() every core1 loop. While invoking once is sufficient when all is going well, I see better stability when things go wrong. It's a cheap insurance that has no bad side effects.
  8. I've experimented with sleep_ms() between vreg_set_voltage() and set_sys_clock_khz() and it did not resolve cold-start issue. TODO removed.