Basilisk II nasceu da vontade de executar o Mac clássico em ambientes que não eram originalmente projetados para isso. O projeto evoluiu de experimentos em Amiga e BeBox até ganhar versões para Windows, Mac OS X e Unix, combinando execução nativa em máquinas 68k com emulação quando necessário.
As origens: ShapeShifter e a afinidade 68k
O ponto de partida foi a coincidência técnica entre Amiga e Macintosh: ambos usavam CPUs da família Motorola 68000. Em ShapeShifter, Christian Bauer aproveitou isso para fazer o Mac OS interagir com o AmigaOS, uma abordagem que ele define como paravirtualização — o processador real executava o código do convidado enquanto partes do ambiente eram adaptadas para o sistema hospedeiro. Essa estratégia explicava a relativa rapidez do sistema, diferente da emulação completa que precisa modelar todo o hardware.
Do Amiga ao BeBox — e a chegada do nome Basilisk
Bauer deixou o Amiga como estação principal e passou a usar uma BeBox, atraído por sua arquitetura com múltiplos processadores e pelo sistema BeOS. Em outubro de 1996 ele anunciou o Basilisk, um ambiente Mac Classic para a BeBox — uma etapa intermediária entre ShapeShifter e o Basilisk II que merece distinção na cronologia.
Primeira alpha e projeto portátil (janeiro de 1999)
O changelog do projeto registra a primeira alpha do Basilisk II em 23 de janeiro de 1999; o projeto apareceu no site de Bauer em 14 de março daquele ano. Diferentemente do ShapeShifter, escrito em assembly, Basilisk II foi reescrito em C com arquitetura que permitia execução nativa do código 68k em hosts compatíveis ou o uso de uma CPU em software quando o host não tinha um processador da família 68k.
UAE, JIT e expansão para novos hosts
Para evitar reescrever a complexa emulação do conjunto de instruções 68k, Bauer reaproveitou o trabalho do projeto UAE de Bernd Schmidt. Isso poupou um esforço enorme — instruções, exceções e muitos detalhes exigem testes e otimizações. Entre 2000 e 2002 o projeto recebeu ports para Windows NT (créditos a Lauri Pesonen) e Mac OS X (Nigel Pearson), além de trabalho em recompilação dinâmica (JIT) por Gwenolé Beauchesne para melhorar desempenho em x86.
Funcionalidade prática e manutenção contínua
Além do núcleo CPU, recursos práticos foram importantes: suporte a formatos de tela, serial, Ethernet e, crucialmente, a possibilidade de compartilhar diretórios do host com o ambiente Mac, permitindo que aplicativos antigos acessassem arquivos “reais” fora de imagens de disco. Correções menores também são parte da história: por exemplo, Doug Brown descreveu o conserto de um bug que deixava uma janela preta no Windows — um tipo de problema que surge conforme sistemas, compiladores e bibliotecas gráficas evoluem.
Forks e arranjos de compilação mais recentes, como o macemu por kanjitalk755, documentam adaptações modernas (SDL2, builds para x86-64 e arm64, e distinções entre configurações com e sem JIT). O Basilisk II continua sendo um ambiente Macintosh 68k; projetos relacionados como SheepShaver atendem ao PowerPC, uma escolha distinta.
Para obter as versões atuais e instruções de compilação e uso, a comunidade em torno do emulador e recursos como E-Maculation são apontados como referência para interessados.
Fonte: Retro Replay
