
Emu80 — 2013
Moderator: Pyk
-
- Writer
- Posts: 12
- Joined: 18 Apr 2013 05:19
- Location: 188.255.113.144
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Emu80 — 2013
В моём дебияне таже фигня - чёрное окошко, которое только через killall -9 можно убить...VituZz wrote:У меня в Debian 5 запуск программы порождает только пустое окошко.Pyk wrote:linux-сборки требуют наличия библиотеки libsdl
P.S. Короче виснет оно на вот этой строчке:
if (bWaitSnd) WaitSound();
в функции Resume из файла emuinit.cpp - закомментил её и всё заработало!
P.P.S. Вставил печать в эмуляцию 8080, чтобы узнать последовательность инициализации РК-шного железа:
Code: Select all
Write byte #8A to address #8003
Write byte #00 to address #C001
Write byte #4D to address #C000
Write byte #1D to address #C000
Write byte #99 to address #C000
Write byte #93 to address #C000
Write byte #27 to address #C001
Write byte #80 to address #E008
Write byte #D0 to address #E004
Write byte #76 to address #E004
Write byte #23 to address #E005
Write byte #49 to address #E005
Write byte #A4 to address #E008
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #08 to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #09 to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0A to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0B to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0C to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0D to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0E to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0F to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #10 to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #11 to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #12 to address #C000
Write byte #03 to address #C000
Write byte #00 to address #C001
Write byte #4D to address #C000
Write byte #1D to address #C000
Write byte #99 to address #C000
Write byte #93 to address #C000
Write byte #27 to address #C001
Write byte #80 to address #E008
Write byte #D0 to address #E004
Write byte #76 to address #E004
Write byte #23 to address #E005
Write byte #49 to address #E005
Write byte #A4 to address #E008
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #08 to address #C000
Write byte #03 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #08 to address #C000
Write byte #04 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #09 to address #C000
Write byte #04 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0A to address #C000
Write byte #04 to address #C000
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #80 to address #C001
Write byte #0B to address #C000
Write byte #04 to address #C000
Write byte #00 to address #8002
Write byte #FF to address #A002
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
Write byte #00 to address #8000
Write byte #00 to address #8002
Write byte #06 to address #8003
......
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Maniac
- Posts: 252
- Joined: 21 Jan 2003 04:08
Ну зачем же так кардинально? Просто в эмуляторе время привязано к звуковой подсистеме. Если по какой-то причине не удается инициализировать звуковую подсистему, то да, сейчас эмулятор виснет. По умолчанию в конфиге стоит audiodriver=alsa), но если конфиг не найден, то сейчас SDL по-умолчанию использует pulse audio. Так что либо alsa недоступна, либо (что скорее всего) рядом с бинарником просто совсем нет конфига. Ну, и всегда вместо комментирования можно просто отключить в конфиге звук (audiodriver=none).
P.S. Эмулятор не бросаю, хотя и получается уделять ему меньше времени, чем хотелось бы. Да и на github отправляю далеко не каждый коммит...
P.S. Эмулятор не бросаю, хотя и получается уделять ему меньше времени, чем хотелось бы. Да и на github отправляю далеко не каждый коммит...
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Maniac
- Posts: 252
- Joined: 21 Jan 2003 04:08
Описание конфига в комментах в самом конфиге. Вот только для linux-версии описание было слегка модифицированным, но на каком-то этапе, похоже, потерялось, подправлю.
До отдельного описания руки пока не дошли, к тому же в связи с планируемыми изменениями конфиг тоже немного поменяется.
В общем, отвечу на любые непонятные вопросы. Что касается аудио драйверов, то сейчас вроде бы доступны всего 2 варианта для linux-версии:
auto - автовыбор библиотекой SDL. Почему-то на данный момент SDL в таком случае всегда пытается использовать pulse audio
alsa - собственно alsa. По умолчанию в конфиге оно и стоит
По видеодрайверам в linux-версии: можно указать любые варианты, поддерживаемые SDL, по умолчанию стоит auto (автовыбор библиотекой SDL), обычно работает, даже не помню, что в таком случае выбирается...
Кстати, последние (декабрьские) коммиты не тестировал под Linux. текущий снапшот нормально компилируется и работает?
До отдельного описания руки пока не дошли, к тому же в связи с планируемыми изменениями конфиг тоже немного поменяется.
В общем, отвечу на любые непонятные вопросы. Что касается аудио драйверов, то сейчас вроде бы доступны всего 2 варианта для linux-версии:
auto - автовыбор библиотекой SDL. Почему-то на данный момент SDL в таком случае всегда пытается использовать pulse audio
alsa - собственно alsa. По умолчанию в конфиге оно и стоит
По видеодрайверам в linux-версии: можно указать любые варианты, поддерживаемые SDL, по умолчанию стоит auto (автовыбор библиотекой SDL), обычно работает, даже не помню, что в таком случае выбирается...
Кстати, последние (декабрьские) коммиты не тестировал под Linux. текущий снапшот нормально компилируется и работает?
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Взял emu80.cfg из utils - его содержимое игнорировалось, пока я не сделал из досовского файла юниксовый (переводы строк из одного символа) - можно код чтения универсиализировать, чтобы игнорировал '/r' в конце строк. Поставил alsa - виснуть перестало!
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Maniac
- Posts: 252
- Joined: 21 Jan 2003 04:08
Кажется понял суть проблемы - я просто не положил актуальный emu80.cfg в очевидное место в репозиторий. В архивах с бинарными сборками он присутствует, как и все другие необходимые файлы (шрифты, ПЗУ и т.д.). В принципе, в репозитории пример конфига тоже есть, но он лежит вместе с исходниками утилиты конфигурирования Emu80Cfg.
Посоветуйте, куда бы его лучше поместить в репозиторий, учитывая, что должно быть 2 разных дефолтных конфига - виндовый и линуксовый? Сделать emu80.cfg.win32 и emu80.cfg.linux, а в readme написать, что нужно взять нужный и переименовать? Или так и написать, что, мол, конфиг брать в соответствующей бинарной сборке?
Посоветуйте, куда бы его лучше поместить в репозиторий, учитывая, что должно быть 2 разных дефолтных конфига - виндовый и линуксовый? Сделать emu80.cfg.win32 и emu80.cfg.linux, а в readme написать, что нужно взять нужный и переименовать? Или так и написать, что, мол, конфиг брать в соответствующей бинарной сборке?
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
да - можно с суффиксами win32 и linux положить прямо в src, и линуксовый сделать в UNIX-формате, чтобы проблем с переводом строк небыло
P.S. у тебя эмуляция ВИ53 сразу три канала умеет играть?
P.P.S. а вижу - умеет, например в Апогее все три канала складываются
P.S. у тебя эмуляция ВИ53 сразу три канала умеет играть?
P.P.S. а вижу - умеет, например в Апогее все три канала складываются
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Вот этот набор файлов сильно отличается от того, что уже есть?
P.S. И ещё линк http://emu80.org/files/BAS1A.ZIP надо заменить на http://emu80.org/files/bas1a.zip, а то ошибку 404 выдаёт...
P.P.S. Это я всё про Download страничку http://emu80.org/dl.html
А то этот сайт уже несуществует...Игровые и системные программы для РК-86, написанные Эдуардом Волковым, можно найти на сайте автора: http://intel8080.da.ru.
P.S. И ещё линк http://emu80.org/files/BAS1A.ZIP надо заменить на http://emu80.org/files/bas1a.zip, а то ошибку 404 выдаёт...
P.P.S. Это я всё про Download страничку http://emu80.org/dl.html
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Maniac
- Posts: 252
- Joined: 21 Jan 2003 04:08
Он переехал на http://rk86.shatu.ru/Shaos wrote:А то этот сайт уже несуществует...Игровые и системные программы для РК-86, написанные Эдуардом Волковым, можно найти на сайте автора: http://intel8080.da.ru.
В разделе Download я поправил, а здесь пропустил, поправлю.
Спасибо, тоже поправлю. Сколько лет уже так, странно, что никто не заметил и не написал раньшеShaos wrote:P.S. И ещё линк http://emu80.org/files/BAS1A.ZIP надо заменить на http://emu80.org/files/bas1a.zip, а то ошибку 404 выдаёт...

А вообще сайт я тоже хочу обновить, но руки еще не дошли... Пока занимаюсь "переливанием из пустого в порожнее" - переписываю ассемблерный код и меняю структуру приложения. В принципе, уже скоро ядро будет переписано, что позволит добавлять новые фичи, даже не избавившись еще полностью от ассемблера. Ну а появятся новые фичи - можно будет и новую версию выпустить, и сайт обновить...
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Может ты раньше на винде хостился? На микрософтовском сервере это бы работало...Pyk wrote: Спасибо, тоже поправлю. Сколько лет уже так, странно, что никто не заметил и не написал раньше
P.S. Ещё меня интересует по какой схеме у тебя цвет в РК-86 эмулится? Их вроде несколько было в своё время выдумано...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Maniac
- Posts: 252
- Joined: 21 Jan 2003 04:08
Да, был период, когда хостился на винде, но было это где-то в 2006-2007 гг. Неужели с тех пор за 7 лет никто так и не заметил?
Цвет эмулируется вот по этой схеме («Самоцвет»):
http://rk86.shatu.ru/rk-color.htm
Цвет эмулируется вот по этой схеме («Самоцвет»):
http://rk86.shatu.ru/rk-color.htm
-
- Admin
- Posts: 24036
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
OK - спасибо!Pyk wrote:Да, был период, когда хостился на винде, но было это где-то в 2006-2007 гг. Неужели с тех пор за 7 лет никто так и не заметил?
Цвет эмулируется вот по этой схеме («Самоцвет»):
http://rk86.shatu.ru/rk-color.htm
Я тут за главного - если что шлите мыло на me собака shaos точка net