diff options
| author | Pinapelz <yukais@pinapelz.com> | 2025-12-31 22:11:55 -0800 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2025-12-31 22:11:55 -0800 |
| commit | e55140f547edfa9ef04459763bbdea0fac8c5965 (patch) | |
| tree | 838b4967872ca94bf576cdcfc2971dfc791f085e /micro.pinapelz.moe/posts | |
| parent | 8a4627255b3e0caa81e522ec139b22f866bb753c (diff) | |
09 dbox seats
Diffstat (limited to 'micro.pinapelz.moe/posts')
12 files changed, 638 insertions, 95 deletions
diff --git a/micro.pinapelz.moe/posts/2025-12-01-hello-world/index.html b/micro.pinapelz.moe/posts/2025-12-01-hello-world/index.html index de1a8dc..779d6dd 100644 --- a/micro.pinapelz.moe/posts/2025-12-01-hello-world/index.html +++ b/micro.pinapelz.moe/posts/2025-12-01-hello-world/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-01T20:11:57-08:00"> Monday, December 1, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-01-hello-world/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-01-hello-world/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -303,7 +303,7 @@ AtProto allows you to host a <code>PDS (Personal Data Server)</code> which store </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-01-hello-world\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-01-hello-world\/"; async function loadMentions() { const url = @@ -493,7 +493,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-02-china-town-fair/index.html b/micro.pinapelz.moe/posts/2025-12-02-china-town-fair/index.html index c0c42b8..d19c277 100644 --- a/micro.pinapelz.moe/posts/2025-12-02-china-town-fair/index.html +++ b/micro.pinapelz.moe/posts/2025-12-02-china-town-fair/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-02T00:22:32-08:00"> Tuesday, December 2, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-02-china-town-fair/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -308,7 +308,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-02-china-town-fair\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-02-china-town-fair\/"; async function loadMentions() { const url = @@ -498,7 +498,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/index.html b/micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/index.html index c6d1874..d2d503f 100644 --- a/micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/index.html +++ b/micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-02T19:45:01-08:00"> Tuesday, December 2, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-02-power-bank-recall/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -301,7 +301,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-02-power-bank-recall\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-02-power-bank-recall\/"; async function loadMentions() { const url = @@ -491,7 +491,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/index.html b/micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/index.html index 1a8e735..1d1e1a0 100644 --- a/micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/index.html +++ b/micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-03T19:38:52-08:00"> Wednesday, December 3, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-03-04-yt-music-rewind/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -294,7 +294,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-03-04-yt-music-rewind\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-03-04-yt-music-rewind\/"; async function loadMentions() { const url = @@ -484,7 +484,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/index.html b/micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/index.html index e790aae..137cf9a 100644 --- a/micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/index.html +++ b/micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-04T23:19:29-08:00"> Thursday, December 4, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-04-procon2-hid-tool/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -436,7 +436,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-04-procon2-hid-tool\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-04-procon2-hid-tool\/"; async function loadMentions() { const url = @@ -626,7 +626,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/index.html b/micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/index.html index e82cb61..f566c15 100644 --- a/micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/index.html +++ b/micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-06T22:33:23-08:00"> Saturday, December 6, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-06-first-sdvx-18/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -103,7 +103,7 @@ </span></div><div class="e-content"> <p>Cleared my first 18 difficulty chart in -<a href="http://localhost:1313//tags/sdvx" class="p-category">#sdvx</a> +<a href="https://micro.pinapelz.moe//tags/sdvx" class="p-category">#sdvx</a> </p> <p>Albeit its not a very difficult one, but I think I’m finally starting to chip away at the 17-18 difficulty wall. <figure><img src="/posts/2025-12-06-first-sdvx-18/18.webp" @@ -298,7 +298,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-06-first-sdvx-18\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-06-first-sdvx-18\/"; async function loadMentions() { const url = @@ -488,7 +488,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/index.html b/micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/index.html index 8f2200f..8fcdded 100644 --- a/micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/index.html +++ b/micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-18T21:38:23-08:00"> Thursday, December 18, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-18-07-arcade-monsters-sd/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -149,7 +149,7 @@ -<a href="http://localhost:1313//tags/arcade" class="p-category">#arcade</a> +<a href="https://micro.pinapelz.moe//tags/arcade" class="p-category">#arcade</a> </div> @@ -339,7 +339,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-18-07-arcade-monsters-sd\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-18-07-arcade-monsters-sd\/"; async function loadMentions() { const url = @@ -529,7 +529,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/index.html b/micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/index.html index 7351ba8..7db18f5 100644 --- a/micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/index.html +++ b/micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -78,7 +78,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> </div> @@ -88,7 +88,7 @@ <time class="dt-published" datetime="2025-12-19T22:15:50-08:00"> Friday, December 19, 2025 </time> - - <a href="http://localhost:1313/posts/2025-12-19-08-ffxiv-patch-7-4/" class="u-url u-uid" >Permalink</a> + - <a href="https://micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/" class="u-url u-uid" >Permalink</a> </b></div> <div class="article-meta"><span class="categories"> Categories: @@ -132,7 +132,7 @@ </ul> -<a href="http://localhost:1313//tags/ffxiv" class="p-category">#ffxiv</a> +<a href="https://micro.pinapelz.moe//tags/ffxiv" class="p-category">#ffxiv</a> </div> @@ -322,7 +322,7 @@ </style> <script> -const PAGE_URL = "http:\/\/localhost:1313\/posts\/2025-12-19-08-ffxiv-patch-7-4\/"; +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-19-08-ffxiv-patch-7-4\/"; async function loadMentions() { const url = @@ -512,7 +512,7 @@ loadMentions(); <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/index.html b/micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/index.html new file mode 100644 index 0000000..f2578f3 --- /dev/null +++ b/micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/index.html @@ -0,0 +1,497 @@ +<!DOCTYPE html> +<html lang="en-us"> +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <style type=text/css>body{font-family:monospace;}</style> + <title>DBOX Movie Seats | micro.pinapelz.moe</title> + + <meta name="author" content="map[avatar:https://files.catbox.moe/5r1pue.jpg banner:https://files.pinapelz.com/pso2ngs-2232-collab.png bio:yo! and he's more than a cover he's a quilt<br/> + General arcade rhythm game enjoyer (SDVX, IIDX, CHUNITHM)<br/> + Mostly play MMOs (FFXIV, OSRS), JRPGs, and VNs (anything with a good story)<br/> + I Watch only slice of life (and Bandori)<br/> + Arch Linux + Hyprland user (btw)<br/> + Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere! email:yukais@pinapelz.com name:Pinapelz]"> + <link rel="stylesheet" href="/css/style.css"> + + + + <link rel="me" href="https://github.com/pinapelz" /> + <link rel="me" href="mailto:yukais@pinapelz.com" /> + <link rel="me" href="https://sakurajima.social/@pinapelz" /> + <link rel="me" href="https://bsky.app/profile/pinapelz.moe" /><link rel="pgpkey" href="https://pinapelz.com/Yukai_Shan.asc"> + <link + rel="authorization_endpoint" + href="https://indieauth.com/auth" + /> + <link + rel="token_endpoint" + href="https://tokens.indieauth.com/token" + /> + <link rel="webmention" href="https://webmention.io/micro.pinapelz.moe/webmention" /> + + + +</head> +<body> + <header> + <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> + <div style="align-self:flex-start;"> + ==============<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> + ============== + </div> + <div style="align-self:center;">check it out. I'm in the house like carpet</div> + </div> + <nav style="margin: 1rem auto;"> + + + <a href="/posts/"><b>Posts</b></a>. + + <a href="/categories/"><b>Categories</b></a>. + + <a href="/tags/"><b>Tags</b></a>. + + + </nav> +</header> + + + + <main> + <article class="h-entry"> + <a class="u-bridgy-fed" href="https://fed.brid.gy/" hidden="from-humans"></a> + <h1 class="p-name">DBOX Movie Seats</h1> + <div hidden><div class="h-card p-author bio-card" style="text-align:center;"> + + <div class="banner" style="margin-bottom: 1rem; position: relative;"> + <img class="u-featured" src="https://files.pinapelz.com/pso2ngs-2232-collab.png" alt="Banner" style="width: 100%; max-width: 400px; height: auto; border-radius: 8px; opacity: 0.6;"> + <img class="u-photo avatar" src="https://files.catbox.moe/5r1pue.jpg" alt="Pinapelz's avatar" style="position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);"> + </div> + + <div class="bio"> + <p class="p-note">yo! and he's more than a cover he's a quilt<br/> + General arcade rhythm game enjoyer (SDVX, IIDX, CHUNITHM)<br/> + Mostly play MMOs (FFXIV, OSRS), JRPGs, and VNs (anything with a good story)<br/> + I Watch only slice of life (and Bandori)<br/> + Arch Linux + Hyprland user (btw)<br/> + Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> + </div> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> +</div> +<hr/> +</div> + + + <div><b> + <time class="dt-published" datetime="2025-12-31T22:03:51-08:00"> + Wednesday, December 31, 2025 + </time> + - <a href="https://micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/" class="u-url u-uid" >Permalink</a> + </b></div> + <div class="article-meta"><span class="categories"> + Categories: + + <a href="/categories/default">default</a> + + </span>--<span class="tags"> + Tags: + + #<a href="/tags/default" class="p-category">default</a> + + </span></div><div class="e-content"> + <p>There’s a thing here in Canada where certain theaters have these special seats that rumble and move in motion with whats happening on screen.</p> +<p>I recently saw the new Avatar (Fire and Ash) in one of these seats. It wasn’t a bad experience but given the markup, I don’t think its worth it:</p> +<ul> +<li>First it is fun (sometimes). For example when they were flying through the air, the seat would tilt in the motion of them flying. Or when there was an explosion/gunfire, the seat would rumble</li> +<li>However, for me I think they overdid it at times, literately the seat would move and rumble for the smallest things. So it was kind of like a constant thing throughout the whole film. For me its a bit annoying</li> +<li>For the $10-15 extra (I think I paid a bit more cause the movie was also in 3D), I’d much rather just go to a theater that has the big comfy recliner seats</li> +<li>I think for the right movie (maybe something heavy on action or horror) this could be a solid purchase if its a movie you’re really looking forward to</li> +<li>Or I also know that some people see movies multiple times, so maybe this can be a good option for a 2nd viewing?</li> +</ul> +<p>Generally, though… I think I’ll live without them.</p> + + </div> + + + + + + + <section id="comments" class="webmentions"> + <h2 class="wm-title">Webmentions</h2> + <div id="mentions" class="wm-list">Loading…</div> +</section> + +<style> +.webmentions { + margin-top: 2.5rem; + padding-top: 1rem; + border-top: 2px dashed var(--hrcolor); +} + +.webmentions .wm-title { + color: var(--titlecolor); + margin-bottom: 1rem; +} + +.wm-list { + display: flex; + flex-direction: column; + gap: 1.5rem; +} + + +.wm-reactions { + margin-bottom: 1.5rem; +} + +.wm-reaction-group { + margin-bottom: 1rem; +} + +.wm-reaction-title { + font-size: 1.1rem; + font-weight: 600; + color: var(--titlecolor); + margin-bottom: 0.5rem; + text-transform: uppercase; + letter-spacing: 0.5px; +} + +.wm-avatar-grid { + display: flex; + flex-wrap: wrap; + gap: 4px; + align-items: center; +} + +.wm-avatar { + position: relative; + display: inline-block; +} + +.wm-avatar img { + width: 40px; + height: 40px; + border-radius: 50%; + border: 2px solid var(--hrcolor); + transition: transform 0.2s ease, box-shadow 0.2s ease; +} + +.wm-avatar:hover img { + transform: scale(1.1); + box-shadow: 0 4px 12px rgba(255, 140, 200, 0.4); +} + +.wm-avatar-tooltip { + position: absolute; + bottom: 120%; + left: 50%; + transform: translateX(-50%); + background: var(--blockquotecolor); + color: var(--titlecolor); + padding: 4px 8px; + border-radius: 4px; + font-size: 0.8rem; + white-space: nowrap; + opacity: 0; + pointer-events: none; + transition: opacity 0.2s ease; + z-index: 10; + border: 1px solid var(--hrcolor); +} + +.wm-avatar:hover .wm-avatar-tooltip { + opacity: 1; +} + + +.wm-comments-header { + font-size: 1.1rem; + font-weight: 600; + color: var(--titlecolor); + margin-bottom: 0.5rem; + margin-top: 1rem; + text-transform: uppercase; + letter-spacing: 0.5px; +} + + +.wm-regular { + display: flex; + flex-direction: column; + gap: 0.75rem; +} + +.wm { + display: flex; + gap: 0.6rem; + padding: 0.6rem 0.75rem; + border-radius: 10px; + background: var(--alertbgcolor); + border: 1px solid var(--hrcolor); + box-shadow: 0 0 6px rgba(255, 180, 220, 0.22); +} + +.wm-author img { + width: 32px; + height: 32px; + border-radius: 50%; + box-shadow: 0 0 4px rgba(255, 140, 200, 0.35); +} + +.wm-body { + flex: 1; + font-size: 0.9rem; +} + +.wm-author-name a { + font-weight: 600; + color: var(--linkcolor); +} + +.wm-type { + font-size: 0.8rem; + margin-top: 2px; + color: var(--titlecolor); +} + +.wm-content { + margin-top: 4px; + padding: 6px 8px; + font-size: 0.9rem; + background: var(--blockquotecolor); + border-left: 3px solid var(--hrcolor); + border-radius: 6px; +} + +.wm-meta { + margin-top: 3px; + font-size: 0.75rem; + opacity: 0.7; +} + +.wm-meta a { + color: var(--linkcolor); +} + + +@media (max-width: 600px) { + .wm-avatar img { + width: 32px; + height: 32px; + } + + .wm-avatar-grid { + gap: 3px; + } + + .wm-reaction-title { + font-size: 1rem; + } + + .wm-comments-header { + font-size: 1rem; + } +} +</style> + +<script> +const PAGE_URL = "https:\/\/micro.pinapelz.moe\/posts\/2025-12-31-09-dbox-review\/"; + +async function loadMentions() { + const url = + "https://webmention.io/api/mentions.jf2?domain=micro.pinapelz.moe&token=hdjQAqlZwgJmSuPSiU8h8w"; + + const res = await fetch(url); + const data = await res.json(); + + const container = document.getElementById("mentions"); + container.innerHTML = ""; + + + const mentions = data.children.filter(m => { + const t = m["wm-target"]; + const inReply = m["in-reply-to"]; + const likeOf = m["like-of"]; + const repostOf = m["repost-of"]; + const mentionOf = m["mention-of"]; + + return ( + t === PAGE_URL || + inReply === PAGE_URL || + likeOf === PAGE_URL || + repostOf === PAGE_URL || + mentionOf === PAGE_URL + ); + }); + + if (!mentions.length) { + container.innerHTML = "<p>No webmentions yet.</p>"; + return; + } + + + const likes = mentions.filter(m => m["wm-property"] === "like-of"); + const reposts = mentions.filter(m => m["wm-property"] === "repost-of"); + const replies = mentions.filter(m => m["wm-property"] === "in-reply-to"); + const regularMentions = mentions.filter(m => + !["like-of", "repost-of", "in-reply-to"].includes(m["wm-property"]) + ); + + + const reactionsDiv = document.createElement("div"); + reactionsDiv.className = "wm-reactions"; + + + if (reposts.length > 0) { + const repostGroup = document.createElement("div"); + repostGroup.className = "wm-reaction-group"; + + const repostTitle = document.createElement("div"); + repostTitle.className = "wm-reaction-title"; + repostTitle.textContent = `${reposts.length} Repost${reposts.length !== 1 ? 's' : ''}`; + + const repostGrid = document.createElement("div"); + repostGrid.className = "wm-avatar-grid"; + + reposts.forEach(mention => { + const author = mention.author || {}; + const avatarDiv = document.createElement("div"); + avatarDiv.className = "wm-avatar"; + + avatarDiv.innerHTML = ` + <a href="${author.url || "#"}" target="_blank"> + <img src="${author.photo || ""}" alt="${author.name || 'Unknown'}" /> + </a> + <div class="wm-avatar-tooltip">${author.name || 'Unknown'}</div> + `; + + repostGrid.appendChild(avatarDiv); + }); + + repostGroup.appendChild(repostTitle); + repostGroup.appendChild(repostGrid); + reactionsDiv.appendChild(repostGroup); + } + + + if (likes.length > 0) { + const likeGroup = document.createElement("div"); + likeGroup.className = "wm-reaction-group"; + + const likeTitle = document.createElement("div"); + likeTitle.className = "wm-reaction-title"; + likeTitle.textContent = `${likes.length} Like${likes.length !== 1 ? 's' : ''}`; + + const likeGrid = document.createElement("div"); + likeGrid.className = "wm-avatar-grid"; + + likes.forEach(mention => { + const author = mention.author || {}; + const avatarDiv = document.createElement("div"); + avatarDiv.className = "wm-avatar"; + + avatarDiv.innerHTML = ` + <a href="${author.url || "#"}" target="_blank"> + <img src="${author.photo || ""}" alt="${author.name || 'Unknown'}" /> + </a> + <div class="wm-avatar-tooltip">${author.name || 'Unknown'}</div> + `; + + likeGrid.appendChild(avatarDiv); + }); + + likeGroup.appendChild(likeTitle); + likeGroup.appendChild(likeGrid); + reactionsDiv.appendChild(likeGroup); + } + + + if (reactionsDiv.children.length > 0) { + container.appendChild(reactionsDiv); + } + + + const regularMentionsToShow = [...replies, ...regularMentions]; + + if (regularMentionsToShow.length > 0) { + + const commentsHeader = document.createElement("div"); + commentsHeader.className = "wm-comments-header"; + commentsHeader.textContent = "Comments"; + container.appendChild(commentsHeader); + + const regularDiv = document.createElement("div"); + regularDiv.className = "wm-regular"; + + regularMentionsToShow.forEach(m => { + const div = document.createElement("div"); + div.className = "wm"; + + const author = m.author || {}; + const content = m.content || {}; + const type = + m["wm-property"] === "in-reply-to" ? "replied đź’¬" : + "mentioned this"; + + div.innerHTML = ` + <div class="wm-author"> + <img src="${author.photo || ""}" alt="${author.name || 'Unknown'}"> + </div> + + <div class="wm-body"> + <div class="wm-author-name"> + <a href="${author.url || "#"}" target="_blank"> + ${author.name || "Unknown"} + </a> + </div> + + <div class="wm-type">${type}</div> + + ${content.text ? `<div class="wm-content">${content.text}</div>` : ""} + + <div class="wm-meta"> + <a href="${m.url}" target="_blank">source</a> • + ${m["wm-received"] + ? new Date(m["wm-received"]).toLocaleString() + : ""} + </div> + </div> + `; + regularDiv.appendChild(div); + }); + + container.appendChild(regularDiv); + } + + + if (container.children.length === 0) { + container.innerHTML = "<p>No webmentions yet.</p>"; + } +} + +loadMentions(); +</script> + + </article> + </main> + + <hr /> +<footer> + <p> + <a href="https://github.com/pinapelz"><b>Github</b></a>. + <a href="https://pinapelz.moe"><b>pinapelz.moe</b></a>. + </p> + + + + <p style="text-align: center" class="copyright"> + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. + </p> +</footer> + +</body> +</html> diff --git a/micro.pinapelz.moe/posts/index.html b/micro.pinapelz.moe/posts/index.html index abc0ca4..55777f9 100644 --- a/micro.pinapelz.moe/posts/index.html +++ b/micro.pinapelz.moe/posts/index.html @@ -1,6 +1,6 @@ <!DOCTYPE html> <html lang="en-us"> -<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script> +<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -39,7 +39,7 @@ <div style="display:flex;flex-flow:row wrap;justify-content:space-between"> <div style="align-self:flex-start;"> ==============<br> - == <a href="http://localhost:1313/">Pinapelz</a> ==<br> + == <a href="https://micro.pinapelz.moe/">Pinapelz</a> ==<br> ============== </div> <div style="align-self:center;">check it out. I'm in the house like carpet</div> @@ -111,7 +111,46 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> +</div> +<hr/> + + </div> + <div class="post-title"> + <time class="date dt-published" datetime="2025-12-31T22:03:51-08:00">31</time>: + + <a href="https://micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/" class="u-url p-name title"> + DBOX Movie Seats + </a> + </div> + </li> + + + + + + + + + + <li class="h-entry"> + <div hidden> + <div class="h-card p-author bio-card" style="text-align:center;"> + + <div class="banner" style="margin-bottom: 1rem; position: relative;"> + <img class="u-featured" src="https://files.pinapelz.com/pso2ngs-2232-collab.png" alt="Banner" style="width: 100%; max-width: 400px; height: auto; border-radius: 8px; opacity: 0.6;"> + <img class="u-photo avatar" src="https://files.catbox.moe/5r1pue.jpg" alt="Pinapelz's avatar" style="position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);"> + </div> + + <div class="bio"> + <p class="p-note">yo! and he's more than a cover he's a quilt<br/> + General arcade rhythm game enjoyer (SDVX, IIDX, CHUNITHM)<br/> + Mostly play MMOs (FFXIV, OSRS), JRPGs, and VNs (anything with a good story)<br/> + I Watch only slice of life (and Bandori)<br/> + Arch Linux + Hyprland user (btw)<br/> + Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> + </div> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -119,7 +158,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-19T22:15:50-08:00">19</time>: - <a href="http://localhost:1313/posts/2025-12-19-08-ffxiv-patch-7-4/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/" class="u-url p-name title"> Playlog: FFXIV Dawntrail Patch 7.4 Thoughts (spoilers) </a> </div> @@ -150,7 +189,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -158,7 +197,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-18T21:38:23-08:00">18</time>: - <a href="http://localhost:1313/posts/2025-12-18-07-arcade-monsters-sd/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/" class="u-url p-name title"> Arcade Monsters </a> </div> @@ -189,7 +228,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -197,7 +236,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-06T22:33:23-08:00">06</time>: - <a href="http://localhost:1313/posts/2025-12-06-first-sdvx-18/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/" class="u-url p-name title"> First MXM 18 Cleared! </a> </div> @@ -228,7 +267,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -236,7 +275,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-04T23:19:29-08:00">04</time>: - <a href="http://localhost:1313/posts/2025-12-04-procon2-hid-tool/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/" class="u-url p-name title"> Enable HID Mode on Nintendo Pro Controller 2 </a> </div> @@ -267,7 +306,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -275,7 +314,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-03T19:38:52-08:00">03</time>: - <a href="http://localhost:1313/posts/2025-12-03-04-yt-music-rewind/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/" class="u-url p-name title"> YouTube Music Recap 2025 </a> </div> @@ -306,7 +345,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -314,7 +353,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-02T19:45:01-08:00">02</time>: - <a href="http://localhost:1313/posts/2025-12-02-power-bank-recall/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/" class="u-url p-name title"> INIU Power Bank Gets Recall </a> </div> @@ -345,7 +384,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -353,7 +392,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-02T00:22:32-08:00">02</time>: - <a href="http://localhost:1313/posts/2025-12-02-china-town-fair/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/" class="u-url p-name title"> China Town Fair </a> </div> @@ -384,7 +423,7 @@ Arch Linux + Hyprland user (btw)<br/> Hi from the <a href="https://indieweb.org/">indieweb</a>, if you are seeing me bridged elsewhere!</p> </div> - <p class="bio-name"><a href="http://localhost:1313/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> + <p class="bio-name"><a href="https://micro.pinapelz.moe/" rel="me" class="p-nickname p-name u-url">Pinapelz</a></p> </div> <hr/> @@ -392,7 +431,7 @@ <div class="post-title"> <time class="date dt-published" datetime="2025-12-01T20:11:57-08:00">01</time>: - <a href="http://localhost:1313/posts/2025-12-01-hello-world/" class="u-url p-name title"> + <a href="https://micro.pinapelz.moe/posts/2025-12-01-hello-world/" class="u-url p-name title"> Hello World - Why This </a> </div> @@ -423,7 +462,7 @@ <p style="text-align: center" class="copyright"> - © <a href="http://localhost:1313/"><b>micro.pinapelz.moe</b></a>. + © <a href="https://micro.pinapelz.moe/"><b>micro.pinapelz.moe</b></a>. </p> </footer> diff --git a/micro.pinapelz.moe/posts/index.xml b/micro.pinapelz.moe/posts/index.xml index d122e52..5ef4720 100644 --- a/micro.pinapelz.moe/posts/index.xml +++ b/micro.pinapelz.moe/posts/index.xml @@ -2,68 +2,75 @@ <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> <channel> <title>Posts on micro.pinapelz.moe</title> - <link>http://localhost:1313/posts/</link> + <link>https://micro.pinapelz.moe/posts/</link> <description>Recent content in Posts on micro.pinapelz.moe</description> <generator>Hugo</generator> <language>en-us</language> <managingEditor>yukais@pinapelz.com (Pinapelz)</managingEditor> <webMaster>yukais@pinapelz.com (Pinapelz)</webMaster> - <lastBuildDate>Fri, 19 Dec 2025 22:15:50 -0800</lastBuildDate> - <atom:link href="http://localhost:1313/posts/index.xml" rel="self" type="application/rss+xml" /> + <lastBuildDate>Wed, 31 Dec 2025 22:03:51 -0800</lastBuildDate> + <atom:link href="https://micro.pinapelz.moe/posts/index.xml" rel="self" type="application/rss+xml" /> + <item> + <title>DBOX Movie Seats</title> + <link>https://micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/</link> + <pubDate>Wed, 31 Dec 2025 22:03:51 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> + <guid>https://micro.pinapelz.moe/posts/2025-12-31-09-dbox-review/</guid> + <description><p>There&rsquo;s a thing here in Canada where certain theaters have these special seats that rumble and move in motion with whats happening on screen.</p>
<p>I recently saw the new Avatar (Fire and Ash) in one of these seats. It wasn&rsquo;t a bad experience but given the markup, I don&rsquo;t think its worth it:</p>
<ul>
<li>First it is fun (sometimes). For example when they were flying through the air, the seat would tilt in the motion of them flying. Or when there was an explosion/gunfire, the seat would rumble</li>
<li>However, for me I think they overdid it at times, literately the seat would move and rumble for the smallest things. So it was kind of like a constant thing throughout the whole film. For me its a bit annoying</li>
<li>For the $10-15 extra (I think I paid a bit more cause the movie was also in 3D), I&rsquo;d much rather just go to a theater that has the big comfy recliner seats</li>
<li>I think for the right movie (maybe something heavy on action or horror) this could be a solid purchase if its a movie you&rsquo;re really looking forward to</li>
<li>Or I also know that some people see movies multiple times, so maybe this can be a good option for a 2nd viewing?</li>
</ul>
<p>Generally, though&hellip; I think I&rsquo;ll live without them.</p></description> + </item> <item> <title>Playlog: FFXIV Dawntrail Patch 7.4 Thoughts (spoilers)</title> - <link>http://localhost:1313/posts/2025-12-19-08-ffxiv-patch-7-4/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/</link> <pubDate>Fri, 19 Dec 2025 22:15:50 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-19-08-ffxiv-patch-7-4/</guid> - <description><p><em>This is primarily focused on the content of the patch, not so much the features they&rsquo;ve added.</em></p>
<h1 id="story">Story</h1>
<ul>
<li>Mistwake Dungeon was a good difficulty. Although I&rsquo;m not a fan of the electricity star AOEs, very hard to read for no apparent reason. Please just stick with the old one.</li>
<li>Cutscene quality def. got better. As in animations and uniqueness.</li>
<li>Love the look and feel (Treno). There&rsquo;s a ton of good spots for &ldquo;gpose-ing&rdquo;. Music is nice too.</li>
<li>Seriously Krile? You parents were the ones who dropped you into the Source. I don&rsquo;t think they&rsquo;d care if you wanted to stay in the Source (just make up your mind) -&gt; well glad that got sorted out</li>
<li>&ldquo;Hell on Rails&rdquo; Trial (Doomtrain) is very nicely designed. Its got some nice unique mechanics, the &ldquo;sucking&rdquo; mechanic definetly trips you up the first time because the distance to move back + timing has been tuned so that you need to pre-position for it.</li>
<li>The transition from inside the engine to outside was really cool!!! This is probably one of my top normal trials now.</li>
<li>The instance battle was well done too. The roleplaying part was on point, and when it was finally time to fight a real boss you get to play as yourelf (I think this is the best flow). Love the idea using the spriggan to avoid Behemoth&rsquo;s meteor.</li>
<li>Cool so we just get to keep the key. If this were any bit realistic, we&rsquo;ve surely learned that no one this powerful should be allowed to keep the key on themsleves 24/7. Because surely the WoL being the most powerful being will never run rogue with a interdimensional travel capable tool. Then again, seeing how stuff gets stolen all the time in the story&hellip; Well I guess it can go either way.</li>
<li>I&rsquo;m guessing this key is gonna be how the writers justify being able to travel to new worlds for post-Zodiark/Hydaelyn story. Its fine I guess, but a little disappointing it isn&rsquo;t something more unique.</li>
<li>And what do you know. Ascians. I hope we get something unqiue for 8.0&hellip; I guess thats fine but please lets not have it just be SHB all over again.</li>
</ul>
<h1 id="raid">Raid</h1>
<ul>
<li>&ldquo;Feral Fandom&rdquo; -&gt; Yep thats FF14 NA playerbase for you.</li>
<li>Heavyweight 1 (Vamp Fatale) Raid was cool and unique, but a bit too flashy imo. That Half Moon is needlessly large, wish we&rsquo;d stop with mechanics that are designed to trick people even when read correctly.</li>
<li>Heavyweight 2 (Xtremes) I take it back, this is the one with the blinding effects MY EYES. Fire and water one after another. This is a pretty hard normal fight actually (the first time you run it blind). Really punishing for bad AOE placement positions since you can effectively be cut off from the team.</li>
<li>Holy wow these cutscenes are in serious need of voice acting. Its a good story but so dry and awkward without it.</li>
<li>Heavyweight 3 (Tyrant). Really? Behemoth again, double dipping from the instance battle. There&rsquo;s so many other cool FF monsters. I like the arena, it fits the guy well, all about history of the Arcadion/tradition. Fight is underwhelming and too easy imo, apart from 1 single trick mechanic that can cause a wipe&hellip;</li>
<li>Heavyweight 4 (Lindwurm). EVERYTHING BURNS. This fight was honestly too easy, zero deaths everything can be read. 2nd phase was underhelming.</li>
<li>Overall the story here while not as in depth and relevant to the story as Endwalker raids, still had a nice little twist at the end I def did not expect. Enjoyed it!</li>
</ul>
<h1 id="misc">Misc</h1>
<ul>
<li>The new Frontline map is &ldquo;dangerous&rdquo;. Overall the new capturing point system is far better than a non-interruptable interact like in Onsal Hakir. The snowman and aurora events are also good, and I think they come in right when they&rsquo;re needed too (to spice things up/allow for a turning point).</li>
<li>The map design however is far too complex, all these bridges and everywhere and invisible walls. It does add a lot of chokepoints but also makes it difficult to navigate from point A -&gt; B (but partially I guess this is done cause the map does feel smaller than Onsal).</li>
</ul>


<a href="http://localhost:1313//tags/ffxiv" class="p-category">#ffxiv</a></description> + <guid>https://micro.pinapelz.moe/posts/2025-12-19-08-ffxiv-patch-7-4/</guid> + <description><p><em>This is primarily focused on the content of the patch, not so much the features they&rsquo;ve added.</em></p>
<h1 id="story">Story</h1>
<ul>
<li>Mistwake Dungeon was a good difficulty. Although I&rsquo;m not a fan of the electricity star AOEs, very hard to read for no apparent reason. Please just stick with the old one.</li>
<li>Cutscene quality def. got better. As in animations and uniqueness.</li>
<li>Love the look and feel (Treno). There&rsquo;s a ton of good spots for &ldquo;gpose-ing&rdquo;. Music is nice too.</li>
<li>Seriously Krile? You parents were the ones who dropped you into the Source. I don&rsquo;t think they&rsquo;d care if you wanted to stay in the Source (just make up your mind) -&gt; well glad that got sorted out</li>
<li>&ldquo;Hell on Rails&rdquo; Trial (Doomtrain) is very nicely designed. Its got some nice unique mechanics, the &ldquo;sucking&rdquo; mechanic definetly trips you up the first time because the distance to move back + timing has been tuned so that you need to pre-position for it.</li>
<li>The transition from inside the engine to outside was really cool!!! This is probably one of my top normal trials now.</li>
<li>The instance battle was well done too. The roleplaying part was on point, and when it was finally time to fight a real boss you get to play as yourelf (I think this is the best flow). Love the idea using the spriggan to avoid Behemoth&rsquo;s meteor.</li>
<li>Cool so we just get to keep the key. If this were any bit realistic, we&rsquo;ve surely learned that no one this powerful should be allowed to keep the key on themsleves 24/7. Because surely the WoL being the most powerful being will never run rogue with a interdimensional travel capable tool. Then again, seeing how stuff gets stolen all the time in the story&hellip; Well I guess it can go either way.</li>
<li>I&rsquo;m guessing this key is gonna be how the writers justify being able to travel to new worlds for post-Zodiark/Hydaelyn story. Its fine I guess, but a little disappointing it isn&rsquo;t something more unique.</li>
<li>And what do you know. Ascians. I hope we get something unqiue for 8.0&hellip; I guess thats fine but please lets not have it just be SHB all over again.</li>
</ul>
<h1 id="raid">Raid</h1>
<ul>
<li>&ldquo;Feral Fandom&rdquo; -&gt; Yep thats FF14 NA playerbase for you.</li>
<li>Heavyweight 1 (Vamp Fatale) Raid was cool and unique, but a bit too flashy imo. That Half Moon is needlessly large, wish we&rsquo;d stop with mechanics that are designed to trick people even when read correctly.</li>
<li>Heavyweight 2 (Xtremes) I take it back, this is the one with the blinding effects MY EYES. Fire and water one after another. This is a pretty hard normal fight actually (the first time you run it blind). Really punishing for bad AOE placement positions since you can effectively be cut off from the team.</li>
<li>Holy wow these cutscenes are in serious need of voice acting. Its a good story but so dry and awkward without it.</li>
<li>Heavyweight 3 (Tyrant). Really? Behemoth again, double dipping from the instance battle. There&rsquo;s so many other cool FF monsters. I like the arena, it fits the guy well, all about history of the Arcadion/tradition. Fight is underwhelming and too easy imo, apart from 1 single trick mechanic that can cause a wipe&hellip;</li>
<li>Heavyweight 4 (Lindwurm). EVERYTHING BURNS. This fight was honestly too easy, zero deaths everything can be read. 2nd phase was underhelming.</li>
<li>Overall the story here while not as in depth and relevant to the story as Endwalker raids, still had a nice little twist at the end I def did not expect. Enjoyed it!</li>
</ul>
<h1 id="misc">Misc</h1>
<ul>
<li>The new Frontline map is &ldquo;dangerous&rdquo;. Overall the new capturing point system is far better than a non-interruptable interact like in Onsal Hakir. The snowman and aurora events are also good, and I think they come in right when they&rsquo;re needed too (to spice things up/allow for a turning point).</li>
<li>The map design however is far too complex, all these bridges and everywhere and invisible walls. It does add a lot of chokepoints but also makes it difficult to navigate from point A -&gt; B (but partially I guess this is done cause the map does feel smaller than Onsal).</li>
</ul>


<a href="https://micro.pinapelz.moe//tags/ffxiv" class="p-category">#ffxiv</a></description> </item> <item> <title>Arcade Monsters</title> - <link>http://localhost:1313/posts/2025-12-18-07-arcade-monsters-sd/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/</link> <pubDate>Thu, 18 Dec 2025 21:38:23 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-18-07-arcade-monsters-sd/</guid> + <guid>https://micro.pinapelz.moe/posts/2025-12-18-07-arcade-monsters-sd/</guid> <description><p>If you live in Socal and are also into arcade gaming (both retro and modern), one of the great weekend day-trips I&rsquo;ve found is taking the Pacific Surfliner train down to San Diego.</p>
<h1 id="getting-there">Getting There</h1>
<p>There are a number of departures in the morning, and while not as fast as a car when there&rsquo;s no traffic, you can save your energy and do other stuff on the train. The timetable also works nicely since you can pretty much get there around opening if you want to beat the crowds.</p></description> </item> <item> <title>First MXM 18 Cleared!</title> - <link>http://localhost:1313/posts/2025-12-06-first-sdvx-18/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/</link> <pubDate>Sat, 06 Dec 2025 22:33:23 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-06-first-sdvx-18/</guid> - <description><p>Cleared my first 18 difficulty chart in 

<a href="http://localhost:1313//tags/sdvx" class="p-category">#sdvx</a>
</p>
<p>Albeit its not a very difficult one, but I think I&rsquo;m finally starting to chip away at the 17-18 difficulty wall.
<figure><img src="http://localhost:1313/posts/2025-12-06-first-sdvx-18/18.webp"
 alt="Sound Voltex Enchant 6 Clear" width="500">
</figure>
</p></description> + <guid>https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/</guid> + <description><p>Cleared my first 18 difficulty chart in 

<a href="https://micro.pinapelz.moe//tags/sdvx" class="p-category">#sdvx</a>
</p>
<p>Albeit its not a very difficult one, but I think I&rsquo;m finally starting to chip away at the 17-18 difficulty wall.
<figure><img src="https://micro.pinapelz.moe/posts/2025-12-06-first-sdvx-18/18.webp"
 alt="Sound Voltex Enchant 6 Clear" width="500">
</figure>
</p></description> </item> <item> <title>Enable HID Mode on Nintendo Pro Controller 2</title> - <link>http://localhost:1313/posts/2025-12-04-procon2-hid-tool/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/</link> <pubDate>Thu, 04 Dec 2025 23:19:29 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-04-procon2-hid-tool/</guid> + <guid>https://micro.pinapelz.moe/posts/2025-12-04-procon2-hid-tool/</guid> <description><p>Switch 2 Pro Controller is very comfy in my hands, but unfortunately it didn&rsquo;t work out of box on PC (Linux) for me like it&rsquo;s predacessor. Until there&rsquo;s actual better driver support for this thing in the kernel (or Valve does something), here&rsquo;s a hacky Python script to initialize HID-mode on the controller</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-python" data-lang="python"><span style="display:flex;"><span><span style="color:#75715e"># I only tested this script on Linux w/ Steam but in theory it shoud work on Windows?</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> usb.core <span style="color:#75715e"># install pyusb first: pip install pyusb</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> usb.util
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> time
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> sys
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>VENDOR_ID <span style="color:#f92672">=</span> <span style="color:#ae81ff">0x057E</span>
</span></span><span style="display:flex;"><span>PRODUCT_IDS <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span> <span style="color:#ae81ff">0x2066</span>: <span style="color:#e6db74">&#34;Joy-Con (L)&#34;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#ae81ff">0x2067</span>: <span style="color:#e6db74">&#34;Joy-Con (R)&#34;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#ae81ff">0x2069</span>: <span style="color:#e6db74">&#34;Pro Controller&#34;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#ae81ff">0x2073</span>: <span style="color:#e6db74">&#34;GCN Controller&#34;</span>
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>USB_INTERFACE_NUMBER <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>INIT_COMMAND_0x03 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x03</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x0d</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x08</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>])
</span></span><span style="display:flex;"><span>UNKNOWN_COMMAND_0x07 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x07</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>UNKNOWN_COMMAND_0x16 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x16</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>REQUEST_CONTROLLER_MAC <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x15</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x0e</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x02</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>])
</span></span><span style="display:flex;"><span>LTK_REQUEST <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x15</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x02</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x11</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>, <span style="color:#ae81ff">0xFF</span>])
</span></span><span style="display:flex;"><span>UNKNOWN_COMMAND_0x15_ARG_0x03 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x15</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x03</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>UNKNOWN_COMMAND_0x09 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x09</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x07</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x08</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>IMU_COMMAND_0x02 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x0c</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x02</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x04</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x27</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>OUT_UNKNOWN_COMMAND_0x11 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x11</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x03</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>UNKNOWN_COMMAND_0x0A <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x0a</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x08</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x14</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0xff</span>, <span style="color:#ae81ff">0x35</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x46</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>IMU_COMMAND_0x04 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x0c</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x04</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x04</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x27</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>ENABLE_HAPTICS <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x03</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x0a</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x04</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x09</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>OUT_UNKNOWN_COMMAND_0x10 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x10</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>OUT_UNKNOWN_COMMAND_0x01 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x0c</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>OUT_UNKNOWN_COMMAND_0x03 <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x03</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x01</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>OUT_UNKNOWN_COMMAND_0x0A_ALT <span style="color:#f92672">=</span> bytes([<span style="color:#ae81ff">0x0a</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x02</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x04</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x03</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>])
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">def</span> <span style="color:#a6e22e">send_usb_data</span>(ep_out, ep_in, data, description<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;&#34;</span>):
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> ep_out<span style="color:#f92672">.</span>write(data)
</span></span><span style="display:flex;"><span> time<span style="color:#f92672">.</span>sleep(<span style="color:#ae81ff">0.01</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> response <span style="color:#f92672">=</span> ep_in<span style="color:#f92672">.</span>read(<span style="color:#ae81ff">32</span>, timeout<span style="color:#f92672">=</span><span style="color:#ae81ff">100</span>)
</span></span><span style="display:flex;"><span> hex_resp <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34; &#34;</span><span style="color:#f92672">.</span>join([<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;</span><span style="color:#e6db74">{</span>x<span style="color:#e6db74">:</span><span style="color:#e6db74">02x</span><span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span> <span style="color:#66d9ef">for</span> x <span style="color:#f92672">in</span> response])
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;[</span><span style="color:#e6db74">{</span>description<span style="color:#e6db74">}</span><span style="color:#e6db74">] Response: </span><span style="color:#e6db74">{</span>hex_resp<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> usb<span style="color:#f92672">.</span>core<span style="color:#f92672">.</span>USBError <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">if</span> e<span style="color:#f92672">.</span>errno <span style="color:#f92672">==</span> <span style="color:#ae81ff">110</span>:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;[</span><span style="color:#e6db74">{</span>description<span style="color:#e6db74">}</span><span style="color:#e6db74">] No response (Timeout)&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">else</span>:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;[</span><span style="color:#e6db74">{</span>description<span style="color:#e6db74">}</span><span style="color:#e6db74">] Read Error: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> usb<span style="color:#f92672">.</span>core<span style="color:#f92672">.</span>USBError <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;[</span><span style="color:#e6db74">{</span>description<span style="color:#e6db74">}</span><span style="color:#e6db74">] Write Error: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">raise</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">def</span> <span style="color:#a6e22e">set_player_leds</span>(ep_out, ep_in, led_mask):
</span></span><span style="display:flex;"><span> command <span style="color:#f92672">=</span> [
</span></span><span style="display:flex;"><span> <span style="color:#ae81ff">0x09</span>, <span style="color:#ae81ff">0x91</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x07</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x08</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>,
</span></span><span style="display:flex;"><span> led_mask,
</span></span><span style="display:flex;"><span> <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>, <span style="color:#ae81ff">0x00</span>
</span></span><span style="display:flex;"><span> ]
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, bytes(command), <span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Set LED Mask: 0x</span><span style="color:#e6db74">{</span>led_mask<span style="color:#e6db74">:</span><span style="color:#e6db74">02x</span><span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">def</span> <span style="color:#a6e22e">connect_usb</span>():
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">&#34;Searching for Nintendo Switch Controllers...&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">def</span> <span style="color:#a6e22e">match_device</span>(dev):
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">return</span> dev<span style="color:#f92672">.</span>idVendor <span style="color:#f92672">==</span> VENDOR_ID <span style="color:#f92672">and</span> dev<span style="color:#f92672">.</span>idProduct <span style="color:#f92672">in</span> PRODUCT_IDS
</span></span><span style="display:flex;"><span> dev <span style="color:#f92672">=</span> usb<span style="color:#f92672">.</span>core<span style="color:#f92672">.</span>find(custom_match<span style="color:#f92672">=</span>match_device)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">if</span> dev <span style="color:#f92672">is</span> <span style="color:#66d9ef">None</span>:
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">raise</span> <span style="color:#a6e22e">ValueError</span>(<span style="color:#e6db74">&#34;Device not found&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> product_name <span style="color:#f92672">=</span> PRODUCT_IDS<span style="color:#f92672">.</span>get(dev<span style="color:#f92672">.</span>idProduct, <span style="color:#e6db74">&#34;Unknown Device&#34;</span>)
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Found </span><span style="color:#e6db74">{</span>product_name<span style="color:#e6db74">}</span><span style="color:#e6db74"> (ID: </span><span style="color:#e6db74">{</span>dev<span style="color:#f92672">.</span>idProduct<span style="color:#e6db74">:</span><span style="color:#e6db74">04x</span><span style="color:#e6db74">}</span><span style="color:#e6db74">)&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">if</span> dev<span style="color:#f92672">.</span>is_kernel_driver_active(USB_INTERFACE_NUMBER):
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">&#34;Detaching kernel driver...&#34;</span>)
</span></span><span style="display:flex;"><span> dev<span style="color:#f92672">.</span>detach_kernel_driver(USB_INTERFACE_NUMBER)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> usb<span style="color:#f92672">.</span>core<span style="color:#f92672">.</span>USBError <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> sys<span style="color:#f92672">.</span>exit(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Could not detach kernel driver: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> dev<span style="color:#f92672">.</span>set_configuration()
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">&#34;Configuration set.&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> usb<span style="color:#f92672">.</span>core<span style="color:#f92672">.</span>USBError <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Error setting configuration: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>claim_interface(dev, USB_INTERFACE_NUMBER)
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Interface </span><span style="color:#e6db74">{</span>USB_INTERFACE_NUMBER<span style="color:#e6db74">}</span><span style="color:#e6db74"> claimed.&#34;</span>)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> usb<span style="color:#f92672">.</span>core<span style="color:#f92672">.</span>USBError <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> sys<span style="color:#f92672">.</span>exit(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Could not claim interface: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span> cfg <span style="color:#f92672">=</span> dev<span style="color:#f92672">.</span>get_active_configuration()
</span></span><span style="display:flex;"><span> intf <span style="color:#f92672">=</span> cfg[(USB_INTERFACE_NUMBER,<span style="color:#ae81ff">0</span>)]
</span></span><span style="display:flex;"><span> ep_out <span style="color:#f92672">=</span> usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>find_descriptor(
</span></span><span style="display:flex;"><span> intf,
</span></span><span style="display:flex;"><span> custom_match <span style="color:#f92672">=</span> <span style="color:#66d9ef">lambda</span> e: usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>endpoint_direction(e<span style="color:#f92672">.</span>bEndpointAddress) <span style="color:#f92672">==</span> usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>ENDPOINT_OUT)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> ep_in <span style="color:#f92672">=</span> usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>find_descriptor(
</span></span><span style="display:flex;"><span> intf,
</span></span><span style="display:flex;"><span> custom_match <span style="color:#f92672">=</span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">lambda</span> e: usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>endpoint_direction(e<span style="color:#f92672">.</span>bEndpointAddress) <span style="color:#f92672">==</span> usb<span style="color:#f92672">.</span>util<span style="color:#f92672">.</span>ENDPOINT_IN
</span></span><span style="display:flex;"><span> )
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">if</span> <span style="color:#f92672">not</span> ep_out:
</span></span><span style="display:flex;"><span> sys<span style="color:#f92672">.</span>exit(<span style="color:#e6db74">&#34;Could not find OUT endpoint&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Found Endpoint OUT: 0x</span><span style="color:#e6db74">{</span>ep_out<span style="color:#f92672">.</span>bEndpointAddress<span style="color:#e6db74">:</span><span style="color:#e6db74">02x</span><span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">&#34;Starting Initialization Sequence...&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, INIT_COMMAND_0x03, <span style="color:#e6db74">&#34;Init 0x03&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x07, <span style="color:#e6db74">&#34;Unknown 0x07&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x16, <span style="color:#e6db74">&#34;Unknown 0x16&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, REQUEST_CONTROLLER_MAC, <span style="color:#e6db74">&#34;Req MAC&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, LTK_REQUEST, <span style="color:#e6db74">&#34;Req LTK&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x15_ARG_0x03, <span style="color:#e6db74">&#34;Unknown 0x15&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x09, <span style="color:#e6db74">&#34;Unknown 0x09&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, IMU_COMMAND_0x02, <span style="color:#e6db74">&#34;IMU 0x02&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x11, <span style="color:#e6db74">&#34;OUT Unknown 0x11&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, UNKNOWN_COMMAND_0x0A, <span style="color:#e6db74">&#34;Unknown 0x0A&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, IMU_COMMAND_0x04, <span style="color:#e6db74">&#34;IMU 0x04&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, ENABLE_HAPTICS, <span style="color:#e6db74">&#34;Enable Haptics&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x10, <span style="color:#e6db74">&#34;OUT Unknown 0x10&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x01, <span style="color:#e6db74">&#34;OUT Unknown 0x01&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x03, <span style="color:#e6db74">&#34;OUT Unknown 0x03&#34;</span>)
</span></span><span style="display:flex;"><span> send_usb_data(ep_out, ep_in, OUT_UNKNOWN_COMMAND_0x0A_ALT, <span style="color:#e6db74">&#34;OUT Unknown 0x0A Alt&#34;</span>)
</span></span><span style="display:flex;"><span> set_player_leds(ep_out, ep_in, <span style="color:#ae81ff">0x0F</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">&#34;Controller initialization sequence complete! All LEDs should be on.&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> <span style="color:#a6e22e">Exception</span> <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Error during sequence: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span> __name__ <span style="color:#f92672">==</span> <span style="color:#e6db74">&#34;__main__&#34;</span>:
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">try</span>:
</span></span><span style="display:flex;"><span> connect_usb()
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> <span style="color:#a6e22e">ValueError</span> <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> print(e)
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">except</span> <span style="color:#a6e22e">Exception</span> <span style="color:#66d9ef">as</span> e:
</span></span><span style="display:flex;"><span> print(<span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;Unexpected error: </span><span style="color:#e6db74">{</span>e<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>)
</span></span></code></pre></div><p><strong>Steps</strong></p></description> </item> <item> <title>YouTube Music Recap 2025</title> - <link>http://localhost:1313/posts/2025-12-03-04-yt-music-rewind/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/</link> <pubDate>Wed, 03 Dec 2025 19:38:52 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-03-04-yt-music-rewind/</guid> + <guid>https://micro.pinapelz.moe/posts/2025-12-03-04-yt-music-rewind/</guid> <description><p>Its all Bandori. At least 75% of that MyGO!!!!! listening time was probably Haruhikage since I came back to Bandori and had to catch up before watching Ave Mujica anime.</p>
<figure><img src="https://files.catbox.moe/tsquqc.jpg"
 alt="YouTube Music Recap Top 5 Artists In Order: MyGO!!!!!, Yumenokessho, Ave Mujica, KMNZ, Roselia" width="300">
</figure></description> </item> <item> <title>INIU Power Bank Gets Recall</title> - <link>http://localhost:1313/posts/2025-12-02-power-bank-recall/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/</link> <pubDate>Tue, 02 Dec 2025 19:45:01 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-02-power-bank-recall/</guid> + <guid>https://micro.pinapelz.moe/posts/2025-12-02-power-bank-recall/</guid> <description><p>It would seem that I, along with what seems like the entirety of <a href="https://www.reddit.com/r/amazonprime/comments/1pcq5ug/how_to_get_customer_support_for_recall_iniu/">Reddit</a> bought the same cheap 10000mAh power bank and now its getting recalled.</p>
<p>I wonder if it has anything to do with the poor quality they found in that viral <a href="https://www.lumafield.com/first-article/posts/whats-hiding-inside-haribos-power-bank-and-headphones">Haribo Powerbank</a>. Not sure since I&rsquo;ve had this one for a long time. I guess I really got what I paid for, shame cause it really is super slim and works well.</p></description> </item> <item> <title>China Town Fair</title> - <link>http://localhost:1313/posts/2025-12-02-china-town-fair/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/</link> <pubDate>Tue, 02 Dec 2025 00:22:32 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-02-china-town-fair/</guid> - <description><p>Visited New York during the Thanksgiving break and had a chance to stopped by one of the most legendary landmarks North American arcade gaming history.</p>
<figure><img src="http://localhost:1313/posts/2025-12-02-china-town-fair/outside-ctf.webp"
 alt="China Town Fair Outside">
</figure>

<p>Also yep you&rsquo;re reading that right, it indeed once home to a <a href="https://davidpotorti.substack.com/p/the-dancing-chicken">dancing chicken as well as one that played tic tac toe</a>.</p>
<p>But apart from just being an old arcade, it was also home to one of the largest competitive arcade game fighting scene (Marvel vs Capcom, Street Fighter, etc.). Many of NAs top players frequented this arcade. However, as we all already know video arcades began to die down during the early 2000s and China Town Fair was no exception having closed in 2011.</p></description> + <guid>https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/</guid> + <description><p>Visited New York during the Thanksgiving break and had a chance to stopped by one of the most legendary landmarks North American arcade gaming history.</p>
<figure><img src="https://micro.pinapelz.moe/posts/2025-12-02-china-town-fair/outside-ctf.webp"
 alt="China Town Fair Outside">
</figure>

<p>Also yep you&rsquo;re reading that right, it indeed once home to a <a href="https://davidpotorti.substack.com/p/the-dancing-chicken">dancing chicken as well as one that played tic tac toe</a>.</p>
<p>But apart from just being an old arcade, it was also home to one of the largest competitive arcade game fighting scene (Marvel vs Capcom, Street Fighter, etc.). Many of NAs top players frequented this arcade. However, as we all already know video arcades began to die down during the early 2000s and China Town Fair was no exception having closed in 2011.</p></description> </item> <item> <title>Hello World - Why This</title> - <link>http://localhost:1313/posts/2025-12-01-hello-world/</link> + <link>https://micro.pinapelz.moe/posts/2025-12-01-hello-world/</link> <pubDate>Mon, 01 Dec 2025 20:11:57 -0800</pubDate><author>yukais@pinapelz.com (Pinapelz)</author> - <guid>http://localhost:1313/posts/2025-12-01-hello-world/</guid> + <guid>https://micro.pinapelz.moe/posts/2025-12-01-hello-world/</guid> <description><p>I think having control of your own data is great. The same is true for decentralized social media. I&rsquo;ve always been a primary user of microblog platforms (like Twitter/X). Having experienced both the traditional and &ldquo;decentralized&rdquo; approaches to microblogs, they both have some particular shortcoming in terms of what I want to get out of &ldquo;social media&rdquo;.</p>
<h2 id="twitterx">Twitter/X</h2>
<p>This is fairly self explanatory. The rebranding of Twitter to X and Musk&rsquo;s new ownership of the platform shifted the direction of the platform to be ever more political. X Premium boosting visibility is also something I wasn&rsquo;t a particular fan of. You can&rsquo;t view anything without signing in either, so goodbye viewing stuff anonymously. There&rsquo;s just a lot of &ldquo;features&rdquo; here I&rsquo;m not a fan of. Needless to say, there&rsquo;s a lot of reasons to not post stuff there.</p></description> </item> </channel> diff --git a/micro.pinapelz.moe/posts/page/1/index.html b/micro.pinapelz.moe/posts/page/1/index.html index d88ccc2..1c21f92 100644 --- a/micro.pinapelz.moe/posts/page/1/index.html +++ b/micro.pinapelz.moe/posts/page/1/index.html @@ -1,9 +1,9 @@ <!DOCTYPE html> <html lang="en-us"> <head> - <title>http://localhost:1313/posts/</title> - <link rel="canonical" href="http://localhost:1313/posts/"> + <title>https://micro.pinapelz.moe/posts/</title> + <link rel="canonical" href="https://micro.pinapelz.moe/posts/"> <meta charset="utf-8"> - <meta http-equiv="refresh" content="0; url=http://localhost:1313/posts/"> + <meta http-equiv="refresh" content="0; url=https://micro.pinapelz.moe/posts/"> </head> </html> |
