Разработка под дримкаст является моим хобби, но бывают периоды некоторого застоя этого хобби, и за продолжительность этого периода зачастую забываются как пользоваться теми или иными инструментами. Одним из таких интсрументов является эмулятор lxdream, о настройках которого и пойдет в этой статье.
Здесь будет рассказано как собрать и «затюнить» lxdream под Mac OS, т.к. именно на этой системе и возникали проблемы с ним.Для сборки lxdream на Mac OS понадобиться настроить все зависимости, коих немало. Самой большой сложностью является библиотека libisofs. Ее нет в репозиториях пакетного менеджера brew (им я и буду пользоваться для установки недостающих пакетов), поэтому придется собрать и установить ее вручную. Сперва ставим следущие пакеты.

brew install libtool
brew install bzr

последний это распределенная система контроля версий, через которую мы стянем репозиторий libisofs

bzr branch lp:~libburnia-team/libisofs/scdbackup libisofs

заходим в каталог libisofs и правим через текстовый редактор файл bootstrap, т.к. на Mac OS команда libtoolize существует как glibtoolize. Поэтому меняем слово libtoolize на glibtoolize

cd libisofs
nano bootstrap
libtoolize --copy --force -> glibtoolize --copy --force 

Уже все готово для сборки, но есть маленькая пакость с компиляцией, возникнет ошибке, на то, что не найдено объявление для типа ssize_t в хидере aaip_0_2.h. Поэтому надо включить файл, где объявлен этот тип в этом заголовочном файле. Открываем на редактирование этот файл и добавляем строчку инклюда

nano libisofs/aaip_0_2.h

#ifndef Aaip_h_is_includeD
#define Aaip_h_is_includeD yes

#include <sys/types.h>

Теперь можем собрать и установить библиотеку

./configure
make
make install

Приступаем к сборке lxdream. Доустановим недостающие зависимости

brew install hg
brew install pkg-config
brew install glib
brew install libpng

Далее, стянем с меркуриала сорцы

hg clone href="http://www.lxdream.org/hg/lxdream"

И соберем их

cd lxdream 
./configure
make

Теперь в каталоге lxdream появится каталог приложения lxdream
***
Чтобы эмулятор не сыпал в логи ворнинг использования «неправильного» биоса, то ему требуется подсунуть биос 1_01d_01.bios
***
Одной из полезных фич, которые можно добавить к эмулятору — это поддержка широкоформатности. По умолчанию lxdream выводит картинку в формате 4×3 и изменяя размеры окна эмулятора, соотношение сторон выводимой картинки при этому не меняются. Т.к. в ОС для дрима Dreamshell добавилась поддержка широкоформатности, то было бы неплохо иметь возможность работать в этом режиме и в эмуляторе. Для добавления этой возможности достаточно подправить константу в файле lxdream/src/drivers/video_gl.c с 0.75 (3/4) до 0.5625 (9/16) или 0.625(10/16) и пересобрать эмулятор. В итоге получим эмулятор с необходимым соотношением сторон.