Пожалуй именно в этом.
Все же ИМХО для игрушек такого типа желательно иметь FPS>=25 (еще бы и с субтайловой точностью перемещения ГГ), но понятно, что (на векторе) тогда придется жертвовать чем-то другим.
Вид для печати
Да, 25 кадров было-бы замечательно, согласен. И, скажем, 4х - пиксельная точность ;-).
Но тогда можно забыть о многоплановых уровнях, движущихся оверлеях с альфа каналом, модели повреждения более сложной, чем декремент жизни и каких-то многофункциональных экранах. На Векторе с его вэйт стэйтами, 3МГц и 32К видеопамяти ИМХО вряд-ли удастся удержаться со всем этим даже в районе 20fps, хотя кто знает.
Когда ещё давно я стал задумываться о внутреннем дизайне игры, то отбросил субтайловые операции в первую очередь. Затем ушло разрешение тайлов на байт и было принято, что оптимальным размером тайла и шага движка должен стать квадрат 16×16 пикселов в четырех цветах с двойной буферизацией чтобы исключить мырганье. Всё это, безусловно, компромиссы, куда-ж без них.
Выкладываю промежуточный maintenance release v.0.53a.
Добавлено:
1. Переключение многофункциональных дисплеев клавишей <Tab>
2. Статус MFD повешен на <F1>
3. Многофункциональный дисплей с инвентарём. <F2>
4. Смена палитр повешена на клавишу <C>
5. Графика для телепортера
6. Зачатки графики для уровня (2й этаж)
7. Загружаемый профиль повреждений робота
8. Загружаемый музыкальный драйвер (не отлажен, и не используется)
9. Подправлен бегущий текст в меню опций
10. Подсветка выбранной опции в главном меню
Пофикшено:
1. Глюки с музыкой в меню опций
2. Повреждения при движении на подъёмниках вниз при активизации более одного подъёмника
3. Мелкие баги, касающиеся учёта повреждений робота
4. Разная скорость воспроизведения музыки на процессорах i8085 и z80
5. Задержка 1й двери в состоянии "открыто" увеличена в 2 раза
Enjoy!
Классно. Ну а весь уровень пройден? Там ещё пара заморочек-головоломок с открытием дверей и прохождением в них. Везде, где ожидается небольшая головоломка, я повесил анимированные экраны. Если внимательно смотреть на анимацию, можно с 1го раза догадаться, что надо делать чтобы пройти.
Про прыжок для того чтобы забрать ключ для подъёмника №2 я уже рассказал, впрочем там теперь дорожный знак height clearance висит, как-бы предупреждая о том, что высота этажа ниже.
Удобно-ли использовать <TAB> для переключения между дисплеями? Полезен-ли inventory display?
Анимация телепортера и телепортации мне до сих пор не нравится. Возможно, полупрозрачные кольца силового поля надо сделать пожирнее и погнать их быстрее снизу вверх, а перед самой телепортацией, возможно надо вспышку делать. Я даже подумывал всю палитру выбелять на момент телепортации, но пока решил этого не делать.
В общем, даже без врагов, объём доводок предстоит колоссальный. Будут ещё и горизонтальные платформы, надеюсь, и выдвигающиеся мостики и "провалы". Игрушка разрастается и с этим растут аппетиты и по возможностям движка и по графике. А графика сделана пока "начерно", и, потом, я совсем не художник ("он рисует как умеет" и "я так вижу" - это ко мне :v2_dizzy_facepalm:)
В общем, буду рад услышать любые предложения, критику и ваапче. Даже если не всё сразу приму, это даёт пищу для размышлений "куда и чего".
Нет, не прошел, а то бы похвастался :) Но пока и не пробовал, просто немного походил.
По графике вроде я уже высказывал крамольную мысль - а может все же конверснуть откуда-нибудь хотя бы часть (главный герой, вентиляторы, м.б. ключи)? Для конструктивности надо бы еще назвать откуда, но тут я затрудняюсь. Особый вопрос к анимации ГГ, но опять же, тут крупный шаг перемещения, даже не представляю, откуда можно украсть нечто подходящее.
Из текущей игровой графики мне понравилась батарейка :) , а из имеющихся палитр - почему-то оттенки серого.
Важно то, что сам я рисовать совсем не умею, через эту призму и надо воспринимать мои мысли про графику.
В принципе, возможно. Но, я думаю, что пока рано чуть. Не все power-ups сделаны из задуманных. Я думаю, будет намного проще, когда процентов на 90 возможности движка будут готовы. Это-к бете где-то.
В болдере вроде такой-же. Странно, но меня куда больше раздражают временные всплески нагрузки на CPU, чем анимация ходьбы главного героя.Цитата:
Сообщение от ivagor
А мне почему-то нравится прорисовка дверей и устройства их поднимания. Люблю всё ажурное. Такое на спекки не сделать с его "атрибутикой". А батарейку-как раз можно. Видимо, "сила привычки" - великая сила, типа ожидаем от графики, чтобы было "как у них". На самом деле, хочется чего-то ажурного, где подчёркивалось бы, что Вектор может цвет на пиксел, хоть цветов и с гулькин нос, но не монохром уже :-). В общем надоть думать о "стилевом решении". Чем раньше, тем лучше, хоть и "торопиться не надо, надо хорошо вылечить" (с) Кавказкая пленница.Цитата:
Сообщение от ivagor
PS. Думаю, что основная проблема, что рисовать "в едином ключе" пока не получается. Надеюсь, что со временем всё это придёт к какому-то единству. Натырить графики, конечно можно, но хочется чего-то своего. Пилите Шура, она золотая :-).
Там (речь ведь про версию Лебедева?), насколько помню, фаз анимации ГГ больше, хотя перемещение тоже на большой тайл. Если ГГ болдера "ходит на месте" вправо или влево то вообще хорошо. Но там ГГ как раз сдернутый, может и не дословно (попиксельно), но явно повторен прототип.
Это да, неприятно.
Да, про неё. В принципе, я тоже могу увеличить число фаз анимации. Под это и память выделена уже. Вроде, как до 20 фаз на ГГ ЕМНИП.
Насчёт нагрузки на проц-тоже не безысходная ситуация. Главное, что я точно знаю все причины по которым всплески происходят. Конечно, рендеринг заднего плана и оверлеев с альфой уже почти на пределе в смысле оптимизаций по скорости, но вот анимации и особенно обработка триггеров может быть ещё улучшена ИМХО. На уровне, на самом деле, видимо-невидимо объектов и событий происходит. Я иногда вообще сам удивляюсь, как такое ООП на асме работает, и не рушит ничего :v2_dizzy_roll:
Уф, прошёл вроде - Game Over в конце не красиво, можно было бы хотя б Congratulations написать! Хардкор конечно знатный, особенно с первой дверью, нельзя так в самом начале напрягать имхо, лучше сперва головоловку какую-нибудь придумать.
На мой взгляд музыку было бы неплохо поменять - ту что в игре, на ту что в Options. В Options из-за картинки ничего разобрать нельзя: ни на реале, ни на эмуле. В скролле получше видно из-за того что фон более светлый, но всё равно не айс, может всю информацию по кнопкам в ReadMe и без всяких скроллов?
Заставка перед уровнем с подмаргиванием палитрой порадовала! В игре конечно графика бедновата - не работ, а скелет какой-то. Для фазы прыжка ГГ хотелось бы ещё видеть графику.
Не понял зачем столько детальной инфы по параметрам да ещё по всем 4 направлениям - не стыковкой же Шаттла управляем. Или это отладочная информация? Достаточно мне кажется одного суммарного по всем направления и не в HEX-форме, а в виде растущего ползунка-уровня, а ещё лучше на звуковые эффекты повесить.
Может пожертвовать всей этой точнейшей физикой в угоду аркадности и геймплею?
На 4м этаже за дверью при использовании взятого ключа зажглось? Тогда-да, поздравляю!
Game Over в конце-это временная затычка. Там вообще-то переход на следующий уровень будет с возможностью апгрейда робота между уровнями. Он поэтому и скелет такой-только "с завода", недоделанный и без рук. В чём был, в том и убежал :-)
Пока GameOver во всех случаях зажигается, и при убийстве робота тоже.
Уровень-тестовый вообще-то :-)Цитата:
Сообщение от Syntal
Это-единственный уровень, который у меня есть, на нём и отлаживаюсь.
Там сразу на юзера вываливает всеми возможностями движка. Для настоящих уровней нужен редактор. Его нет пока, поэтому сложность не по нарастающей, и предметы кое-как почти разбросаны.
Бида. Придётся, наверное другую картинку ставить. Уже жаловались. Уж больно мне эта нравится, но больше разность яркостей не выкрутить. Странно, что у меня всё на разных мониках разборчиво и читаемо.Цитата:
Сообщение от Syntal
Порадовало, что на реале идёт. Это-первое известие о работе на реале. Здорово! Реал с полным фаршем, квазидиск+дисководы? Сразу вопрос:загрузка уровня с дисковода долго по времени получается, или терпимо?
Оно и будет в ридми. В скролле будет всякая шняга типа бестов и регардов.Цитата:
Сообщение от Syntal
Просто в ридми будет ещё одно меню, о чём читать.
Будет. И не только для прыжка. Даже для стояния на месте. Только всё это время занимает.Цитата:
Сообщение от Syntal
Для отладки. Я уже выше об этом писал. Естественно, будут либо ползунки, либо вообще "краснеющий" по частям робот.Цитата:
Сообщение от Syntal
Много скорости это само по себе не добавит. Макс-четверть кадра в секунду, я проверял уже. Но при этом уйдёт туча планируемых идей, по типу апгрейда робота по частям.Цитата:
Сообщение от Syntal
Кстати, звук можно самому поменять. Просто .stm файлы должны иметь имена menu.stm, options.stm и level001.stm. Подойдут любые с размером до 7К. Главное, чтобы в них длина была правильно прописана.
Пасиб за комменты, всё учту по мере сил.
Картинка хорошая - её можно при загрузке второго уровня показать, а в Options может её сделать тупо с чёрным полем под надписи, а текст самым ярким цветом?
+AY ещё + винт, винт поддержать нет желания? ВИ1 только нет. Загрузка из меню до старта уровня по секундомеру 25 секунд, с эмулем разницы не ощутил, значит, не принципиальна.
А что за клякса ездит по диагонали рабочего экрана - поначалу бесила очень? Нереализованная фича?
Вам огромное спасибо за труд, пожелаю творческих узбеков, запала и времени свободного побольше!
Хочется всё-ж оставить эффект полупрозрачности текста. Ради него всё и затевалось. Просто нужны более контрастные цвета и не такие плавные градации как на этой картинке.
Классный наборчик, тру Вектор со всем фаршем! А насчёт винта, возможно к этому и придём, когда дискеты не хватит.Цитата:
Сообщение от Syntal
Это-будущий вражина :) - чтоб оценивать, сколько отнимает пересчёт координат и вывод с точностью до пиксела. Просто вместо картинки там альфа-спрайт со всеми возможными вариантами полупрозрачности.Цитата:
Сообщение от Syntal
------------------
v. 0.54a March 31 2014
------------------
Добавлено:
1. Загружаемые драйвера для музыки и звуковых эффектов
(как следствие-возможность поддержки любых звуковых форматов)
2. Поддержка звуковых карт R Sound-2 и Sound Tracker (сменой драйвера)
3. Загружаемые библиотеки звуковых эффектов (SFX файлы)
4. Маппинг уникальных звуковых эффектов для каждого события в игре
(не все события размаплены в данной версии)
5. Отключаемые moving sequences (выключение подъемников)
6. Активизировано меню ReadMe (просмотр файла readme.txt)
7. Написан FAQ для пользователей
8. История изменений в версиях собрана в changelog (этот документ)
Пофикшено:
1. Уменьшены всплески нагрузки на процессор при обработке триггеров
2. Шрифты при смене видео режима конвертируются в банке квазидиска без malloc
3. Пофикшено отключение звука в меню нулевым значением опции Sound Tempo
4. Перерисованы изображения ключей телепортера и выхода с уровня
5. Изменена и перелинкована (на 1K меньше) утилита ShFNT.com
6. Пофикшен код воспроизведения звуковых эффектов
7. Исходный мультифункциональный дисплей заменён на "инвентарь"
Выложена новая альфа v.0.55
Robotz! Changelog
------------------
v. 0.55a 14.04.2014
------------------
Добавлено:
1. Парсер гипертекста с поддержкой тэга \цвет, где цвет= hex символ от 0 дo F.
2. Цветовые тэги в содержимое файла readme.txt (подложка/шрифт, 2 бита на цвет)
3. Простенький побайтный RLE-компрессор/декомпрессор текстовых файлов
4. Цветной текст в меню README (сжат, декомпресся на лету)
5. Дополнительный системный шрифт digitalA.fnt (увеличен до предела размер символов)
Пофикшено:
1. Ускорен вывод мультитекстурных шрифтов в режиме низкого разрешения
2. Немного подправлены системные шрифты
Попробовал увидеть детект R-Sounda - не нашел. Плохо искал, или он будет в следующих версиях?
ivagor, вообще-то FAQ никто никогда не читает, но всё-таки рекомендую.
;)
Всё, что надо сделать - это заменить драйвер c классом Sound Renderer cледующим образом:
1. Запускаем роботов и смотрим в бутлоде, какой из файлов драйверов говорит что у него класс "Sound Renderer". В версии 0.55 это файл SOUND002.DRV
2. Выходим из роботов в МикроДОС и переименовываем файл rs2stm.drv соответственно (в SOUND002.DRV)
Лучше переименовывать следующим образом:
cp rs2stm.drv sound002.drv
При неправильном переименовании бутлодер сообщит, что 2 драйвера либо пытаются повеситься на одно-и-тоже устройство, или имеют один и тот-же class и не забутит игрушку, выйдя в МикроДОС
Утилита cp.com на образе диска с последней версией. Я вообще-то думал сделать 2 submit файла для простоты запуска, но не стал. Сделал только sysfnt.sub для смены системных шрифтов. На всякий случай, напишу как им пользоваться. Например, чтобы сменить системный шрифт на digital8.fnt, в командной строке МикроДОС надо набрать
sub sysfnt digital8
Игра с этого момента будет использовать digital8.fnt в качестве системного шрифта (sub файл больше запускать не надо).
Я потом когда-нибудь возможно сделаю это либо конфиг-файлом, либо-ключами. А пока-так.
PS. Да, насчёт детекта: запусти конфигурацию игры с rs2stm.drv под Sound Tracker или с отключённым R-Sound под любым из эмулей и бутлодер, загрузив драйвер, должен сказать, что device not found и поехать грузиться дальше. Но звука в игре не будет, только SFX.
PPS. Зачем всё так "сложно" сделано? Чтобы можно было иметь RS2PT2.DRV, RS2PT3.DRV и так далее.... ;)
FAQ я читал, но поверхностно. В частности пункт
Q. Does this game support R-Sound 2 sound board?
A. Yes
дальше не читал
После cp rs2stm.drv sound002.drv заиграло.
Во. А теперь - "отключи" в эмуле карточку, скажем в VV в меню Sound AY/YM Sound Card, выставив Card Type в "None" или в "Sound Tracker".
Ясно, что оно играть не будет, но игрушка загрузится, а бутлодер скажет что Sound Renderer device status: not found.
Эх, хочется уже сразу иметь драйверы для проигрывания RMP,PT2 и PT3.
В игрушке всё для этого готово - она абсолютно "не в курсе", "как оно играет": драйвер не только обрабатывает всё проигрывание, но и задаёт расширение файлов и определяет их размер. Скажем, для PT3 все файлы трэков, которые сейчас .STM будут .PT3.
Жаль, что нет эмуля с поддержкой обоих карточек одновременно: можно таким-же макаром и звуковые эффекты через разное оборудование играть. Сейчас SFX идёт через PIT i8253.
У тебя DE1 есть? Можно туда прикрутить 2 карточки одновременно, но если прикручивать буду я, то чтение из R-Sound пока под вопросом.
Да, у меня есть DE1 (cтарого пошива, с медленной памятью)
Помнится, я даже ковырял FDD код (6502, кажется - там компилятор и линкер поменялся, и мне было не пересобрать).
А может ты попробуешь звуковые драйвера подописывать? Скажем, PT3? Я сырки тебе пришлю и driver model растолкую, хотя там всё проще репы. Просто у меня руки не доходят. Да, у S.E.S в демке Polet4k оченно няшный STM проигрыватель. Я его как-то выковырял идой, а потом-потерял весь откомментированный и отдизассембленный код :v2_dizzy_facepalm:
Желательно уточнить - у тебя работает ревизия 403 (SDRAM 60 MHz - при переносе на DE1-SoC словил сюрпризы) или 400 (SDRAM 24 MHz - обязана работать на любой плате)? Может лучше в почту, чтобы здесь меньше оффтопить.
Насчет звуковых драйверов - на данный момент не готов, сильно снизилась мотивация писать что-либо для ВМ80.
Проект был заморожен по причине отпуска в Питер.
Вернулся и выкладываю новую альфу.
Robotz! Changelog
------------------
v. 0.56a 01.06.2014
------------------
Добавлено:
1. Звуковые эффекты и визуальные эффекты полупрозрачности в меню опций
2. Дополнительные звуковые эффекты на события в игре
3. 2-bit 9kHz звуковой DAC драйвер для воспроизведения вокала на i8253
4. 2-bit 9kHz звуковой DAC драйвер для воспроизведения вокала на Сovox
5. Инсталляционный скрипт
Изменено:
1. Изображение заднего плана в меню опций на "The Guardian" by Nikolai Nazarov
2. Цвета палитры в главном меню на оттенки серого
3. Цвета в меню "Read This"
Теперь в игре есть инсталляционный скрипт install.sub, который запускается автоматически при первой загрузке с диска и устанавливает драйвера, настраивает меню опций и кое-что ещё. При успешной инсталляции скрипт запустит игру и всё должно работать. По умолчанию ставятся следующие драйвера:
1. Sound Effects - через i8253
2. Vocal Sound в заставке 2-bit 9kHz DAC driver для i8253.
возможные альтернативы:
1-bit 7kHz DAC sound driver через бипер
2-bit 9kHz DAC driver для Covox (наилучшее звучание, хотя i8253 я довёл по качеству почти до ковокса)
В эмуле VV с эмуляцией таймера похоже глюк: при перепрограммировании режимов с WORD count на LSB звук становится глухим. Разницу слышно если запустить Роботов, выйти в ОС а потом запустить 2й раз.
3. Background Sound - STM через плату Sound Tracker
возможные альтернативы:
Background Sound - STM через плату R-Sound 2
Для того чтобы поменять драйвера на альтернативные, нужно отредактировать инсталляционный файл install.sub, раскомментарив соответствующие строчки, сохранить файл и запустить его из командной строки MicroDOS следующим образом:
a:<install.sub
Положил на диск редактор wm.com чтобы прямо в ОС редактировать.
Удачи с инсталляцией. Новая альфа как всегда в 1м посте.
В принципе, возможно подобрать константы под ровно 9kHz,но не данной имплементацией-она не только для 3MHz CPU clk, а на диапазон от 2 до 20MHz. Там для частот до 12MHz примерное табличко, на слух,а выше-линейная интерполяция некоей замысловатой функцией. Кроме того, для z80 и 8085-своя отдельная таблица и функция.
Частота между отсчётами может едва-едва плавает из-за моей ленивости -не стал точно nop-ами добивать места где нет обработки склейки байтов. Кроме того, там вывод бордюра и опрос клавиатуры впихнут между байтами. Вообще, драйвер читает стеком по 2 байта, что даёт 8 отсчётов, а обработка их значений развёрнута по 12 "функциям" с абсолютно одинаковым количеством тактов. Стеком-от того, что драйвер, естественно, читает данные из банка квазидиска: все вызовы "фунций" используют pchl.
Если это принципиально, могу попробовать написать более православно. Но имхо, на 3МГц звучит не сильно хуже 2-х битного ковокса.
PS. Посмотрел на сырец, и могу подтвердить, что между отсчётами действительно есть плавание. В принципе, его легко можно прибить nop-ами до 48 тактов, даже момент с выводом бордюра.
Для любознательных:
Прикинул: PL_VOL занимает 192 + (32 * CPUWte) тактов. Для 3MHz CPUWte=3, что для наихудшего из случаев 24 vs 48 cycles даёт 12% качание (6% девиации) несущей. Наверное, стоит всё-таки пробить NOP-ами в следующей версии дров.Код:PLBYTE MACRO _reg,_lbl1,_lbl2,_brdrw
mov a,_reg
rlc
rlc
ani 1100b
DB (ori)
_lbl1: DB 0 ; 11B
PL_VOL CPUWte ; 32 cycles
mov a,_reg
rlc
rlc
ani 11B
sta _lbl2
mov a,_reg
PL_VOL CPUWte ; 48 cycles
mov a,_reg
rrc
rrc
mov _reg,a
IFNB <_brdrw>
out D30PB
EndIF
PL_VOL CPUWte ; 24/36 cycles
IFNB <_brdrw>
mov a,_reg
ani 1
out D30PB
EndIF
mov a,_reg
rrc
rrc
mov _reg,a
PL_VOL CPUWts ; 24 cycles
EndM
Мож кто ютуб-видео запилит? А то я в векторе ни бум бум, а посмотреть что такое эти ваши роботы - было бы неплохо.
Из меня киномеханик-не сильно хороший. Ну только если какая добрая душа найдётся.
Во вложении-православный :v2_finge: драйвер для воспроизведения 2-х битного 9кГц вокала на DAC из 3х каналов i8253 PIT.
Диапазон рабочих частот CPU для работы драйвера: 3-47.9MHz
Разрешение драйвера: 100kHz шаг CPU clock.
Поддерживаемые CPU: i8080/85,z80,KP580BM1
Относительные погрешности вводимых задержек (для разных частот CPU):
Для i8080 и KP580BM1 = 1.0(3)%
Для z80 и i8085 = 2.9%
Девиация несущей частоты:
Для i8080 и KP580BM1 = 0% (если нигде не накосячил)
Для z80 и i8085 девиация будет присутствовать, но посчитать сейчас уже нет сил, голова пухнет от подсчёта тактов.
Ошибку отклонения несущей от 9kHz не считал, но для z80 и i8085 она будет выше. Есть некоторые сомнения, что мог накосячить с подсчётом тактов для z80/8085.
Очень интересно, что покажет спектральный анализ уважаемого ivagor-а.
Для установки драйвера на диск с роботами:
1. Заменить драйвер в user 3 диска на драйвер из вложения
2. Запустить из user 0
a:<install.sub
3. Для эмулятора Virtual Vector перезапустить комп по окончании инсталляции. Для emu - не требуется.
4. При запуске роботов убедится, что бутлодер показывает версию vocal renderer драйвера как 2.0
При работе на частоте меньше 3MГц драйвер не станет проигрывать звук и бутлодер просто выйдет в главное меню игры.
Тогда это получился синтетический тестинг ;-)
Одно файло скопировать плагином для FARa в образ-не хардкор.
PPC, я могу для ROBOTZ завести BTSync-овый фолдер на манер как мы сделали Ramiros-у для VV. Выглядит это как то, что ты кидаешь у себя файл в специальный каталог, а у меня на распе это через пару минут появляется с автоматически обновленным html-ем и проч. Ы?
svofski, спасибо, я не против выкладывать обновления туда. Всё равно остаются 2 возможных опции в каком формате доставлять промежуточный между версиями контент:
1. Каждый раз при изменением любого файла драйвера/обоев/музыкального трека делать нумерованный релиз,бамп-ап версии и выкладывать всё это в виде готового образа .fdd, за что ратует ivagor.
2. Если изменения не затрагивают .com файл, выкладывать только эти изменения отдельными промежуточными апдейтами с описанием и инструкцией по интеграции. Хранить их до выхода следующей версии, а потом-интегрировать в образ с новой версией, если это только не какая-то альтернативная вещь типа обоев/трека.
По многим более, чем одной причине, я-за вариант номер 2. Это приемлемо?
Лично для меня вариант ivagor-а более приемлем и понятен, я тоже за него ратую =)
Если бы еще были какие-то коммандлайновые (то есть пакетные) тулы для работы с образами .fdd, тогда бы можно было б часть всего этого автоматизировать. А с этими фаровыми плагинами, я не знаю.. Кстати, надо бы выпотрошить их в коммандлайновые утилиты.
Скорее он кажется на первый взгляд удобным для поставил-запустил-посмотрел.
Но для этого как раз релизы и выходят. А между версиями могут появляться-исчезать драйвера, меняться обои и т.п. Роботы-модульные вплоть до мульти-функциональных дисплеев. Всё это грузится с диска и "возможны варианты". Когда-нибудь весь контент всяко на дискету не полезет (у меня-уже давно так :-) ). Можно, конечно, будет перейти на hdd потом, но мне просто нереально будет отслеживать версии, разница между которыми в том, что, скажем, добавилен драйвер для проигрывания .pt3 треков или изменены профайлы какого-либо из ГГ.
Но раз такое единение, то настаивать не буду.
Насчёт утилит командной строки для работы с образами-отличная идея.
Понадобятся кау минимум ключи для
create image
write file
read file
delete file
change file attributes - если хотим уважить r/o и system атрибуты
Всё это-с учётом user area
Возможно, придётся wildcards поддерживать для пакетной обработки, как иначе "стереть всё"
Вообще, директория CP/M простая так что можно и из фары не выдирать, а забацать с нуля.
Плагин к фару по-моему неплохо написан и все это в нем уже есть. Надо только отпилить собственно плагинную часть.
А почему, например, не держать сорцы на гитхабе, а на сайте выкладывать только собственно уже релизы-демки на .fdd ? Тогда все эти проблемы сами собой решаются, сорцы можно чекинить хоть после изменения каждого символа и это никого не будет напрягать, будет история и в то же время будет презентабельный способ смотреть на "релизы".
есть мой xkorvet http://zx-pk.ru/showpost.php?p=716631&postcount=24
он для корветовских KDI дисков
я его с фаром и использовал как внешний архивер ;)
и из комманд лайна.
он не привязан к формату (у корвета параметры диска читаются из 0го сектора)
если он есть в Векторовских образах - вообще просто, если нет можно заколотить его
просто орионвские диски - это потомки корветовских, там есть эта область.
xkorvet конечно далёк от идеала, но за точку отсчёта взять можно.
в ближайшее время буду его допиливать немного, (перезел под линух, надо там править, хотя фильтр для чтения под MC уже набросал)
---------- Post added at 14:01 ---------- Previous post was at 13:59 ----------
похоже тоже наследник ;)
Robotz56.fdd
Код:esl@esl-hp:~/Dropbox/Emulator/Other/Vector/Games/robotz$ xkorvet l Robotz56.fdd
xKorvet Version 1.3, copyright 2002-3 by Sergey Erokhin
argv[0]=xkorvet
argv[1]=l
argv[2]=Robotz56.fdd
CMD: l
FileName: Robotz56.fdd
FileMask: *.*
KDI: Robotz56.fdd
Begin:
CP.COM 9088
DIR.COM 2048
LABEL.COM 768
TYPE.COM 768
WM.COM 9728
WM.HLP 11136
ROBOTZ.COM 18816
COMPO.FNT 6272
LEVEL001.LOL 22656
LEVEL001.LVL 13056
MFD.LVL 384
ELECTRIC.SD1 46464
ELECTRIC.SD2 62848
SFX000.SFX 6656
LEVEL001.SPT 15488
MFD.SPT 8832
RECCEBOT.SPT 1664
TERMINUS.SPT 2176
LEVEL001.STM 2304
MENU.STM 6144
OPTIONS.TXT 1536
README.TXT 2688
01\PITSFX.DRV 384
02\RS2STM.DRV 1408
02\STSTM.DRV 1280
03\BDAC1VOX.DRV 384
03\CDAC2VOX.DRV 512
03\PDAC2VOX.DRV 1024
04\DIGITAL8.FNT 2176
04\DIGITAL9.FNT 2176
04\DIGITALA.FNT 2176
05\MENU001.IMG 24704
05\MENU002.IMG 24704
05\MENU.SUB 128
06\OPTIONS0.IMG 24704
06\OPTIONS1.IMG 24704
06\OPTIONS0.STM 6144
06\OPTIONS1.STM 6144
06\OPTIONS.SUB 128
07\LEVEL001.IMG 24704
07\LEVEL002.IMG 24704
07\LEVEL.SUB 128
SUB.COM 6400
INITIAL.SUB 128
TERMINUS.BOT 384
E5\INSTALL.BAK 3328
INSTALL.SUB 3328
E5\SYSGEN.COM 2048
ROBOTZ..56 0
E5\SPRITE.INC 11776
E5\INSTALL.BAK 3328
ROBOTZ.SUB 384
E5\INSTALL.BAK 3328
E5\W.W 256
E5\INSTALL.BAK 3328
End.
[свернуть]
---------- Post added at 14:05 ---------- Previous post was at 14:01 ----------
а вот бинарник под винду (еще тех времён)
и там внутри как его к фару подключить
https://dl.dropboxusercontent.com/u/490774/xkorvet.zip
Он не все файлы видит на образе.Глубже я не копал.Но в принципе, конечно подойдёт.
Какая-то очень древняя версия даже где-то лежит. Просто её обновить надо. Я прекратил апдейты туда по причине яростной раскройки сырков в какой-то момент.
Возможно, это самый наилучший вариант, и всякие одиночные файлы стоит держать между билдами в сорс контроле. Думаю, так и поступим.
---------- Post added at 08:09 ---------- Previous post was at 08:00 ----------
Адназначна! И бут сектор с инфой о конфигурации дискеты у нас тоже есть. Я даже когда-то очень давно писал для Вектора сюсьинфу и читал все эти 5 дюймов, двойная плотность MFM 40/80 1/2 и прочее и прочее :-)