Nova beta com armazenamento persistente e melhorias em drivers

A equipe por trás do Nextor liberou a segunda versão beta do kernel Nextor 3.0. Entre as mudanças mais relevantes está um novo mecanismo de armazenamento persistente que permite gravar até 512 bytes de dados de inicialização em um arquivo oculto chamado _NEXTOR.PSF, localizado no diretório raiz da primeira partição FAT12/16 do controlador principal. Esse arquivo é lido e aplicado antes mesmo da inicialização dos drivers, e drivers podem marcar dispositivos como “não adequados para armazenamento persistente”.

Atualmente o arquivo _NEXTOR.PSF armazena chaves de boot para inversão de teclas (configuráveis via novo comando CALL BOOTKEYS e pela ferramenta atualizada NEXBOOT.COM), parâmetros de tela como largura, cor, ajuste, exibição de teclas de função e tom do beep (via CALL SETSCREEN), além dos dados persistentes de emulação de disco, que deixaram de ser guardados na tabela de partições.

Compatibilidade e controle de firmware

Algumas máquinas com firmware embutido — como Sony HB-11, National FS-4600F e a série Panasonic FS-A1 — podem ter esse firmware interferindo no processo de boot do Nextor. A beta 2 introduz a opção de pular esse firmware pressionando a tecla 7 durante o boot. Essa inversão pode também ser configurada de forma permanente usando o mecanismo de armazenamento persistente. A contribuição dessa funcionalidade foi feita por Uniabis.

Novas opções de emulação e inicialização

Foram adicionadas flags para o modo de emulação de disco que permitem forçar a taxa de atualização da tela para 50Hz ou 60Hz mantendo SHIFT ou CTRL pressionados ao iniciar (útil quando alguns jogos não apresentam memória visível) ou iniciar em modo R800.

Além disso, o kernel agora suporta a procura por um arquivo AUTOEXEC.BTM. Se encontrado, o NEXTOR.SYS o repassa ao COMMAND3.COM para execução; caso contrário, há fallback para o clássico AUTOEXEC.BAT. Arquivos .BTM permitem estruturas de controle, possibilitando scripts de inicialização mais complexos.

Comandos e usabilidade do COMMAND3.COM

A função INKEY, disponível em BTM e presente desde o COMMAND2.COM 2.40, foi estendida com dois modos: um que não espera por tecla se nenhuma estiver disponível e outro que retorna o código hexadecimal da tecla pressionada. Em conjunto com o suporte a AUTOEXEC.BTM, isso facilita criar menus de boot que só aparecem quando uma tecla é pressionada.

Foi introduzida a variável de ambiente BUFINSERT. Quando ativada (ON), os prompts de entrada do COMMAND3.COM e as leituras via _BUFIN começam no modo de inserção em vez do modo sobrescrever; o comportamento ainda pode ser alternado com a tecla INS.

As listagens de diretório (comando DIR do COMMAND3.COM e a ferramenta XDIR) passam a exibir tamanhos em KB por padrão para arquivos de 10 KB ou mais, com esse limiar configurável pela variável DIRK. O novo comando DIRB mostra sempre os tamanhos em bytes.

Também foi acrescentado o comando interno YENSLASH, que permite renderizar o caractere yen como barra invertida em computadores japoneses (execute YENSLASH ON).

Drivers, correções e ferramenta de flashing

Foi necessário que drivers implementassem uma nova consulta “read sectors before initialization” para o funcionamento do armazenamento persistente; os drivers Sunrise IDE e MegaFlashROM SCC+ SD já implementam essa consulta e foram atualizados com base no kernel beta 2. Uniabis e Grauw colaboraram com otimizações e correções diversas.

Como bônus, o MegaFlashROM SCC+ SD ganhou a ferramenta MFRFLASH.COM para gravar ROMs dentro do próprio cartucho. O utilitário carrega todo o arquivo a ser gravado na (V)RAM e realiza a gravação com interrupções desativadas, o que permite atualizar a ROM mesmo quando o cartridge é o controlador principal do Nextor.

Documentação, arquivos do kernel e lista de drivers compatíveis estão disponíveis nas páginas oficiais de release e repositórios relacionados ao Nextor 3.

Fonte: https://msx.org/news/en/nextor-30-beta-2-released

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *