Бытовой ретро-компьютер своими руками http://www.forum.pk-fpga.ru/ |
|
Эмулятор БК-0010-01, БК-0011 и БК-0011М http://www.forum.pk-fpga.ru/viewtopic.php?f=45&t=5441 |
Страница 4 из 8 |
Автор: | BD [ 23 апр 2016, 13:41 ] |
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М |
Спасибо, все работает. Но, хотелось бы эмуляцию спикера тоже в процесс включить, т.к. в виндах куча драйверов на звук вешается. Звук записал (реальный БК не восприниает) https://www.youtube.com/watch?v=rc5B0JiJEew Потом просто "звукозапись" запустил, оно отдает приоритет... https://www.youtube.com/watch?v=H71J1YPNZdA |
Автор: | gid [ 25 апр 2016, 11:33 ] | |||||||||
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М | |||||||||
Несколько раз посмотрел видео, но так ничего и не понял. Если бы вы как можно подробнее написали, что вы делаете, чего хотите достичь, а что происходит на самом деле, я бы попробовал повторить ситуацию у себя по возможности. |
Автор: | BD [ 25 апр 2016, 14:42 ] | |||||||||
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М | |||||||||
На 1м ролике слышно, "неубиваемый" теперь Audiodg.exe добавляет лишние "щелчки". Лечится только запуском SoundRecorder.exe. Просто пока не удалось заставить ни один дисковод с БК работать, МГ-вход тоже вариант ![]()
|
Автор: | SerGun [ 24 авг 2016, 18:03 ] |
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М |
Добрый день! Хотел перенести свои программки, которые у меня сохранились в виде бумажных записей, написанные на Бейсике еще в школе почти аж 30 лет назад (!) в эту систему, чтобы продемонстрировать подрастающему поколению "как оно было". Стал работать с системой, почитал то, что удалось найти в интернете, и понял, что, набив сюда программу на Бейсике, я могу ее сохранить в файл (.bin или .cod), но сделать распечатку именно самой программы не могу - так как и в том, и в другом формате файла я вижу только крокозябры. Действительно ли это так? Есть ли возможность "вытащить" из файла .cod бейсиковский текст? Или каким-то другим способом выгрузить читаемый текст программы? Извиняюсь, если вопрос наивный, но ответ на него я пока не нашел... С уважением, Сергей. |
Автор: | gid [ 30 авг 2016, 12:05 ] | |||||||||
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М | |||||||||
На БК у бейсика текст программы сам по себе отдельно в памяти не хранится, он там весь перемешан какими-то своими данными, может быть индексами, для упрощения компиляции, поэтому ни из .bin, ни из .cod исходный текст извлечь не получится, хотя он там и присутствует. Был ещё такой формат .asc - это как раз исходный текст бейсика, разбитый на кусочки по 128 байт. На магнитофон он так и сохранялся, большой кучей маленьких файликов. Как дело обстояло в бейсике, адаптированном под дисковод - не знаю. Эмулятором формат .asc не поддерживается, потому что он нерационален. Принтера на БК у меня никогда не было, поэтому он тоже никак не эмулируется, я не знаю, как сэмулировать то, о чём я представления не имею. Во время знакомства с БК у меня всегда было так, что надо было набрать текст программы на бейсике из тетрадки и потом сохранить его на кассете. Обратной ситуации никогда не возникало. Поэтому единственно возможный способ сохранить бейсиковский текст программы - переписать его руками с экрана на бумажку, или набить в текстовый файл. И я не буду обещать, что что-то в этом плане улучшится. Разве что когда-нибудь попробую сделать эмуляцию принтера. ------------- Upd. Таки я немного напутал. .asc не поддерживается в преобразованиях в .tap<->.wav<->.bin, а так то он вполне себе работает. Если в бейсике сохранить файл командой SAVE "PROG, то при включенной эмуляции записи на ленту в директории BIN сохранится начальный файл PROG .ASC.bin - заголовок, и целая куча файлов PROG .ASC #000.bin, PROG .ASC #001.bin, ... из которых можно будет собрать исходник. нужно у каждого такого файла убрать первые 4 байта - заголовок .bin и склеить их в один большой файл. |
Автор: | SerGun [ 30 авг 2016, 15:29 ] |
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М |
to gid Ну, у меня в те годы технология была примерно такая же: сначала пишешь программу на бумаге, потом забиваешь ее на школьной БКшке, отлаживаешь, сохраняешь на учительской машине командой CSAVE. Желающие потом могли скачивать ее на свои БКшки командой CLOAD. Поэтому те школьные программки сохранились либо в электронном виде на учительской машине (была потом идея сохранить свои программы на 5-дюймовой дискете, но руки так и не дошли), либо на бумаге. Вот сейчас перебил пару программ с бумаги в эмулятор. Бумагам 25 лет, рукописи не горят! ![]() Попробовал Ваш способ. Геморрой, конечно, еще тот ![]() Кстати, попробовал потом эти кусочки (PROG .ASC #000.bin, PROG .ASC #001.bin, ...) загрузить командой LOAD "PROG - программа загружается и работает. P.S. А не хотите сделать к эмулятору довесок - в виде примитивного редактора текста программы на Бейсике - для подобной выгрузки/загрузки в один файл и чтоб еще при этом псевдографика не терялась? P.P.S. При работе эмулятора наблюдается глюк - перестает работать Alt-Tab - между приложениями приходится переключаться только мышкой. |
Автор: | gid [ 31 авг 2016, 15:17 ] | ||||||||||||||||||
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М | ||||||||||||||||||
Не хочу. Но могу, как только появится больше свободного времени, доработать и приложить к эмулятору почти универсальный конвертер текстов из БКшных кодировок в читабельные на Win, чтобы он автоматом склеивал .asc файлы и конвертировал в один txt. Потому что у БК10 свой КОИ8, нестандартный, а у БК11(М) другой свой, несовместимый с БК10 и опять же нестандартный в части псевдографики. Сейчас этот конвертер в виде исходников прилагается к исходникам эмулятора.
Это не глюк, это фича. Alt-Tab - это совершенно нормальное сочетание БКшных клавиш АР2-ТАБ, поэтому оно перехватывается эмулятором и обрабатывается как БКшное сочетание клавиш, а не как виндозный хоткей. |
Автор: | gid [ 29 ноя 2016, 13:06 ] | |||||||||
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М | |||||||||
Не прошло и года, а я таки сделал эту штуку. В комплекте с эмулятором в директории Tools прилагается утилита ITCPC, которая конвертирует файлы из БКшных форматов в Win и обратно. Заодно она и склеивает кучу мелких ASC файлов в один, и может делать обратную операцию. Для работы программы требуется vc 2015 redist соответствующей разрядности. |
Автор: | Singular [ 10 апр 2017, 12:44 ] |
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М |
Здравствуйте ![]() ![]() |
Автор: | gid [ 11 апр 2017, 09:44 ] | |||||||||||||||||||||||||||||||||||||||||||||
Заголовок сообщения: | Re: Эмулятор БК-0010-01, БК-0011 и БК-0011М | |||||||||||||||||||||||||||||||||||||||||||||
Здравствуйте.
Не небрежно. И не знаком, я вообще ни с кем не знаком, т.к. в своей глухой провинции варился в собственном соку, имел софт/игры, которые сам написал, купил/обменял на кассете для БК10, ещё когда они продавались, позже - купил на дискете в фирме СНЕК, всё. Я дремучий и необразованный человек. А с peg'ом мы смотрим на проблему с разных сторон, видим разное, и решение видим разное. Его решение меня не удовлетворило. Я решил проблему так, как я представлял. Где-то, не помню где, я писал, что я открыт для любой критики и любых предложений. Но далеко не любое предложение будет принято и применено. Если я чего-то не делаю, значит я этого не умею, только и всего.
Для плавного скроллинга, и вообще всего движения на экране, нужно синхронизировать вывод на экран с частотой кадров монитора. Нужно создать хитрую систему, которая будет конвертировать БКшные 50к/с в писишные, допустим, 60к/с, и при этом эффекты, завязанные на таймер, продолжали работать. Я без понятия, как это сделать. Разве что, как полумера, в полноэкранном режиме включить вертикальную синхронизацию.
Замечено, что при использовании рендера DrawDib, картинка на Win8, Win10 вообще сильно дёргается, там лучше использовать Direct2D.
Бкшка выводит аналоговый сигнал на аналоговое устройство. Там нет проблем с дискретизацией.
Не знаю, если кто-то найдёт решение и поделится им - применим его в эмуляторе. |
Страница 4 из 8 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |