Важная информация

User Tag List

Страница 26 из 28 ПерваяПервая ... 22232425262728 ПоследняяПоследняя
Показано с 251 по 260 из 271

Тема: Просмотр образов CP/M дисков

  1. #251

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black Cat / Era CG Посмотреть сообщение
    Ага вижу внутри CP/M, глазьями

    А вот отсюда по-подробнее, я про жесткие диски не знаю совсем ничего. Как оно там все устроено, где посмотреть тип, как посчитать смещение...
    Можно сюда, можно в личку, можно ссылки.
    Вот тут можно почитать:
    https://ru.wikipedia.org/wiki/%D0%93...B8%D1%81%D1%8C

    Классическая структура главной загрузочной записи MBR (начального 512-байтного сектора образа):
    Код:
    Смещение 	Длина, байт 	Описание
    0000h 	446 	               Код загрузчика
    01BEh 	16 	               Раздел 1 	Таблица разделов
    01CEh 	16 	               Раздел 2
    01DEh 	16 	               Раздел 3
    01EEh 	16 	               Раздел 4
    01FEh 	2 	               Сигнатура (55h AAh) - опознаватель MBR
    В описателях разделов нас интересуют только 3 переменные (далее смещение от начала 16-байтной записи раздела)
    04h Код типа раздела (uint8) - 0=удаленный/свободный, 052h=CP/M, <>052h - прочие типы
    08h Смещение первого 512байтного сектора от начала образа (uint32)
    0Ch Количество секторов раздела (uint32)
    Последний раз редактировалось Error404; 26.09.2015 в 15:13.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  2. #252

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,982
    Спасибо Благодарностей отдано 
    1,085
    Спасибо Благодарностей получено 
    1,182
    Поблагодарили
    919 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Вот тут можно почитать:
    https://ru.wikipedia.org/wiki/%D0%93...B8%D1%81%D1%8C
    А я читал... не дочитал до описания внутренностей
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  3. #253

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,982
    Спасибо Благодарностей отдано 
    1,085
    Спасибо Благодарностей получено 
    1,182
    Поблагодарили
    919 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    08h Смещение первого 512байтного сектора от начала образа (uint32)
    Смещение, я так понимаю, тоже в секторах?
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  4. #254

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black Cat / Era CG Посмотреть сообщение
    Смещение, я так понимаю, тоже в секторах?
    Да, обе переменные (+08h uint32, +0Ch uint32) исчисляются в 512-байтных юнитах (секторах) сплошной нумерацией (0..MAXINT), где 0=MBR. Это так называемая LBA-адресация (секторов).
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  5. #255

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,982
    Спасибо Благодарностей отдано 
    1,085
    Спасибо Благодарностей получено 
    1,182
    Поблагодарили
    919 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Дааа... В память такой не запихаешь... Че ж делать-то?...
    Хотя, конечно, можно... смотря какого размера раздел...
    Последний раз редактировалось Black Cat / Era CG; 26.09.2015 в 20:39.
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  6. #256

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black Cat / Era CG Посмотреть сообщение
    Дааа... В память такой не запихаешь... Че ж делать-то?...
    Хотя, конечно, можно... смотря какого размера раздел...
    Раздел может быть до сотни мегабайт в реализации на Орионе (а максимальное теоретическое ограничение CP/M на файловую систему - 65356*16384=1073741824 байт, т.е. 1Гбайт).

    Решение - не помещать в память, а работать с файлом. Или сделать "проекцию" - функцию, которая вместо обращения к элементу массива в памяти обращается к нужному сектору на диске.

    Мне в плагине было это просто сделать, т.к. изначально в памяти храню только структуры каталога, а сами файлы читаются непосредственно из образа. Т.е. достаточно было просто добавить +offset (нулевой в случае дискет и ненулевой для образов HDD) в процедуру чтения с "диска" (и записи)
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  7. #256
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #257

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,982
    Спасибо Благодарностей отдано 
    1,085
    Спасибо Благодарностей получено 
    1,182
    Поблагодарили
    919 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Решение - не помещать в память, а работать с файлом. Или сделать "проекцию" - функцию, которая вместо обращения к элементу массива в памяти обращается к нужному сектору на диске.
    Блин. Это мне всю логику софтины перепахивать))
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  9. #258

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,982
    Спасибо Благодарностей отдано 
    1,085
    Спасибо Благодарностей получено 
    1,182
    Поблагодарили
    919 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Error404, есть вопрос по поводу байтов 12 и 15 в директории.
    В этой доке http://www.classiccmp.org/cpmarchive.../format22.html написано:
    RC - Number of records (1 record=128 bytes) used in this extent, low byte.
    The total number of records used in this extent is

    (EX & exm) * 128 + RC
    То есть по логике, я считываю байт 12. вычленяю у него соответствующие (включенные в exm) биты, в итоге узнаю размер соответствующих данной записи дериктории и номер части (экстента файла, если я не путаюсь в терминах).
    Вопрос, как происходит (должен происходить) обратный процесс?
    При добавлении файла в образ например.
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  10. #259

    Регистрация
    13.07.2009
    Адрес
    Дзержинск
    Сообщений
    1,006
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    я просто оставлю здесь эжто
    http://disktrouble.narod.ru/troublr.html
    лучьше позно чем никогда

  11. #260

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,982
    Спасибо Благодарностей отдано 
    1,085
    Спасибо Благодарностей получено 
    1,182
    Поблагодарили
    919 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Nuts_ Посмотреть сообщение
    я просто оставлю здесь эжто
    http://disktrouble.narod.ru/troublr.html
    лучьше позно чем никогда
    Видел. Хорошая, наверное, штука.
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

Страница 26 из 28 ПерваяПервая ... 22232425262728 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Создание образов CP/M дискет
    от Zloy в разделе Софт
    Ответов: 9
    Последнее: 06.12.2016, 19:12
  2. FAR: просмотр графики
    от elf/2 в разделе Утилиты
    Ответов: 39
    Последнее: 31.07.2009, 20:18
  3. Просмотр загрузчика в TR-DOS
    от Zloy в разделе Для начинающих
    Ответов: 4
    Последнее: 29.09.2008, 20:09
  4. Перенос образов дискет на реал
    от Zloy в разделе Софт
    Ответов: 20
    Последнее: 22.09.2008, 19:21
  5. Архив 90 дисков!!
    от DINAMIX в разделе Разный софт
    Ответов: 3
    Последнее: 05.03.2008, 17:35

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •