Вход

Просмотр полной версии : В чем проблема копирования дискеты?



Dut_Norshi
23.07.2006, 04:49
Привет!

Объясните пожалуйста(или пните туда, где можно прочитать), в чем проблема копирования спектрумовской дискеты на PC(и обратно)?

Т.е. почему под GNU/Linux не написано копировальщика? Это связано с огромной трудностью написания или просто никому это не интересно? Может какие-то другие проблемы?

Когда я, ради интереса, попробовал просто скопировать дискету с помощью dd, я получил только I/O error.

Объясните пожалуйста! Заранее спасибо! :v2_rolley

SMT
23.07.2006, 10:06
проблема в нестандартном размере сектора и нумерации секторов. если хочешь видеть спектрумовские дискеты как блочные устройства, придётся поменять эти константы в исходниках. но тогда стандартные дискеты не увидишь ;-) заложить в драйвер несколько форматов не так просто, если об этом не подумали заранее

Dut_Norshi
23.07.2006, 20:57
Один мой польский товарищ нашел вот такой пакет программ и библиотеку. Называется libdsk:
Description: Library for accessing disks and disk image files
Libdsk is a library, intended for use in emulators, for accessing disks
and disk image files.
.
Libdsk provides drivers for raw files, .dsk files (as used in some Amstrad
and Sinclair emulators), MYZ80 hard drive image files, and (in the Linux
version) the floppy drive. It also provides floppy controller emulation.

Сайт этого пакета: http://www.seasip.demon.co.uk/Unix/LibDsk/
Англичане уже быстрее всех написали :v2_wacko:

Я попробовал скопировать дискету(формат acron640) с помощью dskdump, но файлик получился размером 680кбайт(он почему-то решил что у меня 82 дорожки :v2_confu: ). Но информация с дискеты перекопировалась! Так что это возможно. Но там почему-то добавился какой-то свой заголовок в начале образа:
MV - CPCEMU Disk-File^M
Disk-Info^M
(LIBDSK)

Естественно, этот файл в эмуляторе не открывается, но если ручками заглянуть, то содержимое диска видно.

Остается надеяться на крутых русских программеров :v2_rolley К программе прилагается руководство, в котором описана каждая функция и структура! Может кто-то сделает/переделает утилиту для чтения/записи спектрумовских дискет, а? :v2_biggr:

fk0
24.07.2006, 12:19
Привет!
Объясните пожалуйста(или пните туда, где можно прочитать), в чем проблема копирования спектрумовской дискеты на PC(и обратно)?


В PC контроллере.



Т.е. почему под GNU/Linux не написано копировальщика?


Ибо некому. Хочешь написать? Могу ответить на интересующие вопросы.
Мне некогда и лень. Принципиальных трудностей, как в виндах (где штатный
драйвер дисковода впринципе не позволяет) -- нет. Имеется полностью прозрачный
(на уровне команд самого контроллера) интерфейс к контроллеру. Достаточно
заглянуть в исходники fdrawcmd.



Это связано с огромной трудностью написания или просто никому это не интересно? Может какие-то другие проблемы?


А, ламерские поделки финских студентов, красноглазых пионеров и других пингвинов -- кому оно нужно? Завтра про неё все забудут. Система 70-х годов
без графики со страшной чёрной консолью, и там ещё всё время какие-то команды
нужно учить. (C)



Когда я, ради интереса, попробовал просто скопировать дискету с помощью dd, я получил только I/O error.


Ибо /dev/fd0 расчитывает получить 9/17 секторов по 512 байт.

Нужно самому программировать контроллер по образу и подобию fdrawcmd
и cmptools.

http://fdutils.linux.lu/faq.html

http://www.moria.de/~michael/cpmtools/

Dut_Norshi
24.07.2006, 12:45
Ого, какое дело. Спасибо за информацию!