Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Другие архитектуры » Загрузить АГАТ-9 |
<<Назад Вперед>> | Страницы: 1 2 * 3 4 5 6 7 8 9 | Печать |
tnt23
Advanced Member
Откуда: Saint-Petersburg, Russia Всего сообщений: 360 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 19 нояб. 2006 |
icedwarm написал: Конвертор можно и не писать. Эмулятор понимает набор стандартных образов файлов, вроде .ADF для амиги или .DSK для PC (720K, 2x80 дорожек, 9 секторов по 512 байт на дорожку). Преобразование посекторного образа в поток бит MFM производится на лету при загрузке такого файла в память эмулятора. Видел тоже много вариантов, но конвертер в том то и дело что надо писать. Подобную штуку уже готовую под Агат с удовольствием бы приобрел не пожалев денег. То есть нужно просто уточнить, какого размера есть образы дисков для Агата, и каков их формат. Дальше либо встроить их поддержку в эмулятор (что сложновато), либо дописать код в утилиту mfmdisk, конвертирующую образы дискет Амиги и БК в эмуляторные .MFM файлы, что сильно проще. |
icedwarm |
Ну имиджи эмуля доступны, их валом, а вариант решения зависит от атора этого решения 8-). Лично я бы с удовольствием и проспонсировал создание/модификацию такого девайса. |
tnt23
Advanced Member
Откуда: Saint-Petersburg, Russia Всего сообщений: 360 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 19 нояб. 2006 |
Ну так ссылки на описание форматов дадите, или будем расшаркиваться? |
icedwarm |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 1 мая 2010 22:04 Сообщение отредактировано: 1 мая 2010 22:10
Ну так по выше указанным ссылкам вроде... И очень попросим товарища GARNIZON - он точно в курсе структуры. |
tnt23
Advanced Member
Откуда: Saint-Petersburg, Russia Всего сообщений: 360 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 19 нояб. 2006 |
Вот честно скажу, по указанным ссылкам полазал, но нигде описания форматов не нашел. Может, и искал не очень прилежно, но времени тоже жалко, знаете ли |
Sergei Frolov
Advanced Member
Коллекционер Откуда: Питер Всего сообщений: 2719 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 июля 2003 |
Кстати, в агатовских дисках MFM за начало дорожки берется так называемый "сбой синхронизации". Если надо, могу поискать заводскую доку. Где-то лежала. |
tnt23
Advanced Member
Откуда: Saint-Petersburg, Russia Всего сообщений: 360 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 19 нояб. 2006 |
Sergei Frolov написал: Давай. Если надо, могу поискать заводскую доку. Где-то лежала. Сбой синхронизации изобразить в эмуляторе легко, его собственные файлы .MFM представляют собой буквальный битовый поток. Что туда битами запишется, то и будет проиграно в компьютер. Вот в обратную сторону (на запись), если формат записи не MFM, работать скорее всего не будет. |
icedwarm |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 3 мая 2010 12:24 Сообщение отредактировано: 3 мая 2010 12:32
Да, описания формата нет, щас отпишусь в группу АГата, спрошу. Отписал и Олегу и Вольдемару. Ждем скорейшего ответа. |
icedwarm |
Вот ответ от Олега: Привет. Наиболее пригодны к реализации, на мой взгляд, два формата дисков: "сырой" aim и "очищенный" dsk. Во втором случае в файле хранятся просто сектора в прямой последовательности (т.е. 256*21*160=860160 байт). К этим образам разные авторы дописывают различную служебную информацию типа номера тома, описания и т.п. В своих эмуляторах я использую альтернативный формат, распознаваемый по сигнатуре "Agathe emulator virtual disk\x0D\x0A\x1AAD" в начале образа. Если такая сигнатура присутствует, предполагается наличие 256-байтного заголовка. Тогда по смещению 0x30 находится признак защиты от записи (0x01), по смещению 0x32 - длина описания N, далее - N байт описания в кодировке cp866. По смещению 0x31 находится номер тома. Как видно из описания, этот формат подразумевает стандартный вид сектора, формирование которого ложится на эмулирующую программу. Поэтому для начала проще всего реализовать "сырой" формат AIM. В нём каждый байт, считываемый с диска, сопровождается байтом служебной информации A, содержащим следующие признаки: A&0x80 - синхросбой (для совместимости также при A=0x01) A=0x03 - начало индексной метки A=0x13 - конец индексной метки A=0x02 - зацикливание дорожки (переход на начало) Каждая дорожка содержит 6464 16-битных слова, младший (первый) байт которого - данные, старший (второй) - описанные выше признаки. Индексная метка в образе может отсутствовать, тогда я её начало ставлю в первом байте дорожки, а конец - по смещению 0x30, хотя наверное можно это сделать и как-то иначе). Если признака A=2 не встречено, дорожка просто прокручивается по всей длине. В соответствии с остальными признаками, устанавливаются регистры данных и состояния контроллера. Более подробно тонкости реализации можно посмотреть у меня в исходниках. В действительности, всё это можно реализовать намного более эффективно, чем это сделано у меня. Успехов! Олег. |
icedwarm |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 3 мая 2010 19:41 Сообщение отредактировано: 3 мая 2010 22:47
Ответ от Вольдемара. привет! Тему почитал, там вроде и так всё написано, но я из неё не понял или не видел главный вопрос: эмулятор имеется ввиду именно дисковода (т.е. привода) или привод + контроллер ? Потому что сэмулировать привод + контроллер очень легко, там никаких проблем не будет, главное - хотя бы примерно соблюдать скорость обмена (т.е. скорость обмена с как-бы-реальным-дисководом), а вот именно сэмулировать только привод, подключенный к обычному контроллеру агата - это уже сложнее, мне кажется. Хотя, с учётом того, что схемы, форматы, ПЗУшки контроллера уже известны и опубликованы - наверное, задача тоже решаемая вполне. Есть один разработчик (Alexey Belodvortsev), который работает над аппаратным агатом на современной базе, он вроде тоже собирался эмулировать флоп, но не знаю, в каком у него это состоянии - он вроде над дисплеем и сисплатой сидел, до дисковода не близко. Я если встречу его, ссылку на тему дам, может он что нибудь тоже подскажет. В аттаче оригинал описания AIM-формата. Ну и немного по теме тут (по 800кб устарело, но по 140-ке пока именно так): http://ssmu.ru/er/agat/Soft/notes.shtml Подробности по контроллеру 800кб: http://ssmu.ru/er/agat/Reading/fl800k.shtml Там описания, схемы, прошивки... |
<<Назад Вперед>> | Страницы: 1 2 * 3 4 5 6 7 8 9 | Печать |
Полигон-2 » Другие архитектуры » Загрузить АГАТ-9 |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |