ЭМУЛЯТОРЫ БК
Эмуляторы под DOS.
- Эмулятор БК0010 и БК0011M Сергея Камнева. Очень маленький и шустрый эмулятор. Размер кода всего около 8К. Видимо, это самый маленький эмулятор БК. Быстродействие реальной БК достигается на 386SX33. В документации к эмулятору пишут, что работает даже на 286-й с EGA монитором. Правда, сам я его юзал как минимум на 486DX2-80 с SVGA монитором и могу сказать что на таком компьютере он существенно быстрее реальной БК11М. Поддерживает черно-белый и цветной режимы, палитры БК11, дисковод, образы дисков, системный таймер, принтер, мышь. К сожалению не эмулируется джойстик. По крайней мере в имеющейся у меня версии 1.21b не эмулируется. Это существенный недостаток так как во многие БК-шные игры на клавиатуре не очень-то поиграеш. А игры это, насколько я понимаю, основное для чего можно использовать эмуляторы БК в настоящее время. Кроме того нет поддержки музыкального сопроцессора, но это не так важно. Возможно, в более свежих версиях эмулятора эти недостатки исправлены (автор планировал это сделать). Скачать этот эмулятор можно, например, здесь.
- Эмулятор БК0010 Дмитрия Тюрева (TD corp. на БК0010, Magic Bytes Software на БК0011М). Почти такой же маленький и шустрый эмулятор как у С.Камнева. Размер исполняемого файла всего на 469 байт больше чем эмулятора Камнева, а по скорости они сравнимы. Хотя, конечно, не совсем корректно сравнивать эти эмуляторы: один эмулирует только БК0010, а другой БК0010 и БК0011М. Эмулятор Тюрева поддерживает черно-белый и цветной режимы экрана, системный таймер, джойстик. Ни дисковводы ни образы дисков не поддерживаются (по крайней мере в имеющейся у меня версии эмулятора). Работа с файлами осуществляется весьма оригинально (ни в одном другом эмуляторе я такого не видел). Файлы БК (*.BK-длина имени 4 символа) хранятся на винчестере или дискете в том же каталоге что и эмулятор. Там же имеется файл bk_files.dat с данными об этих файлах. Каждая строка в файле bk_files.dat содержит информацию БКшном файле в следующем виде: 4 символа - PC-шное имя файла, пробел, 16 символов - БКшное имя файла, пробел, 6 цифр - восьмеричный адрес загрузки файла. При добавлении в каталог нового БКшного файла необходимо внести информацию о нем в файл bk_files.dat. Таким образом, работа с файлами становится несколько геморной, но зато можно загружать файлы с именами длиной 16 символов. Скачать этот эмулятор можно здесь.
- Эмулятор БК0010 и БК0011M Алексея Савельева. Лучший эмулятор БК под DOS
(это не только мое мнение). Не зря автор работал над его совершенствованием
более 10 лет! Эмулятор осуществляет полную эмуляцию БК-0011М стандартной
поставки (с Бейсиком в ПЗУ). Работает 50 Mhz таймер, системный таймер,
эмулируются оба экрана, при наличии звуковой платы Sound Blaster эмулируется
музыкальный сопроцессор типа General Instruments AY-3-8910(12) / Yamaha 2149F.
Достаточно близко к реальной БК эмулируется контроллер дисковода.
Поддерживаются 25 БК-шных устройств, которые могут физически ссылатся на
реальный PC-дисковод или на IMAGE-файл с образом бк-шной дискеты. Эмулируется
параллельный порт (рег. 177714). По чтению возвращается состояние
keypad-джойстика и/или "мыши". По записи эмулируется одно из трех возможных
внешних устройств (задается в конфигурационном файле) - музыкальный
сопроцессор AY-3-8910, Covox (8-разрядный ЦАП) или LPT-Covox.AY. С Covox-м
правда есть проблемы: на моем SB Live Player 5.1 он отказывается звучать. В
документации к эмулятору упоминалось о проблемах с эмуляцией Covox-а на SB
Live. Но ввиду отсутствия у автора такой звуковой карты проблема так и не была
решена. С эмуляцией AY-3-8910 все обстоит намного лучше, хотя она тоже не
идеальна. Но идеального, как известно ничего нет. Самый существенный
недостаток этого эмулятора - то что он под DOS. Соответственно, чем новее ваше "железо"
тем проблематичнее будет заставить работать этот эмулятор. Всё это в конце концов может привести к тому что
запустить эмулятор Савельева можно будет разве что из под эмулятора DOS, да и то не факт. Впрочем, эта проблема
касается всех DOS-овских программ работающих с железом на низком уровне.
Уже сейчас, к сожалению, есть большие проблемы при работе на TFT-мониторах, что отмечается в документации к эмулятору.
Кстати, следует отметить, что документация к эмулятору очень подробная. Ни в одном другом эмуляторе подобной
документации нет. Ресурсов эмулятор Савельева требует, конечно, поболее
Камневского эмулятора, но тоже весьма скромно по теперешним временам. Для его
нормальной работы достаточно, например такой конфигурации: 80486DX4-100,
Cirrus Logic/S3/Tseng VGA, Sound Blaster Pro, 4/8 MB RAM. А в принципе он
может работать и на 386 процессоре (где его только найдешь теперь
).
Последнюю версию (6.04) эмулятора Савельева можно скачать
здесь.
Причём судя по тому что тут написано эта версия действительно последняя
.
- ELESIM. Эмулятор БК0011М (автор - Алексей Мельников, Caroline Software).
А.Савельев о нем хорошо отзывался ("единственный достойный конкурент"). Правда, этому хорошему отзыву
предшествовало длинное описание самых разнообразных "багов". Так что не очень понятно что же именно
там хорошего
. Разве что эмуляция экрана, которую Савельев позаимствовал для своего эмулятора.
Демки для БК0011М при этом может и стали лучше смотреться, но вот все остальное... Я про этот ELESIM могу сказать
только то, что я его заставить работать так и не смог. После запуска
возникает черный экран и всё... Правда при нажати на Ctrl+Esc запускается
отладчик (монитор при этом в текстовом режиме). И вообще есть сильное
подозрение, что автор этот эмулятор писал исключительно для себя, но кто-то у
него его спёр
. Об этом говорит, например, полное отсутствие какой-либо
документации к этому эмулятору. Скачать ELESIM можно здесь.
Эмуляторы под WINDOWS.
- Эмулятор БК0010 от aleXXoft. Видимо, это первый эмулятор БК под WINDOWS. Эмулирует БК0010 в цветном и монохромном режиме. Работает только в полном экране, разрешение которого может изменяется независимо от установленного в WINDOWS. Джойстик, дисковод и образы дисков не эмулируется. Скачать этот эмулятор можно здесь.
- Эмулятор БК0010 Юрия Калмыкова. Поддерживает следующие конфигурации
БК0010:
БК 0010(01) + стандартный БЕЙСИК «Вильнюс 1986»,
БК 0010(01) + блок МСТД (Фокал и подпрограммы тестов),
БК 0010(01) + блок дополнительной памяти 32Кб,
БК 0010(01) + блок КНГМД с дополнительной памятью 16Кб.
Эмулируется звук динамика БК через звуковую плату, джойстик, образы дисков БК. Поддерживается черно-белый и цветной режимы экрана, возможна работа как в окне так и в полном экране. Кроме того, из всех виденных мной эмуляторов БК под WINDOWS этот эмулятор имеет наилучшую документацию. Вообще (IMHO), на данный момент, это самый приличный эмулятор БК0010 под WINDOWS. Скачать эмулятор можно здесь (ver. 2.6). или тут (ver. 3.0). А здесь лежат исходники эмулятора (ver. 3.0). На мой взгляд, лучше использовать ver. 2.6 так как 3.0 пока что весьма глючная. - Эмулятор БК0010 Андрея Грабоветса (Andrew Grabovets). Поддерживается
черно-белый и цветной режимы экрана, эмулируется звук динамика БК через
звуковую плату, джойстик, дисковод и образы дисков не эмулируются. По крайней
мере в версии 0.2 Final это было так. В эмуляторе имеется конвертер
WAV->BIN, что позволяет читать файлы БК с касет. Также интересно сделана
эмуляция экрана БК. Его размер можно сделать любым вплоть до полного экрана,
причем размеры экрана БК по горизонтали и по вертикали могут менятся
независимо друг от друга. В документации к эмулятору написано, что возможна
обработка двух одновременно нажатых клавиш, но во FLASSE у меня это не
получилось. То ли я чего-то не понял, то ли имеется bug. Скачать этот эмулятор
можно здесь.
- Эмулятор 3000. Автор Троицкий Евгений Евгеньевич. Это не совсем эмулятор
БК. Точнее, он эмулирует 36 компов и игровых приставок (!) в числе которых
БК0010 и БК0011M. Как и в эмуляторе Грабоветса, поддерживается черно-белый и цветной режимы экрана, размер
экрана БК так же можно сделать любым. Поддерживает практически все устройства, которые когда либо
подключались к БК. Во-всяком случае разделе меню "Средства" есть много чего.
Даже световой пистолет, якобы, поддерживает. Читать и писать файлы на магнитофон тоже, якобы, умеет.
Точнее не на магнитофон а в WAV-файл, но это практически то же самое. Правда, дисковвода вроде не
эмулирует (или я не разобрался как это сделать?), только образы дисков. Джойстик, вроде как, эмулируется
(судя по меню "Средства"), но каким образом я так и не понял. В хелпе к эмулятору сказано, что джойстик эмулируется с помощью
неких "серых клавиш" либо IBM джойстика. Насчёт IBM джойстика ничего сказать не могу - нет его у меня, так же как и серых
клавиш на клавиатуре - белые они все
. Наверное, неправильная у меня клавиатура
.
Кстати, я пытался экспериментально обнаружить эти загадочные "серые клавиши", нажимал по очереди на все клавиши своей
клавиатуры - результата никакого не было.
Не знаю "баг" это или "фича", но эмуляция COVOX-а работает только при отключённой эмуляции музыкального сопроцессора (AY-3-8910). Скорее всё же "баг". Правильнее было бы сделать так, чтобы одновременно было возможно включение эмуляции только одного из этих устройств, раз уж совместно они не работают (правда, включённая эмуляция COVOX-а не мешает эмуляции AY-3-8910). Музыкальный сопроцессор, кстати, работает отлично, практически как на реальной БК. Что весьма радует.
Есть ещё интересная "фича" (или всё-таки "баг?). При записи/стирании файлов с загруженных в эмулятор имиджей дисков новое содержимое имиджа на диск не записывается (записывается только в память). Возможно, как-то и можно записать имидж, но как я не понял. Кстати, может быть и с джойстиком всё на самом деле нормально, возможно всё дело в каких-нибудь неверных настройках эмулятора. Но разобраться что именно не так сложно, так как документация к эмулятору, к сожалению, весьма и весьма скудная. Это можно понять: если на такое количество эмулируемых компов и игровых приставок написать подробную документацию получится что-то сравнимое по объёму с "Войной и мир" Л.Н. Толстого
.
Не смотря на указанные выше проблемы, эмулятор 3000 - программа выдающаяся. Уж не знаю как автор сумел его написать. Мне лично трудно представить себе человека, который хотя бы видел все эти 36 компов и игровых приставок
. Правда, есть одно предположение на этот счёт. В документации к эмулятору А.Савельева,
в числе прочего, даётся краткий обзор различных эмуляторов БК. Про этот эмулятор там тоже высказано мнение.
Савельев считает, что для его создания "скорее всего брались скомпилированные чужие exe-шники,
дизассемблировались и адаптировались под MS Windows". Я тоже так думаю. А про эмулятор БК0011М, входящий в состав
эмулятора 3000, Савельев пишет, что "для режима БК0011М там взята одна из старых версий моего эмулятора (v4 или 5.xx)".
Ну в этом то ему точно можно верить.
Вобщем, не смотря на отдельные недостатки, лучшего эмулятора БК0011М под Windows пока ещё (на 04.2012) никто не написал. Скачать Эмулятор 3000 можно здесь. - Универсальный эмулятор Дмитрия Целикова. Это что-то вроде эмулятора 3000. Эмулирует 26 различных компьютеров. По крайней мере, столько перечислено на сайте этого эмулятора. В число эмулируемых компьютеров входят БК0010 и БК0011М. Эмуляция экрана сделана примерно также как в эмуляторе 3000. Есть поддержка образов дисков (только по чтению), эмулируется ковокс и музыкальный сопроцессор. Больше ничего выяснить не удалось, т.к. документация практически отсутствует, если не считать небольшого FAQ, в котором БК-шки касается всего один вопрос и файла history.txt из которого также мало что можно понять. Скачать этот эмулятор можно здесь.
Эмуляторы под UNIX-like ОС.
- Эмулятор БК0010 и БК0011M Леонида Брухиса. Написан он под библиотеку SDL. Поддерживается черно-белый и цветной режимы экрана, работает в окне, размер которого можно менять (стандартный размер или удвоеный). Поддерживает магнитофон, дисковвод, образы дисков. Автор утверждает что поддерживается и AY-3-8910. Мне, правда, услышать его не удалось, но и во всех играх под SDL звука почему-то нету, так что дело тут, наверное, не в эмуляторе. Зато звук динамика БК через звуковую плату эмулируется весьма неплохо. Джойстик вроде бы пока не поддерживается, а жаль. Или, может, я просто не разобрался как он поддерживается. А разобраться, надо сказать, не так просто так как документация на данный момент (10.05.2012) весьма скудная. Скачать исходники этого эмулятора можно здесь.
- Эмулятор БК0010 Андрея Грабоветса. Надо полагать, того же самого что эмулятор БК0010 под Windows написал. Во всяком случае размешены оба эти эмулятора на одном и том же сайте. Про данный эмулятор могу сказать только что БК-шные программы в BIN-файлах из под него запускать можно, правда далеко не все они работают. Что ещё он умеет не знаю, т.к. документация на данный момент (4.05.12) отсутствует напрочь. Скачать этот эмулятор можно здесь.
- Эмулятор БК0010 под Mac OS (она тоже, вроде как, UNIX-like). Про него могу сказать только то что скачать его можно
здесь (для платформы Intel),
или тут (для платформы PPC).
Я лично его никогда не юзал т.к. Mac OS у меня нет. На сайте
этого эмулятора есть (по крайней мере 4.05.12 было) предупреждение: "эмулятор находится в стадии разработки. Пока удалось
добиться лишь того, что начали запускаться некоторые игры." Так что, видимо, заводить Mac OS ради него пока не стоит
.
Так что, эмуляторов БК, как видите, куча. Причем здесь я не о всех упомянул. Лучшим из них на момент написания этого текста (04.2012) можно считать эмулятор А.Савельева, но, к сожалению, на относительно новом железе он может "глючить" или даже не работать совсем. В этом случае для эмуляции БК0010 лучше всего использовать эмулятор Юрия Калмыкова, а для эмуляции БК0011M - эмулятор 3000.
P.S. На 4.05.2012 все ссылки были работающими, что будет дальше не знаю и следить за их работоспособностью не обещаю.