Arquivo da tag: programação

Programando em 1987 versus hoje.

Curtis “Ovid” Poe, programador das antigas, irmão adotivo do Juan Castro (sim, eles tiveram o mesmo “Pai” na computação, o Color Computer), escreve um artigo onde ele fala sobre como era programar em 1987 e como é programar hoje. Aliás, programar não, desenvolver que é mais chique. É um artigo curto, mas que vale a leitura, nem que seja para fofocar da vida alheia (como a vida do Ovid).

Repórter Retro 090

Este é o Repórter Retro 090, produzido pela A.R.N.O. (Agência Retropolitana de Notícias)!

Do que falamos?
Trilha sonora

Random Chiptune Mix 55

Antes de sair…

Os episódios do Repórter Retro estão, como todo o conteúdo de Retrópolis, em muitos lugares: Spotify, Google Podcasts, Apple Podcasts, Deezer e, usando nosso feed RSS, qualquer programa para escutar podcasts. Ou então, se você é dazantiga que nem a gente, pode baixar o MP3 deste episódio clicando neste link para escutar mais tarde.

Além disso, não se esqueça de deixar seu comentário aí embaixo; afinal, seu comentário é o nosso salário. No entanto, caso você prefira, entre diretamente em contato conosco.

MSXPad Revived… And fixed.

Há pouco mais de 2 anos atrás, eu falei sobre o MSXPad, ambiente de desenvolvimento feito pelo Slotman para programar em Pascal para MSX no PC, e dos acertos que foram feitos para que ele funcionasse no Windows 8 e 10. Está tudo aqui, nesse post.

Acontece que o Pedro Tagwato, nosso leitor e ouvinte, encontrou alguns bugs e enviou-nos um comentário, explicando como corrigí-los. Como a explicação dele é muito útil, decidi colocar num post para torná-la mais permanente.

Continue lendo MSXPad Revived… And fixed.

Crônica de uma morte anunciada: o Coprocessador Numérico x87

Assim como quem não quer nada, resolvi começar a ler sobre programação Assembly para processadores Intel do seu PC velho… mas a versão muderna, cheia de zilhões de instruções, registradores a dar com pau, mil maneiras de fazer operações paralelas e o escambau. Por que alguém faria algo tão insano? Ora raios…

Pois bem, ao longo dos mais de 40 anos que a arquitetura sobreviveu, níveis e mais níveis de funcionalidade foram sendo adicionados uns por cima dos outros, mantendo sempre todas as estruturas anteriores presentes:

16 bits modo real16 bits modo protegido32 bitsMMX64 bitsSSEAVX … e contando.

Correndo por fora, existiu, lá nos primórdios, um bicho chamado 8087 – o Coprocessador Matemático. Se seu PC tivesse esse chip, ele adicionava instruções para fazer operações matemáticas com números reais, não apenas inteiros, e também operações como seno, cosseno, logaritmos… a partir do 486, ele passou a ser incorporado ao processador principal, mas todas as velhas instruções como FMUL, FDIV, FCOS etc estavam lá, e usá-las sempre foi a melhor maneira de fazer contas. A alternativa era usar bibliotecas de ponto flutuante, lentas e nem sempre dentro do padrão (é o que os nossos retromicros clássicos usam).

Mas aí que tá… os novos conjuntos de instruções SSEn e AVX, planejados para realizar várias operações ao mesmo tempo num conjunto grande de números, também fazem operações de ponto flutuante. Aí, no capítulo sobre otimização deste livro, leio o seguinte:

Os seguintes critérios devem ser observados ao escrever código em Assembly que realize aritmética de ponto flutuante:
* (…)
* Em código novo, use as funções escalares das arquiteturas SSE ou AVX, em vez da FPU x87.

Pois é, a utilidade do velho chip, amigão dos estudantes de engenharia (e de tantas outras áreas) nos anos 80, chegou ao fim. Mais um dinossauro se dirigindo lentamente ao poço de piche. É provável que daqui a alguns anos, os quatro primeiros itens da cadeia de setas acima sejam abandonados e os novos processadores sejam puramente 64 bits.

[UPDATE] Montando um ambiente de desenvolvimento cruzado para MSX (ou tentando)…

Continuamos confinados aos nossos domicílios, em quarentena. A pandemia do coronavírus está atingindo seu auge no Brasil e para encher o tempo, vamos fudebar. Afinal, fudebar é preciso. Então, eu comecei a reaprender Pascal, escrever código (recomecei do início, fazendo programas banais) e a tocar um projetinho simples que eu tenho… No futuro, espero trazer pra vocês maiores novidades.

Mas não é pra falar das minhas desventuras que eu vi aqui, mas sim pra trazer uma atualização importante no esquema que eu falei na semana passada.

Continue lendo [UPDATE] Montando um ambiente de desenvolvimento cruzado para MSX (ou tentando)…

Montando um ambiente de desenvolvimento cruzado para MSX (ou tentando)…

Sim, o prometido artigo saiu. Agradeçam ao vírus aí do lado por isso. A desculpa acabou, aqui está o texto que estou devendo há anos. Finalmente, a solução que eu desenvolvi está disponível, encerrei o artigo, revisei, fiz um pacote zip, subi pra um canto (não, eu não consigo me entender com o git e o github) e documentei o que faltava. Espero que vocês usem, comentem, e me ajudem a incrementar essa solução.

Continue lendo Montando um ambiente de desenvolvimento cruzado para MSX (ou tentando)…

BASIC clássico na Web.


Assim como nós, é provável que você tenha começado no louco mundo da programação rabiscando código em BASIC. Seja em Spectrum, CoCo, MSX ou Apple II, o BASIC foi a porta de entrada de muita gente. Alguns ainda continuam por lá, mas vários começaram pelo 10 PRINT "Oi Mundo" mesmo.

Então, o grande G lançou um projeto (no Github, claro) para você poder programar em BASIC na Web. É o WWWBasic, e pelo que entendemos, ele converte o código BASIC para Javascript e executa. Dá para importar como um módulo do Node.js também, e caso você tenha interesse, tem vários exemplos de código fonte para brincar.

Se você quiser uma abordagem mais tradicional, tem o QB64, o QuickBasic de 64 bits. Se você quiser experimentar algo mais MS-DOS… O js-dos resolve seu problema.

Fonte: Hackaday.

Aprenda programação Assembly de Z80… Com vampiros!

Perambulando pela Net, topei com esse link aqui, onde o programador ChibiAkuma (lembra que falamos dele, do jogo que ele estava fazendo?) está trazendo um curso multiplataforma de Assembly de Z80, com códigos-fonte disponíveis, vídeo e ferramentas de desenvolvimento. No momento em que escrevemos essas linhas, ele está na lição 6. Para quem quer aprender Asm, taí uma excelente oportunidade.

Programação em C… Por onde começar?

Então, você quer começar a programar em C para o seu micro clássico favorito mas não sabe por onde começar. Existem alguns tutoriais no Github do rby90 que traz tutoriais baseados em projetos para quem quer aprender a programar em C. Se este é o impulso que faltava para você começar a rabiscar código no SDCC, compilando-o para seu micro clássico… Considere-se empurrado.