1
0
Fork 0
Commit graph

322 commits

Author SHA1 Message Date
Daniel Thompson
10706a9704 wasp: stopwatch: Replace the stub with a "real" implementation
There are still some holes here. In particular the RTC resolution on
nRF devices (such as PineTime) is currently a full second (meaning
the centiseconds will always be zero. Nevertheless that isn't the apps
fault... as we can see when we run on the simulator.
2020-04-14 20:03:04 +01:00
Daniel Thompson
5fc802fb78 wasp: Manager: Push exceptions to the console as well as the crash app 2020-04-14 20:00:49 +01:00
Daniel Thompson
a77301ec64 fonts: Add sans36 (numerals only)
At 36pt this is already gobbling a fair bit of flash so, for now, we've
restricted this only numerals (and colon).
2020-04-14 20:00:04 +01:00
Daniel Thompson
64afea0d07 WIP: Introduce the quick_ring 2020-04-12 08:59:37 +01:00
Daniel Thompson
b649cd1b24 wasp: template: Implement optional application methods 2020-04-12 08:41:31 +01:00
Daniel Thompson
80d518b75b wasp: apps: Add shortcuts to all apps 2020-04-12 08:40:49 +01:00
Daniel Thompson
64a97fce58 wasp: testapp: Sort tests alphabetically 2020-04-12 08:40:11 +01:00
Daniel Thompson
50ecff29ef wasp: Automatically generate watch.py for PineTime
This should ensure that main.py is always up to date.
2020-04-11 21:12:18 +01:00
Daniel Thompson
7ef145cdc5 docs: Makefile: Try to avoid nuking the .git directory...
... if there is one.
2020-04-11 20:49:52 +01:00
Daniel Thompson
e165f13a9e docs: gnu-lgpl-v3.0: Fix some broken indentation. 2020-04-11 20:49:27 +01:00
Daniel Thompson
4c09add2d8 docs: Add text descriptions of icons
Having the raw hex strings makes the docs look really unclean. Fix this
by providing a special version of icons for the "sphinx" board.
2020-04-11 20:49:06 +01:00
Daniel Thompson
683c3497e0 docs: Fix warnings and add a few extra apps to the docs 2020-04-11 20:26:12 +01:00
Daniel Thompson
af1379806c wasp: simulator: Use Tab to replicate the physical button 2020-04-11 20:15:20 +01:00
Daniel Thompson
f68eb610c5 wasp: On-device crash reporting
If an application crashes let's report it on the device so it can be
distinguished from a hang (if nothing else it should mean we get better
bug reports).
2020-04-11 20:15:02 +01:00
Daniel Thompson
8cf9369efa tools: wasptool: Change characters used in the progress bar 2020-04-10 20:31:26 +01:00
Daniel Thompson
23368a659b wasp: apps: Add a new (super simple) settings app 2020-04-10 20:30:20 +01:00
Daniel Thompson
f734568ad2 wasp: draw565: Optimize the bit expansion blitter slightly. 2020-04-10 20:23:12 +01:00
Daniel Thompson
22ca8886c2 wasp: draw565: Automatic RLE format conversion
From here we can also bring colour to the launcher!
2020-04-10 20:22:51 +01:00
Daniel Thompson
906c313e49 tools: rle_encode: Optimize the 2-bit encoding slightly
This results in a image that is entirely ROMable.
2020-04-10 20:20:48 +01:00
Daniel Thompson
a1badfd95d wasp: draw565: Fix colors when burst filling a line. 2020-04-10 20:20:01 +01:00
Daniel Thompson
3bcda8d546 Merge branch 'master' of https://github.com/daniel-thompson/wasp-os 2020-04-10 14:32:22 +01:00
Daniel Thompson
74511a1e1c
Merge pull request #7 from salcedo/master
wasp: pinetime: Release SPI NOR from deep power-down
2020-04-10 14:32:14 +01:00
Daniel Thompson
fd64abe882 wasp: draw565: Optimize the 2-bit RLE drawing functions
There's a bunch of different changes here but there are only really three
big wins. The biggest win comes from restructuring the 2-bit RLE decode
loop to avoid the inner function (~20%) but the switch to 16-bit writes in
_fill() and adoption of quick_write (e.g. no CS toggling) are also
note worthy (and about 5% each).
2020-04-08 21:50:42 +01:00
Daniel Thompson
ac61d8a1c1 TODO: Update to make latest status. 2020-04-06 22:04:21 +01:00
Daniel Thompson
841fbef8a6 wasp: testapp: Add RLE drawing benchmarks. 2020-04-06 22:04:21 +01:00
Daniel Thompson
8ed80eeeba wasp: launcher: Experimental launcher implementation
It is not really the launcher itself that is immature. Rather that the
framework and UI concepts to move between applications isn't complete
yet.
2020-04-06 22:04:21 +01:00
Daniel Thompson
59bb70fa64 wasp: simulator: Optimize the drawing process
This makes per-pixel access more than double the performnace of a regular
pixelview (but at the expense of requiring numpy).
2020-04-06 22:04:21 +01:00
Daniel Thompson
a1a8f3f8a3 wasp: draw565: Add 2-bit RLE decoder 2020-04-06 22:04:21 +01:00
Daniel Thompson
1602180116 res: Switch from indexed to RGB mode
Indexed mode doesn't work with the new 2-bit encoder and adopting RGB mode
means we can compare the efficiency of the various possible encodings.
2020-04-06 22:04:21 +01:00
Daniel Thompson
02b92ff90d tools: wasptool: Add a progress bar to the BLE uploads 2020-04-06 22:04:21 +01:00
Daniel Thompson
e2234112ff tools: rle_encode: Add a new "2-bit" encoding mode. 2020-04-06 22:04:21 +01:00
Daniel Thompson
2b5ebcef72 wasp: widgets: Add a scrolling indicator
As we enrich the navigation options we will increasinly need to visualize
between apps where up/down will switch us between rings and there
up/down is needed to scroll through content.
2020-04-06 22:04:21 +01:00
Daniel Thompson
bb4e76d852 wasp: testapp: Add an option to force an exception
We will shortly be adding machinary to handle application errors more
gracefully. This is a useful way to force an application error!
2020-04-06 22:04:20 +01:00
Daniel Thompson
83cc56969e wasp: manager: make sleep() and background() callbacks optional
Making callbacks optional reduces pointless boilerplate in applications.
2020-04-06 22:04:20 +01:00
Daniel Thompson
6a6e393d1f wasp: vibrator: Better default for pulse
These defaults are good for giving quick UI feedback.
2020-04-06 22:04:20 +01:00
Daniel Thompson
b5e69aead3 wasp: Manager: Parameterize the keep awake timer
This might be a reasonable preference for the setings but, more importantly,
we can also set blank_after to very high values to ensure the watch doesn't
sleep during the voice over in videos!
2020-04-06 22:04:20 +01:00
Daniel Thompson
8c35282214 wasp: Rename Debounce to PinHandler
Debounce was a lousy name...
2020-04-06 22:04:20 +01:00
Daniel Thompson
40b2482165 wasp: simulator: Swap up/down and left/right
This gives the simulator a more natural feel since the "swipe left" action
usually means "more a screen to the right". This will probably make
testing games impossible but makes it much easier to navigate the menus.
2020-04-06 22:04:20 +01:00
Daniel Thompson
c593e1e9f9 wasp: draw565: Allow the drawing context to be reset
The main reason to reset the drawing context is so that it can be reset
before we call foreground() on an application.
2020-04-06 22:04:20 +01:00
Daniel Thompson
b2622b579d wasp: Add button presses to the event system.
Here the biggest changes are in the test application because we
refactor a number of the tests to make better use of the button.

Although applications may consume button events it does have a
default behavior which is to switch to the default application
(usually the clock).
2020-04-06 22:04:20 +01:00
Daniel Thompson
0cc7987689 apps: Remove unused support for effect animation
After a bit of testing I have not yet come up with a fast, visually
acceptable horizontal animated effect. Instead we simply reply on
screen blanking during the redraw... meaning there is no need for an
effect hint.
2020-04-06 22:04:20 +01:00
Daniel Thompson
d10f3dbc49 wasp: Get the terminology straight
As it turned out Direction was only a Direction because there were things
missing from the enumeration!
2020-04-06 22:04:20 +01:00
Daniel Thompson
0ac2321e82 wasp: Factor out the sleep/wake code
Pulling this out into a method allows it to be called by an application.
2020-04-06 22:04:20 +01:00
Daniel Thompson
4a7d9246d9
README: Add a link to the lastest wasp-os video 2020-04-06 09:28:57 +01:00
Daniel Thompson
afb9bd16b6 wasp: Add support for brightness caching and keep-awake signalling 2020-03-26 22:12:05 +00:00
Daniel Thompson
af33c7d79b wasp: Major documentation string improvements. 2020-03-26 21:46:10 +00:00
Daniel Thompson
a9413db5cf wasp: Move the constants into seperate container classes 2020-03-26 20:42:03 +00:00
Daniel Thompson
9545e60f62 README: Update to make latest source changes. 2020-03-22 15:42:37 +00:00
Daniel Thompson
9a95870785 Merge branch 'master' of https://github.com/daniel-thompson/wasp-os 2020-03-22 15:40:20 +00:00
Daniel Thompson
b9fe31241c Add licensing information for all wasp-os files. 2020-03-22 15:40:18 +00:00