| Эмуляция > Эмуляторы компьютеров |
| PCem, 86box и другие эмуляторы старого PC-железа |
| << < (37/55) > >> |
| SokilOff:
--- Цитата: Softer от 29 Июль 2020, 18:37:45 ---Нагуглил, что для форматирования на нестандартные форматы нужны сторонние тулзы. Уточни какой именно тулзой и в какой формат ты форматировал? --- Конец цитаты --- Итак, по шагам. 0. PCem подобные вещи вообще не умеет делать. Для этого нужен форк 86box 1. Скачиваем с Old-DOS популярную утилиту для создания и чтения дискет нестандартных размеров PU_1700, вот тут: http://old-dos.ru/dl.php?id=2372 Чтобы не загромождать топик, просто дам ссылку на страницу со скриншотами: https://imgur.com/a/7tZHHlL 2. Загружаем любой конфиг с DOS, заходим в каталог с утилитой и запускаем pu_1700.com (скриншот №1) 3. Запускаем форматёр из комплекта программы: pu_1700f.com 4. В эмуляторе выбираем наш дисковод на 2.88М -> New image (скриншот №2) -> вводим имя новой дискеты с расширением, например "new.86f", выбираем её размер (2.88М), RPM mode не трогаем (скриншот №3) 5. Нажимаем Ctrl-Alt-P, всплывает наш форматёр. Выбираем дисковод, допустим это диск А: (скриншот №4) 6. "Делать, так по-большому". В меню выбора формата возьмём максимально возможный вариант, предоставляемый форматёром из комплекта PU_1700 для дискет на 2.88М - 83 трека и 41 сектор на трек (скриншоты №5, 6 и 7) 7. Кнопкой Tab заходим в сервисное меню и немного уменьшим значение gap3 - с 35 до 15, например (скриншот №8). Жмём enter и начинаем форматирование. 8. Смотрим, что происходит со скоростью в заголовке окна эмулятора (скриншот №9) 9. Ждём окончание операции и смотрим на результат (скриншоты №10 и 11). И да, получившийся образ дискеты вполне можно использовать. --- Цитата ---Эта процедура просто не может тормозить эмуляцию, так как там вообще не производится никаких вычислений. --- Конец цитаты --- Просто ты не очень представляешь, какие ресурсы могут требоваться при точной эмуляции некоторых устройств, особенно если они работают в главном потоке программы (том же, что и виртуальный процессор). |
| Softer:
--- Цитата: SokilOff от 29 Июль 2020, 21:16:22 ---Просто ты не очень представляешь, какие ресурсы могут требоваться при точной эмуляции некоторых устройств --- Конец цитаты --- Устройства не эмулируются, эмулируются функции. Для эмуляции функций ввода/вывода/чтения/записи никаких вычислительных ресурсов уровня i9 не нужно. --- Цитата: SokilOff от 29 Июль 2020, 21:16:22 ---0. PCem подобные вещи вообще не умеет делать. Для этого нужен форк 86box --- Конец цитаты --- --- Цитата: SokilOff от 29 Июль 2020, 21:16:22 ---4. В эмуляторе выбираем наш дисковод на 2.88М -> New image (скриншот №2) -> вводим имя новой дискеты с расширением, например "new.86f", выбираем её размер (2.88М), RPM mode не трогаем (скриншот №3) --- Конец цитаты --- Стоп. Это что за функция? Причём тут "эмуляция Pentium 120/133 которую даже i9 осилит только с возможными просадками"? Почему к расширению создаваемого файла образа *.86f привязано появление строки выбора RPM? Я сначала назвал образ *.img, в следствии чего получил окно параметров создаваемого образа без строки RPM, а когда дело дошло до форматирования, то PU_1700F сообщил, что "форматирование прервано. не форматируется 0 трек вашей дискеты!". Создав же образ с расширением *.86f форматирование проходит без ошибки. Что это за дичь привязанная к именованию внешних файлов образов дискет? И опять же повторюсь, что эта кривая функция 86Box совершенно никак не связана с эмуляцией CPU и их тактовыми частотами. Это просто криво заэмулированная функция, ни больше и не меньше. Я, если что, 233MMX эмулировал и на моём i5 получил минимально зафиксированную при форматировании скорость эмуляции - 82%, против твоих 74% при эмуляции 166MMX. И это при том, что разница в однопоточной производительности между нашими процессорами всего +5% у моего клокнутого i5. Так же я не понимаю в чём уникальность функции создания образов дискет в 86Box относительно PCem? Единственное различие замеченное мной, это возможность выбрать расширение отличное от img в 86Box, которой лучше бы не было, так как у него от этого явно начинает "течь крыша". Я решил повторить эксперимент на PCem с созданием в нём img образа ожидая дойти до попытки форматирования и ошибки PU_1700F указанной выше в ответ на использование img расширения (какой же бред, сам пишу это и поражаюсь всему происходящему абсурду). Так вот никакой ошибки в PCem я не получил, дискета была успешно отформатирована, а нагрузка от ровных 100% эмуляции на протяжении всего процесса даже близко не приблизилась к 100% на ядро. |
| SokilOff:
--- Цитата: Softer от 29 Июль 2020, 22:59:51 ---Так же я не понимаю в чём уникальность функции создания образов дискет в 86Box относительно PCem? --- Конец цитаты --- В том, что 86F - это формат, эмулирующий реальную дискету, и с ним можно делать всё то же самое, что с обычной дискетой, включая нестандартное форматирование, эмуляцию различных типов защит от копирования и т.д. Это так называемый bitstream формат, а img - самый примитивный из возможных sector-based. Есть и третий тип дискетных образов - flux-форматы (грубо говоря - магнитный поток без постобработки). Примеры - KF (Kryoflux), SCP (Supercard Pro) и т.д. Использовать их напрямую в эмуляторах не имеет смысла - для декодирования/конвертации требуются ещё более значительные вычислительные ресурсы. Попробуй создать в PCem на img рабочую копию дискет с защитой от копирования, и поймешь, для чего это всё. --- Цитата ---Так вот никакой ошибки в PCem я не получил, дискета была успешно отформатирована --- Конец цитаты --- И на неё можно записать файл размером с полный объём дискеты и затем прочитать его ? Я попытался записать на эту дискету файл и моментально получил "Sector not found", что абсолютно ожидаемо. --- Цитата ---Почему к расширению создаваемого файла образа *.86f привязано появление строки выбора RPM? --- Конец цитаты --- Потому что формат позволяет эмулировать дискеты, записанные на дисководах с более низким RPM, по сравнению со стандартными значениями. |
| Softer:
--- Цитата: SokilOff от 29 Июль 2020, 23:24:38 ---Попробуй создать в PCem на img рабочую копию дискет с защитой от копирования, и поймешь, для чего это всё. --- Конец цитаты --- Понятно. Идея хорошая, реализация - как всегда. |
| SokilOff:
И ещё. --- Цитата ---Так вот никакой ошибки в PCem я не получил, дискета была успешно отформатирована --- Конец цитаты --- В данном случае PCem не вернул ошибку, а молча проигнорировал её. "Не реализовано ? Да и фиг с ним, ничего не скажем". Пользователь получает нерабочую болванку и теряется в догадках - что он сделал не так. И таких молчаливых "недоэмулированных" моментов - вагон и маленькая тележка практически во всех поддерживаемых девайсах. Увы, ситуация типична для всех эмуляторов. Где-то в большей степени, где-то в меньшей. |
| Softer:
--- Цитата: SokilOff от 30 Июль 2020, 13:42:34 ---В данном случае PCem не вернул ошибку, а молча проигнорировал её. "Не реализовано ? Да и фиг с ним, ничего не скажем". Пользователь получает нерабочую болванку и теряется в догадках - что он сделал не так. И таких молчаливых "недоэмулированных" моментов - вагон и маленькая тележка практически во всех поддерживаемых девайсах. --- Конец цитаты --- А когда PU_1700F заявляет, что "форматирование прервано, не форматируется 0 трек вашей дискеты!", то пользователь не теряется в догадках - что он сделал не так? |
| SokilOff:
--- Цитата: Softer от 30 Июль 2020, 13:54:14 ---А когда PU_1700F заявляет, что "форматирование прервано, не форматируется 0 трек вашей дискеты!", то пользователь не теряется в догадках - что он сделал не так? --- Конец цитаты --- Пользователь хотя бы видит - что-то пошло не так. А когда "всё нормально было", но в результате ничего не работает - это хуже. |
| Softer:
--- Цитата: SokilOff от 30 Июль 2020, 14:30:37 ---Пользователь хотя бы видит - что-то пошло не так. А когда "всё нормально было", но в результате ничего не работает - это хуже. --- Конец цитаты --- То есть когда ошибка в процессе форматирования, то это более понятно, чем когда в процессе последующего копирования? Логика конечно есть, но очень притянутая за уши. |
| SokilOff:
--- Цитата: Softer от 30 Июль 2020, 15:00:59 ---То есть когда ошибка в процессе форматирования, то это более понятно, чем когда в процессе последующего копирования? Логика конечно есть, но очень притянутая за уши. --- Конец цитаты --- Если программа форматирования не получает соответствующий "отлуп" от эмулятора (как это делает настоящий FDC), как она поймёт, что произошла ошибка ? Дело-то не в PU_1700. Прога не виновата. Другой эксперимент. Берём образы IBM DOS 7.0, пытаемся в PCem записать их на дискеты штатными IBM'овскими программами. Первый диск - стандартный на 1.44М, пытаемся записать образ dsk. Монтируем пустой (или не пустой, без разницы) стандартный img образ на 1.44М, проверяем, что он нормально читается. Дальше: loaddsk disk1.dsk a: После 1% получаем сообщение "cannot format target disk". Повторюсь, это ещё не .XDF на 1.88М, это обычный диск на 1.44M. В результате корневой каталог выглядит нормально, внутри файлов - мусор. Делаем то же самое в 86box - всё работает, диск записывается штатно. XDF образы можно даже не записывать и использоваться прямо так. При желании ради эксперимента можно записать такой XDF файл, допустим, на 86F образ - всё запишется и будет работать. Так что дело не в конкретной программе. Дело в корректности эмуляции, в данном случае флоппи-контроллера. |
| Softer:
--- Цитата: SokilOff от 30 Июль 2020, 15:09:25 ---Если программа форматирования не получает соответствующий "отлуп" от эмулятора (как это делает настоящий FDC), как она поймёт, что произошла ошибка ? --- Конец цитаты --- С программой всё понятно. Только пользователь это не программа. Добавлено позже: --- Цитата: SokilOff от 30 Июль 2020, 15:09:25 ---Так что дело не в конкретной программе. Дело в корректности эмуляции, в данном случае флоппи-контроллера. --- Конец цитаты --- Никто не оспаривает большее количество заэмулированных функций FDD у 86box. Речь шла о качестве эмуляции этих функций в следствии чего скорость эмуляции просаживается. Что там, гениальный цикл в цикле или ещё чего, я не знаю, но проблема серьёзная. |
| MetalliC:
--- Цитата: SokilOff от 30 Июль 2020, 15:09:25 ---Если программа форматирования не получает соответствующий "отлуп" от эмулятора (как это делает настоящий FDC), --- Конец цитаты --- какой такой отлуп ? при форматировании дорожки FDC ничего не проверяет, это уже забота программы-форматировщика проверить трек на читаемость после записи, и если она этого не делает то не будет никаких ошибок. но тут может быть дело в другом - некоторые эмуляторы (МАМЕ например) держат в памяти "образ" дискет в raw flux-виде, и кастрируют их если нужно до sector-based форматов лишь при выходе из эмулятора или смене диска. что в этом случае будет происходить я думаю понятно - диск нормально отформатируется и запишется, и защищенный софт будет нормально работать, но лишь до выхода из эмулятора, а при повторном запуске будет упс. |
| SokilOff:
--- Цитата: Softer от 30 Июль 2020, 15:46:13 ---Никто не оспаривает большее количество заэмулированных функций FDD у 86box. Речь шла о качестве эмуляции этих функций в следствии чего скорость эмуляции просаживается. Что там, гениальный цикл в цикле или ещё чего, я не знаю, но проблема серьёзная. --- Конец цитаты --- Сорцы открыты и доступны - ждём помощников-энтузиастов. --- Цитата: MetalliC от 30 Июль 2020, 15:55:29 ---но тут может быть дело в другом - некоторые эмуляторы (МАМЕ например) держат в памяти "образ" дискет в raw flux-виде, и кастрируют их если нужно до sector-based форматов лишь при выходе из эмулятора или смене диска. --- Конец цитаты --- Не в raw-flux, a в mfm-bitstream. Про MAME не скажу, а 86box (*.86f) и PCE (*.pri) делают именно так. --- Цитата ---что в этом случае будет происходить я думаю понятно - диск нормально отформатируется и запишется, и защищенный софт будет нормально работать, но лишь до выхода из эмулятора, а при повторном запуске будет упс. --- Конец цитаты --- Ни разу не пробовал создавать в MAME рабочии копии защищённых дисков, не уверен, что оно там вообще заработает. |
| MetalliC:
--- Цитата: SokilOff от 30 Июль 2020, 16:12:43 ---Не в raw-flux, a в mfm-bitstream. --- Конец цитаты --- зависит от эмулятора ? у MAME внутреннее представление образа в виде потока нулей и единиц, с определенной частотой дискретизации, как они и идут с дисковода, то есть flux. а декодирование данных из MFM или FM или GCR делается уже по ходу работы эмуляторами различных FDC. |
| SokilOff:
--- Цитата: MetalliC от 30 Июль 2020, 16:34:09 ---зависит от эмулятора ? у MAME внутреннее представление образа в виде потока нулей и единиц, с определенной частотой дискретизации, как они и идут с дисковода, то есть flux. а декодирование данных из MFM или FM или GCR делается уже по ходу работы эмуляторами различных FDC. --- Конец цитаты --- Не смотрел, как это реализовано в MAME. Если так, то да, это flux. Но, как я понимаю, скормить напрямую образ дискеты в любом из flux-форматов ему всё равно нельзя. Или ? p.s. хотя в случае эмулятора PC мы всё равно возвращаемся на уровень FM/MFM |
| Томахомэ:
В Parkan при переходе во внутренние помещения корабля - как своего, так и чужого - монитор внезапно переключается на системное разрешение, а сам эмулируемый комп намертво виснет с чёрным экраном. Из-за чего, интересно, это с ним на самом деле происходит? Если что, операционка стоит Win95 (русская версия), биосы перепробовал разные - от Award SiS 496/497 до Shuttle HOT-557, процы - от Pentium OverDrive/83 до Mobile Pentium MMX/120. Аудиокарта всегда строго AWE32, видео - S3 VIRGE DX в паре с Voodoo 2. |
| Ogr:
Томахомэ, На сборке эмулятора солд геймс, игра не виснет, Не в программном режиме, Не с 3д ускорением. |
| Томахомэ:
А эмуляцию Roland'ов в PCem ещё так и не завезли, что ли? |
| gotten:
Есть у кого-нибудь сборка Pcem 15 или 16 с чистым dos? В отличии от win 95-98, я вообще без понятия с чего начинать, что выбирать, если самому устанавливать. Так же и насчет самой версии dos, какая будет предпочтительнее. 6.22 или другая? Не знаю, важно ли это, уточню - игры года от 90 и дальше. В сборке Pcem с win 95 некоторые проблемные dos игры запускал, они работали лучше чем в досбоксе. Такс, нашел инструкцию, отбой, вроде ничего сложного. Все установил, интересно, почему некоторые игры вылетают, например Mr.Blobby. 6.22 слишком нов для этой игры что-ли? |
| Drowfan:
Вопрос: эмулирует ли этот эмулятор «Сократа Персонального»? А то хочется посмеяться над безграмотностью, над «средств к существованию» и пр. Вдруг «Сократ» не идет на Windows 8.1 и 10? Конечно, он устарел, зато годится для таких абсурдных переводов. |
| Yaranga:
Thorenlawar, этот эмулятор эмулирует старое компьютерное железо, а не программное обеспечение. Последний же Сократ вполне работает на Windows 10: https://ofitsialnaya-versiya.org/sokrat-personalnyj/ Если же хочется именно поприкалываться над старыми версиями сократов, почему просто не скачать любую из готовых сборок эмулятора с предустановленными системами и попробовать самому? А такие есть и в этой теме, и особенно в аналогичной на одном дружественном форуме: https://www.old-games.ru/forum/threads/pcem-ehmuljator-pc.68711/ |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |