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

User Tag List

Страница 10 из 10 ПерваяПервая ... 678910
Показано с 91 по 95 из 95

Тема: Spectrum Archive Reader - Программа для чтения TR-DOS дисков

  1. #91
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    11,809
    Спасибо Благодарностей отдано 
    395
    Спасибо Благодарностей получено 
    599
    Поблагодарили
    314 сообщений
    Mentioned
    31 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от CPLx Посмотреть сообщение
    А каким образом, какой командой? И были ли признаки что он выдает межсекторные данные?
    Код:
    		DeviceIoControl(h, IOCTL_FDCMD_SEEK, &Track, sizeof(Track), NULL, 0, &dwRet, NULL);
    
    		SetDataRate(h, 1);										// 300kbps
    
    
    		FD_READ_WRITE_PARAMS rwp = {FD_OPTION_MFM, 1, 0, 0,		// Определить rpw:
    									0, 7, 10, 0, 0};			// Режим чтения - MFM
    																// PHead - 0 (Phisycal Head 0)
    																// Cyl - 0 (not used)
    																// Head - 0 (not used)
    																// Sector - 0 (not used)
    																// Size - 0 (0 - 80 байт?, 
    																//			 1 - 256 байт, 
    																//			 2 - 512 байт,
    																//			 3 - 1024 байта,
    																//			 4 - 2048 байта,
    																//			 5 - 4096 байт,
    																//			 6 - 8192 байт,
    																//			 7 - 16384 байта.
    																// EOT - 5
    																// Gap - 0 (not used?)
    																// DataLen - 0 (not used)
    
    		printf("\nRaw Read");
    
    		DeviceIoControl(h, IOCTL_FDCMD_READ_TRACK, &rwp, sizeof(rwp),
    							DataBuf, 0x2000, &dwRet, NULL);
    
    
    		printf("\nAdr = %X, Len = %X\n", DataBuf, dwRet);
    
    		// pause
    
    		
    		WriteFile(rawFile, DataBuf, 0x2000, &dwRet, NULL);			// Записываем raw-дорожку в файл

    Да, сырая дорожка читалась.

  2. Этот пользователь поблагодарил Titus за это полезное сообщение:

    CPLx (14.08.2020)

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

  4. #92
    Member
    Регистрация
    23.11.2007
    Адрес
    Ростов-на-Дону
    Сообщений
    114
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Да, сырая дорожка читалась.
    Точно! У меня тоже прочиталась. Хотя тут надо именно те параметры выставлять. Круто.

  5. #93
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    11,809
    Спасибо Благодарностей отдано 
    395
    Спасибо Благодарностей получено 
    599
    Поблагодарили
    314 сообщений
    Mentioned
    31 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от CPLx Посмотреть сообщение
    Точно! У меня тоже прочиталась. Хотя тут надо именно те параметры выставлять. Круто.
    Лично мне показалось, что толку от чтения трека целиком маловато, т.к. когда сбивается синхронизация, невозможно восстановить информацию.

  6. #94
    Member
    Регистрация
    23.11.2007
    Адрес
    Ростов-на-Дону
    Сообщений
    114
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Лично мне показалось, что толку от чтения трека целиком маловато, т.к. когда сбивается синхронизация, невозможно восстановить информацию.
    Синхронизация срывается в момент окончания записи данных сектора - там возникает шов новой записи (записи сектора) и старой (данных записанных при форматировании). По этой причине, если трек форматирован, но на нём не производилась запись секторов, то синхронизация на нём не срывается (это я только что проверил: прочитал трек, и все пробелы там отображены корректно). Сейчас посмотрел на записанном треке - весь первый сектор прочитан правильно, а срыв синхронизации происходит в момент окончания его записи: по идее должны идти байты 4E, но идут 0x27 (которые представляют собой сдвинутый 4E). Т.е. мы знаем в какой точке происходит срыв синхронизации - это сразу после CRC сектора. Мы также знаем чем заполнены эти пробелы между секторами (байтом 4E), поэтому можем вычислить насколько там произошло смещение, сравнив полученные данные с теми что должны быть. Поэтому в принципе восстановить трек можно и попытаться.

  7. #95
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    11,809
    Спасибо Благодарностей отдано 
    395
    Спасибо Благодарностей получено 
    599
    Поблагодарили
    314 сообщений
    Mentioned
    31 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от CPLx Посмотреть сообщение
    Мы также знаем чем заполнены эти пробелы между секторами (байтом 4E), поэтому можем вычислить насколько там произошло смещение, сравнив полученные данные с теми что должны быть. Поэтому в принципе восстановить трек можно и попытаться.
    Нельзя восстановить, т.к. сместившись, информация уже не может быть расшифрована из MFM. Вернее, она расшифровывается но не правильно и с потерями. Обратно ее преобразовать в MFM, сместить на бит, и перерасшифровать не получится.

  8. Этот пользователь поблагодарил Titus за это полезное сообщение:

    CPLx (14.08.2020)

Страница 10 из 10 ПерваяПервая ... 678910

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

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

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

Похожие темы

  1. Ответов: 408
    Последнее: 18.06.2020, 17:23
  2. Программа для нарезания окон ZX Spectrum
    от AAA в разделе Утилиты
    Ответов: 84
    Последнее: 16.09.2010, 11:07
  3. Плагин FAR для чтения реальных дисков TR DOS
    от Alexandr Medvedev в разделе Утилиты
    Ответов: 2
    Последнее: 15.09.2010, 06:17
  4. Новый FAR plugin для форматирования дисков TR DOS
    от Alexandr Medvedev в разделе Утилиты
    Ответов: 3
    Последнее: 03.08.2007, 16:44

Ваши права

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