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

User Tag List

Страница 23 из 54 ПерваяПервая ... 192021222324252627 ... ПоследняяПоследняя
Показано с 221 по 230 из 535

Тема: ZX Disk Studio - программа для работы с образами дисков

  1. #221

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    14
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Anykey Посмотреть сообщение
    Мне автор так ответил. Что в одном дисководе должна быть эталонная дискета, а в другом считываемая. В драйвере команда есть чтения дорожки целиком. И когда я пробовал читать дорожку, вылитало сообщение не найден дисковод B. Не помню почему так сделано, но я тогда забил на эту команду.
    этот режим придумали чтобы дампить амиговские диски на ПЦ
    собственно маньяки амижники и придумали
    просто fdrawcmd умеет им пользоваться

    в диск А вставляется диск который прочитать надо
    в B - обычный IBM PC formated

    идея вроде такова
    используется то что контроллер дисковода не в курсе о текущем диске
    выбираем диск Б, начинаем читать реальный сектор
    потом быстро переключаем на драйв A и ставим битрейт в два раза выше
    потом это дело парсим
    как-то так.

    вот тех описание процесса


    The following paragraphs describe such a program.

    I. How to read a full track


    I.1. Technical background

    The PC-AT controls the floppy disk drives using a standard Nec PD 765 floppy disk controller (FDC) addressable at I/O addresses 3F4h and 3F5h plus two output registers (the Digital Output Register at I/O address 3F2h, and the Configuration Control Register at I/O address 3F7h), and one input register (the Digital Input Register at I/O address 3F7h).

    The following technique makes use of the architecture of the 765, and of the fact that the 765 is not linked on a programming point of view to the other hardware registers.

    The Digital Output Register gives control over the disk drive motors, and the selection of a particular disk drive for disk operations. The Configuration Control Register enables the selection of a bit rate for disk read/write operations. These controls are made independently from the NEC 765.


    I.2. The algorithm

    This algorithm requires two disk drives installed (read the 1DISKDRV.TXT file to get an explanation why reading raw data generally with only 1 disk drive is physically impossible).
    Insert the disk you want to fully read in one drive (let’s say A: in this example).
    Insert another disk in the other drive (B: in this example). This disk must be IBM-formatted.

    Select drive A: using port 3F2h. Also turn on motors for both A: and B:.
    Go to the desired track and side using standard FDC 765 commands.
    Swap to B: using port 3F2h.
    Select density appropriate for IBM-formatted disk in B: using port 3F7h.
    Issue a “Read a Track (Diagnostic)” command using the FDC 765. The parameters should match a sector that is physically present on the IBM-formatted disk, for example sector #1. For this command, set a sector size of at least 8KB (even if the physical sector is 512 bytes long). 16KB and 32KB sector sizes can be set to read more raw data. DMA registers should have been set accordingly.
    Watch continuously the DMA address until it is different from the starting address. When it is so, it means that the 765 has begun transferring sector data, so it has previously found the sector header on B:.
    As soon as the DMA address is increased, swap to A: using port 3F2h. This is the main idea behind this technique. The 765 has no way to know disk selection has changed because port 3F2h is not linked to it. This 1st step was discovered on the 11th of December, 1999.
    Change density (bit rate) using port 3F7h. For a full track read, including MFM synchronization bits, you must set a bit rate twice the standard value. For example, when reading a 250 000 bits/sec track (double-density track), set the bit rate to 500 000 bits/sec. This 2nd step was discovered on the 18th of December, 1999.

    The FDC 765 will now read the disk in drive A: from now on, thinking it is a big sector on disk in drive B:. Wait for FDC interrupt. Of course, most status bits at the end of this operation should be just ignored, such as the data error (CRC) flag (which will be obviously set). The main indicator of a successful operation is the DMA counter or address. For a 32KB “sector” read, the DMA address will equal the starting address plus 32768 if the operation was successful.

    Since some bytes were read at first from drive B:, and the swap of drives and bit rates will require a little time to settle, it is wise not to consider the first 50 bytes read.

    If the track to be read contains an IBM sector, drive swapping may not be necessary. Yet, bit rate swapping can be useful, especially for protected or non-standard tracks.


    II. Example of data written to disk

    Let’s take the example of a byte written to disk. Let this byte be 4Eh (ASCII character ‘N’). In binary, this is 01001110. We’ll consider it is written on a double-density disk (at 250 000 bits/s).

    The MFM encoding will insert a synchronization bit between every two bits. A ‘0’ synchronization bit is placed if either of the two neighboring bits is a ‘1’ (or both). A ‘1’ synchronization bit is placed otherwise, i.e. if both neighboring bits have the value ‘0’.

    In our example, the character ‘N’ is encoded this way (if the bit on the left was ‘0’):
    0 1 0 0 1 1 1 0 The character ‘N’.
    1 0 0 1 0 0 0 0 The MFM synchronization bits.
    1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 The resulting data, written to disk.

    In hexadecimal notation, the written data corresponds to 9254h

    This encoding will ensure that not too many ‘0’s will be written consecutively. A ‘0’ corresponds to a stay of the magnetization on the surface of the disk, and a ‘1’ corresponds to a change of the magnetization. If too many ‘0’s were written consecutively, the FDC may lose synchronization with the data stream from the disk drive when reading.

    The FDC 765 encodes data using MFM, but it also decodes data always considering it was previously encoded using MFM.

    The FDC will first look for three standard MFM synchronization words. They are different from the synchronization bits for MFM encoding. The standard MFM synchronization word corresponds to a value of 4489h, encoded value (would be A1h when decoded), and it is not a standard MFM encoding (A1h MFM encoding would be 44A9h). This way, this value (4489h) will never be encountered when reading normal data. This word is used for the FDC to find the start of sector headers and data.

    One of the many differences between IBM and Amiga sectors for example is that the IBM format requires three synchronization word, whereas the Amiga format only requires two.

    III. What is read of these data based on various methods

    When using the technique described in this paper, the FDC will decode data as it does usually. This will of course result in a buffer where only half the full data is present.

    Since the data read from the disk in drive A: were not aligned with synchronization words of a sector header on the disk in drive A:, but on the disk in drive B:, the data read can be misaligned. The probability for the data to be misaligned is of 50%.

    Two different methods can be considered when reading data.


    III.1. “Normal” density reading

    ...

    III.2. “Double” density reading

    ...

    V. What to do with full data from a track

    When the full data from a track are extracted, they can be either stored in this raw format for later use, or analyzed.

    One of the first tasks is to detect synchronization words (4489h) in the case of a standard MFM track (IBM, Amiga, …). Sector headers, sector data, and gap areas can be parsed to create a higher level, structured buffer.

    In a last operation, standard tracks can be detected (9-sector IBM track, 11-sector Amiga track, …) and the buffer simplified with only the decoded sector data.

    In any case, the track buffer should be saved to disk in an appropriate format. It can also be exploited directly, for example within an emulator or a file manager.

    [свернуть]


    полные доки в аттаче
    Вложения Вложения

  2. #222

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    14
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZX_NOVOSIB Посмотреть сообщение
    Мда.. Остается видимо только на реале копировать. Ибо ни экспериментировать с заклеиванием окошка, ни с паянием какой-то приблуды к кабелю никакого желания нет вообще.
    в теории можно на реале "отресторить" диски в DFU,
    во время этого процесса он их переформатирует и они смогут прочитаться
    но имхо стремно потерять во время формата диск
    проше отформатировать в том-де DFU и потом на него скопировать с оригинала.
    Последний раз редактировалось esl; 05.07.2014 в 20:48.

  3. #223

    Регистрация
    24.12.2006
    Адрес
    р.п. Маслянино, Новосибирская обл.
    Сообщений
    5,605
    Спасибо Благодарностей отдано 
    254
    Спасибо Благодарностей получено 
    268
    Поблагодарили
    187 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В общем те дискеты, у которых Disk Studio не читала каталог я откладывал в сторону. Их потом на реале просто копировал на 3.5, а потом считывал студией. Всё бы ничего, но попались 2 защищенных дискеты.

    Если просто на реале скопировать, то получаются файлы подозрительно маленького размера, и естественно ничего не работает. Пробовал копировать "продвинутыми" спектрумовскими копировщиками типа макдональда - пишут ошибку или зависают (перепробовал массу копировщиков). Кстати если в командерах поставить "вычисление длинн" то файлы из 1 секторных превращаются в несколько-тысяч-секторные файлы. Короче на реале никак и ничем не скопировать.

    Решил на писюке попробовать.. Из под доса.. MAKEFDI пишет "Failed read IDAM" и всё.
    Teledisk пишет "This diskette appears to be blank, high-density, or unreadable".
    Amd copier пишет что дискета не тр-дос.
    И т.д. и т.п.

    Потом решил студией прочитать, прочлось, но выдавало ошибку 83 сектора на нулевой дорожке. Получился образ, который не грузится (disk error. trk0. sec9)
    Короче я в шоке. Как эти дискеты оцифровать то? Вот архив, в нем два образа: 1.если просто на реале скопировать 2.если студией прочитать.
    ___________

  4. #224

    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    426
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alexandr Medvedev Посмотреть сообщение
    Его ещё нет, я только чтение сделал, запись доделаю тогда выложу.
    Есть подвижки в этом направлении?

  5. #225

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,289
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZX_NOVOSIB Посмотреть сообщение
    я в шоке. Как эти дискеты оцифровать то?
    а на реале игры с этой дискеты запускаются ?


  6. #226

    Регистрация
    24.12.2006
    Адрес
    р.п. Маслянино, Новосибирская обл.
    Сообщений
    5,605
    Спасибо Благодарностей отдано 
    254
    Спасибо Благодарностей получено 
    268
    Поблагодарили
    187 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    а на реале игры с этой дискеты запускаются ?
    Да, конечно, на реале всё работает, вроде даже без бэдов.
    Ща создам новый топик, ибо вследствие моих экспериментов появилась новая инфа и новые обстоятельства.
    ___________

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

  8. #227

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,289
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZX_NOVOSIB Посмотреть сообщение
    Да, конечно, на реале всё работает
    судя по каталогу все бейсик файлы находятся в одинаковом месте.
    (последнии колонки сектор/трек)
    наверно там хитрый бут который знает истинное расположение файлов.

  9. #228

    Регистрация
    24.12.2006
    Адрес
    р.п. Маслянино, Новосибирская обл.
    Сообщений
    5,605
    Спасибо Благодарностей отдано 
    254
    Спасибо Благодарностей получено 
    268
    Поблагодарили
    187 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    goodboy, всё, создал отдельную тему. А насчет хитрого бута, у меня две такие дискеты, одна дожила в первозданном виде, и возможно с неё удастся чем-то снять работающий образ! А вот вторая похоже утеряна навеки, ибо много лет назад на ней перестал грузится бут, я его стер и записал новый, и всё сразу перестало работать, ибо нарушилась вся схема защиты, щас там просто список из 1-секторных бейсик файлов и несколько кодовых файлов, восстановить похоже нельзя.
    ___________

  10. #229

    Регистрация
    01.03.2005
    Адрес
    Саранск
    Сообщений
    5,830
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    247
    Поблагодарили
    106 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Тоже мне проблема найти местонахождение басиков. Вряд ли басики шифровались.
    Свирепый агрессивно-депрессивный мордовец!
    Не уверен - не напрягай!

    Не сдавайся. Дыши?

    Virtual TR-DOS

  11. #230

    Регистрация
    24.12.2006
    Адрес
    р.п. Маслянино, Новосибирская обл.
    Сообщений
    5,605
    Спасибо Благодарностей отдано 
    254
    Спасибо Благодарностей получено 
    268
    Поблагодарили
    187 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Shadow Maker Посмотреть сообщение
    Тоже мне проблема найти местонахождение басиков. Вряд ли басики шифровались.
    Т.е. из тех двух образов, что я выложил (в одном есть каталог, но самой инфы нет, в другом есть инфа, но ошибка в каталоге) можно слепить рабочий образ? Если так, было бы круто.

    ---------- Post added at 17:54 ---------- Previous post was at 17:53 ----------

    В соседней теме выложил образа, которые сделаны Теледиском, но там совсем всё печально походу..

    ---------- Post added at 17:55 ---------- Previous post was at 17:54 ----------

    Мне там советуют индексное отверстие заклеить, но что-то я х.з. Разве дело в индексном отверстии? Я думал дело в защите, а сектора вроде нормально все читаются. Или я не прав?
    ___________

Страница 23 из 54 ПерваяПервая ... 192021222324252627 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 10
    Последнее: 15.10.2022, 20:44
  2. Ответов: 82
    Последнее: 07.05.2011, 20:32
  3. Ответов: 0
    Последнее: 01.01.2009, 09:34
  4. программа для теста beta-disk
    от spleen в разделе Программирование
    Ответов: 11
    Последнее: 02.07.2006, 21:51
  5. работа с образами HDD в Unreal Speccy
    от elf в разделе Эмуляторы
    Ответов: 15
    Последнее: 30.03.2005, 18:22

Ваши права

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