O projeto Nextor, que oferece compatibilidade com MSX-DOS e adapta o sistema a hardware moderno, recebeu sua maior revisão em anos: a primeira beta do Nextor 3.0 foi disponibilizada após quase quatro anos de desenvolvimento. O projeto começou em 2008, com a primeira versão publicada em 2011, e a versão anterior estável citada foi a 2.1.4, de novembro de 2025.
Arquitetura de drivers e compatibilidade
Uma das mudanças centrais é a nova estrutura de drivers. Entre as alterações técnicas estão a remoção de LUNs (Logical Unit Numbers), a eliminação de strings hardcoded e o aumento do número máximo de dispositivos endereçáveis para 255. O conceito de “drive-based drivers” foi abandonado, e agora mensagens de erro diferenciam quando um dispositivo não existe e quando um dispositivo removível está offline.
Drivers existentes para Nextor 2 precisarão de ajustes para funcionar no Nextor 3, mas a equipe prevê que, na maioria dos casos, uma camada de compatibilidade será suficiente. Há um guia de migração disponível para auxiliar desenvolvedores na conversão.
Módulos de driver carregáveis em RAM
Diferente do Nextor 2, que exigia que drivers fossem combinados ao kernel em ROM, o Nextor 3 permite distribuir drivers como arquivos que podem ser carregados em um segmento de RAM e descarregados posteriormente. Esses drivers em RAM têm paridade de funcionalidades com os em ROM, incluindo gerenciamento de dispositivos de armazenamento (partições e FDISK), suporte a comandos CALL, hook estendido para BIOS e hook de interrupção de timer.
Para esclarecer, carregar um driver em RAM significa que o código do driver é mantido temporariamente na memória do sistema, permitindo atualização ou remoção sem regravar uma ROM.
Melhor suporte a disquetes e nova experiência de boot
Nextor 3 recupera funcionalidades voltadas a disquetes: drivers podem sinalizar um dispositivo como unidade de disquete, o sistema passa a tratá‑los sem gerenciamento de partições, com suporte a formatação e um “ghost drive” fornecido nativamente (antes, o driver precisava implementar isso).
O processo de boot ganhou um menu acessível com a tecla N, onde o usuário pode selecionar quais teclas devem ser consideradas pressionadas (inclusive chaves de desabilitar slot) antes de prosseguir. Há também uma tecla de boot específica para inicializar a ROM de Kanji, permitindo executar KMODE.COM já no arranque sem necessidade de chamadas adicionais do BASIC.
Outros destaques técnicos
Nextor 3 atribui uma unidade a cada partição ativa encontrada em cada dispositivo ao iniciar, e também reserva uma unidade para dispositivos removíveis offline (por exemplo, um slot SD sem cartão). Existem builds “NO_UNDOC” do kernel que evitam o uso de instruções Z80 não documentadas, tornando-os compatíveis com máquinas que usam o processador Z180.
O novo COMMAND3.COM é compatível com COMMAND2.COM 2.44 e traz recursos como o comando SHELLRAM (libera o segmento de RAM ocupado pelo interpretador), um MEM resumido e ferramentas Nextor internas como MAPDRV, DRIVERS e DRVINFO. Caso o COMMAND3.COM não esteja disponível, o NEXTOR.SYS v3 tenta carregar o COMMAND2.COM.
Ferramentas clássicas, SDK e novo modelo de distribuição
Ferramentas clássicas (CHKDSK, UNDEL, DISKCOPY, FIXDISK, KMODE, XCOPY e XDIR) foram reintegradas ao processo de build e atualizadas para compilar com ferramentas modernas (Nestor80 e SDCC). CHKDSK e UNDEL passaram a suportar FAT16, e o XCOPY recebeu novos parâmetros para lidar com arquivos de destino existentes.
Para desenvolvedores, existe um diretório sdk com definições, rotinas e templates, além de uma imagem Docker de desenvolvimento que inclui Nestor80, SDCC, mknexrom, o SDK e arquivos base do kernel já compilados.
Finalmente, o modelo de distribuição de drivers mudou: o repositório principal agora contém apenas o kernel e ferramentas (NEXTOR.SYS e COMMAND3.COM), enquanto drivers passaram a ser mantidos em repositórios dedicados. Repositórios separados já foram criados para Sunrise IDE, MegaFlashROM SCC+ SD e Flashjacks, e há um novo repositório para um driver da unidade de disquete do MSX Turbo-R, incluindo variante carregável em RAM. Alguns desses drivers já foram convertidos para Nextor 3 e as ROMs compatíveis estão disponíveis para download.
Entre a beta e a versão final ainda podem ocorrer ajustes, mas a especificação da nova estrutura de drivers tende a permanecer estável, permitindo que mantenedores comecem a migrar seus drivers.
Fonte: https://www.msx.org/news/en/nextor-30-beta-1-released
