Interface entre o Patinho Feio e o sintetizador musical do prof. Guido Stolfi

Em junho de 2016, o professor Guido Stolfi extraiu os dados de uma pequena coleção de fitas perfuradas que ele guarda há décadas em uma caixa de sapato. Essas fitas continham código-fonte, código-objeto e estruturas de dados de um experimento que foi desenvolvido na metade da década de 70 na Escola Politécnica da Universidade de São Paulo. O professor Guido projetou e construiu um sintetizador musical eletrônico e o interfaceou ao computador Patinho Feio.

Já mencionei um pouco dessa história na postagem sobre o meu trabalho de resgate histórico do computador Patinho Feio aqui:

Mas essa nova postagem tem o objetivo de documentar um estudo mais específico sobre esse programa que rodava no Pato e controlava o sintetizador para tocar músicas. Eu gostaria de entender melhor o funcionamento do programa de modo a tentar replicar o experimento por meio do desenvolvimento de uma simulação do instrumento musical junto com um emulador do computador.

Dentre as diversas fitas lidas, esta é a que contém o código-fonte do programa que toca músicas lidas de uma fita de partitura:

Uma dificuldade é o fato das variáveis do programa usarem poucas letras e, portanto, serem muito pouco auto-descritivas. Para desvendar o significado desse programa terei que reler o manual do montador (assembler) que descreve o comportamento de cada uma das instruções:

Em particular, terei que rever também como funcionam as operações com dispositivos periféricos, que também são descritas nesse manual. Existem dois periféricos usados nesse programa:
(1) uma leitora de fitas para carregar dados da partitura
(2) o próprio sintetizador que recebe os comandos de quais notas tocar.

Por enquanto vou apenas deixar esses links aqui para caso mais alguém se interesse em tentar compreender o protocolo de comunicação com o sintetizador. Assim que eu descobrir mais coisas, pretendo postar atualizações por aqui.

Happy Hacking,
Felipe “Juca” Sanches

Bom dia Felipe, estou elaborado um algoritmo do Patinho Feio em Python, relembrando aqui meus conhecimentos em arquitetura de computadores da Engenharia Eletrônica além de aprender um pouco mais de Python.
Aqui no arquivo “Montador do Patinho Feio”, na página 16.11 cita um outro documento chamado “Manual de Operação do Patinho Feio”, você tem também este documento com você digitalizado?

1 Curtida