initial adaption of rough scrapes. Needs heavy review and adaption to the old unpublished way.

This commit is contained in:
ed committed 2026-08-23 15:31:12 -04:00
1 parent 6789270c6a
commit b1de847ee2
181 files changed
+7020 -12

No files matched your search

@@ -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]]
@@ -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]]
@@ -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
@@ -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`
@@ -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
@@ -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 :)
@@ -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.
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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 ...
@@ -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.
@@ -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).
@@ -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`
@@ -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]]
@@ -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).
@@ -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.
@@ -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`
@@ -0,0 +1,129 @@
---
title: "<long thread> "
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: "<long thread> "
in_reply_to: ""
---
## Source
- URL: https://x.com/NOTimothyLottes/status/1735622924571201674
- Author: NOTimothyLottes (@NOTimothyLottes)
- Posted: 2023-12-15 11:28:46
## Thread
**1/**
<long thread>
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 ...
@@ -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.
@@ -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.
@@ -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).
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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.
@@ -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.
@@ -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.
@@ -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.
@@ -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 :(
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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.
@@ -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.
@@ -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]]
@@ -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`
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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)
@@ -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]]
@@ -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]]
@@ -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]]
@@ -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.
@@ -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]]
Loaded 100 of 181 files, more files were not shown because too many files have changed in this diff. Show more