Вход

Просмотр полной версии : ВГ93 + LPT



Eugen
05.01.2010, 23:21
Кто-нибуть делал такое? И вообще это реально?

Alex_NEMO
05.01.2010, 23:30
Кто-нибуть делал такое? И вообще это реально?
Эт для чего же такой изврат?

Eugen
05.01.2010, 23:38
хардварная "'эмуляция" FDD на физическом уровне. С таким же вопросом зачем тогда LPT-AY???

psb
06.01.2010, 00:20
AY не требует выкачивания потока данных в реальном времени, а ВГ - требует. надо мыслить шире - делать голую оцифровку сигнала данных с дисковода и потом её оффлайн разгребать. будет куда универсальнее.

Eugen
06.01.2010, 00:31
я и не говорю, что будет легко. буфер на 8кБ на борту FDD решит проблемы реального юзанья, имхо. я знаю на амиге такая вещчь есть и без буфера. такой бы девайс лешил бы работы Teledisk, AMD Copier и др. А еслиб еще была поддержка Анреала, то вообще Softcopy и любой диск у тебя в идельной версии , и наоборот захотел записал тотже теледиск на реальный диск.

з.ы. Наверное я просто размечтался, но красивая мечта )))

psb
06.01.2010, 00:54
так или иначе - от ВГ надо избавляться. а идеальный копировщик уже придумали и сделали, где-то на форуме ссылки были (девайс, который подключается к компу и к дисководу, позволяет читать и писать вообще любые диски).

Eugen
06.01.2010, 01:20
не ленитесь, высказывайтесь. интересно ваше мнение. даже самое сказачное. не забываем, что мы рождены , чтоб сказку сделать былью

---------- Post added 06.01.2010 at 00:09 ---------- Previous post was 05.01.2010 at 23:58 ----------

Придумали как сделать копию, но не придумали как ее вернуть назад . жаль. иначе б я не поднял эту тему

---------- Post added at 00:20 ---------- Previous post was at 00:09 ----------


так или иначе - от ВГ надо избавляться
с таким успехом можно и от глючного куска гитенакса с Z80 избавится, НО! мне нравится слоган People.net - Бо люди хочуть ( Так люди хотят ). и мне хочется иметь частичку спектрума таком ввиде . я уверен, что еще найдутся люди, которые помечтают со мной

psb
06.01.2010, 02:48
Придумали как сделать копию, но не придумали как ее вернуть назад .
т.е. как??? куда назад? все копируется, а так же отдельно читается в образ и пишется из образа. плюс в том, что поддерживаются все форматы, любые плотности записи, любые контроллеры (и нет заморочек - особенностей конкретных контроллеров).

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

Mad Killer/PG
06.01.2010, 08:19
довольно интересно было бы перегонять диски прямо и вообще я мечтаю не просто о перегоне а неосредственно работе в эмуле с трдос дискетами...

IlyaMIV
06.01.2010, 08:39
Эмуль, Эмуль, Эмуль вы со своими эмуляторами так весь спек загубите и в гроб загоните!

psb
06.01.2010, 09:21
Эмуль, Эмуль, Эмуль вы со своими эмуляторами так весь спек загубите и в гроб загоните!
да ладно, чего кричать. эмуляторы-не_эмуляторы... один хрен на самом деле, просто кто-то для себя решил одно, кто-то другое. не нравится эмуляция - не юзай, но не пищи. плохо будет, если софт будет клепаться только под эмуляторы, но щас-то такого нет и не предвидится, пока все в здравом уме. никто не отрицает же, что софт обязан сначала работать на реале, а потом уже на эмуле.

Anykey
06.01.2010, 10:40
А я подключал верхнюю плату Profi v3.2 через DS89C450(MCS51)+FT245
к USB и так почти все свои диски считал (около 100), даже некоторые защищенные,
у которых не стандартные сектора, дорожки.
Но потом програмку переделал под стандартный IBM контроллер FDD с
драйвером fdrawcmd.sys

Eugen
06.01.2010, 10:59
Anykey, я тоже думал , что BDI прийдется через однокристалку вешать. а можно выложить какие-нибудь исходники, схемы ?

Anykey
06.01.2010, 11:20
Я себе делал отладочную платку на DS89C450,
очень удобно было у него прошивки менять через RS-232.
Поэтому схемы как таковой нет, можно по програмке догадаться что куда.
да еще я на плате Profi отдельно выводил IORQ и DRQ и IP для быстроты.
Чтение точно было сделано, а вот форматирование и запись делать начал, но недоделал.
В програмке еще программатор для РТ4 заодно.
Только как прикрепить?

IlyaMIV
06.01.2010, 11:21
Ну да, в начале проги переделать а потом вообще перейти на айбиэм. Один ушел, потом второй третий... И все.

Anykey
06.01.2010, 11:27
А вроде нашел.

Eugen
06.01.2010, 11:33
МИВ, я наоборот, вернулся.


Но потом програмку переделал под стандартный IBM контроллер FDD с
драйвером fdrawcmd.sys

скажи , как у тебя читаются диски с разными интерливаими. т.е. диски отформатированы TR-DOSом , а потом FUTом пара дорожек отресторена ?

Anykey
06.01.2010, 12:08
В вареанте с BDI я ловил индексный импульс и после него начинал
сканировать дорожку до следующего импульса. Т.е. в образе сектора на дорожке
располагаются так же как и на диске.
Во втором варианте в драйвере есть функция сканирования дорожки,
которая возвращает последовательность заголовков секторов в порядке их
размещения от индексного отверстия, т.е. получается все тоже самое.

---------- Post added at 14:08 ---------- Previous post was at 14:02 ----------

Один минус fdrawcmd.sys - для чтения сырых данных дорожки
(вместе с полями и заголовками) необходимо наличие в компе
двух дисководов. А у меня даже в BIOSe второго нет, контроллер только А поддерживает. Так что про некоторые защищенные дискеты можно забыть.
Но зато из образа CP/M писал диск и он уменя загружался на Profi.

Eugen
06.01.2010, 12:12
Anykey, второй вариант как-нибудь оформлен? или это коленочная версия?

Anykey
06.01.2010, 12:25
Второй вариант это только переделанная программа, использующая
драйвер и стандартный контроллер PC.
Можешь попробовать, правда не все работает,
задумок много было, а времени нету.
Драйвер можно найти http://simonowen.com/fdrawcmd/

Eugen
06.01.2010, 12:29
Спасибо. вечером буду разбиратся

Mad Killer/PG
06.01.2010, 13:16
Anykey, давайте пожалуйста опишите всю информацию о всём что делали,очень интересно,есть плата 3.02 верхняя профика,может и руки дойдут когда-то.

Anykey
06.01.2010, 13:28
Ладно домой приду попробую.

Anykey
06.01.2010, 23:29
Вот накидал схему.
В архиве описание файлов.
Лучший вариант это к Speccy прикрутить FT245,
я делал на DS89 т.к. мне было так удобней.

psb
07.01.2010, 00:56
Один минус fdrawcmd.sys - для чтения сырых данных дорожки
(вместе с полями и заголовками) необходимо наличие в компе
двух дисководов.
эээ... а это зачем?

Anykey
07.01.2010, 08:58
Два дисковода?
Я тож долго не мог понять для чего.
Потом спросил у автора.

Ответ:
Two drives are needed because reading starts on a drive containing a
high-density disk, then switches to the double-density (Amiga) disk
_during_ the read, in order to get the raw track data from the other
disk. Reading must be started in high density so the controller is
reading using a 500Kbps data rate. After switching to the double-
density disk, the same 500Kbps rate will then read both data and clock
bits from the Amiga disk. That MFM data can then be manually decoded
to extract sectors.

Действительно если нет второго дисковода и в нем нет диска,
то операция заканчивается ошибкой.

psb
07.01.2010, 09:50
интересно, хотя до конца не понятно...

Eugen
07.01.2010, 18:31
Anykey, спасибо, но праздники не дают адекватно занятся разбором (((

Поздравляю всех с Рождеством Христовым!!!

Mad Killer/PG
08.01.2010, 23:52
думается очень интересная разработка можно будет считать всякие ср-м исдос дискетки.

Anykey
09.01.2010, 00:26
А я все и считывал, что на профи шло.
Несколько дискет только в эмуле защищенных не запустилось,
я их отложил, чтобы потом разобраться, но пока руки не дошли.

Mad Killer/PG
09.01.2010, 10:55
Anykey, Если Вам не сложно ,то пожалуйста сделайте универсальную модель контроллера и многие люди будут Вам благодарны ,кроме этого моя концепция(это слово у некоторых считается ругательным:-))) Концепция (http://zx.pk.ru/showthread.php?t=8450) станет более реальной.

Anykey
09.01.2010, 16:47
Что значит универсальная модель?

Mad Killer/PG
09.01.2010, 20:21
Имеется ввиду модуль на макетке на каком-то свободно доступном "пике" ,чтоб можно было попробовать изготовить платку и спокойно подключать к ПЦ даже мне ламеру в железе.

Anykey
09.01.2010, 21:17
Т.е.
USB->PIC->ВГ->FDD ?
или
USB->PIC->FDD ?

Mad Killer/PG
09.01.2010, 21:25
Да можно и LPT-шось(ВГ ведь я так понял сама суть в ней и связке с ЛПТ портом)-5"25:)

psb
10.01.2010, 00:17
я настоятельно рекомендую постараться обойтись без ВГ, время, деньги и нервы сэкономите. на lpc2148 вполне можно слепить переходюк с усб в дисковод.

Eugen
10.01.2010, 23:15
мы не исчем легких путей, мы грузинские пионеры - сами придумываем себе припятствия, а потом их героически преодолеваем.


psb, если б мне нужен был переходник юсб-флопп , то я б купил готовый. но той 100% совместимости с ВГ93 нет нигде, где не применяется реальная WD1793. но, я рад, что ты проевляешь участие . спасибо.

з.ы. а остальные только пассажиры? помогите , кто чем может )))

psb
11.01.2010, 07:17
если б мне нужен был переходник юсб-флопп
кажется, ты не совсем понимаешь мысль мою... это не просто переходник усб-флопп, это "универсальный контроллер", 110% совместимый с ЛЮБЫМ контроллером флопов.

Eugen
11.01.2010, 13:37
psb, кинь в меня ссылку.

psb
11.01.2010, 19:40
ссылку надо искать на форуме, щас мне некогда. но просто проникнись смыслом. любой честный контроллер содержит в себе некую логику, расшифровывающую битовый поток с флопа. т.е. он интерпретирует этот поток. каждый контроллер - немного по-своему, и потому вылазят косяки в разных местах. а если просто сохранить весь битовый поток, без какой либо интерпретации, то тогда его можно будет и обратно записать 1 в 1, и превратить в любой образ уже на компе.
так что сделать это более чем реально.

Sentenced
16.03.2010, 02:05
psb

Если мне мой склероз не изменяет - речь идёт о способе работы контроллера а-ля Амига - берём "сырые" данные, а дальше делаем с ними что хотим, то есть, как хочется, так и интерпретируем, верно мыслю ? И пофик, что за формат диска, нужно только "объяснить" как "это" интерпретировать.

psb
16.03.2010, 08:38
в принципе да, все так. и контроллером-то это сложно назвать, ибо нужно просто оцифровать данные, интерпретировать их будет комп. здесь только одна проблема: способ отличный только для качественной записи, полуразмагниченные дискеты прочитать будет так же трудно.

Djoni
15.04.2010, 15:11
Anykey, Вы можете добавить в ZXDStudio поддержку образов .PRO
простой по секторной копии данных дискеты.

формат образа
80 track 5 x 1024kb sector 819200kb
T00 0 1,2,3,4,9
T01 1 1,2,3,4,5

для работы с образами PRO есть плагин OdiWcx by Sergey A. для TotalCommander и Farа
http://orion-z.hoter.ru/file/336/4433

Для получения образа :
утилитой FDI 2 TRD Converter v0.69 by Max Piwamoto
обрезаем заголовок у fdi файла.

а приклеивая заголовок к .pro файлу получаем образ fdi.
copy /b CPM.dat + CP-M_25.PRO CP-M25.fdi

Anykey
15.04.2010, 18:49
PRO ?
Т.е. тотже trd только заранее расчитан
на формат диска CP/M Профи?

Djoni
15.04.2010, 20:09
Т.е. тотже trd только заранее расчитан
на формат диска CP/M Профи?


да образ PRO не содержит никаких заголовков только байтовая копия данных
5 секторов размером 1024 байта сектора идут строго по порядку 1 2 3 4 9 …

Anykey
15.04.2010, 20:19
Время будет, сделаю.
___________________

Появилось 5 минут,
вот попробуй:

Djoni
17.04.2010, 15:07
Появилось 5 минут,
вот попробуй:

Большое спасибо прекрасно работает !!! :)

Anykey
17.04.2010, 15:13
А где оно используется?
Ни разу не встречал.

Djoni
18.04.2010, 14:23
А где оно используется?
Ни разу не встречал.


К сожалению, в эмуляторах не поддерживается :(
Только через плагин OdiWcx работающий c файловой системой CP/М 2.2 , работает с образом диска как с архивом, удаление копирование файлов, создание архива.
настройки форматов образов дисков можно менять в файле ODI.INI
уже настроен для работы c образами :

ODI (Orion Disk Image, CP/M) Orion - 128 ( korvet ) 819200 bytes
5 x 1024b sectors, double density, 80 tracks, 4k catalog, 4 system tracks

PRO (Profi Disk Image, CP/M) Profi 819200 bytes:
5 x 1024b sectors, double density, 80 tracks, 4k catalog, 0 system tracks

TRD (Spectrum Disk Image CP/M) ATM-turbo 655360 bytes:
16 x 256b sectors, double density, 80 tracks, 4k catalog, 2 system tracks

Anykey
18.04.2010, 14:49
В ZXDstudio попробуй:
Загрузи образ CPM, далее
Образ -> просмотреть CP/M каталог

В появившемся окне можно правой кнопкой на файле
кликнуть, появится меню

В нем для CP/M пока не работает переименовать, удалить, загрузить и просмотр картинки

Можно файл сохранить на винт, просмотреть текст и HEX виде.
Можно также посмотреть системные и скрытые файлы.
Точно по атрибутам файлов не нашел описания, но эти
файлы не видны на Профике и видимо они и делают диск системным.

Djoni
21.04.2010, 12:00
Можно также посмотреть системные и скрытые файлы.
Точно по атрибутам файлов не нашел описания, но эти
файлы не видны на Профике и видимо они и делают диск системным.
На Profi есть два вида системных дисков (загрузочных)
с системными дорожками, которые занимают
нулевой и первый треки они используются для хранения
машинных кодов процедур ОС (старая система).
И ОС в которой отказались от системных дорожек все части
системы загрузчик, BDOS, BIOS, драйвера лежат на диске
в виде обычных файлов в области USER 15
К конкретному месту на диске привязан лишь файл
BOOTK.COM содержащий начальный загрузчик; он должен копироваться первым
на диск.
с 1 по 4 сектор на нулевом треке занимает каталог диска, а с
девятого начинается область данных файлов где и находится файл BOOTK.COM
принцип загрузки ОС такой же как у iS-DOSа

Технология запуска iS-DOS http://ru.wikipedia.org/wiki/IS-DOS

Формат оглавления файла

Элемент оглавления имеет следующий формат:
байт 0 - код пользователя (0-32);
байты 1-8 - имя файла;
байты 9-11 - тип файла (если старший бит 9 байта равен 1 -
файл только для чтения; если старший бит 10 байта равен 1 -
файл системный);
байт 12 - номер текущего экстента (обычно устанавливается
в 0 вызывающей программой);
байт 13 - число байт в последней записи файла (устанавлива-
ется прикладной программой);
байт 14 - резервируется для системы;
байт 15 - счетчик записей для экстента "ЗК";
байты 16-31 - номера блоков, выделенных под информацию
файла.

Для загрузки образа использовать эмулятор unreal 0.37.3.fix4 7 nov 2009 by deathsoft в файле
unreal-p1.ini правим: ProfiMonochrome=1 включаем 2-х цветный экран 512х240 Profi :cool:

http://dlcorp.ucoz.ru/forum/23-487-1

Djoni
21.04.2010, 13:56
Ошибка в ZXDStudio при конвертировании из образа PRO в fdi ,td0
во всех заголовках сектора прописывается сторона диска 0 :(

CodeMaster
21.04.2010, 15:09
любой честный контроллер содержит в себе некую логику, расшифровывающую битовый поток с флопа.

Commodore 1541 к ним есно не относится? Это не контроллер как бы, а дисковод с ЧПУ :-)

psb
21.04.2010, 15:26
CodeMaster, я не понял, что ты хотел сказать.

CodeMaster
21.04.2010, 15:28
CodeMaster, я не понял, что ты хотел сказать.

Можно ли считать/записать образы дисков созданный на Commodore 1541.

psb
21.04.2010, 17:57
Можно ли считать/записать образы дисков созданный на Commodore 1541.
во-первых, я хз, можно или нет. но как бы оно ни было, наверняка всё можно.
во-вторых, того вопроса я все равно не понял, логика где?

CodeMaster
21.04.2010, 18:57
во-вторых, того вопроса я все равно не понял, логика где?


а идеальный копировщик уже придумали и сделали, где-то на форуме ссылки были (девайс, который подключается к компу и к дисководу, позволяет читать и писать вообще любые диски).

Или это касалось только ZX?

psb
21.04.2010, 19:32
Или это касалось только ZX?
нет, это касалось любых дисков, которые могут прочитаться на обычном дисководе, независимо от контроллера. однако на счет С64 я опять же не уверен:) я хз как их хитрый дисковод пишет на диск. но наверняка.

CodeMaster
26.04.2010, 15:52
нет, это касалось любых дисков, которые могут прочитаться на обычном дисководе, независимо от контроллера. однако на счет С64 я опять же не уверен:) я хз как их хитрый дисковод пишет на диск. но наверняка.

Дисковод там обычный (в смысле механики) а вот контроллер какраз хитрожопый, он пишет разное количество секторов на дорожку, поэтому ни один обычный дисковод их прочитать не может.

psb
26.04.2010, 16:22
опять же, мне это ничего не говорит, не понятно как он пишет на дискету физически. если там MFM, пусть и с нестандартной скоростью - все тогда прочитается.

CodeMaster
26.04.2010, 16:29
опять же, мне это ничего не говорит, не понятно как он пишет на дискету физически. если там MFM, пусть и с нестандартной скоростью - все тогда прочитается.

Там точно не MFM. На русском подробно не нашёл, вот глянь (http://en.wikipedia.org/wiki/Commodore_1541) на аглицком, может составишь мнение.

KALDYH
26.04.2010, 19:27
Я так думаю, дисковод можно подобно магнитофону подключить к звуковой карте. Вычитывать каждую дорожку по отдельности, а потом извлекать данные программно. Переключать стороны и двигать головкой можно по LPT. В итоге получается очень заморочно программно, зато очень просто в подключении.

psb
26.04.2010, 20:00
ну, то что непосредственно по этой ссылке, в основном известно, но на вопросы не отвечает:) полазил там еще, хз как на самом деле, но есть, все же, надежда, что будет работать:)

---------- Post added at 22:00 ---------- Previous post was at 21:55 ----------


Я так думаю, дисковод можно подобно магнитофону подключить к звуковой карте.
вот есть сомнения на счет звуковой. чисто теоретически, если обороты ооочень замедлить, то возможно... но придется так же и усилитель исправлять, если вообще это получится. для чтения чего угодно берется быстродействующий ацп, память, какая-нить цплдшка и... получается универсальный, суперточный считыватель ЛЮБЫХ дискет, разгребать можно на компе. наверняка можно и писать такой дамп, доработав дисковод.

KALDYH
26.04.2010, 20:04
вот есть сомнения на счет звуковой.
Хм, тут посчитать надо. А есть еще какой быстродействующий последовательный вход в обычной персоналке? (на ум приходит видеозахват:))

psb
26.04.2010, 21:08
А есть еще какой быстродействующий последовательный вход в обычной персоналке?
усб:) но ведь так и так без преобразователя ничего не сделать.

CodeMaster
27.04.2010, 08:06
(на ум приходит видеозахват)

Да, наши умельцы делали стриммеры на бытовых видеомагнитофонах ;-)

research
06.05.2010, 17:20
К дисководу можно подключить AVR типа меги вместо ВГ и в него вшить все необходимое для бетадиска, т.е. чтение и запись посекторно, или дорожки. Данные забирать и слать по USB. Контроллер стоит 60-120р, продается в любом захалустье, т.е. добыть проще, чем ВГшку. Любители извратов, могут повесить его на LPT.

или делать копир, дискета ->SDHC, это еще проще. Вставил дискету, нажал кнопку, на выходе получил TRD или что там еще за форматы есть, на случай ASM или IS-DOS

psb
06.05.2010, 19:57
т.е. флоп, мега, усб и 120р... сами-то верите?;))) но подход правильный.

Anykey
06.05.2010, 20:49
Можно попробовать на
PIC18F2550-I/SP Full-Speed USB 2.0 PDIP-28 - 147.82 руб.
Если без всяких сепараторов и выходных буферов, то вроде больше
ничего и не потребуется.
Можно взять исходники PICkit2 и на их базе сделать
переходник USB<->FDD

Anykey
09.05.2010, 18:06
Ошибка в ZXDStudio при конвертировании из образа PRO в fdi ,td0
во всех заголовках сектора прописывается сторона диска 0 :(

Здесь поправленная версия:http://zx.pk.ru/showpost.php?p=282368&postcount=1

Raven
13.05.2010, 03:06
Скачал даташит на PIC18F2455/2550/4455/4550... Интересная вешчь, я думаю перепрошиваемый контроллер накопителя на его основе сделать вполне реально. И даже LPT есть! Но, конечно, одним PIC во всех случаях не обойтись. Думаю, некоторые дисководы потребуют согласующих элементов, и кое-какой быстродействующей логики. Также не нашёл асинхронного программируемого последовательного порта - для некоторых старых накопителей потребуется специализированная микра

Sentenced
14.05.2010, 17:06
Commodore 1541 к ним есно не относится? Это не контроллер как бы, а дисковод с ЧПУ :-)

Буквально вчера провентилировал этот вопрос, разбираясь попутно со своим дисководом. К 1541 не относится напрямую, потому как декодирование не MFM, плюс к этому - Variable Sector Rate - разное количество секторов на разных дорожках. Амига Вам поможет :)

psb
14.05.2010, 22:52
если амига поможет, значит и обсуждаемый девайс "возьмет". но вот в том и сомнения, поможет ли...

Sentenced
15.05.2010, 00:40
Не могу сказать что я огромный дока в дисководных делах, но, в види контрибуции, попробую сделать перевод статьи с вики, которая описывает принцип работы дисковода 1541, а именно, принцип передачи и "укладки" информации.

Как и в магнитофонной ленте, дисководы ограничены пространством для записи единицы информации размерами перемагничивания поверхности, также называемые переходами, с размером в 1 бит. Для дисковода в AppleII Стив Возняк разработал контроллер (совместно с дисководом) с использованием двух условий.

- Между двумя "единицами" может быть только один "ноль"
- Каждый восьмибитный байт должн начинать с "единицы"

Простейшая схема для того, чтобы соблюсти упомянутые требования - дополнительно записать один переход "тактовой" между каждым битом данных. Эта схема называется Частотная Модуляция (FM) или "4 и 4", и позволяет записывать только 10 265 байтные сектора на трек на дискету одинарной ёмкости форм-фактора 5,25.
Возняк понял, что более изощрённая схема декодирования поможет каждому 8 битному байту записывать 5 бит полезной информации вместо 4. Вот поэтому там есть 34 байта, принадлежащие "top bit set" - "верхнему набору бит", в котором отсутствуют два "нулевых" бита. Эта схема декодирования стала известна как 5+3, позволяя записывать 13 секторов на трек. Затем, дизайн дискового контроллера был изменён, чтобы допустить записывание двух "нулей" в байте. Это позволило каждому восьмибитному байту содержать 6 бит полезной информации, и позволяло записывать 16 секторов на трек. Такая схема известна как 6+2. Apple изначально не называл свою схему GCR, это название дано было позже, чтобы подчеркнуть различия между продукцией Apple и IBM.
Независимо от Apple, Commodore Business Machines, разработала GCR алгоритм для своего дисковода 2040, выпущенного в продажу в 1979 году. Важным ограничением этого дисковода было то, что подряд не могут быть записаны более чем два "нуля" без специального внесения условий "оговорок" в первый бит байта. Каждые 4 бита данных на диске транслируются 5 бит, согласно таблице

Nybble Code
0000 01010
0001 01011
0010 10010
0011 10011
0100 01110
0101 01111
0110 10110
0111 10111
Nybble Code
1000 01001
1001 11001
1010 11010
1011 11011
1100 01101
1101 11101
1110 11110
1111 10101

Заметьте, ни один код не начинается с двух нулей и не заканчивается ими. Это даёт уверенность, что независимо от вводных данных поле не будет иметь более, чем два нуля. Также заметьте, что при использовании такой схемы невозможно разместить подряд больше, чем 8 битовых единиц. Кроме того, Commodore использовал последовательности из 10 или более "единиц" как синхронизирующий маркер. Частично благодаря этой эффективной схеме, Commodore был способен записывать 170kb SS/SD, в том время, как Apple добился 140kb 6+2 или 114 kb 5+3, а также FM-Частотная Модуляция, позволявщая записывать только 88kb SS/SD.

За ошибки и опечатки можете пинать, не вопрос.

Sentenced
15.05.2010, 02:53
Я вот тут посидел, подумал, после перевода отрывка статьи.
А как это так ,собственно, получилось, что Амига умеет читать всяко-разные диски да ещё и разных форматов ? Помозговав, вспомнил, что Амига читает треками. И также я вспомнил, что на вопрос - А что делает Амига, если диск с помеченными бэдами, ответ был - Начинает по диску елозить. Вот интересно, подумал я ? А чем отличается помеченный бэд от непомеченного ? Только тем, что о нём известно, что он присутствует. Посему рискну предположить (доподлинно не знаю), что елозение начинается из-за того, что операционная система (возможно, ошибаюсь) лазает проверить номер этого пресловутого сектора, это раз , и, два - что дисковод переходит в режим чтения секторов. Недавно прошерстил ещё раз раздел про флоппи на вики (как удачно мне подвернулся хитрый флопик, а то-бы я в статьи и не полез) и нашёл очень интересную фразу - Амига отличалась тем, что контроллер дисковода был ПРОСТЫМ !!! Насколько я могу себе это представить, вполне может быть, что механизм контроллера при чтении секторов сильно тормозит, тем более, что это не его "родной" режим. Итак. Треки. Из чего состоят треки ? Из цилиндров и секторов. Цилиндры нас тут не особо интересуют, нас интересуют сектора.
В переводе отрывка статьи, есть очень любопытное лично для меня замечание об так называемых "минимальных окнах" для записи информации. То есть, присутствует некоторое ограничение, наверняка документированное, на минимальный размер этого "окна" Все мы знаем, что наша многоуважаемая КР 1818ВГ93 страдает, к сожалению, вкупе с нашим не менее уважаемым TR-DOS, одной болезнью, которая называется - невозможно записать диск, используя команду Write Track. К чему это я ? К тому, что, страдает то самое обратное декодирование. То есть, Спектрум работает с дисководом по тем же самым унифицированным законам. Что-же нам мешает беспроблемно читать диски от любых других компьютеров ? Кроме управления дисководом, других кандидатов нет. Моё личное резюме - нужно подумать, как реализовать простейший контроллер, используя какой-нибудь микроконтроллер. И, похоже, разрабатывать придётся с чистого листа.

Тухлые яйца, гнилые помидоры - рад всему

Anykey
15.05.2010, 08:29
Из чего состоят треки ? Из цилиндров и секторов.
Помойму наоборот цилиндры состоят из треков (у двусторонней дискеты
на один цилиндр два трека, у односторонней один трек на цилиндр), а трек
содержит определенное число секторов.


Все мы знаем, что наша многоуважаемая КР 1818ВГ93 страдает, к сожалению, вкупе с нашим не менее уважаемым TR-DOS, одной болезнью, которая называется - невозможно записать диск, используя команду Write Track.

Как раз Write Track работает нормально, ведь с помощью этой команды
форматируются диски. А вот при команде Read Track происходит потеря синхронизации и данные считываются не корректно.
синхронизации

psb
15.05.2010, 12:11
Как раз Write Track работает нормально
ну как бы только этой командой трек с данными записать не получится.

а амига, на сколько мне известно, позволяет считать/записать сырые данные без интерпретации, т.е. просто битовый поток.

вопрос-то был не об этом в плане дисковода C64. как он физически записывает на диск, так же как обычный дисковод или нет, а не о кодировании информации.

Sentenced
15.05.2010, 17:28
ну как бы только этой командой трек с данными записать не получится.

а амига, на сколько мне известно, позволяет считать/записать сырые данные без интерпретации, т.е. просто битовый поток.

вопрос-то был не об этом в плане дисковода C64. как он физически записывает на диск, так же как обычный дисковод или нет, а не о кодировании информации.

Я именно это и пытался донести до многоуважаемого All - Commodore записывает в соответствии с приведённой мною таблицей. Но ! Это "сырые" данные. Далее, эти сырые данные нужно разобрать с помощью интерпретации сырых данных в сектора, а, затем, с помощью ещё более "высокого уровня" преобразовать сектора в файловую систему с файлами. Подозреваю, что на Амиге именно так и сделано. Когда подсовываешь дискету с ПС Амиге, оператор обязан сказать, что это дискета с ФАТ, используя КроссДос. И, насколько я помню логику работы, Амига сначала преобразует этот битовый поток в диск с ФАТ, а уже потом, при открытии дискеты, включается механизм трансляции содержимого диска согласно ФАТ. То есть, происходит "двухуровневое" преобразование. Сначала мы получаем информацию о том, что это за файлсистема, а уже потом, другим механизмом, транслируем файлы.
Для тех, кто не выпал из танка по поводу глюков ВГ, предлагаю перечитать соответствующую тему, чтобы закрыть вопрос.
Признаюсь честно, для меня это тоже был сначала абсолютно тёмный лес с этим перекодированием, но, почитав статьи на эту тему, начал понимать что к чему.
Резюмируя. Чтобы Копировать абсолютно любые диски, нужно знать хардварные ограничения на размер бита. Чтобы разбирать информацию на дискетах в виде файлов, нужно знать, как конкретно декодируется диск конкретного устройства, как он разбивается на сектора, и какая у него структура файловой системы. В итоге по поводу Commodore ответ - Да, там самые обычные нули и единицы, а вот дальше начинаются танцы с бубном.

psb
15.05.2010, 17:40
если самые обычные 0 и 1, значит можно работать с этими дискетами через обыкновенный дисковод (+контроллер). кто-нибудь это реально делал (с С64)?

Anykey
15.05.2010, 18:21
Все таки по мойму нет в команде WriteTrack ВГ93 глюков,
и данные в поле данных можно записывать любые, кроме
специальных #F5-#FB, т.к. эти коды приводят к генерации
заголовков и контрольных сумм. (Я в курсе как работает ВГ,
работал с ней и на Спектруме и на MCS51.)


Что касается дисков Амиги -
драйвер Fdrawcmd.sys позволяет читать сырые данные с
дискет под Win XP.
На странице автора драйвера
http://simonowen.com/fdrawcmd/
Есть несколько ссылок на програмки для ПС, работающие
с дисками Амиги при помощи стандартного контроллера FDC.

Единственное условие для чтения RAW данных с диска это наличие
2-х дисководов, по второму происходит калибровка первого.
Автор утверждал что по другому не подучится читать диски амиги.

Sentenced
15.05.2010, 18:31
[QUOTE=Anykey;283842]Что касается дисков Амиги -
драйвер Fdrawcmd.sys позволяет читать сырые данные с
дискет под Win XP.
На странице автора драйвера
http://simonowen.com/fdrawcmd/
Есть несколько ссылок на програмки для ПС, работающие
с дисками Амиги при помощи стандартного контроллера FDC.QUOTE]
Это ровно то, о чём я тут распинался. Если нужно повторить подобное в железе - контроллер должен быть крайне примитивным и не заниматься анализом и преобразованием того, что он получает в виде потока данных с дисковода.

psb
15.05.2010, 21:06
кроме
специальных #F5-#FB
именно. хотя, на сколько я помню, при некоторых других так же происходили сбои синхронизации или при чтении, или при записи.

---------- Post added at 23:06 ---------- Previous post was at 23:02 ----------

вы говорите про диски амиги, а про диски С64 что?

Anykey
15.05.2010, 21:43
Сбой происходит если при чтении командой Read Track
встречались определенные комбинации 1 и 0


С64, у дисковода 1541 судя по описанию последовательный
интерфейс (RS232 ??) тогда наверно в него уже встроен контроллер
типа ВГ93.

У нас на одном станке стоит дисковод 3,5 с контроллером на процессоре
Моторола 6500 с контроллером FDC с ПЗУ, ОЗУ с микросхемой
последовательного интерфейса.
Можно было на дисководе галетниками выбрать номер программы
нажать кнопку и программа передавалась в станок через UART.

Если так, то зная протокол обмена такой дисковод
легче подключить к PC и через терминалку можно попробовать
управлять.

А в каком формате дискеты пишутся? это надо
знать что в дисководе стоит.

psb
16.05.2010, 06:26
тогда наверно в него уже встроен контроллер
типа ВГ93.
не наверное, а железобетонно встроен, это хорошо известная вещь. вопрос в записи на сам диск, физически.