Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Скриншот программы, загружаемой с диска с помощью быстрого загрузчика

Быстрый загрузчик это программа для домашнего компьютера , таких как Commodore 64 или ZX Spectrum , что ускоряет скорость загрузки файлов с дискеты или компакт - кассеты .

Дискеты [ править ]

Фон [ править ]

Быстрые загрузчики возникли из-за несоответствия между реальной скоростью, с которой дисководы гибких дисков могли передавать данные, и скоростью, обеспечиваемой стандартными процедурами операционной системы . Это несоответствие наиболее ярко проявилось на Commodore VIC-20 и 64 . В то время как более ранняя серия Commodore PET использовала стандартную параллельную шину IEEE-488 , она была заменена специальной последовательной шиной Commodore на VIC-20. Последовательная шина должна была быть почти такой же быстрой, как и ее предшественник, из-за использования 6522 VIA в качестве аппаратного сдвигового регистра. как на диске, так и на компьютере. Однако в 6522 были обнаружены аппаратные ошибки, которые мешали стабильной работе этой функции. В результате процедуры KERNAL ROM были поспешно переписаны для передачи одного бита за раз с использованием протокола медленного программного квитирования . [1]

Хотя C64 заменил 6522 VIA двумя чипами 6526 CIA , которые не страдали этой ошибкой, у сопутствующего диска 1541 все еще был 6522 VIA. Commodore решила не перепроектировать аппаратное обеспечение 1541, также для того, чтобы сохранить обратную совместимость с периферийными устройствами VIC-20; Однако это произошло за счет скорости. Из-за протокола передачи дисководы Commodore 1540 и 1541 вскоре приобрели репутацию чрезвычайно медлительных. Только с появлением компьютера Commodore 128 и дискового накопителя Commodore 1571 первоначальный план был реализован, и был использован аппаратный сдвиговый регистр, что снизило потребность в специальных устройствах быстрой загрузки.

Развитие [ править ]

Вскоре после выпуска C64 некоторые проницательные программисты поняли, что последовательные процедуры KERNAL Commodore с битовой обработкой битов были излишне медленными. Поскольку ЦП в C64 работал примерно с той же скоростью, что и в дисководе 1541, было достаточно синхронизировать только в начале каждого байта , а не в каждом отдельном бите . Более того, этот метод передачи позволял отправлять два бита одновременно: один по стандартной DATAлинии, а другой по CLKлинии (которая обычно использовалась для установления связи). На C64 это требовало очень тщательной синхронизации, чтобы избежать помех от прерываний и от графического чипа VIC-II. , что могло «украсть» циклы процессора. Некоторые быстрые загрузчики отключили прерывания и по этой причине закрывали экран. Быстрый загрузчик обычно «вклинивается» в LOAD вектор at $0330, таким образом перехватывая любые вызовы LOADподпрограммы KERNAL . Затем быстрый загрузчик передает необходимый код в ОЗУ накопителя и приказывает его выполнение, а затем принимает файл, отправленный измененным кодом передачи. В зависимости от конкретной природы используемых подпрограмм скорость загрузки может быть улучшена в пять раз.

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

Коммерческие устройства быстрой загрузки [ править ]

Различные компании-разработчики программного обеспечения выпускали устройства быстрой загрузки для C64, как правило, в виде картриджей . В США , наверное, самым популярным из таких картриджей был Epyx FastLoad . Большинство картриджей с быстрой загрузкой также включают в себя другие функции, упрощающие использование. Встроенная реализация DOS Wedge от Commodore была включена в большинство картриджей с быстрой загрузкой. Мониторы машинного языка , редакторы дисков и различные удобные команды для Commodore BASIC также были обычным дополнением. Некоторые картриджи с быстрой загрузкой были очень сложными, включая кнопку сброса , возможность «заморозить» и простой встроенный графический интерфейс .Final Cartridge III был, пожалуй, самым успешным в этом жанре. Несколько коммерческих быстрых загрузчиков, в первую очередь JiffyDOS CMD , не работали с картриджами, а заменили KERNAL ROM в C64 и DOS ROM в 1541. Хотя их было сложнее установить, они предлагали значительно улучшенную совместимость, будучи почти незаметными. к программному обеспечению, работающему на машине. Картридж, загрузчик RAM Action Replay MK6 загружает программу из 202 блоков примерно за 9 секунд. Его загрузчик Warp работает в 25 раз быстрее, но программы могут быть загружены с помощью загрузчика, сохраненного на диск, когда картридж отсутствует. В то время как устройство быстрой загрузки ARMK6 было совместимо с большинством программ, The Final Cartridge III, как известно, часто дает сбой, [ цитирование ],поэтому программы приходилось загружать в обычном режиме C64, деактивируя картридж, делая его более или менее бесполезным.

Многие коммерческие программы для C64, особенно игры, содержали свои собственные процедуры быстрой загрузки на дистрибутивном носителе. Пользователь загружал с диска небольшую программу-заглушку со стандартными медленными процедурами, которые затем устанавливали более быстрые процедуры передачи как в компьютер, так и в накопитель, прежде чем переходить к загрузке остальной программы на высокой скорости. Таким образом, пользователь получает выгоду от быстрого загрузчика без необходимости покупать или знать о специальном продукте для быстрой загрузки.

Быстрые загрузчики с вводом [ править ]

Несколько популярных журналы Commodore опубликовали тип- за быстрым программное обеспечение загрузки. В апреле 1985 года Compute! опубликовал TurboDisk , быстрый загрузчик, включающий версии C64 и VIC-20. Эта программа оказалась популярной и была переиздана в июльском выпуске журнала Compute! 'S Gazette за 1985 год . [2] [3] [4] [5]

Он был напечатан еще раз в августе 1986 года, без версии VIC-20, но с несколькими сопутствующими утилитами для перемещения программы в памяти и создания программного обеспечения с автоматической загрузкой, которое использовало скорость TurboDisk . Версия Commodore 128 была также включена для тех пользователей C128, у которых все еще было 1541 дисковый накопитель. [6] [7] [8] [9] [10] [11]

Газета COMPUTE! Также опубликовала несколько других утилит, которые ускоряют обмен данными между C64 и 1541, в том числе Turbo Copy (4-минутное копирование всего диска), [12] [13] TurboSave (утилита, ускоряющая скорость диска. сохраняет) [14] и Quick! (еще один быстрый загрузчик). [15] [16]

Журнал RUN опубликовал Sizzle! в декабре 1987 г. - интегрированный пакет, включающий перемещаемый быстрый загрузчик с возможностью автозагрузки.

BYTE опубликовалв ноябре 1983 годаLoader, машинную программу быстрой загрузки для Apple DOS 3.3. [17] Compute! опубликовал TurboDisk для DOS 3.3 в октябре 1986 г. [18]

Мода на быстрые загрузчики продолжалась в эпоху Интернета. Загрузчик Krill (2009 г.) и Spindle (2013 г.) являются двумя примерами «загрузчиков IRQ» от C64 до 1541, быстрых загрузчиков, которые позволяют программам (в основном играм) сохранять свои собственные IRQ во время загрузки. С современными загрузчиками медленная скорость декодирования GCR оказалась узким местом, и все современные загрузчики имеют свои собственные оптимизированные процедуры для этого. [19]

Кассеты [ править ]

Встроенные процедуры для хранения и считывания данных с кассет компакт- кассет были созданы для безопасного хранения, а не для скорости. Лучшее качество ленты в 1980-х годах позволило более эффективно хранить данные, сократив время загрузки и длину ленты.

Такие программы существовали для нескольких компьютеров, таких как Ohio Scientific Challenger . [20] PET Rabbit был одной из таких программ для PET, [21] а TurboTape - для Commodore Datassette . [22] [23] [24] Turbo 2000 была аналогичной системой для Atari. [25]

Invade-a-Load был быстрым загрузчиком игр на кассетах, который не только ускорял загрузку блоков с ленты, но также содержал мини-игру (в данном случае клон Space Invaders ), в которую можно было играть во время ожидания. для завершения загрузки основной игры.

См. Также [ править ]

  • Эмуляция диска / ленты Commodore 64
  • Speedlock

Ссылки [ править ]

  1. ^ Мозг, Джим (1996-01-10). "Последовательные порты Vic-20 / C-64 - alt.folklore.computers | Группы Google" . Groups.google.com . Проверено 26 сентября 2012 . CS1 maint: обескураженный параметр ( ссылка )
  2. ^ Льюис, Дон (июль 1985). «ТурбоДиск» . COMPUTE! S Gazette . п. 34 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  3. ^ Льюис, Дон (июль 1985). «ТурбоДиск» . COMPUTE! S Gazette . п. 36 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  4. ^ Льюис, Дон (июль 1985). «ТурбоДиск» . COMPUTE! S Gazette . п. 37 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  5. ^ "Мухобойка" . Бюллетень вычислений . Январь 1986. с. 120.
  6. ^ Льюис, Дон (август 1986). «ТурбоДиск 64» . COMPUTE! S Gazette . п. 64 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  7. ^ Льюис, Дон (август 1986). «ТурбоДиск 64» . COMPUTE! S Gazette . п. 65 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  8. ^ Льюис, Дон (август 1986). «ТурбоДиск 128» . COMPUTE! S Gazette . п. 68 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  9. ^ Льюис, Дон (август 1986). «ТурбоДиск 128» . COMPUTE! S Gazette . п. 69 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  10. ^ Bavaro, Dino (август 1986). "TurboDisk Relocator" . COMPUTE! S Gazette . п. 66 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  11. Розенберг, Берт (август 1986). "Turbo BootMaker" . COMPUTE! S Gazette . п. 67 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  12. ^ Cutrone, AM (апрель 1986). «Турбо-копирование» . COMPUTE! S Gazette . п. 81 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  13. ^ Cutrone, AM (апрель 1986). «Турбо-копирование» . COMPUTE! S Gazette . п. 82 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  14. ^ Voosen, Уильям (апрель 1987). «TurboSave 64» . COMPUTE! S Gazette . п. 71 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  15. ^ Заки, Adib (декабрь 1988). "Быстро!" . COMPUTE! S Gazette . п. 82 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  16. ^ Заки, Adib (декабрь 1988). "Быстро!" . COMPUTE! S Gazette . п. 85 . Проверено 16 января 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  17. ^ Уильямс, Джон (ноябрь 1983 г.). «Быстрая загрузка с Apple DOS 3.3» . БАЙТ . С. 502–504 . Проверено 19 марта +2016 . CS1 maint: обескураженный параметр ( ссылка )
  18. ^ Ellerbrock, R. (октябрь 1986). «ТурбоДиск для DOS 3.3» . Вычислить! . п. 83 . Проверено 9 ноября 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  19. ^ Окессон, Линус. «Расшифровка ГКЛ на лету» . lft . Проверено 27 апреля 2019 года . CS1 maint: обескураженный параметр ( ссылка )
  20. ^ Карлсон, Эдвард Х. (март – апрель 1980 г.). «Программы быстрого чтения / записи на магнитную ленту для OSI» . Вычислить! . С. 115–117 . Проверено 25 октября 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  21. ^ Strasma, Джеймс (март-апрель 1980). "Кролик ПЭТ" . Вычислить! . п. 94 . Проверено 25 октября 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  22. ^ De Ceukelaire, Харри (январь 1985). «Утилита TurboTape / High-Speed ​​Tape для Commodore 64 и VIC-20» . Вычислить! . п. 124 . Проверено 30 октября 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  23. ^ De Ceukelaire, Харри (февраль 1985). «Как работает TurboTape» . Вычислить! . п. 112 . Проверено 30 октября 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  24. ^ "Capute!" . Вычислить! . Март 1985. с. 146 . Проверено 30 октября 2013 года . CS1 maint: обескураженный параметр ( ссылка )
  25. ^ "Турбо 2000" . AtariMax .