tag:blogger.com,1999:blog-6027464.post-1163433527831314392006-11-13T12:33:00.000-03:002006-11-16T10:55:07.133-03:00Color artifacting no MC 1000Hoje, testando meu MC 1000 em uma televisão pequena (de 14 polegadas, acho eu), pela primeira vez tive um vislumbre de <span style="font-style: italic;">color artifacting</span> no MC 1000. Notei que os pontos no modo HGR (modo gráfico preto-e-branco, 256×192 pixels) produziam cores que variavam segundo sua posição horizontal e vertical. Logo fiz um programinha para testar o "fenômeno":<br /><br /><span style="font-family:courier new;">10 HGR<br />15 OUT 128, PEEK(245) AND 254<br />20 FOR A = 0 TO 15<br />30 X = A AND 3<br />40 B(0) = X + 4 * X + 16 * X + 64 * X<br />50 X = (A / 4) AND 3<br />60 B(1) = X + 4 * X + 16 * X + 64 * X<br />70 FOR B = 0 TO 1<br />80 FOR C = 0 TO 191<br />90 POKE 32768 + A * 2 + B + C * 32, B(C AND 1)<br />100 NEXT C, B, A<br />110 GOTO 110</span><br /><br />Este programa produz apenas listras verticais com padrões de pontos, como se vê no resultado obtido no emulador BrMC-1000 (<a href="http://www.ensjo.net/mc-1000/brmc-1000/">http://www.ensjo.net/mc-1000/brmc-1000/</a>):<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/4536/272/1600/mc1000-artifacting-emulador.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/4536/272/320/mc1000-artifacting-emulador.png" alt="" border="0" /></a></div><br />E este é o mesmo resultado que obtenho em uma televisão de 20 polegadas, e o que sempre vi durante meus anos como proprietário de MC 1000 nos anos 80. No entanto, testando hoje nesta televisão pequena, obtive uma seqüência de cores, como se vê nas fotos abaixo:<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/4536/272/1600/mc1000-artifacting-micro.jpg"><img style="cursor: pointer;" src="http://photos1.blogger.com/blogger/4536/272/320/mc1000-artifacting-micro.jpg" alt="" border="0" /></a> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/4536/272/1600/mc1000-artifacting-sem-flash.jpg"><img style="cursor: pointer;" src="http://photos1.blogger.com/blogger/4536/272/320/mc1000-artifacting-sem-flash.jpg" alt="" border="0" /></a></div><br />Eis a correspondência entre os padrões de pontos e as cores produzidas (cores "sólidas" em negrito):<br /><br /><table align="center" border="1"><tbody><tr><td>■ ■<br />■ ■</td><td>█ <span style="font-weight: bold;">Preto</span></td></tr><tr><td>■ □<br />■ ■</td><td><span style="background-color: rgb(127, 255, 0);">▄</span> Verde sobre preto</td></tr><tr><td>□ ■<br />■ ■</td><td><span style="background-color: rgb(127, 0, 255);">▄</span> Roxo sobre preto</td></tr><tr><td>□ □<br />■ ■</td><td><span style="border: 1px solid black;">▄</span> Branco sobre preto</td></tr><tr><td>■ ■<br />■ □</td><td><span style="background-color: black; color: rgb(255, 127, 0);">▄</span> Preto sobre laranja</td></tr><tr><td>■ □<br />■ □</td><td><span style="background-color: rgb(127, 255, 0); color: rgb(255, 127, 0);">▄</span> <strike>Verde sobre laranja</strike> → <span style="color: rgb(191, 191, 0);">█</span> <span style="font-weight: bold;">Amarelo</span><br /></td></tr><tr><td>□ ■<br />■ □</td><td><span style="background-color: rgb(127, 0, 255); color: rgb(255, 127, 0);">▄</span> <strike>Roxo sobre laranja</strike> → <span style="color: rgb(191, 64, 128);">█</span> <span style="font-weight: bold;">Vermelho</span><br /></td></tr><tr><td>□ □<br />■ □</td><td><span style="border: 1px solid black; color: rgb(255, 127, 0);">▄</span> Branco sobre laranja</td></tr><tr><td>■ ■<br />□ ■</td><td><span style="background-color: black; color: rgb(0, 127, 255);">▄</span> Preto sobre azul<br /></td></tr><tr><td>■ □<br />□ ■</td><td><span style="background-color: rgb(127, 255, 0); color: rgb(0, 127, 255);">▄</span> <strike>Verde sobre azul</strike> → <span style="color: rgb(63, 191, 128);">█</span> <span style="font-weight: bold;">Verde</span></td></tr><tr><td>□ ■<br />□ ■</td><td><span style="background-color: rgb(127, 0, 255); color: rgb(0, 127, 255);">▄</span> <strike>Roxo sobre azul</strike> → <span style="color: rgb(63, 63, 255);">█</span> <span style="font-weight: bold;">Azul</span><br /></td></tr><tr><td>□ □<br />□ ■</td><td><span style="border: 1px solid black; color: rgb(0, 127, 255);">▄</span> Branco sobre azul</td></tr><tr><td>■ ■<br />□ □</td><td><span style="border: 1px solid black; background-color: black; color: white">▄</span> Preto sobre branco<br /></td></tr><tr><td>■ □<br />□ □</td><td><span style="border: 1px solid black; background-color: rgb(127, 255, 0); color: white">▄</span> Verde sobre branco<br /></td></tr><tr><td>□ ■<br />□ □</td><td><span style="border: 1px solid black; background-color: rgb(127, 0, 255); color: white;">▄</span> Roxo sobre branco<br /></td></tr><tr><td>□ □<br />□ □</td><td><span style="border: 1px solid black;color:white;" >█</span> <span style="font-weight: bold;">Branco</span></td></tr></tbody></table><br />Parece que finalmente dá pra entender de onde vêm as cores usadas nesta tomada de tela de uma antiga propaganda (<a href="http://www.luccas.com.br/GeracaoPrologica11.pdf">http://www.luccas.com.br/GeracaoPrologica11.pdf</a>, penúltima página) do CP 400, um outro microcomputador da época que usava o mesmo chip de vídeo que o MC 1000:<br /><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/4536/272/1600/cp400-artifacting.0.jpg"><img style="cursor: pointer;" src="http://photos1.blogger.com/blogger/4536/272/320/cp400-artifacting.0.jpg" alt="" border="0" /></a></div><br /><span style="font-style: italic;">Continua em <a href="http://ensjo.blogspot.com/2006_11_01_ensjo_archive.html#116360462260754292">Color artifacting no MC 1000 (2)</a>...</span>Ensjohttp://www.blogger.com/profile/05400061565226262393noreply@blogger.com