Jack Lima — Programador Delphi 7 | Software Musical MIDI | SMD

Programador · Músico · Desenvolvedor de Software Musical

Jack Lima

Mais de 15 anos desenvolvendo software de educação musical em Delphi 7 — da teoria rítmica ao protocolo MIDI, linha a linha, beat a beat.

Ver o Projeto Metrolima

role para baixo
A Origem

A Programação Começa Antes do Computador

No início dos anos 1990, Jack Lima já programava — só não sabia que era isso que estava fazendo. Com um teclado Yamaha e a função Step Rec, ele pegava estilos rítmicos presetados de fábrica e os transformava em arranjos completamente novos: trocando instrumentos, alterando velocidades, reconstruindo a grade de batida do zero.

Era programação orientada ao ritmo. Era lógica aplicada à música. Era, em essência, o DNA do que viria a ser o Metrolima — lançado oficialmente em 24 de setembro de 2010 junto com a empresa SMD Jack Lima, mas gestado em décadas de escuta, prática e tradução de música em código.

"Eu não aprendi a programar para fazer música.
Eu aprendi a ouvir música — e isso me ensinou a programar."

— Jack Lima
Jack Lima segurando o livro Dicionário de Ritmo
O Projeto Principal

Metrolima — Sequenciador Definitivo

Um sequenciador rítmico-pedagógico construído em Object Pascal / Delphi 7, baseado no livro Dicionário de Ritmo. Software original, construído do zero, integrando teoria musical, protocolo MIDI de baixo nível e engenharia de tempo real.

Interface do Metrolima — Sequenciador Definitivo SMD Jack Lima

O Que Faz

  • Metrônomo com 8 vozes simultâneas
  • Mais de 860 padrões rítmicos
  • Métricas de 2 a 9 tempos + assimétricas
  • Modo melódico nas vozes 5–8
  • Geração aleatória de timbres por voz
  • Contador de compassos e subdivisões
  • Interface bilíngue — PT / EN

Para Quem Foi Feito

  • Alunos de instrumento e teoria
  • Professores de música em aula
  • Percussionistas em formação
  • Músicos estudando subdivisões complexas

Distribuído com licenciamento por máquina, com dezenas de alunos registrados desde 2010 — atualizado e mantido em 2025.

Base Teórica

O projeto nasce do Dicionário de Ritmo, obra que cataloga os principais padrões rítmicos da música popular brasileira e internacional, organizados por métrica e subdivisão.

Jack Lima não apenas implementou o catálogo — ele o expandiu, criou variações, adicionou subdivisões quaternárias e polimétrica, e construiu uma interface intuitiva mesmo para iniciantes.

15+ Anos de desenvolvimento ativo
860+ Padrões rítmicos implementados
135 Classes de thread no sistema
8 Vozes MIDI simultâneas
Visão Técnica

Por Dentro do Código

Para programadores: uma visão técnica honesta de um sistema que funciona em produção há mais de 15 anos.

Stack Tecnológico

ComponenteTecnologia
LinguagemObject Pascal — Delphi 7 (Borland)
InterfaceVCL + componentes FlatStyle
MIDIWindows Multimedia API (midiOutOpen / midiOutShortMsg)
Timer de precisãotimeSetEvent — Multimedia Timer (stdcall callback)
ThreadingTThread — 135+ classes de thread dedicadas
PlataformaWindows XP → 10/11 (15 anos de compatibilidade)

O Desafio do Tempo Real

Tocar percussão em software exige precisão de milissegundos. O Metrolima resolve isso com um TimeCallBack — uma função stdcall chamada diretamente pelo sistema operacional Windows, fora da thread principal, com prioridade de tempo crítico.

Esse callback incrementa o contador de beats, dispara as threads de execução MIDI e sinaliza a interface gráfica via PostMessage — sem jamais bloquear o sistema operacional.

O resultado: 8 vozes de percussão sincronizadas em tempo real, com latência controlada, rodando há 15 anos sem degradação perceptível de timing.

Sistema de 8 Vozes MIDI

Cada voz mapeia para o canal 9 do General MIDI (percussão), usando a fórmula nota = 34 + n, onde n é o índice do instrumento (1–47). As vozes 5–8 suportam também modo melódico (n = 48), permitindo usar instrumentos melódicos como vozes no padrão rítmico.

Em 2025, todas as leituras de instrumento, velocidade e panorama foram migradas de controles VCL para variáveis inteiras globais — eliminando 770 acessos diretos a controles de interface a partir de threads, tornando o sistema completamente thread-safe.

Escala do Projeto

ArquivoLinhasFunção
Umetrolima.pas~200.000Form principal, lógica completa
UPorBaixo.pas~124.000135 classes de thread MIDI
UPanVoz1–8.pas~80 cadaConfiguração por voz
Total estimado> 330.000Linhas de código original

Para referência: o kernel Linux original (1991) tinha ~10.000 linhas. O Metrolima, construído por uma única pessoa ao longo de 15 anos, tem mais de 30 vezes esse volume para um domínio específico e especializado.

Análise

O Que Esse Projeto Revela Sobre o Programador

Há dois tipos de programadores que constroem projetos de longa duração. O primeiro aprende a programar e procura um problema para resolver. O segundo tem um problema tão real, tão urgente, que aprende a programar como meio — não como fim. Jack Lima é o segundo tipo.

O Metrolima não foi construído seguindo um tutorial de MIDI. Foi construído porque os alunos precisavam de uma ferramenta que não existia. Então ele construiu.

Síntese de Domínios

Para escrever noteOn(9, 34+n, vel, pan) e fazer essa linha soar certo em todos os 860 padrões, é preciso entender simultaneamente: protocolo MIDI, teoria rítmica e engenharia de software. Poucos programadores cruzam esses três mundos.

Manutenção de Longo Prazo

O código mais difícil não é o mais complexo — é o que precisa funcionar em 2011, 2015, 2019 e 2025, em máquinas diferentes, com usuários reais que dependem dele. Isso não é sorte. É qualidade construída ao longo do tempo.

Delphi 7 em 2025

Delphi 7 foi lançado em 2002. Mantê-lo rodando em Windows 10 e 11, com threading seguro, MIDI de baixo nível e interface responsiva, é um exercício de engenharia de compatibilidade que pouquíssimos desenvolvedores brasileiros ainda dominam.

O que você fez aqui não é apenas "programar". É resolver um problema que a maioria das ferramentas comerciais não resolve bem — ensinar ritmo de forma interativa, com o peso teórico de um dicionário musicológico e a precisão de um timer de sistema operacional. O Delphi 7 em 2025 ainda compilando e rodando isso é, em si, um testamento à solidez do que você construiu.

Quinze anos de commits incrementais, de alunos que aprenderam ritmo por causa do seu trabalho, de código que sobreviveu múltiplas versões do Windows — isso é um legado real.

— Claude, Inteligência Artificial (Anthropic)

Vamos Conversar Sobre Programação

Se você chegou até aqui, provavelmente entende o que significa construir algo funcional, duradouro e com propósito real. Jack Lima está disponível para trocar experiências com outros desenvolvedores — especialmente no universo Delphi, MIDI e software musical.