Info Guide
#07
31 мая 2005 |
|
Others - Перенос программного обеспечения на ZX Spectrum с PC.
Speccy Soft on PC: The history of converting Уже ни для кого не секрет,что тотальное нашествие IBM PC совместимых компьютеров (обычно называемых ПЦ), а также засилье INTERNET'а (далее ИНЕТ) приводит к их ши─ рокому распространению среди пользователей компьютера ZX Spectrum. К полезным сторонам данного явления мо─ жно отнести широкое распространение прог─ раммного обеспечения для данного компьюте─ ра именно посредством вышеназванных неста─ ндартных носителей. Можно долго спорить о достоинствах и недостатках подобного мето─ да распространения.Но поскольку данное яв─ ление стало массовым, приходится принимать его, как есть. Другое дело, что соприкосновение с чуж─ дой платформой не на уровне игр, а на уро─ вне системных программ является серьезным шагом в ознакомлении с ПЦ и его,прямо ска─ жем,"возможностями". Здесь выявляется пра─ ктически органическая несовместимость этих двух платформ. Итак, наиболее актуальной проблемой яв─ ляется лёгкий и быстрый перенос програм─ много обеспечения для ZX Spectrum с ПЦ. Источником его могут послужить ИНЕТ и раз─ личного рода CD-ROM'ы, буквально забитые СПЕКовским и не очень софтом. Как же перенести драгоценные файлы на реальный диск (или кассету) реального Спе─ ктрума? Скажу прямо, для этого понаписано немало программного обеспечения как на ПЦ, так и на СПЕКе. Проблемой является только достать его. Но опять же, и в ИНЕТе, и на компактах таких программ предостаточно. Надо только знать, как ими пользоваться (см. инструкции) и что ими можно конверти─ ровать. Для начала отметим (не)большой недоста─ ток ПЦ: далеко не все разновидности его имеют 5'25-дюймовый дисковод. Но сейчас эту проблему легко решают: либо поставив относительно дешёвый 5-ти дюймовик на ПЦ (если он стоит дома на тумбочке),либо нас─ кребают денег на 3-х дюймовый дисковод и с великими муками и глюками подключают его к СПЕКу. (Ред.: Блок питания на 5В,собранный на одной ЕНке, нельзя использовать для од─ новременного питания компьютера и 3,5" ди─ сковода.) Другие варианты...Да вроде,и нет таких... Но это ещё не всё. Дело в том,что на ПЦ любят сохранять совместимость со старым хардом и софтом, в результате чего они во─ обще плохо работают. А именно:стандартными являются только 40-дорожечные диски на 180 и 360 Кб (и в этом духе), причём это дейс─ твительно 40-дорожечная совместимость, в отличие от Спектрумовских TR-DOS и iS-DOS: диск прекрасно себя чувствует и в старых 40-дорожечных дисководах, и в новых 80-до─ рожечных, потому как на последних формати─ рование идёт через дорожку (одна формати─ руется,другая пропускается).А вот диски на 720 и 840 Кб так просто не читаются. Неко─ торые ПЦ никакой разницы не чуют и прекра─ сно работают.В других нужно в autoexec.bat прописывать некий дополнительный драйвер: pu_1700.com, 800.com, 900.com или какой- нибудь другой, есть много разных других - тут ПЦшники постарались сами. Особая проблема возникает, если диск поформатирован на 800 Кб и более. Вот тут совсем начинаются извраты. Дело в том, что на одной дорожке такого диска находится 10 секторов и последний из них физически не влазит на диск, или же контроллер не мо─ жет его прочесть. Данная проблема решается хорошей программой форматирования. Ред.: Форматировать 800k следует на ZX, например,программой CacheVox (она даже пы─ тается перемещать сектора по дорожке до лучшей читаемости). Аналогично и с дисками TR-DOS. TR-DOS использует "несколько упрощённый" формат, по её следу такой формат используют и мно─ гие дисковые утилиты. А посему диски надо опять форматировать не любой попавшейся RDS, а опять же,учитывающей такую проблему софтиной. Ред.: Важен пробел перед первым секто─ ром на дорожке. RDS, может быть, и подхо─ дит, но значительно надёжнее (с перемеще─ нием секторов) форматируют FUT и AIDS 0.2. Кроме того, большое разнообразие схемо─ техники и ПЗУ на обеих платформах приводит к тому, что диски и программы, нормально работающие на одних компьютерах, абсолютно не работают на других. В частности, на ПЦ существует доволь─ но много программ, работающих с дисками TR-DOS. Но многие из них работают далеко не на всех ПЦ (они,например,любят с диском работать не напрямую, портами, а всё изго─ ляются с ПЦшной ПЗУхой - BIOS'ом). Но тут хотя бы подразумевается поддержка той или иной системы. А на Спектруме,как известно, никто MS-DOS и в глаза не видел. В общем, для форматирования желательно использовать прогу, заверенную автором на такие случаи. Конкретные программы будут затронуты чуть ниже. В простейшем случае можно отформатиро─ вать диск для MS-DOS на 360 Кб. Прочитать его на СПЕКе можно будет массой древних программ, которые найдутся на любом старом системном диске. Но они,как правило,требу─ ют, чтобы все файлы были записаны последо─ вательно, а не так, чтобы один стёр,другой оставил,и к нему подписываются другие: лу─ чше всего писать файлы на абсолютно чистый диск! Если большие файлы порежутся на кучу маленьких,то их желательно склеить соотве─ тствующей прогой. Поскольку ПЦшная MS-DOS по файлам никак не совместима с TR-DOS по многим причинам, то Спектрумовские файлы на ПЦ находятся в каком-либо специфичном транспортном форма─ те,и полезно различать разные виды файлов. Для начала пару слов об архивации. Бо─ льшинство файлов для Спектрума запаковано тем или иным архиватором. Проблема будет заключаться в распаковке. Если в доступе есть ПЦ,то проблема только одна - научить─ ся пользоваться архиватором. Ещё полезно знать,что некоторые умники на ПЦ любят пе─ реименовывать архивные (и не только) фай─ лы,а точнее,менять расширение (например,на ".hob" ).Реальное расширение можно узнать, посмотрев первые символы файла: для ".zip" там будет "PK", для ".rar" - "Rar" и т.п. Произведем беглый осмотр форматов Спек─ трумовских файлов для IBM. Во-первых,это куча так называемых снап─ шотов. Их легче всего представить как функциональные аналоги MAGIC -файлов для TR-DOS. Их довольно удобно использовать для различного рода программных эмуляторов ZX Spectrum на ПЦ. Существует великое мно─ жество форматов таких файлов: SNA, Z80, SLT и множество других. Файлы .Z80 с тру─ дом можно запускать и на реальном Спек─ труме. (Ред.: .Z80 запускаются программой RUN_Z80 by Reanimator & Vlad, 1999/2000. .SNA 48k можно запустить через DNA_OS by ZET-9, 2005.) Более удобным решением явля─ ется использование программы UNSNAP by HalfElf, 98-99. Она преобразует снапшот в некое подобие МАДЖИКа с лоадером. Она от─ гружает несколько страничек памяти в дру─ гом распростанённом формате,более подходя─ щем для конверсии на СПЕК - хобетном. Этот вид файлов применяется в програме: HoBeta v2.0 InterCompex, Soviet-Swiss JV, 1990 и в её более поздней версии HoBeta v2.15 by SP-Cube Co, 1990,92 Судя по названию данной программы и её издателю, можно предположить,что она имеет какое-то отношение к компьютеру ХОББИТ той же фирмы,имеющему возможность организовать сеть с ПЦ. С помощью этой программы можно писать эти файлы на реальные СПЕКовские диски.В комплект входит и программа-форма─ тер,но посекторная разбивка в ней - далеко не FAST! Судя по всему, осуществляется непосредственная работа с портами ПЦшного контроллера, и совместимость весьма велика (идёт и на 286 ), но не идеальна. Внешней особеностью хобетного файла яв─ ляется расширение вида: знак "$" + буква реального расширения файла. Файлы данного формата представляют со─ бой посекторную копию реального файла TR-DOS, с добавлением 17-байтного (17=#11) заголовка: 15 байт реального TR-DOS'ного заголовка + контрольная сумма. Ред: Контрольная сумма S считается так: S=0; потом для каждого из 15 байтов заго─ ловка TR-DOS: S=S+257*D[i]+i, где D[i] - значение байта, а i - его номер (от нуля). Простейший способ конверсии очевиден: скопировать файл на диск и убрать первые 17 байт. Такую операцию проделывают многие программы на СПЕКе: HOBETA by DR.SQUIZER/ XPJ (Ред.: существует и HOBETA by Alien Factory ), GODZILLA, IZX by TIME KEEPER... А кроме того: Dos To Dos Copyer v2.0 Code - Alexey Porfiryev Idea, Design, Graphics & Organized - Glen (RED Limited Drunkards Group) Она неплохо копирует и хобету,и простые файлы, а также сама форматирует диски для MS-DOS. Ред.: Лучшим копировщиком хобет с/на MS-DOS, кажется,остаётся TRMSHOB2 by Ruby, 2000 (хотя есть ещё PC-Navigator 1.0 by ART, 2001). Развитием хобетного формата является формат ".SCL", иначе называемый HOBETA98, предложенный в программе AMD Copier by Paul Pavlov, которая также может работать с реальными дисками (но уже на 486 :). Ред.: Именно через AMD, несмотря на её глюки, следует перегонять софт с ZX на ПЦ. К сожалению, она не работает под Win2000 и выше,но ничто не мешает запускать AMD, за─ грузив ПЦ с дискеты.Другие программы имеют большие недостатки: так, эмулятор Шалаева перепутывает сектора при копировании со Slow дисков, Spectrum Navigator без вопро─ сов игнорирует плохо читаемые сектора, а rd-trdos после сеанса работы зачем-то пе─ репутывает стороны дисковода.Ещё,вероятно, можно копировать через эмулятор RAMSoft Real Speccy, а также через TeleDisk или makefdi - с последующим конвертированием в .trd (можно конвертировать через эмулятор Unreal Speccy ). Не изменяйте .scl в Spec─ trum Navigator'е! Он непредсказуемо портит информацию при изменении .scl! В нём можно создавать .scl за одну операцию копирова─ ния, можно вынимать файлы из .scl, но не больше! Ковыряться же внутри .scl нужно через плагины к Far'у, написанные упомяну─ тым HalfElf'ом ( xSCL и др. - ставьте все сразу). Важно отметить,что цитировать тек─ сты из .SCL/.TRD удобнее всего через те же плагины:нужно указать на нужный файл и на─ жать Ctrl+Shift+F4 - появляется текстовый редактор (к сожалению, открывается почему- то ЗАХОБЕЧЕННЫЙ файл), где можно пометить нужный фрагмент и загнать его в clipboard. Ещё важное замечание: чтобы эти плагины не спотыкались на дисках, содержащих архивы zip/rar, переименуйте xscl.dll в !xscl.dll и т.п. (тогда эти плагины будут вызываться до плагина MultiArc ). Существуют плагины и для Total Commander'а ( inTRD, inSCL by PushPC/Spectrodyne ), но пользоваться ими неудобно: они либо перемешивают все файлы на образе, либо прилепляют к имени некий номер, который при копировании не исчезает - нужно убирать вручную. Данный формат поддерживает уже нес─ колько TR-DOS'ных файлов: практически ар─ хив методом store (без сжатия), даже кон─ трольная сумма есть. Такое решение позво─ ляет сохранить порядок файлов на диске, что немаловажно для современных программ. Но на Спектруме формат менее поддержан: важно упомянуть программу CONVERTER v2.1 by ART (Базаркин Артем), 1999, которая ещё копирует и обыкновенные файлы, и хобету. Ред.: .SCL можно извлекать Extractor'ом by Jerri/Alien Factory (эта программа нео─ днократно публиковалась в Inferno ). Те .SCL, которые не переваривает Extractor, нужно обрабатывать программой SCL v0.1 by -C.D.L.- Lab (Denis Tsigancov), 2000. .SCL и хобеты,лежащие внутри .zip или .rar, мо─ жно автоматически развернуть соответствую─ щими разархиваторами на ZX ( PKUNZ1.41 и UNRAR0.57 ). Кроме того, эта программа, как и AMD, поддерживает ещё и совсем иной вид файлов - образы дисков,точнее,представитель этого вида с расширением ".TRD". Файлы этого вида представляют из себя полную посекторную копию реального диска. ".TRD" содержит непосредственно образ стандартного диска TR-DOS ( 16 секторов по 256 байт),как правило, DS/DD ( 2544 секто─ ра). Данный формат весьма распространен на эмуляторах и широко поодержан различными утилитами (очень много наименований). Есть и программы для работы с реальным диском, но их совместимость оставляет желать луч─ шего. На Спектруме есть такая утилитка: TR_MS by Cardinal/PlayGear (в приложении к Deja Vu #4) Оная утилита также позволяет копировать реальные диски в файлы ".TRD" на MS-DOS (диски только на 720 Кб!!!) и обратно. Ред.: Покойный >>RRA>> / Alien Factory написал маленькую утилиту, раскрывающую .TRD прямо на TR-DOS диске. .TRD, лежащие внутри архивов zip/rar, опять-таки автома─ тически разворачивают соответствующие раз─ архиваторы. Кроме того сужествует масса других об─ разов дисков: ".FDI", ".FDD", ".IMG" и другие, поддерживаемые некоторыми эмулято─ рами и утилитами: например, можно скопиро─ вать ".FDI" в ".TRD" (Ред.: если .FDI со─ держал именно TR-DOS диск) и обратно. Дан─ ные образы дисков содержат копии дисков не только от TR-DOS, поскольку в них хранит─ ся информация о количестве и размерах сек─ торов на каждой дорожке. На Спектруме поддержка таких дисков затруднительна.Воз─ можна работа с такими файлами (да и любыми другими) при помощи эмуляторов, работающих и с образами и с реальными дисками. Ред.: Не существует программ, напрямую пишущих .FDI на неподготовленную дискету. Проблему решают конверторы из .FDI в .TD0 (для программы TeleDisk ): они называются trx2x by Alex Makeev и fdi2td0 by SMT. Но они спотыкаются на некоторых .FDI! Поэтому лучше пользоваться эмулятором UnrealSpeccy by SMT: загрузить .FDI, записать .TD0. Коротко о кассетных файлах: их тоже су─ ществует несколько видов, но самые распро─ странённые - ".TAP" и ".TZX". Файлы ".TAP" бывают нескольких разнови─ дностей, но все они представляют собой по─ байтные копии кассетных файлов - по неско─ льку файлов в одном ".TAP", без всяких за─ щит и турболоадеров. Файлы ".TZX" бывают разных версий, и предназначены для загрузки с разными защи─ тами (Блиплоки, Спидлоки, и возможна даже однобитная ОЦИФРОВКА совсем уж наворочен─ ных файлов). На ПЦ для таких файлов утилит написано немало, а на СПЕКе, кроме TapBeta и прочей такой штуки, существует TAP v0.3 by Den 'CDL' (от 05.4.2000), каковая непохо пере─ варивает такие файлы. Ред.: Сравнительно недавно (июль 2003) появилась программа PlayTZX (tzx1_03) by Las Jackwolf / Flash inc., позволяющая на реальном ZX проигрывать звук из .TAP и .TZX -файлов (в результате этот звук можно записать на кассету, а можно подключить к выходу одного СПЕКа другой СПЕК). Кроме того,на ПЦ существует такая поле─ зная и многофункциональная программа, как: ZX Spectrum Navigator RomanRoms Software Co., 1997-99 Mihal Soft° Оpехов Михаил, 1998,99, которая поддерживает большинство из выше─ перечисленных форматов и работает с реаль─ ными дисками (правда,фигово!). Для форматирования дисков хороши FUT by MI&DI и FLOPPY FORMAT by Иван Рощин. Пос─ ледняя поддерживает широкий набор дисковых разбивок, но,по моему,не очень качественно форматирует (или проверяет). И ещё раз скажу:на ПЦ полным-полно вся─ ких конвертеров и утилит. Немало их и на СПЕКе. Поэтому изобретать велосипед можно, только если существующие программы совсем уж не подходят для дела. А крайними мерами (типа дискового доктора) пользуются в уж совсем критических случаях. Имея доступ к ПЦ, не завести таких программ - это как-то нелогично. Тем не менее, пожелаю всем использовать ПЦ только под СПЕКовские нужды:архивы,оци─ фровки и сетки! Nuts 01.02.01
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября