diff --git a/archive/threads/NOTimothyLottes/2022-11-04-vulkan-1500-lines-of-overhead-including-header/2022-11-04-rianflo-welcome-not-back.md b/archive/threads/NOTimothyLottes/2022-11-04-vulkan-1500-lines-of-overhead-including-header/2022-11-04-rianflo-welcome-not-back.md new file mode 100644 index 0000000..b65d4bd --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-04-vulkan-1500-lines-of-overhead-including-header/2022-11-04-rianflo-welcome-not-back.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Welcome Not Back! 🤘🏻♥️" +type: archive +source: twitter +source_url: "https://x.com/rianflo/status/1588561182730113025" +author: "Florian Hoenig" +handle: rianflo +post_id: "1588561182730113025" +date: 2022-11-04 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Welcome Not Back! 🤘🏻♥️" +in_reply_to: "" +parent_post_id: "1588515348223254528" +--- + +## Source + +- URL: https://x.com/rianflo/status/1588561182730113025 +- Author: Florian Hoenig (@rianflo) +- Posted: 2022-11-04 15:57:54 + +## Branch + +**1/** + +@NOTimothyLottes Welcome Not Back! 🤘🏻♥️ + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2022-11-04-vulkan-1500-lines-of-overhead-including-header/index.md b/archive/threads/NOTimothyLottes/2022-11-04-vulkan-1500-lines-of-overhead-including-header/index.md new file mode 100644 index 0000000..585a6a5 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-04-vulkan-1500-lines-of-overhead-including-header/index.md @@ -0,0 +1,36 @@ +--- +title: "@rianflo Vulkan: ~1500 lines of overhead (including header src, as I don't include) for complete hotrod bind-everything-only-once compute-only gfx engine." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1588515348223254528" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1588515348223254528" +date: 2022-11-04 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@rianflo Vulkan: ~1500 lines of overhead (including header src, as I don't include) for complete hotrod bind-everything-only-once compute-only gfx engine." +in_reply_to: "1588331007622930432" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1588515348223254528 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2022-11-04 12:55:46 + +> I am not huge fan of “patches and wires” but Vulkan might be a sweet spot for that. +> Kinda like what the Xcode visualization of metal does. But reverse. + +## Thread + +**1/** + +@rianflo Vulkan: ~1500 lines of overhead (including header src, as I don't include) for complete hotrod bind-everything-only-once compute-only gfx engine. Not a fan of VK bloatware API complexity, but frankly it can be minimized, and exposes enough to do wonderfull things to the hardware. + +Branches: [[2022-11-04-rianflo-welcome-not-back]] diff --git a/archive/threads/NOTimothyLottes/2022-11-05-19-even-without-double-rate-16-bit-16-bit-is-the/index.md b/archive/threads/NOTimothyLottes/2022-11-05-19-even-without-double-rate-16-bit-16-bit-is-the/index.md new file mode 100644 index 0000000..09c4b8f --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-05-19-even-without-double-rate-16-bit-16-bit-is-the/index.md @@ -0,0 +1,31 @@ +--- +title: "[19] Even without double rate 16-bit, 16-bit is the most important tool for managing register pressure problems, esp with smaller HW register limits or compiler troubles" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1588906002212323328" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1588906002212323328" +date: 2022-11-05 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "[19] Even without double rate 16-bit, 16-bit is the most important tool for managing register pressure problems, esp with smaller HW register limits or compiler troubles" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1588906002212323328 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2022-11-05 14:48:06 + +## Thread + +**1/** + +[19] Even without double rate 16-bit, 16-bit is the most important tool for managing register pressure problems, esp with smaller HW register limits or compiler troubles diff --git a/archive/threads/NOTimothyLottes/2022-11-08-example-of-bind-everything-once-layout-aliasing/index.md b/archive/threads/NOTimothyLottes/2022-11-08-example-of-bind-everything-once-layout-aliasing/index.md new file mode 100644 index 0000000..d792763 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-08-example-of-bind-everything-once-layout-aliasing/index.md @@ -0,0 +1,33 @@ +--- +title: "Example of \"Bind-Everything-Once\" Layout Aliasing in Vulkan." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1589810282104524800" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1589810282104524800" +date: 2022-11-08 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Example of \"Bind-Everything-Once\" Layout Aliasing in Vulkan." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1589810282104524800 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2022-11-08 02:41:23 + +## Thread + +**1/** + +Example of "Bind-Everything-Once" Layout Aliasing in Vulkan. Storage image format by aliased name, also bound as sampled image. Choose buffer {readonly,writeonly,volatile (read uncached),atomic} access by aliased name, as either {uint,uint4,float,float4}. + +Media (not lifted): `1589810282104524800_FhAidkhUoAA3FJz_orig.png` diff --git a/archive/threads/NOTimothyLottes/2022-11-09-if-only-pc-vendors-with-open-isas-amd-intel-would/index.md b/archive/threads/NOTimothyLottes/2022-11-09-if-only-pc-vendors-with-open-isas-amd-intel-would/index.md new file mode 100644 index 0000000..40708d4 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-09-if-only-pc-vendors-with-open-isas-amd-intel-would/index.md @@ -0,0 +1,31 @@ +--- +title: "@olson_dan If only PC vendors with open ISAs (AMD/Intel) would allow loading binary compute shaders in VK built using non-driver toolchains." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1590241107317002240" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1590241107317002240" +date: 2022-11-09 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@olson_dan If only PC vendors with open ISAs (AMD/Intel) would allow loading binary compute shaders in VK built using non-driver toolchains." +in_reply_to: "1590003266129383424" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1590241107317002240 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2022-11-09 07:13:19 + +## Thread + +**1/** + +@olson_dan If only PC vendors with open ISAs (AMD/Intel) would allow loading binary compute shaders in VK built using non-driver toolchains. If Valve enabled binary shaders on Steam Deck in Linux, that would be my new exclusive dev platform, instead of just a possible porting target diff --git a/archive/threads/NOTimothyLottes/2022-11-13-my-prefered-method-of-managing-application-data/index.md b/archive/threads/NOTimothyLottes/2022-11-13-my-prefered-method-of-managing-application-data/index.md new file mode 100644 index 0000000..e3c2762 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-13-my-prefered-method-of-managing-application-data/index.md @@ -0,0 +1,31 @@ +--- +title: "My prefered method of managing application data was the 'self-modifying-binary': (a.) on launch copy binary to temp file, (b.) launch temp file, (c.) exit, (d.) now temp file execution can freely modify origional binary :)" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1591646625692553216" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1591646625692553216" +date: 2022-11-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "My prefered method of managing application data was the 'self-modifying-binary': (a.) on launch copy binary to temp file, (b.) launch temp file, (c.) exit, (d.) now temp file execution can freely modify origional binary :)" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1591646625692553216 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2022-11-13 04:18:21 + +## Thread + +**1/** + +My prefered method of managing application data was the 'self-modifying-binary': (a.) on launch copy binary to temp file, (b.) launch temp file, (c.) exit, (d.) now temp file execution can freely modify origional binary :) diff --git a/archive/threads/NOTimothyLottes/2022-11-30-explicit-packed-16-bit-code-fsr1-example-https/index.md b/archive/threads/NOTimothyLottes/2022-11-30-explicit-packed-16-bit-code-fsr1-example-https/index.md new file mode 100644 index 0000000..608d0bc --- /dev/null +++ b/archive/threads/NOTimothyLottes/2022-11-30-explicit-packed-16-bit-code-fsr1-example-https/index.md @@ -0,0 +1,33 @@ +--- +title: "@rianflo Explicit packed 16-bit code." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1597798161665253376" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1597798161665253376" +date: 2022-11-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@rianflo Explicit packed 16-bit code." +in_reply_to: "1597720454000541696" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1597798161665253376 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2022-11-30 03:42:22 + +> @NOTimothyLottes Oh wait, you're saying you wrote the fp16 math manually? + +## Thread + +**1/** + +@rianflo Explicit packed 16-bit code. FSR1 example: https://github.com/GPUOpen-Effects/FidelityFX-FSR/blob/master/ffx-fsr/ffx_fsr1.h - There are different 'F' (32-bit) and 'H' and 'Hx2' (packed 16-bit) functions. diff --git a/archive/threads/NOTimothyLottes/2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k/2023-04-26-wvo-a-few-k-why-not-just-1k-https-strlen-com-false.md b/archive/threads/NOTimothyLottes/2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k/2023-04-26-wvo-a-few-k-why-not-just-1k-https-strlen-com-false.md new file mode 100644 index 0000000..bec8685 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k/2023-04-26-wvo-a-few-k-why-not-just-1k-https-strlen-com-false.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes @kenpex @wadetb A few K? Why not just 1K? https://strlen.com/false-language/" +type: archive +source: twitter +source_url: "https://x.com/wvo/status/1651282559287042048" +author: "Wouter van Oortmerssen" +handle: wvo +post_id: "1651282559287042048" +date: 2023-04-26 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @kenpex @wadetb A few K? Why not just 1K? https://strlen.com/false-language/" +in_reply_to: "" +parent_post_id: "1651268028795961344" +--- + +## Source + +- URL: https://x.com/wvo/status/1651282559287042048 +- Author: Wouter van Oortmerssen (@wvo) +- Posted: 2023-04-26 17:50:16 + +## Branch + +**1/** + +@NOTimothyLottes @kenpex @wadetb A few K? Why not just 1K? https://strlen.com/false-language/ + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k/index.md b/archive/threads/NOTimothyLottes/2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k/index.md new file mode 100644 index 0000000..a92a205 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k/index.md @@ -0,0 +1,35 @@ +--- +title: "@kenpex @wadetb Can make a custom forth to binary in a few K." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1651268028795961344" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1651268028795961344" +date: 2023-04-26 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@kenpex @wadetb Can make a custom forth to binary in a few K." +in_reply_to: "1651253961524142081" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1651268028795961344 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-04-26 16:52:31 + +> @wadetb Yes of course. Forth is a language that took me a while to grok (re:the why it makes sense) - but once I understood the context it totally does. @NOTimothyLottes experiments w/it are also fun. + +## Thread + +**1/** + +@kenpex @wadetb Can make a custom forth to binary in a few K. Bring up a runtime assembler in the language and do anything fast and simple from that point, load libraries, make system/dll C calls. 100,000x complexity reduction in compiler toolchain size. + +Branches: [[2023-04-26-wvo-a-few-k-why-not-just-1k-https-strlen-com-false]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-SebAaltonen-would-be-nice-to-talk-a-full-presentation-about.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-SebAaltonen-would-be-nice-to-talk-a-full-presentation-about.md new file mode 100644 index 0000000..ada594c --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-SebAaltonen-would-be-nice-to-talk-a-full-presentation-about.md @@ -0,0 +1,44 @@ +--- +title: "@NOTimothyLottes Would be nice to talk a full presentation about this topic, but people want me to show cool tech and pretty pixels instead." +type: archive +source: twitter +source_url: "https://x.com/SebAaltonen/status/1674768757867020289" +author: "Sebastian Aaltonen" +handle: SebAaltonen +post_id: "1674768757867020289" +date: 2023-06-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Would be nice to talk a full presentation about this topic, but people want me to show cool tech and pretty pixels instead." +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/SebAaltonen/status/1674768757867020289 +- Author: Sebastian Aaltonen (@SebAaltonen) +- Posted: 2023-06-30 13:16:02 + +## Branch + +**1/** + +@NOTimothyLottes Would be nice to talk a full presentation about this topic, but people want me to show cool tech and pretty pixels instead. Maybe one day. + +I will save your image for that day (if I get approval to use it), since Twitter search is super bad. + +**2/** + +@SebAaltonen "Approval", haha, sure it's covered under my favorite license + +Media (not lifted): `1674776150671781888_Fz3_kb8WYAMXvcT_orig.png` + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-_spolsh-once-in-a-while-people-need-to-be-reminded-to.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-_spolsh-once-in-a-while-people-need-to-be-reminded-to.md new file mode 100644 index 0000000..de00545 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-_spolsh-once-in-a-while-people-need-to-be-reminded-to.md @@ -0,0 +1,41 @@ +--- +title: "@NOTimothyLottes Once in a while people need to be reminded to stop the bloat, understand the machine guts and be self aware about productive process" +type: archive +source: twitter +source_url: "https://x.com/_spolsh/status/1674839597853835285" +author: "Michal Klos" +handle: _spolsh +post_id: "1674839597853835285" +date: 2023-06-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Once in a while people need to be reminded to stop the bloat, understand the machine guts and be self aware about productive process" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/_spolsh/status/1674839597853835285 +- Author: Michal Klos (@_spolsh) +- Posted: 2023-06-30 17:57:31 + +## Branch + +**1/** + +@NOTimothyLottes Once in a while people need to be reminded to stop the bloat, understand the machine guts and be self aware about productive process +https://tonsky.me/blog/disenchantment/ + +**2/** + +@_spolsh That was a fantastic read, thanks + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-domipheus-i-like-this-given-i-never-write-code-any-more.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-domipheus-i-like-this-given-i-never-write-code-any-more.md new file mode 100644 index 0000000..9f9ab93 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-domipheus-i-like-this-given-i-never-write-code-any-more.md @@ -0,0 +1,37 @@ +--- +title: "@NOTimothyLottes I like this, given I never write code any more." +type: archive +source: twitter +source_url: "https://x.com/domipheus/status/1674777379414179840" +author: "Colin Riley 🎗" +handle: domipheus +post_id: "1674777379414179840" +date: 2023-06-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I like this, given I never write code any more." +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/domipheus/status/1674777379414179840 +- Author: Colin Riley 🎗 (@domipheus) +- Posted: 2023-06-30 13:50:17 + +## Branch + +**1/** + +@NOTimothyLottes I like this, given I never write code any more. +sadly i am still a grumpy git. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-leonard_coder-4e71-if-you-know-you-know.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-leonard_coder-4e71-if-you-know-you-know.md new file mode 100644 index 0000000..79561d4 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-06-30-leonard_coder-4e71-if-you-know-you-know.md @@ -0,0 +1,41 @@ +--- +title: "@NOTimothyLottes $4e71" +type: archive +source: twitter +source_url: "https://x.com/leonard_coder/status/1674771452799614976" +author: "Arnaud Carré" +handle: leonard_coder +post_id: "1674771452799614976" +date: 2023-06-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes $4e71" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/leonard_coder/status/1674771452799614976 +- Author: Arnaud Carré (@leonard_coder) +- Posted: 2023-06-30 13:26:44 + +## Branch + +**1/** + +@NOTimothyLottes $4e71 +if you know, you know + +**2/** + +@leonard_coder ${EA, 1A, 3A, 5A, 7A, DA, or FA} + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-CodingFiend-i-designed-a-language-beads-which-uses-a-graph-db.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-CodingFiend-i-designed-a-language-beads-which-uses-a-graph-db.md new file mode 100644 index 0000000..7c09a13 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-CodingFiend-i-designed-a-language-beads-which-uses-a-graph-db.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes @Jonathan_Blow i designed a language Beads, which uses a graph DB, has no memory allocation, super modular, approaches this minimalism as close as humanly possible, but billable hour / job security seeking programmers refuse to try it" +type: archive +source: twitter +source_url: "https://x.com/CodingFiend/status/1675149939759017987" +author: "Coding Fiend" +handle: CodingFiend +post_id: "1675149939759017987" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @Jonathan_Blow i designed a language Beads, which uses a graph DB, has no memory allocation, super modular, approaches this minimalism as close as humanly possible, but billable hour / job security seeking programmers refuse to try it" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/CodingFiend/status/1675149939759017987 +- Author: Coding Fiend (@CodingFiend) +- Posted: 2023-07-01 14:30:43 + +## Branch + +**1/** + +@NOTimothyLottes @Jonathan_Blow i designed a language Beads, which uses a graph DB, has no memory allocation, super modular, approaches this minimalism as close as humanly possible, but billable hour / job security seeking programmers refuse to try it + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-DefenceForceOrg-many-games-used-to-be-like-that-at-least-the-ones.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-DefenceForceOrg-many-games-used-to-be-like-that-at-least-the-ones.md new file mode 100644 index 0000000..ec107de --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-DefenceForceOrg-many-games-used-to-be-like-that-at-least-the-ones.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes Many games used to be like that, at least the ones without dynamic content, mods, etc..." +type: archive +source: twitter +source_url: "https://x.com/DefenceForceOrg/status/1675059402280251395" +author: "Dbug" +handle: DefenceForceOrg +post_id: "1675059402280251395" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Many games used to be like that, at least the ones without dynamic content, mods, etc..." +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/DefenceForceOrg/status/1675059402280251395 +- Author: Dbug (@DefenceForceOrg) +- Posted: 2023-07-01 08:30:57 + +## Branch + +**1/** + +@NOTimothyLottes Many games used to be like that, at least the ones without dynamic content, mods, etc... + +Most of the stuff I worked on on PSX and Dreamcast basically just loads big files with everything pre-allocated and aligned properly at the final location, ready to use. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-PierreTerdiman-i-was-calling-it-disoriented-programming-just-the.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-PierreTerdiman-i-was-calling-it-disoriented-programming-just-the.md new file mode 100644 index 0000000..c324664 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-PierreTerdiman-i-was-calling-it-disoriented-programming-just-the.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes I was calling it \"disoriented programming\" just the other day." +type: archive +source: twitter +source_url: "https://x.com/PierreTerdiman/status/1675088736621559808" +author: "Pierre Terdiman" +handle: PierreTerdiman +post_id: "1675088736621559808" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I was calling it \"disoriented programming\" just the other day." +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/PierreTerdiman/status/1675088736621559808 +- Author: Pierre Terdiman (@PierreTerdiman) +- Posted: 2023-07-01 10:27:31 + +## Branch + +**1/** + +@NOTimothyLottes I was calling it "disoriented programming" just the other day. + +https://x.com/PierreTerdiman/status/1673389650172321813?s=20 + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-SimonNordon-nop-is-ideal.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-SimonNordon-nop-is-ideal.md new file mode 100644 index 0000000..c1f3092 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-SimonNordon-nop-is-ideal.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes NOP is ideal." +type: archive +source: twitter +source_url: "https://x.com/SimonNordon/status/1674970938234875907" +author: "Simon Nordon" +handle: SimonNordon +post_id: "1674970938234875907" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes NOP is ideal." +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/SimonNordon/status/1674970938234875907 +- Author: Simon Nordon (@SimonNordon) +- Posted: 2023-07-01 02:39:25 + +## Branch + +**1/** + +@NOTimothyLottes NOP is ideal. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-TimSweeneyEpic-can-teach-it-in-abstinence-only-programming.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-TimSweeneyEpic-can-teach-it-in-abstinence-only-programming.md new file mode 100644 index 0000000..50f3c67 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-TimSweeneyEpic-can-teach-it-in-abstinence-only-programming.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Can teach it in abstinence-only programming classes!" +type: archive +source: twitter +source_url: "https://x.com/TimSweeneyEpic/status/1675248176498987009" +author: "Tim Sweeney" +handle: TimSweeneyEpic +post_id: "1675248176498987009" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Can teach it in abstinence-only programming classes!" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/TimSweeneyEpic/status/1675248176498987009 +- Author: Tim Sweeney (@TimSweeneyEpic) +- Posted: 2023-07-01 21:01:04 + +## Branch + +**1/** + +@NOTimothyLottes Can teach it in abstinence-only programming classes! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-asparagiii-looks-like-a-koala.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-asparagiii-looks-like-a-koala.md new file mode 100644 index 0000000..ccd5691 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-asparagiii-looks-like-a-koala.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes Looks like a koala" +type: archive +source: twitter +source_url: "https://x.com/asparagiii/status/1675123653162196992" +author: "Aspar" +handle: asparagiii +post_id: "1675123653162196992" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Looks like a koala" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/asparagiii/status/1675123653162196992 +- Author: Aspar (@asparagiii) +- Posted: 2023-07-01 12:46:15 + +## Branch + +**1/** + +@NOTimothyLottes Looks like a koala + +Media (not lifted): `1675123653162196992_Fz88Bk0WAAApDzL_orig.jpg` + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-azeke1984-best-software-is-absense-of-it-https-en-wikipedia.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-azeke1984-best-software-is-absense-of-it-https-en-wikipedia.md new file mode 100644 index 0000000..65af9c3 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-azeke1984-best-software-is-absense-of-it-https-en-wikipedia.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes Best software is absense of it:" +type: archive +source: twitter +source_url: "https://x.com/azeke1984/status/1674996094265163782" +author: "azeke" +handle: azeke1984 +post_id: "1674996094265163782" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Best software is absense of it:" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/azeke1984/status/1674996094265163782 +- Author: azeke (@azeke1984) +- Posted: 2023-07-01 04:19:23 + +## Branch + +**1/** + +@NOTimothyLottes Best software is absense of it: + +https://en.wikipedia.org/wiki/The_Mythical_Man-Month + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-claudiogonzalo-c-to-c.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-claudiogonzalo-c-to-c.md new file mode 100644 index 0000000..e47d75c --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-claudiogonzalo-c-to-c.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes c++ to √c" +type: archive +source: twitter +source_url: "https://x.com/claudiogonzalo/status/1675054802265423872" +author: "ᓇᓄᖅ ❄️" +handle: claudiogonzalo +post_id: "1675054802265423872" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes c++ to √c" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/claudiogonzalo/status/1675054802265423872 +- Author: ᓇᓄᖅ ❄️ (@claudiogonzalo) +- Posted: 2023-07-01 08:12:40 + +## Branch + +**1/** + +@NOTimothyLottes c++ to √c + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-helpful_signage-folks-theyre-calling-it-computer-oriented.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-helpful_signage-folks-theyre-calling-it-computer-oriented.md new file mode 100644 index 0000000..5255dde --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-helpful_signage-folks-theyre-calling-it-computer-oriented.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Folks, they're calling it \"computer oriented programming\"." +type: archive +source: twitter +source_url: "https://x.com/helpful_signage/status/1675020853862359041" +author: "Total Slack Holocaust" +handle: helpful_signage +post_id: "1675020853862359041" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Folks, they're calling it \"computer oriented programming\"." +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/helpful_signage/status/1675020853862359041 +- Author: Total Slack Holocaust (@helpful_signage) +- Posted: 2023-07-01 05:57:46 + +## Branch + +**1/** + +@NOTimothyLottes Folks, they're calling it "computer oriented programming". It's where you stop trying to impress peers and just tell the computer the best way to do things + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-mike_acton-thread.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-mike_acton-thread.md new file mode 100644 index 0000000..8bbfe26 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-01-mike_acton-thread.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes" +type: archive +source: twitter +source_url: "https://x.com/mike_acton/status/1674962613506297857" +author: "Mike Acton" +handle: mike_acton +post_id: "1674962613506297857" +date: 2023-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/mike_acton/status/1674962613506297857 +- Author: Mike Acton (@mike_acton) +- Posted: 2023-07-01 02:06:21 + +## Branch + +**1/** + +@NOTimothyLottes + +Media (not lifted): `1674962613506297857_Fz6pnsBaQAEtMIZ_orig.jpg` + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-09-wyattscarpenter-https-github-com-wyattscarpenter-wu.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-09-wyattscarpenter-https-github-com-wyattscarpenter-wu.md new file mode 100644 index 0000000..d4ce1de --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/2023-07-09-wyattscarpenter-https-github-com-wyattscarpenter-wu.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes https://github.com/wyattscarpenter/wu" +type: archive +source: twitter +source_url: "https://x.com/wyattscarpenter/status/1678087686404595712" +author: "Wyatt S Carpenter" +handle: wyattscarpenter +post_id: "1678087686404595712" +date: 2023-07-09 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes https://github.com/wyattscarpenter/wu" +in_reply_to: "" +parent_post_id: "1674757854471806977" +--- + +## Source + +- URL: https://x.com/wyattscarpenter/status/1678087686404595712 +- Author: Wyatt S Carpenter (@wyattscarpenter) +- Posted: 2023-07-09 17:04:16 + +## Branch + +**1/** + +@NOTimothyLottes https://github.com/wyattscarpenter/wu + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/index.md b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/index.md new file mode 100644 index 0000000..0a44d8f --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-06-30-nothing-oriented-programming-nop-where-the-goal/index.md @@ -0,0 +1,35 @@ +--- +title: "\"Nothing Oriented Programming\" (NOP)." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1674757854471806977" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1674757854471806977" +date: 2023-06-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "\"Nothing Oriented Programming\" (NOP)." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1674757854471806977 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-06-30 12:32:42 + +## Thread + +**1/** + +"Nothing Oriented Programming" (NOP). Where the goal is to achieve minimal enlightenment by writing as little possible code: no dynamic memory allocation, no thousand files of glue, no includes, no objects. Write nothing, be happy. Even applied it to the logo, zero effort. + +Media (not lifted): `1674757854471806977_Fz3vY5fXwAgEpzn_orig.jpg` + +Branches: [[2023-06-30-SebAaltonen-would-be-nice-to-talk-a-full-presentation-about]], [[2023-06-30-leonard_coder-4e71-if-you-know-you-know]], [[2023-06-30-domipheus-i-like-this-given-i-never-write-code-any-more]], [[2023-06-30-_spolsh-once-in-a-while-people-need-to-be-reminded-to]], [[2023-07-01-mike_acton-thread]], [[2023-07-01-SimonNordon-nop-is-ideal]], [[2023-07-01-azeke1984-best-software-is-absense-of-it-https-en-wikipedia]], [[2023-07-01-helpful_signage-folks-theyre-calling-it-computer-oriented]], [[2023-07-01-claudiogonzalo-c-to-c]], [[2023-07-01-DefenceForceOrg-many-games-used-to-be-like-that-at-least-the-ones]], [[2023-07-01-PierreTerdiman-i-was-calling-it-disoriented-programming-just-the]], [[2023-07-01-asparagiii-looks-like-a-koala]], [[2023-07-01-CodingFiend-i-designed-a-language-beads-which-uses-a-graph-db]], [[2023-07-01-TimSweeneyEpic-can-teach-it-in-abstinence-only-programming]], [[2023-07-09-wyattscarpenter-https-github-com-wyattscarpenter-wu]] diff --git a/archive/threads/NOTimothyLottes/2023-08-03-spc-using-8-deep-swap-all-aliasing-same-bo-image/index.md b/archive/threads/NOTimothyLottes/2023-08-03-spc-using-8-deep-swap-all-aliasing-same-bo-image/index.md new file mode 100644 index 0000000..52d0331 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-03-spc-using-8-deep-swap-all-aliasing-same-bo-image/index.md @@ -0,0 +1,51 @@ +--- +title: "SPC: Using 8 deep swap all aliasing same BO (image) fixes Game Mode crash with external display." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1687062786273062912" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1687062786273062912" +date: 2023-08-03 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "SPC: Using 8 deep swap all aliasing same BO (image) fixes Game Mode crash with external display." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1687062786273062912 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-03 11:28:07 + +## Thread + +**1/** + +SPC: Using 8 deep swap all aliasing same BO (image) fixes Game Mode crash with external display. Pipelined load gets to black screen in 2 ms. Takes 460 ms to allocate 4 GiB GTT video ram, 558 ms to copy 256 MiB cart from page cache to USWC (page faults), all in parallel. + +Media (not lifted): `1687062786273062912_F2mmqYXWoAAG3fj_orig.jpg` + +**2/** + +Clearing page cache to simulate a cold launch: Takes 1.5 sec to read 256 MiB from the stock SSD. This is worst case load time in desktop mode. Won't be any compile/etc after this. So literally in game at this point. Speed of light. This is how it is done. + +**3/** + +Forgot the timing capture ... Load from SSD. + +Media (not lifted): `1687066126268674048_F2mpszoXMAE00Hy_orig.jpg` + +**4/** + +There are only 3 threads on load: (1.) to open X11 then spin doing present/keyboard, (2.) to open the AMDgpu device, SDMA copy after CART read, and then eventually spin doing dispatchs, (3.) one to load the CART from disk to mapped USWC GTT via read(). + +**5/** + +Something I don't know: does read() since it's kernel- side automatically get some multi-core parallelism? Not a good idea to manually thread the read() because SSD needs linear reads to be fast. Not possible to know if the reads are page cache hits in advance either ... diff --git a/archive/threads/NOTimothyLottes/2023-08-04-for-anyone-tuning-in-now-spc-is-kind-of-like-a/index.md b/archive/threads/NOTimothyLottes/2023-08-04-for-anyone-tuning-in-now-spc-is-kind-of-like-a/index.md new file mode 100644 index 0000000..5646a88 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-04-for-anyone-tuning-in-now-spc-is-kind-of-like-a/index.md @@ -0,0 +1,31 @@ +--- +title: "For anyone tuning in now, SPC is kind of like a Pico8, but instead of being a portable fantasy console, SPC turns the Steam Deck into an actual console for exclusive GPU assembly projects." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1687257354490818561" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1687257354490818561" +date: 2023-08-04 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "For anyone tuning in now, SPC is kind of like a Pico8, but instead of being a portable fantasy console, SPC turns the Steam Deck into an actual console for exclusive GPU assembly projects." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1687257354490818561 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-04 00:21:15 + +## Thread + +**1/** + +For anyone tuning in now, SPC is kind of like a Pico8, but instead of being a portable fantasy console, SPC turns the Steam Deck into an actual console for exclusive GPU assembly projects. The way consoles had been done before silly portability became the only focus. diff --git a/archive/threads/NOTimothyLottes/2023-08-06-the-next-challenge-is-overscan-safety-since-real/index.md b/archive/threads/NOTimothyLottes/2023-08-06-the-next-challenge-is-overscan-safety-since-real/index.md new file mode 100644 index 0000000..7504be2 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-06-the-next-challenge-is-overscan-safety-since-real/index.md @@ -0,0 +1,31 @@ +--- +title: "The next challenge is overscan safety, since real non-VGA CRTs will be used in development." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1688022114962374656" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1688022114962374656" +date: 2023-08-06 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "The next challenge is overscan safety, since real non-VGA CRTs will be used in development." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1688022114962374656 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-06 03:00:08 + +## Thread + +**1/** + +The next challenge is overscan safety, since real non-VGA CRTs will be used in development. The Y axis has an easy fix, simply keep cursor pinned in the 'safe' zone, but still print lines in the overscan area (so they can be seen when attached to non-overscan CRTs/etc too). diff --git a/archive/threads/NOTimothyLottes/2023-08-06-yeah-perhaps-wildly-alien-but-for-those-who-grew/index.md b/archive/threads/NOTimothyLottes/2023-08-06-yeah-perhaps-wildly-alien-but-for-those-who-grew/index.md new file mode 100644 index 0000000..dfc3d31 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-06-yeah-perhaps-wildly-alien-but-for-those-who-grew/index.md @@ -0,0 +1,33 @@ +--- +title: "Yeah, perhaps wildly alien." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1688286623375454208" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1688286623375454208" +date: 2023-08-06 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Yeah, perhaps wildly alien." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1688286623375454208 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-06 20:31:12 + +## Thread + +**1/** + +Yeah, perhaps wildly alien. But for those who grew up with MOD-like trackers (like Impulse Tracker below), the interface will almost feel like home (those had simple {instrument, pattern, arangement} editors, with a very spreadsheet feel). + +Media (not lifted): `1688286623375454208_F23_OOhXgAUBtlb_orig.png` diff --git a/archive/threads/NOTimothyLottes/2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its/2023-08-10-BlurBusters-very-interesting-crosstalk-from-voltage-inversion.md b/archive/threads/NOTimothyLottes/2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its/2023-08-10-BlurBusters-very-interesting-crosstalk-from-voltage-inversion.md new file mode 100644 index 0000000..f811edc --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its/2023-08-10-BlurBusters-very-interesting-crosstalk-from-voltage-inversion.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes Very interesting \"crosstalk from voltage inversion\" artifact." +type: archive +source: twitter +source_url: "https://x.com/BlurBusters/status/1689479056448684032" +author: "Blur Busters" +handle: BlurBusters +post_id: "1689479056448684032" +date: 2023-08-10 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Very interesting \"crosstalk from voltage inversion\" artifact." +in_reply_to: "" +parent_post_id: "1688491417109196800" +--- + +## Source + +- URL: https://x.com/BlurBusters/status/1689479056448684032 +- Author: Blur Busters (@BlurBusters) +- Posted: 2023-08-10 03:29:30 + +## Branch + +**1/** + +@NOTimothyLottes Very interesting "crosstalk from voltage inversion" artifact. Some repeating patterns or flicker patterns can trigger crosstalk artifacts too. Behavior varies a lot between TN, IPS, and VA, but all of them have to alternate voltage polarity spatially and temporally. + +Media (not lifted): `1689479056448684032_F3I8AZmW0AEy6jn_orig.png` `1689479056448684032_F3I8BVlXoAAnuJB_orig.png` + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its/index.md b/archive/threads/NOTimothyLottes/2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its/index.md new file mode 100644 index 0000000..2014f53 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its/index.md @@ -0,0 +1,55 @@ +--- +title: "CRT emulation on LCDs can be hard." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1688491417109196800" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1688491417109196800" +date: 2023-08-07 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "CRT emulation on LCDs can be hard." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1688491417109196800 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-07 10:04:59 + +## Thread + +**1/** + +CRT emulation on LCDs can be hard. For example it's often easy to generate a pattern that causes a LCD hardware bug. NOT joking. Here is an example on the Steam Deck. The pattern in the window affects the scan (Deck scan is rotated) outside the window. + +Media (not lifted): `1688491417109196800_F265_JZXsAAInpa_orig.jpg` `1688491417109196800_F265_hLXkAAnfek_orig.jpg` + +Branches: [[2023-08-10-BlurBusters-very-interesting-crosstalk-from-voltage-inversion]] + +**2/** + +The actual pattern is this (it's a 2x1 pixel checker of {G,RB}). + +Media (not lifted): `1688492237775142912_F266epnW4AAdCiK_orig.png` + +**3/** + +The theory: Deck's 90deg scan results in {(bottom)R, G, B (top)} sub-pixel components. So could alternate {G,RB} only per pixel in a checker pattern to generate a new sub-pixel pattern at a different resolution. In this case trying for 640x400 virtual resolution. + +Media (not lifted): `1688493686554849280_F267UYuXAAAO50A_orig.png` + +**4/** + +For virtual pixel, shift energy into masked virtual phosphor. So 50% brightness red, would be {100%, 0%} for {in, out} of phosphor pixels. Over 50% one starts to increase non-phosphor pixels until some maximum so mask is still visible, but brightness isn't too compromised. + +**5/** + +Of course this is done in linear, so it's energy conserving in theory. But when the panel fails, it breaks down and doesn't work. I see this problem on a bunch of different devices. My personal AMD laptop has the exact same fail case (but rotated differently). diff --git a/archive/threads/NOTimothyLottes/2023-08-18-spc-last-crt-shader-was-broken-corrected-it-its/index.md b/archive/threads/NOTimothyLottes/2023-08-18-spc-last-crt-shader-was-broken-corrected-it-its/index.md new file mode 100644 index 0000000..060ad03 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-18-spc-last-crt-shader-was-broken-corrected-it-its/index.md @@ -0,0 +1,45 @@ +--- +title: "SPC: Last CRT shader was broken." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1692395128739057844" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1692395128739057844" +date: 2023-08-18 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "SPC: Last CRT shader was broken." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1692395128739057844 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-18 04:36:56 + +## Thread + +**1/** + +SPC: Last CRT shader was broken. Corrected it. It's energy conserving now, and correctly doing sub-pixel line width raster using the individual channels. Cell camera shots below at different zooms. + +Media (not lifted): `1692395128739057844_F3yYY1iXYAAaAlE_orig.jpg` `1692395128739057844_F3yYZQwXcAABFvi_orig.jpg` `1692395128739057844_F3yYZo5WAAA0aRS_orig.jpg` + +**2/** + +Each scan line is simulated with only 3 pixels. But you get 9 sub-pixels to play with, so that is where the quality comes from. It reaches 7/8th of the display peak brightness, this compromise was so there is always some amount of perceptual scan effect. + +**3/** + +The scan line thickness is adaptive proportional to linear brightness. When the scan thins out it is energy conserving and increases the thin pixel brightness to compensate. When it needs to go bright, it blooms the line. Lines have some overlap in bloom. + +**4/** + +One human perceptual reason CRTs feel like they have more contrast than they do, is because an individual scan line is super bright when in focus. So the black surround feels darker to the mind. diff --git a/archive/threads/NOTimothyLottes/2023-08-18-the-subpix-version-is-definitely-better-because/index.md b/archive/threads/NOTimothyLottes/2023-08-18-the-subpix-version-is-definitely-better-because/index.md new file mode 100644 index 0000000..06096d1 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-08-18-the-subpix-version-is-definitely-better-because/index.md @@ -0,0 +1,33 @@ +--- +title: "The subpix version is definitely better." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1692565070583136348" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1692565070583136348" +date: 2023-08-18 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "The subpix version is definitely better." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1692565070583136348 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-08-18 15:52:13 + +## Thread + +**1/** + +The subpix version is definitely better. Because of the almost 3x doubling of scanline width detail, it just perceptually feels a lot cleaner and easier to reconstruct in the mind. + +Media (not lifted): `1692565070583136348_F30y9HPWUAAbmmw_orig.jpg` `1692565070583136348_F30y9h3WAAETuui_orig.jpg` diff --git a/archive/threads/NOTimothyLottes/2023-12-15-long-thread/index.md b/archive/threads/NOTimothyLottes/2023-12-15-long-thread/index.md new file mode 100644 index 0000000..0ff5625 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-12-15-long-thread/index.md @@ -0,0 +1,129 @@ +--- +title: " " +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1735622924571201674" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1735622924571201674" +date: 2023-12-15 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: " " +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1735622924571201674 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-12-15 11:28:46 + +## Thread + +**1/** + + +Holiday GPU thoughts as a recovering pc/mobile/etc cross platform dev-holic ... + +**2/** + +[0] Early STP prototypes: had standard-PC-practice multi-dispatch 32-bit version, and hyper-optimized packed-16-bit semi-persistent single-dispatch-ubershader that got L2 reuse. Optimized one was 40% faster in profiling (VK RNDA2 GPU)! Industry has huge untapped opt potential + +**3/** + +[1] Even for PC, 16-bit is required for optimization because: almost double the amount of register state a shader can leverage. Holds true even when platform lacks double rate 16-bit. Top optimization is pass merging, PC went bandwidth starved. Mobile is actually ALU starved ... + +**4/** + +[2] Double rate 16-bit done right, is typically good for the smaller of {30% perf, return to non-ALU bound}, can make a GPU feel at least one HW generation faster. + +**5/** + +[3] For PC, I'd personally draw my compatibility line where platforms support 16-bit, and only ship explicit packed 16-bit shaders instead of a separate 32-bit/16-bit shader permutation. AMD it's Vega up, for NV note Maxwell/Pascal's HFMA2: https://docs.nvidia.com/cuda/cuda-binary-utilities/index.html#maxwell-and-pascal-instruction-set + +**6/** + +[4] Suggest doing dev work on a platform with great packed 16-bit support: AMD PC Vulkan on RDNA2, and don't filter through the DXC deoptimizer, so it is actually possible to see the value. Then hammer on vendors who still have spotty compiler related issues. + +**7/** + +[5] Gather4 is the hot optimization for packed 16-bit because data is returned in SoA form. Always explicitly pack 16-bit and alias to/from UINT32 when passing constants to shader (best to alias eight 16-bit values as uint4). Etc. + +**8/** + +[6] Trick for good 16-bit is range management. Sometimes pre-scaling is needed to avoid overflow, +and make sure to bring max values out of denormal before using rcp. + +**9/** + +[7] Power is a function of data movement. "Touch it Once" is the top optimization, all the "Split it into a Graph, Pipeline Stage it" people are walking themselves towards high-power. + +**10/** + +[8] Majority of GPU workloads are whole-pass serially dependent, but in practice temporally independent with exception of small localized serial dependency. If you "stick it into a frame graph" you cut off your ability to optimize. + +**11/** + +[9] Resolution growth is slowing. Mobile's high DPI is beyond good enough. 8k won't be successfull because of the extra 4x scaling TAA tax, or it won't matter because people will just integer scale on scanout. + +**12/** + +[10] Scaling TAA will converge to consistent higher quality over time, thus PC is likely to locally converge to 720p|1080p rendering for 4k (for high|med FPS). This implies that the industry should hit a point where large L3 can hold full render targets ... + +**13/** + +[11] TAA scaling, full render targets in L3: Maybe RDNA2 128 MiB L3 was spot on actually, and RNDA3's L3 drop in capacity, and the no L3 consoles had this wrong Tracing and big nets probably need that L3 too. + +**14/** + +[12] Lots of value getting a good 8x area scale for 4K 120 Hz. Yet devs won't see value until they make the non-pixel costs scale well, and move post before scaling. + +**15/** + +[13] Triangles are not needed any more. Hint 8x area scaling doesn't know any connectivity. Connectivity is inferred by likeness to accumulated feedback. Shaded samples from non-triangles -> scaling TAA still works. Hint 2: scaling TAA raster is mostly just tri culling. + +**16/** + +[14] TAA gets quality limited at high scaling because it can only infer correct behavior from geometry similar to what is rendered. Geometric aliasing drops too much thin geo. Fix for that is to change the standard practice, which will obsolete all black boxes. + +**17/** + +[15] Stratified sampling is good for at least 2x the geo density compared to regular grid ... frame viewport jitter is end-of-life for quality. + +**18/** + +[16] TAA's ability to correctly infer reprojection validity on skinned objects is crippled by lack of correct forward projection. Fixing that will break the black boxes. + +**19/** + +[17] Shading density will end up variable, TAA's disocclusion and convergence logic needs to be out of the black box, and deeply integrated into shading systems too (because it points where to shade more). This evolution will break all the black boxes. + +**20/** + +[18] Per-pixel ML people have it wrong, your net is multi-pass, all the top optimizations require less passes. Don't matter if you optimize the matrix math, power is burned in the bandwidth, and you cannot reduce your bandwidth enough to compete with the better options. + +**21/** + +[19] GI needs a surface shade cache, might as well object space shade at that point, which enables NUMA, which enables more HW scaling. + +**22/** + +[20] HW RT people had it very wrong, top optimization is non-ray-traversal ordered access. Follows: occlusion testing is neighbor-coherent, no trace, just test shared occluders. GI reduces to high frequency occlusion of some lower frequency probe domain. + +**23/** + +[21] HW RT's skin-all re-tree before trace won't scale ever. Only stratified visibility gets log scaling on animated geo. HW RT has no system for bounding costs, while stratified visibility does. Think out of the black box, GPU got programmability decade back now. + +**24/** + +[22] Love HW people, but they opt for a $ train even as it is derailing: they need to build HW, make it faster, it's what they do. But leave a trail of back-compat debris TS/ROV/GS/etc after each gfx fad. Vote with your engineering, general purpose CS, just say no to black boxes. + +**25/** + +[23] Scaling TAAs want sparse data each frame, more like a low-frequency pixel control cage displacing a high-frequency reprojected feedback. No pixel centers any more, no need to interpolate before shading. Rather want striped data, so the cachelines group spaced-out samples ... diff --git a/archive/threads/NOTimothyLottes/2023-12-16-if-there-is-anything-to-learn-for-programming-it/index.md b/archive/threads/NOTimothyLottes/2023-12-16-if-there-is-anything-to-learn-for-programming-it/index.md new file mode 100644 index 0000000..3794d45 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-12-16-if-there-is-anything-to-learn-for-programming-it/index.md @@ -0,0 +1,31 @@ +--- +title: "If there is anything to learn for programming, it is to be more critical of your own ideas than all else, be ruthless, trim until what is left is only what is actually required, question everything constantly." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1736161886079533186" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1736161886079533186" +date: 2023-12-16 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "If there is anything to learn for programming, it is to be more critical of your own ideas than all else, be ruthless, trim until what is left is only what is actually required, question everything constantly." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1736161886079533186 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-12-16 23:10:24 + +## Thread + +**1/** + +If there is anything to learn for programming, it is to be more critical of your own ideas than all else, be ruthless, trim until what is left is only what is actually required, question everything constantly. diff --git a/archive/threads/NOTimothyLottes/2023-12-19-multi-session-is-nice-since-the-binary-auto/index.md b/archive/threads/NOTimothyLottes/2023-12-19-multi-session-is-nice-since-the-binary-auto/index.md new file mode 100644 index 0000000..159e527 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2023-12-19-multi-session-is-nice-since-the-binary-auto/index.md @@ -0,0 +1,31 @@ +--- +title: "Multi-session is nice, since the binary auto reloads in some cases (crash, etc), want to see why the reload happened, so don't want to clear the log." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1737201090058219980" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1737201090058219980" +date: 2023-12-19 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Multi-session is nice, since the binary auto reloads in some cases (crash, etc), want to see why the reload happened, so don't want to clear the log." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1737201090058219980 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2023-12-19 19:59:50 + +## Thread + +**1/** + +Multi-session is nice, since the binary auto reloads in some cases (crash, etc), want to see why the reload happened, so don't want to clear the log. Yes, I still don't use debuggers, this logger + runtime shader recompile is all I use personally for dev work. diff --git a/archive/threads/NOTimothyLottes/2024-02-13-once-upon-a-time-not-up-any-more-lots-of-color/index.md b/archive/threads/NOTimothyLottes/2024-02-13-once-upon-a-time-not-up-any-more-lots-of-color/index.md new file mode 100644 index 0000000..1425aa7 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-02-13-once-upon-a-time-not-up-any-more-lots-of-color/index.md @@ -0,0 +1,33 @@ +--- +title: "@hotmultimedia Once upon a time." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1757198624818168210" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1757198624818168210" +date: 2024-02-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@hotmultimedia Once upon a time." +in_reply_to: "1757181664126444015" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1757198624818168210 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-02-13 00:22:53 + +> @NOTimothyLottes Have you ever blogged details about the syntax of your Forth tools? + +## Thread + +**1/** + +@hotmultimedia Once upon a time. Not up any more. Lots of color-forth inspired variations. Designed to make x86 code generation easy. Last language effort for RDNA2 code gen wasn't forth-like though, focused on GPU compiling it's own code in parallel on the GPU (SIMD). diff --git a/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-06-MartinJIFuller-a-worthwhile-project-knowledge-well-worth-sharing.md b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-06-MartinJIFuller-a-worthwhile-project-knowledge-well-worth-sharing.md new file mode 100644 index 0000000..20dfc09 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-06-MartinJIFuller-a-worthwhile-project-knowledge-well-worth-sharing.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes @SebAaltonen A worthwhile project, knowledge well worth sharing, but is a book the right format? Perhaps yes, just thinking out loud." +type: archive +source: twitter +source_url: "https://x.com/MartinJIFuller/status/1776703621435933035" +author: "Martin Fuller" +handle: MartinJIFuller +post_id: "1776703621435933035" +date: 2024-04-06 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @SebAaltonen A worthwhile project, knowledge well worth sharing, but is a book the right format? Perhaps yes, just thinking out loud." +in_reply_to: "" +parent_post_id: "1776597200073568623" +--- + +## Source + +- URL: https://x.com/MartinJIFuller/status/1776703621435933035 +- Author: Martin Fuller (@MartinJIFuller) +- Posted: 2024-04-06 20:08:47 + +## Branch + +**1/** + +@NOTimothyLottes @SebAaltonen A worthwhile project, knowledge well worth sharing, but is a book the right format? Perhaps yes, just thinking out loud. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-08-RickyAH-ha-that-wont-save-you-from-my-follow.md b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-08-RickyAH-ha-that-wont-save-you-from-my-follow.md new file mode 100644 index 0000000..50f9b79 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-08-RickyAH-ha-that-wont-save-you-from-my-follow.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes @SebAaltonen @MartinJIFuller Ha! That won’t save you from my follow" +type: archive +source: twitter +source_url: "https://x.com/RickyAH/status/1777246377824731474" +author: "Ricky 愛" +handle: RickyAH +post_id: "1777246377824731474" +date: 2024-04-08 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @SebAaltonen @MartinJIFuller Ha! That won’t save you from my follow" +in_reply_to: "" +parent_post_id: "1776597200073568623" +--- + +## Source + +- URL: https://x.com/RickyAH/status/1777246377824731474 +- Author: Ricky 愛 (@RickyAH) +- Posted: 2024-04-08 08:05:30 + +## Branch + +**1/** + +@NOTimothyLottes @SebAaltonen @MartinJIFuller Ha! That won’t save you from my follow + +Media (not lifted): `1777246377824731474_GKoMKCHWwAAWLvG.mp4_orig.mp4` + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-09-BenSimsTech-oh-sick-im-deep-in-optimising-shaders-in-an-aaa.md b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-09-BenSimsTech-oh-sick-im-deep-in-optimising-shaders-in-an-aaa.md new file mode 100644 index 0000000..4f8e394 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/2024-04-09-BenSimsTech-oh-sick-im-deep-in-optimising-shaders-in-an-aaa.md @@ -0,0 +1,37 @@ +--- +title: "@NOTimothyLottes @SebAaltonen @MartinJIFuller Oh sick, I'm deep in optimising shaders in an AAA game for GCN hardware right now (You can probably guess the platform(s)) so this is super relevant to me." +type: archive +source: twitter +source_url: "https://x.com/BenSimsTech/status/1777555708499927142" +author: "Ben Sims" +handle: BenSimsTech +post_id: "1777555708499927142" +date: 2024-04-09 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @SebAaltonen @MartinJIFuller Oh sick, I'm deep in optimising shaders in an AAA game for GCN hardware right now (You can probably guess the platform(s)) so this is super relevant to me." +in_reply_to: "" +parent_post_id: "1776597200073568623" +--- + +## Source + +- URL: https://x.com/BenSimsTech/status/1777555708499927142 +- Author: Ben Sims (@BenSimsTech) +- Posted: 2024-04-09 04:34:40 + +## Branch + +**1/** + +@NOTimothyLottes @SebAaltonen @MartinJIFuller Oh sick, I'm deep in optimising shaders in an AAA game for GCN hardware right now (You can probably guess the platform(s)) so this is super relevant to me. 😅 +Going to give it all a thorough read, I'm after all the GCN info I can find right now. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/index.md b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/index.md new file mode 100644 index 0000000..8127181 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-04-06-on-https-mastodon-gamedev-place-notimothylottes/index.md @@ -0,0 +1,37 @@ +--- +title: "@MartinJIFuller @SebAaltonen On https://mastodon.gamedev.place/@NOTimothyLottes I'm collecting posts with AMD GPU disassembly dumps for a book on everything the shader compiler 'isn't doing'." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1776597200073568623" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1776597200073568623" +date: 2024-04-06 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@MartinJIFuller @SebAaltonen On https://mastodon.gamedev.place/@NOTimothyLottes I'm collecting posts with AMD GPU disassembly dumps for a book on everything the shader compiler 'isn't doing'." +in_reply_to: "1776518700230721688" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1776597200073568623 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-04-06 13:05:54 + +> @SebAaltonen Sad that the compiler isn’t doing this for us in 2024 + +## Thread + +**1/** + +@MartinJIFuller @SebAaltonen On https://mastodon.gamedev.place/@NOTimothyLottes I'm collecting posts with AMD GPU disassembly dumps for a book on everything the shader compiler 'isn't doing'. Constant AMD GPU compiler perf bug SPAM is a key part of my online strategy to keep a low follower count. + +Media (not lifted): `1776597200073568623_GKe8HDtXYAAOrfj_orig.jpg` + +Branches: [[2024-04-06-MartinJIFuller-a-worthwhile-project-knowledge-well-worth-sharing]], [[2024-04-08-RickyAH-ha-that-wont-save-you-from-my-follow]], [[2024-04-09-BenSimsTech-oh-sick-im-deep-in-optimising-shaders-in-an-aaa]] diff --git a/archive/threads/NOTimothyLottes/2024-05-04-it-was-only-later-when-systems-forced-c-abi/index.md b/archive/threads/NOTimothyLottes/2024-05-04-it-was-only-later-when-systems-forced-c-abi/index.md new file mode 100644 index 0000000..11618f3 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-05-04-it-was-only-later-when-systems-forced-c-abi/index.md @@ -0,0 +1,31 @@ +--- +title: "@Nerfoxingaround @SebAaltonen It was only later when systems forced C ABI library interfaces with it's stacks and junk that things got messy and only because of the C." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1786551881504104518" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1786551881504104518" +date: 2024-05-04 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@Nerfoxingaround @SebAaltonen It was only later when systems forced C ABI library interfaces with it's stacks and junk that things got messy and only because of the C." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1786551881504104518 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-05-04 00:22:15 + +## Thread + +**1/** + +@Nerfoxingaround @SebAaltonen It was only later when systems forced C ABI library interfaces with it's stacks and junk that things got messy and only because of the C. Then C++ happened and things got much worse. Pure ASM is easy, its interfacing with the bloat world that got hard. diff --git a/archive/threads/NOTimothyLottes/2024-11-16-that-line-of-thinking-is-universal-solution-to/index.md b/archive/threads/NOTimothyLottes/2024-11-16-that-line-of-thinking-is-universal-solution-to/index.md new file mode 100644 index 0000000..e1e677e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-11-16-that-line-of-thinking-is-universal-solution-to/index.md @@ -0,0 +1,33 @@ +--- +title: "@bmcnett That line of thinking is universal solution to most self-inflicted problems of the modern era." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1857820858162753661" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1857820858162753661" +date: 2024-11-16 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@bmcnett That line of thinking is universal solution to most self-inflicted problems of the modern era." +in_reply_to: "1857819880600531261" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1857820858162753661 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-11-16 16:19:43 + +> @NOTimothyLottes Variable line width ASCII text files made a lot of sense when storage was 100KB or 100MB or 100GB, but now that it's in the terabytes, why even bother + +## Thread + +**1/** + +@bmcnett That line of thinking is universal solution to most self-inflicted problems of the modern era. diff --git a/archive/threads/NOTimothyLottes/2024-11-19-after-vk-device-is-open-i-signal-a-background/index.md b/archive/threads/NOTimothyLottes/2024-11-19-after-vk-device-is-open-i-signal-a-background/index.md new file mode 100644 index 0000000..6f9e072 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-11-19-after-vk-device-is-open-i-signal-a-background/index.md @@ -0,0 +1,31 @@ +--- +title: "After VK device is open, I signal a background thread to load the SPIR-V module, while building the descriptor set layout, which then unblocks PSO compile on background threads." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1858715434436227544" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1858715434436227544" +date: 2024-11-19 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "After VK device is open, I signal a background thread to load the SPIR-V module, while building the descriptor set layout, which then unblocks PSO compile on background threads." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1858715434436227544 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-11-19 03:34:27 + +## Thread + +**1/** + +After VK device is open, I signal a background thread to load the SPIR-V module, while building the descriptor set layout, which then unblocks PSO compile on background threads. And the rest of the VK setup runs in parallel. Working towards swap creation. diff --git a/archive/threads/NOTimothyLottes/2024-11-21-32-oh-damn-32-should-probably-stop-now-until-next/index.md b/archive/threads/NOTimothyLottes/2024-11-21-32-oh-damn-32-should-probably-stop-now-until-next/index.md new file mode 100644 index 0000000..fb86c67 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-11-21-32-oh-damn-32-should-probably-stop-now-until-next/index.md @@ -0,0 +1,31 @@ +--- +title: "[32] oh damn [32], should probably stop now, until next time." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1859395250537595016" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1859395250537595016" +date: 2024-11-21 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "[32] oh damn [32], should probably stop now, until next time." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1859395250537595016 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-11-21 00:35:48 + +## Thread + +**1/** + +[32] oh damn [32], should probably stop now, until next time. diff --git a/archive/threads/NOTimothyLottes/2024-12-15-texel-buffer-is-needed-for-whatever-formats-one/index.md b/archive/threads/NOTimothyLottes/2024-12-15-texel-buffer-is-needed-for-whatever-formats-one/index.md new file mode 100644 index 0000000..c5c2b03 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-12-15-texel-buffer-is-needed-for-whatever-formats-one/index.md @@ -0,0 +1,31 @@ +--- +title: "TEXEL_BUFFER is needed for whatever formats one cannot load from SSBOs, and both of those require 'indexes', and whenever the IHVs actually correctly optimize the pointer extension, one needs the byte offsets instead." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1868436190447432064" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1868436190447432064" +date: 2024-12-15 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "TEXEL_BUFFER is needed for whatever formats one cannot load from SSBOs, and both of those require 'indexes', and whenever the IHVs actually correctly optimize the pointer extension, one needs the byte offsets instead." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1868436190447432064 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-12-15 23:21:16 + +## Thread + +**1/** + +TEXEL_BUFFER is needed for whatever formats one cannot load from SSBOs, and both of those require 'indexes', and whenever the IHVs actually correctly optimize the pointer extension, one needs the byte offsets instead. So deadcode removal nightmare land wins today :( diff --git a/archive/threads/NOTimothyLottes/2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler/2024-12-16-AgileJebrim-fair-enough-current-compilers-are-a-bloated-mess.md b/archive/threads/NOTimothyLottes/2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler/2024-12-16-AgileJebrim-fair-enough-current-compilers-are-a-bloated-mess.md new file mode 100644 index 0000000..852dcb2 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler/2024-12-16-AgileJebrim-fair-enough-current-compilers-are-a-bloated-mess.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes @GustavSterbrant Fair enough." +type: archive +source: twitter +source_url: "https://x.com/AgileJebrim/status/1868717227866046808" +author: "Jebrim" +handle: AgileJebrim +post_id: "1868717227866046808" +date: 2024-12-16 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @GustavSterbrant Fair enough." +in_reply_to: "" +parent_post_id: "1868716773937414589" +--- + +## Source + +- URL: https://x.com/AgileJebrim/status/1868717227866046808 +- Author: Jebrim (@AgileJebrim) +- Posted: 2024-12-16 17:58:00 + +## Branch + +**1/** + +@NOTimothyLottes @GustavSterbrant Fair enough. Current compilers are a bloated mess anyways and you’d get much faster times with your own assembler. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler/index.md b/archive/threads/NOTimothyLottes/2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler/index.md new file mode 100644 index 0000000..3553ae9 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler/index.md @@ -0,0 +1,33 @@ +--- +title: "@AgileJebrim @GustavSterbrant Also I wouldn't just modify an existing compiler, I'd just write an assembler specific for GCN/RDNA/whateversNext family." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1868716773937414589" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1868716773937414589" +date: 2024-12-16 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@AgileJebrim @GustavSterbrant Also I wouldn't just modify an existing compiler, I'd just write an assembler specific for GCN/RDNA/whateversNext family." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1868716773937414589 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-12-16 17:56:12 + +## Thread + +**1/** + +@AgileJebrim @GustavSterbrant Also I wouldn't just modify an existing compiler, I'd just write an assembler specific for GCN/RDNA/whateversNext family. + +Branches: [[2024-12-16-AgileJebrim-fair-enough-current-compilers-are-a-bloated-mess]] diff --git a/archive/threads/NOTimothyLottes/2024-12-16-then-there-are-rough-edges-to-texel-buffer/2024-12-16-axelgneiting-im-well-aware-its-really-curious-they-still-stick.md b/archive/threads/NOTimothyLottes/2024-12-16-then-there-are-rough-edges-to-texel-buffer/2024-12-16-axelgneiting-im-well-aware-its-really-curious-they-still-stick.md new file mode 100644 index 0000000..37bf0f8 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-12-16-then-there-are-rough-edges-to-texel-buffer/2024-12-16-axelgneiting-im-well-aware-its-really-curious-they-still-stick.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes @kechogarcia I'm well aware." +type: archive +source: twitter +source_url: "https://x.com/axelgneiting/status/1868503435299205194" +author: "Axel Gneiting" +handle: axelgneiting +post_id: "1868503435299205194" +date: 2024-12-16 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes @kechogarcia I'm well aware." +in_reply_to: "" +parent_post_id: "1868492851170205803" +--- + +## Source + +- URL: https://x.com/axelgneiting/status/1868503435299205194 +- Author: Axel Gneiting (@axelgneiting) +- Posted: 2024-12-16 03:48:28 + +## Branch + +**1/** + +@NOTimothyLottes @kechogarcia I'm well aware. It's really curious they still stick to this design after so many years. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2024-12-16-then-there-are-rough-edges-to-texel-buffer/index.md b/archive/threads/NOTimothyLottes/2024-12-16-then-there-are-rough-edges-to-texel-buffer/index.md new file mode 100644 index 0000000..90940ea --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-12-16-then-there-are-rough-edges-to-texel-buffer/index.md @@ -0,0 +1,39 @@ +--- +title: "@axelgneiting @kechogarcia Then there are rough edges to TEXEL_BUFFER" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1868492851170205803" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1868492851170205803" +date: 2024-12-16 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@axelgneiting @kechogarcia Then there are rough edges to TEXEL_BUFFER" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1868492851170205803 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-12-16 03:06:25 + +## Thread + +**1/** + +@axelgneiting @kechogarcia Then there are rough edges to TEXEL_BUFFER + +9-bit shared 5-bit E -> read only NV, no AMD +sRGB -> yes NV, no AMD + +And a big one: NV limits to 128 M elements +{512 MiB,1GiB,2GiB} buffer size limits for {32,64,128}-bits respectively + +Branches: [[2024-12-16-axelgneiting-im-well-aware-its-really-curious-they-still-stick]] diff --git a/archive/threads/NOTimothyLottes/2024-12-21-not-sure-if-this-is-the-end-of-this-story-yet-but/index.md b/archive/threads/NOTimothyLottes/2024-12-21-not-sure-if-this-is-the-end-of-this-story-yet-but/index.md new file mode 100644 index 0000000..6b59bd6 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2024-12-21-not-sure-if-this-is-the-end-of-this-story-yet-but/index.md @@ -0,0 +1,31 @@ +--- +title: "Not sure if this is the end of this story yet, but hopefully the holidays I get this back online and can get back to using it." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1870351985855119449" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1870351985855119449" +date: 2024-12-21 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Not sure if this is the end of this story yet, but hopefully the holidays I get this back online and can get back to using it." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1870351985855119449 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2024-12-21 06:13:57 + +## Thread + +**1/** + +Not sure if this is the end of this story yet, but hopefully the holidays I get this back online and can get back to using it. Probably have it down to as optimal as it can get while being as portable and future looking as possible diff --git a/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-holy-truthnuke-and-people-think-c-is-the-optimal.md b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-holy-truthnuke-and-people-think-c-is-the-optimal.md new file mode 100644 index 0000000..df358bf --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-holy-truthnuke-and-people-think-c-is-the-optimal.md @@ -0,0 +1,48 @@ +--- +title: "@NOTimothyLottes holy truthnuke - and people think C is the optimal state of possible runtimes when it's a very limited runtime to have state mixed call/data-stacks" +type: archive +source: twitter +source_url: "https://x.com/onatt0/status/1917653631651729876" +author: "on@☦️" +handle: onatt0 +post_id: "1917653631651729876" +date: 2025-04-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes holy truthnuke - and people think C is the optimal state of possible runtimes when it's a very limited runtime to have state mixed call/data-stacks" +in_reply_to: "" +parent_post_id: "1917652589358858332" +--- + +## Source + +- URL: https://x.com/onatt0/status/1917653631651729876 +- Author: on@☦️ (@onatt0) +- Posted: 2025-04-30 18:53:48 + +## Branch + +**1/** + +@NOTimothyLottes holy truthnuke - and people think C is the optimal state of possible runtimes when it's a very limited runtime to have state mixed call/data-stacks + +not only you have to keep the whole stack around with replicated state, it limits to serialized execution instead of parallel + +**2/** + +@onatt0 I laugh when people say C is like assembly, they are missing what we actually did in assembly back then, which was all registers and globals and gotos, no stacks. It's radically different than good assembly. + +**3/** + +@NOTimothyLottes when C became *the* execution model, it restricted all future hardware, HW gets built with how the C compiler will compile to it instead of what's ultimately a good design and a malleable macro-lang to map to HW + +ofc a lot of people want portability so we went the boring route + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-imo-code-compilation-is-inherently-sequential.md b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-imo-code-compilation-is-inherently-sequential.md new file mode 100644 index 0000000..3b3fec9 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-imo-code-compilation-is-inherently-sequential.md @@ -0,0 +1,46 @@ +--- +title: "@NOTimothyLottes IMO code compilation is inherently sequential+ \"execution contextual\", dynamic logic execution to get the binary as the essence vs a static lang" +type: archive +source: twitter +source_url: "https://x.com/onatt0/status/1917651417487036446" +author: "on@☦️" +handle: onatt0 +post_id: "1917651417487036446" +date: 2025-04-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes IMO code compilation is inherently sequential+ \"execution contextual\", dynamic logic execution to get the binary as the essence vs a static lang" +in_reply_to: "" +parent_post_id: "1917646466417381426" +--- + +## Source + +- URL: https://x.com/onatt0/status/1917651417487036446 +- Author: on@☦️ (@onatt0) +- Posted: 2025-04-30 18:45:00 + +## Branch + +**1/** + +@NOTimothyLottes IMO code compilation is inherently sequential+ "execution contextual", dynamic logic execution to get the binary as the essence vs a static lang + +codegen with execution on GPU could work as 2-items(vreg)/stack and 32K cells per lane for AI to map code to data instead of weights? + +**2/** + +@onatt0 So for x86 I've many times written code gen with extra nop-prefix padding to fix all instructions to a multiple of known 32-bits. Which means you know in advance sizing of everything, then you can easily do parallel code generation. So need not necessarily all be serial + +**3/** + +@onatt0 However I'm often building then instantly using code while generating a baked binary to use later, so that regard much is inherently serially dependent. This bootstrapping technique is perhaps one the great things to learn from things like color forth IMO. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-simply-brilliant.md b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-simply-brilliant.md new file mode 100644 index 0000000..29d901f --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/2025-04-30-onatt0-simply-brilliant.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes simply brilliant!" +type: archive +source: twitter +source_url: "https://x.com/onatt0/status/1917654071323857138" +author: "on@☦️" +handle: onatt0 +post_id: "1917654071323857138" +date: 2025-04-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes simply brilliant!" +in_reply_to: "" +parent_post_id: "1917653265329594372" +--- + +## Source + +- URL: https://x.com/onatt0/status/1917654071323857138 +- Author: on@☦️ (@onatt0) +- Posted: 2025-04-30 18:55:33 + +## Branch + +**1/** + +@NOTimothyLottes simply brilliant! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/index.md b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/index.md new file mode 100644 index 0000000..5b617c4 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-04-30-3-i-got-side-tracked-by-building-a-language-that/index.md @@ -0,0 +1,65 @@ +--- +title: "@onatt0 [3] I got side tracked by building a language that could be assembled from on the GPU in SIMD." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1917646466417381426" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1917646466417381426" +date: 2025-04-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@onatt0 [3] I got side tracked by building a language that could be assembled from on the GPU in SIMD." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1917646466417381426 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-04-30 18:25:20 + +## Thread + +**1/** + +@onatt0 [3] I got side tracked by building a language that could be assembled from on the GPU in SIMD. However now I ask myself if that is just adding "complexity", because if programs are bounded in size, why not just focus on CPU non-parallel nested factoring (aka the forth-like way) + +Branches: [[2025-04-30-onatt0-imo-code-compilation-is-inherently-sequential]] + +**2/** + +@onatt0 [4] 2-item data stack is an interesting compromise. Something I never considered. I left off ripping out the data stack completely. + +**3/** + +@onatt0 [5] Can do this instead, +a. Track a "top" register (number) +b. Use symbols to override top register +c. Have push (store) just advance top to next reg (in circular queue) +Gets to easy unnamed arguments + +**4/** + +@onatt0 [6] You mentioned VK is most "form filling" which I think is an accurate description. For most "C" like APIs I like to just lay out all the arguments in memory like a tape drive in the order that functions get called and source that tape at runtime for the calls ... + +**5/** + +@onatt0 [7] They key concept here is that "common" arguments like the device are pushed onto the tape using store duplication when they are known (after device creation). So it's preemptive scatter, so later at call time there is no argument gather. + +**6/** + +@onatt0 [8] Likely the majority of C/C++/OOP/bloatware is just shuffling data around in argument gather to support the concept of data stacks on HW that has no physical data stack. + +Branches: [[2025-04-30-onatt0-holy-truthnuke-and-people-think-c-is-the-optimal]] + +**7/** + +@onatt0 [9] Could just pre-layout call arguments in order of usage, leverage data compression at init-time to unpack into memory before run-time. No more code to shuffle arguments, or set registers to immediates, etc. Just a common (cached) pre-call to consume args from the "tape" + +Branches: [[2025-04-30-onatt0-simply-brilliant]] diff --git a/archive/threads/NOTimothyLottes/2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they/2025-04-30-NOTimothyLottes-related-thoughts-0-having-a-low-upper-bound-on.md b/archive/threads/NOTimothyLottes/2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they/2025-04-30-NOTimothyLottes-related-thoughts-0-having-a-low-upper-bound-on.md new file mode 100644 index 0000000..a7737a1 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they/2025-04-30-NOTimothyLottes-related-thoughts-0-having-a-low-upper-bound-on.md @@ -0,0 +1,73 @@ +--- +title: "@onatt0 Related thoughts/" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1917642786804785230" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1917642786804785230" +date: 2025-04-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@onatt0 Related thoughts/" +in_reply_to: "" +parent_post_id: "1917613300902146419" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1917642786804785230 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-04-30 18:10:43 + +## Branch + +**1/** + +@onatt0 Related thoughts/ +[0] Having a low upper bound on the maximum complexity allowed in a program enables so much simplification. One can always move complexity into data, while keeping tight codebases. + +**2/** + +@onatt0 [1] Seems like you group symbols into pages where each page can have a string (shared with all symbols in the page), which when pared with limited fixed maximum symbol string size, is an elegant way of effectively supporting larger naming [I'll probably steal that idea next time] + +**3/** + +@onatt0 [2] I'm also a big fan of how you used 16:9 aspect to auto render all the debug info, symbol tables, disassembly, etc, alongside the source. I think many people are probably lost in the speed at which you can manipulate and test ideas while working on the source + +**4/** + +@onatt0 [3] I got side tracked by building a language that could be assembled from on the GPU in SIMD. However now I ask myself if that is just adding "complexity", because if programs are bounded in size, why not just focus on CPU non-parallel nested factoring (aka the forth-like way) + +**5/** + +@onatt0 [4] 2-item data stack is an interesting compromise. Something I never considered. I left off ripping out the data stack completely. + +**6/** + +@onatt0 [5] Can do this instead, +a. Track a "top" register (number) +b. Use symbols to override top register +c. Have push (store) just advance top to next reg (in circular queue) +Gets to easy unnamed arguments + +**7/** + +@onatt0 [6] You mentioned VK is most "form filling" which I think is an accurate description. For most "C" like APIs I like to just lay out all the arguments in memory like a tape drive in the order that functions get called and source that tape at runtime for the calls ... + +**8/** + +@onatt0 [7] They key concept here is that "common" arguments like the device are pushed onto the tape using store duplication when they are known (after device creation). So it's preemptive scatter, so later at call time there is no argument gather. + +**9/** + +@onatt0 [8] Likely the majority of C/C++/OOP/bloatware is just shuffling data around in argument gather to support the concept of data stacks on HW that has no physical data stack. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they/index.md b/archive/threads/NOTimothyLottes/2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they/index.md new file mode 100644 index 0000000..0a88c4e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they/index.md @@ -0,0 +1,31 @@ +--- +title: "@onatt0 I laugh when people say C is like assembly, they are missing what we actually did in assembly back then, which was all registers and globals and gotos, no stacks." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1917656437473399108" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1917656437473399108" +date: 2025-04-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@onatt0 I laugh when people say C is like assembly, they are missing what we actually did in assembly back then, which was all registers and globals and gotos, no stacks." +in_reply_to: "1917653631651729876" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1917656437473399108 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-04-30 19:04:57 + +## Thread + +**1/** + +@onatt0 I laugh when people say C is like assembly, they are missing what we actually did in assembly back then, which was all registers and globals and gotos, no stacks. It's radically different than good assembly. diff --git a/archive/threads/NOTimothyLottes/2025-06-29-many-of-my-forth-like-languages-worked-via-nested/index.md b/archive/threads/NOTimothyLottes/2025-06-29-many-of-my-forth-like-languages-worked-via-nested/index.md new file mode 100644 index 0000000..d595ba0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-06-29-many-of-my-forth-like-languages-worked-via-nested/index.md @@ -0,0 +1,33 @@ +--- +title: "@mmalex @seflless Many of my forth-like languages worked via nested runtime code gen, so it was possible to generate+run code to build either code or data, then repeat." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1939170419958816855" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1939170419958816855" +date: 2025-06-29 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@mmalex @seflless Many of my forth-like languages worked via nested runtime code gen, so it was possible to generate+run code to build either code or data, then repeat." +in_reply_to: "1939097400183763189" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1939170419958816855 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-06-29 03:53:50 + +> @seflless ah yes ! I knew it existed - it wasnt an original idea after all, but like a faint memory stirring in my brain - but couldn't find it. thanks for the link! + +## Thread + +**1/** + +@mmalex @seflless Many of my forth-like languages worked via nested runtime code gen, so it was possible to generate+run code to build either code or data, then repeat. The system would bootstrap its own assembler/etc that way. diff --git a/archive/threads/NOTimothyLottes/2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that/2025-07-23-Karyuutensei-where-does-the-restart-number-come-from-i-assume.md b/archive/threads/NOTimothyLottes/2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that/2025-07-23-Karyuutensei-where-does-the-restart-number-come-from-i-assume.md new file mode 100644 index 0000000..a25c60b --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that/2025-07-23-Karyuutensei-where-does-the-restart-number-come-from-i-assume.md @@ -0,0 +1,44 @@ +--- +title: "@NOTimothyLottes Where does the restart number come from? I assume this is how many times you exited the code and started again automatically using your batch script?" +type: archive +source: twitter +source_url: "https://x.com/Karyuutensei/status/1948052805647782109" +author: "Nick Tasios" +handle: Karyuutensei +post_id: "1948052805647782109" +date: 2025-07-23 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Where does the restart number come from? I assume this is how many times you exited the code and started again automatically using your batch script?" +in_reply_to: "" +parent_post_id: "1948009807161721332" +--- + +## Source + +- URL: https://x.com/Karyuutensei/status/1948052805647782109 +- Author: Nick Tasios (@Karyuutensei) +- Posted: 2025-07-23 16:09:16 + +## Branch + +**1/** + +@NOTimothyLottes Where does the restart number come from? I assume this is how many times you exited the code and started again automatically using your batch script? + +**2/** + +@Karyuutensei Yeah exactly that. The log file is a fixed size, and memory mapped (+page warming), and lines are a fixed size, so writing a message is lock free (fast just one atomic add, no file or system calls). When it fills it wraps around, and to clear just delete the file (it recreates it + +**3/** + +@NOTimothyLottes Thanks for sharing. I’ve never thought of doing logging like this. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that/index.md b/archive/threads/NOTimothyLottes/2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that/index.md new file mode 100644 index 0000000..01f764e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that/index.md @@ -0,0 +1,41 @@ +--- +title: "@Karyuutensei I don't use standard C libs or anything like that." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1948009807161721332" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1948009807161721332" +date: 2025-07-23 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@Karyuutensei I don't use standard C libs or anything like that." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1948009807161721332 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-07-23 13:18:24 + +## Thread + +**1/** + +@Karyuutensei I don't use standard C libs or anything like that. I just write my own stuff. For 'printf' style debugging I have macros that write to a memory mapped log file. They give {[restartNumber]|[msSinceLaunch]|[sourceLine]|[hex]|[dec]|[comment]}. Keeping multiple restarts in same log + +Media (not lifted): `1948009807161721332_Gwi4H27WgAAIgMN_orig.png` + +Branches: [[2025-07-23-Karyuutensei-where-does-the-restart-number-come-from-i-assume]] + +**2/** + +@Karyuutensei That log example is a simple test program, it starts in 0.3 ms for that run. The log tells all about how it pipelines start up {doing memory page warming, kart load, window setup, VK setup in parallel, getting to PSO gen as fast as possible [get layout done first]} + +Media (not lifted): `1948010813555634392_Gwi47owXQAEa2Ar_orig.png` diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-0x44_-assembly-isnt-hard-its-just-platform-specific.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-0x44_-assembly-isnt-hard-its-just-platform-specific.md new file mode 100644 index 0000000..6d4f6be --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-0x44_-assembly-isnt-hard-its-just-platform-specific.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Assembly isn't hard, it's just platform specific, which makes it tedious." +type: archive +source: twitter +source_url: "https://x.com/0x44_/status/1951048949667619280" +author: "0x44" +handle: 0x44_ +post_id: "1951048949667619280" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Assembly isn't hard, it's just platform specific, which makes it tedious." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/0x44_/status/1951048949667619280 +- Author: 0x44 (@0x44_) +- Posted: 2025-07-31 22:34:52 + +## Branch + +**1/** + +@NOTimothyLottes Assembly isn't hard, it's just platform specific, which makes it tedious. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-2Sexy4MyGPU-it-was-never-hard-just-tedious.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-2Sexy4MyGPU-it-was-never-hard-just-tedious.md new file mode 100644 index 0000000..61a5ddc --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-2Sexy4MyGPU-it-was-never-hard-just-tedious.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes It was never hard, just tedious." +type: archive +source: twitter +source_url: "https://x.com/2Sexy4MyGPU/status/1950935584714654191" +author: "Matthew Rusch" +handle: 2Sexy4MyGPU +post_id: "1950935584714654191" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes It was never hard, just tedious." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/2Sexy4MyGPU/status/1950935584714654191 +- Author: Matthew Rusch (@2Sexy4MyGPU) +- Posted: 2025-07-31 15:04:24 + +## Branch + +**1/** + +@NOTimothyLottes It was never hard, just tedious. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-CUDAHandbook-i-have-been-writing-assembly-for-almost-40-years.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-CUDAHandbook-i-have-been-writing-assembly-for-almost-40-years.md new file mode 100644 index 0000000..58c1832 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-CUDAHandbook-i-have-been-writing-assembly-for-almost-40-years.md @@ -0,0 +1,52 @@ +--- +title: "@NOTimothyLottes I have been writing assembly for almost 40 years." +type: archive +source: twitter +source_url: "https://x.com/CUDAHandbook/status/1951018231856312578" +author: "Nicholas Wilt" +handle: CUDAHandbook +post_id: "1951018231856312578" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I have been writing assembly for almost 40 years." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/CUDAHandbook/status/1951018231856312578 +- Author: Nicholas Wilt (@CUDAHandbook) +- Posted: 2025-07-31 20:32:49 + +## Branch + +**1/** + +@NOTimothyLottes I have been writing assembly for almost 40 years. The reason we say it is hard, is because it takes more effort to write than higher-level languages like C. Of course it’s doable, but portability between CPU architecture alone makes assembly only worth doing when warranted. + +**2/** + +@CUDAHandbook I'm hoping to show how to make it less tedious than C + +**3/** + +@NOTimothyLottes @CUDAHandbook My major problem with programming is the tedium. + +GLSL Sandbox is still the best IDE I've ever used... + +Live code with instant update, simple automatic version control, cross platform web deployment, basic stripped down math language... + +**4/** + +@Alleycatsphinx @CUDAHandbook I love live systems as "the IDE". This time probably with function keys as a pallet of 'save/restore' points (snapshot the entire project, as one file). + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-Karyuutensei-unrelated-but-i-would-also-love-a-look-at-your.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-Karyuutensei-unrelated-but-i-would-also-love-a-look-at-your.md new file mode 100644 index 0000000..cf4b86a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-Karyuutensei-unrelated-but-i-would-also-love-a-look-at-your.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes Unrelated, but I would also love a look at your CRTs and how you use them in everyday stuff." +type: archive +source: twitter +source_url: "https://x.com/Karyuutensei/status/1950905493053923408" +author: "Nick Tasios" +handle: Karyuutensei +post_id: "1950905493053923408" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Unrelated, but I would also love a look at your CRTs and how you use them in everyday stuff." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/Karyuutensei/status/1950905493053923408 +- Author: Nick Tasios (@Karyuutensei) +- Posted: 2025-07-31 13:04:50 + +## Branch + +**1/** + +@NOTimothyLottes Unrelated, but I would also love a look at your CRTs and how you use them in everyday stuff. + +**2/** + +@Karyuutensei Showing that setup would be fun. Most of my active CRTs are hooked up to vintage consoles though. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-NickDrisc0ll-im-sure-it-would-be-invaluable.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-NickDrisc0ll-im-sure-it-would-be-invaluable.md new file mode 100644 index 0000000..707ca88 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-NickDrisc0ll-im-sure-it-would-be-invaluable.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I'm sure it would be invaluable" +type: archive +source: twitter +source_url: "https://x.com/NickDrisc0ll/status/1950899486059851961" +author: "vulkan tamer" +handle: NickDrisc0ll +post_id: "1950899486059851961" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I'm sure it would be invaluable" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/NickDrisc0ll/status/1950899486059851961 +- Author: vulkan tamer (@NickDrisc0ll) +- Posted: 2025-07-31 12:40:58 + +## Branch + +**1/** + +@NOTimothyLottes I'm sure it would be invaluable + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-PunteroCrudo-i-would-and-i-think-more-people-would-be.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-PunteroCrudo-i-would-and-i-think-more-people-would-be.md new file mode 100644 index 0000000..ea9c28e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-PunteroCrudo-i-would-and-i-think-more-people-would-be.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I would, and I think more people would be interested." +type: archive +source: twitter +source_url: "https://x.com/PunteroCrudo/status/1950929528131326083" +author: "PunteroCrudo" +handle: PunteroCrudo +post_id: "1950929528131326083" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I would, and I think more people would be interested." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/PunteroCrudo/status/1950929528131326083 +- Author: PunteroCrudo (@PunteroCrudo) +- Posted: 2025-07-31 14:40:20 + +## Branch + +**1/** + +@NOTimothyLottes I would, and I think more people would be interested. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-SquaredApe-given-ive-only-done-asm-on-amiga-with-devpac-i.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-SquaredApe-given-ive-only-done-asm-on-amiga-with-devpac-i.md new file mode 100644 index 0000000..0ff4315 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-SquaredApe-given-ive-only-done-asm-on-amiga-with-devpac-i.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes Given I've only done ASM on Amiga with Devpac, I guess it's probably a limited take, but I enjoyed it and didn't find it harder than say something like C, mostly because the problems I solved back then were 2D domain and the hardware was pretty simple..." +type: archive +source: twitter +source_url: "https://x.com/SquaredApe/status/1950915633811534012" +author: "Robert William Cummings" +handle: SquaredApe +post_id: "1950915633811534012" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Given I've only done ASM on Amiga with Devpac, I guess it's probably a limited take, but I enjoyed it and didn't find it harder than say something like C, mostly because the problems I solved back then were 2D domain and the hardware was pretty simple..." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/SquaredApe/status/1950915633811534012 +- Author: Robert William Cummings (@SquaredApe) +- Posted: 2025-07-31 13:45:08 + +## Branch + +**1/** + +@NOTimothyLottes Given I've only done ASM on Amiga with Devpac, I guess it's probably a limited take, but I enjoyed it and didn't find it harder than say something like C, mostly because the problems I solved back then were 2D domain and the hardware was pretty simple... but not too hard? + +**2/** + +@SquaredApe ASM could be a pain when mixing with high level languages due to the constant manual register and stack shuffling, but with what I have in mind will factor that out. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-Stererence-ive-been-doing-assembly-a-bit-in-d-with-the.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-Stererence-ive-been-doing-assembly-a-bit-in-d-with-the.md new file mode 100644 index 0000000..8ad5e55 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-Stererence-ive-been-doing-assembly-a-bit-in-d-with-the.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes I've been doing assembly a bit in D with the inline assembler and it's very fun to the point where it's too distracting for me, I don't really get why people are so averse to it generally." +type: archive +source: twitter +source_url: "https://x.com/Stererence/status/1950970860694913461" +author: "Sterence" +handle: Stererence +post_id: "1950970860694913461" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I've been doing assembly a bit in D with the inline assembler and it's very fun to the point where it's too distracting for me, I don't really get why people are so averse to it generally." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/Stererence/status/1950970860694913461 +- Author: Sterence (@Stererence) +- Posted: 2025-07-31 17:24:35 + +## Branch + +**1/** + +@NOTimothyLottes I've been doing assembly a bit in D with the inline assembler and it's very fun to the point where it's too distracting for me, I don't really get why people are so averse to it generally. + +**2/** + +@Stererence Inline assembly in GCC has been a cornerstone of my C code for a long time. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-VicThorDev6-a-lot-of-people-who-claim-assembly-is-hard-just.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-VicThorDev6-a-lot-of-people-who-claim-assembly-is-hard-just.md new file mode 100644 index 0000000..45bf7c1 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-VicThorDev6-a-lot-of-people-who-claim-assembly-is-hard-just.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes A lot of people who claim assembly is hard just never did any themselves." +type: archive +source: twitter +source_url: "https://x.com/VicThorDev6/status/1950927812401004774" +author: "VicThor Dev" +handle: VicThorDev6 +post_id: "1950927812401004774" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes A lot of people who claim assembly is hard just never did any themselves." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/VicThorDev6/status/1950927812401004774 +- Author: VicThor Dev (@VicThorDev6) +- Posted: 2025-07-31 14:33:31 + +## Branch + +**1/** + +@NOTimothyLottes A lot of people who claim assembly is hard just never did any themselves. In my opinion reading or even programming things in assembly isn't very hard but actually doing some of the optimizations compilers might do seems a lot harder + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-_naf_90-im-learning-assembly-in-my-spare-time.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-_naf_90-im-learning-assembly-in-my-spare-time.md new file mode 100644 index 0000000..8f84c17 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-_naf_90-im-learning-assembly-in-my-spare-time.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I’m learning assembly in my spare time" +type: archive +source: twitter +source_url: "https://x.com/_naf_90/status/1950948334002159684" +author: "Naf 👨🏽‍💻" +handle: _naf_90 +post_id: "1950948334002159684" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I’m learning assembly in my spare time" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/_naf_90/status/1950948334002159684 +- Author: Naf 👨🏽‍💻 (@_naf_90) +- Posted: 2025-07-31 15:55:04 + +## Branch + +**1/** + +@NOTimothyLottes I’m learning assembly in my spare time + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-biovf-i-would-definitely-watch-that.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-biovf-i-would-definitely-watch-that.md new file mode 100644 index 0000000..f2e6863 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-biovf-i-would-definitely-watch-that.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I would definitely watch that 🙂" +type: archive +source: twitter +source_url: "https://x.com/biovf/status/1950863824522739861" +author: "David Sena" +handle: biovf +post_id: "1950863824522739861" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I would definitely watch that 🙂" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/biovf/status/1950863824522739861 +- Author: David Sena (@biovf) +- Posted: 2025-07-31 10:19:15 + +## Branch + +**1/** + +@NOTimothyLottes I would definitely watch that 🙂 + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-cyberbemon-id-love-to-watch-that.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-cyberbemon-id-love-to-watch-that.md new file mode 100644 index 0000000..140b876 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-cyberbemon-id-love-to-watch-that.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I'd love to watch that." +type: archive +source: twitter +source_url: "https://x.com/cyberbemon/status/1950940978229236154" +author: "D J" +handle: cyberbemon +post_id: "1950940978229236154" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I'd love to watch that." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/cyberbemon/status/1950940978229236154 +- Author: D J (@cyberbemon) +- Posted: 2025-07-31 15:25:50 + +## Branch + +**1/** + +@NOTimothyLottes I'd love to watch that. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-furan-there-are-a-lot-of-watch-me-write-this-app-in.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-furan-there-are-a-lot-of-watch-me-write-this-app-in.md new file mode 100644 index 0000000..7637fec --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-furan-there-are-a-lot-of-watch-me-write-this-app-in.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes There are a lot of \"watch me write this app in assembly\" yt videos" +type: archive +source: twitter +source_url: "https://x.com/furan/status/1950955895351083303" +author: "Ian Hanschen" +handle: furan +post_id: "1950955895351083303" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes There are a lot of \"watch me write this app in assembly\" yt videos" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/furan/status/1950955895351083303 +- Author: Ian Hanschen (@furan) +- Posted: 2025-07-31 16:25:07 + +## Branch + +**1/** + +@NOTimothyLottes There are a lot of "watch me write this app in assembly" yt videos + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-furan-would-watch-though.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-furan-would-watch-though.md new file mode 100644 index 0000000..c8c88e8 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-furan-would-watch-though.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes would watch though" +type: archive +source: twitter +source_url: "https://x.com/furan/status/1950956007737463015" +author: "Ian Hanschen" +handle: furan +post_id: "1950956007737463015" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes would watch though" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/furan/status/1950956007737463015 +- Author: Ian Hanschen (@furan) +- Posted: 2025-07-31 16:25:33 + +## Branch + +**1/** + +@NOTimothyLottes would watch though + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-konigssohne-if-youre-got-a-blank-canvas-go-for-it-interfacing.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-konigssohne-if-youre-got-a-blank-canvas-go-for-it-interfacing.md new file mode 100644 index 0000000..026d357 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-konigssohne-if-youre-got-a-blank-canvas-go-for-it-interfacing.md @@ -0,0 +1,44 @@ +--- +title: "@NOTimothyLottes If you're got a blank `canvas` go for it." +type: archive +source: twitter +source_url: "https://x.com/konigssohne/status/1950961762419044639" +author: "NEOAethyr" +handle: konigssohne +post_id: "1950961762419044639" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes If you're got a blank `canvas` go for it." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/konigssohne/status/1950961762419044639 +- Author: NEOAethyr (@konigssohne) +- Posted: 2025-07-31 16:48:25 + +## Branch + +**1/** + +@NOTimothyLottes If you're got a blank `canvas` go for it. +Interfacing to a kernel interrupt is one thing, hooking up to a toolkit ui is another I haven't ever seen, in asm. + +That leaves it all to command lines. +And meh. + +**2/** + +@konigssohne Look at the older music trackers. All ASM and quite good UIs from a workflow efficiency perspective. They don't emulate a 'windowing system UI' for good reason, it wouldn't ever be as good as what they did do. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-leonard_coder-im-still-doing-assembly-as-hobby-68k-assembly-x64.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-leonard_coder-im-still-doing-assembly-as-hobby-68k-assembly-x64.md new file mode 100644 index 0000000..6e05e7c --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-leonard_coder-im-still-doing-assembly-as-hobby-68k-assembly-x64.md @@ -0,0 +1,54 @@ +--- +title: "@NOTimothyLottes I'm still doing assembly as hobby :) ( 68k assembly, x64 assembly is not as fun to write)." +type: archive +source: twitter +source_url: "https://x.com/leonard_coder/status/1950889332375470135" +author: "Arnaud Carré" +handle: leonard_coder +post_id: "1950889332375470135" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I'm still doing assembly as hobby :) ( 68k assembly, x64 assembly is not as fun to write)." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/leonard_coder/status/1950889332375470135 +- Author: Arnaud Carré (@leonard_coder) +- Posted: 2025-07-31 12:00:37 + +## Branch + +**1/** + +@NOTimothyLottes I'm still doing assembly as hobby :) ( 68k assembly, x64 assembly is not as fun to write). +I'm interested to see such a tutorial, but please change a bit your font size and coding style :) + +**2/** + +@leonard_coder I think people get confused with my screen gabs because they are on 4k panels and I run low res CRTs (so the bitmap fonts are not small for me). Also I think most of my strange C syntax is to make it more assembly like, so won't all be there in ASM + +**3/** + +@NOTimothyLottes oh you're on low res CRT? that explain a lot, I was always really surprised by your 3x5 pixels look-alike font :) +But yeah Vulkan triangle setup code in assembly is something, I'm in! + +**4/** + +@leonard_coder Oh, yeah, I should disclose, no triangles will be harmed or even used in this project, it's PS-free, or CS-only. All gfx generated the vintage PC way, just on compute GPUs, in human crafted logic instead of fixed function HW. + +**5/** + +@NOTimothyLottes it's even better! (at least to me) + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-m6502-i-would-enjoy-watching-that.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-m6502-i-would-enjoy-watching-that.md new file mode 100644 index 0000000..ebf6d6a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-m6502-i-would-enjoy-watching-that.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I would enjoy watching that." +type: archive +source: twitter +source_url: "https://x.com/m6502/status/1950913023851278616" +author: "Manuel Montoto" +handle: m6502 +post_id: "1950913023851278616" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I would enjoy watching that." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/m6502/status/1950913023851278616 +- Author: Manuel Montoto (@m6502) +- Posted: 2025-07-31 13:34:45 + +## Branch + +**1/** + +@NOTimothyLottes I would enjoy watching that. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-mmalex-i-agree-if-one-is-ok-with-bottom-up-thinking-99.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-mmalex-i-agree-if-one-is-ok-with-bottom-up-thinking-99.md new file mode 100644 index 0000000..d0e8d15 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-mmalex-i-agree-if-one-is-ok-with-bottom-up-thinking-99.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes i agree, if one is ok with 'bottom up' thinking." +type: archive +source: twitter +source_url: "https://x.com/mmalex/status/1950886322341630045" +author: "𝖒𝖒𝖆𝖑𝖊𝖝" +handle: mmalex +post_id: "1950886322341630045" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes i agree, if one is ok with 'bottom up' thinking." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/mmalex/status/1950886322341630045 +- Author: 𝖒𝖒𝖆𝖑𝖊𝖝 (@mmalex) +- Posted: 2025-07-31 11:48:39 + +## Branch + +**1/** + +@NOTimothyLottes i agree, if one is ok with 'bottom up' thinking. 99% of my self taught early programming was asm, from demos to music editors (trackers) & it was a joy to work so directly with the machine. im convinced it still underlies my preference/prejudice for straightforward style of code + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-mu_chrinovic-definitely-interested-in-anything-you-put-out.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-mu_chrinovic-definitely-interested-in-anything-you-put-out.md new file mode 100644 index 0000000..4bbe9c0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-mu_chrinovic-definitely-interested-in-anything-you-put-out.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes definitely interested in anything you put out" +type: archive +source: twitter +source_url: "https://x.com/mu_chrinovic/status/1950864277624979480" +author: "Chrinovic Mukanya" +handle: mu_chrinovic +post_id: "1950864277624979480" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes definitely interested in anything you put out" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/mu_chrinovic/status/1950864277624979480 +- Author: Chrinovic Mukanya (@mu_chrinovic) +- Posted: 2025-07-31 10:21:03 + +## Branch + +**1/** + +@NOTimothyLottes definitely interested in anything you put out + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-nullspector-i-would-so-love-that.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-nullspector-i-would-so-love-that.md new file mode 100644 index 0000000..a795d31 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-nullspector-i-would-so-love-that.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I would so love that!" +type: archive +source: twitter +source_url: "https://x.com/nullspector/status/1950865695140364456" +author: "Michael Spector" +handle: nullspector +post_id: "1950865695140364456" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I would so love that!" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/nullspector/status/1950865695140364456 +- Author: Michael Spector (@nullspector) +- Posted: 2025-07-31 10:26:41 + +## Branch + +**1/** + +@NOTimothyLottes I would so love that! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-o__boga-im-staying-maybe-for-vulkan-depending-on-how.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-o__boga-im-staying-maybe-for-vulkan-depending-on-how.md new file mode 100644 index 0000000..68606b5 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-o__boga-im-staying-maybe-for-vulkan-depending-on-how.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I'm staying maybe for Vulkan, depending on how manageable it gets to me." +type: archive +source: twitter +source_url: "https://x.com/o__boga/status/1950939824183001106" +author: "Boga" +handle: o__boga +post_id: "1950939824183001106" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I'm staying maybe for Vulkan, depending on how manageable it gets to me." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/o__boga/status/1950939824183001106 +- Author: Boga (@o__boga) +- Posted: 2025-07-31 15:21:15 + +## Branch + +**1/** + +@NOTimothyLottes I'm staying maybe for Vulkan, depending on how manageable it gets to me. (Assembly or not) + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-opdroid1234-i-would.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-opdroid1234-i-would.md new file mode 100644 index 0000000..f847d43 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-opdroid1234-i-would.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes i would!" +type: archive +source: twitter +source_url: "https://x.com/opdroid1234/status/1950902422362046528" +author: "opdroid1234" +handle: opdroid1234 +post_id: "1950902422362046528" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes i would!" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/opdroid1234/status/1950902422362046528 +- Author: opdroid1234 (@opdroid1234) +- Posted: 2025-07-31 12:52:38 + +## Branch + +**1/** + +@NOTimothyLottes i would! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-plasmabitcoin-very-interested.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-plasmabitcoin-very-interested.md new file mode 100644 index 0000000..e1eba94 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-plasmabitcoin-very-interested.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Very interested!" +type: archive +source: twitter +source_url: "https://x.com/plasmabitcoin/status/1950963702569771336" +author: "PlasmaBitcoin" +handle: plasmabitcoin +post_id: "1950963702569771336" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Very interested!" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/plasmabitcoin/status/1950963702569771336 +- Author: PlasmaBitcoin (@plasmabitcoin) +- Posted: 2025-07-31 16:56:08 + +## Branch + +**1/** + +@NOTimothyLottes Very interested! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-pranksterware-thatd-rock.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-pranksterware-thatd-rock.md new file mode 100644 index 0000000..98ac7a9 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-pranksterware-thatd-rock.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes That'd rock!" +type: archive +source: twitter +source_url: "https://x.com/pranksterware/status/1950872517700206902" +author: "unevenprankster" +handle: pranksterware +post_id: "1950872517700206902" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes That'd rock!" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/pranksterware/status/1950872517700206902 +- Author: unevenprankster (@pranksterware) +- Posted: 2025-07-31 10:53:48 + +## Branch + +**1/** + +@NOTimothyLottes That'd rock! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-roasted6read-i-am-interested.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-roasted6read-i-am-interested.md new file mode 100644 index 0000000..350fa3e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-roasted6read-i-am-interested.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I am interested" +type: archive +source: twitter +source_url: "https://x.com/roasted6read/status/1950914379412566114" +author: "᠌᠌ ᠌ ᠌" +handle: roasted6read +post_id: "1950914379412566114" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I am interested" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/roasted6read/status/1950914379412566114 +- Author: ᠌᠌ ᠌ ᠌ (@roasted6read) +- Posted: 2025-07-31 13:40:08 + +## Branch + +**1/** + +@NOTimothyLottes I am interested + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-ruben_cabaco-would-be-very-interested-in-it-also-on-your-forth.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-ruben_cabaco-would-be-very-interested-in-it-also-on-your-forth.md new file mode 100644 index 0000000..de092c6 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-ruben_cabaco-would-be-very-interested-in-it-also-on-your-forth.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Would be very interested in it! Also on your Forth inspired languages and the whole mental approach to simplify problem solving with efficiency in mind." +type: archive +source: twitter +source_url: "https://x.com/ruben_cabaco/status/1950894646881611793" +author: "Rúben Cabaço" +handle: ruben_cabaco +post_id: "1950894646881611793" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Would be very interested in it! Also on your Forth inspired languages and the whole mental approach to simplify problem solving with efficiency in mind." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/ruben_cabaco/status/1950894646881611793 +- Author: Rúben Cabaço (@ruben_cabaco) +- Posted: 2025-07-31 12:21:44 + +## Branch + +**1/** + +@NOTimothyLottes Would be very interested in it! Also on your Forth inspired languages and the whole mental approach to simplify problem solving with efficiency in mind. Hard to find materials on this, and from what I gather your old projects/thoughts are no longer online. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-simplex_fx-is-it-already-aprils-fools-again.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-simplex_fx-is-it-already-aprils-fools-again.md new file mode 100644 index 0000000..1e8bb6e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-simplex_fx-is-it-already-aprils-fools-again.md @@ -0,0 +1,52 @@ +--- +title: "@NOTimothyLottes Is it already april’s fools again?" +type: archive +source: twitter +source_url: "https://x.com/simplex_fx/status/1951011391827010009" +author: "Simplex" +handle: simplex_fx +post_id: "1951011391827010009" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Is it already april’s fools again?" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/simplex_fx/status/1951011391827010009 +- Author: Simplex (@simplex_fx) +- Posted: 2025-07-31 20:05:38 + +## Branch + +**1/** + +@NOTimothyLottes Is it already april’s fools again? + +**2/** + +@simplex_fx Would it be interesting any other way + +**3/** + +@NOTimothyLottes Worst part of this is not even the asm, but the choice of Vulkan 🤣 + +**4/** + +@simplex_fx Vulkan for compute is a lot better than say DX12. Because VK has a working pipelinable API construct: VkEvents, where in contrast DX12's pipeline barriers are serializing in the drivers. Also GL has no pipelining. So VK wins by virtue of no other option. + +**5/** + +@NOTimothyLottes Highly depends on one’s goals. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-ssh4net-please.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-ssh4net-please.md new file mode 100644 index 0000000..4c9a2cf --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-ssh4net-please.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Please!" +type: archive +source: twitter +source_url: "https://x.com/ssh4net/status/1950870099809681578" +author: "Vlad Erium 🇯🇵" +handle: ssh4net +post_id: "1950870099809681578" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Please!" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/ssh4net/status/1950870099809681578 +- Author: Vlad Erium 🇯🇵 (@ssh4net) +- Posted: 2025-07-31 10:44:11 + +## Branch + +**1/** + +@NOTimothyLottes Please! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-thecolemanthe-assembly-isnt-hard-its-tedious-no-abstractions.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-thecolemanthe-assembly-isnt-hard-its-tedious-no-abstractions.md new file mode 100644 index 0000000..2b288db --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-thecolemanthe-assembly-isnt-hard-its-tedious-no-abstractions.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Assembly isn't hard, it's tedious." +type: archive +source: twitter +source_url: "https://x.com/thecolemanthe/status/1950956186783895852" +author: "Mark Coleman" +handle: thecolemanthe +post_id: "1950956186783895852" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Assembly isn't hard, it's tedious." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/thecolemanthe/status/1950956186783895852 +- Author: Mark Coleman (@thecolemanthe) +- Posted: 2025-07-31 16:26:16 + +## Branch + +**1/** + +@NOTimothyLottes Assembly isn't hard, it's tedious. No abstractions, only the raw building blocks of computing. A lot of people just aren't ready or willing to deal with what the reality of an if or string concatenation much less the horrors of what their overly abstract oop code actually is. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-totalwert-thread.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-totalwert-thread.md new file mode 100644 index 0000000..b2fc4ca --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-07-31-totalwert-thread.md @@ -0,0 +1,38 @@ +--- +title: "@NOTimothyLottes" +type: archive +source: twitter +source_url: "https://x.com/totalwert/status/1950900720770625916" +author: "Alonne" +handle: totalwert +post_id: "1950900720770625916" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/totalwert/status/1950900720770625916 +- Author: Alonne (@totalwert) +- Posted: 2025-07-31 12:45:52 + +## Branch + +**1/** + +@NOTimothyLottes + +Media (not lifted): `1950900720770625916_GxL93LLW8AA-5hM.mp4_orig.mp4` + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-AnshumanKhanna5-video-link-now.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-AnshumanKhanna5-video-link-now.md new file mode 100644 index 0000000..6b32e5f --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-AnshumanKhanna5-video-link-now.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes VIDEO LINK NOW" +type: archive +source: twitter +source_url: "https://x.com/AnshumanKhanna5/status/1951095292377571395" +author: "Anshuman Khanna" +handle: AnshumanKhanna5 +post_id: "1951095292377571395" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes VIDEO LINK NOW" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/AnshumanKhanna5/status/1951095292377571395 +- Author: Anshuman Khanna (@AnshumanKhanna5) +- Posted: 2025-08-01 01:39:01 + +## Branch + +**1/** + +@NOTimothyLottes VIDEO LINK NOW + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-John31625320803-it-doesnt-really-matter-what-language-you-call.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-John31625320803-it-doesnt-really-matter-what-language-you-call.md new file mode 100644 index 0000000..42b7982 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-John31625320803-it-doesnt-really-matter-what-language-you-call.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes It doesn't really matter what language you call Vulkan from, the pain is all in the API..." +type: archive +source: twitter +source_url: "https://x.com/John31625320803/status/1951198394329829393" +author: "Ægis Stranding" +handle: John31625320803 +post_id: "1951198394329829393" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes It doesn't really matter what language you call Vulkan from, the pain is all in the API..." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/John31625320803/status/1951198394329829393 +- Author: Ægis Stranding (@John31625320803) +- Posted: 2025-08-01 08:28:43 + +## Branch + +**1/** + +@NOTimothyLottes It doesn't really matter what language you call Vulkan from, the pain is all in the API... + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-_vkaku-i-know-someone-whod-be-excited-opdroid1234.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-_vkaku-i-know-someone-whod-be-excited-opdroid1234.md new file mode 100644 index 0000000..093a907 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-_vkaku-i-know-someone-whod-be-excited-opdroid1234.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I know someone who'd be excited @opdroid1234" +type: archive +source: twitter +source_url: "https://x.com/_vkaku/status/1951170620542296537" +author: "Karthik Kumar Viswanathan" +handle: _vkaku +post_id: "1951170620542296537" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I know someone who'd be excited @opdroid1234" +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/_vkaku/status/1951170620542296537 +- Author: Karthik Kumar Viswanathan (@_vkaku) +- Posted: 2025-08-01 06:38:21 + +## Branch + +**1/** + +@NOTimothyLottes I know someone who'd be excited @opdroid1234 + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-schulzb589-i-would-watch-that-so-count-me-in.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-schulzb589-i-would-watch-that-so-count-me-in.md new file mode 100644 index 0000000..5c1f742 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/2025-08-01-schulzb589-i-would-watch-that-so-count-me-in.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I would watch that." +type: archive +source: twitter +source_url: "https://x.com/schulzb589/status/1951093394786361833" +author: "Ben Schulz" +handle: schulzb589 +post_id: "1951093394786361833" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I would watch that." +in_reply_to: "" +parent_post_id: "1950860870818439202" +--- + +## Source + +- URL: https://x.com/schulzb589/status/1951093394786361833 +- Author: Ben Schulz (@schulzb589) +- Posted: 2025-08-01 01:31:29 + +## Branch + +**1/** + +@NOTimothyLottes I would watch that. So, count me in. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/index.md b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/index.md new file mode 100644 index 0000000..1435986 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-07-31-people-claim-assembly-is-hard-a-good-counter-to/index.md @@ -0,0 +1,53 @@ +--- +title: "People claim assembly is hard." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1950860870818439202" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1950860870818439202" +date: 2025-07-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "People claim assembly is hard." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1950860870818439202 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-07-31 10:07:31 + +## Thread + +**1/** + +People claim assembly is hard. A good counter to that would be showing how to build a x86-64 WIN32 Vulkan based engine from scratch in ASM. Not sure how many people would find that worth watching though. + +Branches: [[2025-07-31-biovf-i-would-definitely-watch-that]], [[2025-07-31-mu_chrinovic-definitely-interested-in-anything-you-put-out]], [[2025-07-31-nullspector-i-would-so-love-that]], [[2025-07-31-ssh4net-please]], [[2025-07-31-pranksterware-thatd-rock]], [[2025-07-31-mmalex-i-agree-if-one-is-ok-with-bottom-up-thinking-99]], [[2025-07-31-leonard_coder-im-still-doing-assembly-as-hobby-68k-assembly-x64]], [[2025-07-31-ruben_cabaco-would-be-very-interested-in-it-also-on-your-forth]], [[2025-07-31-NickDrisc0ll-im-sure-it-would-be-invaluable]], [[2025-07-31-totalwert-thread]], [[2025-07-31-opdroid1234-i-would]], [[2025-07-31-Karyuutensei-unrelated-but-i-would-also-love-a-look-at-your]], [[2025-07-31-m6502-i-would-enjoy-watching-that]], [[2025-07-31-roasted6read-i-am-interested]], [[2025-07-31-SquaredApe-given-ive-only-done-asm-on-amiga-with-devpac-i]], [[2025-07-31-VicThorDev6-a-lot-of-people-who-claim-assembly-is-hard-just]], [[2025-07-31-PunteroCrudo-i-would-and-i-think-more-people-would-be]], [[2025-07-31-2Sexy4MyGPU-it-was-never-hard-just-tedious]], [[2025-07-31-o__boga-im-staying-maybe-for-vulkan-depending-on-how]], [[2025-07-31-cyberbemon-id-love-to-watch-that]], [[2025-07-31-_naf_90-im-learning-assembly-in-my-spare-time]], [[2025-07-31-furan-there-are-a-lot-of-watch-me-write-this-app-in]], [[2025-07-31-furan-would-watch-though]], [[2025-07-31-thecolemanthe-assembly-isnt-hard-its-tedious-no-abstractions]], [[2025-07-31-konigssohne-if-youre-got-a-blank-canvas-go-for-it-interfacing]], [[2025-07-31-plasmabitcoin-very-interested]], [[2025-07-31-Stererence-ive-been-doing-assembly-a-bit-in-d-with-the]], [[2025-07-31-simplex_fx-is-it-already-aprils-fools-again]], [[2025-07-31-CUDAHandbook-i-have-been-writing-assembly-for-almost-40-years]], [[2025-07-31-0x44_-assembly-isnt-hard-its-just-platform-specific]], [[2025-08-01-schulzb589-i-would-watch-that-so-count-me-in]], [[2025-08-01-AnshumanKhanna5-video-link-now]], [[2025-08-01-_vkaku-i-know-someone-whod-be-excited-opdroid1234]], [[2025-08-01-John31625320803-it-doesnt-really-matter-what-language-you-call]] + +**2/** + +If game logic is GPU side there is little point in NOT doing assembly, since the CPU side stuff would always be platform specific. + +**3/** + +ASM provides a good opportunity to show how to convert typical function argument gather into store multicast with linear prefetch for arguments to API calls. Effectively re-arch for cold cache efficiency. And other radically cool stuff that nobody does. + +**4/** + +Linux has been all down hill over the years. OSS was fantastic, easy portable Linux system call interface. Also it's easy to do direct X11 with just syscalls. Now with Wayland you are stuck with linking to a garbage library. So might as well do WIN32 for Linux and depend on Wine. + +**5/** + +So Valve standardizing on Proton saves a lot of trouble with porting across ABIs/etc, just do WIN32 as it's way easier to interface with than Wayland and whatever horrible userland audio interface Linux monkeys switch to this era. + +**6/** + +Few probably remember the old Unix before pthreads and ELF. It was better then. Much easier to use fork and shm to do platform audio than today. And that holds for all the vintage workstations (which I did implement back in the day) diff --git a/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/2025-08-01-joeyazf-sounds-super-interesting.md b/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/2025-08-01-joeyazf-sounds-super-interesting.md new file mode 100644 index 0000000..5b24f47 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/2025-08-01-joeyazf-sounds-super-interesting.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Sounds super interesting!" +type: archive +source: twitter +source_url: "https://x.com/joeyazf/status/1951378813985890736" +author: "Joey Az" +handle: joeyazf +post_id: "1951378813985890736" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Sounds super interesting!" +in_reply_to: "" +parent_post_id: "1951347512088088657" +--- + +## Source + +- URL: https://x.com/joeyazf/status/1951378813985890736 +- Author: Joey Az (@joeyazf) +- Posted: 2025-08-01 20:25:38 + +## Branch + +**1/** + +@NOTimothyLottes Sounds super interesting! + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/2025-08-01-snk_xed-looking-forward-to-it-what-do-i-bookmark.md b/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/2025-08-01-snk_xed-looking-forward-to-it-what-do-i-bookmark.md new file mode 100644 index 0000000..8a13a98 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/2025-08-01-snk_xed-looking-forward-to-it-what-do-i-bookmark.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Looking forward to it, what do I bookmark?" +type: archive +source: twitter +source_url: "https://x.com/snk_xed/status/1951374094655516679" +author: "Sankrant Chaubey" +handle: snk_xed +post_id: "1951374094655516679" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Looking forward to it, what do I bookmark?" +in_reply_to: "" +parent_post_id: "1951347512088088657" +--- + +## Source + +- URL: https://x.com/snk_xed/status/1951374094655516679 +- Author: Sankrant Chaubey (@snk_xed) +- Posted: 2025-08-01 20:06:53 + +## Branch + +**1/** + +@NOTimothyLottes Looking forward to it, what do I bookmark? + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/index.md b/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/index.md new file mode 100644 index 0000000..7ddfbec --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-08-01-also-run-from-gpu-side-editing-tools-for-shader/index.md @@ -0,0 +1,33 @@ +--- +title: "Also run-from GPU-side editing tools for shader source and bind everything tables." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1951347512088088657" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1951347512088088657" +date: 2025-08-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Also run-from GPU-side editing tools for shader source and bind everything tables." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1951347512088088657 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-08-01 18:21:15 + +## Thread + +**1/** + +Also run-from GPU-side editing tools for shader source and bind everything tables. And build-the-editors-in-it style. Which load/store to the CART. So it won't be for people who want TBs of giant team gen content, but rather sized for what a single person could pull off + +Branches: [[2025-08-01-snk_xed-looking-forward-to-it-what-do-i-bookmark]], [[2025-08-01-joeyazf-sounds-super-interesting]] diff --git a/archive/threads/NOTimothyLottes/2025-08-02-so-far-the-plan-is-to-have-the-data-read-write/index.md b/archive/threads/NOTimothyLottes/2025-08-02-so-far-the-plan-is-to-have-the-data-read-write/index.md new file mode 100644 index 0000000..2f458e4 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-08-02-so-far-the-plan-is-to-have-the-data-read-write/index.md @@ -0,0 +1,31 @@ +--- +title: "@onatt0 @EskilSteenberg @olson_dan So far the plan is to have the data read/write from the GPU, but still use the CPU to do the SPIR-V generation from said data." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1951638140600381942" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1951638140600381942" +date: 2025-08-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@onatt0 @EskilSteenberg @olson_dan So far the plan is to have the data read/write from the GPU, but still use the CPU to do the SPIR-V generation from said data." +in_reply_to: "1951591243328135279" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1951638140600381942 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-08-02 13:36:07 + +## Thread + +**1/** + +@onatt0 @EskilSteenberg @olson_dan So far the plan is to have the data read/write from the GPU, but still use the CPU to do the SPIR-V generation from said data. diff --git a/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-AgileJebrim-reversed-is-a-significant-improvement-but-it.md b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-AgileJebrim-reversed-is-a-significant-improvement-but-it.md new file mode 100644 index 0000000..df19d2f --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-AgileJebrim-reversed-is-a-significant-improvement-but-it.md @@ -0,0 +1,46 @@ +--- +title: "Reversed is a significant improvement but it still has its limitations when doing planetary-scale rendering that needs good precision up both close and far away." +type: archive +source: twitter +source_url: "https://x.com/AgileJebrim/status/1990260754688172298" +author: "Jebrim" +handle: AgileJebrim +post_id: "1990260754688172298" +date: 2025-11-17 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Reversed is a significant improvement but it still has its limitations when doing planetary-scale rendering that needs good precision up both close and far away." +in_reply_to: "" +parent_post_id: "1990260050485797063" +--- + +## Source + +- URL: https://x.com/AgileJebrim/status/1990260754688172298 +- Author: Jebrim (@AgileJebrim) +- Posted: 2025-11-17 03:28:35 + +## Branch + +**1/** + +Reversed is a significant improvement but it still has its limitations when doing planetary-scale rendering that needs good precision up both close and far away. Your options there are either a logarithmic depth buffer to linearize things (albeit losing early z), your own integer-based depth test system in compute shaders, or a stack of multiple frustums layered on top of one another. + +**2/** + +@AgileJebrim Yes for my non-tri stuff I'm log depth already. This is just for games, not simulation. + +**3/** + +Simulation can usually localize enough that reverse Z is good enough. Google Earth style geospatial visualization is where things get trickier. + +Another option is to dynamically change the far plane, moving it closer as you get closer to the terrain and further back as you move further back. I don’t think I tried this one but I imagine it requires a lot of tuning. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-bgolus-many-are-still-on-opengles-and-webgl-which-dont.md b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-bgolus-many-are-still-on-opengles-and-webgl-which-dont.md new file mode 100644 index 0000000..8005679 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-bgolus-many-are-still-on-opengles-and-webgl-which-dont.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Many are still on OpenGLES and WebGL, which don’t properly support inverse depth due to still using a -1 to 1 clip space." +type: archive +source: twitter +source_url: "https://x.com/bgolus/status/1990285316054503566" +author: "Ben Golus⚠️⭕" +handle: bgolus +post_id: "1990285316054503566" +date: 2025-11-17 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Many are still on OpenGLES and WebGL, which don’t properly support inverse depth due to still using a -1 to 1 clip space." +in_reply_to: "" +parent_post_id: "1990260050485797063" +--- + +## Source + +- URL: https://x.com/bgolus/status/1990285316054503566 +- Author: Ben Golus⚠️⭕ (@bgolus) +- Posted: 2025-11-17 05:06:11 + +## Branch + +**1/** + +@NOTimothyLottes Many are still on OpenGLES and WebGL, which don’t properly support inverse depth due to still using a -1 to 1 clip space. Not really a problem for inverse depth in its own, but does cause problems for infinite far depth. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-terekhov_de-ive-never-had-real-depth-precision-issues-in-our.md b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-terekhov_de-ive-never-had-real-depth-precision-issues-in-our.md new file mode 100644 index 0000000..110a1c0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-17-terekhov_de-ive-never-had-real-depth-precision-issues-in-our.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes I've never had real depth precision issues in our game ports but I guess I'd better just adopt and get used to reversed infinite projection cause it's objectively better." +type: archive +source: twitter +source_url: "https://x.com/terekhov_de/status/1990284522508927371" +author: "Dmitrii Terekhov" +handle: terekhov_de +post_id: "1990284522508927371" +date: 2025-11-17 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I've never had real depth precision issues in our game ports but I guess I'd better just adopt and get used to reversed infinite projection cause it's objectively better." +in_reply_to: "" +parent_post_id: "1990260050485797063" +--- + +## Source + +- URL: https://x.com/terekhov_de/status/1990284522508927371 +- Author: Dmitrii Terekhov (@terekhov_de) +- Posted: 2025-11-17 05:03:02 + +## Branch + +**1/** + +@NOTimothyLottes I've never had real depth precision issues in our game ports but I guess I'd better just adopt and get used to reversed infinite projection cause it's objectively better. Promise to try it for our next project :) + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-18-Alecazam123-infinite-far-doesnt-apply-to-ortho-and-many-of.md b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-18-Alecazam123-infinite-far-doesnt-apply-to-ortho-and-many-of.md new file mode 100644 index 0000000..4f640ba --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-18-Alecazam123-infinite-far-doesnt-apply-to-ortho-and-many-of.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Infinite far doesn’t apply to ortho, and many of editors/engines need to switch camera viewports." +type: archive +source: twitter +source_url: "https://x.com/Alecazam123/status/1990818990059671922" +author: "Alec Miller" +handle: Alecazam123 +post_id: "1990818990059671922" +date: 2025-11-18 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Infinite far doesn’t apply to ortho, and many of editors/engines need to switch camera viewports." +in_reply_to: "" +parent_post_id: "1990260050485797063" +--- + +## Source + +- URL: https://x.com/Alecazam123/status/1990818990059671922 +- Author: Alec Miller (@Alecazam123) +- Posted: 2025-11-18 16:26:49 + +## Branch + +**1/** + +@NOTimothyLottes Infinite far doesn’t apply to ortho, and many of editors/engines need to switch camera viewports. But it’s great for persp. Also too much code handing modeInv for normals, which is wrong and unneeded. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-19-stainless_code-i-havent-really-done-graphics-in-a-while-but-ive.md b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-19-stainless_code-i-havent-really-done-graphics-in-a-while-but-ive.md new file mode 100644 index 0000000..05998c4 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/2025-11-19-stainless_code-i-havent-really-done-graphics-in-a-while-but-ive.md @@ -0,0 +1,41 @@ +--- +title: "@NOTimothyLottes I haven't really done graphics in a while, but I've never heard about infinite far nor reversed z, where can I read up on it more?" +type: archive +source: twitter +source_url: "https://x.com/stainless_code/status/1991219165978370275" +author: "Yuriy Stets" +handle: stainless_code +post_id: "1991219165978370275" +date: 2025-11-19 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I haven't really done graphics in a while, but I've never heard about infinite far nor reversed z, where can I read up on it more?" +in_reply_to: "" +parent_post_id: "1990260050485797063" +--- + +## Source + +- URL: https://x.com/stainless_code/status/1991219165978370275 +- Author: Yuriy Stets (@stainless_code) +- Posted: 2025-11-19 18:56:58 + +## Branch + +**1/** + +@NOTimothyLottes I haven't really done graphics in a while, but I've never heard about infinite far nor reversed z, where can I read up on it more? +Some cursory googling didn't return anything useful on this topic. + +**2/** + +@stainless_code I put some docs (based on an old blog post) on projection matrix stuff inside STP source: https://github.com/Unity-Technologies/Graphics/blob/master/Packages/com.unity.render-pipelines.core/Runtime/STP/Stp.hlsl - Documents the maths to take depth and 2 projections and get a static reprojection vector for example. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/index.md b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/index.md new file mode 100644 index 0000000..e8ea812 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2025-11-17-i-wish-everyone-would-just-adopt-reversed-with/index.md @@ -0,0 +1,35 @@ +--- +title: "I wish everyone would just adopt \"reversed with infinite far\" projection matrixes so I could only optimize for the fastest and highest precision option, but I'm guessing people haven't all migrated over :(" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/1990260050485797063" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "1990260050485797063" +date: 2025-11-17 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "I wish everyone would just adopt \"reversed with infinite far\" projection matrixes so I could only optimize for the fastest and highest precision option, but I'm guessing people haven't all migrated over :(" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/1990260050485797063 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2025-11-17 03:25:47 + +## Thread + +**1/** + +I wish everyone would just adopt "reversed with infinite far" projection matrixes so I could only optimize for the fastest and highest precision option, but I'm guessing people haven't all migrated over :( + +Media (not lifted): `1990260050485797063_G57SXPJW8AAvEhh_orig.png` + +Branches: [[2025-11-17-AgileJebrim-reversed-is-a-significant-improvement-but-it]], [[2025-11-17-terekhov_de-ive-never-had-real-depth-precision-issues-in-our]], [[2025-11-17-bgolus-many-are-still-on-opengles-and-webgl-which-dont]], [[2025-11-18-Alecazam123-infinite-far-doesnt-apply-to-ortho-and-many-of]], [[2025-11-19-stainless_code-i-havent-really-done-graphics-in-a-while-but-ive]] diff --git a/archive/threads/NOTimothyLottes/2026-01-14-can-do-that-but-at-least-these-kinds-of-systems/index.md b/archive/threads/NOTimothyLottes/2026-01-14-can-do-that-but-at-least-these-kinds-of-systems/index.md new file mode 100644 index 0000000..04b5a6a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-01-14-can-do-that-but-at-least-these-kinds-of-systems/index.md @@ -0,0 +1,33 @@ +--- +title: "@VPCOMPRESSB Can do that." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2011429743053111302" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2011429743053111302" +date: 2026-01-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@VPCOMPRESSB Can do that." +in_reply_to: "2011353617102741593" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2011429743053111302 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-01-14 13:26:35 + +> @NOTimothyLottes would it be good if the program optimizes its own code during and/or after its initialization for every subsequent exec to be hyper specialized? + +## Thread + +**1/** + +@VPCOMPRESSB Can do that. But at least these kinds of systems are already faster than human response time (excluding when they have external dependencies on say on some other kernel like Linux). I'll be able to recompile all binary code (including GPU-side) in a tiny fraction of frame time. diff --git a/archive/threads/NOTimothyLottes/2026-03-08-ill-add-one-conspiracy-theory-for-everyone/2026-03-08-gindi4711-did-they-not-just-use-more-historical-frames-to.md b/archive/threads/NOTimothyLottes/2026-03-08-ill-add-one-conspiracy-theory-for-everyone/2026-03-08-gindi4711-did-they-not-just-use-more-historical-frames-to.md new file mode 100644 index 0000000..46beef0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-03-08-ill-add-one-conspiracy-theory-for-everyone/2026-03-08-gindi4711-did-they-not-just-use-more-historical-frames-to.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes Did they not just use more historical frames to get their samples and have a better model to compensate for the side effects?" +type: archive +source: twitter +source_url: "https://x.com/gindi4711/status/2030734135338144038" +author: "Gindi4711" +handle: gindi4711 +post_id: "2030734135338144038" +date: 2026-03-08 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Did they not just use more historical frames to get their samples and have a better model to compensate for the side effects?" +in_reply_to: "" +parent_post_id: "2030722033286328426" +--- + +## Source + +- URL: https://x.com/gindi4711/status/2030734135338144038 +- Author: Gindi4711 (@gindi4711) +- Posted: 2026-03-08 19:55:21 + +## Branch + +**1/** + +@NOTimothyLottes Did they not just use more historical frames to get their samples and have a better model to compensate for the side effects? + +**2/** + +@gindi4711 Costs went up a lot so maybe. But cannot really add frames of context without getting costly. Secondary option is to store extra data in feedback sideband. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-03-08-ill-add-one-conspiracy-theory-for-everyone/index.md b/archive/threads/NOTimothyLottes/2026-03-08-ill-add-one-conspiracy-theory-for-everyone/index.md new file mode 100644 index 0000000..0ff132a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-03-08-ill-add-one-conspiracy-theory-for-everyone/index.md @@ -0,0 +1,61 @@ +--- +title: "I'll add one conspiracy theory for everyone listening: After STP's source was out there, DLSS4 'transformer' magically gained 'sharpness' but I don't believe it was from the ML model change at all, instead I think they just introduced the same error feedback mechanism in STP ..." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2030722033286328426" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2030722033286328426" +date: 2026-03-08 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "I'll add one conspiracy theory for everyone listening: After STP's source was out there, DLSS4 'transformer' magically gained 'sharpness' but I don't believe it was from the ML model change at all, instead I think they just introduced the same error feedback mechanism in STP ..." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2030722033286328426 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-03-08 19:07:16 + +## Thread + +**1/** + +I'll add one conspiracy theory for everyone listening: After STP's source was out there, DLSS4 'transformer' magically gained 'sharpness' but I don't believe it was from the ML model change at all, instead I think they just introduced the same error feedback mechanism in STP ... + +Branches: [[2026-03-08-gindi4711-did-they-not-just-use-more-historical-frames-to]] + +**2/** + +Specifically STP samples feedback at the position of the input pixels, and uses that difference as an error term estimating the amount of blur introduced, one can subtract out some amount of that 'error' to sharpen ... + +**3/** + +Of course that idea isn't strictly new either, fluid sims with advection use similar logic to sharpen. So I'm just another human building on the masters of the past. One can start to go beyond sharpening with this technique and get into local contrast adaption too ... + +**4/** + +One of the marketing points of DLSS4 was 'sharpness' but it didn't actually resolve details to a higher frequency than prior, instead it just gets to a higher contrast, and then they con the consumer with that ... + +**5/** + +Another trick one can employ, and something I used often as a pro photographer, was to deliberately thin or thicken features with sub-pixel precision during enlargement. Meaning you can take a 'feature' and thin it below source nyquist. And people go 'wow' it's detailed ... + +**6/** + +So for instance one can take a input (lower-resolution) feature and simultaneously increase it's contrast while reducing it's thickness (when enlarged) in an energy preserving way. Can use signal bounds to estimate how much contrast and thus thin-ness one can push the feature ... + +**7/** + +This gets easier with color signals because you can take the minimum bounds of the three channels, this is actually exactly what CAS does (just applied in a context without enlargement) ... + +**8/** + +Anyway all this stuff is easy to artistically shape analytically in shader code, and never needed any kind of ML to be implemented (in fact ML would be slow, because it cannot do max/min style logic!!!). diff --git a/archive/threads/NOTimothyLottes/2026-05-23-most-crap-o-grammers-today-in-the-user-space-c/index.md b/archive/threads/NOTimothyLottes/2026-05-23-most-crap-o-grammers-today-in-the-user-space-c/index.md new file mode 100644 index 0000000..3f96a07 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-23-most-crap-o-grammers-today-in-the-user-space-c/index.md @@ -0,0 +1,31 @@ +--- +title: "Most crap-o-grammers today in the user-space C++ bloat-ware domain have not really optimized for performance, rather they optimized for maximum bloat generation." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2058166883044516181" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2058166883044516181" +date: 2026-05-23 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Most crap-o-grammers today in the user-space C++ bloat-ware domain have not really optimized for performance, rather they optimized for maximum bloat generation." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2058166883044516181 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-05-23 12:43:18 + +## Thread + +**1/** + +Most crap-o-grammers today in the user-space C++ bloat-ware domain have not really optimized for performance, rather they optimized for maximum bloat generation. Just add up how much the installed libraries weigh in MiB on a clean OS install. diff --git a/archive/threads/NOTimothyLottes/2026-05-29-https-trickybitsblog-github-io-2024-02-25/index.md b/archive/threads/NOTimothyLottes/2026-05-29-https-trickybitsblog-github-io-2024-02-25/index.md new file mode 100644 index 0000000..d34bab2 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-29-https-trickybitsblog-github-io-2024-02-25/index.md @@ -0,0 +1,63 @@ +--- +title: "https://trickybitsblog.github.io/2024/02/25/timestamps.html is a nice related read, also I'm a little late to the https://ntdoc.m417z.com/system_hypervisor_user_shared_data party, but will have that sorted soon as well" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2060191401883619479" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2060191401883619479" +date: 2026-05-29 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "https://trickybitsblog.github.io/2024/02/25/timestamps.html is a nice related read, also I'm a little late to the https://ntdoc.m417z.com/system_hypervisor_user_shared_data party, but will have that sorted soon as well" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2060191401883619479 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-05-29 02:48:01 + +## Thread + +**1/** + +https://trickybitsblog.github.io/2024/02/25/timestamps.html is a nice related read, also I'm a little late to the https://ntdoc.m417z.com/system_hypervisor_user_shared_data party, but will have that sorted soon as well + +**2/** + +Other thought, I typically mmap an extra LOG file, and write via atomic to grab a fixed width line. No stdout. The log wraps around and exists for multiple executions or even parallel processes. It's the way to do it ... BUT ... + +**3/** + +... I think I'm going to just move the LOG file into the first N KiB of the CART file. So mmap'ed on CPU and GPU, and I can just bank on how "less" doesn't actually load the entire file while printing, so I can still see output on a console if needed for debug. + +**4/** + +And another random thought, can you force de-power the CPU by abusing the https://www.felixcloutier.com/x86/pause instruction for things that are not spin-loops :) Going to have to try this one at some point. + +**5/** + +Pushing data to GPU is really a no-brainer (write-combined stores), minus possibility of non-atomic write visibility, so I do simple stuff like always having a ring buffer of packets available where the GPU can validate each entry with a HASH, taking the latest valid one to use + +**6/** + +Also AMD exports non-cached memory in VK, so it's possible to poll on data the CPU pushes (via write combined stores to VRAM) on AMD a few times per frame even. + +**7/** + +The workaround for NVIDIA is if one wants to read N times per frame, then the CPU needs to duplicate the packet ring to N separate lines. Then the GPU is free to poll, but using separate cachelines each time. + +**8/** + +The route back for IO that needs to be routed through the CPU {audio out, network out} is a lot more unfun. AMD again has the nice uncached memory support, so that part is easy. NVIDIA well, would have to take the crappy mid-frame L2 writeback (likely) making CPU-read available + +**9/** + +Those who have tread here before with driver side logic (DMA transfers/etc) got screwed, Win+Linux driver idiots and their CPU interrupt based scheduling = completely useless. So getting the driver out of the picture is the way to go diff --git a/archive/threads/NOTimothyLottes/2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc/2026-05-31-FUZxxl-if-you-do-the-multiply-in-uint128-t-and-then.md b/archive/threads/NOTimothyLottes/2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc/2026-05-31-FUZxxl-if-you-do-the-multiply-in-uint128-t-and-then.md new file mode 100644 index 0000000..6111ee8 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc/2026-05-31-FUZxxl-if-you-do-the-multiply-in-uint128-t-and-then.md @@ -0,0 +1,44 @@ +--- +title: "@NOTimothyLottes If you do the multiply in uint128_t and then right-shift by 64 places, the compiler should do the right thing." +type: archive +source: twitter +source_url: "https://x.com/FUZxxl/status/2060885487858880689" +author: "Robert Clausecker" +handle: FUZxxl +post_id: "2060885487858880689" +date: 2026-05-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes If you do the multiply in uint128_t and then right-shift by 64 places, the compiler should do the right thing." +in_reply_to: "" +parent_post_id: "2060730425929080874" +--- + +## Source + +- URL: https://x.com/FUZxxl/status/2060885487858880689 +- Author: Robert Clausecker (@FUZxxl) +- Posted: 2026-05-31 00:46:04 + +## Branch + +**1/** + +@NOTimothyLottes If you do the multiply in uint128_t and then right-shift by 64 places, the compiler should do the right thing. + +**2/** + +@FUZxxl “Should” is exactly why I prefer the actual instruction instrinsics or just inline asm (which is what I use on C CPU land) + +**3/** + +@NOTimothyLottes Have fun with a solution that the compiler optimises worse and that is not portable. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc/index.md b/archive/threads/NOTimothyLottes/2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc/index.md new file mode 100644 index 0000000..8524e99 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc/index.md @@ -0,0 +1,43 @@ +--- +title: "Renovating CPU clock code." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2060730425929080874" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2060730425929080874" +date: 2026-05-30 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Renovating CPU clock code." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2060730425929080874 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-05-30 14:29:54 + +## Thread + +**1/** + +Renovating CPU clock code. I'm assuming x86-64 TSC is always >= 1 GHz so that conversion of clock counter diff to nanoseconds is simply a MUL instruction fetching the RDX high 64-bit result (of the 128-bit computed). But figuring out how to do the inline asm was a pain. + +Media (not lifted): `2060730425929080874_HJku0L4WkAAZk5a_orig.png` + +Branches: [[2026-05-31-FUZxxl-if-you-do-the-multiply-in-uint128-t-and-then]] + +**2/** + +Looks like NtQuerySystemInformation() with SystemHypervisorSharedPageInformation (aka 0xc5) gives 64-bit scalar for TSC that converts time to units of 10 MHz. So the smart way is to work in units of TSC, then do a subtraction of TSC terms, then MULHI to get {ms, us, or ns} time + +**3/** + +https://gist.github.com/pmttavara/6f06fc5c7679c07375483b06bb77430c - A great reference for getting TSC scaling multipliers on Linux and Windows diff --git a/archive/threads/NOTimothyLottes/2026-05-31-hits-the-easy-to-debug-cpu-or-gpu-stuff-in-the/index.md b/archive/threads/NOTimothyLottes/2026-05-31-hits-the-easy-to-debug-cpu-or-gpu-stuff-in-the/index.md new file mode 100644 index 0000000..6081f76 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-31-hits-the-easy-to-debug-cpu-or-gpu-stuff-in-the/index.md @@ -0,0 +1,31 @@ +--- +title: "hits the easy to debug CPU or GPU stuff in the same framework (simply write and it just appears) - it's always a HEX dump, but can show decimal by pretending it's a 4-bit/character terminal with a hex font :)" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2061124942968545433" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2061124942968545433" +date: 2026-05-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "hits the easy to debug CPU or GPU stuff in the same framework (simply write and it just appears) - it's always a HEX dump, but can show decimal by pretending it's a 4-bit/character terminal with a hex font :)" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2061124942968545433 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-05-31 16:37:34 + +## Thread + +**1/** + +hits the easy to debug CPU or GPU stuff in the same framework (simply write and it just appears) - it's always a HEX dump, but can show decimal by pretending it's a 4-bit/character terminal with a hex font :) diff --git a/archive/threads/NOTimothyLottes/2026-05-31-no-debugger-debug-console-printf-style-prior/2026-05-31-retrotink2-here-i-am-still-debugging-by-looking-at-if-a.md b/archive/threads/NOTimothyLottes/2026-05-31-no-debugger-debug-console-printf-style-prior/2026-05-31-retrotink2-here-i-am-still-debugging-by-looking-at-if-a.md new file mode 100644 index 0000000..183af70 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-31-no-debugger-debug-console-printf-style-prior/2026-05-31-retrotink2-here-i-am-still-debugging-by-looking-at-if-a.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes Here I am still debugging by looking at if a single LED turns on." +type: archive +source: twitter +source_url: "https://x.com/retrotink2/status/2061206435942511008" +author: "Mike Chi" +handle: retrotink2 +post_id: "2061206435942511008" +date: 2026-05-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Here I am still debugging by looking at if a single LED turns on." +in_reply_to: "" +parent_post_id: "2061123768429211767" +--- + +## Source + +- URL: https://x.com/retrotink2/status/2061206435942511008 +- Author: Mike Chi (@retrotink2) +- Posted: 2026-05-31 22:01:24 + +## Branch + +**1/** + +@NOTimothyLottes Here I am still debugging by looking at if a single LED turns on. + +**2/** + +@retrotink2 That plus an oscilloscope … this is the way + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-05-31-no-debugger-debug-console-printf-style-prior/index.md b/archive/threads/NOTimothyLottes/2026-05-31-no-debugger-debug-console-printf-style-prior/index.md new file mode 100644 index 0000000..3eb1030 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-05-31-no-debugger-debug-console-printf-style-prior/index.md @@ -0,0 +1,41 @@ +--- +title: "no-debugger-debug / console / printf-style - prior evolved to one mmapped fixed-width-height log file with an atomic for multi-thread|process messages - but even that seems too complexy ..." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2061123768429211767" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2061123768429211767" +date: 2026-05-31 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "no-debugger-debug / console / printf-style - prior evolved to one mmapped fixed-width-height log file with an atomic for multi-thread|process messages - but even that seems too complexy ..." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2061123768429211767 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-05-31 16:32:54 + +## Thread + +**1/** + +no-debugger-debug / console / printf-style - prior evolved to one mmapped fixed-width-height log file with an atomic for multi-thread|process messages - but even that seems too complexy ... + +Branches: [[2026-05-31-retrotink2-here-i-am-still-debugging-by-looking-at-if-a]] + +**2/** + +moving to this >>> CART file is mmapped on CPU with mapped GPU access (no file IO) - background page walker to ensure OS won't page it out - beginning of CART file is a grid of 32-bit unsigned values - hex dumping that as my 'log file' - either to term or GPU render + +**3/** + +hits the easy to debug CPU or GPU stuff in the same framework (simply write and it just appears) - it's always a HEX dump, but can show decimal by pretending it's a 4-bit/character terminal with a hex font :) diff --git a/archive/threads/NOTimothyLottes/2026-06-01-that-plus-an-oscilloscope-this-is-the-way/index.md b/archive/threads/NOTimothyLottes/2026-06-01-that-plus-an-oscilloscope-this-is-the-way/index.md new file mode 100644 index 0000000..9f4b118 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-01-that-plus-an-oscilloscope-this-is-the-way/index.md @@ -0,0 +1,33 @@ +--- +title: "@retrotink2 That plus an oscilloscope … this is the way" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2061252886453944549" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2061252886453944549" +date: 2026-06-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@retrotink2 That plus an oscilloscope … this is the way" +in_reply_to: "2061206435942511008" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2061252886453944549 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-01 01:05:59 + +> @NOTimothyLottes Here I am still debugging by looking at if a single LED turns on. + +## Thread + +**1/** + +@retrotink2 That plus an oscilloscope … this is the way diff --git a/archive/threads/NOTimothyLottes/2026-06-01-windows-thread-priority/2026-06-02-iamwhosiam-i-dont-think-your-even-suppose-to-change-your.md b/archive/threads/NOTimothyLottes/2026-06-01-windows-thread-priority/2026-06-02-iamwhosiam-i-dont-think-your-even-suppose-to-change-your.md new file mode 100644 index 0000000..0b59916 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-01-windows-thread-priority/2026-06-02-iamwhosiam-i-dont-think-your-even-suppose-to-change-your.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes I don’t think your even suppose to change your thread’s priority in general anymore, it just messes with scheduling." +type: archive +source: twitter +source_url: "https://x.com/iamwhosiam/status/2061658841360589225" +author: "Ant Toe Knee" +handle: iamwhosiam +post_id: "2061658841360589225" +date: 2026-06-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes I don’t think your even suppose to change your thread’s priority in general anymore, it just messes with scheduling." +in_reply_to: "" +parent_post_id: "2061416116694442141" +--- + +## Source + +- URL: https://x.com/iamwhosiam/status/2061658841360589225 +- Author: Ant Toe Knee (@iamwhosiam) +- Posted: 2026-06-02 03:59:06 + +## Branch + +**1/** + +@NOTimothyLottes I don’t think your even suppose to change your thread’s priority in general anymore, it just messes with scheduling. + +**2/** + +@iamwhosiam Try using low latency pro audio tools and disabling the app’s authorization for high priority scheduling + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-01-windows-thread-priority/index.md b/archive/threads/NOTimothyLottes/2026-06-01-windows-thread-priority/index.md new file mode 100644 index 0000000..441479e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-01-windows-thread-priority/index.md @@ -0,0 +1,37 @@ +--- +title: "Windows thread priority." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2061416116694442141" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2061416116694442141" +date: 2026-06-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Windows thread priority." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2061416116694442141 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-01 11:54:36 + +## Thread + +**1/** + +Windows thread priority. SeIncreaseBasePriorityPrivilege required to play in the (fake)"Realtime" class -BUT- apparently there is AvSetMmThreadCharacteristics() for "Pro Audio" and AvSetMmThreadPriority() which can bring up priority into realtime. Curious if games using today? + +Branches: [[2026-06-02-iamwhosiam-i-dont-think-your-even-suppose-to-change-your]] + +**2/** + +Either way NtSetInformationThread() seems to be the way to just set {1-15} (non-realtime class) priority directly without the silly clamp(priorityClassBase+threadPriority,1,15) business diff --git a/archive/threads/NOTimothyLottes/2026-06-02-for-windows-trying-to-standardize-on-highest/index.md b/archive/threads/NOTimothyLottes/2026-06-02-for-windows-trying-to-standardize-on-highest/index.md new file mode 100644 index 0000000..2dfd666 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-02-for-windows-trying-to-standardize-on-highest/index.md @@ -0,0 +1,35 @@ +--- +title: "For Windows trying to standardize on HIGHEST_PRIORITY_CLASS, mixed with THREAD_PRIORITY_{IDLE,NORMAL,TIME_CRITICAL}." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2061937134756380682" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2061937134756380682" +date: 2026-06-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "For Windows trying to standardize on HIGHEST_PRIORITY_CLASS, mixed with THREAD_PRIORITY_{IDLE,NORMAL,TIME_CRITICAL}." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2061937134756380682 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-02 22:24:56 + +## Thread + +**1/** + +For Windows trying to standardize on HIGHEST_PRIORITY_CLASS, mixed with THREAD_PRIORITY_{IDLE,NORMAL,TIME_CRITICAL}. Which maps to {1, 13, 15} respectively. Then trying "Pro Audio" hack with AVRT to get whatever that gives in the 16-31 fake "realtime" bracket for highest. + +**2/** + +Linux mapping will be {SCHED_IDLE, SCHED_OTHER with 2 settings of nice} to match. Unfortunately SCHED_FIFO is locked out by default, but if the user blesses the right permissions will get better audio latency. Maybe pause/unpause will trigger auto latency re-adaption. diff --git a/archive/threads/NOTimothyLottes/2026-06-02-its-unfortunate-there-isnt-an-easy-way-to-map-the/index.md b/archive/threads/NOTimothyLottes/2026-06-02-its-unfortunate-there-isnt-an-easy-way-to-map-the/index.md new file mode 100644 index 0000000..56b3c4a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-02-its-unfortunate-there-isnt-an-easy-way-to-map-the/index.md @@ -0,0 +1,31 @@ +--- +title: "It's unfortunate there isn't an easy way to map the page file so that writes don't automagically post to storage, meaning map then turn off flush until a time desired by the programmer." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2061933917137932437" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2061933917137932437" +date: 2026-06-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "It's unfortunate there isn't an easy way to map the page file so that writes don't automagically post to storage, meaning map then turn off flush until a time desired by the programmer." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2061933917137932437 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-02 22:12:09 + +## Thread + +**1/** + +It's unfortunate there isn't an easy way to map the page file so that writes don't automagically post to storage, meaning map then turn off flush until a time desired by the programmer. diff --git a/archive/threads/NOTimothyLottes/2026-06-03-back-running-640x480-on-my-vga-crts-to-prep-for/index.md b/archive/threads/NOTimothyLottes/2026-06-03-back-running-640x480-on-my-vga-crts-to-prep-for/index.md new file mode 100644 index 0000000..6bec744 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-03-back-running-640x480-on-my-vga-crts-to-prep-for/index.md @@ -0,0 +1,33 @@ +--- +title: "Back running 640x480 on my VGA CRTs to prep for workflow that ports down to 480i60 for NTSC." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2062031187023982879" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2062031187023982879" +date: 2026-06-03 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Back running 640x480 on my VGA CRTs to prep for workflow that ports down to 480i60 for NTSC." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2062031187023982879 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-03 04:38:40 + +## Thread + +**1/** + +Back running 640x480 on my VGA CRTs to prep for workflow that ports down to 480i60 for NTSC. Using my 'right' font. Fully decoupling from all system calls for time is working out great. And yes I'm using all the stuff I talked about in my Advanced Aliasing talk too (joy to code). + +Media (not lifted): `2062031187023982879_HJ3Ny2wX0AAKFFv_orig.png` diff --git a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-NOTimothyLottes-going-to-give-artix-lxqt-runit-variation-a-try.md b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-NOTimothyLottes-going-to-give-artix-lxqt-runit-variation-a-try.md index 0fde2b2..f03175a 100644 --- a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-NOTimothyLottes-going-to-give-artix-lxqt-runit-variation-a-try.md +++ b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-NOTimothyLottes-going-to-give-artix-lxqt-runit-variation-a-try.md @@ -19,9 +19,6 @@ in_reply_to: "" parent_post_id: "2064858927829745887" --- -> [!info] Provenance -> Primary source record. Do not editorialize here. Interpretation goes in a `notes/` page. - ## Source - URL: https://x.com/NOTimothyLottes/status/2064877857252291055 diff --git a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-RouaniJihad-my-patience-is-this-thin-with-win11-right-now-but.md b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-RouaniJihad-my-patience-is-this-thin-with-win11-right-now-but.md index cddc0da..7b1042c 100644 --- a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-RouaniJihad-my-patience-is-this-thin-with-win11-right-now-but.md +++ b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-RouaniJihad-my-patience-is-this-thin-with-win11-right-now-but.md @@ -19,9 +19,6 @@ in_reply_to: "" parent_post_id: "2064858927829745887" --- -> [!info] Provenance -> Primary source record. Do not editorialize here. Interpretation goes in a `notes/` page. - ## Source - URL: https://x.com/RouaniJihad/status/2064865782870294858 diff --git a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-mcnabbd-fascinating-to-me-how-this-challenge-would-have.md b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-mcnabbd-fascinating-to-me-how-this-challenge-would-have.md index 6792aa2..23cc422 100644 --- a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-mcnabbd-fascinating-to-me-how-this-challenge-would-have.md +++ b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/2026-06-11-mcnabbd-fascinating-to-me-how-this-challenge-would-have.md @@ -19,9 +19,6 @@ in_reply_to: "" parent_post_id: "2064858927829745887" --- -> [!info] Provenance -> Primary source record. Do not editorialize here. Interpretation goes in a `notes/` page. - ## Source - URL: https://x.com/mcnabbd/status/2064875327617396915 diff --git a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/index.md b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/index.md index 0b4644c..fec42b8 100644 --- a/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/index.md +++ b/archive/threads/NOTimothyLottes/2026-06-10-steamos-init/index.md @@ -18,9 +18,6 @@ description: "So I'm on Linux now, but obviously I cheated, because this is a St in_reply_to: "" --- -> [!info] Provenance -> Primary source record. Do not editorialize here. Interpretation goes in a `notes/` page. - ## Source - URL: https://x.com/NOTimothyLottes/status/2064858927829745887 diff --git a/archive/threads/NOTimothyLottes/2026-06-13-cross-compilation-is-up-just-like-on-windows-with/2026-06-13-tomcr2100-interesting-font-does-it-have-a-name.md b/archive/threads/NOTimothyLottes/2026-06-13-cross-compilation-is-up-just-like-on-windows-with/2026-06-13-tomcr2100-interesting-font-does-it-have-a-name.md new file mode 100644 index 0000000..153f4b0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-cross-compilation-is-up-just-like-on-windows-with/2026-06-13-tomcr2100-interesting-font-does-it-have-a-name.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Interesting font, does it have a name?" +type: archive +source: twitter +source_url: "https://x.com/tomcr2100/status/2065909746536747274" +author: "Tom Keresztes" +handle: tomcr2100 +post_id: "2065909746536747274" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Interesting font, does it have a name?" +in_reply_to: "" +parent_post_id: "2065832746757341482" +--- + +## Source + +- URL: https://x.com/tomcr2100/status/2065909746536747274 +- Author: Tom Keresztes (@tomcr2100) +- Posted: 2026-06-13 21:30:40 + +## Branch + +**1/** + +@NOTimothyLottes Interesting font, does it have a name? + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-13-cross-compilation-is-up-just-like-on-windows-with/index.md b/archive/threads/NOTimothyLottes/2026-06-13-cross-compilation-is-up-just-like-on-windows-with/index.md new file mode 100644 index 0000000..4849cbd --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-cross-compilation-is-up-just-like-on-windows-with/index.md @@ -0,0 +1,39 @@ +--- +title: "Cross compilation is up." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2065832746757341482" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2065832746757341482" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Cross compilation is up." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2065832746757341482 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-13 16:24:42 + +## Thread + +**1/** + +Cross compilation is up. Just like on windows with GCC I have to disable all warnings because there is no way to turn off “function called through a non-compatible type”. They obviously should have had warning IDs and an ID based disable. + +Media (not lifted): `2065832746757341482_HKtP7aQXsAAtJ5X_orig.jpg` `2065832746757341482_HKtP7aTWEAAC_j4_orig.jpg` + +Branches: [[2026-06-13-tomcr2100-interesting-font-does-it-have-a-name]] + +**2/** + +Found my first of perhaps many Wine “fix me”s looks like they didn’t emulate NtQuerySystemInformation() for use to get the TSC time scalar. Also implies all PC devs do this wrong, else Valve would have had this implemented already. diff --git a/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-eternalclassic_-you-can-use-camac-free-to-take-raw-photos-on.md b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-eternalclassic_-you-can-use-camac-free-to-take-raw-photos-on.md new file mode 100644 index 0000000..413297a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-eternalclassic_-you-can-use-camac-free-to-take-raw-photos-on.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes you can use camac (free) to take raw photos on iphone without post-processing shit" +type: archive +source: twitter +source_url: "https://x.com/eternalclassic_/status/2065854318817816626" +author: "eternal classic" +handle: eternalclassic_ +post_id: "2065854318817816626" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes you can use camac (free) to take raw photos on iphone without post-processing shit" +in_reply_to: "" +parent_post_id: "2065804972378243476" +--- + +## Source + +- URL: https://x.com/eternalclassic_/status/2065854318817816626 +- Author: eternal classic (@eternalclassic_) +- Posted: 2026-06-13 17:50:25 + +## Branch + +**1/** + +@NOTimothyLottes you can use camac (free) to take raw photos on iphone without post-processing shit + +**2/** + +@eternalclassic_ Will have to try that thanks + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-quiveron_x-why-are-you-using-crt.md b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-quiveron_x-why-are-you-using-crt.md new file mode 100644 index 0000000..17ed868 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-quiveron_x-why-are-you-using-crt.md @@ -0,0 +1,45 @@ +--- +title: "@NOTimothyLottes Why are you using CRT" +type: archive +source: twitter +source_url: "https://x.com/quiveron_x/status/2065848389875458358" +author: "Quiveron" +handle: quiveron_x +post_id: "2065848389875458358" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Why are you using CRT" +in_reply_to: "" +parent_post_id: "2065804972378243476" +--- + +## Source + +- URL: https://x.com/quiveron_x/status/2065848389875458358 +- Author: Quiveron (@quiveron_x) +- Posted: 2026-06-13 17:26:52 + +## Branch + +**1/** + +@NOTimothyLottes Why are you using CRT + +**2/** + +@quiveron_x Still the best display technology IMO. Low persistence, analog, variable resolution, smooth continuous blended signal, deep blacks, great contrast, etc. + +**3/** + +I completely agree, I asked because I was wondering if you were planning on doing something specific. +I think we gave up on them too early, they felt good to use, pleasant to look at, only negative side is they were too heavy. People obsessing over resolution don't realize if image is shit it doesn't matter if it's 4k or 8k + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-winning_tactic-hz-sharing-i-wonder-if-crts-can-be-changed-like.md b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-winning_tactic-hz-sharing-i-wonder-if-crts-can-be-changed-like.md new file mode 100644 index 0000000..b5c4c2b --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-13-winning_tactic-hz-sharing-i-wonder-if-crts-can-be-changed-like.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Hz sharing? I wonder if CRTs can be changed like 60 -> 59 Hz, and if that would correct it? I do not know whether any is correct, but I'd betcha there's some kinda thing there about that." +type: archive +source: twitter +source_url: "https://x.com/winning_tactic/status/2065886660747796581" +author: "OZ" +handle: winning_tactic +post_id: "2065886660747796581" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Hz sharing? I wonder if CRTs can be changed like 60 -> 59 Hz, and if that would correct it? I do not know whether any is correct, but I'd betcha there's some kinda thing there about that." +in_reply_to: "" +parent_post_id: "2065804972378243476" +--- + +## Source + +- URL: https://x.com/winning_tactic/status/2065886660747796581 +- Author: OZ (@winning_tactic) +- Posted: 2026-06-13 19:58:56 + +## Branch + +**1/** + +@NOTimothyLottes Hz sharing? I wonder if CRTs can be changed like 60 -> 59 Hz, and if that would correct it? I do not know whether any is correct, but I'd betcha there's some kinda thing there about that. Why would the iphone has .. no it's not mechanical, so I have no clue but that is a puzzle + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-14-mayemayey-ohh-what-is-that-a-2070sb.md b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-14-mayemayey-ohh-what-is-that-a-2070sb.md new file mode 100644 index 0000000..8c98506 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/2026-06-14-mayemayey-ohh-what-is-that-a-2070sb.md @@ -0,0 +1,56 @@ +--- +title: "@NOTimothyLottes ohh what is that? a 2070SB?" +type: archive +source: twitter +source_url: "https://x.com/mayemayey/status/2066072383954288814" +author: "Name cannot be blank" +handle: mayemayey +post_id: "2066072383954288814" +date: 2026-06-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes ohh what is that? a 2070SB?" +in_reply_to: "" +parent_post_id: "2065804972378243476" +--- + +## Source + +- URL: https://x.com/mayemayey/status/2066072383954288814 +- Author: Name cannot be blank (@mayemayey) +- Posted: 2026-06-14 08:16:56 + +## Branch + +**1/** + +@NOTimothyLottes ohh what is that? a 2070SB? + +**2/** + +@mayemayey FP2141SB + +**3/** + +@NOTimothyLottes yep. that's a rebranded 2070sb haha. there's an hsync/vsync (~152khz, 254hz) overclocking tutorial if you ever feel daring enough to. 😉 + +**4/** + +@mayemayey Those crazy refresh rates are long past diminishing returns though due to the fixed phosphor decay. Great display, only big flaw is the vertical nonlinearity at the extreme top and bottom. + +**5/** + +@NOTimothyLottes do you have any blurriness in the corners? + +**6/** + +@mayemayey It might if I ran it at peak resolutions but I mostly stick to higher refresh rates instead, so wouldn’t notice. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/index.md b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/index.md new file mode 100644 index 0000000..f40228c --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-nanorc-done-and-back-to-actual-programming-with/index.md @@ -0,0 +1,47 @@ +--- +title: "Nanorc done and back to actual programming with the new font." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2065804972378243476" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2065804972378243476" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Nanorc done and back to actual programming with the new font." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2065804972378243476 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-13 14:34:20 + +## Thread + +**1/** + +Nanorc done and back to actual programming with the new font. The iPhone cannot seem to correctly capture a CRT anymore … and yes my _ is … and my ; is a 5 dot vertical line (prefer that for C/GLSL coding) + +Media (not lifted): `2065804972378243476_HKs2q8RXQAAVsjN_orig.jpg` + +Branches: [[2026-06-13-quiveron_x-why-are-you-using-crt]], [[2026-06-13-eternalclassic_-you-can-use-camac-free-to-take-raw-photos-on]], [[2026-06-13-winning_tactic-hz-sharing-i-wonder-if-crts-can-be-changed-like]], [[2026-06-14-mayemayey-ohh-what-is-that-a-2070sb]] + +**2/** + +Thankfully I can still dedecorate the term window to focus lines for useful content. Practically speaking I almost have a new language implemented in C via typedefs and macros … back to building and testing the native Linux system level interface + +Media (not lifted): `2065806847634776401_HKs4YE5WMAAfe6G_orig.jpg` + +**3/** + +Lubbers are invading my screen + +Media (not lifted): `2065809876488503805_HKs7IJHWMAAwzVL_orig.jpg` diff --git a/archive/threads/NOTimothyLottes/2026-06-13-the-glibc-implementation-would-do-that-i-bypass/index.md b/archive/threads/NOTimothyLottes/2026-06-13-the-glibc-implementation-would-do-that-i-bypass/index.md new file mode 100644 index 0000000..be601f9 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-13-the-glibc-implementation-would-do-that-i-bypass/index.md @@ -0,0 +1,33 @@ +--- +title: "@axelgneiting The glibc implementation would do that." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2065872197147578751" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2065872197147578751" +date: 2026-06-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@axelgneiting The glibc implementation would do that." +in_reply_to: "2065851939917906296" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2065872197147578751 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-13 19:01:28 + +## Thread + +**1/** + +@axelgneiting The glibc implementation would do that. I bypass libc and just do it manually with perf_event_open syscall and mmap. + +Media (not lifted): `2065872197147578751_HKtzz5RXcAA6CIX_orig.jpg` diff --git a/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-14-Social_Vulture-running-in-crt-or-are-you-emulating-scanlines-in.md b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-14-Social_Vulture-running-in-crt-or-are-you-emulating-scanlines-in.md new file mode 100644 index 0000000..6b02d44 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-14-Social_Vulture-running-in-crt-or-are-you-emulating-scanlines-in.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Running in CRT or are you emulating scanlines in your editor?" +type: archive +source: twitter +source_url: "https://x.com/Social_Vulture/status/2066190873235206299" +author: "Fleißiges Lieschen" +handle: Social_Vulture +post_id: "2066190873235206299" +date: 2026-06-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Running in CRT or are you emulating scanlines in your editor?" +in_reply_to: "" +parent_post_id: "2066184005632786736" +--- + +## Source + +- URL: https://x.com/Social_Vulture/status/2066190873235206299 +- Author: Fleißiges Lieschen (@Social_Vulture) +- Posted: 2026-06-14 16:07:46 + +## Branch + +**1/** + +@NOTimothyLottes Running in CRT or are you emulating scanlines in your editor? + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-15-GrowlerEnjooyer-there-is-0-chance-you-actually-use-this-font-its.md b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-15-GrowlerEnjooyer-there-is-0-chance-you-actually-use-this-font-its.md new file mode 100644 index 0000000..1965a42 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-15-GrowlerEnjooyer-there-is-0-chance-you-actually-use-this-font-its.md @@ -0,0 +1,48 @@ +--- +title: "@NOTimothyLottes There is 0 chance you actually use this font." +type: archive +source: twitter +source_url: "https://x.com/GrowlerEnjooyer/status/2066465370689732716" +author: "EA-18G Growler Enjoyer" +handle: GrowlerEnjooyer +post_id: "2066465370689732716" +date: 2026-06-15 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes There is 0 chance you actually use this font." +in_reply_to: "" +parent_post_id: "2066184005632786736" +--- + +## Source + +- URL: https://x.com/GrowlerEnjooyer/status/2066465370689732716 +- Author: EA-18G Growler Enjoyer (@GrowlerEnjooyer) +- Posted: 2026-06-15 10:18:32 + +## Branch + +**1/** + +@NOTimothyLottes There is 0 chance you actually use this font. It's for the meme, right? + +**2/** + +@GrowlerEnjooyer Oh I definitely use this font, was designed to be extremely easy to visually parse for code. + +**3/** + +@NOTimothyLottes Bravo, well played Mr troll + +**4/** + +@GrowlerEnjooyer Not trolling, actually do use the font for my terminals on that dev box + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-15-sadhuIGI-also-this-font-is-cursed.md b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-15-sadhuIGI-also-this-font-is-cursed.md new file mode 100644 index 0000000..ac47c68 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/2026-06-15-sadhuIGI-also-this-font-is-cursed.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Also this font is cursed" +type: archive +source: twitter +source_url: "https://x.com/sadhuIGI/status/2066453103344292290" +author: "sadhu" +handle: sadhuIGI +post_id: "2066453103344292290" +date: 2026-06-15 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Also this font is cursed" +in_reply_to: "" +parent_post_id: "2066184005632786736" +--- + +## Source + +- URL: https://x.com/sadhuIGI/status/2066453103344292290 +- Author: sadhu (@sadhuIGI) +- Posted: 2026-06-15 09:29:47 + +## Branch + +**1/** + +@NOTimothyLottes Also this font is cursed + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/index.md b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/index.md new file mode 100644 index 0000000..9ebe4d8 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory/index.md @@ -0,0 +1,35 @@ +--- +title: "On Linux I do speculative pinning of CPU memory via mlockall." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2066184005632786736" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2066184005632786736" +date: 2026-06-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "On Linux I do speculative pinning of CPU memory via mlockall." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2066184005632786736 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-14 15:40:29 + +## Thread + +**1/** + +On Linux I do speculative pinning of CPU memory via mlockall. Learned that later Linux actually allows some amount of pinned memory without admin. So this is succeeding on my new Artix box. + +Media (not lifted): `2066184005632786736_HKyPZnfWMAAv4qF_orig.jpg` + +Branches: [[2026-06-14-Social_Vulture-running-in-crt-or-are-you-emulating-scanlines-in]], [[2026-06-15-sadhuIGI-also-this-font-is-cursed]], [[2026-06-15-GrowlerEnjooyer-there-is-0-chance-you-actually-use-this-font-its]] diff --git a/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/2026-06-26-AgileJebrim-sendmmsg-recvmmsg-can-only-work-with-1024-packets.md b/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/2026-06-26-AgileJebrim-sendmmsg-recvmmsg-can-only-work-with-1024-packets.md new file mode 100644 index 0000000..dd5dedd --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/2026-06-26-AgileJebrim-sendmmsg-recvmmsg-can-only-work-with-1024-packets.md @@ -0,0 +1,56 @@ +--- +title: "sendmmsg/recvmmsg can only work with 1024 packets at a time unfortunately." +type: archive +source: twitter +source_url: "https://x.com/AgileJebrim/status/2070338320765165758" +author: "Jebrim" +handle: AgileJebrim +post_id: "2070338320765165758" +date: 2026-06-26 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "sendmmsg/recvmmsg can only work with 1024 packets at a time unfortunately." +in_reply_to: "" +parent_post_id: "2070337342854832468" +--- + +## Source + +- URL: https://x.com/AgileJebrim/status/2070338320765165758 +- Author: Jebrim (@AgileJebrim) +- Posted: 2026-06-26 02:48:15 + +## Branch + +**1/** + +sendmmsg/recvmmsg can only work with 1024 packets at a time unfortunately. You’ve gotta loop them. While they’re surprisingly fairly deterministic in execution times, their throughput isn’t the best. The Linux kernel takes far longer to process sending the packets out than my own code does to process the sim and build the packets in the first place lol. + +**2/** + +@AgileJebrim Yes 1024 max, so best case 1/1024 the syscall count (well factored). As for overhead, for a co-located server you could always hijack the network card driver and just move your server into it and run kernel side if you really wanted to. + +**3/** + +@NOTimothyLottes If you want to be locked in to a particular NIC yeah. + +**4/** + +@AgileJebrim @NOTimothyLottes You can use eBPF as a poor man's kernel bypass. + +**5/** + +@aepau2 @AgileJebrim Not that any of my source would pass their nanny tester. When I was younger and running my own business, I used to host my business website off of a really old laptop running an in-kernel web server that I wrote. It wasn’t that hard to do long ago. + +**6/** + +@NOTimothyLottes @aepau2 eBPF doesn’t support SIMD lol + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/2026-06-26-BigP4P4Smurf-take-a-look-at-http-lalists-stanford-edu-lad-2001.md b/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/2026-06-26-BigP4P4Smurf-take-a-look-at-http-lalists-stanford-edu-lad-2001.md new file mode 100644 index 0000000..cbe4f62 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/2026-06-26-BigP4P4Smurf-take-a-look-at-http-lalists-stanford-edu-lad-2001.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Take a look at http://lalists.stanford.edu/lad/2001/Nov/0248.html" +type: archive +source: twitter +source_url: "https://x.com/BigP4P4Smurf/status/2070411240514420892" +author: "Lee Revell" +handle: BigP4P4Smurf +post_id: "2070411240514420892" +date: 2026-06-26 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Take a look at http://lalists.stanford.edu/lad/2001/Nov/0248.html" +in_reply_to: "" +parent_post_id: "2070337342854832468" +--- + +## Source + +- URL: https://x.com/BigP4P4Smurf/status/2070411240514420892 +- Author: Lee Revell (@BigP4P4Smurf) +- Posted: 2026-06-26 07:38:00 + +## Branch + +**1/** + +@NOTimothyLottes Take a look at http://lalists.stanford.edu/lad/2001/Nov/0248.html + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/index.md b/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/index.md new file mode 100644 index 0000000..e296268 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll/index.md @@ -0,0 +1,35 @@ +--- +title: "Quick summary of why not {pselect, ppoll, epoll_pwait2} style non-TCP IO [it can amplify kernel transitions]." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2070337342854832468" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2070337342854832468" +date: 2026-06-26 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Quick summary of why not {pselect, ppoll, epoll_pwait2} style non-TCP IO [it can amplify kernel transitions]." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2070337342854832468 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-26 02:44:22 + +## Thread + +**1/** + +Quick summary of why not {pselect, ppoll, epoll_pwait2} style non-TCP IO [it can amplify kernel transitions]. For UDP stuff blocking {sendmmsg,recvmmsg (with timeout)} amortizes out kernel transitions. + +Media (not lifted): `2070337342854832468_HLtP4RgWgAADbir_orig.png` + +Branches: [[2026-06-26-AgileJebrim-sendmmsg-recvmmsg-can-only-work-with-1024-packets]], [[2026-06-26-BigP4P4Smurf-take-a-look-at-http-lalists-stanford-edu-lad-2001]] diff --git a/archive/threads/NOTimothyLottes/2026-06-27-deterrent-to-alsa-is-just-parsing-through-snd-pcm/index.md b/archive/threads/NOTimothyLottes/2026-06-27-deterrent-to-alsa-is-just-parsing-through-snd-pcm/index.md new file mode 100644 index 0000000..a4c87a5 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-27-deterrent-to-alsa-is-just-parsing-through-snd-pcm/index.md @@ -0,0 +1,39 @@ +--- +title: "Deterrent to ALSA is just parsing through snd_pcm_open() source." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2070734717825986566" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2070734717825986566" +date: 2026-06-27 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Deterrent to ALSA is just parsing through snd_pcm_open() source." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2070734717825986566 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-27 05:03:23 + +## Thread + +**1/** + +Deterrent to ALSA is just parsing through snd_pcm_open() source. It's death by boiler plate and complexity. Tinyalsa isn't much better. Likely easier to think about this from perspective of devices that can be open()ed from /dev/snd. On my machine doesn't seem to hot plug + +Media (not lifted): `2070734717825986566_HLy5-C9XMAAfs_w_orig.png` + +**2/** + +Assuming 'p'&'c' are PLAYBACK & CAPTURE, so opening different devices (instead of both in one device). Then just have user provide a device, or have the API war-dial open() constructing possible devices to probe what is available 'pcmC{c}D{d}{p|c}'. Easier than listing files. + +Media (not lifted): `2070735722043023873_HLy6SApX0AApPub_orig.png` diff --git a/archive/threads/NOTimothyLottes/2026-06-29-alsa-hell-month-continues-remember-it-might-be/2026-06-29-AlexABPerson-have-you-actually-reached-out-to-said-developers.md b/archive/threads/NOTimothyLottes/2026-06-29-alsa-hell-month-continues-remember-it-might-be/2026-06-29-AlexABPerson-have-you-actually-reached-out-to-said-developers.md new file mode 100644 index 0000000..cc7a563 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-29-alsa-hell-month-continues-remember-it-might-be/2026-06-29-AlexABPerson-have-you-actually-reached-out-to-said-developers.md @@ -0,0 +1,48 @@ +--- +title: "@NOTimothyLottes Have you actually reached out to said developers and offered to start a documentation effort/ask them some questions about things? It seems a little unfair to be rage posting about this all the time when the point is you (and me, and everyone) have the power to make it better." +type: archive +source: twitter +source_url: "https://x.com/AlexABPerson/status/2071714528635527401" +author: "Alex Burrows" +handle: AlexABPerson +post_id: "2071714528635527401" +date: 2026-06-29 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Have you actually reached out to said developers and offered to start a documentation effort/ask them some questions about things? It seems a little unfair to be rage posting about this all the time when the point is you (and me, and everyone) have the power to make it better." +in_reply_to: "" +parent_post_id: "2071706805114216559" +--- + +## Source + +- URL: https://x.com/AlexABPerson/status/2071714528635527401 +- Author: Alex Burrows (@AlexABPerson) +- Posted: 2026-06-29 21:56:48 + +## Branch + +**1/** + +@NOTimothyLottes Have you actually reached out to said developers and offered to start a documentation effort/ask them some questions about things? It seems a little unfair to be rage posting about this all the time when the point is you (and me, and everyone) have the power to make it better. + +**2/** + +@AlexABPerson Haha I could start that with an email: hello godly ALSA dev, as a vintage pee-on programmer from the stone age, I was trying to ignore your advice about using the user-space API and thus needing GPL, and instead using the undocumented IOCTLs of the kernel driver directly ... + +**3/** + +@AlexABPerson But on a serious note, I mostly shit post for the entertainment, because once in a while I actually learn something from a response. And often documenting the process might help someone else too ... + +**4/** + +@NOTimothyLottes That's fair, thank you for the honest reply! It *is* interesting to see a lot of these sorts of inner workings, and I definitely sympathise with the "I can't believe it works like this" feeling 😂 Stuff does have a tendency to get like that huh + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-06-29-alsa-hell-month-continues-remember-it-might-be/index.md b/archive/threads/NOTimothyLottes/2026-06-29-alsa-hell-month-continues-remember-it-might-be/index.md new file mode 100644 index 0000000..bfcb0b0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-06-29-alsa-hell-month-continues-remember-it-might-be/index.md @@ -0,0 +1,94 @@ +--- +title: "ALSA hell month continues: remember it might be \"open source\" but it is definitely \"closed documentation\" [those docs are securely trapped in the minds of the authors]." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2071706805114216559" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2071706805114216559" +date: 2026-06-29 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "ALSA hell month continues: remember it might be \"open source\" but it is definitely \"closed documentation\" [those docs are securely trapped in the minds of the authors]." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2071706805114216559 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-06-29 21:26:07 + +## Thread + +**1/** + +ALSA hell month continues: remember it might be "open source" but it is definitely "closed documentation" [those docs are securely trapped in the minds of the authors]. Now that I have aplay playing a sound, it's time for garbage sifting through STRACE to see what is going on ... + +Media (not lifted): `2071706805114216559_HMAt1GiXAAAoahX_orig.png` + +Branches: [[2026-06-29-AlexABPerson-have-you-actually-reached-out-to-said-developers]] + +**2/** + +For devs working on linux, strace is a good friend, besides reverse engineering undocumented crap, it's useful to run on your own app as a bug test, like look what this idiot [me] did with nanosleep() + +Media (not lifted): `2071710958397898929_HMAx0PmW0AAdUAy_orig.png` + +**3/** + +In my ALSA interface I war-dial the possible /dev/snd/pcm devices instead of just listing the directory. It's a lot easier in source code. + +Media (not lifted): `2071714384225681440_HMA1CA9XIAAwRAB_orig.png` + +**4/** + +Using 'strace' showed another bug in my setting schedule priority code (I didn't yet validate that code and check for errors). Definitely my ALSA test app shows ZERO errors in ALSA system calls, but doesn't actually play anything. Broken without errors = crappy API. + +Media (not lifted): `2071715941688258752_HMA2LibWMAAMW3O_orig.png` + +**5/** + +In theory a good API, SNDRV_PCM_IOCTL_PREPARE would fail if the next SNDRV_PCM_IOCTL_WRITEI_FRAMES wouldn't accept the write. And that WRITEI should also fail instead of pass and setting .result=0 (of the snd xferi structure). + +**6/** + +The best I can guess thus far is that the aplay app goes through some HW_REFINE ioctls before setting the HW_PARAMS, and perhaps the "magic missing thing" is in that process. + +Media (not lifted): `2071717187623030935_HMA3sGVXwAAVDMT_orig.png` + +**7/** + +Best docs on REFINE that I've found yet is indirectly through this. Note tinyalsa doesn't seem to use this interface other than through pcm_params_get(), not the interative process seen in aplay strace. Maybe because tinyalsa is for android (different drivers) + +Media (not lifted): `2071725181576319370_HMA-CDAXEAAw9ns_orig.jpg` + +**8/** + +SNDRV_PCM_IOCTL_HW_REFINE +If send out a zeroed snd_pcm_hw_params, the ioctl will fail. There is a special magic sauce to the structure that must be initialized correctly before you can even fetch hardware parameters. It's high level skill in Obfuscation. See *_any( in ALSA src + +Media (not lifted): `2071759816725311959_HMBePMXXwAE5_1M_orig.png` + +**9/** + +magiz/ +clear snd_pcm_hw_params +set masks[0 ... 2].bits[0]=~0 +set intervals[0 ... 11].max=~0 +set rmask=~0 +set info=~0 + +**10/** + +The rmask and cmask use bit indexed by the DEFINE so +1< .flag=4). Apparently setting the core values is enough for the driver. + +Media (not lifted): `2072194202851549432_HMHoiZAWcAAjn6j_orig.png` + +**2/** + +Don't actually have to set {.flags,.rmask,.info} on my machine. Absolutely do have to set ".max=~0" for the intervals not being hardcoded. I only do double buffered, 48000Hz stereo, and just vary the frames/period sizing. diff --git a/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/2026-07-01-opdroid1234-the-two-truths-ive-come-to-accept-in-life-a.md b/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/2026-07-01-opdroid1234-the-two-truths-ive-come-to-accept-in-life-a.md new file mode 100644 index 0000000..17f6228 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/2026-07-01-opdroid1234-the-two-truths-ive-come-to-accept-in-life-a.md @@ -0,0 +1,39 @@ +--- +title: "@NOTimothyLottes the two truths ive come to accept in life" +type: archive +source: twitter +source_url: "https://x.com/opdroid1234/status/2072447876987314447" +author: "opdroid1234" +handle: opdroid1234 +post_id: "2072447876987314447" +date: 2026-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes the two truths ive come to accept in life" +in_reply_to: "" +parent_post_id: "2072445315370590266" +--- + +## Source + +- URL: https://x.com/opdroid1234/status/2072447876987314447 +- Author: opdroid1234 (@opdroid1234) +- Posted: 2026-07-01 22:30:52 + +## Branch + +**1/** + +@NOTimothyLottes the two truths ive come to accept in life + +a. theres to trick that unravels chess's complexity +b. theres no trick that unavaels the existing software stacks complexity into something elegant + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/2026-07-02-winning_tactic-you-could-pretend-to-be-an-audio-jack.md b/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/2026-07-02-winning_tactic-you-could-pretend-to-be-an-audio-jack.md new file mode 100644 index 0000000..1bb4c8d --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/2026-07-02-winning_tactic-you-could-pretend-to-be-an-audio-jack.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes You could pretend to be an audio jack implementation? If impersonating wine doesn't work." +type: archive +source: twitter +source_url: "https://x.com/winning_tactic/status/2072558923215712441" +author: "OZ" +handle: winning_tactic +post_id: "2072558923215712441" +date: 2026-07-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes You could pretend to be an audio jack implementation? If impersonating wine doesn't work." +in_reply_to: "" +parent_post_id: "2072445315370590266" +--- + +## Source + +- URL: https://x.com/winning_tactic/status/2072558923215712441 +- Author: OZ (@winning_tactic) +- Posted: 2026-07-02 05:52:08 + +## Branch + +**1/** + +@NOTimothyLottes You could pretend to be an audio jack implementation? If impersonating wine doesn't work. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/index.md b/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/index.md new file mode 100644 index 0000000..6aaca74 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine/index.md @@ -0,0 +1,39 @@ +--- +title: "Haha damn, I thought I had a great idea, for Wine workarounds, I could just detect Wine (easy), and then make the associated Linux system call from inside Wine using inline asm! [no surprise, it doesn't work]" +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2072445315370590266" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2072445315370590266" +date: 2026-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Haha damn, I thought I had a great idea, for Wine workarounds, I could just detect Wine (easy), and then make the associated Linux system call from inside Wine using inline asm! [no surprise, it doesn't work]" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2072445315370590266 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-01 22:20:42 + +## Thread + +**1/** + +Haha damn, I thought I had a great idea, for Wine workarounds, I could just detect Wine (easy), and then make the associated Linux system call from inside Wine using inline asm! [no surprise, it doesn't work] + +Media (not lifted): `2072445315370590266_HMLNdMOXkAAIoEj_orig.png` + +Branches: [[2026-07-01-opdroid1234-the-two-truths-ive-come-to-accept-in-life-a]], [[2026-07-02-winning_tactic-you-could-pretend-to-be-an-audio-jack]] + +**2/** + +https://gpfault.net/posts/drunk-exe.html - So it apparently is possible, likely I'm screwing up my register saves for the ABI differences ... diff --git a/archive/threads/NOTimothyLottes/2026-07-01-linux-by-default-doesnt-allow-any-increase-in/index.md b/archive/threads/NOTimothyLottes/2026-07-01-linux-by-default-doesnt-allow-any-increase-in/index.md new file mode 100644 index 0000000..b12c9ad --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-01-linux-by-default-doesnt-allow-any-increase-in/index.md @@ -0,0 +1,56 @@ +--- +title: "Linux by default doesn't allow any increase in scheduling priority." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2072135292115427728" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2072135292115427728" +date: 2026-07-01 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Linux by default doesn't allow any increase in scheduling priority." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2072135292115427728 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-01 01:48:46 + +## Thread + +**1/** + +Linux by default doesn't allow any increase in scheduling priority. Users need to manually setup special user|group with elevated rights. Also system calls that try elevated scheduling don't clamp, instead they fail -EPREM if out of bounds. So all around a pain in the ass. + +Media (not lifted): `2072135292115427728_HMGz-64W4AABeaH_orig.png` + +**2/** + +I'm a little lazy right now and don't feel like trying SteamOS big picture mode to see what the default ulimits are. Curious what they allow. + +**3/** + +Linux priority workarounds +(a.) Use getrlimit() to get {soft,hard} limits +(b.) Use setrlimit() to set 'soft=hard' limit +(c.) Then set priority or nice based on new soft limit + +Media (not lifted): `2072147378480566273_HMG-UCRXIAEKbdj_orig.png` `2072147378480566273_HMG-zRxWwAAWtI4_orig.png` + +**4/** + +I don't do one-time global priority maximums, just in case someone sudo's higher priority hard limit dynamically it should pickup the new limit. + +**5/** + +Also while on setrlimit, I also bump up the RLIMIT_MEMLOCK to it's maximum just in case before the mlockall(). + +Media (not lifted): `2072149707107787035_HMHBGTPXwAA_axg_orig.png` diff --git a/archive/threads/NOTimothyLottes/2026-07-02-settings-im-using-for-snd-pcm-sw-params-for-alsa/index.md b/archive/threads/NOTimothyLottes/2026-07-02-settings-im-using-for-snd-pcm-sw-params-for-alsa/index.md new file mode 100644 index 0000000..ef61cfb --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-02-settings-im-using-for-snd-pcm-sw-params-for-alsa/index.md @@ -0,0 +1,47 @@ +--- +title: "Settings I'm using for snd_pcm_sw_params for ALSA, don't have docs for all of this, seems to work." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2072506103401754653" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2072506103401754653" +date: 2026-07-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Settings I'm using for snd_pcm_sw_params for ALSA, don't have docs for all of this, seems to work." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2072506103401754653 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-02 02:22:15 + +## Thread + +**1/** + +Settings I'm using for snd_pcm_sw_params for ALSA, don't have docs for all of this, seems to work. I'm doing 64 frame period size on a double buffer right now without any thread priority, and not getting xruns, so not yet sure of bad behavior + +Media (not lifted): `2072506103401754653_HMMFAHiX0AAzY_R_orig.png` + +**2/** + +I put in a forced thread sleep between writes to force a xrun, and SNDRV_PCM_IOCTL_WRITEI_FRAMES kernel call then returns -32, in which case I run a SNDRV_PCM_IOCTL_PREPARE and then just get back to the write loop, seems to restore normal playback just fine. + +**3/** + +I reduced asound.h to this basically, the most minimal thing I found I needed. Now I also rename a few things (like structure names), and my IOCTL macros are slightly different in composition than standard. + +Media (not lifted): `2072511121269928165_HMMJjYPWAAAY1IE_orig.png` + +**4/** + +After getting this far, it actually looks quite easy, but the route to this was filled with garbage sifting because I couldn't easily find someone else who did this kind of minimalization. I'm only supporting 48KHz stereo 16-bit signed, with double buffering = keep it simple. diff --git a/archive/threads/NOTimothyLottes/2026-07-02-yuck-starting-on-wdm-ks-audio-interface-for-win32/index.md b/archive/threads/NOTimothyLottes/2026-07-02-yuck-starting-on-wdm-ks-audio-interface-for-win32/index.md new file mode 100644 index 0000000..c6fa940 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-02-yuck-starting-on-wdm-ks-audio-interface-for-win32/index.md @@ -0,0 +1,49 @@ +--- +title: "Yuck, starting on WDM/KS audio interface for WIN32, much more painful than ALSA." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2072804183992922296" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2072804183992922296" +date: 2026-07-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Yuck, starting on WDM/KS audio interface for WIN32, much more painful than ALSA." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2072804183992922296 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-02 22:06:42 + +## Thread + +**1/** + +Yuck, starting on WDM/KS audio interface for WIN32, much more painful than ALSA. But I've been here before. Starting with the include bloat ... the real question is if I'm going to need to file more Wine bugs. + +Media (not lifted): `2072804183992922296_HMQT-ALWoAAABEe_orig.png` `2072804183992922296_HMQUVgpXYAA3h6r_orig.png` + +**2/** + +Wine has a lot of problems with SetConsoleMode() I had to include an extra ENABLE_WRAP_AT_EOL_OUTPUT, and then force a newline right after ASCI ESC[H else it would screw up (and it still does at the end with the ??). But at least the debug is usable now. + +Media (not lifted): `2072825642354123190_HMQnWmJXcAAOiSS_orig.png` + +**3/** + +But of course instant bad news, I cannot open the WinMM DRV_QUERYDEVICEINTERFACE, it returned ~0 (INVALID_HANDLE_VALUE). So I'm dead in the water in Wine again. Honestly getting sick of filing bugs in Wine, all the important stuff I do is broken. So what, no games use WDM/KS? + +Media (not lifted): `2072826861449629746_HMQoTiQWkAAbwj1_orig.png` + +**4/** + +https://forum.winehq.org/viewtopic.php?t=10225 - Looks like I'm 16 years late to the answer, if they didn't get in WDM/KS in 16 years, certainly it won't happen. Still surprised that all PC games are using the higher level garbage-ware sound APIs on Windows. diff --git a/archive/threads/NOTimothyLottes/2026-07-03-following-the-succession-thanks-of-re-trying/index.md b/archive/threads/NOTimothyLottes/2026-07-03-following-the-succession-thanks-of-re-trying/index.md new file mode 100644 index 0000000..62f1ca1 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-03-following-the-succession-thanks-of-re-trying/index.md @@ -0,0 +1,63 @@ +--- +title: "Following the succession (thanks) of re-trying WASAPI using this example which has been pre-minimized and de-C++'ed: https://gist.github.com/mmozeiko/5a5b168e61aff4c1eaec0381da62808f#file-win32_wasapi-h - But I'm missing something on how to get the C++ as C linking to function (cross compiling), doesn't easily work out of the box." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2073096069529907441" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2073096069529907441" +date: 2026-07-03 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Following the succession (thanks) of re-trying WASAPI using this example which has been pre-minimized and de-C++'ed: https://gist.github.com/mmozeiko/5a5b168e61aff4c1eaec0381da62808f#file-win32_wasapi-h - But I'm missing something on how to get the C++ as C linking to function (cross compiling), doesn't easily work out of the box." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2073096069529907441 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-03 17:26:33 + +## Thread + +**1/** + +Following the succession (thanks) of re-trying WASAPI using this example which has been pre-minimized and de-C++'ed: https://gist.github.com/mmozeiko/5a5b168e61aff4c1eaec0381da62808f#file-win32_wasapi-h - But I'm missing something on how to get the C++ as C linking to function (cross compiling), doesn't easily work out of the box. + +Media (not lifted): `2073096069529907441_HMUdajFXEAAiaQE_orig.png` + +**2/** + +Of course I'm missing the magic header that does the real work ... curious how messy this will get + +Media (not lifted): `2073098899896598550_HMUgZcyWQAA263a_orig.jpg` + +**3/** + +So instead of the massive "mmdeviceapi.h" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro. This way I just have to write down the index in the VT table for the specific virtual function ... + +Media (not lifted): `2073110092447203466_HMUqNm_XIAA0JEP_orig.png` + +**4/** + +Here is initial bring up, function call by function call. No headers, and no C++. The magic of typecasting at usage IC4_(CPP_(... is that I don't ever have to build the headers. That is at least working out well. I do line by line to test in Wine, defer fail handling until later + +Media (not lifted): `2073111326981783629_HMUrDz2XsAA9JLP_orig.png` + +**5/** + +More on bring-up. I just run and check visually for output in the console (this time 'B055'). Since compile times are under a second, it is super fast to check as I go. Easy to see how much code bloat there is for C++ this way (doing it manually). + +Media (not lifted): `2073113441959616958_HMUs9oLWUAAaHx9_orig.png` + +**6/** + +Example below of how much header bloat I'm factoring out using my simple macros + +Media (not lifted): `2073114409270997497_HMUujnwWoAAUQd1_orig.png` diff --git a/archive/threads/NOTimothyLottes/2026-07-03-so-instead-of-the-massive-mmdeviceapi-h-mess-ware/index.md b/archive/threads/NOTimothyLottes/2026-07-03-so-instead-of-the-massive-mmdeviceapi-h-mess-ware/index.md new file mode 100644 index 0000000..a7615e2 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-03-so-instead-of-the-massive-mmdeviceapi-h-mess-ware/index.md @@ -0,0 +1,51 @@ +--- +title: "So instead of the massive \"mmdeviceapi.h\" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2073110092447203466" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2073110092447203466" +date: 2026-07-03 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "So instead of the massive \"mmdeviceapi.h\" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2073110092447203466 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-03 18:22:17 + +## Thread + +**1/** + +So instead of the massive "mmdeviceapi.h" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro. This way I just have to write down the index in the VT table for the specific virtual function ... + +Media (not lifted): `2073110092447203466_HMUqNm_XIAA0JEP_orig.png` + +**2/** + +Here is initial bring up, function call by function call. No headers, and no C++. The magic of typecasting at usage IC4_(CPP_(... is that I don't ever have to build the headers. That is at least working out well. I do line by line to test in Wine, defer fail handling until later + +Media (not lifted): `2073111326981783629_HMUrDz2XsAA9JLP_orig.png` + +**3/** + +More on bring-up. I just run and check visually for output in the console (this time 'B055'). Since compile times are under a second, it is super fast to check as I go. Easy to see how much code bloat there is for C++ this way (doing it manually). + +Media (not lifted): `2073113441959616958_HMUs9oLWUAAaHx9_orig.png` + +**4/** + +Example below of how much header bloat I'm factoring out using my simple macros + +Media (not lifted): `2073114409270997497_HMUujnwWoAAUQd1_orig.png` diff --git a/archive/threads/NOTimothyLottes/2026-07-04-wines-iaudioclient-getdeviceperiod-returns-53333/index.md b/archive/threads/NOTimothyLottes/2026-07-04-wines-iaudioclient-getdeviceperiod-returns-53333/index.md new file mode 100644 index 0000000..d68c1d0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-04-wines-iaudioclient-getdeviceperiod-returns-53333/index.md @@ -0,0 +1,31 @@ +--- +title: "Wine's IAudioClient::GetDevicePeriod() returns 53333 for minimum (which is 256 samples at 48KHz - really crappy) and 100000 for default (which is 480 samples at 48Khz - even worse), neither which work with EXCLUSIVE mode." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2073543950497898839" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2073543950497898839" +date: 2026-07-04 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Wine's IAudioClient::GetDevicePeriod() returns 53333 for minimum (which is 256 samples at 48KHz - really crappy) and 100000 for default (which is 480 samples at 48Khz - even worse), neither which work with EXCLUSIVE mode." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2073543950497898839 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-04 23:06:17 + +## Thread + +**1/** + +Wine's IAudioClient::GetDevicePeriod() returns 53333 for minimum (which is 256 samples at 48KHz - really crappy) and 100000 for default (which is 480 samples at 48Khz - even worse), neither which work with EXCLUSIVE mode. Man Wine sucks, nothing but constant show stopping bugs. diff --git a/archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting/2026-07-08-nullspector-thats-very-neat-but-is-it-really-true-in-practice.md b/archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting/2026-07-08-nullspector-thats-very-neat-but-is-it-really-true-in-practice.md new file mode 100644 index 0000000..f55841e --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting/2026-07-08-nullspector-thats-very-neat-but-is-it-really-true-in-practice.md @@ -0,0 +1,40 @@ +--- +title: "@NOTimothyLottes That's very neat, but is it really true in practice that the max distance between symbols can't exceed 4GB? I think it would be a sane guarantee that it can't, but I assumed the worst and got scared off from the idea..." +type: archive +source: twitter +source_url: "https://x.com/nullspector/status/2074888721959149995" +author: "Michael Spector" +handle: nullspector +post_id: "2074888721959149995" +date: 2026-07-08 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes That's very neat, but is it really true in practice that the max distance between symbols can't exceed 4GB? I think it would be a sane guarantee that it can't, but I assumed the worst and got scared off from the idea..." +in_reply_to: "" +parent_post_id: "2074108624553554387" +--- + +## Source + +- URL: https://x.com/nullspector/status/2074888721959149995 +- Author: Michael Spector (@nullspector) +- Posted: 2026-07-08 16:09:55 + +## Branch + +**1/** + +@NOTimothyLottes That's very neat, but is it really true in practice that the max distance between symbols can't exceed 4GB? I think it would be a sane guarantee that it can't, but I assumed the worst and got scared off from the idea... + +**2/** + +@nullspector It’s working thus far, if I find a case it doesn’t work I’ll change it. I keep a different base per library, so likely safe enough. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting/index.md b/archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting/index.md new file mode 100644 index 0000000..7b148c8 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting/index.md @@ -0,0 +1,35 @@ +--- +title: "Vulkan starts with the ping pong between getting an instance proc addr so one can get vkCreateInstance, then using that to create an instance so one can get the remaining functions." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2074108624553554387" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2074108624553554387" +date: 2026-07-06 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Vulkan starts with the ping pong between getting an instance proc addr so one can get vkCreateInstance, then using that to create an instance so one can get the remaining functions." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2074108624553554387 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-06 12:30:05 + +## Thread + +**1/** + +Vulkan starts with the ping pong between getting an instance proc addr so one can get vkCreateInstance, then using that to create an instance so one can get the remaining functions. I reuse my Lib() code modified for VK, that keeps a 64-bit base and 32-bit offsets for symbols. + +Media (not lifted): `2074108624553554387_HMi2ZkFXEAAy767_orig.png` + +Branches: [[2026-07-08-nullspector-thats-very-neat-but-is-it-really-true-in-practice]] diff --git a/archive/threads/NOTimothyLottes/2026-07-08-next-pre-device-opening-activity-is-choosing/index.md b/archive/threads/NOTimothyLottes/2026-07-08-next-pre-device-opening-activity-is-choosing/index.md new file mode 100644 index 0000000..f366b36 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-08-next-pre-device-opening-activity-is-choosing/index.md @@ -0,0 +1,31 @@ +--- +title: "Next pre-device opening activity is choosing queue(s)." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2074725506050642021" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2074725506050642021" +date: 2026-07-08 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Next pre-device opening activity is choosing queue(s)." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2074725506050642021 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-08 05:21:21 + +## Thread + +**1/** + +Next pre-device opening activity is choosing queue(s). Going to make another effort at beam racing, this time on Linux, so probably want a separate queue for presentation only. To fully decouple {dispatch, and swap}. Will see why later ... diff --git a/archive/threads/NOTimothyLottes/2026-07-10-oh-i-probably-have-a-lot-to-learn-here-building/index.md b/archive/threads/NOTimothyLottes/2026-07-10-oh-i-probably-have-a-lot-to-learn-here-building/index.md new file mode 100644 index 0000000..72177fb --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-10-oh-i-probably-have-a-lot-to-learn-here-building/index.md @@ -0,0 +1,33 @@ +--- +title: "@darrellprograms Oh I probably have a lot to learn here, building from scratch = understanding deeply." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2075403544111263795" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2075403544111263795" +date: 2026-07-10 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@darrellprograms Oh I probably have a lot to learn here, building from scratch = understanding deeply." +in_reply_to: "2075398576101093766" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2075403544111263795 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-10 02:15:38 + +> @NOTimothyLottes I respect that, as long as you know what wheels you're reinventing. Note that you can keep Wayland or X11 running (or both, for that matter) for your dev environment, and just do control-alt-fN switching to test Wayland/X11-independent KMSDRM stuff. + +## Thread + +**1/** + +@darrellprograms Oh I probably have a lot to learn here, building from scratch = understanding deeply. For example I wonder if VT switching fully pages out to clean VRAM, exclusive GPU ownership state. diff --git a/archive/threads/NOTimothyLottes/2026-07-11-rethinking-vulkan-queue-choice-traditional-double/2026-07-11-konrad_kubacki_-am-i-having-a-stroke-what-is-this-font-it-feels.md b/archive/threads/NOTimothyLottes/2026-07-11-rethinking-vulkan-queue-choice-traditional-double/2026-07-11-konrad_kubacki_-am-i-having-a-stroke-what-is-this-font-it-feels.md new file mode 100644 index 0000000..a0ce70a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-11-rethinking-vulkan-queue-choice-traditional-double/2026-07-11-konrad_kubacki_-am-i-having-a-stroke-what-is-this-font-it-feels.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Am I having a stroke? What is this font? It feels like reading a captcha." +type: archive +source: twitter +source_url: "https://x.com/konrad_kubacki_/status/2075830291499737598" +author: "Konrad Kubacki" +handle: konrad_kubacki_ +post_id: "2075830291499737598" +date: 2026-07-11 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Am I having a stroke? What is this font? It feels like reading a captcha." +in_reply_to: "" +parent_post_id: "2075769880092037309" +--- + +## Source + +- URL: https://x.com/konrad_kubacki_/status/2075830291499737598 +- Author: Konrad Kubacki (@konrad_kubacki_) +- Posted: 2026-07-11 06:31:23 + +## Branch + +**1/** + +@NOTimothyLottes Am I having a stroke? What is this font? It feels like reading a captcha. Is it only me? + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-11-rethinking-vulkan-queue-choice-traditional-double/index.md b/archive/threads/NOTimothyLottes/2026-07-11-rethinking-vulkan-queue-choice-traditional-double/index.md new file mode 100644 index 0000000..705ea30 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-11-rethinking-vulkan-queue-choice-traditional-double/index.md @@ -0,0 +1,47 @@ +--- +title: "Rethinking Vulkan queue choice." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2075769880092037309" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2075769880092037309" +date: 2026-07-11 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Rethinking Vulkan queue choice." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2075769880092037309 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-11 02:31:20 + +## Thread + +**1/** + +Rethinking Vulkan queue choice. Traditional double-buffered games might do something like the code below. Find the queue that does {presentation,graphics,compute}. First off this seems like a lot of unnecessary work when one could just choose queue 0 and be done with it ... + +Media (not lifted): `2075769880092037309_HM6desTW0AAHA_H_orig.png` + +Branches: [[2026-07-11-konrad_kubacki_-am-i-having-a-stroke-what-is-this-font-it-feels]] + +**2/** + +AMD on Linux (RADV) and Windows. Queue 0 just works. But note both platforms support doing present on queue 1. So on AMD I'm likely going to render via compute on queue 0 [to reduce chance of preemption] and present on queue 1. And have both decoupled (for front buffer rendering) + +Media (not lifted): `2075770634349527454_HM6d5GnWAAAGOmg_orig.jpg` `2075770634349527454_HM6d8lcXsAA-8LJ_orig.jpg` + +**3/** + +NVIDIA is more complex. They put a DMA engine in queue 1 slot, and compute engine in queue 2 slot. Some sometimes queue 2 slot can or cannot do present (varies by driver). So maybe present on 0 (gfx queue), and dispatch on queue 2 by default for NV. + +Media (not lifted): `2075771407510773906_HM6egsMWcAAkjOq_orig.jpg` `2075771407510773906_HM6ex2jXwAAkmI6_orig.jpg` `2075771407510773906_HM6e5EdXwAAuOG5_orig.jpg` diff --git a/archive/threads/NOTimothyLottes/2026-07-13-another-quality-of-life-change-exit-with-error/index.md b/archive/threads/NOTimothyLottes/2026-07-13-another-quality-of-life-change-exit-with-error/index.md new file mode 100644 index 0000000..27b8c4f --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-13-another-quality-of-life-change-exit-with-error/index.md @@ -0,0 +1,31 @@ +--- +title: "Another quality of life change, exit with error now triggers the background console render thread to actually quit, so it always draws the console, then draws the error code, then exits." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2076534605193036043" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2076534605193036043" +date: 2026-07-13 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Another quality of life change, exit with error now triggers the background console render thread to actually quit, so it always draws the console, then draws the error code, then exits." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2076534605193036043 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-13 05:10:04 + +## Thread + +**1/** + +Another quality of life change, exit with error now triggers the background console render thread to actually quit, so it always draws the console, then draws the error code, then exits. diff --git a/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/2026-07-14-bkaradzic-much-clearer.md b/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/2026-07-14-bkaradzic-much-clearer.md new file mode 100644 index 0000000..4903525 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/2026-07-14-bkaradzic-much-clearer.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Much clearer..." +type: archive +source: twitter +source_url: "https://x.com/bkaradzic/status/2076844424236265641" +author: "Бранимир Караџић" +handle: bkaradzic +post_id: "2076844424236265641" +date: 2026-07-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Much clearer..." +in_reply_to: "" +parent_post_id: "2076833886827376782" +--- + +## Source + +- URL: https://x.com/bkaradzic/status/2076844424236265641 +- Author: Бранимир Караџић (@bkaradzic) +- Posted: 2026-07-14 01:41:11 + +## Branch + +**1/** + +@NOTimothyLottes Much clearer... 🤣 + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/2026-07-14-noop_dev-at-this-point-could-make-a-dsl-with-perl.md b/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/2026-07-14-noop_dev-at-this-point-could-make-a-dsl-with-perl.md new file mode 100644 index 0000000..c75c0b6 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/2026-07-14-noop_dev-at-this-point-could-make-a-dsl-with-perl.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes At this point could make a DSL with Perl.." +type: archive +source: twitter +source_url: "https://x.com/noop_dev/status/2077048344820551917" +author: "Boris Chuprin" +handle: noop_dev +post_id: "2077048344820551917" +date: 2026-07-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes At this point could make a DSL with Perl.." +in_reply_to: "" +parent_post_id: "2076833886827376782" +--- + +## Source + +- URL: https://x.com/noop_dev/status/2077048344820551917 +- Author: Boris Chuprin (@noop_dev) +- Posted: 2026-07-14 15:11:29 + +## Branch + +**1/** + +@NOTimothyLottes At this point could make a DSL with Perl.. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/index.md b/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/index.md new file mode 100644 index 0000000..ca82049 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-14-example-usage-after-clean-up/index.md @@ -0,0 +1,35 @@ +--- +title: "Example usage after clean-up." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2076833886827376782" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2076833886827376782" +date: 2026-07-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Example usage after clean-up." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2076833886827376782 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-14 00:59:18 + +## Thread + +**1/** + +Example usage after clean-up. + +Media (not lifted): `2076833886827376782_HNJlSFyW0AAQylS_orig.png` + +Branches: [[2026-07-14-bkaradzic-much-clearer]], [[2026-07-14-noop_dev-at-this-point-could-make-a-dsl-with-perl]] diff --git a/archive/threads/NOTimothyLottes/2026-07-14-so-i-can-liter-error-checks-around-stuff-with/index.md b/archive/threads/NOTimothyLottes/2026-07-14-so-i-can-liter-error-checks-around-stuff-with/index.md new file mode 100644 index 0000000..d9f550a --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-14-so-i-can-liter-error-checks-around-stuff-with/index.md @@ -0,0 +1,34 @@ +--- +title: "So I can liter error checks around stuff with little actual cost," +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2076893128515112995" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2076893128515112995" +date: 2026-07-14 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "So I can liter error checks around stuff with little actual cost," +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2076893128515112995 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-14 04:54:43 + +## Thread + +**1/** + +So I can liter error checks around stuff with little actual cost, +(1.) Two stores +(2.) A CMP or TEST +(3.) An ignored on no-error branch on the first execution! [this code almost never runs 2 times]. diff --git a/archive/threads/NOTimothyLottes/2026-07-15-sar-on-a-control-word-can-in-theory-grab-3-values/index.md b/archive/threads/NOTimothyLottes/2026-07-15-sar-on-a-control-word-can-in-theory-grab-3-values/index.md new file mode 100644 index 0000000..60f9b2b --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-15-sar-on-a-control-word-can-in-theory-grab-3-values/index.md @@ -0,0 +1,37 @@ +--- +title: "SAR on a control word can in theory grab 3 values." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2077241596869751029" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2077241596869751029" +date: 2026-07-15 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "SAR on a control word can in theory grab 3 values." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2077241596869751029 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-15 03:59:24 + +## Thread + +**1/** + +SAR on a control word can in theory grab 3 values. +SF (sign flag) is set to MSB bit +CF (carry flag) is set to what shifts into bit -1 +and output + +The SF and CF can be used for CMOVcc +Output can be used for another shift (after CMOVccs) diff --git a/archive/threads/NOTimothyLottes/2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too/2026-07-18-furan-sorry-for-the-tangent-what-is-this-font-and-where.md b/archive/threads/NOTimothyLottes/2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too/2026-07-18-furan-sorry-for-the-tangent-what-is-this-font-and-where.md new file mode 100644 index 0000000..cdc9965 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too/2026-07-18-furan-sorry-for-the-tangent-what-is-this-font-and-where.md @@ -0,0 +1,44 @@ +--- +title: "@NOTimothyLottes sorry for the tangent - what is this font and where can I get it?" +type: archive +source: twitter +source_url: "https://x.com/furan/status/2078295812476404143" +author: "Ian Hanschen" +handle: furan +post_id: "2078295812476404143" +date: 2026-07-18 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes sorry for the tangent - what is this font and where can I get it?" +in_reply_to: "" +parent_post_id: "2078257788732461389" +--- + +## Source + +- URL: https://x.com/furan/status/2078295812476404143 +- Author: Ian Hanschen (@furan) +- Posted: 2026-07-18 01:48:29 + +## Branch + +**1/** + +@NOTimothyLottes sorry for the tangent - what is this font and where can I get it? + +**2/** + +@furan It’s one of mine (bitmap front for 640x480 resolution CRT) if I ever figure out some good web hosting again I could put up + +**3/** + +@NOTimothyLottes or github, I host a bunch of bitmap fonts here: https://github.com/ianhan/bitmapfonts + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too/index.md b/archive/threads/NOTimothyLottes/2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too/index.md new file mode 100644 index 0000000..4200e91 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too/index.md @@ -0,0 +1,35 @@ +--- +title: "Oh, F-it! The urge to drop the C baggage was too strong, using nasm to bootstrap another radical Forth for Linux." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2078257788732461389" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2078257788732461389" +date: 2026-07-17 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Oh, F-it! The urge to drop the C baggage was too strong, using nasm to bootstrap another radical Forth for Linux." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2078257788732461389 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-17 23:17:23 + +## Thread + +**1/** + +Oh, F-it! The urge to drop the C baggage was too strong, using nasm to bootstrap another radical Forth for Linux. Will see how far I can get in a 4 KiB binary to start. Apparently this wants to exist, and I have no choice but to lend some fingers. ELF64 out of the way. + +Media (not lifted): `2078257788732461389_HNdzRxAXMAEom1u_orig.png` + +Branches: [[2026-07-18-furan-sorry-for-the-tangent-what-is-this-font-and-where]] diff --git a/archive/threads/NOTimothyLottes/2026-07-18-i-realized-at-some-point-i-can-have-most/2026-07-18-noop_dev-even-smaller-code-size-possible-with-custom.md b/archive/threads/NOTimothyLottes/2026-07-18-i-realized-at-some-point-i-can-have-most/2026-07-18-noop_dev-even-smaller-code-size-possible-with-custom.md new file mode 100644 index 0000000..eea709b --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-18-i-realized-at-some-point-i-can-have-most/2026-07-18-noop_dev-even-smaller-code-size-possible-with-custom.md @@ -0,0 +1,36 @@ +--- +title: "@NOTimothyLottes Even smaller code size possible with custom compression scheme, where you design bytecode not for immediate execution but to be decompressed on load." +type: archive +source: twitter +source_url: "https://x.com/noop_dev/status/2078359568636080568" +author: "Boris Chuprin" +handle: noop_dev +post_id: "2078359568636080568" +date: 2026-07-18 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes Even smaller code size possible with custom compression scheme, where you design bytecode not for immediate execution but to be decompressed on load." +in_reply_to: "" +parent_post_id: "2078349730204078527" +--- + +## Source + +- URL: https://x.com/noop_dev/status/2078359568636080568 +- Author: Boris Chuprin (@noop_dev) +- Posted: 2026-07-18 06:01:49 + +## Branch + +**1/** + +@NOTimothyLottes Even smaller code size possible with custom compression scheme, where you design bytecode not for immediate execution but to be decompressed on load. + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-18-i-realized-at-some-point-i-can-have-most/index.md b/archive/threads/NOTimothyLottes/2026-07-18-i-realized-at-some-point-i-can-have-most/index.md new file mode 100644 index 0000000..02d3daa --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-18-i-realized-at-some-point-i-can-have-most/index.md @@ -0,0 +1,35 @@ +--- +title: "I realized at some point I can have most interpreted forth-style words in an aligned 8-bytes." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2078349730204078527" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2078349730204078527" +date: 2026-07-18 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "I realized at some point I can have most interpreted forth-style words in an aligned 8-bytes." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2078349730204078527 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-18 05:22:44 + +## Thread + +**1/** + +I realized at some point I can have most interpreted forth-style words in an aligned 8-bytes. So can make a very small interpreter. + +Media (not lifted): `2078349730204078527_HNfHl-dXcAAf6Om_orig.png` + +Branches: [[2026-07-18-noop_dev-even-smaller-code-size-possible-with-custom]] diff --git a/archive/threads/NOTimothyLottes/2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need/2026-07-19-noop_dev-these-instrs-are-anything-but-fast-and-if-you.md b/archive/threads/NOTimothyLottes/2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need/2026-07-19-noop_dev-these-instrs-are-anything-but-fast-and-if-you.md new file mode 100644 index 0000000..773df00 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need/2026-07-19-noop_dev-these-instrs-are-anything-but-fast-and-if-you.md @@ -0,0 +1,64 @@ +--- +title: "@NOTimothyLottes These instrs are anything but fast and if you want both \"fast\" and compact you run a separate decoding pass where you expand custom bytecode into target instructions that suck less." +type: archive +source: twitter +source_url: "https://x.com/noop_dev/status/2078763409403683061" +author: "Boris Chuprin" +handle: noop_dev +post_id: "2078763409403683061" +date: 2026-07-19 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "@NOTimothyLottes These instrs are anything but fast and if you want both \"fast\" and compact you run a separate decoding pass where you expand custom bytecode into target instructions that suck less." +in_reply_to: "" +parent_post_id: "2078729662021111958" +--- + +## Source + +- URL: https://x.com/noop_dev/status/2078763409403683061 +- Author: Boris Chuprin (@noop_dev) +- Posted: 2026-07-19 08:46:33 + +## Branch + +**1/** + +@NOTimothyLottes These instrs are anything but fast and if you want both "fast" and compact you run a separate decoding pass where you expand custom bytecode into target instructions that suck less. + +**2/** + +@noop_dev Basic truth: if the program is tiny and dependency free (ie intrinsically not just glue for libraries) it’s probably already fast even if the machine isn’t. And for the things that need perf there is always assembly + +**3/** + +@NOTimothyLottes Anyway, I am trying you to sell the idea of bytecode-driven macroassembler that expands "macros" on load. Like I did with 4K atari 2600 emu ~20 years ago.. some demosceners I knew also adopted the idea.. + +**4/** + +@noop_dev Many of my other systems had been such that interpreted source generates raw code then executes the code (all at once after code is fully processed). Effectively forth as a macro language and instruction generator, runtime assembler. + +**5/** + +@noop_dev But for cold cache stuff it’s easy to burn more time in binary generation than it would cost to do simple interpreter. + +**6/** + +@NOTimothyLottes Not sure I can understand how cold cache matters for a linear transformation of a relatively small # of bytes. + +**7/** + +@noop_dev If it’s a byte that indexes into say a fixed size physical instruction, yeah it’s just a decompression of source code, sure easy to do fast. Im talking more the multi-branch miss per instruction stuff. + +**8/** + +@noop_dev Meaning “mov edi,[rax-0x32]” could be generated from 4 symbol lookups (2 for regs, one for offset, one for instruction). Also my intent here is for GPU code generation for AMD GPUs where youd have sometimes 8+ bitfields in an opcode. So the simple stuff won’t work there … + +## Related + +- Spine: [[index]] diff --git a/archive/threads/NOTimothyLottes/2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need/index.md b/archive/threads/NOTimothyLottes/2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need/index.md new file mode 100644 index 0000000..b987799 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need/index.md @@ -0,0 +1,33 @@ +--- +title: "The aim of course, keep the stuff that doesn't need to go fast optimized instead for low complexity and low size (aka interpreted forth), and keep the stuff that needs to go fast, at peak, assembly." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2078729662021111958" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2078729662021111958" +date: 2026-07-19 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "The aim of course, keep the stuff that doesn't need to go fast optimized instead for low complexity and low size (aka interpreted forth), and keep the stuff that needs to go fast, at peak, assembly." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2078729662021111958 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-19 06:32:27 + +## Thread + +**1/** + +The aim of course, keep the stuff that doesn't need to go fast optimized instead for low complexity and low size (aka interpreted forth), and keep the stuff that needs to go fast, at peak, assembly. Hits 2 extremes well. + +Branches: [[2026-07-19-noop_dev-these-instrs-are-anything-but-fast-and-if-you]] diff --git a/archive/threads/NOTimothyLottes/2026-07-22-a-language-that-you-author-in-a-compressed-space/index.md b/archive/threads/NOTimothyLottes/2026-07-22-a-language-that-you-author-in-a-compressed-space/index.md new file mode 100644 index 0000000..cbc48e0 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-07-22-a-language-that-you-author-in-a-compressed-space/index.md @@ -0,0 +1,31 @@ +--- +title: "A language that you author in a compressed space directly." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2079746130309415185" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2079746130309415185" +date: 2026-07-22 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "A language that you author in a compressed space directly." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2079746130309415185 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-07-22 01:51:31 + +## Thread + +**1/** + +A language that you author in a compressed space directly. So Whitney-esk in using lots of single character variables (or double character with page characters) -BUT- very non-Whitney in that it has no higher order array constructs diff --git a/archive/threads/NOTimothyLottes/2026-08-02-re-fpga-land-alus-im-firmly-distracted-by-an/index.md b/archive/threads/NOTimothyLottes/2026-08-02-re-fpga-land-alus-im-firmly-distracted-by-an/index.md new file mode 100644 index 0000000..9236202 --- /dev/null +++ b/archive/threads/NOTimothyLottes/2026-08-02-re-fpga-land-alus-im-firmly-distracted-by-an/index.md @@ -0,0 +1,83 @@ +--- +title: "Re-FPGA-land ALUs - I'm firmly distracted by an alternative history of the unexplored left justified extreme fixed point." +type: archive +source: twitter +source_url: "https://x.com/NOTimothyLottes/status/2083757874686161259" +author: "NOTimothyLottes" +handle: NOTimothyLottes +post_id: "2083757874686161259" +date: 2026-08-02 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - NOTimothyLottes +description: "Re-FPGA-land ALUs - I'm firmly distracted by an alternative history of the unexplored left justified extreme fixed point." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/NOTimothyLottes/status/2083757874686161259 +- Author: NOTimothyLottes (@NOTimothyLottes) +- Posted: 2026-08-02 03:32:46 + +## Thread + +**1/** + +Re-FPGA-land ALUs - I'm firmly distracted by an alternative history of the unexplored left justified extreme fixed point. Where signed integer numbers represent {-1.0 to <1.0}. Where the primary IMAD op includes a huge fixed signed right shift ... + +**2/** + +For those planted in the right-justified current fixed point timeline, your bytes get loaded into the LSBs, and your addressing uses the LSBs. The idea of doing the reverse of this is probably completely alien -> loading smaller bit types into the MSBs first ... + +**3/** + +Meaning standard integer thinking is to start with small things like an index and scale that by the stride into a larger number. But with what I'm suggesting you start with something large and instead make it smaller. + +**4/** + +In a traditional right-justified CPU, you'd have three ops {MUL, ADD, SHR} which could be reduced to {IMAD, SHR}, but would be just one op on a left justified machine. Meaning doing 'fixed point' stuff is a bit faster. + +**5/** + +32-bit left justified machine, can easily leverage say a 18-bit * 25-bit multiplier (Xlinix DSP) because the MSBs are always fed in, and the useful MSBs are always pulled out of the accumulator (P). Right justified machines really need that full 32-bit x 32-bit MUL + +**6/** + +Left justified variable bit-width loads make a lot more sense, partly because the LSBs index into bits (or sub-bits depending on mapping) effectively (instead of bytes), and one can do {4/8/16/32-bit} extraction with 8 SLICES and one CLB deep [a lot easier than right-justified] + +Media (not lifted): `2083764013570093330_HOsENEBXEAAoWlx_orig.png` + +**7/** + +The core normalized IMAD can easily be made -/+ symmetrical simply by feeding in truncated LSBs of the add operand with simple logic based on MSBs of mul operands. In the example below the {-4} represents {-1.0}. Of course -4*-4 overflows to -4 [2's comp] + +Media (not lifted): `2083765900436492692_HOsFs-nWAAAUlTy_orig.png` + +**8/** + +Predicate/bool logic becomes {0.0, -1.0} based, can leverage {a+b} wrap around to implement XOR, and -(a*b) to implement AND. + +Media (not lifted): `2083766854980383071_HOsG3VBXAAA92kz_orig.png` + +**9/** + +Doing a "perspective divide" {s=x/z} can be transformed into a scaled perspective divide {s=x*(a/z)} to work around the {-1.0 to <1.0} range limitation. And one can transform the divide into a binary search for 's' - specifically largest 's' where {s*z<=x*a} + +Media (not lifted): `2083768129658765655_HOsIBCBWcAA79PL_orig.png` + +**10/** + +Notice this binary search test takes just one IMAD {s*z+t} where t=-x*a. Meaning a smart machine can do a test step in 2 ops on a DSP (one IMAD for the test, the next to ADD to 's' for the next search step) ... + +**11/** + +Which requires the opcode ISA to have a latched delayed write to the register file that is conditional on the sign bit of a later IMAD op. This can make binary search for things like sqrt(x) also just as fast. + +**12/** + +I think there are ways to transcend typical integer machine IPCs by having uber ops in the ISA (this left-justified machine has a 1-clock {MUL,ADD,SHIFT,+ signed conditional register STORE,+ extra modifiers (like NOT)}. But still have extremely simple implementations. diff --git a/archive/threads/NOTimothyLottes/index.md b/archive/threads/NOTimothyLottes/index.md index c6bc6c2..bb4d7a6 100644 --- a/archive/threads/NOTimothyLottes/index.md +++ b/archive/threads/NOTimothyLottes/index.md @@ -10,4 +10,82 @@ tags: - NOTimothyLottes --- +- [[2022-11-04-vulkan-1500-lines-of-overhead-including-header]] +- [[2022-11-05-19-even-without-double-rate-16-bit-16-bit-is-the]] +- [[2022-11-08-example-of-bind-everything-once-layout-aliasing]] +- [[2022-11-09-if-only-pc-vendors-with-open-isas-amd-intel-would]] +- [[2022-11-13-my-prefered-method-of-managing-application-data]] +- [[2022-11-30-explicit-packed-16-bit-code-fsr1-example-https]] +- [[2023-04-26-can-make-a-custom-forth-to-binary-in-a-few-k]] +- [[2023-06-30-nothing-oriented-programming-nop-where-the-goal]] +- [[2023-08-03-spc-using-8-deep-swap-all-aliasing-same-bo-image]] +- [[2023-08-04-for-anyone-tuning-in-now-spc-is-kind-of-like-a]] +- [[2023-08-06-the-next-challenge-is-overscan-safety-since-real]] +- [[2023-08-06-yeah-perhaps-wildly-alien-but-for-those-who-grew]] +- [[2023-08-07-crt-emulation-on-lcds-can-be-hard-for-example-its]] +- [[2023-08-18-spc-last-crt-shader-was-broken-corrected-it-its]] +- [[2023-08-18-the-subpix-version-is-definitely-better-because]] +- [[2023-12-15-long-thread]] +- [[2023-12-16-if-there-is-anything-to-learn-for-programming-it]] +- [[2023-12-19-multi-session-is-nice-since-the-binary-auto]] +- [[2024-02-13-once-upon-a-time-not-up-any-more-lots-of-color]] +- [[2024-04-06-on-https-mastodon-gamedev-place-notimothylottes]] +- [[2024-05-04-it-was-only-later-when-systems-forced-c-abi]] +- [[2024-11-16-that-line-of-thinking-is-universal-solution-to]] +- [[2024-11-19-after-vk-device-is-open-i-signal-a-background]] +- [[2024-11-21-32-oh-damn-32-should-probably-stop-now-until-next]] +- [[2024-12-15-texel-buffer-is-needed-for-whatever-formats-one]] +- [[2024-12-16-also-i-wouldnt-just-modify-an-existing-compiler]] +- [[2024-12-16-then-there-are-rough-edges-to-texel-buffer]] +- [[2024-12-21-not-sure-if-this-is-the-end-of-this-story-yet-but]] +- [[2025-04-30-3-i-got-side-tracked-by-building-a-language-that]] +- [[2025-04-30-i-laugh-when-people-say-c-is-like-assembly-they]] +- [[2025-06-29-many-of-my-forth-like-languages-worked-via-nested]] +- [[2025-07-23-i-dont-use-standard-c-libs-or-anything-like-that]] +- [[2025-07-31-people-claim-assembly-is-hard-a-good-counter-to]] +- [[2025-08-01-also-run-from-gpu-side-editing-tools-for-shader]] +- [[2025-08-02-so-far-the-plan-is-to-have-the-data-read-write]] +- [[2025-11-17-i-wish-everyone-would-just-adopt-reversed-with]] +- [[2026-01-14-can-do-that-but-at-least-these-kinds-of-systems]] +- [[2026-03-08-ill-add-one-conspiracy-theory-for-everyone]] +- [[2026-05-23-most-crap-o-grammers-today-in-the-user-space-c]] +- [[2026-05-29-https-trickybitsblog-github-io-2024-02-25]] +- [[2026-05-30-renovating-cpu-clock-code-im-assuming-x86-64-tsc]] +- [[2026-05-31-hits-the-easy-to-debug-cpu-or-gpu-stuff-in-the]] +- [[2026-05-31-no-debugger-debug-console-printf-style-prior]] +- [[2026-06-01-that-plus-an-oscilloscope-this-is-the-way]] +- [[2026-06-01-windows-thread-priority]] +- [[2026-06-02-for-windows-trying-to-standardize-on-highest]] +- [[2026-06-02-its-unfortunate-there-isnt-an-easy-way-to-map-the]] +- [[2026-06-03-back-running-640x480-on-my-vga-crts-to-prep-for]] - [[2026-06-10-steamos-init]] +- [[2026-06-13-cross-compilation-is-up-just-like-on-windows-with]] +- [[2026-06-13-nanorc-done-and-back-to-actual-programming-with]] +- [[2026-06-13-the-glibc-implementation-would-do-that-i-bypass]] +- [[2026-06-14-on-linux-i-do-speculative-pinning-of-cpu-memory]] +- [[2026-06-26-quick-summary-of-why-not-pselect-ppoll-epoll]] +- [[2026-06-27-deterrent-to-alsa-is-just-parsing-through-snd-pcm]] +- [[2026-06-29-alsa-hell-month-continues-remember-it-might-be]] +- [[2026-06-29-eventually-figure-out-enough-to-get-aplay-to]] +- [[2026-06-30-working-on-the-linux-thread-priority-code-linux]] +- [[2026-07-01-did-manage-to-get-alsa-to-function-without-sndrv]] +- [[2026-07-01-haha-damn-i-thought-i-had-a-great-idea-for-wine]] +- [[2026-07-01-linux-by-default-doesnt-allow-any-increase-in]] +- [[2026-07-02-settings-im-using-for-snd-pcm-sw-params-for-alsa]] +- [[2026-07-02-yuck-starting-on-wdm-ks-audio-interface-for-win32]] +- [[2026-07-03-following-the-succession-thanks-of-re-trying]] +- [[2026-07-03-so-instead-of-the-massive-mmdeviceapi-h-mess-ware]] +- [[2026-07-04-wines-iaudioclient-getdeviceperiod-returns-53333]] +- [[2026-07-06-vulkan-starts-with-the-ping-pong-between-getting]] +- [[2026-07-08-next-pre-device-opening-activity-is-choosing]] +- [[2026-07-10-oh-i-probably-have-a-lot-to-learn-here-building]] +- [[2026-07-11-rethinking-vulkan-queue-choice-traditional-double]] +- [[2026-07-13-another-quality-of-life-change-exit-with-error]] +- [[2026-07-14-example-usage-after-clean-up]] +- [[2026-07-14-so-i-can-liter-error-checks-around-stuff-with]] +- [[2026-07-15-sar-on-a-control-word-can-in-theory-grab-3-values]] +- [[2026-07-17-oh-f-it-the-urge-to-drop-the-c-baggage-was-too]] +- [[2026-07-18-i-realized-at-some-point-i-can-have-most]] +- [[2026-07-19-the-aim-of-course-keep-the-stuff-that-doesnt-need]] +- [[2026-07-22-a-language-that-you-author-in-a-compressed-space]] +- [[2026-08-02-re-fpga-land-alus-im-firmly-distracted-by-an]] diff --git a/archive/threads/VPCOMPRESSB/2025-11-10-im-not-familiar-with-your-problem/index.md b/archive/threads/VPCOMPRESSB/2025-11-10-im-not-familiar-with-your-problem/index.md new file mode 100644 index 0000000..3abcb97 --- /dev/null +++ b/archive/threads/VPCOMPRESSB/2025-11-10-im-not-familiar-with-your-problem/index.md @@ -0,0 +1,33 @@ +--- +title: "@NOTimothyLottes i'm not familiar with your problem." +type: archive +source: twitter +source_url: "https://x.com/VPCOMPRESSB/status/1987744335333622188" +author: "/i:'mɪər/" +handle: VPCOMPRESSB +post_id: "1987744335333622188" +date: 2025-11-10 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - VPCOMPRESSB +description: "@NOTimothyLottes i'm not familiar with your problem." +in_reply_to: "1987733345628013014" +--- + +## Source + +- URL: https://x.com/VPCOMPRESSB/status/1987744335333622188 +- Author: /i:'mɪər/ (@VPCOMPRESSB) +- Posted: 2025-11-10 04:49:14 + +> @VPCOMPRESSB Logic on max word count is probably sound. But I've never been able to get all symbol length to 2 chars. + +## Thread + +**1/** + +@NOTimothyLottes i'm not familiar with your problem. diff --git a/archive/threads/VPCOMPRESSB/2025-11-20-no-tokens-and-no-asts-easier-because-its-forth/index.md b/archive/threads/VPCOMPRESSB/2025-11-20-no-tokens-and-no-asts-easier-because-its-forth/index.md new file mode 100644 index 0000000..dd47e5e --- /dev/null +++ b/archive/threads/VPCOMPRESSB/2025-11-20-no-tokens-and-no-asts-easier-because-its-forth/index.md @@ -0,0 +1,39 @@ +--- +title: "no Tokens and no ASTs." +type: archive +source: twitter +source_url: "https://x.com/VPCOMPRESSB/status/1991383117571957052" +author: "/i:'mɪər/" +handle: VPCOMPRESSB +post_id: "1991383117571957052" +date: 2025-11-20 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - VPCOMPRESSB +description: "no Tokens and no ASTs." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/VPCOMPRESSB/status/1991383117571957052 +- Author: /i:'mɪər/ (@VPCOMPRESSB) +- Posted: 2025-11-20 05:48:27 + +## Thread + +**1/** + +no Tokens and no ASTs. (easier because its Forth-like). + +all i'm doing is transforming the source directly via byte shuffling and bit magic, and its parallelizable at a per-byte basis [theoretically, because i have yet to try that out]. + +code is awful because i'm using Java as if it's C, and it isn't optimized (plenty of optimizations that i've setup) nor cleaned. + +the <\> represents NULL. (this was debugged with print 🙂). + +Media (not lifted): `1991383117571957052_G6LJrEgXkAA2Z26_orig.png` `1991383117571957052_G6LPXFOWAAABSVy_orig.jpg` `1991383117571957052_G6LPYhqXgAA2rvt_orig.jpg` diff --git a/archive/threads/VPCOMPRESSB/index.md b/archive/threads/VPCOMPRESSB/index.md new file mode 100644 index 0000000..c75f052 --- /dev/null +++ b/archive/threads/VPCOMPRESSB/index.md @@ -0,0 +1,14 @@ +--- +title: VPCOMPRESSB +type: note +status: published +draft: false +description: Archived threads by VPCOMPRESSB. +tags: + - archive + - twitter + - VPCOMPRESSB +--- + +- [[2025-11-10-im-not-familiar-with-your-problem]] +- [[2025-11-20-no-tokens-and-no-asts-easier-because-its-forth]] diff --git a/archive/threads/winning_tactic/2026-06-07-i-see/index.md b/archive/threads/winning_tactic/2026-06-07-i-see/index.md new file mode 100644 index 0000000..56011b9 --- /dev/null +++ b/archive/threads/winning_tactic/2026-06-07-i-see/index.md @@ -0,0 +1,33 @@ +--- +title: "@NOTimothyLottes I see!" +type: archive +source: twitter +source_url: "https://x.com/winning_tactic/status/2063733456144597200" +author: "OZ" +handle: winning_tactic +post_id: "2063733456144597200" +date: 2026-06-07 +archived: 2026-08-23 +status: draft +draft: true +tags: + - archive + - twitter + - winning_tactic +description: "@NOTimothyLottes I see!" +in_reply_to: "2063730754861822129" +--- + +## Source + +- URL: https://x.com/winning_tactic/status/2063733456144597200 +- Author: OZ (@winning_tactic) +- Posted: 2026-06-07 21:22:52 + +> @winning_tactic These are all for errors that kill the application. GetLastError is like the WIN32 version of error number from libc (figure out why an allocation that returned zero failed). + +## Thread + +**1/** + +@NOTimothyLottes I see! diff --git a/archive/threads/winning_tactic/index.md b/archive/threads/winning_tactic/index.md new file mode 100644 index 0000000..6c2347c --- /dev/null +++ b/archive/threads/winning_tactic/index.md @@ -0,0 +1,13 @@ +--- +title: winning_tactic +type: note +status: published +draft: false +description: Archived threads by winning_tactic. +tags: + - archive + - twitter + - winning_tactic +--- + +- [[2026-06-07-i-see]]