Calculadora attribute clash ZX Spectrum
Calcula quantas regioes 8x8 de attribute clash existem em uma tela ZX Spectrum de 256x192 pixels usadas pelo famoso problema de cor do hardware.
—
Attribute clash do ZX Spectrum
O Sinclair ZX Spectrum (1982) renderiza um bitmap de 256×192 pixels, mas armazena cor separadamente numa grade grossa de 32×24 blocos de atributos 8×8. Cada bloco guarda apenas 2 cores (INK + PAPER), mais bits BRIGHT e FLASH, escolhidas de uma paleta fixa de 15 cores (8 normais + 7 bright; preto é compartilhado). Quando dois objetos distintos se sobrepõem na mesma célula 8×8, um deles é forçadamente recolorido — é o famoso "attribute clash". RAM de atributos total: 32×24 = 768 bytes, em $5800. RAM do bitmap: 6144 bytes em $4000. Desenvolvedores habilidosos (Ultimate Play the Game) desenhavam sprites alinhados à grade de atributos para esconder o clash.
Aplicações
Desenvolvimento retrogaming para ZX Spectrum em toolchains modernas (z88dk, sjasmplus), produções de demoscene mirando Spectrum 48K/128K, autores de emulador (Fuse, ZEsarUX, Spectaculator), conversão de pixel art de PNG para SCREEN$ e lançamentos homebrew em plataformas como itch.io e World of Spectrum.
Perguntas frequentes
Por que só 2 cores por bloco? RAM era escassa em 1982. Cor por pixel exigiria 8× mais memória (≈48 KB só de vídeo); a grade 32×24 mantém o framebuffer abaixo de 7 KB no total.
Como jogos evitam o clash? Truques comuns: sprites monocromáticos em fundo preto, alinhar hitbox de sprite a células 8×8, usar o bit BRIGHT para simular 3ª cor, ou aceitar o clash como estilo visual (ex.: Knight Lore).
O que é SCREEN$? O snapshot de 6912 bytes da RAM de vídeo (6144 do bitmap + 768 de atributos), comumente despejado em arquivos .SCR para compartilhar pixel art.
Ferramentas Relacionadas
Reajuste de Aluguel
Calcula o reajuste anual de aluguel pelo IGP-M ou IPCA acumulado nos últimos 12 meses (índice configurável manualmente).
Calculadora Gestacional
Calcula data provável do parto (DPP), idade gestacional e trimestre a partir da data da última menstruação (DUM).
Calculadora de Período Fértil
Calcula período fértil e dia da ovulação a partir do primeiro dia do último ciclo e duração média do ciclo menstrual.