Pull to refresh

Comments 65

Можно было бы каналы развести. Вообще сурово было бы. Я имею ввиду партии по каналам.
кучеряво однако распечатанные исходники, я вона помнится когда Tape Loader оригинальный разбирал так ручкой в тетрадку все писал :)
Это уже из позднего, пост-спектрумовского и пред-писишного периода :) А так да, тетрадка в клеточку и карандашик рулили со страшной силой. Собственно так же и кодить на спектруме начинал — на бумаге писал, потом шёл туда где есть спектрум и набирал (пока свой не купил).
Отличная мелодия, куда лучше симфонии Тристана Перича — хоть по ушам не бьет.
Вероятно, из-за конденсаторов в цепи.
UFO just landed and posted this here
Это из какой-то игрушки под спектрум кажется.
Музыка из меню Savage 3. Автор — Jason C. Brooke
тепло… )
но видимо мало кто помнит.
только олдскульные гики, как автор.

действительно, эта игра со спектрума — Savage 3

как воспроизвести ее в современных условиях? ;)

1) берем снепшот игры здесь: zalil.ru/29918019
2) открываем онлайн эмулятор спектрума: wizard.ae.krakow.pl/~jb/qaop/
3) жмем ссылку «Try it online»
4) жмем «load»
5) подаем на загрузку скачанный снепшот

спасибо топик стартеру, авторам игры, автору спекртума, автору эмулятора.
Это из Savage 3, хотя ИМХО в Savage 1 была самая крутая мелодия в серии, и одна из самых крутых из написанных для бипера на спектруме. Послушать: vpleer.ru/?q=ZX+Spectrum+savage+part+1

Да и игрушка сама по меркам спектрума чумовая в плане графики и спецэффектов. На одном уровне с R-Type.
Искренний респект вам, это действительно круто!
чтобы при нажатии на reset не происходило КЗ?
Нет, цепь RESET и без диода будет отлично справляться. Но это мелочи, тут главное код! =)
Через него в теории должен быстро разряжаться C1 когда пропадает питание (у этого контроллера нет цепи brown-out reset для принудительного сброса при недостаточном напряжении питания).
Мне уже хочется вернуть мой старенький спектрум… Пусть он у меня уже и не совсем ТРУ был — с флоппиком, но я всегда воспринимал его как чудо.
Так верни его — теперь это не проблема! Можно купить или собрать самому. Вся периферия (блок питания, клавиатура, монитор) от PC. Или оригинальную машину на E-Bay, но надо будет повозиться с подключением.
Я родственникам свой старый отдал… Вот про него и говорю. Современный конструктор (или же покупка нового девайса) лишен такого глубокого ностальгического налета :-)
Но за ссылку спасибо! Вдруг в будущем захочется.
Да в комментах на много более интересная история чем тут! )
В смысле в комментариях к коду, блин =/
Уже четыре раза прослушал, что-то вот рядом крутится, а вспомнить никак не могу. Не мучайте, откуда мелодия? :)
Наверняка тетрис какой-нибудь :)
Супер мелодия!!! Спасибо и респект! :)
Одна из лучших музыкальных композиций на Спекки, да и сама игра Savage хороша.
Мне из Chronos больше нравилась. В Agent-X 2 тоже ничего была…
Да, Tim Follin заруливает всех. Самое лучшее из 1-битной музыки что я слышал — Raw Recruit, Chronos и Agent-X 2.
cbx говорит явно о Спектруме. И, о да, Тим Фоллин на спектруме не превзойден.
В Chronos просто чумовой звук, я и не думал, что бипером можно выдать такое. Хотя в Dark Fusion тоже была хитрая мелодия.
David Whittaker тогда к доброй половине игр писал музыку :)
Круто и спасибо за схему!
Коллега cbx, а расскажите, пожалуйста, в нескольких словах: каким образом и в чём создаётся прошивка и каким образом она загружается в микроконтроллер? Я в курсе, что можно доки почитать, просто любопытно, как это практически выглядит. Спасибо.
Очень хорошо о микроконтроллерах написано у DI HALT'а, например в курсе по AVR. Если же кратко и своими словами, то:

  • Изучается документация (без этого никак), выбирается микроконтроллер исходя из задачи/опыта/финансов
  • Собирается/покупается подключаемый к компьютеру программатор который умеет прошивать данный чип. Он может быть как с разъёмом в который помещается микросхема контроллера для программирования, так и внутрисхемный (умеет шить чип расположенный прямо в устройстве без необходимости его вытаскивать)
  • Выбирается язык программирования (как правило это ассемблер или Си), на котором собственно и пишется прошивка. В принципе знания Си и микроконтроллерной специфики достаточно, но на мой взгляд лучше этап изучения набора команд и ассемблера не пропускать — в ряде случаев без этого никак. Для многих контроллеров доступно огромное количество готовых библиотек упрощающих решение типовых задач.
  • Писать код можно как в обычном текстовом редакторе, так и в специализированной среде разработки если таковая имеется
  • Исходный текст компилируется в машинный код с помощью компилятора поставляемого производителем контроллера
  • При помощи программатора и его ПО полученный код зашивается в микроконтроллер, как правило при этом так же выполняется конфигурирование некоторых возможностей кристалла (например типа осциллятора, цепей сброса питания и т.п.)
  • При необходимости всё это отлаживается либо в эмуляторе, либо прямо на кристалле при помощи отладочных возможностей и специального ПО
А чем собственно шьется этот чип?
Добавил ещё пару картинок в пост.
UFO just landed and posted this here
на самом деле такой стиль был очень популярен до появления ЛУТа, большинство пятиминуток делалось именно так, если не на скрутке xD
Вообще ЛУТ в 2000/2001 году я уже немного использовал, однако рисовать дома на спектруме разводку было проблематично, а на работе времени особо не было.

Да и родилась эта картонка во время отладки кода, поэтому основное желание было услышать звук а не сделать красиво :)
А почему именно ВЕшка? Чисто ради экзотики?
Какой-то особой логики в выборе не было. Когда начинал изучать микроконтроллеры, ковырял параллельно PIC'и и ВЕ1. Кажется её проще и дешевле достать было. Ещё в PIC'ах после Z80 бесила обрезанная до минимума система команд.
Да ладно вам, это все таки RISC. Вообще MCS51 вполне себе нормальная система команд, бывало и хуже. По мне так их вообще сравнивать нельзя. гг, 35 инструкций хватит всем %)

Другое дело что некоторые моменты могут раздражать :)
Всегда восхищался как самим спектрумом, так и озвучкой игр, особенно последних. Потом кейгенами :)
Выше всех похвал!!! Эх, детство. куда ты убежало…
«Тяжелое детство, килобайтные игрушки»
Счастливое детство, килобайтные игрушки для которых выпускались сборники команд POKE :)
Исходник радует.

Интересно было бы познакомиться с Дэвидом, спросить, как он до такой жизни докатился :) Ну то есть, как он такое придумал. Еще интереснее пообщаться с авторами музыки для хроноса и прочих нестандартных вещей.
Эх… Романтика 90-х! Тогда мы знали назначения каждого байта в программе, и каждого соединения на плате.

А сейчас, практически все делается только так: Берется обычный или специализированный компьютер, ставиться операционка на сотню-другую мегабайт. А потом пишем как-то так:
p = new Player("music.mp3");
p.play();

А современные программисты даже паяльник в руках не держали ))
А современные потребители пищи не держали в руках копьё и дубину, так что теперь, горевать по этому поводу? Я сам недавно начал заниматься электроникой, но не думаю, что это нужно всем программистам. Думаю, при современной сложности ПО лучше уделять больше внимания принципам построения его архитектуры (:
Сложность и раздутость — имхо разные вещи. Тот же системный загрузчик может быть много сложнее какой либо офисной проги, которая тем не менее может быть в десятки раз больше.
Действительно что-то особенное есть в той эпохе которую мы к счастью успели захватить. Безусловно, современные технологии на порядки превосходят всё что было раньше. Но тот эффект «чистого листа» когда между человеком и компьютером не было огромнейшей прослойки сложнейшего ПО и архитектурных решений уже не вернуть.
Если углубиться в философию, то полного эффекта «чистого листа» не было и тогда. Да, мы знали каждый байт и каждое соединение. Но знали ли мы назначение каждого логического вентиля или тригера в тех примитивных микросхемах. Вряд ли. А как работают отдельные транзисторы в вентилях? И т.д… Сейчас просто появилось еще больше слоев. Ну и как правило, слои настолько сложные, что один человек в состоянии хорошо понимать только один из этих слоев.
а поясните пожалуйста вкратце идею 1-битного аудиодвижка? как оно устроено? исходник скачал, сейчас гляну, но если он на асме да под незнакомую архитектуру, то не уверен, что быстро его раскурю
Если кратко и в теории, то используется изменение периода и скважности импульсов. На практике же я уже не вспомню как и что там работало. Если всё же интересно, рекомендую заглянуть в оригинал — код Z80 читается гораздо приятнее. Ещё может помочь работа Barmaley_m по дизассемблированию и комментированию движка zx.pk.ru/showthread.php?t=11881 с использованием которой был написан трекер биперной музыки Beepola.

Ещё вспомнил, что в старых сборниках ZX-Ревю была публикация на эту тему. Ищите 9-10 номера журнала за 1993 год (например здесь) и читайте статью В.А. Збитнева «Компьютер и звук».
ого, спасибо. спектрумский код видел ровно один раз, но думаю рано или поздно разберусь
Помню, что была игрушка какая-то с черепахой, музыку из которой я даже записал себе на кассету и слушал потом. Кассета утеряна, название игры забыто. Наверняка, если услышу вновь, то впечатление будет уже не таким как тогда, но всё равно любопытно. Может помнит кто бродилку с черепахой? )))
На мой взгляд, Savage — одна из игр с лучшей музыкой через бипер, да и вообще, многие игрушки от Probe были с неплохой музыкой.
P.S. А музыка у Savage на Commodore 64 была совсем другая, ее писал Jeroen Tel.
Нутром чую, David Whittaker автор — такую качественную музу пожалуй только он на Спеке писал.
Sign up to leave a comment.

Articles