<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5420973216298028808</id><updated>2026-04-07T14:13:51.735+03:00</updated><category term="My Progs"/><category term="System Utilities"/><category term="Portable Applications"/><category term="Screenshots"/><category term="Linux"/><category term="Games / Fun"/><category term="How To"/><category term="My Progs: Aperito"/><category term="Programming"/><category term="Internet"/><category term="Ironsworn"/><category term="Pastebins"/><category term="Security and Privacy"/><category term="A Dissonant Chord"/><category term="Graphics"/><category term="Hardware"/><category term="Networking"/><category term="My Sites"/><category term="File Sharing"/><category term="My Progs: DizzyDiff"/><category term="Not related to PCs"/><category term="Bitcoin"/><category term="Brainfuck"/><category term="My Progs: Lar"/><category term="My Progs: grIP"/><category term="My Progs: AskWise"/><category term="My Progs: Autozeep"/><category term="My Progs: BTConvert"/><category term="My Progs: TorJump"/><category term="My Progs: (Optimization Algorithm)"/><category term="My Progs: FuckBrainfuck"/><category term="My Progs: PAL"/><category term="My Progs: SFTM"/><category term="Android"/><category term="My Progs: BOINC Portable"/><category term="My Progs: FrontPAQ"/><category term="My Progs: SuperStealmore"/><category term="Project: Arrowheads"/><category term="Microcontrollers"/><category term="My Progs: A(X)I(O)"/><category term="My Progs: Anon. NET SEND"/><category term="My Progs: BMPGlyph"/><category term="My Progs: Bists"/><category term="My Progs: Ctrl+H"/><category term="My Progs: EPT"/><category term="My Progs: HanoiTowersSolver"/><category term="My Progs: HomeKiller"/><category term="My Progs: I&#39;m Innocent"/><category term="My Progs: Legend"/><category term="My Progs: LightAss"/><category term="My Progs: LogiCrypt"/><category term="My Progs: MUTE Portable"/><category term="My Progs: OnTop"/><category term="My Progs: QRcoder"/><category term="My Progs: Simple"/><category term="My Progs: StereoFreak"/><category term="My Progs: Timmy"/><category term="My Progs: Voyager Manager"/><category term="My Progs: Where"/><category term="Trash Favorites"/><title type='text'>INSHAME</title><subtitle type='html'>Blog with posts about Tritonio&#39;s programs and interests: security, anonymity, Linux, video games, Lua, AutoIt3, Golang, portable applications, Ironsworn, esoteric languages, etc.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='https://www.inshame.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default'/><link rel='alternate' type='text/html' href='https://www.inshame.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default?start-index=26&amp;max-results=25'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>175</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-325091242827538623</id><published>2025-12-14T12:19:00.001+02:00</published><updated>2025-12-14T12:19:02.339+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Games / Fun"/><category scheme="http://www.blogger.com/atom/ns#" term="My Sites"/><title type='text'>Adversarial Mastermind</title><content type='html'>&lt;p&gt;&amp;nbsp;I had this script lying around written a few years ago, of a version of &lt;a href=&quot;https://en.wikipedia.org/wiki/Mastermind_(board_game)&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Mastermind&lt;/a&gt; that&#39;s adversarial. It doesn&#39;t really hide a secret combination for you to find, it just pretends there is one and gives you the worst possible answer on any guess you make, i.e. the answer that would eliminate the fewest possible combination. So the hidden combination is effectively what you (partially you, there&#39;s also a bit of luck involved) force it to be through your questions.&lt;/p&gt;&lt;p&gt;I recently gave the old Lua script to an LLM and asked it to turn it into a website instead, here&#39;s the result after a few iterations of asking it to fix various issues and improve the usability:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://annoyingmind.inshame.com/&quot;&gt;https://annoyingmind.inshame.com/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEibZSXmK_OTMMnu8Zjx8g3v0pQbbQ31txAabNRpLVxorqfEqpIcCMH8FgaJeko4RlVgGmzTDDSBVNhT5MrqkOxHUAtPyiQExz18_4EeJ1uQfh52D3jwuA9lGf2q-M49r_Yf7abyJF-ttmjAcNdl4A3aotoD24myQrYbU3OLbwMSbBcnrDmiVqhxMQFt808&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1212&quot; data-original-width=&quot;1192&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEibZSXmK_OTMMnu8Zjx8g3v0pQbbQ31txAabNRpLVxorqfEqpIcCMH8FgaJeko4RlVgGmzTDDSBVNhT5MrqkOxHUAtPyiQExz18_4EeJ1uQfh52D3jwuA9lGf2q-M49r_Yf7abyJF-ttmjAcNdl4A3aotoD24myQrYbU3OLbwMSbBcnrDmiVqhxMQFt808=w393-h400&quot; width=&quot;393&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;It works quite well. If you are on a PC, then opening the developer tools (maybe by pressing Ctrl+Shift+I) will let you see some debugging information in the Console, like how many possible combinations there still are at any point in the game, and up to 6 examples of those possible combinations.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/325091242827538623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/12/adversarial-mastermind.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/325091242827538623'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/325091242827538623'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/12/adversarial-mastermind.html' title='Adversarial Mastermind'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEibZSXmK_OTMMnu8Zjx8g3v0pQbbQ31txAabNRpLVxorqfEqpIcCMH8FgaJeko4RlVgGmzTDDSBVNhT5MrqkOxHUAtPyiQExz18_4EeJ1uQfh52D3jwuA9lGf2q-M49r_Yf7abyJF-ttmjAcNdl4A3aotoD24myQrYbU3OLbwMSbBcnrDmiVqhxMQFt808=s72-w393-h400-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-9077955437122341882</id><published>2025-08-10T01:44:00.003+03:00</published><updated>2025-08-10T01:44:29.965+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="My Progs"/><category scheme="http://www.blogger.com/atom/ns#" term="My Progs: Aperito"/><category scheme="http://www.blogger.com/atom/ns#" term="System Utilities"/><title type='text'>Aperito v1.6.2</title><content type='html'>&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Version 1.6.2 of Aperito fixes a duplicate paragraph in the documentation.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;b&gt;The latest version can be downloaded from here, and the signature from here. Source code is included in the zipfile.&lt;/b&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/9077955437122341882/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/08/aperito-v162.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/9077955437122341882'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/9077955437122341882'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/08/aperito-v162.html' title='Aperito v1.6.2'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-171658624454557936</id><published>2025-06-22T20:24:00.003+03:00</published><updated>2025-06-22T20:24:51.729+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="My Progs"/><category scheme="http://www.blogger.com/atom/ns#" term="My Progs: grIP"/><category scheme="http://www.blogger.com/atom/ns#" term="Networking"/><title type='text'>grIP v1.3.2</title><content type='html'>&lt;p&gt;&amp;nbsp; &amp;nbsp;grIP version 1.3.2 fixes a bug: the scan no longer stops if a &quot;host is down&quot; error is encountered.&lt;/p&gt;&lt;p&gt;&lt;b&gt;The latest version can be downloaded from&amp;nbsp;&lt;a href=&quot;https://bittit.info/publicDro/grip.zip&quot;&gt;here&lt;/a&gt;, and the signature from&amp;nbsp;&lt;a href=&quot;https://bittit.info/publicDro/grip.zip.asc&quot;&gt;here&lt;/a&gt;.&lt;/b&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/171658624454557936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/06/grip-v132.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/171658624454557936'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/171658624454557936'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/06/grip-v132.html' title='grIP v1.3.2'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-4865705029576953067</id><published>2025-06-17T19:39:00.001+03:00</published><updated>2025-06-17T20:26:40.682+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="My Progs"/><category scheme="http://www.blogger.com/atom/ns#" term="My Progs: grIP"/><category scheme="http://www.blogger.com/atom/ns#" term="Networking"/><title type='text'>grIP v1.3.1</title><content type='html'>&lt;p&gt;&amp;nbsp; grIP version 1.3.1 has even better shuffling of the scan space, with even lower memory usage and escapes &quot;[&quot; and &quot;]&quot; as it should to avoid ambiguity in received data.&lt;/p&gt;&lt;p&gt;&lt;b&gt;The latest version can be downloaded from&amp;nbsp;&lt;a href=&quot;https://bittit.info/publicDro/grip.zip&quot;&gt;here&lt;/a&gt;, and the signature from&amp;nbsp;&lt;a href=&quot;https://bittit.info/publicDro/grip.zip.asc&quot;&gt;here&lt;/a&gt;.&lt;/b&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/4865705029576953067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/06/grip-v13.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4865705029576953067'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4865705029576953067'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/06/grip-v13.html' title='grIP v1.3.1'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-7987632039303694236</id><published>2025-04-13T13:07:00.001+03:00</published><updated>2025-04-13T13:12:17.760+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hardware"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>CD Recording Modes</title><content type='html'>&lt;p&gt;I wanted to preserve this knowledge that I found in a webpage that I can no longer find online along with some info from Wikipedia.&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;DAO (Disc At Once)&lt;/h2&gt;&lt;p&gt;In this mode, the entire CD is written in a single continuous session, and no additional data can be added later. DAO has the following advantages:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Maximizes the capacity of the CD.&lt;/li&gt;&lt;li&gt;Provides complete control over the CD layout.&lt;/li&gt;&lt;li&gt;Allows user-defined gaps between audio tracks.&lt;/li&gt;&lt;li&gt;The only mode that enables writing to unused R-W sub-channels.&lt;/li&gt;&lt;li&gt;Supports extended features like CD+G and CD-Text.&lt;/li&gt;&lt;li&gt;Allows for seamless audio tracks with no gaps (important for progressive rock, trance, and other music genres).&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;For audio CDs, DAO is particularly valuable because it allows for &quot;hidden tracks&quot; by placing audio in the pre-gap before the first track. This pre-gap audio can only be accessed by rewinding from the start of the first track.&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;TAO (Track At Once)&lt;/h2&gt;&lt;p&gt;Track At Once allows for adding tracks incrementally over time.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The CD remains readable only in a recorder until it&#39;s finalized.&lt;/li&gt;&lt;li&gt;Once finalized, no more data can be added.&lt;/li&gt;&lt;li&gt;Creates a 2-second gap between tracks containing a few bytes that may be heard as noise in some audio players.&lt;/li&gt;&lt;li&gt;The recording laser stops after each track, writing two run-out blocks (special sectors that mark the end of a track and provide a transition zone before the next track begins).&lt;/li&gt;&lt;li&gt;When the next track is recorded, one link block&amp;nbsp;(connector sector that contain addressing information to help the CD player transition between tracks) and four run-in blocks (special sectors that help the CD player&#39;s laser stabilize before reading the actual track data)&amp;nbsp;are written.&lt;/li&gt;&lt;li&gt;TAO discs can contain both data and audio simultaneously.&lt;/li&gt;&lt;li&gt;Available in two writing modes:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Mode 1 (optimized for computer data with strong error correction)&lt;/li&gt;&lt;li&gt;Mode 2 XA&amp;nbsp;(with less error correction, for multimedia content like audio and video)&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;SAO (Session At Once)&lt;/h2&gt;&lt;p&gt;Session At Once is similar to DAO:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;All information is written in one go (session).&lt;/li&gt;&lt;li&gt;Additional sessions can be added later.&lt;/li&gt;&lt;li&gt;Within each session, the user has complete control over the CD layout&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;SAO is essentially a superset of DAO, with the main difference being that SAO allows for further writing to the disc.&lt;/p&gt;&lt;p&gt;Multiple sessions recorded with SAO can be read by computer drives, but sessions after the first are generally not readable by standard CD audio equipment.&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;PAO (Packet At Once)&lt;/h2&gt;&lt;p&gt;Packet At Once is used for incremental writing where information is transferred to the CD in small &quot;packets&quot;:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Each packet consists of a few kilobytes.&lt;/li&gt;&lt;li&gt;This approach makes buffer under-runs virtually impossible.&lt;/li&gt;&lt;li&gt;Each packet has its own lead-in and lead-out, which consume 7 frames of CD space.&lt;/li&gt;&lt;li&gt;PAO cannot be used for audio recording.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Multisession&lt;/h2&gt;&lt;p&gt;Multisession recording uses TAO to allow adding data across multiple sessions:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Each new session consumes approximately 15MB of disc space for session information.&lt;/li&gt;&lt;li&gt;Sessions can be related to each other: Newer versions of files can &quot;substitute&quot; older versions existing in previous sessions.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;CUE Sheet&lt;/h2&gt;&lt;p&gt;CUE sheets can only be used with recorders that support the &quot;send cue&quot; command:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The CD layout is described in a simple text file with a straightforward syntax.&lt;/li&gt;&lt;li&gt;Particularly useful when writing audio CDs or complex CD layouts.&lt;/li&gt;&lt;/ul&gt;Example of CUE sheet format:&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;TRACK 01&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;AUDIO TITLE &quot;Track01&quot;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;PERFORMER &quot;Unknown Artist&quot;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;INDEX 01 00:00:00&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;TRACK 02&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;AUDIO TITLE &quot;Track02&quot;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;PERFORMER &quot;Unknown Artist&quot;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;INDEX 00 03:27:16&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;INDEX 01 03:28:50&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Audio Master Quality Recording&lt;/h2&gt;&lt;p&gt;This specialized recording method was introduced by Yamaha in 2002:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Only available on select models like Yamaha&#39;s CRW3200 and CRW-F1 series, and Plextor&#39;s Premium 2.&lt;/li&gt;&lt;li&gt;CD recorders with this feature are no longer manufactured.&lt;/li&gt;&lt;li&gt;Uses the Disc-At-Once method, typically at 1x speed (though some recorders allow 4x and 8x).&lt;/li&gt;&lt;li&gt;Creates longer pits and lands, reducing the total capacity of the disc.&lt;/li&gt;&lt;li&gt;A 650MB CD can hold about 63 minutes instead of 74 minutes.&lt;/li&gt;&lt;li&gt;A 700MB CD can hold about 68 minutes instead of 80 minutes.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/7987632039303694236/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/04/cd-recording-modes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7987632039303694236'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7987632039303694236'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/04/cd-recording-modes.html' title='CD Recording Modes'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-6036194232299529369</id><published>2025-04-13T12:32:00.007+03:00</published><updated>2025-04-13T12:32:54.524+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hardware"/><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Recovery Guide for Casio FX-5800P Calculator</title><content type='html'>&lt;p&gt;In rare cases, the FX-5800P calculator may experience firmware corruption, displaying &lt;span style=&quot;font-family: courier;&quot;&gt;ROM!!!!!&lt;/span&gt; on startup. Here&#39;s a comprehensive guide to recover your calculator:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Remove all batteries from the calculator&lt;/li&gt;&lt;li&gt;Leave the calculator without batteries for at least 1 hour (some users report success with this simple step)&lt;/li&gt;&lt;li&gt;Reinstall the batteries and turn on the calculator&lt;/li&gt;&lt;li&gt;If the calculator still displays &lt;span style=&quot;font-family: courier;&quot;&gt;ROM!!!!!&lt;/span&gt;, proceed to the firmware recovery method.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Firmware Recovery Process&lt;/h2&gt;&lt;p&gt;You&#39;ll need:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Another properly functioning FX-5800P calculator&lt;/li&gt;&lt;li&gt;A 3-pin data cable to connect both calculators&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;WARNING:&lt;/b&gt; The malfunctioning calculator must ALWAYS be set to &lt;span style=&quot;font-family: courier;&quot;&gt;OS UP Recv&lt;/span&gt;&amp;nbsp;and the working calculator to &lt;span style=&quot;font-family: courier;&quot;&gt;OS UP Send&lt;/span&gt;. Reversing these roles will damage your working calculator.&lt;/p&gt;&lt;p&gt;&lt;b&gt;WARNING:&lt;/b&gt; This will erase all data in the &lt;b&gt;WORKING&lt;/b&gt; calculator, so back up any important information before proceeding.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;On the Working FX-5800P (SENDER):&lt;/h3&gt;&lt;p&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Simultaneously press &lt;b&gt;AC/ON&lt;/b&gt; + &lt;b&gt;MODE&lt;/b&gt; + &lt;b&gt;7&lt;/b&gt; keys.&lt;br /&gt;The screen will display &lt;span style=&quot;font-family: courier;&quot;&gt;DIAGNOSTIC MODE, Factory use only&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;Press the &lt;b&gt;←&lt;/b&gt; key, then press &lt;b&gt;9&lt;/b&gt;.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Press &lt;b&gt;2&lt;/b&gt; to select &lt;span style=&quot;font-family: courier;&quot;&gt;OS UP Send&lt;/span&gt;.&lt;/li&gt;&lt;/ol&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;On the Malfunctioning FX-5800P (RECEIVER):&lt;/h3&gt;&lt;p&gt;1. Press the &lt;b&gt;FILE&lt;/b&gt; key.&lt;/p&gt;&lt;p&gt;2. Select&amp;nbsp;&lt;span style=&quot;font-family: courier;&quot;&gt;OS UP Recv&lt;/span&gt;.&lt;/p&gt;&lt;p&gt;After the transfer completes, the malfunctioning calculator should be working fine again.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/6036194232299529369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/04/recovery-guide-for-casio-fx-5800p.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6036194232299529369'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6036194232299529369'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/04/recovery-guide-for-casio-fx-5800p.html' title='Recovery Guide for Casio FX-5800P Calculator'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-7322383042530034047</id><published>2025-04-13T12:05:00.003+03:00</published><updated>2025-04-13T12:05:44.585+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>Slow Query Monitoring in MySQL and MariaDB</title><content type='html'>&lt;p&gt;To enable slow query monitoring in MySQL or MariaDB, run these commands in your client:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;SET GLOBAL slow_query_log = 1;&lt;br /&gt;SET GLOBAL long_query_time = 0.5;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;This activates the slow query log and sets it to capture any queries taking longer than 0.5 seconds. You can adjust this threshold based on your performance requirements.&lt;/p&gt;&lt;p&gt;Slow queries will be logged to some file like:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;/var/lib/mysql/*-slow.log&lt;/span&gt;&lt;/p&gt;&lt;p&gt;You can check or change that with:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;SHOW VARIABLES LIKE &#39;slow_query_log_file&#39;;&lt;br /&gt;SET GLOBAL slow_query_log_file = &#39;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;/custom/path/slow-queries.log&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&#39;;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;To make these changes permanent, add these lines to your my.cnf/my.ini file:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;[mysqld]&lt;br /&gt;slow_query_log = 1&lt;br /&gt;long_query_time = 0.5&lt;br /&gt;slow_query_log_file = /custom/path/slow-queries.log&lt;/span&gt;&lt;/p&gt;&lt;p&gt;To analyze slow queries, use:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;mysqldumpslow &lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;/custom/path/slow-queries.log&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/7322383042530034047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/04/slow-query-monitoring-in-mysql-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7322383042530034047'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7322383042530034047'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/04/slow-query-monitoring-in-mysql-and.html' title='Slow Query Monitoring in MySQL and MariaDB'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-1327428212334434281</id><published>2025-02-19T00:58:00.009+02:00</published><updated>2025-02-21T16:46:28.974+02:00</updated><title type='text'>A thought experiment about consciousness</title><content type='html'>&lt;div&gt;I came up with this thought experiment over the past few years. I&#39;m not completely sure it is original, but here it is:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I will not define consciousness because I think that most definitions of it work fine with the experiment, and if yours doesn&#39;t, you&#39;ll know fairly soon. We will assume that consciousness does not imply free will (whatever that means) and is compatible with determinism. While I do believe this to be true, it is not a hard requirement for this experiment, but it makes the experiment simpler. At the end, I will go over two ways that the experiment could be modified to lead to the same conclusions even if non-determinism is true.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When I talk about a universe, I am talking about a closed system containing everything. If there are forces outside the universe not just with the potential to affect the things within, but actually affecting them, then by my definition, that is not a universe you are talking about. It would be a universe if you included those outside forces (and anything affecting them) into that universe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When I say that &quot;a universe contains consciousness,&quot; I will intentionally not strictly define what that means. I think your understanding of the phrase likely works with the thought experiment. If it doesn&#39;t, tell me how you understand this phrase.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 1:&lt;/h3&gt;&lt;div&gt;We create a computer simulation of rules similar to those that seem to govern our universe. It has a starting state in its RAM, it applies rules and updates the RAM with the next state. We watch the simulation unfold and let&#39;s assume that we are lucky enough and eventually we recognize something very similar to human life and civilization develop in a little corner of it. Wars, love, philosophy, grief, hatred, arts, it&#39;s all there. I argue that this universe that we are simulating contains consciousness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 2:&lt;/h3&gt;&lt;div&gt;Same as case 1, but we stop and restart the experiment. Because of determinism, it will pass through the same states. I argue that this universe still contains consciousness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 3:&lt;/h3&gt;&lt;div&gt;Like case 2, but to speed things up in the second run, we use a huge lookup table as cache: During the first run, we record every state transition on a huge lookup table, with the current state as a key and the new state as a value. On the second run, we do not need to apply the actual rules of the universe anymore; we can just keep looking up the result of the calculations in our lookup table. The RAM passes through the exact same sequence of states, so I&#39;d argue that this universe still contains consciousness. If you believe that actual calculation is required for consciousness to arise, consider that your CPU already uses microcode and lookup tables for many calculations, and some programming languages memoize results of stateless functions. So, even when you think you are calculating, you are actually using a lot of look-ups in caches and pre-computed tables - I&#39;m just expanding this principle. A lookup is no less of an algorithm than any other algorithm that you run so philosophically I see no difference if the lookup brings the same results as the supposedly &quot;proper&quot; calculation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 4:&lt;/h3&gt;&lt;div&gt;Like case 3 but instead of keeping the cache as a lookup table with keys and values, we realize that each value is also a key, so we store the table in a compressed form where instead of:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;a→b&lt;/div&gt;&lt;div&gt;b→c&lt;/div&gt;&lt;div&gt;c→d&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We store:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;a→b→c→d&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We use that structure as a way to avoid doing the actual calculations. The RAM passes again through the exact same sequence of states, so I argue that this universe still contains consciousness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 5:&lt;/h3&gt;&lt;div&gt;Like case 4 but after the first run that populated the cached states, we went manually through all of them and replaced each cached_state with f(cached_state) where f is a reversible function (i.e., there is a 1-1 correspondence between each state and its transformation through f). Since no information is lost, even though the RAM passes through different states than the first run, those states are equivalent to the states of the first run and consciousness must still be contained in this universe. After all, if the computer used Big Endian or Little Endian or a different but equivalent floating point standard where the mantissa is stored before the exponent, it shouldn&#39;t really matter to the emulation. Indeed, our computer&#39;s current representation is just one of an immense number of possible representations - if changing to another representation could break consciousness, we should be equally concerned that we&#39;re already using the wrong one.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 6:&lt;/h3&gt;&lt;div&gt;Like case 4 (not case 5) but we manually went through every state in the cache and removed the information describing a part of the universe far away from the civilization, one that the civilization never interacts with. I argue that since the RAM otherwise passes through states that show exactly the same civilization evolving, there is still consciousness in this universe, despite a far away part missing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 7:&lt;/h3&gt;&lt;div&gt;Like case 6, but the part of the universe that we exclude from the cached state is one that interacts with the civilization. Let&#39;s say we removed the moon of their planet. By &quot;remove&quot; I simply mean that the RAM no longer contains information about the moon itself, while the rest of the universe is intact as if the moon still existed: we still see bodies around where the moon should be being gravitationally attracted to it, we still see humans walking in the moonlight, we still see their moon missions going there and coming back with stones. We just have no part of the RAM in the simulation that actually contains the info of what is going on exactly there. In fact, when simulating physical interactions at a very low level, in some cases we may be able to ignore particles that we know cannot interact with other particles until some moment in the future, instead of calculating their position at every moment in time until that interaction. If the rules are elaborate enough to allow for this skip in time where individual particles do not get tracked for a while, what is the problem with coming up with an elaborate rule (the lookup table we created in case 3 is one such very elaborate rule) that allows us to calculate the evolution of a civilization on earth without actually keeping track of the moon frame by frame and only keeping track of the effects it has on earth? I argue that there is still consciousness in this universe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 8:&lt;/h3&gt;&lt;div&gt;Based on case 7 and case 5, I conclude that any transformation of the states of the cache that we initially introduced in case 4 does not remove the consciousness from this universe on the second run (the one utilizing the cache) as long as consciousness remains recognizable in the transformed states. If that is the case, then a kind of 2D video of the universe is also one such transformation as long as it shows enough of the civilization to keep consciousness recognizable, and therefore playing back that into the RAM during the second run will mean that this universe still contains consciousness. One might object that a 2D video loses too much information by collapsing a 3D world into a 2D projection. However, consider that instead of removing the moon, we could remove every odd cubic millimeter of the universe from our cached states. The lookup table was created from a full-scale simulation, so even though we&#39;re not storing the state of those odd cubic millimeters, their effects are still perfectly captured in how the rest of the universe evolves. If consciousness survives this kind of spatial sampling while the causality that produces it is maintained through our lookup table, then a 2D projection is just another way of encoding the same causal relationships while being selective about what detail we maintain in RAM.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 9:&lt;/h3&gt;&lt;div&gt;Like case 1 (not case 8) but this time instead of keeping each state of the universe in the same position in the RAM, we don&#39;t really use a RAM, we use a write-once memory, so each state has to be written in adjacent locations that can never be erased. I argue that this matters not and is an implementation detail, the universe still contains consciousness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 10:&lt;/h3&gt;&lt;div&gt;Like case 9 but we rerun the simulation on the same write-once memory. Due to determinism it would attempt to write the same things in the same locations, but the data is already there so all write operations become no-ops. This brings us to a weird conclusion: A system where the only thing that changes is a register pointing to the current state of the universe (the &quot;now&quot; in the simulated universe) while everything else is static (no changes in the main memory) is still capable of simulating a universe that contains consciousness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 11:&lt;/h3&gt;&lt;div&gt;Like case 10 but since the &quot;now&quot; pointer is not really interacting with the universe simulation in a way that has measurable results, we move this pointer to a different computer, and just watch the two computers in operation, one computer containing all the states of this universe, while the other computer fetching from the first computer every state, recalculating the next state and throwing away the result. I do not see any functional difference so these two computers together are simulating a universe that contains consciousness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Case 12:&lt;/h3&gt;&lt;div&gt;Like case 11 but since the results of the calculations of one of the computers are thrown away, we might as well not calculate them. After all in case 3 we decided that not calculating stuff and just looking up the pre-calculated result in a cache is fine, so the calculation itself is not magical in any way. If you somehow knew the previous value of a memory location and chose to only flip the bits that needed to change, rather than erasing and rewriting all bits, you wouldn&#39;t say that consciousness was lost. Well, in this case we know that no bits need to be flipped at all, so skipping the calculation entirely is just another optimization. But now the computer with the stored states is equivalent to a tape, or a DVD, as these also contain all the states in sequence, separated physically in your universe. The computer holding the counting pointer is equivalent to a counter circuit or a clock.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Conclusion?&lt;/h3&gt;&lt;div&gt;I have a DVD with a documentary, and I have a clock, and they are no more interacting with each other than the two computers in case 12, so... does that mean that the DVD, even when not played in a way creates or contains a universe that contains consciousness? One might object that the DVD wasn&#39;t created through the careful process of running a full universe simulation and creating a lookup table - it&#39;s just a recording of 2D projections of our universe. However, this objection leads to a paradox: If we actually did make a full simulation of another universe and then modified the lookup table to turn it into a DVD that happens to be bit-for-bit identical to an existing documentary DVD (no matter how improbable such a match would be), would one DVD contain consciousness while the other doesn&#39;t, based solely on how each was created?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Further implications:&lt;/h3&gt;&lt;div&gt;Pushing even further from our DVD plus clock conclusion: we noted that the clock in case 12 doesn&#39;t actually interact with the data - it merely marks a theoretical progression through the states. But if the clock&#39;s interaction is purely theoretical then any potential way of traversing these states serves the same purpose. Even imagining the progression through these states would be equivalent, with your brain acting as an over-engineered clock/counter. This leads to an even stranger possibility: if we could imagine a projection that matches, state by state, what would be produced by the careful simulation process described earlier (however improbable such a match would be), would that imagined projection also contain consciousness, and does our imagination therefore create separate consciousness from our own?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Non-determinism:&lt;/h3&gt;&lt;div&gt;If you consider determinism a limitation in the above experiment, there are two ways to incorporate non-determinism without changing the experiment&#39;s conclusions.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The easy way:&lt;/h4&gt;&lt;div&gt;If all the non-deterministic random choices that will be taken by the universe could be included as a blob of data in the initial state of the universe, then non-deterministic universes could be treated as deterministic universes that include a &quot;seed&quot; for their randomness in their initial state, and that seed could be non-deterministic itself, as an inconsequential exception to our rule about universes never interacting with outside forces. After all, the rules of the simulated universe are decided by us, in our universe, so deciding a seed, deterministically or not, to make the simulated universe effectively non-deterministic is not breaking anything in the thought experiment.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The messy way:&lt;/h4&gt;&lt;div&gt;If the simple solution doesn&#39;t satisfy you, perhaps we can consider all the possible paths that a simulated non-deterministic universe can take as a tree. We can still, in theory, calculate all of them and populate the cache of case 3. We can still convert the cache into a form of a branching, tree-like tape like the one in case 4. We can still modify the &quot;frames&quot; in this tape as described in cases 5 to 8. And we can still lay out the states physically separated in different memory locations instead of overwriting the same location as in case 9. In fact, it may even be more natural to lay them out in space depending on whether we chose depth first or breadth first or something in between when calculating (or looking up in the cache) the next state(s) of the simulated universe. In general, all the cases still apply just fine if the shape of the simulated timeline is a tree, and not really a line. And if at least one path from the root to the leaves contains a human-like civilization, I&#39;d argue that the simulation contains consciousness.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/1327428212334434281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2025/02/a-thought-experiment-about-consciousness.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/1327428212334434281'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/1327428212334434281'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2025/02/a-thought-experiment-about-consciousness.html' title='A thought experiment about consciousness'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-3913756743931706101</id><published>2024-11-13T00:19:00.005+02:00</published><updated>2025-08-10T01:43:07.224+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="My Progs"/><category scheme="http://www.blogger.com/atom/ns#" term="My Progs: Aperito"/><category scheme="http://www.blogger.com/atom/ns#" term="System Utilities"/><title type='text'>Aperito v1.6.1</title><content type='html'>&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Version 1.6.1 of Aperito fixes some typos in some error messages and makes Aperito recognize non-existing types of &quot;keep&quot; and properly fail for them, for example it will fail on &quot;keep poop&quot; but will not fail for &quot;keep shallow&quot; or &quot;keep deep&quot;.&lt;/p&gt;&lt;div&gt;&lt;b&gt;&amp;nbsp;The latest version can be downloaded from&amp;nbsp;&lt;a href=&quot;https://bittit.info/publicDro/aperito.zip&quot;&gt;here&lt;/a&gt;, and the signature from&amp;nbsp;&lt;a href=&quot;https://bittit.info/publicDro/aperito.zip.asc&quot;&gt;here&lt;/a&gt;. Source code is included in the zipfile.&lt;/b&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/3913756743931706101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/11/aperito-v161.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/3913756743931706101'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/3913756743931706101'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/11/aperito-v161.html' title='Aperito v1.6.1'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-4873438583124225422</id><published>2024-08-09T03:15:00.007+03:00</published><updated>2024-08-09T13:08:34.064+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Games / Fun"/><title type='text'>In defense of online console subscriptions</title><content type='html'>&lt;p&gt;&amp;nbsp;Widely disliked to the point of being considered predatory, difficult to measure in terms of real cost, and one of the most common points of attack against consoles from PC gamers, paid online multiplayer services in consoles are what I will try to analyze and defend in this article.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Analyzing Nintendo Switch Online Subscription&lt;/h3&gt;&lt;p&gt;First, to simplify our analysis, let&#39;s focus on the most basic of these subscriptions: The Nintendo Switch Online individual membership, costing $19.99 per year. It doesn&#39;t offer much in &quot;extra&quot; content, except for some old Game Boy games that you could easily play on an emulator and which likely cost Nintendo very little to provide. From those $19.99, we need to subtract the actual cost Nintendo incurs to maintain online game servers for you (one extra player). For a very rough estimate, you can rent a Counter-Strike 2 game server (at retail prices) for about $1 per player slot. Of course, you won&#39;t be playing just one game, but over time and across&amp;nbsp;&lt;a href=&quot;https://www.statista.com/statistics/1276229/nintendo-switch-online-subscriber-count-global/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;38 million subscribers&lt;/a&gt;, the cost is averaged out, and the actual cost per player should be fairly close to that. That still leaves $18.99 from your subscription going directly to their pockets. &quot;Outrageous!&quot; you might say, &quot;To pay $18.99 just for the privilege of playing online.&quot; Well, it&#39;s not that simple. Let&#39;s continue with the analysis.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Present Value of Subscription Payments&lt;/h3&gt;&lt;p&gt;There&#39;s a formula in finance that allows us to convert any future payment to a present payment, or even a series of future payments to a single present payment and vice versa.&lt;/p&gt;&lt;p&gt;If C is your future payment (say a single subscription payment), i is the yearly interest rate that Nintendo gets for their savings, and n is the number of years until you make that future payment, then that future payment has a present value (PV), (i.e., it is currently worth to Nintendo):&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhHtIFq6cQVMCbXloAkjpe9l9vZ-ZaNt6n2lWpeKGHgwdc2_Ni7NWrUl05U6D4NSbNMLsQcSPMMw04TvwHZy0OkaVZpdsJqK6i9VoAbS53nkXKz9naDzVU3M5og2Xm1avTLM6PsFK_2_Y0nxqB_OFmrA-tlqHrgA06blMdAnXKAkqKwp2ZKPMBvapLiDu0&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;77&quot; data-original-width=&quot;171&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhHtIFq6cQVMCbXloAkjpe9l9vZ-ZaNt6n2lWpeKGHgwdc2_Ni7NWrUl05U6D4NSbNMLsQcSPMMw04TvwHZy0OkaVZpdsJqK6i9VoAbS53nkXKz9naDzVU3M5og2Xm1avTLM6PsFK_2_Y0nxqB_OFmrA-tlqHrgA06blMdAnXKAkqKwp2ZKPMBvapLiDu0=s16000&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;So, for example, if the yearly interest is 2%, when you start a subscription, the first payment (happening the same day) is worth, obviously, $19.99 to Nintendo at that moment in time. But your next-year payment is worth $19.60. In other words, Nintendo would not care if you want to pay another $19.99 next year, or just pay $39.59 the very first day and be done for two years. Similarly, your third year payment of $20 is worth an equivalent payment of $19.21 if you made it the first day of the first year. So you could pay $58.80 up-front and be done for three years; Nintendo would be unaffected either way.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Real Cost of an Online-Capable Switch&lt;/h3&gt;&lt;p&gt;Assuming a lifetime of 7 years for a Switch console, that would be 7 payments of $20, spaced out over that period. That&#39;s equivalent to an up-front payment of $131.96. With an introductory price of $299.99, that means that &lt;b&gt;in effect&lt;/b&gt;, Nintendo is selling an offline-only Switch for $299.99 and an online-capable Switch for $431.95. They are just &quot;forcing&quot; those wanting the online version of the Switch to get a loan with 7 installments of $19.99 at 2% interest from Nintendo to pay those extra $131.96 for that version. This is probably done because it&#39;s easier to convince your parents to pay another $19.99 per year instead of getting you a $431.95 Switch, even though it&#39;s effectively the same cost, just structured differently.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Why Charge More for Online Play?&lt;/h3&gt;&lt;p&gt;Where does that leave us? Why does Nintendo charge those who want to play online multiplayer $131.96 more? There are three answers that I can think of:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;They are simply copying Sony and Microsoft. I will not consider this as a real answer because it simply changes the question to &quot;Why is Sony charging those who want the online version of PlayStation more?&quot; which cannot be answered by pointing the finger at Nintendo again. We only picked Nintendo for the analysis because it was simpler, but my conclusions should more or less apply to all three consoles.&lt;/li&gt;&lt;li&gt;They charge online players more because they are more &quot;hardcore gamers&quot; and are willing to spend more on their console than those who only play single-player games. That means Nintendo is earning pure profit from these players. We&#39;ll analyze this case further down.&lt;/li&gt;&lt;li&gt;Online players are more focused on their favorite online games. A player without a subscription will play one single-player game after another, spending all their time exclusively on finishing games. A player interested enough to buy a subscription for online play is more likely to focus on one of the fewer online games, say Splatoon, and spend most of their time on it, leaving less room for finishing single-player games. I find this answer very likely to be true. Anecdotally, I&#39;ve been mostly an online player for many years, and I definitely bought fewer games back then, while now I play mostly offline and buy more games, finishing (or dropping) one after another. If this is true in general and not just in my case, then Nintendo is likely charging more up-front to make up for that loss of future income. Often, console hardware itself is sold at a loss, so the way to make up for that loss is by selling games. But if your intention is to buy two games over 7 years (say Splatoon 2 and Splatoon 3), then obviously Nintendo can&#39;t have that.&lt;/li&gt;&lt;li&gt;A combination of #2 and #3 could also be the real answer. Analyzing that is the same as analyzing #2, which we&#39;ll now do.&lt;/li&gt;&lt;/ol&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Potential Consequences of Banning Subscriptions&lt;/h3&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Let&#39;s assume then that Nintendo is overcharging online players. Is that outrageous? What happens with these profits? What would happen if they were somehow forced to reduce those profits? Imagine that a law gets passed that bans subscriptions for consoles. What now? How does Nintendo react to that? Any of the following, or a combination of them could happen:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The price of the console itself could be increased. 38 million subscribers out of 143 million units sold very naively means that about 26.57% of the sold units were those hypothetical &quot;online&quot; units that effectively cost $431.95, and 73.43% are those offline-only units that cost $299.99. Now these two models are equalized, so the end result would be an online-capable unit for an introductory price of $335.06. The bad thing here is that we may have gone from a situation where the &quot;hardcore online players&quot; were subsidizing cheap consoles for the offline-only players, to a situation where the offline-only players are now subsidizing the costs of the online players.&lt;/li&gt;&lt;li&gt;The price of all games could go up by whatever amount is needed to keep the profits the same as before. Again, the offline-only players would end up paying more in the long run, and the online players would end up paying less. If your subscription effectively costs $131.96 like we showed, paid by 38 out of every 143 users, and the average player purchases 6 games per year over 7 years, then that would be a $0.83 game price increase.&lt;/li&gt;&lt;li&gt;The price of just the online games would go up by whatever amount is needed to keep the profits the same as before. If you are an average online player, then you&#39;d see no difference in your wallet in the long run. If, as I suspect, the online players buy fewer games, say 3 games per year over 7 years, then that would be a $6.28 game price increase, only on the online games.&lt;/li&gt;&lt;li&gt;Nintendo could invest less in research or game development in order to keep their profit the same as before. What this means for the next console or the next game is impossible to predict. It is safe to say that without the current level of R&amp;amp;D, the next console will be less capable and/or more expensive to manufacture.&lt;/li&gt;&lt;li&gt;Nintendo could accept the loss of profit and make smaller dividend payments to their stockholders and/or have their stock decrease in value. The end result of that would be some amount of investment leaving the company and going elsewhere. Needless to say, this will not make their next console better or cheaper; quite the opposite.&lt;/li&gt;&lt;/ol&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Market Dynamics and Subscription Models&lt;/h3&gt;&lt;p&gt;Of course, all of the above assume no player movement to or from other platforms. It is possible that the PC gaming market is starving for a new gaming machine with the payment structure that PC gamers are used to, i.e., a big up-front payment for the real cost of the hardware and the OS software, no subscriptions, and low game prices with little to no platform markups. In which case, the moment Nintendo decides to stop their subscription model, they get flooded with new players and don&#39;t need to do anything at all to make up for the loss of income.&lt;/p&gt;&lt;p&gt;But it&#39;s also possible that it&#39;s exactly the other way around: that the up-front cost is already too much for console players, that PC players will never buy a console just because the subscription model was abolished, and the market is actually starving for an even more subscription-based service. For example, remember that hypothetical $431.95 subscription-free online-capable Switch? Well, it&#39;s exactly equivalent to $65.43 yearly payments for 7 years with no up-front cost. Or even $5.51 monthly payments for 7 years, no up-front cost. And you can kind of do these things by buying the device with a credit card, though those have much higher interest rates than what we assumed so far.&lt;/p&gt;&lt;p&gt;Hell, you can get a PC effectively on exactly the same subscription model as a Switch. For example, buy this laptop:&lt;/p&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjxGbPGLL0_a4qUM1cxKk0h4xQXFrAugHlbMEksIBeX4RXCj-yAaLd-JI-fOvYul4wL43buADnUygO2RGnHnREan3fAP_xD2R-oVZgnwcm7bt7UselN6rvNMKKfOm82b5_8fMnqZSueWrc_UMtdpX_pIMcEjmKf7mIxEgwiGJdEwiZl3EYuV8UgLo8ECNk&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;449&quot; data-original-width=&quot;1228&quot; height=&quot;146&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjxGbPGLL0_a4qUM1cxKk0h4xQXFrAugHlbMEksIBeX4RXCj-yAaLd-JI-fOvYul4wL43buADnUygO2RGnHnREan3fAP_xD2R-oVZgnwcm7bt7UselN6rvNMKKfOm82b5_8fMnqZSueWrc_UMtdpX_pIMcEjmKf7mIxEgwiGJdEwiZl3EYuV8UgLo8ECNk=w400-h146&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;and pay up-front $303.28 (about the same as the introductory price of a Switch), pay the other $65.21 with a credit card (23.76% effective yearly interest rate), and then make 7 yearly payments of $19.99 on that credit card.&lt;/p&gt;&lt;/div&gt;&lt;p&gt;My guess is that if there was space for gaining meaningful market share by dropping the subscription price or even getting rid of it completely, one of Sony, Nintendo, or Microsoft would have already done it. You&#39;d expect that the first one to do it would immediately steal a good chunk from the other two, especially if they waited for one of the other two to announce a pricing change, like when Sony added two more &lt;b&gt;higher&lt;/b&gt; tiers to their subscription service. It&#39;s also possible that while their market research may show an average improvement in profit margins if they abolish subscriptions, the standard deviation is too high, meaning there&#39;s a good chance of reducing their profits below some threshold that would force them to re-implement subscriptions, with unpredictable effects on their users&#39; nerves and reputation. They would certainly look desperate if they were the only company that had to bring back subscriptions. My guess is that their market research shows the opposite: that moving even more of the cost of the console away from the games and hardware and into subscriptions makes more sense in the current market. At least Sony seems to think so, as they showed by recently adding higher tiers, and both Sony and Microsoft now provide games &quot;for free&quot; as long as you pay the subscription. It looks like this model is working for many people. And with Steam Deck and other PC handhelds on the market, Nintendo has even less reason now to try and capture gamers interested in paying up-front for hardware as long as later costs are low.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Comparing to the Commodore 64&lt;/h3&gt;&lt;p&gt;To put things into perspective let&#39;s compare to one of the best selling computers ever, that was also widely used for gaming: A Commodore 64 would cost $395 to months after release. A floppy drive would about a year after release cost $300. That&#39;s a total of $2275.96 in today&#39;s money. A 21&quot; CRT uses about 100W, the Commodore 64 uses 21W, for a total of 121W. At $0.076/KWh in 1982 and with 2 hours of gameplay per day, that&#39;s $6.71 per year or $22.36 in today&#39;s money, more than your yearly Nintendo subscription. Commodore 64 games typically cost $30 around 1984 (really hard to find original pricing information) which is $92.50 in today&#39;s money. A Switch uses 8W and a modern monitor of similar size uses 25W for a total of 33W. At 2 hours of gameplay and at $0.1643/KWh, that&#39;s $3.96 per year on top of your $19.99 subscription. Or if you play handheld, $0.96 per year on top of the subscription. So a Commodore 64 was&lt;b&gt; 488%&lt;/b&gt; more expensive than a Switch, its games cost &lt;b&gt;54%&lt;/b&gt; more than those of the Switch, and the costs for playing it 2 hours per day were about 7% less than those of a Switch on a 21&quot; monitor, or around 6% more expensive compared to a Switch played handheld. And it was not online.
&lt;style&gt;
  #sevj9iue td, #sevj9iue th {
    border:1px solid white;
    padding:2px;
  }
&lt;/style&gt;&lt;table id=&quot;sevj9iue&quot; style=&quot;text-align:right&quot;&gt;&lt;tr&gt;&lt;th&gt;&amp;nbsp;&lt;/th&gt;&lt;th&gt;Commodore 64&lt;br&gt;(adj. for infl.)&lt;/th&gt;&lt;th&gt;Switch&lt;br&gt;(some adj. for infl.)&lt;/th&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;Hardware cost&lt;/td&gt;&lt;td&gt;$2275.96&lt;/td&gt;&lt;td&gt;$386.58&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;Game cost&lt;/td&gt;&lt;td&gt;$92.50&lt;/td&gt;&lt;td&gt;$60&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;730 hours of electricity cost&lt;/td&gt;&lt;td&gt;$22.36&lt;/td&gt;&lt;td&gt;$3.96 (on a monitor)&lt;br&gt;$0.96 (handheld)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;Online multiplayer cost&lt;/td&gt;&lt;td&gt;N/A&lt;/td&gt;&lt;td&gt;$19.99&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Conclusion - Fix It Yourself&lt;/h3&gt;&lt;div&gt;&lt;p&gt;If you&#39;re still certain that Nintendo would actually increase their profit by offering the option to pay the full price up front, I recommend you put your money where your mouth is and offer that service yourself on the market, and become rich. Sell Switches with an add-on service: Your clients pay an extra $131.96 up-front, and you cover their Nintendo subscription costs for 7 years. You should be able to sell more consoles than anyone offering just the console.&lt;/p&gt;&lt;p&gt;Otherwise, don&#39;t fuss. As we saw, any up-front cost is equivalent to some recurring cost and vice versa, whether it&#39;s paid per game you buy, or per month, or per year. And there are more options than there ever were. But &quot;don&#39;t fuss&quot; doesn&#39;t mean don&#39;t ask console manufacturers to improve their offers. Just don&#39;t accuse them of not choosing the price structure of your choice. Convert everything to a present value and compare the different offers. Then use a credit card to move up-front payments to the future, or deposit money up-front in an account to bring future payments to the present.&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/4873438583124225422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/08/in-defense-of-online-console.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4873438583124225422'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4873438583124225422'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/08/in-defense-of-online-console.html' title='In defense of online console subscriptions'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEhHtIFq6cQVMCbXloAkjpe9l9vZ-ZaNt6n2lWpeKGHgwdc2_Ni7NWrUl05U6D4NSbNMLsQcSPMMw04TvwHZy0OkaVZpdsJqK6i9VoAbS53nkXKz9naDzVU3M5og2Xm1avTLM6PsFK_2_Y0nxqB_OFmrA-tlqHrgA06blMdAnXKAkqKwp2ZKPMBvapLiDu0=s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-6346353387621195236</id><published>2024-04-24T00:08:00.001+03:00</published><updated>2024-08-09T13:03:25.683+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="My Progs"/><category scheme="http://www.blogger.com/atom/ns#" term="My Progs: Voyager Manager"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>Voyager Manager v0.1</title><content type='html'>&lt;p&gt;I&#39;ve written around seven programs for my &lt;a href=&quot;https://en.wikipedia.org/wiki/HP-12C&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;HP 12c&lt;/a&gt;. I&#39;ve manually combined them into a big &quot;multiprogram&quot; which starts with a jump table: a bunch of GTO commands, each one jumping to the entry point of one of the actual programs. The reason for that is that the HP 12c has only one contiguous program area. Fortunately, the calculator allows you to manually execute a GTO command before pressing R/S to start the execution. But instead of having to remember the starting address of each program, I just put them on the GTO instructions on the jump table so I just need to manually do GTO 003 and press R/S to start the third program, because address 003 has the GTO to the starting point of the third program.&amp;nbsp;&lt;/p&gt;&lt;p&gt;But managing this multiprogram is very tedious. When a program is placed in a different starting address in memory, all the GTO targets of that program need to be updated and offset correctly to continue working. So I made a program called Voyager Manager that lets me compile any number of programs into one such multiprogram, taking care of the GTOs and the jump table automatically. It works for my programs but it&#39;s still a very early version. It comes with GNU/GPLv3 source code, Lua binaries for Windows included, and a library that includes my programs for the HP 12c to get you started.&lt;/p&gt;&lt;p&gt;&lt;b&gt;You can download Voyager Manager from &lt;a href=&quot;https://bittit.info/publicDro/VoyagerManager.zip&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/b&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/6346353387621195236/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/04/voyager-manager-v01.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6346353387621195236'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6346353387621195236'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/04/voyager-manager-v01.html' title='Voyager Manager v0.1'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-3093090813343821944</id><published>2024-01-13T22:55:00.000+02:00</published><updated>2024-01-13T22:55:19.886+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A Dissonant Chord"/><category scheme="http://www.blogger.com/atom/ns#" term="Ironsworn"/><title type='text'>A Dissonant Chord - Part 9</title><content type='html'>&lt;p&gt;&lt;i&gt;In part 8,&amp;nbsp;Ikram, Arasen, Kendi and Indirra&amp;nbsp;&lt;/i&gt;&lt;i&gt;fled to Ikram&#39;s old campsite&lt;/i&gt;&lt;i&gt;&amp;nbsp;to recover from their injuries after escaping from jail. The next day, Indirra explained to Ikram that he must deal with the &quot;sodden&quot; that was pursuing him, either through combat or by offering a gift. Ikram and Indirra then went to a river, where Ikram ate wetwart to commune with the spirit and had a vision of its past life. He threatened the sodden to leave him alone and the sodden agreed to it in exchange for a pair of iron boots. Then they started preparing a trap in a area where they would attempt to fight warriors of the Cove.&lt;/i&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s3300/Ikram&#39;s%20map.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;3300&quot; data-original-width=&quot;2475&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s320/Ikram&#39;s%20map.png&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;font-style: italic;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;2nd day of Summer, year 132&lt;/h3&gt;&lt;p&gt;After perfecting our trap over several days and keeping watch on the road, Kendi spotted a group of warriors approaching from the direction of the city. As planned, he pulled aside the bushes we had cut from the ground, creating an opening. Seeing this, Arasen, Indirra and I ran to meet him. They then pretended to be walking away from the city but turned as if in panic when one of the warriors pointed at Kendi&#39;s group. The warriors immediately broke into a run to follow them. It was now my turn to act, making the spikes invisible just after the three had safely passed them. Visualizing something invisible took concentration, but I managed it just as the warriors passed the concealed roadside bushes. There were five in total, and three seemed familiar. As planned, Arasen, Kendi and Indirra fled toward the trees where I hid, feigning panic. The emboldened five warriors sprinted after them directly into the trap. The front three were skewered on invisible spikes as two behind, shocked and confused, tried to stop. I then jumped from cover, now certain these were the remaining men from Graycliff, and shouted, &quot;You filthy trogs will die today for what you did!&quot; Their mouths agape, I aimed and shot an arrow at the one that I did not recognize, striking his chest. He fell to his knees as the sole other standing rushed at me, fast as could be. He likely would have reached me before I could nock another arrow, but the area was full of spikes, and his speed caused him to fall upon one, piercing him deep. As he screamed, my arrow found its mark in his skull, silencing him instantly. The one who had taken an arrow to the chest lay unmoving just nine steps away. All that remained were the other three - two crawling away in agony while skewered on spikes, and one Kendi now approached, recognizing him as a former captor. I went after the two crawling men. I kicked one onto his back, and as he shouted expletives, quickly loosed an arrow into his face before moving to the last. I turned him over. &quot;You and your dead buddies killed ten people in Graycliff and burned the village,&quot; I said. &quot;So what? You attacked us!&quot; I shot an arrow through his knee. &quot;I attacked you? After you tried to take all I had? Was it worth it, you stupid fuck? I&#39;m going to destroy your little band - you&#39;re the last of the boys that attacked my village. I&#39;m coming for your leader next.&quot; &quot;I hope they catch you and give you to the elves, you bastard!&quot; he spat. I tied his hands and feet. &quot;What, you won&#39;t kill me? I&#39;ll die anyway, you can&#39;t use me as leverage.&quot; &quot;The river is near, and I see you&#39;re wearing some fine iron boots,&quot; I replied. Five minutes later, I unloaded him from Valeri beside the flowing water. &quot;What the hell, you psycho, why aren&#39;t you finishing me off with an arrow like everyone else? Will you drown me? Hey! Were are you going?&quot; he mumbled as I stepped away from the river. &quot;I ain&#39;t drowning you myself,&quot; I said. &quot;Your boots are here, plus anything else of worth you find to aid you in your revenge against your brother!&quot; I shouted toward the river. The warrior&#39;s confusion was quickly replaced by terror as two wrinkled hands emerged from the water and pulled him under. Arasen, Indirra and Kendi had followed me and were watching from a distance but now approached. &quot;Are you ready? Feeling alright?&quot; Arasen asked. &quot;Yes, much better. He was the last of...&quot; I started to say, but my sentence was cut short by a pink light exploding from the river in a mist that weaved through the air toward me. I tried to run but it was too fast, shooting straight for my sternum. However, it wasn&#39;t aiming for me - it absorbed into my lodestone within seconds. &quot;What&#39;s happening?&quot; shouted Kendi. &quot;Why did you freak out?&quot; &quot;There was some weird mist coming from the river that went into Ikram!&quot; Indirra replied. &quot;Not into me, into my lodestone,&quot; I corrected. &quot;Didn&#39;t you see it?&quot; I asked Kendi and Arasen, who both shook their heads. &quot;But what was that energy? It was pink, so not the kind you usually absorb, right Ikram?&quot; Indirra asked. &quot;Yes, it looked and felt somewhat different. Let&#39;s move our camp elsewhere for tonight,&quot; I said. So we traveled for about an hour and found a clearing in the forest to set up camp, where I spent most of the night examining the lodestone with Indirra. We found out that it responded to my invocation attempts but not to Indirra&#39;s. It also seemed to be filled with energy after absorbing the mist but I decided not to absorb it that yet since I felt quite full.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;3rd day of Summer, year 132&lt;/h3&gt;&lt;p&gt;I slept very well and felt completely rejuvenated upon waking. We ate together and discussed our next steps. I still wished to move on, but as I told that warrior, I intended to go after the Cove&#39;s leader next. I swore upon my knife that I would see Namura captured or dead. Knowing the Cove was now weakened, we decided to strike swiftly. We would target the head - Namura. We would wait until nightfall and infiltrate their headquarters under cover of darkness. Indirra used invocations to dim or extinguish any lights along our path. She also allowed me to absorb some of her energy, which was quite intense. When we reached the headquarters, I spent some time searching for alternative entry points. We found an unguarded window on the side that appeared to open into some sleeping quarters. Assuming it would be empty at this late hour with so few members remaining, we entered. However, we were mistaken - someone was sleeping inside. Only once within did we realize. We tried to sneak past quietly, but the old wooden floors creaked underfoot, rousing the warrior from sleep. I quickly invoked transparency around us and felt my lodestone warming against my skin, a sign that the illusion had taken hold with its help. Moments later, the warrior returned to slumber and we exited the room, moving into another empty barracks room. Within, we heard footsteps above, likely a single person. Finding a staircase, we ascended and emerged in a workshop hall strewn with arrows, weapons and used armor. I mentally noted a few wooden armor stands that could serve as makeshift barriers if we were chased through the space. We moved away from the sound around a corner. The hallway continued a bit more narrowly ahead, ending at a door bearing both the insignia of the Cove and Greatrock. This had to be Namura&#39;s private quarters. And indeed, we could hear snoring emanating from within! I timed opening the door to coincide with Namura&#39;s snores, and after a few more, we had all entered the room standing before him. We all looked to Kendi, who gladly moved over Namura and stabbed his heart while muffling his mouth with a hand. I searched his office and found letters exchanged between Namura and someone named Kabeera. Namura had detailed plans to launch an attack on the elves and was requesting backup, stating it was time to stop serving &quot;those monsters.&quot; The letter was dated a week past, and I wondered why it had not yet been sent. Then I discovered two additional letters apologizing for an inability to assist Namura and advising against moving against the elves, warning this would result in destruction of the entire region. It had become clear that while we had succeeded in destroying the Cove, the true heads of this operation were the elves pulling the strings from afar. We escaped the way we entered and made for Valeri, camping in the forest outside the city for the night.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;4th day of summer, year 132&lt;/h3&gt;&lt;p&gt;I awoke refreshed. Once more, we discussed what was next. Kendi cared deeply about Greatrock, so he wanted to stay there underground for a while and hopefully expunge any remaining Cove members before organizing a militia against the elves. Indirra agreed that they should stay and help. Arasen was the only one who suggested they move away before things with the elves became worse, but eventually gave in. I told them that I&#39;d move on with my trip around the world. I promised them that I&#39;d visit again as soon as possible. I gave them instructions on how to find the library of old-world books in the frozen cavern under the shack and suggested they go see Padma in Mournwood if they need to sell more of these books. Then I showed Indirra the tablets I copied from the abandoned house in the Deep Wilds. Before I even explained anything, she ran and brought her magic mirror. She partially uncovered the edge and showed me an inscription on it. It was definitely the same script, but, alas, she knew what neither meant. Neither did her mother. But since the mirror was probably made by the same people as the ones in the abandoned house, we discussed its origin. Her mother told her that she was once led to a ruin by a glimmer. A child-like glimmer. We speculated that maybe that glimmer was once one of these humans. Maybe all glimmers were once such humans. We kept talking till midday. Then we exchanged hugs with each other and I left towards the Havens to the east. I reached an opening and camped for the night.&lt;/p&gt;&lt;p style=&quot;font-style: italic;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;i&gt;This marks the end of the first act of A Dissonant Chord. I have played enough to post another three parts from the second act, which follows Ikram on a trip to another plane of reality and back. But I will post the next three slowly over the next half a year or so. Without providing any more spoilers, I have had to pause playing that campaign because I am currently playing a prequel campaign with some people. This prequel campaign will determine exactly what Ikram is going to discover when I continue playing his campaign. Till then, if you feel like playing in a campaign within this universe, leave a comment.&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/3093090813343821944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/a-dissonant-chord-part-9.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/3093090813343821944'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/3093090813343821944'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/a-dissonant-chord-part-9.html' title='A Dissonant Chord - Part 9'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s72-c/Ikram&#39;s%20map.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-944922762384716668</id><published>2024-01-13T22:14:00.000+02:00</published><updated>2024-01-13T22:14:43.711+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A Dissonant Chord"/><category scheme="http://www.blogger.com/atom/ns#" term="Ironsworn"/><title type='text'>A Dissonant Chord - Part 8</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;&lt;i&gt;In part 7, Ikram, Arasen, Indirra, and their rescued friend Kendi successfully break Kendi out of jail using Indirra&#39;s enchanted mirror. However, as they flee, a drunk warrior spots Ikram and alerts others. A fight ensues and Ikram is able to kill one, but they are injured in the process. They escape to Ikram&#39;s old campsite to recover from their injuries.&lt;/i&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s3300/Ikram&#39;s%20map.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;3300&quot; data-original-width=&quot;2475&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s320/Ikram&#39;s%20map.png&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;font-style: italic;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;36th day of spring, year 132&lt;/h3&gt;&lt;p&gt;We woke feeling somewhat more energized this morning. Arasen treated me like a brother and was very upbeat in his outlook about everything. Indirra and Kendi, however, were not so optimistic. They were worried about an infected wound on Kendi&#39;s foot, which seemed to be getting worse, and asked if I had any knowledge of how to treat it now that we could no longer return to Greatrock. I gave Kendi some alcohol to numb the pain and took a close examination of his wound. I discovered a piece of wood buried deep inside and removed it. I then applied some healing herbs before rebandaging his foot. Once Kendi had calmed down, I noticed that Indirra had begun drinking the remaining alcohol. So we lent a helping hand as she finished it off. The rest of the day was spent swapping stories about our pasts to take our minds off our troubles.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;37th day of spring, year 132&lt;/h3&gt;&lt;p&gt;We awoke feeling rested, miraculously without hangovers. Kendi&#39;s wound seemed somewhat better. I asked what our next steps would be, but Indirra reminded me of the sodden that was pursuing me. &quot;Soddens are said to grow stronger over time, so you must act swiftly. Defeating them in combat usually prevents further attacks, though such fights are never fair. You can&#39;t evade them forever either - as spirits, they haunt you whether emerging from the water or not. The other option is to offer a gift, but for that you must discover what they cherished in life,&quot; she explained. &quot;But how will I know?&quot; I began to ask, when she interrupted, &quot;You commune with them. Go to water with friends during daylight and eat some wetwart - two or three should suffice. Then you may see their past.&quot; I replied, &quot;Very well, will you help me with this? Today even, the river is near.&quot; Indirra agreed and we set off. Along the way, she advised that avoiding soddens in future meant not approaching water alone or ensuring attacks would be ineffective. We left Kendi resting back at camp and Arasen to care for him and guard our supplies and Valeri. A half hour later, we reached the riverbank. Indirra tied a rope around us both, making it virtually impossible for either of us to be dragged into the water. After finding some wetwart sprouts, she asked, &quot;Ready?&quot; &quot;Yes,&quot; I answered, and lay down by the flowing water. I munched three wetwart sprouts and swallowed them, though the taste was horrible. We chatted for less than an hour before the effects of the warts began to take hold. At first, I started seeing movement in the water and among the trees. Indirra told me it was merely a hallucination and advised me to close my eyes. I did so, and after a minute I opened them again to see the trees as before. I felt myself starting to move towards them, unsure if I was actually walking or merely observing myself from a distance. Then I saw Valeri with no saddle. She looked at me briefly before turning and moving into the trees. I followed her silently, feeling no need to call out for her to wait. We walked through the forest as the trees began to glow with a dim blue light and that familiar smell surrounded me once more. I closed my eyes, took a deep breath and allowed it to envelop me. When I opened my eyes again, I felt sated but Valeri was no longer in front of me. The trees had stopped flowing and I found myself standing at the entrance of a cave, carrying the carcass of a deer which I knew I must bring it inside before something attacked. As I headed into the cave, a family was waiting - my brother, wife, uncle and infant daughter, whom I recognized at that moment. Everyone seemed glad to see the deer, except my brother - he was jealous as always. &quot;That&#39;s why he drowned me,&quot; I thought. &quot;That&#39;s why I need this power.&quot; But some small part of myself knew, &quot;This isn&#39;t real.&quot; I tried to remind myself. &quot;I need control. I saw this cave the same day you decided to attack me. You won&#39;t get my power. Let me go or I&#39;ll go straight to your family, and it won&#39;t be just your brother I kill.&quot; I thought to myself. Now I was breathing deeply and rapidly. &quot;At least bring me iron boots so that I can walk the land myself,&quot; a voice rang in my head. I thought I would do so and tried to stand up and walk back to Indirra. It took some time &quot;walking&quot; and slowly coming back to myself. When I finally did, it was almost evening. On the way back to camp, I recounted the whole experience and the sodden&#39;s request to Indirra. She agreed we needed to fulfill it but warned me about returning to Greatrock. I spent the rest of the day hunting, though I still felt somewhat slowed by the lingering effects of the wetwart.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;38th day of Spring, year 132&lt;/h3&gt;&lt;p&gt;I awoke feeling a bit less tired. I headed out to collect resources and found we were missing only the iron boots. I had the idea to steal the boots from the Cove, as it would be very risky to show up in the market and buy them. While stealing them carried its own dangers, at least it would also cause a small amount of damage to the Cove, and perhaps I could find other useful items. I suggested going alone and asked where their headquarters were located. Arasen confirmed what I partly already knew - their main building with a tall watchtower atop was on the east side of town, where they kept all their supplies, though it was guarded. &quot;Could I hire mercenaries to help us?&quot; I asked the others, explaining I had at least 900 arrowheads to spend on destroying the Cove. They were surprised by this revelation, and we began discussing our options. All thought finding enough trustworthy mercenaries would be risky, as a single betrayal could lead us into a trap. Hiring a mercenary group would be ideal, but the Cove had ensured none were available locally. I then suggested we set a trap along the road, using sharpened stakes concealed in a thicket, to ambush the next large Cove party we saw entering or leaving the city. We worked on this through the night.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;39th day of Spring, year 132&lt;/h3&gt;&lt;p&gt;After a restful sleep, we spent another day further preparing our trap. Kendi, who was still somewhat tired, mostly kept watch over the road.&lt;/p&gt;&lt;p style=&quot;font-style: italic;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;In the next and last part of the first act of A Dissonant Chord, a climactic confrontation awaits as plans come to fruition. Danger and revelation loom as our heroes spring their trap and even enter enemy territory. But will all go as expected, and what new factors may yet emerge from shadows unseen?&lt;/i&gt;&lt;/p&gt;&lt;p style=&quot;font-style: italic;&quot;&gt;&lt;i&gt;To be continued...&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/944922762384716668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/a-dissonant-chord-part-8.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/944922762384716668'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/944922762384716668'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/a-dissonant-chord-part-8.html' title='A Dissonant Chord - Part 8'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s72-c/Ikram&#39;s%20map.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-1210506619900909500</id><published>2024-01-03T19:24:00.001+02:00</published><updated>2024-05-04T12:33:24.230+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Cryptsetup basic cheatsheet</title><content type='html'>&lt;p&gt;To format a partition (e.g. sda1) as LUKS with an HMAC integrity layer:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cryptsetup luksFormat --type=luks2 --integrity hmac-sha256 /dev/sda1&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Or without an integrity layer: (you probably want this for most usecases)&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cryptsetup luksFormat --type=luks2 /dev/sda1&lt;/span&gt;&lt;/p&gt;&lt;p&gt;To open the encrypted partition:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cryptsetup open /dev/sda1 sda1_crypt&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Alternative was to open it while permanently marking the LUKS device to accept discard (TRIM) operations:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cryptsetup open /dev/sda1 sda1_crypt --allow-discards --persistent&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;This will create a decrypted device for the same partition which you can format like so: (&lt;span style=&quot;font-family: courier;&quot;&gt;-i 4M&lt;/span&gt; for storing files around 4MiB each, &lt;span style=&quot;font-family: courier;&quot;&gt;-m 0&lt;/span&gt; to avoid reserving space for the root user, change the &lt;span style=&quot;font-family: courier;&quot;&gt;Label&lt;/span&gt; to whatever you like)&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;mkfs.ext4 -i 4M -m 0 -L Label /dev/mapper/sda1_crypt&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Then close it:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cryptsetup close /dev/mapper/sda1_crypt&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Disconnect the device and reconnect it (or mount it however you normally do) to see if everything works.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/1210506619900909500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/cryptsetup-basic-cheatsheet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/1210506619900909500'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/1210506619900909500'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/cryptsetup-basic-cheatsheet.html' title='Cryptsetup basic cheatsheet'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-5970494088127889165</id><published>2024-01-03T19:15:00.001+02:00</published><updated>2024-01-03T19:15:12.716+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Parallelizing LAME MP3 conversions</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;In Linux, the P4 parameter below will launch 4 LAME instances in parallel to process all the FLAC files into MP3 with the given LAME settings.&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;find . -name &#39;*.flac&#39; -print0 | xargs -P4 -0 -I{} lame -q0 -V6 {}&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/5970494088127889165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/parallelizing-lame-mp3-conversions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/5970494088127889165'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/5970494088127889165'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/parallelizing-lame-mp3-conversions.html' title='Parallelizing LAME MP3 conversions'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-7028031466863930654</id><published>2024-01-03T18:57:00.000+02:00</published><updated>2024-01-03T18:57:14.845+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Finding (non) writable files under a directory</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;To find all writable by the current user files under the working directory:&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;find . -writable&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;To find the non writable ones:&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;find . ! -writable&lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/7028031466863930654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/finding-non-writable-files-under.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7028031466863930654'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7028031466863930654'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/finding-non-writable-files-under.html' title='Finding (non) writable files under a directory'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-306352427763035511</id><published>2024-01-02T23:11:00.002+02:00</published><updated>2024-01-02T23:11:52.691+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Force unmount stuck LUKS on Linux Mint</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;If Linux Mint refuses to mount an encrypted external drive that was abruptly disconnected and gives you a message like &quot;file already exists&quot; or something like that, instead of rebooting the system you can try unmounting it from the command line:&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&amp;nbsp; &lt;br /&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo udisksctl unmount -b /dev/mapper/luks-xxx-xxx-xxx-xxx-xxx &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;or &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo dmsetup -f remove /dev/mapper/luks-xxx-xxx-xxx-xxx-xxx &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;Just type until luks and then press tab twice to see what&#39;s the id in your case.&lt;/p&gt;    </content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/306352427763035511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/force-unmount-stuck-luks-on-linux-mint.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/306352427763035511'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/306352427763035511'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/force-unmount-stuck-luks-on-linux-mint.html' title='Force unmount stuck LUKS on Linux Mint'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-4112679363259166411</id><published>2024-01-02T22:55:00.004+02:00</published><updated>2024-01-02T22:55:41.783+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>LXDE/Raspberry language layout switching</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;Adding&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll de,us&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;to your ~/.bashrc (or manually running it after LXDE has started will allow toggling between German and US English keyboard layouts using the Alt-Shift keys on the Raspbian. I&#39;ve also used this same method in other situations where there was no graphical way to add and/or switch keyboard layouts. The scroll lock light will indicate the active layout when including &quot;grp_led:scroll&quot;. &quot;alt_shift_toggle&quot; can be replaced with another key combination. Running&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;setxkbmap -option&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;will reset your layout settings.&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;(This post is based on an old pastebin with notes I got form who knows where. I don&#39;t know if more recent versions of Raspbian have a better way to achieve this but the command is still useful anyhow)&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/4112679363259166411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/lxderaspberry-language-layout-switching.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4112679363259166411'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4112679363259166411'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/lxderaspberry-language-layout-switching.html' title='LXDE/Raspberry language layout switching'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-7689848335425608548</id><published>2024-01-02T22:17:00.000+02:00</published><updated>2024-01-02T22:56:42.922+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Mounting VirtualBox VDI files on Linux</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;The following commands, will mount a VirtualBox VDI file on Linux. First make the directory where you&#39;ll mount the virtual partition files inside the VDI (that&#39;s the best description I can give you of this, you&#39;ll know what I mean when you later see the contents of the directory):&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo mkdir -p /mnt/vdi/expanded&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;Now mount the VDI file:&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo vboximg-mount -i &amp;lt;path-to-vdi&amp;gt; -o allow_other /mnt/vdi/expanded&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;Then make a directory for the volume you want form inside the VDI: (you probably want vol1 but it depends on your case)&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo mkdir /mnt/vdi/vol1&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;Then mount the volume onto the directory:&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo mount /mnt/vdi/expanded/vol1 /mnt/vdi/vol1&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;When you are done, you can unmount everything with:&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cd /mnt&lt;br /&gt;sudo umount /mnt/vdi/vol1&lt;br /&gt;sudo umount /mnt/vdi/expanded&lt;br /&gt;sudo rm -rf /mnt/vdi&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;Be careful with that last command.&lt;/p&gt; </content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/7689848335425608548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/mounting-virtualbox-vdi-files-on-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7689848335425608548'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7689848335425608548'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/mounting-virtualbox-vdi-files-on-linux.html' title='Mounting VirtualBox VDI files on Linux'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-6779087964302102915</id><published>2024-01-02T22:06:00.000+02:00</published><updated>2024-01-02T22:56:42.921+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Printing all files in subdirectories sorted by date</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;On Linux:&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;find -printf &quot;%TY-%Tm-%Td %TT %p\n&quot; | sort -n&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;will show sorted by modification date all the files under the working directory. You can replace the &lt;span style=&quot;font-family: courier;&quot;&gt;%T&lt;/span&gt; parts with &lt;span style=&quot;font-family: courier;&quot;&gt;%A&lt;/span&gt; for access time sorting or with &lt;span style=&quot;font-family: courier;&quot;&gt;%C&lt;/span&gt; for creation time sorting.&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;The command may partially fail if you have filenames with weird unprintable characters.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/6779087964302102915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/printing-all-files-in-subdirectories.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6779087964302102915'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6779087964302102915'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/printing-all-files-in-subdirectories.html' title='Printing all files in subdirectories sorted by date'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-5584797519409317726</id><published>2024-01-02T19:27:00.002+02:00</published><updated>2024-01-02T22:56:42.921+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>Finding shared library dependencies of ELF binaries</title><content type='html'>&lt;p&gt;If you have an ELF binary in your current directory named luajit, run the following command to see which shared libraries it depends on:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;readelf -d luajit | grep NEEDED&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/5584797519409317726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/finding-shared-library-dependencies-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/5584797519409317726'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/5584797519409317726'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/finding-shared-library-dependencies-of.html' title='Finding shared library dependencies of ELF binaries'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-7285368269854660012</id><published>2024-01-02T19:24:00.005+02:00</published><updated>2024-01-02T22:18:01.849+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="My Progs"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><category scheme="http://www.blogger.com/atom/ns#" term="System Utilities"/><title type='text'>Simple Lua benchmark</title><content type='html'>Start a Lua interpreter and paste the following in it:&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;l=os.time() m=0 c=0 while true do n=os.time() if n~=l then l=n m=math.max(m,c) print(&quot;Currently: &quot;..c,math.floor(0.5+c*100/m)..&quot;% of maximum &quot;..m) c=0 end c=c+1 end&lt;/span&gt;&lt;/p&gt;&lt;p&gt;It will show you the current cycles per second and what percentage of the maximum cycles per seconds it is since you started running it.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/7285368269854660012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/simple-lua-benchmark.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7285368269854660012'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7285368269854660012'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/simple-lua-benchmark.html' title='Simple Lua benchmark'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-6316883696473500890</id><published>2024-01-02T19:19:00.000+02:00</published><updated>2024-01-02T22:56:42.921+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How To"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Pastebins"/><title type='text'>How to store command output in bash variable</title><content type='html'>&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;x=&quot;$(head -15 testfile.txt)&quot;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;This would store the first 15 lines of testfile.txt in variable x.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/6316883696473500890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2024/01/how-to-store-command-output-in-bash.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6316883696473500890'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/6316883696473500890'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2024/01/how-to-store-command-output-in-bash.html' title='How to store command output in bash variable'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-7433306481046097843</id><published>2023-12-21T13:35:00.005+02:00</published><updated>2024-01-13T21:27:41.166+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A Dissonant Chord"/><category scheme="http://www.blogger.com/atom/ns#" term="Ironsworn"/><title type='text'>A Dissonant Chord - Part 7</title><content type='html'>&lt;p&gt;&lt;i&gt;In part 6,&amp;nbsp;Ikram met a man named Arasen who told him he could help deal with Ikram&#39;s sodden problem. Arasen took Ikram to meet his wife Indirra. They revealed to Ikram that he and Indirra are both invokers. Indirra showed Ikram her enchanted mirror which allows her to move the interior space of buildings between the real world and an alternate location. That night, Ikram agreed to help Arasen and Indirra rescue their friend Kendi who was imprisoned by the Cove and together they concocted a plan for the next day.&lt;/i&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s3300/Ikram&#39;s%20map.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;3300&quot; data-original-width=&quot;2475&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s320/Ikram&#39;s%20map.png&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;34th day of spring, year 132&lt;/h3&gt;&lt;p&gt;In the morning, we set our plan in motion. We put a leather cover over the mirror. I tied Arasen&#39;s hands, roughed up his face a bit, put the mirror on my back and went to the jail. I explained to the guards that I caught him stealing from my employer. I said I tracked him to his hideout where I captured him and found this very expensive mirror. I took off the leather cover and explained that my rich employer is preoccupied today but he will be visiting tomorrow to see if the mirror is from his wares, after making a list of missing items. &quot;A thief, huh? We&#39;ll handle him. We&#39;ll make sure he tells us where he&#39;s hiding the rest of the loot,&quot; the guard said. I nodded to the guard to move away from Arasen and said to him in a low voice: &quot;My employer has an unusual request. He would like to speak to the thief tomorrow and he would like him to be intact for that talk.&quot; I passed him a purse with forty arrowheads. He weighed the purse in his hands and said: &quot;This is enough for me to delay the interrogation, but you realize I ain&#39;t the only one here. I believe another one like this would be enough to convince my colleagues too.&quot; I pulled out my purse and passed him another forty arrowheads. &quot;Of course, I understand. Please do make sure that the thief is in good state until my employer talks with him.&quot; I said. He nodded with a smile and I left. When I got back to Indirra, we experimented to see if she could let me absorb mystical energy from her. We succeeded, but it was really taxing as the energy felt very different. Reusing my &quot;eating&quot; analogy, this felt like eating something that was still alive and then feeling it stop writhing inside me when it died. We then went to sleep.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;35th day of spring, year 132&lt;/h3&gt;&lt;p&gt;Next morning, Indirra said she was only able to sleep because of how drained she felt after the absorption. We got out and got to the jail. Indirra waited about 200 steps from the jail while I went to speak with the guard. &quot;Good day. My employer would like to speak with the thief and he asked me to check that everything is in order. Is the mirror here?&quot; I asked the same guard. &quot;Good day sir. Yes, he is here and we have the mirror too,&quot; he replied. &quot;Excellent. He&#39;d be most grateful if you could chain the prisoner here in this room and have the mirror ready. He&#39;ll be here shortly.&quot; &quot;Alright, alright, let me go get the prisoner and, here, put the mirror wherever you want,&quot; he said as he handed me the mirror. I placed the mirror next to a table in the entrance room. I stepped out and went to hide with Indirra. &quot;Ready?&quot; she asked. &quot;I believe so,&quot; I replied. We nodded at each other and then looked at the graveyard next to the jailhouse. I thought of a fiery giant, and presumably Indirra did so too, as planned. Whoosh, a three-meter-tall primordial made of red-orange flames appeared as if someone lit a fireplace up, in the middle of the graveyard. People around started screaming: &quot;Primordial! Gods save us! Run!&quot; A guard came out from the jailhouse, saw the &quot;primordial,&quot; put his head back through the doorway and shouted so. A moment later three guards were out of the jailhouse. One ran away in terror. The other three were looking at the now moving &quot;primordial&quot; and were asking each other what to do. &quot;Now is our chance!&quot; Indirra said. We both ran across the street, past a few panicking residents and into the jailhouse. None of the guards even saw us, all focused on the fake primordial. The mirror was exactly where I left it, and Arasen was chained to a chair next to the table. Indirra ran directly to the mirror and touched it. Almost immediately, the view from the door was replaced by an equally bright but completely amorphous veil and all the sound and screaming was gone. &quot;Are there more guards?&quot; I asked Arasen while Indirra hugged him. &quot;No, they all just ran out. Kendi is chained in the back cell,&quot; he replied. We tried to find the keys for Arasen&#39;s chains but it looked like one of the guards took all the keys with him. I used an invocation to rotate the lock&#39;s mechanism and it worked! The two of them used their knives to cut Kendi down from the wall where he was tied. He was roughed up badly. Indirra tried to hug him but stopped when he squirmed. After getting him some water and checking that he was not infected anywhere, he looked at me. I introduced myself, and Arasen added that I&#39;m after the Cove. Indirra immediately shouted &quot;And he&#39;s an invoker too!&quot; &quot;Who&#39;s holding off the guards?&quot; Kendi asked. We explained that we used the mirror and how we got it into the jailhouse yesterday. &quot;Really smart. Thank you,&quot; he replied. &quot;No! Thank you for holding out that long!&quot; Indirra replied. &quot;So what now?&quot; he asked. &quot;Now we break the back wall,&quot; Arasen said and explained the plan. Indirra kept tabs on the astonished guards who had no idea what had happened, while Arasen and I broke the back wall and Kendi rested until it was nighttime. Indirra came to the back and told us that the guards seemed to be freaked out by the whole disappearance of the jailhouse&#39;s interior and had not entered the building since the sun went down. So we would be able to skip the step of smoking the guards out. I wrapped Kendi&#39;s wounds and made a splint for his broken arm. Then we waited at the back exit while Indirra went to a point where she could see if anyone entered the alternate building. Once she saw it was clear, she flipped the mirror and came back to us. I took a look outside the hole in the wall and saw no one, so we covered the mirror and moved out. We headed away towards the darkest alley we could find, but as we entered it, a back door opened and a drunk man got out of it. He saw my face in the light of the building. His tired eyes opened wide and he drunkenly shouted, &quot;Hey!...It&#39;s that...it&#39;s the Graycliff asshole! Guys! The Grayglidiot!&quot; We ran as fast as we could, given Kendi&#39;s condition. We could hear commotion, probably the warrior explaining to his friends what he saw. We accidentally dropped some of the chemicals that we would have used to create smoke. I looked around and found a nice wooden board that we could hide behind, as it looked like a house wall from the alley. We hid as a group of three warriors passed by us. One of them was saying, &quot;You drunk idiot, you do this every payday. I hope it&#39;s not another dog again...&quot; We waited a few minutes, and while waiting, I realized how bad I was at sneaking and that I should rely more on my senses and in finding better hiding spots, like the one we were hiding in at that moment. I shushed Indirra and Arasen, who were talking, and listened carefully for any signs of the warriors. &quot;I&#39;m telling you we must have missed them! Just go back, I can take them on myself, I don&#39;t need you bastards.&quot; The warrior started looking around for us in any dark place he could find while his friends left him. Eventually, he sat down to rest, mumbling to himself. &quot;Can I invoke sleepiness on him?&quot; I whispered to Indirra. &quot;Maybe, especially now that he is drunk,&quot; she replied. I focused on him and started to feel sleepy myself but then I jolted, and he did too. I fell backwards on Kendi, and broke the splint on his broken arm as he fell with me. He screamed in pain and quickly shut his mouth with his hands, but it was too late. The warrior ran towards us. We all, except Kendi, grabbed our weapons. I took aim where the warrior would come into view. It turns out the warrior had considered this danger and instead kicked the whole wooden board that we were hiding behind onto us. We tried to push the board off of us, but the warrior was already plunging his sword through it. Some of the wood that splintered off cut my forehead. I jumped and rolled out from under the board, but the warrior kicked my back and threw me to the ground. I turned around and stabbed his leg with an arrow as he punched down on my head. Indirra was moving the mirror away while Arasen grabbed the warrior from behind to throw him down. Dizzy, I stood up as Arasen started fighting with the warrior and was quickly thrown to the ground. The warrior lunged towards me again, and I failed to stab him as he kicked me in the gut. I crashed into the house wall and pushed off of it to launch myself towards the warrior, only to get another punch in my face. While I was recovering, the warrior lifted his sword and tried to say something, which I did not understand. I needed just one good opening, but I was clueless when it came to brawling. But I had no other option but to throw myself at him. His sword cut me on the ribs, but I did stab him in the neck. He stumbled back as I held my bleeding wound. I made the arrow in his neck pull out and held his wound open (through invocation) to maximize his bleeding. He tried to stop it, but within a few seconds, he slumped to the ground in a pool of blood. I jolted back to Kendi and picked him up, and we all ran towards where Valeri was waiting for us. We put Kendi on her and set off toward my old campsite outside Greatrock. Kendi, and we, were safe.&lt;/p&gt;&lt;i&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;In the next part, seeking answers, Ikram communes with the spirit haunting him, and through their contact, a bargain is struck and secrets revealed. But he has to turn his focus on more mundane issues, preparing to further harm the Cove of Lament.&lt;/i&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;To be continued...&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/7433306481046097843/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2023/12/a-dissonant-chord-part-7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7433306481046097843'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/7433306481046097843'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2023/12/a-dissonant-chord-part-7.html' title='A Dissonant Chord - Part 7'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpaAAoMrai223g_6Gn7ptt9eePLJoTYv29bcKNNIHAzRrXBT0C3NnkDBjRyI9azbOEJiYFKPw3h_WRPq_hm8aEyWMweo-dMl85oO3zcf4hs99eDUUA98JhpFhKcFXvEr7oACgdEddNHrKVA6Rgre7PeKadCzSyKZyh1JLuQ9blXT-QHhwRfVKk7UIfKg/s72-c/Ikram&#39;s%20map.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5420973216298028808.post-4427482574263233242</id><published>2023-12-20T00:55:00.000+02:00</published><updated>2023-12-20T00:55:04.978+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hardware"/><title type='text'>Dell Vostro 15 3525 review</title><content type='html'>&lt;p&gt;I&#39;ve got a &lt;a href=&quot;https://www.dell.com/en-uk/shop/laptops-2-in-1-pcs/vostro-3525-laptop/spd/vostro-15-3525-laptop&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Dell Vostro 15 3525&lt;/a&gt; laptop since Q2 of 2022.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Overall it&#39;s bad but let&#39;s start with the good things about it:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Devuan Linux worked almost out of the box on it although I think that back then I had to use a slightly newer kernel otherwise the sound card was not properly recognized and I was missing the sound input.&lt;/li&gt;&lt;li&gt;Opening the laptop to change the disks, battery and RAM is easy too.&amp;nbsp;&lt;/li&gt;&lt;li&gt;The screen is nice. It only had a single blue subpixel that was dead. Hardly noticeable, I didn&#39;t even see it during my first dead pixel tests.&lt;/li&gt;&lt;li&gt;The screen hinges and overall the body of the laptop feels solid.&lt;/li&gt;&lt;li&gt;The CPU is fast enough for what I need it for. Rimworld runs perfectly on it. Minecraft is playable.&lt;/li&gt;&lt;li&gt;It has a camera shutter.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Now, I may have been unlucky and maybe it&#39;s just my laptop that has the following issues, I have no way to check. Let&#39;s go over them one by one:&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;It would refuse to accept any of the spare SSDs that I had in it&#39;s SATA slot. It always showed communication errors. I thought it was some Linux incompatibility. It wasn&#39;t. I noticed it would accept HDDs though, so I used those. Within 6 months, it destroyed 6 HDDs. I&#39;ve had many HDDs in my life, very few died on me, maybe 4 over multiple decades years. This laptop almost doubled the number within 6 months. I took it for service, Dell returned it saying they saw no issue. The shop I bought it from, which had seen the issue, sent it back to Dell. They replaced the whole motherboard and all the issues went away. SSDs started working with no communication issues.&lt;/li&gt;&lt;li&gt;It gets too hot. I&#39;ve completely disabled turboboost because, with it enabled, a single thread of load would take the CPU to 95C-100C. With turboboost off it is at 50C when it&#39;s almost, but not completely idling. Running something like &lt;a href=&quot;https://www.wonderdraft.net/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Wonderdraft&lt;/a&gt; will immediately take it to 100C, turboboost or not, a feat that no game can achieve. A friend has practically the same laptop but with a 17&#39; screen and the cooling system is insanely better. Dell just dropped the ball with the 15&#39; version. The keys above the area where the CPU is are extremely hot, which is both annoying when typing on them and I believe has caused issues to the keyboard itself.&lt;/li&gt;&lt;li&gt;The keyboard sucks. Horribly so:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;I felt like shift stayed pressed for longer than I held it down, resulting very frequently in typos like &quot;HEllo there stranger! DO you accept&amp;nbsp;ROberto IErusalimschy&amp;nbsp;as you LOrd and SAvior?&quot; I thought I&#39;d get used to it but this being not the only keyboard that I type on, it was practically impossible to train my fingers to hold shift for a shorter time than on other keyboards. I wasn&#39;t even completely sure that this wasn&#39;t just in my head but then the issue went away when my motherboard was replaced because of the SATA issues.&lt;/li&gt;&lt;li&gt;The top row with Esc and the F keys is either not exactly centered in the chassis or, if it is, the holes of the keys are not wide enough because if you press these keys a little bit sideways (not exactly straight down) they scrape the chassis and make a &quot;crack&quot; sound.&lt;/li&gt;&lt;li&gt;The horizontal row of numerical keys has recently started ignoring keypresses unless pressed hard. My 3, 5, and especially 9 are very easy to on-purpose press beyond the point of resistance without really causing a keypress to register, and I&#39;ve been more and more typos during regular typing like often missing these digits or their shifted forms. I suspect that this may be partially caused by the extreme heat from the CPU speeding up any corrosive/oxidizing process that naturally happens on the contacts under the rubber domes.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Small annoyance but I have not found a good way to reliably turn off the &lt;strike&gt;jump-scare&lt;/strike&gt; PC speaker which is extremely loud. Right now I have a cronjob that turns it off every minute, because when pulseaudio starts up or if I restart it for whatever reason, it re-enables the PC speaker.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;At this point I need those numerical keys fixed and I&#39;m about halfway through the 3 year warranty period but I don&#39;t want to stay without my main computer for a month or more. If the last time is any indication, Dell&#39;s service might need to have it shipped twice to them before they actually fix it. So I am considering buying a &lt;a href=&quot;https://www.tuxedocomputers.com/en/TUXEDO-Aura-14-Gen3.tuxedo&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Tuxedo Aura 14&lt;/a&gt;, sending the Vostro for slow servicing and then selling it once I get it back.&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='https://www.inshame.com/feeds/4427482574263233242/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.inshame.com/2023/12/dell-vostro-15-3525-review.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4427482574263233242'/><link rel='self' type='application/atom+xml' href='https://www.blogger.com/feeds/5420973216298028808/posts/default/4427482574263233242'/><link rel='alternate' type='text/html' href='https://www.inshame.com/2023/12/dell-vostro-15-3525-review.html' title='Dell Vostro 15 3525 review'/><author><name>Tritonio</name><uri>http://www.blogger.com/profile/03062520886873588956</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgidiftWOeH9WkI8WFMnFTVsc7ek7gvmMqYGOnSL1zpPDRQ4NHTdR_26j4YxxjcjaLZXlS4fjGFbc8v64KHDmXUPmxQkmFiJ0ZQ0x14ZLgIiwFJvxZPJDkzoUE9-bki-w/s113/vibigy.png'/></author><thr:total>0</thr:total></entry></feed>