X-Git-Url: https://fortfriendship.online/gitweb/gnargle.github.io.git/blobdiff_plain/0059ca824603380cd38733204a0412c4666b9a32..16f78556ddc2523dcbfc3cac44f31f0b84eab675:/projects/pipboy.html?ds=sidebyside diff --git a/projects/pipboy.html b/projects/pipboy.html index faf57af..adf613c 100644 --- a/projects/pipboy.html +++ b/projects/pipboy.html @@ -354,7 +354,7 @@ />

- So we want tio draw something to screen that isnt just text, + So we want tio draw something to screen that isn't just text, next. So I need to dive into some docs. More updates in a bit...

Code Updated. Check the github link to keep up. @@ -403,6 +403,102 @@ monochrome, and any dimming is done by dithering. I'm so glad I'm liveblogging this so everyone can see how stupid I am.

+

+ That's ok though! We're here to learn, and this actually makes + things relatively nice and easy. I'm sure there are monochrome + image -> uint arrays somewhere out there one the web already, + thisn is a very common format on embedded platforms, so I just + need to find one and run the icons for various perks etc through + them, and we can get one displaying. +

+

In fact, maybe that's what we do next. BRB...

+ Code Updated. Check the github link to keep up. +

+ Excellent, here's one, first hit on google. + image2cpp + Let's run the Cherchez La Femme image through it and upload it + to the machine aaaand... +

+ + A screenshot of the espruino terminal reading 'New interpreter error: LOW_MEMORY,MEMORY' + +

+ So, that's not good. In fairness, I am loading a 167x167 bitmap + into memory here, I suppose it makes sense that that wouldn't + exactly work. But it is going to make this more difficult. +

+

+ Next question then. What is a reasonable maximum array size we + can use here? Time to experiment. We'll start with half the + resolution, 83x83. +

+ + A photo of the pipboy screen showing garbage in a square. + +

+ OK, it's displaying, but that's clearly not right. Here's what + it's supposed to look like: +

+ + The Cherchez La Femme perk icon from New Vegas + +

+ That's ok though, there's options on the converter for just this + predicament. This was the default (Horizontal - 1bpp), and + Vertical - 1bpp landed similar results, so let's move on from + that converter and use the one hosted on + Espruino's website + instead. Man I'm really proving myself soooo smart today. +

+

+ Using the right tool for the job gives us this! And it's even + full resolution! Huzzah! +

+ + A photo of the pipboy screen showing the Cherchez La Femme icon. + +

+ OK, that's real, genuine progress. We can encode images and + display them, which we need for the perks screen. They are + pretty big though, so I think next order of business is going to + be keeping those strings in text files and loading them in when + we need to. Back to the docs... Although I might leave it there + tonight, my back hurts. No wonder Zuck had to be 19 to do this + live. +

+
+

Loading from files

+

21/03/2025

+
+

Evening! Let's get right back to work.

+

+ Yesterday, we figured out how to correctly convert and display + an image on the screen. Today,we're going to figure out storing + those images, loading them at runtime, and switching to another + image later. +

+

+ So, first up: storing and loading the image. This is gonna need + me to look up how the espruino fs library works. BRB... +