Commodore 1541 (также известный как CBM 1541 и VIC-1541 ) — дисковод гибких дисков , созданный компанией Commodore International для Commodore 64 (C64), самого популярного домашнего компьютера Commodore . Самый известный дисковод гибких дисков для C64, 1541, представляет собой односторонний дисковод емкостью 170 килобайт для 5¼-дюймовых дисков. 1541 является прямым последователем Commodore 1540 (предназначенного для VIC-20 ).
Дисковод использует групповую кодированную запись (GCR) и содержит микропроцессор MOS Technology 6502 , выполняющий функции контроллера диска и встроенного процессора дисковой операционной системы . Количество секторов на дорожку варьируется от 17 до 21 (ранняя реализация зонной побитовой записи с 4 зонами постоянной угловой скорости ). Встроенная дисковая операционная система — CBM DOS 2.6 .
На момент выпуска модель 1541 стоила менее 400 долларов США . C64 плюс 1541 стоили около 900 долларов, а Apple II без жесткого диска стоил 1295 долларов. Первые накопители 1541, выпущенные в 1982 году, имели на передней панели этикетку с надписью VIC-1541 и не совсем белый корпус, соответствующий VIC-20. В 1983 году модель 1541 перешла на знакомый бежевый корпус и переднюю этикетку с надписью просто «1541» и радужными полосами, как у Commodore 64.
К 1983 году модель 1541 продавалась за 300 долларов или меньше. После войны цен на домашние компьютеры, спровоцированной Commodore, C64 и 1541 вместе стоили менее 500 долларов. [ нужна цитата ] Диск стал очень популярным, и его было трудно найти. Компания заявила, что дефицит произошел потому, что 90% владельцев C64 купили 1541 по сравнению с ожидаемыми 30%, но пресса обсуждала то, что Creative Computing назвала «абсолютно тревожным процентом возврата» из-за дефектов. В марте 1984 года журнал сообщил, что за две недели он получил три неисправных диска, [3] а в декабре 1983 года газета Compute! сообщила, что четыре из семи дисков журнала вышли из строя; «COMPUTE! Publications остро нуждаются в дополнительных 1541 для внутреннего использования, но мы не можем найти их для покупки. После многочисленных телефонных звонков в течение нескольких дней мы смогли обнаружить только два устройства на всей континентальной части Соединенных Штатов », как сообщается, потому что о попытке Commodore решить производственную проблему, вызвавшую большое количество неудач. [4]
Ранние (1982–1983) модели 1541 имели пружинный механизм выталкивания ( привод Alps ), и диски часто не высвобождались. Этот тип накопителя получил популярное прозвище «Тостер-привод», поскольку для извлечения застрявшего носителя требуется использовать нож или другой твердый тонкий предмет, точно так же, как кусок тоста , застрявший в настоящем тостере . Это было исправлено позже, когда Commodore сменила поставщика приводного механизма ( Mitsumi ) и приняла на вооружение механизм Newtronics с откидным рычагом, что значительно повысило надежность. Кроме того, Commodore уменьшила размер платы контроллера накопителя и уменьшила количество микросхем по сравнению с ранними 1541-ми (у которых была большая печатная плата по всей длине корпуса с десятками TTL-чипов ). Newtronics 1541 в бежевом корпусе выпускался с 1984 по 1986 год.
Все модели 1541, кроме самой ранней модели, отличной от II, могут использовать механизм Alps или Newtronics. Визуально первые модели номинала VIC-1541 имеют грязно-белый цвет, как и VIC-20 и VIC-1540. Затем, чтобы соответствовать внешнему виду C64, CBM изменила цвет накопителя на коричнево-бежевый и название на Commodore 1541 .
Многочисленные недостатки 1541 открыли рынок для ряда клонов этого накопителя сторонних производителей. Примеры включают Oceanic OC-118 , также известный как Excelerator+ , одиночные и сдвоенные приводы MSD Super Disk , Enhancer 2000 , Indus GT , BCD/5.25 от Blue Chip Electronics , а также FD-2000 и FD -4000 от CMD . Тем не менее, 1541 стал первым дисководом, получившим широкое распространение в домашних условиях, и компания Commodore продала миллионы таких накопителей.
В 1986 году Commodore выпустила 1541C, обновленную версию, которая обеспечивает более тихую и немного более надежную работу и имеет светло-бежевый корпус, соответствующий цветовой гамме Commodore 64C. В 1988 году он был заменен на 1541-II, в котором используется внешний источник питания для обеспечения более низкой температуры и позволяет диску занимать меньшую площадь на рабочем столе («кирпич» источника питания размещается в другом месте, обычно на полу). В более поздних версиях ПЗУ исправлены различные проблемы, в том числе программная ошибка, из-за которой команда сохранения и замены повреждала данные.
Commodore 1570 — это обновление модели 1541 для использования с Commodore 128 , доступным в Европе. Он предлагает возможности MFM для доступа к дискам CP/M , улучшенную скорость и несколько более тихую работу, но производился только до тех пор, пока Commodore не запустила свои производственные линии с 1571 , двусторонним диском. Наконец, был создан небольшой 3½-дюймовый накопитель Commodore 1581 на базе внешнего источника питания на базе MFM , обеспечивающий доступ 800 КБ к C128 и C64.
Модель 1541 не имеет DIP-переключателей для изменения номера устройства. Если пользователь добавляет в систему более одного диска, ему необходимо вырезать дорожку на печатной плате, чтобы навсегда изменить номер устройства диска, или вручную подключить внешний переключатель, чтобы его можно было изменить извне. [5] Также возможно изменить номер диска с помощью программной команды, которая является временной и будет удалена, как только диск будет выключен.
Приводы 1541 при включении всегда по умолчанию используют устройство №8. Если используется несколько накопителей в цепочке, то процедура запуска заключается в включении первого накопителя в цепочке, изменении номера его устройства с помощью программной команды на наибольший номер в цепочке (если использовалось три накопителя, то первый привод в цепочке будет установлено устройство № 10), затем включите питание следующего диска, измените его номер устройства на следующий по наименьшему и повторяйте процедуру до тех пор, пока последний диск в конце цепочки не будет включен и не останется как устройство №. 8.
В отличие от Apple II , где поддержка двух дисков является нормальной, программное обеспечение Commodore сравнительно редко поддерживает эту настройку, а команда копирования файлов CBM DOS не может копировать файлы между дисками — необходима сторонняя утилита копирования.
Модели до II 1541 также имеют внутренний источник питания, который выделяет много тепла. Выделение тепла было частым источником юмора. Например, Вычислить! заявил в 1988 году, что «Commodore 64 были фаворитами среди поваров-любителей и профессиональных поваров, поскольку они могли одновременно выполнять вычисления и готовить на своих дисководах серии 1500». [6] В серии юмористических советов в MikroBitti в 1989 году говорилось: «При позднем программировании кофе и шашлык остаются теплыми на вершине 1541». [7] В обзоре MikroBitti 1541 -II говорится, что его внешний источник питания «должен положить конец шуткам о тостерах».
Механизм приводной головки, установленный в первые годы производства, как известно, легко смещается. Наиболее распространенной причиной стука головки привода 1541 и последующего ее смещения являются схемы защиты от копирования в коммерческом программном обеспечении. [8] Основная причина проблемы заключается в том, что сам дисковод не имеет каких-либо средств определения того, когда головка чтения/записи достигает нулевой дорожки. Соответственно, когда диск не отформатирован или возникает ошибка диска, блок пытается 40 раз переместить головку в сторону нулевой дорожки (хотя DOS 1541 использует всего 35 дорожек, сам механизм привода представляет собой 40-дорожечный блок, так что это гарантировало достижение нулевой дорожки независимо от того, где головка находилась раньше). Как только будет достигнута нулевая дорожка, каждая дальнейшая попытка переместить головку в этом направлении приведет к ее твердому упору: например, если перед этой процедурой головка находилась на дорожке 18 (где находится каталог), на самом деле головку пришлось бы сдвинуть 18 раз, а затем 22 раза ударить до упора. Этот таран дает характерный «пулеметный» шум и рано или поздно выбивает головку из строя.
Дефектная деталь выравнивания головки, вероятно, вызывала многие проблемы с надежностью приводов ранних 1541 года; один дилер рассказал Compute! '' s Gazette в 1983 году сообщил, что эта деталь стала причиной поломок всех, кроме трех, из нескольких сотен дисков, которые он отремонтировал. [4] Диски были настолько ненадежны, что журнал Info пошутил: «Иногда кажется, что в одной из первоначальных спецификаций дизайна... должно быть было написано: « Среднее время наработки на отказ : 10 обращений». Пользователи могут самостоятельно перенастроить диск с помощью программное обеспечение и калибровочный диск. Пользователь может извлечь привод из корпуса, а затем ослабить винты, удерживающие шаговый двигатель , которые перемещают головку, затем, вставив калибровочный диск в привод, осторожно поворачивать шаговый двигатель вперед и назад, пока программа не покажет хорошее выравнивание. Затем винты затягиваются, и привод возвращается в корпус. [8]
Появилось стороннее исправление для 1541, в котором твердый упор головки был заменен подпружиненным, что значительно облегчило жизнь головке. [8] Более поздний привод 1571 (совместимый с 1541) включает обнаружение нулевой дорожки с помощью фотопрерывателя и, таким образом, не подвержен этой проблеме. Кроме того, программное решение, находящееся в ПЗУ контроллера привода, предотвращает повторные операции чтения, хотя это может вызвать проблемы в случае возникновения реальных ошибок.
Из-за проблем с выравниванием приводных механизмов Alps компания Commodore в 1984 году переключила поставщиков на Newtronics. Приводы механизмов Newtronics имеют рычаг, а не выдвижной язычок для закрытия дверцы привода. Хотя проблемы с выравниванием были решены после переключения, приводы Newtronics добавляют новую проблему с надежностью, поскольку многие головки чтения/записи неправильно герметизированы, что приводит к проникновению влаги в головку и ее короткому замыканию.
Печатная плата 1541 состоит в основном из процессора 6502, двух микросхем 6522 VIA и 2 КБ рабочей оперативной памяти. Можно добавить до 48 КБ ОЗУ; это в основном полезно для обхода схем защиты от копирования, поскольку вся дорожка диска может быть загружена в ОЗУ накопителя, в то время как стандартный 2 КБ вмещает только несколько секторов (теоретически восемь, но часть ОЗУ использовалась CBM DOS в качестве рабочего пространства). Некоторые пользователи Commodore используют 1541 в качестве импровизированного математического сопроцессора , загружая на диск трудоемкий математический код для фоновой обработки . [9] [10] [11] [12] [13]
В 1541 используется запатентованная последовательная версия параллельного интерфейса IEEE -488 , который использовался в предыдущих дисководах для серии PET/CBM персональных и бизнес-компьютеров, [14] , но когда VIC-20 находился в разработке, появилась более дешевая альтернатива Требовались дорогие кабели IEEE-488. Чтобы обеспечить наличие недорогих кабелей для периферийных устройств домашнего компьютера, компания Commodore выбрала стандартные разъемы DIN для последовательного интерфейса. Дисководы и другие периферийные устройства, такие как принтеры, подключаются к компьютеру посредством шлейфового подключения, для чего требуется только один разъем на самом компьютере.
IEEE Spectrum в 1985 году заявил, что: [15]
Главный недостаток С-64 заключается не в самой машине, а в ее дисководе. Имея достаточно быстрый дисковод и адекватную дисковую операционную систему (DOS), C-64 мог бы конкурировать на бизнес-рынке с Apple и, возможно, с другими бизнес-компьютерами. Однако с нынешним дисководом трудно потерять имидж игрушки.
Разработчики C-64 обвинили низкую скорость 1541 в том, что отдел маркетинга настаивал на совместимости компьютера с 1540, который медленный из-за недостатка в контроллере интерфейса 6522 VIA. [15] Первоначально Commodore намеревалась использовать аппаратный сдвиговый регистр (один из компонентов 6522) для поддержания высоких скоростей привода с новым последовательным интерфейсом . Однако аппаратная ошибка этого чипа не позволяет первоначальному проекту работать должным образом, и код ПЗУ был поспешно переписан, чтобы обеспечить выполнение всей операции программно. По словам Джима Баттерфилда , это вызывает снижение скорости в пять раз; [16] если бы совместимость с 1540 не была обязательным требованием, дисковый интерфейс был бы намного быстрее. В любом случае C64 обычно не может работать с 1540, если только вывод дисплея VIC-II не отключен посредством записи регистра в бит DEN (регистр $D011, бит 4), что останавливает остановку ЦП во время определенных строк видео. обеспечить правильное последовательное время. [17]
Как реализовано на VIC-20 и C64, Commodore DOS передает 300 байт в секунду, по сравнению с 2400 байтами в секунду у Atari 810 , 15 000 байт в секунду у Apple Disk II [15] и скоростью 300 бод . Скорость системы хранения данных Commodore Datasette . Для копирования одного диска требуется около 20 минут — 10 минут чтения и 10 минут записи. Однако, поскольку и компьютер, и накопитель можно легко перепрограммировать, третьи лица быстро написали более эффективную прошивку, которая значительно ускорила бы работу накопителя. Без аппаратных модификаций некоторым утилитам « быстрой загрузки » (которые обходили процедуры встроенного ПЗУ 1541) удалось достичь скорости до 4 кбит/с. Наиболее распространенными из этих продуктов являются Epyx Fast Load , Final Cartridge и подключаемые картриджи ПЗУ Action Replay , которые также имеют на борту программное обеспечение для мониторинга машинного кода и редактора дисков . Популярные компьютерные журналы Commodore той эпохи также вышли на арену с утилитами для быстрой загрузки: Compute!'s Gazette опубликовала TurboDisk в 1985 году, а RUN опубликовала Sizzle в 1987 году.
Несмотря на то, что каждый 1541 имеет свой собственный встроенный дисковый контроллер и дисковую операционную систему, пользователь не может дать команду двум дискам 1541 скопировать диск (один диск читает, а другой записывает), как в случае с более старыми сдвоенными дисками, такими как 4040 . это часто встречалось на компьютере PET и с которым 1541 обратно совместим (он может читать диски 4040, но не записывать на них, поскольку незначительная разница в количестве байтов заголовка делает 4040 и 1541 совместимыми только по чтению). Первоначально для копирования с диска на диск требовалось программное обеспечение, работающее на C64, и оно сначала считывало с одного диска в память компьютера, а затем записывало на другой. Только когда были выпущены Fast Hack'em , а позже и другие программы резервного копирования дисков, стало возможным настоящее копирование с диска на диск для пары 1541. Пользователь мог, если пожелает, отключить C64 от дисководов (т. е. от первого диска в последовательной цепочке) и сделать что-нибудь еще с компьютером, пока диски приступали к копированию всего диска.
В приводе 1541 используются стандартные 5¼-дюймовые гибкие носители двойной плотности; носители с высокой плотностью не будут работать из-за другого магнитного покрытия, требующего более высокой магнитной коэрцитивности . Поскольку схема кодирования GCR не использует индексное отверстие, диск также был совместим с дисками с жесткими секторами . Стандартный формат CBM DOS имеет размер 170 КБ с 35 дорожками и секторами по 256 байт. Он похож на формат, используемый на дисках PET 2031, 2040 и 4040, но небольшая разница в количестве байтов заголовка делает эти диски и 1541 совместимыми только по чтению; диски, отформатированные одним диском, не могут быть записаны на другой. Диски допускают запись, но непостоянный размер заголовка повредит данные в частях данных каждой дорожки.
В приводах 4040 используются 35-дорожечные устройства Shugart SA-400, поэтому такой формат обусловлен физическими ограничениями механизма привода. В 1541 используется 40 дорожек, но Commodore намеренно ограничил формат CBM DOS 35 дорожками из-за проблем с надежностью ранних устройств. С помощью низкоуровневого программирования можно переместить головку привода на дорожки 36–40 и записать на них, иногда это делается коммерческим программным обеспечением в целях защиты от копирования и/или для получения дополнительных данных на диск.
Однако одна дорожка зарезервирована DOS для информации о размещении каталогов и файлов (BAM, карта доступности блоков ). А поскольку для обычных файлов два байта каждого физического сектора используются DOS как указатель на следующую физическую дорожку и сектор файла, только 254 из 256 байт блока используются для содержимого файла.
Если сторона диска не подготовлена иным образом в специальном формате (например, для дисков с данными), после форматирования будет свободно 664 блока, что дает 664 × 254 =168 656 байт (или почти165 КБ ) для пользовательских данных.
Используя специальные процедуры форматирования и загрузки/сохранения (иногда включенные в сторонние DOS, см. Ниже), можно использовать все механически возможные 40 дорожек.
Из-за того, что дисковод не использует индексное отверстие, также можно сделать « дискеты », вставив дискету вверх дном и отформатировав другую сторону, и распространение коммерческого программного обеспечения на таких дисках является обычным и нормальным явлением. .
Треки 36–42 нестандартные. Битрейт является необработанным между головкой чтения/записи и сигнальной схемой, поэтому фактическая полезная скорость передачи данных в 5/4 раза меньше из-за кодирования GCR . [18]
Диск 1541 обычно имеет 35 дорожек. Трек 18 зарезервирован; остальные треки доступны для хранения данных. Заголовок находится на 18/0 (дорожка 18, сектор 0) вместе с BAM, а каталог начинается на 18/1 (дорожка 18, сектор 1). Чередование файлов составляет 10 блоков, а чередование каталогов — 3 блока.
Содержимое заголовка: заголовок похож на другие заголовки дисков Commodore, структурными различиями являются смещение BAM ( $04 ) и размер, а также смещение метки+ID+типа ( $90 ).
$00–01 Ссылка T/S на первый сектор каталога (18/1) 02 Версия для DOS («А») 04-8F записи BAM (4 байта на дорожку: количество свободных секторов + 24 бита для секторов) Этикетка диска 90-9F, дополненная $A0 Идентификатор диска A2-A3 Тип А5-А6 ДОС («2А»)
Ранние схемы защиты от копирования намеренно создавали ошибки чтения на диске: программное обеспечение отказывалось загружаться, пока не будет возвращено правильное сообщение об ошибке. Общая идея состоит в том, что простые программы копирования дисков не способны копировать ошибки. При возникновении одной из этих ошибок дисковод (как и многие дисководы гибких дисков) предпримет одну или несколько попыток повторного чтения после первого сброса головки на нулевую дорожку. Лишь немногие из этих схем имеют сильный сдерживающий эффект, поскольку различные компании-разработчики программного обеспечения вскоре выпустили утилиты- нибблеры , которые позволяют копировать защищенные диски и, в некоторых случаях, снимать защиту.
Защита от копирования Commodore иногда дает сбой на определенных конфигурациях оборудования. Gunship , например, не загружается, если к компьютеру подключен второй дисковод или принтер. [19] Аналогично, Ratrace от Roland выйдет из строя, если будет обнаружено дополнительное оборудование. Ленточная версия даже выйдет из строя, если во время работы игры будет включен дисковод.
Версия(и) DOS 2,6 2,6 2,1/2,7 2,5/2,7 2,7
{{cite web}}
: CS1 maint: местоположение ( ссылка )