Tenho tentado escrever um artigo sobre isto há bastante tempo. Seguem algumas dicas de outras pessoas:
Dan Newcombe (newcombe@aa.csc.peachnet.edu) comenta que:
Aqui está uma idéia (não testada) que é capaz de executar um comando DOS em linha de comando (ou escolha do menu, etc) sem modificar o emulador real. [ Presume-se que a sua partição DOS já está montada sob Linux.
Suponha que se queira executar wp60.exe com o parâmetro
textbfwp60 d:doc
paper.txt".
Pode-se executar o comando
textbfdosrun wp60 d:doc
teste.txt". textbfdosrun" é um programa de ambiente de trabalho que poderia:
a) editar/modificar/recriar o arquivo DOS autoexec.bat da partição DOS;
b) simplesmente executar o DOSEMU (P.exemplo textbfdos -C
/dev/null".
A etapa a) iria de certo modo guardar tudo que normalmente se gostaria de se ter em autoexec.bat (por exemplo mouse.com) e a última linha seria textbfwp60 d:
doc
teste.txt".
No DOSEMU, de antemão, deve-se modificar o arquivo config.sys (localizado na hdimage) por isso deve-se
1) usar o emufs para acessar a partição DOS como D:,
2) configurar textbfCOMPSEC=D:, e
3) configurar textbfshell=c:
command.com /p".
A idéia é ao se carregar o emulador DOS, recriar um autoexec.bat que é específico para aquela sessão. O que o torna específico é que a última linha executará o programa que se quer. As modificações na hdimage indicam ao emulador/DOS que se quer usar D:, a qual será a partição DOS.
Caso não se use o hdimage nem o acesso direto ao sistema de arquivos DOS na inicialização do DOSEMU, então esta orientação funcionará, e não se deverá acessar a hdimage.
Daniel T. Schwager (danny@dragon.s.bawue.de) relata que:
Podem ser usados diferentes arquivos de configuração DOSEMU (e imagens diferentes hd-boot com autoexec.bat diferentes), acionando o DOSEMU da seguinte forma:
$ dos -F programa_exe_DOSEMU.conf
-----------
Dietmar Braun (braun@math20.mathematik.uni-bielefeld.de) relata o seguinte:
Isto não é problema ao se usar o redirecionador do DOSEMU. É possível redirecionar um dispositivo para um caminho Linux fornecido por uma variável de ambiente.
Para tanto pode-se usar um programa chamado textbfDOS" com um conteúdo similar a:
mkdir /tmp/dos.$$ DOSTMP=/tmp/dos.$$; export DOSTMP
e depois com um pequeno truque obter-se:
echo $* > $DOSTMP/startup.bat
o que realmente funciona, cria arquivos de inicialização e as ligações e assim por diante neste diretório, e então inicializa o DOSEMU. Dentro do dispositivo C: , o arquivo textbfautoexec.bat" é redirecionado da hdimage para este diretório temporário, que tem ligações para $HOME e $PWD.
Assim é possível ver nomes de arquivos reduzidos para o formato 8.3, através do comando textbfDOS dir" e assim ter-se uma lista do diretório atual. Tem-se assim um ambiente multiusuário DOS completo (sem usar nenhuma partição DOS e redirecionando o Linux faz com que as permissões dos usuários sejam resguardadas) e multitarefas, sendo que as sessões DOSEMU são completamente independentes. Fiz isso para poder usar um controlador de dispositivos DOS para uma impressora local. O programa printcap df é na verdade um programa DOS. Assim é possível transformar executáveis DOS em filtros Ipr.