PDA

Просмотр полной версии : micro-HOWTO: работа с реальными TR-DOS дисками под LINUX



boo_boo
25.02.2007, 22:27
весь день вкуривал в сабжевый вопрос. вот результат, может, кому пригодится :rolleyes:

какой нужен софт?
последняя версия fdutils (http://fdutils.linux.lu/), испытано с версией 5.5

как должны быть отформатированы диски?
отформатированные trdos-ной командой format диски, как правило, нигде кроме как на zx не прочитать. форматировать нужно пафосными утилитами типа ADS, которые создают нормальные индексные поля.
скорее всего, можно форматировать и под LINUX утилитой superformat, а потом инициализировать 9-й сектор, но я не проверял..

как прочитать trdos-диск в .trd-файл?
задать формат диска:
setfdprm <девайс_флопа> dd sect=16 head=2 cyl=80 ssize=256 dtr=2
(<девайс_флопа> -- к примеру /dev/fd0 , dtr отвечает за плотность записи, если диск не читается, можно попробовать 1)
и слить данные в trd-образ:
dd if=<девайс_флопа> of=<диск.trd> bs=256

как записать .trd-образ на диск?
задать формат диска аналогично пред. пункту, вставить отформатированный диск, и сделать:
dd of=<девайс_флопа> if=<диск.trd> bs=256

куда копать дальше? (нестандартные форматы и тд)?
придется обращаться напрямую к контроллеру флопповода. можно это делать ioctl'ами, а можно из скриптов утилитой fdrawcmd, которая позволяет передать команду контроллеру и получить ответ. см. man fdrawcmd. да, и перед "разговорами" с контроллером стоит сделать:
floppycontrol --resetnow 2
fdrawcmd recalibrate <drivesel>

NovaStorm
26.02.2007, 10:18
"может, кому пригодится" - в эту субботу и к нам в город наконец пожаловало ФСБ шмонать на предмет лицензий, так что всё идет куда надо =)
Потестировать в виду отсутствия рельной беты не могу, но могу выразить сомнение о применимости fdrawcmd к нестандартным форматам. тк многие защиты прерывали команду контроллера, а тут могут быть проблемы с таймингом.

boo_boo
26.02.2007, 12:31
могу выразить сомнение о применимости fdrawcmd к нестандартным форматам. тк многие защиты прерывали команду контроллера, а тут могут быть проблемы с таймингом. в таких гнусных случаях да, пожалуй... :v2_crazy:

SfS
01.01.2010, 09:30
Когда я получил Феникс, возникла проблема - как для него на PC диски готовить. Решение пришло такое:

1. На HD дисках - обязательно заклеиваем прорезь ! (чтобы диск виделся как DD).

2. Пишем скрипты форматирования диска, который я назвал trd-format:

#!/bin/bash
floppycontrol --reset 2
superformat /dev/fd0 DD sect=16 ssize=256 cyl=80

3. Пишем скрипт для копирования trd-образов файлов с PC на trdos-диск (pc2trd):

#!/bin/bash
dd if="$1" of=/dev/fd0 bs=256 count=2560

4. Пишем скрипт для копирования trd-образов файлов с trdos-диска на PC (trd2pc):

#!/bin/bash
dd if=/dev/fd0 of="$1" bs=256 count=2560

-------------------------------------------------------

Теперь - форматируем диск:

trd-format

Заливаем на него образ диска:

trd2pc MegaProga.trd

Всё. можно вставлять диск в Спек и радоваться.

Обратно - сложенее. PC может понимать диски, форматированные ТОЛЬКО программой trd-format, но не на реальном спеке. Учитывайте это.

Получить образ диска:

pc2trd Image.trd

-------------------------------------
Буду рад, если кому поможет написанное мной.

UEA
14.07.2011, 00:57
SfS, а чтобы записать новый образ, выходит, нужно снова форматировать дискету? Потому как dd пишет ошибку ввода-вывода, если этого не сделать.

Demige
11.02.2012, 00:58
2 UEA:
Делаешь setfdprm <девайс_флопа> dd sect=16 head=2 cyl=80 ssize=256 dtr=2 перед каждой командой на запись и форматировать не надо.

Так же вот такое дополнение. Долго мучился с записью 3.5" дискет. Форматировать под PC не получалось, выяснил почему:

man superformat


--sizecode sizecode
Set the sector size to be used. The sector size is 128 * (2 ^ sizecode). Sector sizes below 512 bytes
are not supported, thus sizecode must be at least 2. By default 512 is assumed, unless you ask for more
sectors than would fit with 512 bytes.


Помогло форматирование в ADS на реале в НЕТУРБО режиме - такие дискеты на PC записались. Другие утилиты (FUT, DCU) хоть и позволяли выбирать режим нетурбо - на поверку это было вранье (может только на моем пентагоне).

Причем надо заметить что 5.25 можно было форматировать и в турбо режиме (тоже на реале) - на работоспособности это не сказывалось.

newart
11.02.2012, 02:48
Demige, а много у тебя дискет? Не хочешь сделать образа?

Demige
11.02.2012, 10:02
А зачем? Всё это есть в virtual TRDOS, навряд ли представляет ценность. Могу сделать образ базы - поглядишь чего нужно... Дискет около 150 5.25.

Базу открывать - DDB.

newart
11.02.2012, 10:17
А зачем? Всё это есть в virtual TRDOS, навряд ли представляет ценность. Могу сделать образ базы - поглядишь чего нужно... Дискет около 150 5.25
Хочешь прикол?


>>у меня всё ценное уже давно в интернетах
о как
а где скачать?
>>имею ввиду что ничего уникального у меня нет
>>и что всё уже есть доступно

другой человек:

Нафига тебе это ?! у меня помнится было пару кассет с прогами типа арт студио, копировщики и еще что-то, остальные с играми. Так ведь игры на тр-досе, наверное уже все выложили.

И т.п. Такие ответы я слышу практически на всякое упоминание о дискетах и кассетах.

Надо ли говорить насколько это бесконечно далеко от истины? В каждой коллекции что то да находится новое, где то больше, где то меньше. Иногда нужно оцифровать 100 кассет что бы выудить 3 релиза. А иногда на 10 дискетах находится новья больше чем на 500...

Demige
11.02.2012, 10:43
Хорошо. Принесу все дискеты - оцифрую :).

Пока вот системные диски. Жаль не все прочитались. Попробую еще на другом дисководе.
http://depositfiles.com/files/v73vx1vjy

Demige
13.02.2012, 00:27
Выложил все свои диски тут:
http://zx.pk.ru/showthread.php?t=6107&page=11

Тему нужно почистить...