Emule Sound Blaster e OPL3 em DOS puro usando placas de som modernas baseadas em PCI (placa integrada e adicional).
O código-fonte do MPXPlay é usado para suportar as seguintes placas/chips de som.
Habilitado e funcionando:
sc_ich
: Intel ICH/nForce/SIS 7012sc_inthd
: Áudio de alta definição Intel (HDA)sc_via82
: VIA VT82C686, VT8233/37sc_sbliv
: SB ao vivo! / Audigiasc_sbl24
: SB Audigy LS (CA0106)sc_es1371
: Ensoniq ES1371/1373sc_cmi
: C-Media CMI8338/8738Suporte compilado, mas não testado:
sc_via82
: VIA VT8235O código-fonte existe, mas "ainda não funciona":
sc_sbxfi
: X-Fi criativo EMU20KXDrivers Linux adicionais portados por jiyunomegami
Para gerenciamento de memória, use:
JEMMEX
: fornece HIMEM + EMMHIMEMX
e JEMM386
: Separe HIMEM + EMM Em ambos os casos, use JLOAD
(da distribuição Jemm) para carregar QPIEMU.DLL
antes de iniciar SBEMU
, para que o suporte ao modo real seja habilitado. Se você não carregar JEMM+QPIEMU (ou QEMM), apenas aplicativos em modo protegido serão suportados.
Se você quiser usar o SBEMU sem compilá-lo, leia README.txt para configuração e uma lista de opções de linha de comando.
macOS, Linux e Windows são suportados. Para Windows, considere usar binários WSL2 + Linux. Se você precisa depurar/testar frequentemente em seu DOS local, existe um makefile.dos para você.
Scripts para construir um conjunto de ferramentas GCC recente para DJGPP estão disponíveis aqui:
Também existem versões pré-construídas para o conjunto de ferramentas se você não quiser construir o DJGPP sozinho. A versão atual (outubro de 2023) usa o GCC 12.2.0, mas no futuro versões mais recentes do GCC poderão estar disponíveis:
Isso pressupõe uma instalação Debian/Ubuntu. Se você estiver usando qualquer outra distribuição, presumo que você conheça o caminho e possa traduzir essas instruções para sua distribuição específica.
Para obter make
e outras ferramentas, é mais fácil instalar ferramentas de compilação de host:
sudo apt install -y build-essential
No MacOS, instale as ferramentas de linha de comando do Xcode, que devem fornecer make
e outros utilitários de host.
Se você está planejando construir o DJGPP a partir do código-fonte, algumas ferramentas de construção adicionais serão necessárias. Consulte o arquivo README build-djgpp
para obter detalhes.
Com o aumento do código-fonte, não é recomendado compilar a partir do DOS. Além disso, a compilação DJGPP DOS não usa -O2 e -flto, porque a versão GCC é antiga e apresenta erros com -O2.
Se for necessário construir o projeto em DOS, baixe o DJGPP original aqui: https://www.delorie.com/djgpp/zip-picker.html Ele também possui o utilitário make.
MS-DOS,OpenDOS,PC-DOS
em Which operating system will you be using?
suspenso,C++
em Which programming languages will you be using?
Tell me which files I need
DOSLFN também é necessário para executar a compilação. O ambiente PATH precisa ser definido corretamente antes da construção. set PATH=%PATH%;C:DJGPPBIN
é recomendado para ser colocado em autoexec.bat, e então
make -f makefile.dos
Você também pode usar o RHIDE para realizar edição e construção em tempo real: adicione SET DJGPP=C:DJGPPDJGPP.ENV
a autoexec.bat e então execute rhide
na raiz do projeto via linha de comando. Use Alt+C
para ativar o menu Compile
e selecione Make
para construção de dependência ou Build all
para uma construção limpa.
A pasta bin
do seu conjunto de ferramentas DJGPP precisa estar em seu $PATH
, para que o seguinte comando funcione e gere sua versão DJGPP GCC:
i586-pc-msdosdjgpp-gcc --version
Se isso funcionar, construir o projeto é tão simples quanto:
make
Como você está em uma máquina moderna com CPUs multi-core, faça uma construção paralela, que é mais rápida, por exemplo, para uma CPU quad-core, use 8 processos paralelos para acelerar a construção:
make -j8
Após a conclusão da compilação, você encontrará o resultado da compilação em uma pasta chamada output
, ou seja, output/sbemu.exe
.
O suporte de áudio de CD no DOS requer duas partes:
MSCDEX
(ou SHSUCDX
)Para a primeira parte, você precisa ter uma unidade de CD-ROM com saída de áudio analógica e um driver de CD-ROM compatível com MSCDEX configurado.
A segunda parte (controle de volume) é cuidada pela SBEMU na inicialização.
Para ajustar o volume do CD-Áudio (por padrão é 100% do volume), você pode usar qualquer programa compatível com Sound Blaster, como "SBMIX", já que o SBEMU emula e encaminha as configurações do mixer de CD-Áudio.
Não se esqueça de que, para realmente ouvir alguma coisa, você precisa conectar um cabo de áudio analógico da unidade de CD-ROM ao conector de CD-IN de 4 pinos da placa de som (ou placa-mãe para som integrado).
Você pode configurar o SBEMU para enviar suas mensagens de depuração para a porta serial em vez do console. Isso também funciona em segundo plano quando os jogos estão em tela inteira e, portanto, é muito útil para depuração.
Para construir o SBEMU com saída de depuração, use:
make DEBUG=1
Em seguida, inicie o SBEMU com este comando para saída de depuração (9600, 8N1) em COM1 (use /DBG2
para COM2):
sbemu /DBG1
Para desabilitar a saída de depuração da porta serial em tempo de execução, use:
sbemu /DBG0
A saída de depuração serial está desabilitada por padrão.