Version 0.0.6 - Alpha
What's Changed
This release is the same as v0.0.5 with one small fix- the display buffers have been aligned to avoid a 1-pixel offset in MicroPython. (Previously m_new
was guaranteeing uint32_t alignment)
Fixed in v0.0.6
- SDK: Force memory aligned display buffers. by @Gadgetoid in #33
New MicroPython API changes
- start() - enters a blocking main loop, calls MICROPY_EVENT_POLL_HOOK to keep subsystems running
- quit() - signals
start()
to break - Add
start()
to examples in place ofwhile True: tick()
- Fix launcher crashing when buttons pressed during startup
- Add "quit" menu item to launcher, to unblock for Thonny
- Reset "tick" on "quit" so applications launched from the launcher don't start at weird tick offsets
start()
enters a blocking main loop that dispatches update/draw calls to the Python functions.
When quit()
is called, start()
will drop out of the loop, clean up the cached update/draw pointers and reset "tick".
Your scripts should now look like this:
def update(tick):
pass
def draw(tick):
pass
start()
# You can put stuff here that runs after you `quit()`
tick()
and _reset()
are included for posterity, but these may both be deprecated since _reset()
happens implicitly when quit()
is called.
Stats & GC
- Fix calculation of "tick" us stats
- Above also fixes FPS counter
- Fix tick being double-incremented, and fix launcher to account for this
- Run the C equivalent of
gc.collect()
in the main loop - Try and sleep the is_flipping() loop a little... my PicoSystem is getting mighty warm!
OC/Buffer
- Overclock early to avoid an on-init change of clock doing bad things
- Give the
SCREEN
buffer back to C exclusively, MPY reduces thegc_heap
to accommodate this change - see: pimoroni/micropython@f826b9e
Full Changelog 0.0.5: v0.0.4...v0.0.5
Full Changelog 0.0.6: v0.0.5...v0.0.6