From 309ca727fc4cde74ebf8b8930307bee043018556 Mon Sep 17 00:00:00 2001 From: Sofia Date: Sat, 13 Sep 2025 13:30:15 +0300 Subject: [PATCH] Finish slideshow with larger images from program memory --- images/cat.qoi | Bin 23731 -> 8765 bytes images/mario.qoi | Bin 161 -> 0 bytes images/pikachu.qoi | Bin 241 -> 0 bytes images/press_btn.qoi | Bin 174 -> 1225 bytes images/rick.qoi | Bin 0 -> 2391 bytes images/steve.qoi | Bin 187 -> 0 bytes images/xp_desktop.qoi | Bin 0 -> 7360 bytes src/main.rs | 22 ++++++++++++++++++---- src/qoi.rs | 8 +++++++- 9 files changed, 25 insertions(+), 5 deletions(-) delete mode 100644 images/mario.qoi delete mode 100644 images/pikachu.qoi create mode 100644 images/rick.qoi delete mode 100644 images/steve.qoi create mode 100644 images/xp_desktop.qoi diff --git a/images/cat.qoi b/images/cat.qoi index 53b953460ffb9c767fa158aad01e6435f379731f..28cde1aa15dc9860056d3d684000218c10949e9f 100644 GIT binary patch literal 8765 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 G@c#j=Dp~gc literal 23731 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 Z$qxkYBqJR*rf58Is2U^6Z-0H_{{i6S&Cvh= diff --git a/images/mario.qoi b/images/mario.qoi deleted file mode 100644 index 296854ccf6ffca94d048adbfd6a6f4d827bb5995..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 161 zcmX9&!3_dI2*gDGR|Sy{{7}ZVVB$-!3rnyZVE0x_uo$y(h-3&eFc7xe^+H5T<&oAl zKPT$);^fixwvb`T=Ec$)*D&B^Wmh(JsN{|_ U=<_kLdNQ(#}D2NI=y6}MrMy2&` zMB+O*@ewuR!i`{17^TWq)P*AWhzl{GAS(EPL{T(9xu;qulM7vS@2z|OI_E!Mb>*9q zBAd;YD8G+v-hVzA7Y!y75)x2XSBLHGZTg!Re^m4r8ug#eIsp6$S?fk(QQbpsTCPO$PjaKZ=Tq5E~ndl9CckPfz3S?v7kBFC)V| z^oLfSot-7r)YLF~dV1WvfcpA+$f&KY)vLn7LQj+8g&2yK%kD!iCnqOhJuo#j<<@)c z?d`a_y7IIry;xgY!{y~=B4c-Vw?i>pE*B0C4t`a=ibCEm?ZH~kZ#_IaI}??SjSVtF zco9oWORvQVz1Pvv;h@(ZHl8^2aT6YoM^XzW3E0}&3Ixp0&r_R1Z*MQc!^0UlIXSq$ zzo%!Pr|{SDQfMeG=!hsXzSVK->+9k}zX~RMpL(ahW8;}UB1vxlJL^S5Lj(JNQ8sOb zbmsQlzo|#>0;;AH=-V zDViQzzrf}@h3xEXjEsypY4s`Q=H{jqnLo(n3H_-p>FevGRqX8Sur!y<6pqsS0WxlG zZqVG^%*f2lBnKNQgwfGa{)}3cFrr;E3?t?fXymLZg$XH%9<;T!;q>&B+SQaoK|uiy z4-ZjVT8g;1IB`CV);@Seb#*nPv9U4m3cJ?Fz`%fZMyr1>;?|7d^Z5d+^z`%~X%i8# znXI+^uW)>P{1`9X(hC8O(b?GvZ3n%G=jTt!Cm5})tVnVK2#XJ*B%EDeU!$t3iX}O} z#e>HDp=|A+PRoeb=9qFZK4l|_P+3{Y=O5Lqj6Bxw%Qn{OY|?8Y@khvtKIEA4e=QGBPZwrluyA zMBEPglD~30?E1j+^0Jf|!O#GUngAV8TSQAs3we>7o6CMlMLKF?a&nUFY&z%*?R#o! zs#8ZrJ%pGk$ji%5`Bx literal 174 zcmXTS&rD-rU=RUe7KYH@^#{~0n5vno9WqrrXnH{H01!iHpcn`qG*vrn3KRySgJ4;R z3W$i>5wHTVEL=NC!QVqb0&Ff&?hM#mi0hs@908OwReJ?=9SAT2 E0BG(#!~g&Q diff --git a/images/rick.qoi b/images/rick.qoi new file mode 100644 index 0000000000000000000000000000000000000000..de440b4cd8da828a3e8a1a1a6d45c3dea79fd74d GIT binary patch literal 2391 zcmWlbc~H{_7RTM0o!Q-XXFBb=)vmQpTf9Ikt5S-h1zT>^)(Rnjh+0TOREjk*L8>B< ziz^5@e!pLSx%10?7$iUvIh0FKDk4f-?crLnw%zS^oz<=NJ4@fp`}Z^N``-7xc~zCX z@&yYPyz*QAegURtf3a%JHp57JR7z_(%u%PBuxlJzTg2ga7`nN2bGBj)muBhNB*&;= zxMsOaWY>BrKd)JbsV{zY1gt7c7e4#^(W!oolu?H`q)>LxW5evw48Ef3FYFy~NLOw%E7CN$eO1#HBHp{4^3bWT9V)Et_!w^Qt zemaUfUq8Y4$PbjzDmY{Dmm6j&K^hH73WtV;fb?oPYpBJy&sA*^cv~vX1|tm%j&>8|s}r zV;Qb?jbJ!>y;2Qr>0HmuPL9t$Xq9 z-Cs$uwcFT%@qw?j0w=pOU$3g2!ARE-B2@>pwM>6#Cq@;gG3*UvEb^(ZrmdjSZeRy^ z5w=nrkx`O*k2V8i; z&KnrmPl%!Xa2NctD!7$W*lKGK;FUVZoqKS>;08Cp1Z6vOLDe=O>gZy!wFj-$J+ZW_ zNn<-^<Kn1^I~xePTiT2+osE zoV7%eyJZ`a*R3WW2FFoP{nKIfsGn>rgiuk-BjMc^dq*t!OM};XvwUWUh~caNhx( zvv|-KxJdC!x^kRJWUr4w^z4{v2!i+WkhXS-DTZXFm^r8_O2f&@@{rqd6IP80ZbK07 zrM|P&@(4!W0R%s;veO97Iv#M!X&O zq9IYApT_ffQGfK1#pP=7+fT``d2I~EK|#`5m^pjUeO%0pLGnQ^w#LV~E8rx|80wyI z7Ih@`XH!9GNOvFp4l{OaSb?O~FBn)^2JT^Oihl(iO$z!EX(ePRXYIs>Rez&p`unKK zehXdI0viEA=2mQ8vz)1c@r)J`-(WDir4To!9@LcvdWlg;c$G+r{VSDVe6z$*!S}Yn ztZ8eRHL2PK*q)Lg*`?>uc6_)c7T%9}&Sq4;y9patEb*OyjiAtfcF3jFGtktC0M)c5BmJ=W*7JwiBJ~pw30Ygx*NyJ^B56WSxJa}_0Rfa28m8X zdGjnnyZkrF=3);CKW#zO6>e`lTV&XPIt~wcZ?4cTr&fAp-uvKYY=o&i&j4dFq@^sB z=cT)jNeZ!Y*&pB4OKI6VbmIw|25Vv#TbfRy^!*%Ilx+ymF4x;W4)*74M`3cDy{s`Y zENqK_`_4M3SQ&ONQ-n{7cFof=H9~o2Od74(mQIuUYKz*XXKGSS>d-HsWX8p zt0};?RWEB_b7e4EB@3*CWoX=)Y`tZSLuu~Yo;N$BSigGl3t2j1fB81uaf^V_&R4k5 zBsYu9vk+HQ&Kt#TC(%|dLCT7y)Glj+t3sWI#Mht2d$9}E$yoRDGx#8DQ(#OhM*ONp zs`y>BY#(Qr?)aiL&T2DdRbb2dbs(Dv`ypR8Lbe{%@{c0t?`x49v+yjdEr~d)&iuVy wh#hHfIqs4o#Kk;MCel($D-`C_q=C1{;;_pt2JrUm2iZt6N%L>iZ}GeT15~7(x&QzG literal 0 HcmV?d00001 diff --git a/images/steve.qoi b/images/steve.qoi deleted file mode 100644 index aa16342014fd3bcd8cc1c1cde791c8d49ec08a90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187 zcmV;s07UGD;WN&d}gPpnpdQYk!Jq9h;xE*S-D^S{r>&_Q$33Q zw0mf-CjL`Ci2nTj{{FCsbN-xSM!HJ=w}N&4Yd|nn{=SKBf{}?Fsm-LK{x}g5{&zw( pY5qC}2>y{?LY6s^Nm2ee5fga+I|T)6{)JRLnq>e00000000D_JS~dUx diff --git a/images/xp_desktop.qoi b/images/xp_desktop.qoi new file mode 100644 index 0000000000000000000000000000000000000000..63685afd552932ec28fc31f097bacfce5db543c1 GIT binary patch literal 7360 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 tXC ! { let mut button = Button::from(pins.pd5.into_pull_up_input()); let mut idx = 0; - let images = [&Image::from(addr_of!(LARGE_CAT_UNSAFE))]; + let images = [ + Image::from(addr_of!(LARGE_CAT_UNSAFE)), + Image::from(addr_of!(XP_DESKTOP_UNSAFE)), + Image::from(addr_of!(RICK_UNSAFE)), + ]; let len = images.len(); + match draw_image( + &mut serial, + &Image::from(addr_of!(PRESS_BTN_UNSAFE)), + &mut display, + Position { x: 0, y: 0 }, + ) { + Ok(_) => ufmt::uwriteln!(serial, "Successfully read QOI").unwrap(), + Err(e) => ufmt::uwriteln!(serial, "Error: {:?}", e).unwrap(), + } + loop { if button.poll() { - idx = (idx + 1) % len; - match draw_image( &mut serial, &images[idx], @@ -94,6 +106,8 @@ fn main() -> ! { Ok(_) => ufmt::uwriteln!(serial, "Successfully read QOI").unwrap(), Err(e) => ufmt::uwriteln!(serial, "Error: {:?}", e).unwrap(), } + + idx = (idx + 1) % len; } } } diff --git a/src/qoi.rs b/src/qoi.rs index 4f10e61..4ee4832 100644 --- a/src/qoi.rs +++ b/src/qoi.rs @@ -16,7 +16,13 @@ use crate::{ // https://qoiformat.org/qoi-specification.pdf #[unsafe(link_section = ".progmem.data")] -pub static LARGE_CAT_UNSAFE: [u8; 23731] = *include_bytes!("../images/cat.qoi"); +pub static LARGE_CAT_UNSAFE: [u8; 8765] = *include_bytes!("../images/cat.qoi"); +#[unsafe(link_section = ".progmem.data")] +pub static XP_DESKTOP_UNSAFE: [u8; 7360] = *include_bytes!("../images/xp_desktop.qoi"); +#[unsafe(link_section = ".progmem.data")] +pub static RICK_UNSAFE: [u8; 2391] = *include_bytes!("../images/rick.qoi"); +#[unsafe(link_section = ".progmem.data")] +pub static PRESS_BTN_UNSAFE: [u8; 1225] = *include_bytes!("../images/press_btn.qoi"); pub struct Image { ptr: *const u8,