Falamos do Canon Cat em algumas ocasiões aqui no Retrópolis, começando pelo episódio 56B, de 2015. Também falamos sobre emulação e sobre comunicação entre o Canon Cat e um micro (velho) atual. Mas o usuário ClassicHasClass, do blog Old Vintage Computing Research, redigiu um (bem longo) post sobre essa singular máquina.
Para você que não lembra, o Cat foi projetado por Jef Raskin (membro da equipe que projetou o Macintosh, da Apple) como um computador sofisticado centrado no usuário, mas foi rebaixado a máquina de escritório na divisão de máquinas de escrever da Canon, que ficou encarregada de vendê-lo. Como a Canon só anunciou o Cat como um “processador de trabalho” para documentos e comunicações mas depois o descartou abruptamente após apenas seis meses, ele nunca teve nenhum pacote de software produzido comercialmente.
E este artigo é repleto de informações interessantes sobre o Cat:
- A linguagem “nativa” do Cat é o Forth (assim como Pascal é a linguagem “nativa” do Lisa e do Mac clássico).
- A versão da ROM que vinha nos Canon Cat era a 1.74, mas existem os códigos-fonte e binários para ROMs na versão 2.40. E já vai sabendo que, caso você queira rodar no emulador, nem tudo funciona.
- A interface do Canon Cat é toda orientada a teclado. Mas não há teclas de função, mouse, joystick ou mesmo as teclas de cursor!
- O Cat não tem um sistema de arquivos, nem mesmo o conceito de um. Em vez disso, todos os documentos são incluídos em um grande espaço de trabalho. E cada espaço de trabalho é identificado por uma chave exclusiva armazenada em seu disco correspondente (assim você não sobrepõe um disco com o espaço de trabalho errado, e assim o texto que você escreveu não será perdido – isto é, a menos que você o force a fazer isso). Se o disco e a memória permitirem, você pode criar quantos documentos quiser com a tecla DOCUMENT/PAGE (normalmente Page Down).
- O Cat sempre tem uma capacidade de memória menor do que a capacidade de armazenamento da unidade de disquete, portanto, um disco sempre equivale a um espaço de trabalho.
- Eu já disse que a linguagem dele é Forth, né? Na verdade, a linguagem é tForth, uma implementação que usa tokens (o “t”) em vez de endereços diretos para cada palavra em uma definição de palavra. E usando essa linguagem (que é meio complicadinha), o código pode ser consideravelmente mais compacto porque os tokens não precisam necessariamente ter o tamanho de um endereço inteiro (os tokens Cat são do tamanho de um byte, embora muitas vezes sejam considerados grupos do tamanho de uma palavra) e o código a que fazem referência pode ser movido e compactado. Isso era importante, pois o Cat vinha com 256K de memória, o que não era muito, mesmo em meados da década de 1980, e tinha de ser compartilhado com o circuito de vídeo.
E no fim, o autor mostra o que pode ser o primeiro demo de um Canon Cat. Não, não é o Bad Apple… mas bem que poderia ser!
Se você tem curiosidade em conhecer mais dessa máquina pitoresca, rara e cara… recomendo a leitura.