Dei uma revisada nos requisitos do 'bootloader' após várias considerações que estão surgindo durante o desenvolvimento do mesmo. Eis a lista atualizada.
Requisitos de Hardware:
O 'Hardware' do carregador de boot:
- Deverá ser uma interface conectada entre o PC e o MSX;
- Deverá permitir duas possibilidades de conexão ao PC, nas portas Serial e Paralela;
- Deverá possuir uma opção com eeprom serial de 32Kbytes;
- Deverá possuir uma opção com plug P2 estéreo com os sinais I2C;
Requisitos de Software:
O 'Software' do carregador de boot deverá:
- Ser capaz procurar por um picodrive em até 4 sub-endereços I2C da porta A de joystick, totalizando assim 4 possibilidades de 'boot';
- Executar a seguinte sequência de varredura durante o boot (PORTA.SUB_END): A.0; A;1; A.2; A.3;
- Selecionar o primeiro dispositivo encontrado com a sequência de varredura acima;
- Implementar o recarregamento através do comando IPL, a partir do dispositivo selecionado durante o boot, se este ainda estiver presente. Caso contrário deverá fazer uma nova varredura;
- Identificar o conteúdo da e2prom com base no primeiro 'byte' e carregar o conteúdo da e2prom de acordo com o tipo de conteúdo, definido na tabela abaixo:
Identificador | Tipo | Ação |
FEh | Binário | Carrega um arquivo .bin. Os 7 primeiros bytes têm a mesma função que no Basic Disco (endereços Inicial, Final e |
FFh | Basic | Carrega programa BASIC |
41h | Imagem ROM | Carrega uma ROM de 32K entre 4000h a BFFFh |
4Ah | Tic-Tac | (reservado para implementação futura) |
Nenhum comentário:
Postar um comentário