26 Commits

Author SHA1 Message Date
Gordon Williams
6faf39cd74 Bangle.js1: After updating compiler, we need to add NOPs into display code to slow it down 2024-04-29 17:16:17 +01:00
Gordon Williams
9b30f17227 Added jsvObjectGetChildIfExists to avoid the jsvObjectGetChild(... ,0) case - saves ~300b of flash space 2023-04-25 10:59:34 +01:00
Gordon Williams
d70352b6b9 Graphics: drawImage now honours arraybuffer offsets 2021-10-13 10:18:30 +01:00
Gordon Williams
e601885015 Support for Bangle.js 2 emulator 2021-10-04 21:14:20 +01:00
Gordon Williams
b0249aa436 Graphics: Allow 'scroll' method to only scroll inside clipRect 2021-05-27 13:26:35 +01:00
Gordon Williams
4f47cdc9bc Merge jsvStringIteratorGetChar + jsvStringIteratorNext into jsvStringIteratorGetCharAndNext (fix #1816) 2020-05-12 13:16:03 +01:00
Gordon Williams
d54373100c Allow rendering direct from flash memory and other image types (slightly hurts performance for big memory areas) 2020-05-05 16:10:01 +01:00
Gordon Williams
6e7d5b780d Bangle.js: drawImage - add fast path for non-transparent 1 or 8bpp image blit (fix #1794) 2020-05-05 11:00:45 +01:00
Gordon Williams
d29a7cdf09 Enable Graphics arraybuffer optimisations on all but low-end devices
Add specific Graphics optimisations for 1 and 8 bit rendering
2020-05-04 16:59:46 +01:00
Gordon Williams
278abac468 Bangle.js: Big speed improvements for 120x120 and 80x80 gfx modes 2020-05-04 16:20:03 +01:00
Gordon Williams
ca6e473146 Bangle.js: Tweak LCD gamma curves to provide better gradients on new watches (fix #1758) 2020-03-03 10:03:13 +00:00
Gordon Williams
9d5b6f9339 Add Graphics.setClipRect to allow draw ops to be restricted to a certain area
Bangle.js: add 'null' LCD mode to stop apps from drawing
            Bangle.js: add Bangle.getLCDMode
2019-12-04 17:00:05 +00:00
Gordon Williams
dbb70b667a Emulate the LCD driver at a lower level for emscripten (include the 320px high buffer) 2019-12-04 13:48:20 +00:00
Gordon Williams
3751dc8453 Add terminal and lowres modes to emulator, and attempt to remove as many emscripten-related hacks as possible so we follow Bangle.js closely 2019-12-03 11:01:36 +00:00
Gordon Williams
cf2e0727d7 Bangle.js: New 120x120 and 80x80 high speed buffered modes (could be faster) 2019-12-02 17:33:56 +00:00
Gordon Williams
e78ba062ca Fix Bangle.js fillrect when screen is scrolled such that it goes past the end of memory and starts again at the beginning 2019-10-31 15:42:05 +00:00
Gordon Williams
c2e04272b5 Add code for fast data transfer to LCD 2019-10-25 15:19:02 +01:00
Gordon Williams
759f41ffa2 add fast path for scaled image blit 2019-10-23 18:10:09 +01:00
Gordon Williams
041827718b Allow drawString with a filled background, which allows flickerless writing on non-double-buffered screens
fillRect now takes a color
2019-10-23 17:02:29 +01:00
Gordon Williams
0dfc922100 Just use ints when passing coordinates around. Using short just added about 1k of extra code! 2019-10-23 16:24:39 +01:00
Gordon Williams
2306783bbf Banglification 2019-10-09 16:47:46 +01:00
Gordon Williams
5275fd65ec fix scrolling 2019-10-03 12:21:36 +01:00
Gordon Williams
c9168d8d24 Add menu,tweaks, fix GPS sign, pad bootloader down for watch 2019-10-03 09:41:18 +01:00
Gordon Williams
ad1fb3ea59 Allow drawImage to render images rotated and scaled 2019-10-02 11:32:42 +01:00
Gordon Williams
899f1f07a5 minor hackstrap tweaks 2019-10-01 16:54:28 +01:00
Gordon Williams
d334d0a92a Reliable LCD on F18 2019-10-01 10:29:45 +01:00