неплохо было бы пригласить сюда когонибудь из Бкшников.
например тогоже Юрия калмыкова, удалось ведь ему сделать всё....почти всё.
Вид для печати
неплохо было бы пригласить сюда когонибудь из Бкшников.
например тогоже Юрия калмыкова, удалось ведь ему сделать всё....почти всё.
http://rapidshare.com/files/158020404/BK_doki.rar.html
я тут сложил в один архив различные книжки и документацию по бк, скачивал откудато из инета, вдруг пригодятся.
Одновременно - не более двух партиций, т.к. каждая партиция несет свою файлову систему, значит каждой нужны эти CP/M-овские буфера. А буфера съедают кучу памяти в TPA и я их ограничил двумя наборами (т.к. большая TPA это полезнее). Есть и еще ограничение (опять же по размеру буфера) - ALV максимум 512 байт, т.е. нельзя использовать в партиции файловую систему размером больше чем 4096 логических блоков. При максимальном размере блока 16Кб получаем максимум для файловой системы 65Mb. В любом случае, это больше, чем суммарное количество данных с сохранившихся орионовских дискет. :)
--
Основная мысль при работе с партициями была в том, чтобы кроме загрузочной CP/M партиции иметь "безразмерную" FAT-партицию, откуда брать файлы при помощи утилит (где и хранить огромные количества данных) :) , партицию с UZIX и т.д.
Что конечно не запрещает во все 4 партиции положить CP/M, но работать одновременно не более с чем двумя (чтобы штатно средствами CP/M между ними копировать). В-общем, не придумал как и буфера иметь большие, и TPA не тратить.
b2m
Можно ли как-то запустить в твоем эмуляторе специалистовские игрушки с сайта AVsh, которые из двух файлов - *.cpu и *.i80? В принципе можно попытаться сделать из них rks (хотя непонятно, как их загрузить в конфиг MX), но может есть легальный способ?
И вдогонку еще вопрос - как в специалист MX грузить что-то извне (кроме как с диска)? Ну и насчет диска - плагин к TC от Error404 для работы с *.odi диск BST_CPM0.ODI воспринимает нормально, а на bst_mx0.odi дает ошибку, хотя твой эмулятор работает с обоими дисками. Чем можно корректно работать с дисками для Dos_MX?
Попробовал переделать 2 *.i80 в *.rks - один нормально загрузился и заработал в конфиге обычного специалиста, а другому для корректной работы нужно чего-то специфическое MXное, т.е. вопрос по загрузке cpu+i80 в конфиг MX сохраняет актуальность.
чтото совсем никаких сдвигов, целая неделя уже прошла.
эмулятор вообще ещё жив ?
b2m, есть небольшое предложение по облегчению загрузки для БК0010, можно добавить кнопку автозагрузка, нажал и в эмуле автоматом вводится сначала Mon потом L.
Нет, ну вы посмотрите на него! Я ему Агат делаю в поте лица, а ему "сдвиги" подавай! :)
Кстати, можно грузить файлы так же, как и в других эмуляторах (MON enter M enter enter), про директиву L можно забыть :)
sorry.
я думал что про агат совсем уже забыли, а с БК проблемы.
я игры проверял бкшные, совместимость у эмулятора примерно 70%
Выложил первый релиз Агата, в принципе работает, но я совсем не знаю этот ПК, возможно есть глюки.
Насчёт дисководов: на Агате было два типа дисководов 140К и 800К, если образ диска маленький, то считается, что подключен дисковод 140К, а если файл больше 360К, то считается, что подключен дисковод 800К. Соответственно для загрузки с диска из монитора нужно дать команду:
C300G для 140К
C500G для 800К
БИОС стартует автоматом загрузку с 800К диска.
ничего не получается запустить.
при открывании диска и набора C300G эмулятор просто повисает, или очень долго грузит диск.
кстати я не понял, надо сначала вставить диск а потом нажать сброс ?
просто в досовом эмуляторе сначала надо было нажать клавишу F2, потом появлялась звёздочка и можно было набирать команду.
каким образом можно загрузить файлы лежащие в конфиге эмулятора и имеющие расширение *.B ?
выкладываю досовый эмулятор агата 7, в архив также входят все образы дисков для агата 7 и инструкция по запуску эмулятора.
http://rapidshare.com/files/160579859/em7.rar.html
и ещё мааааааленькая просьба, можешь добавить в эмулятор какойнибудь значок в уголке, хоть точечку хоть звёздочку какую, чтоб она мигала показывая активность дисковода, а то нифига не понять, толи грузит толи висит.
Добавлено через 43 минуты
с *.В файлами разобрался, эти 4 игрушки отлично работают.
хотя игрушка rocker помоему работает немного быстрей чем положено, и таймер в верхней части экрана стоит.
а чем извлекались файлы с дисков ?
Значит образ диска не подходит. Я тут поискал по интернету образы, есть файлы с расширением .dsk, но это посекторные копии, а у меня пока рассчитано на полную копию дорожек. Размеры таких файлов соответственно 232960 и 947520 байт. Надо делать поддержку .dsk файлов.
Не знаю :) Были в одном из эмуляторов (который Олега Воронова) уже в виде файлов.
Большинство дисков не системные, т.е. не содержат Бейсик, из которого и нужно запускать файлы с диска.
А ещё, вроде с прерываниями какой-то косяк, буду исследовать...
Добавлено через 3 минуты
Бейсик есть, например, на im20.img, вставляешь, выходишь в монитор, грузишься с него.
Добавлено через 5 минут
Запуск В-файлов - команда BRUN <имя>. Имя без кавычек и типа.
диск 20 ?
а если из него извлечь нужные файлы и сделать загрузочный диск ?
Добавлено через 41 минуту
интересно, мне удалось обмануть машинку. :)
включаете эмулятор.
нажимаете сброс.
вставляете в первый дисковод диск im20.img
набираете команду C300G
после загрузки диска вставляете в первый дисковод любой другой диск.
набираете команду Catalog
загружайте файлы.
проверял на диске IM3.img
а нельзя чтобы в первый дисковод загрузочный диск а во второй любой другой ?
каким образом тогда набирать команды что просматривать файлы на втором диске ?
b2m, я разговаривал с автором эмулятора, говорит что все диски загрузочные.
насчёт дисководов мне ответил так:
catalog,d2 - каталог диска на текущем контроллере, второй привод
catalog,s5 - каталог диска на контроллере слота 5
catalog,s3,d1 - каталог дискка на контроллер слота 3 привод 1
такие ключики можно указывать другим командам : brun.... run, ... и другим
если у тебя будут какието вопросы по агату свяжись с ним.
я тебе в личку напишу.
b2m, про эмуляцию ПК "Эрик" (а-ля Специалист с Z80) не думал?
http://www.emuverse.ru/wiki/Эрик/Рад...�_«Эрик»
b2m, тоесть работает, вот так меняя диски загружать ?
мне сказали что все диски загрузочные.
и с его слов "большинство игр идёт под т.н. dos33. именно она, совершенно идентичная на всех дисках, стоит в большинстве образов, т.е с точки зрения загрузки они одинаковы"
я тебе в личку писал, ты получал сообщение ?
Получил. Почему не грузится со всех дисков, пока не выяснил, это надо долго сидеть и трассировать выполнение в дебагере. А работает - catalog,s5,d2 и т.п.
Может я поторопился с предыдущим постом. Переключение видеостраниц реализовано (проверить недолго, но некогда)? Растактовка для ВМ85 и две дополнительные команды (насчет недокументированных у 85 я не в курсе) реализованы?
Tim0xA, эрик пока делать бессмысленно.
нет дампов программ и пзу, компьютер самодельный и для него если мне не изменяет память не было сделано ни одной программы.
эрик не совместим ни с какими другими компьютерами.
я читал об этом толи в википедии, толи на полигоне призраков, точно уже не помню где.
ZEman, ответом тебе будут цитаты из статьи: "Первоначально в компьютере использовано базовое программное обеспечение от ПК «Специалист»." и "...на базе ПК «Специалист» разработан новый программно совместимый с ним персональный компьютер с открытой архитектурой и контроллером НГМД".
Небольшое пожелание: не задавать CHS образа диска настройкой в конфиге, а автоматически вычислять из размера образа диска. Очень неудобно: у меня много образов HDD разного размера и при переключении каждый раз приходится вооружаться калькулятором. А если не поправить, то с диска читается странное.
У меня число "секторов" при открытии файла подбирается в цикле чтобы максимально точно попасть в размер файла - это число секторов и возвращется через Identify. Я не уверен, что это правильно (проверить не чем, все мои софтины используют только LBA-адресацию и соотвественно честный LBA-размер винта, равный реальному с кратностью в 512 байт). Для того файла, о котором идет речь, число секторов, видимо, вычисляется эмулятором как 16 (реально был взят первый попавшийся более-менее понравившийся по размеру файл с "С:\", подключен как образ и fdisk-oм разбит на партиции/отформатирован).
По крайней мере современные LBA-винты для "эмуляции" геометрии CHS используют формулу C*16*63
Если используется только LBA, то можно установить CHS по максимуму - это снимет все ограничения на позиционирование головки, а при адресации в режиме LBA параметры CHS не используются.
Добавлено через 3 минуты
Кстати, в таком случае, можно вообще убрать эту строку с геометрией, по умолчанию у меня используется 1024C255H63S, что соответвует файлу более 8Гб. По-моему достаточно :)
Добавлено через 7 минут
А геометрию я добавил не для Ориона, там и без неё всё работало. А вот на Векторе используется CHS адресация.
Возьми за основу стандартный Orion-128.cfg, добавь в конце
А после строчекКод:app2 : K580ww55 {
}
hdd : cf-ide {
drive[0].image="Orion\dos-hdd.ohi"
addr=app2.portA[0-2]
cs0=app2.portA[3]
cs1=app2.portA[4]
iowr=app2.portA[5]
iord=app2.portA[6]
msb=app2.portB
lsb=app2.portC
}
добавьКод:map[ ][F500-F5FF]=app1.data
Код:map[ ][F600-F6FF]=app2.data
После долгого перерыва воспользовался отладчиком b2m, возник вопрос:
Какие ошибки имелись в виду? Две довольно неприятные (для меня в конфиге вектора c z80, c кр580 раньше тоже было, сейчас не проверял) - 1) "чудеса" с отображением мнемоник команд при включенном обращении стеком к КД и выполнении команды pop, 2) "залипание навечно" клавиши, если обработка ее нажатия протрассирована под отладчиком (формулировка может не на 100% верная но близко к тому).
Насчёт "залипания навечно" я почти на 100% уверен - не может быть такого. Нажатие клавиши не может быть обработано при трассировке, т.к. сообщения о нажатии/отпускании обрабатываются отладчиком, а не эмулятором. Другое дело, когда клавишу мы нажали при нормальном выполнении, а потом сработала точка останова - тогда отпускание обработается отладчиком, и клавиша останется нажатой. В таком случае нужно лишь нажать и отпустить эту клавишу ещё раз при нормальном исполнении.
А про чудеса: в конфигурации с кр580 точно быть не должно, а с z80 вроде я ещё не исправил.