Desafio: inicializar o IBM PC DOS
Lendo a lista de desenvolvimento do FreeDOS, achei este link:
IBM ServerGuide Scripting Toolkit, DOS Edition, version 1.3.07
Tem uma cópia do IBM PC DOS 7.1, um DOS moderno, com suporte a LBA e
FAT32 (ufa!). Como inicializá-lo, criando o disco a partir de outro sistema,
sem ter os códigos de inicialização à mão no ms-sys
? Para mim, o
jeito mais simples é usando o GRUB4DOS[1], que reconhece, através
do comando chainloader
, o arquivo IBMBIO.COM
e
aplica a
mágica necessária
para carregá-lo.
A partir de qualquer Linux atual:
wget https://github.com/chenall/grub4dos/releases/download/0.4.6a/grub4dos-0.4.6a-2021-12-17.7z wget ftp://ftp.software.ibm.com/systems/support/system_x/ibm_sw_sgtk_1_3_07_anyos_anycpu.zip 7za x grub4dos-0.4.6a-2021-12-17.7z unzip ibm_sw_sgtk_1_3_07_anyos_anycpu.zip echo ',,0c,*' | sfdisk --lock=yes --wipe=always --wipe-partitions=always --label=dos /dev/sdx mkfs.fat -F 32 -n PCDOS /dev/sdx1 mount /dev/sdx1 /mnt cp -pv grub4dos-0.4.6a/grldr /mnt cp -pv sgdeploy/sgtk/DOS/{IBMBIO.COM,IBMDOS.COM,COMMAND.COM} /mnt echo -e 'timeout 0\ntitle PC DOS\nchainloader /IBMBIO.COM' > /mnt/menu.lst umount /mnt dd if=grub4dos-0.4.6a/grldr.mbr of=/dev/sdx bs=440 count=1 conv=fsync,notrunc dd if=grub4dos-0.4.6a/grldr.mbr of=/dev/sdx bs=512 skip=1 seek=1 conv=fsync,notrunc
(única partição em FAT32)
Copiei apenas o mínimo necessário: IBMBIO.COM
,
IBMDOS.COM
e COMMAND.COM
. Tem o resto dentro de
sgdeploy/sgtk/DOS/
.
Qual utilidade disso hoje em dia? Quase nenhuma. Fica pela diversão mesmo… 🧐
[1] A cada nova compilação do GRUB4DOS, a anterior é excluída. Havendo nova versão, adapte os comandos.
Comentários
Postar um comentário