👋 Hallo, ich bin Tom. Ich schreibe hier u.a. über Technologien, Retro-Computing, Fotografie, Gravel Biking, Training, Marketing und was mir sonst noch Spaß macht.
MOD-Files als Sound-Library mit Kanälen in MMBasic
Musik und Soundeffekte gleichzeitig laufen lassen, ohne dass sich was abschießt. Mein Weg dahin geht über PLAY MODSAMPLE und ein paar feste Kanäle.
Omarchy ohne LUKS-Passwort booten
Jeder Boot fragt nach dem LUKS-Passwort. Wie Omarchy stattdessen automatisch entsperrt und durchstartet.
Verbindungsaussetzer unter Omarchy beheben
Pings und Webseiten gehen mal, dann wieder nicht. Wie sich die Aussetzer unter Omarchy mit IPv4 per DHCP und sauberem DNS zuverlässig abstellen lassen.
Array-Lookups in heißen Schleifen wegcachen
Wenn der gleiche Array-Index fünfmal pro Iteration auftaucht, lohnt es sich, ihn einmal in eine Variable zu legen. Klein, aber bei mir messbar.
LOCAL kostet in MMBasic mehr als man denkt
LOCAL für Variablen anlegen klingt nach sauberer Programmierung. In heißen Schleifen war das bei mir der falsche Reflex.
CIRCLE pro Frame ist teurer als gedacht
Kleine Punkte, kleiner Aufwand, oder? Beim Profilen war CIRCLE einer der teuersten Befehle pro Frame. Was ich daraus gemacht habe.
Eigene Vektor-Schrift in MMBasic aus DATA-Statements
Pixel-Fonts skalieren nicht schön, und für ein Vektor-Spiel passen sie auch optisch nicht. Wie ich aus DATA-Statements eine skalierbare Schrift gebaut habe.
hugo-cms.nvim auf einen Blick
Mein neovim-Plugin hugo-cms.nvim in Kurzfassung und alle Beiträge der Reihe in Lese-Reihenfolge.
Vektoren rotieren ohne FOR-Schleife in MMBasic
Rotation in der Schleife mit COS und SIN ist offensichtlich. MATH V_ROTATE macht das Gleiche schneller, ohne dass man jeden Punkt selbst dreht.
Completion in LazyVim per Tastendruck umschalten
Blink.cmp in LazyVim mit Strg+Q pro Buffer an- und ausschalten. Kleiner Plugin-Override mit Snacks.toggle.