Tom’s Blog

👋 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.