|
«One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali
|
|
|
|
|
Good luck!
"In testa che avete, Signor di Ceprano?"
-- Rigoletto
|
|
|
|
|
CPallini wrote: Good luck!
So far I can only get more, hope that I did hit the bottom.
|
|
|
|
|
"It could be worse, it could be raining..."
"In testa che avete, Signor di Ceprano?"
-- Rigoletto
|
|
|
|
|
While in between, I think I'd rather have rain than the current sunny 39°
|
|
|
|
|
39 °C in Germany? You liar!
"In testa che avete, Signor di Ceprano?"
-- Rigoletto
|
|
|
|
|
Hopefully it won't be that bad - I got made redundant twice in Q1 2020 - bleh .. still looking for 'the right job' ... playing more with iOT/Robotics at the moment, learning Rust, more Go
|
|
|
|
|
|
That's your mistake! You should have stick to VI!
|
|
|
|
|
If I could, you know I would.
"In testa che avete, Signor di Ceprano?"
-- Rigoletto
|
|
|
|
|
Oh, that's Bad.
|
|
|
|
|
My e-paper display drivers for IoT are now best of class.
I support simulated grayscale for black and white e-paper, and nearest color matching for color e-paper.
The grayscale simulation is done through dithering.
That way you can load JPEGs into the things and they look reasonable.
I don't support color dithering yet because every technique I've tried is far too expensive both in terms of space and time requirements.
Still, no other drivers for IoT that I'm aware of support these features.
This is super cool.
Real programmers use butterflies
|
|
|
|
|
You shouldn't kick s - they have long memories and will kick back. And they are bigger than you!
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
I'm reckless like that.
Real programmers use butterflies
|
|
|
|
|
Color is just a pigment of your imagination.
|
|
|
|
|
Cervantes' Don Quixote renamed (reimagined as a warhorse fit for his new identity) the worn-out horse he rode in his knight-errant adventures 'Rocinante' [1] ... today, that name came to mind as i wrestled with the DataGridView control whose endless quirks, and gargantuan [2] smorgasbord of settings, properties, and, events, induce vertigo, or worse ...
Each of the old WinForm controls, back in the neolithic-period wrappers around a COM core, is a little universe of idiosyncrasies only partially connected to its housemates by semantic consistencies.
Perhaps the flip-side of their virtual virtue is that their limitations catalyzed a thriving 3rd. party controls market ? Cue: "Just enough for the City" [^]. And, truth be told, the expensive suites from Telerik, et. al., also have very steep learning curves.
But, try as i might, i never succeeded in imagining myself transformed from code-drudge to knight
Usual disclaimer: cup is half-full.
~
[1] A complex pun [^] ... also the name of the Martian ship in 'The Expanse.' My enthusiasm for the Quixote has been magnified by Edith Grossman's modern translation (see what A.S. Byatt says about that: [^]). fyi: there is an audiobook version of Grossman's translation read by the talented George Guidall: [^].
[2] If you read the story of Gargantua's birth from the ear of Madam Gargamelle [^] ... after you throw-up, you may appreciate the depth of queasiness i imply here.
«One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali
|
|
|
|
|
BillWoodruff wrote: also the name of the Martian ship in 'The Expanse.'
Not Martian: "Legitimate Salvage"[^]
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
"In the novel series The Expanse and its TV series adaptation, the Rocinante is the new name given to a Martian gunship that becomes the primary setting for much of the series." Wikipedia
my favorite send-up of Wikipedia (scene from 'Jennifer's Body'): [^]
«One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali
|
|
|
|
|
Now just hold up a second. Of all the folks on CP, Bill is our resident literati (literatus?). Anyway, he's good with words.
If he omits an adverbBillWoodruff should have wrote: also the name of the originally Martian ship in 'The Expanse' we should give him the benefit of the doubt.
Software Zen: delete this;
|
|
|
|
|
If you ever wondered why your nose is located in the middle of your face, it's because it's your scenter.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
|
|
|
|
|
|
Is the processor just that slow, or do you think that profiling your code might uncover things that could be sped up to reach an acceptable level?
|
|
|
|
|
It's difficult to profile because it's cross compiled to run on an IoT device, where I don't have access to profiling.
I *can* do it but it involves setting up a lot of test code in order to use GFX from my PC.
Besides, I know where it's taking the time, and there's not much I can do about it.
The source machine is running at between 160MHz and 240MHz and the operation cannot be readily parallelized without using RAM i don't have.
Algorithmically, I've optimized it about as much as I can. The mixing plan for finding two dither colors is like O(log N) which isn't that bad. The problem is I have to do it for 200x200 pixels. And for my color display I have to do it twice per frame because it's a 3 color display organized in two monochrome planes - one white, and one red, and I don't have the RAM to store the frame between rendering the two planes.
On a superscalar PC running at GHz speeds this is no problem, and I *thought* it shouldn't be a problem even for this machine, but I guess I dramatically underestimated the time it takes this algorithm to run.
I actually have two algos. The first one is similar to the one used by photoshop (but different enough that it avoids patent infringement)
The second one is a much faster, simpler algorithm.
Color dithers are apparently not as easy as I thought.
Real programmers use butterflies
|
|
|
|
|
I knew nothing of dithering, so I just read about it. Interesting. Eventually you'll be a numerical analysis weenie.
It also means that what I was going to ask, namely whether you could cache frequently used results, seems to make no sense.
|
|
|
|
|
Yeah. My current plan is to stick with nearest matching color only for color displays. I'm going to try dithering once again on black and white since those algorithms run much faster.
Edit: Black and white dithering is fast fast fast, so I've added support for it to b&w e-paper displays. I don't do it for monochrome displays yet, and I'm not sure I will since they can update in real time and dithering interferes with that, but since you can turn it off maybe I'll add support for it. I only do nearest color matching for color e-ink displays. The color dithering as I said, was just too expensive.
Real programmers use butterflies
modified 18-Jun-21 1:35am.
|
|
|
|