Здравствуйте, vasilisk2, Вы писали:
V>Nether Earth with 128k music loader V>- реально так можно было грузить?
Именно такого не видел, но думаю что да, вполне можно было.
Там в видеоролике видно, что сначала загружается свой модифицированный загрузчик — это первая половина ролика, где всё идёт вполне "стандартно".
Потом этот загрузчик запускается и начинает грузить уже саму игру, при этом параллельно проигрывая треккерную музыку.
У меня был Spectrum 48K, там памяти было меньше и такой роскоши не было, но "нестандартные" загрузчики у игр вполне попадались. Обычно это были разного рода спецэффекты. Точно так же загружался сначала свой загрузчик, который запускался и подменял собой системный загрузчик. В своей работе он обычно менял внешний вид процесса загрузки — вместо жёлто-синих линий были бело-серые, чёрно-белые, красно-белые и ещё какие-от варианты. Плюс, картинка на заставке играла роль "прогресс-бара" — там обычно что-нибудь заполнялось или двигалось по мере загрузки игры.
Здравствуйте, vasilisk2, Вы писали:
V>- реально так можно было грузить?
А почему нет? Собственно турбированные загрузчики и раньше существовали. При том, что магнитофон это не очень надежная вещь в принципе, скорость лентопротяжки не константа, помехи и все такое. Сейчас по идее если грузить с мобилы через магнитофонный порт, то скорость можно вообще бешенную сделать на штатном железе. Правда не уверен что народ заморачивался с целью выжать максимум, кому надо те грузят прямо с SD карты напрямую в память.
Музыка была на сопроцессоре, а сопроцессор обслуживался урезаной версией трекерного плеера через прерывания.
Но когда пошли сопроцессоры, мне кажется, тогда появились и дисководы, и касетники остались для настойчивых фанатов.
Здравствуйте, Sealcon190, Вы писали:
S>Так я об этом и говорю. Ок, не на минуту, а на 40 секунд примерно, но всё равно очень сомнительное удовольствие в обмен на этот музон.
Но продвинутый загрузчик мог использовать сжатие, не? В отличие от стандартного.
V>- реально так можно было грузить?
Можно было. Но найти спектрум с 128к и музыкальным сопроцессором в xUSSR был квест. Найти такой спектрум без дисковода и пользоваться магнитофоном — это тоже редкость. Самих игр для таких спектрумов было тоже не найти. А с особенными загрузчиками вообще мизер.
Вполне возможно что загрузчик с музыкой был не от авторов игры, а просто какой-то мастер запилил для души. Думаю так, потому что в самом Nether музыка была совершенно в другом стиле, насколько помню. Ну и лоадеры с фишечками тогда много кто делал. У меня было несколько таких "авторских" кассет, с особенными загрузчиками — типа улучшенное сжатие, меньше ошибок при распаковке, больше игр на одной кассете. Больше всего запомнился, кажется, "формат Леший" — при сбое чтения кассеты не нужно было грузить сначала, а можно было просто немного отмотать и включить грузить дальше. Магическая магия для технологий того уровня.
Здравствуйте, vasilisk2, Вы писали:
V>Но продвинутый загрузчик мог использовать сжатие, не? В отличие от стандартного.
Что-то такое там бывало, да. Были игры с "ускоренной" загрузкой, где сохранённые на ленту данные загружались быстрее, чем обычно. Но я не уверен, делалось ли это именно за счёт сжатия или за счёт снижения временных интервалов отдельных сигналов, что тоже должно было работать, но могло приводить к снижению надёжности.
Из практических применений, они там потом изобрели "микродрайв", который представлял из себя видоизменённую кассету, кажется даже закольцованным. Работа с этой кассетой целиком управлялась программно и скорость загрузки там была намного выше, чем при работе с обычной аудиокассетой — что-то около 120 кбит/c, т.е. для загрузки большинства программ хватало нескольких секунд.
Но это уже было время, когда флоппи-диски пошли в массы и ZX Microdrive получил очень ограниченное распространение.
Здравствуйте, Artem Korneev, Вы писали:
AK>Именно такого не видел, но думаю что да, вполне можно было. AK>Там в видеоролике видно, что сначала загружается свой модифицированный загрузчик — это первая половина ролика, где всё идёт вполне "стандартно". AK>при этом параллельно проигрывая треккерную музыку.
Не хватит ресурсов на трекерную музыку.
Ниже распишу подробнее.
AK>У меня был Spectrum 48K, там памяти было меньше и такой роскоши не было, но "нестандартные" загрузчики у игр вполне попадались. Обычно это были разного рода спецэффекты. AK>Точно так же загружался сначала свой загрузчик, который запускался и подменял собой системный загрузчик.
Не подменял он никакой системный загрузчик. А просто использовался свой собственный.
И "также" тоже не совсем верно. В видео "ламерская" схема, когда загрузчик грузится отдельным кодовым блоком, причём с заголовком. Десяток секунд просрали. Могли бы в REM положить пару команд и загрузить без-заголовочный. А обычно там вообще весь загрузчик и размещался.
AK>В своей работе он обычно менял внешний вид процесса загрузки — вместо жёлто-синих линий были бело-серые, чёрно-белые, красно-белые и ещё какие-от варианты.
Это самый тривиальный вариант. Причём даже свой загрузчик не нужен. Копируем штатный из ROM. И меняем константы, инициализации и XOR текущего цвета.
AK>Плюс, картинка на заставке играла роль "прогресс-бара" — там обычно что-нибудь заполнялось или двигалось по мере загрузки игры.
А вот такие загрузчики на порядки сложнее и попадались значительно реже.
Здравствуйте, Dimonka, Вы писали:
D>Музыка была на сопроцессоре
В ролике не сопроцессорная музыка.
D>а сопроцессор обслуживался урезаной версией трекерного плеера через прерывания.
Ещё проще.
Дампили значения регистров, прямо из плеера. Их ещё сжимали дополнительно. В итоге всё "проигрывание" это OUT нескольких значений, 50 раз в секунду.
Здравствуйте, hi_octane, Вы писали:
_>Можно было. Но найти спектрум с 128к и музыкальным сопроцессором в xUSSR был квест.
Чушь. Полно было 128к девайсов. Самый знаменитый — Pentagon. Демки только под них и писали.
У меня был сначал 48к с гамнитофоном, потом 512k с дисководом и расширенными видеорежимами.
_>Найти такой спектрум без дисковода и пользоваться магнитофоном — это тоже редкость.
В отличие от PC, на спектрумах недостаточно было переписать игру с кассеты на дискету.
Надо было переделать загрузчик. Который обычно был неплохо защищён.
Кроме того штатные операции DOS требовали наличия системных переменных, которые аллоцировались динамически сразу за переменными Basic. А игре требовалась эта память для себя. С кассетой это проблем не представляло, а с дискетой уже начинало.
Особенно весело это было в играх, которые имели подгружаемые уровни.
Существовало целое направление "Дискетации", когда загрузчик, а то и вся игра взламывалась, и переделывалась на загрузку с дискеты. Обычно к ней ещё лепили интро, и включение вечных жизней. Традиция пошла с Commodore64.
Иногда таких циклов было несколько.
До USSR редко добирались фирменные защищённые кассеты. Обычно их взламыали ещё в Польше, грубо и топорно. Потом дискетировали. Потом дисковую версию уже в USSR переделывали обратно в кассетную, для пользователей магнитофонов. Например если она была единственной у "свапперов"
И потом можно было наблюдать "Disked by <someone>" во время загрузки с кассеты
_>Самих игр для таких спектрумов было тоже не найти.
Чушь.
На радиорынках более-менее крупных городов их было полно. Мне тётка на ДР подарила штук 10 или 16 кассет, с неплохой чб полиграфией, купленных в крупном городе (у нас таких развалов не было).
Также существовал почтовый способ покупки. Ты платишь за носитель, или отсылаешь свою кассету(-ты)/дискету(-ты), и номера игр из каталога. Оплачиваешь по N рублей за игру. Тебе записывают и отправляют обратно.
Мы с моим другом им активно пользовались. Покупали игры вскладчину.
_>А с особенными загрузчиками вообще мизер.
Практически любая фирменная.
Турбозагрузчики, счётчики времени.
До нас они, к сожалению, почти не доходили. Но хватало и своих "самоделкиных".
Здравствуйте, vasilisk2, Вы писали:
V>- реально так можно было грузить?
Реально.
Формат записи всегда меандр.
ЕМНИП "0" бит означал ипульс 2000 тактов, а "1" бит импульс 1000 тактов.
Собственно загрузчик только и делал, что крутился в цикле, отмеряя число итераций. И этим отличал что было считано.
Вот эти, невеликие, ресурсы можно было использовать для чего-то другого.
(Учитывая что на подезную работу уйдёт тактов 100, и что одна инструкция это, обычно, 4 или 7 или 10-11 тактов, то остаётся всего сотня инструкций на каждый бит. Т.е. нужна была развесистая стейт-машина и диспатчер. И все стейты выравнивать по числу тактов).
Выплюнуть в микросхему звукового синтезатора пару чисел 50 раз в секунду — вполне "подъёмное" дело.
Понятно что цифровую музыку (а именно она в видео) таким способом проиграть не получится. Даже условынй WAV, слишком низкой будет дискретизация. А уж трекерные семплы рассчитать и подавно не выйдет.
Единственное устройство, которое было на подобное способно — это Ленинградский General Sound (по-сути эта "звуковая карта" представляла собой ещё один спектрум).
Звуковой чип был только в 128к модели. И почему-то было не принято делать чисто 128к игры. Обычно 48/128к. С плюшками для владельцев 128к, типа фоновой музыки (на AY) или загрузки всех уровней сразу в память, без подгрузок с кассеты по мере прохождения.
Поэтому фирменные загрузчики с музыкой как-то не особо были распространены.
А вот на Commodore64 очень даже. Т.к. любой из них имел звуковой чип. См. в ютубе, например, "OCEAN Loader".
Да, именно так и "звучат" чипы тех лет.
Вот МАКСИМУМ, что можно "выжать" из подхода со стейт-машинами.
Авторы — маньяки!
Причём там даже ре-синхронизация без пилот-тона сделана.
IID>Формат записи всегда меандр. IID>ЕМНИП "0" бит означал ипульс 2000 тактов, а "1" бит импульс 1000 тактов.
забываешь еще про несущую. там чуть сложнее принцип, хоть и простой.
помню с братом развлекались. в общем сопрягли спектрум с ес1841. не помню уже через параллельный или ком. т.к. паяльщик брат ))
повторили этот алгоритм. цель была ускорить загрузку, а также хранение на дискете )) ну и просто позырить че получится. )))
в итоге увеличения скорости загрузки достигли процентов на 20. прикольно, конечно, но чисто позырить. практического применения не нашло )))
V>>- реально так можно было грузить? _>Можно было. Но найти спектрум с 128к и музыкальным сопроцессором в xUSSR был квест. Найти такой спектрум без дисковода и пользоваться магнитофоном — это тоже редкость. Самих игр для таких спектрумов было тоже не найти. А с особенными загрузчиками вообще мизер.
лично для меня был квест в то время (школоло) найти деньги на него ) и выполнил лишь частично — получил только 48.
IID>>Формат записи всегда меандр. IID>>ЕМНИП "0" бит означал ипульс 2000 тактов, а "1" бит импульс 1000 тактов.
A>забываешь еще про несущую. там чуть сложнее принцип, хоть и простой.
Нет там никакой несущей. Кодирование тупо длиной паузы (частоты) между каждой сменой направления меандра.
A>помню с братом развлекались. в общем сопрягли спектрум с ес1841. не помню уже через параллельный или ком. т.к. паяльщик брат )) A>повторили этот алгоритм. цель была ускорить загрузку, а также хранение на дискете )) ну и просто позырить че получится. ))) A>в итоге увеличения скорости загрузки достигли процентов на 20. прикольно, конечно, но чисто позырить. практического применения не нашло )))
Хреново сделали, значит.
Даже на ленте турбо-загрузчики легко давали ускорение в 2 раза.
А если источник способен выдавать точный по-времени сигнал, то ускорение может быть и на порядок (~10 раз). OTLA
Здравствуйте, IID, Вы писали:
D>>100% сопроцессорная. 3 канала пищалок и одна шумелка. Всё отчётливо слышно.
IID>Сейчас переслушал — может ты и прав. А басы "подтянуты" внешним усилком.
Это ты просто привык наверное на телеке пищание слушать, а мы чего только не пробовали. У меня был когда-то написан трекер, который не только этой пищалкой управлял, но ещё и самопальным одноканальным восьмибитным АЦП и примитивной драм-машиной.
Правда потом с появлением доступных писюков всё это стало быстро не интересно.