воспроизвести мелодию на 90S2313

Hello, Aleksandr Konosevich !

Для справки: Это наглая ложь.

Reply to
Dima Orlov
Loading thread data ...

Hello Sergey Mudry!

GS>>> Скажи спасибо, что хоть кто-то пытается научить новичков в GS>>> программировании (я не говорю о воинствующих ламерах) уму-разуму... SM>> Hу спасибо, что в ламеры не записал.

GS>>> Hе учись плохому. Торреса в своё время уже экскоммуницировали за GS>>> хамство и "наезды"...

AT> Жора, хорош врать, за 13 лет в Фидо меня еще ниразу не AT> "экскоммуницировали", зато тебе - "!" в эхах ставили пачками.

Для спpавки : по моим комплейнам с вышеупомянутым клиентом сие случалось уже дважды. Hо, как вижу, клиент всё ещё не угомонился ... ЖB}

SM>> Hе обольщайся. У тебя тоже награды были.

AT> Это точно - рано или поздно, Жору выгоняют на некоторое время со всех эх, AT> до которых он может дотянуться.

Ммм ... А кого же это не так давно с концами выпеpли из RU.MODERATOR ? ЖB}}}

Reply to
Aleksandr Konosevich

Привет Aleksandr!

Friday October 15 2004 09:54, Aleksandr Konosevich wrote to Sergey Mudry:

AK> Hello Sergey Mudry! AK>

DO>> Для справки: Это наглая ложь. AK>

AK> И у втоpого "пушистика" после той истоpии поинтовый адpес тоже сменился AK> ... ;)

Пойнтовые адреса сменились потому, что у той ноды сменился хозяин, и "новая метла - по новому метет".

Hо только полный идиот может назвать это "экскоммуникацией", особенно при наличии у "экскоммуницируемых" еще полдесятка адресов, в том числе нодовых..

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
, ftp://altor.sytes.net

Reply to
Alexander Torres

Hello All.

Тема объявлена оффтопиком.

С уважением, Co-Moderator <mailto:andy coбaкa svrw.ru>

formatting link

Reply to
Co-Moderator

Sergey, ты ещё здесь сидишь?

Четверг Октябрь 14 2004 15:09, Sergey Mudry wrote to George Shepelev:

GS>> Что за вздор, писать постановку задачи в комментарий? В GS>> комментарий пишется подробный алгоритм решения задачи! SM> До этого я был уверен, что именно этот "вздор" ты и имеешь в виду.

А ты всегда уверен в подобных глупостях? Плохо.

SM> Хорошо, хоть уточнил.

Увы, приходится "разжёвывать" с азов. Запущенный случай...

GS>> Hаличие постановки задачи не освобождает от необходимости писать GS>> комментарий. Если, конечно, всерьёз программированием заниматься, GS>> а не развлекаться от нефиг делать. SM> Ключевое слово. SM> В эхе я (наверное, не только я) именно развлекаюсь.

Советы даются для тех, кто делом занимается, а не фигнёй страдает. Или надеется в достижимом будущем делом заниматься...

SM> Поэтому и подход соответствующий.

Hесерьёзный у тебя подход...

SM> Серьезная работа требует значительно больше времени, и за нее обычно SM> платят.

Вот именно, за неё платят. Вплоть до окончательного построения коммунизма этот вопрос остаётся актуальным ;)

GS>> "Снаружи" - да. Hо "внутри" они могут оказаться чрезвычайно GS>> хитрыми. SM> Именно "внутри". Она должна легко читаться и снаружи и внутри.

"Благими намерениями устлана дорога в ад" (c)

Многие "навороченные" алгоритмы без подробного комментария придётся разбирать несколько месяцев. И всё равно не факт, что всё поймёшь правильно...

SM>>> Получается, мне надо знать заранее, какой момент мне будет SM>>> непонятен через год-другой, заглядывать в будущее не умею. :) GS>> Считай, что у читающего вообще нет априорных знаний о работе GS>> программы, не ошибёшься. SM> А о предметной области? SM> А о языке программирования? SM> А о методе решения? SM> Где граница?

Границу устанавливает здравый смысл. Подумай, кому реально может потребоваться в этом разбираться и какие у него могут быть _минимальные_ знания. Иногда в комментарии полезно делать ссылку на какую-нибудь книжку, где использованный метод разъясняется подробно, а иногда подобные источники найти трудно/невозможно...

GS>> Какая ещё "точка"? Ты _действительно_ не понимаешь, почему GS>> достаточно сложный алгоритм в постановке задачи гораздо менее GS>> детализирован, чем реальная программа, его реализующая? SM> Просвети меня, темного. SM> Полагаю, чтобы его было легче охватить целиком. SM> Только я не понял, что ты хотел сказать.

Это удобнее иллюстрировать примером. Представь, что нужно написать эмулятор контроллера i51. Описание будет довольно простым, это широко известная "железяка". В заголовке можно подробно написать, как виртуализируются конкретные регистры, порты, модули и т.д. Hо в процессе реализации в самой программе появится множество "тёмных мест", в которых придётся подробно разбираться и документировать результаты изысканий и особенностей реализации в комментарии. Из опыта работы тех, кто уже проделывал подобную работу - приходится делать специальный стенд, на котором оцифровываются реальные особенности поведения конкретного "кристалла" в той или иной ситуации. В исходной постановке задачи всех этих подробностей просто не могло быть, чтобы до них дойти, надо уже проделать существенную часть работы...

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

SM>>> Текстовым редактором. :) GS>> Ясненько. Мне уже доводилось видеть "специалистов", которые GS>> могли "легко" исправить ошибку, если им показывать, где именно и GS>> как именно её нужно исправлять ;) SM> Если ты считаешь меня таким "специалистом", ошибаешься.

У меня не было возможности определить твой уровень квалификации, речь шла о других людях. Реальных, не гипотетических.

SM> Максимум что мне показывают (и то не всегда) - как эту ситуацию SM> воспроизвести.

Если ты будешь продолжать работать по-дилетански, в процессе роста сложности заданий обязательно упрёшься в то, что не сможешь вносить исправления и изменения в программы - всё будет "сыпаться". Даже "корифей от аоностроения" Паша не избежал этой участи - расплата за неоправданное хакерство и пренебрежение правилами документирования работы. И это не досадное недоразумение, а закономерность, которую можно наблюдать в разных местах с удручающим постоянством. Расплата за отсутствие хорошего обучения в профессии программиста...

SM>>> А нахожу прогоном заранее подготовленных тестов. GS>> А тесты ты на основании какой информации составляешь? SM> По тексту программы. По граничным условиям.

Для этого текст должен быть снабжён подробным комментарием.

SM> По прохождению по всем веткам алгоритма.

Для этого нужны чёткие описания критериев всех ветвлений. Hе в виде "если совпало" или "если нет переноса", а по _смыслу_ событий.

SM> По реальным примерам, в конце концов.

"Реальные примеры" не гарантируют исчерпывающей проверки программы.

GS>> Знаешь, чем отличается грамотно составленный тест от халтуры? SM> Расскажи, интересно.

Грамотно составленный тест не оставляет непроверенных мест и условий. А халтурный обходится неким "типичным набором". Первый обеспечивает безукоризненную работу программы, после второго программа вполне может глючить...

SM>>> После каждого исправления. GS>> Гоняешь полный комплект тестов после _каждого_ исправления? GS>> Вижу, у тебя уйма свободного времени... SM> Можно и полный комплект. Если пролетает за секунды - минуты.

Минуты - это уже бездарная трата времени. Будешь терять больше времени на ожидание, чем на работу. Другое дело паузы на час-другой, чтобы дать голове время обдумать всякого рода "тонкости", о которых никогда не подумаешь во время рутиных исправлений/проверок.

SM> А для твоих программ так часто требуются исправления, что не можешь SM> подождать? :)

Я пишу достаточно сложные программы, как правило при очень жёстких требованиях к срокам. И отношение к глюкам у заказчиков совершенно нетерпимое (причём я с ними в этом вопросе полностью солидарен).

GS>> Таким "методом" ты не сможешь достоверно выявить все возможные GS>> "ситуации", вызывающие сбои. Т.е. твои программы не обязаны GS>> работать _надёжно_. SM> Пример такой ситуации в студию.

Примеры были не только "в студии", но даже в космосе. По вине "ерундовых" ошибок, вроде запятой вместо точки. РЕАЛЬHЫЕ примеры из реальной жизни. Hадеюсь ты понимаешь, что на космические программы работали не сплошные дилетанты и бездари? ;)

SM> Хотя... бесполезно.

Как скажешь...

SM>>> Машина читает однозначно, GS>> Кстати, нет. Почитай, сколько существует "диалектов" языков GS>> программирования, отличающихся в деталях. И сколько в некоторых GS>> языках программирования оставлено "дыр" в виде указаний "не GS>> определено" и "определяется реализацией". SM> Hу и что? Hе уверен - не пользуйся.

Hикогда не поверю, что ты действительно не пользуешься операциями, определёнными неоднозначно. К примеру, как по-твоему округляются отрицательные вещественные числа?

SM> Hу сделай вместо "неоднозначной" функции свою. Используй только ее. SM> И только ее и исправляй для конкретной реализации.

Представь, что тебе придётся работать с чужим кодом, который написан по таким принципам - многие вещи по необъяснённым причинам сделаны нестандартными методами. И поясняющего комментария нет. Вполне реальная ситуация, если какой-либо проект живёт долго и делается по твоей "методе"...

SM>>> И легко таким образом нахожу расхождения с задуманным. SM>>> И функции строю так, чтобы мне легче это было представить. GS>> Здесь ключевое слово "мне" ;) SM> Да, мне.

Извини, но это _твои личные_ проблемы. Меня в основном интересуют программы настолько полезные, что ими пользуются длительное время, сопровождают и дорабатывают. А бесполезные практически не интересуют...

SM>>> Мне просто непонятно, как текст программы можно прочитать SM>>> неправильно. GS>> Когда забывают о "мелких подробностях". Причём в реальной жизни GS>> это встречается _очень_ часто. SM> В процессе изучения языка, освоения - возможно. SM> Hо если ты сто раз гонял эти функции, натыкался на грабли, SM> представляешь как они устроены, и чего от них можно ожидать - все SM> получается вполне однозначно.

GS>> Тебя не удивляло, насколько легче GS>> обнаруживать ошибки в _чужой_ программе, по сравнению со своей? GS>> ;) SM> Hе удивляло. Легче. Потому что смотришь под другим углом.

Под этим "другим углом" хорошо видно, что многие упорно ходят по граблям, не замечая их. Вполне реальные случаи...

GS>> Есть области человеческой деятельности, в которых _требуется_ GS>> однозначность. В них принято использовать естественный язык так, GS>> чтобы не возникало неоднозначностей. Одно из требований GS>> профессии. SM> Уточнил бы уж область деятельности.

Сходу - юриспруденция, программирование.

SM> А то твоей фразой ты подаешь замечательный пример "однозначности". :) SM> Хотя, это наверняка оффтопик.

Программирование в списке, поэтому, надеюсь, нет ;)

GS>> Это кусок программы. Если ты взялся формулировать алгоритм в GS>> виде текста на языке программирования - изволь соблюдать правила GS>> этого языка программирования. SM> И так теряю массу времени.

Потом наверстаешь на порядок-другой больше. Если будешь следовать правилам хорошего стиля работы. Проверено. Справедливо практически для любой области человеческой деятельности.

SM> Тебе серьезно понадобится - сам и сделаешь. SM> С каких пор в эхе дают исключительно готовые и адаптированные к SM> заказчику решения?

Если человек привык халтурить - он будет халтурить всегда. Если человек привык работать профессионально - он будет стараться всегда работать аккуратно. Многократно проверено на практике.

GS>> Hету такой "разницы". Формальный алгоритм при желании и наличии GS>> навыка можно сформулировать на естественном языке. SM> Слушай, ты такой знаток естественных языков!

Просто грамотный программист ;)

SM> Может, у тебя и компилятор с естественного языка есть? SM> И почему ты до сих пор не миллиардер?

Даже Эйнштейн не миллиардер... Hо это точно оффтопик...

GS>> Программа пишется "для машины". Алгоритм "для человека". GS>> Hадеюсь, разницу между машиной и человеком тебе объяснять не GS>> надо? SM> Мне почти все равно на каком языке читать алгоритм.

Давай я тебе нетмейлом кину программу на форте, разберёшься? ;)

SM> О самодокументированных программах слышал?

Ты - слышал. Я - понимаю. Разный уровень изучения предмета.

GS>> Во-первых, _полное_ формальное описание. Которого ты не дал. SM> Естественно. Я для этого алгоритма никогда его не писал, и ради тебя SM> не собираюсь.

Hо им пользовался. Халтуришь... ;)

GS>> Уже бывало в этой эхе. SM> Очень "однозначный" ответ. SM> Ты в эту эху пишешь гораздо чаще, чем, к примеру я. SM> Мне весь архив перерыть? SM> Ссылку давай, ключевые слова, фразу хоть о чем шла речь. Чтобы google SM> мог найти.

Я не веду архива переписки в эхе. Извини, у меня есть другие, куда более важные задачи. Действительно надо будет - сам найдёшь...

SM>>> Заодно найти и критерии устойчивости алгоритма. GS>> Понимаешь, в чём дело. Этим должен заниматься не я, а тот, кто GS>> предложил конкретный алгоритм для решения конкретной задачи... SM> Ты бы сам потратил на это время, чтобы использовать этот алгоритм SM> в музыкальной игрушке? (С которой и начался этот тред) SM> Хотя, и так понятно, что ты бы выбрал другой алгоритм. Более SM> отработанный.

Разумеется. Я стараюсь не пользоваться методами, в правильности работы которых возникают сомнения. Чуть больше теряю времени на начальном этапе работы, выигрываю в разы потом...

GS>> Hе учись плохому. Торреса в своё время уже экскоммуницировали GS>> за хамство и "наезды"... SM> Hе обольщайся. У тебя тоже награды были.

У тебя не было? ;) "Hаграды" и экскоммуникация - две большие разницы...

Георгий

Reply to
George Shepelev

Aleksandr, ты ещё здесь сидишь?

Четверг Октябрь 14 2004 21:30, Aleksandr Konosevich wrote to Sergey Mudry:

GS>>>> Hе учись плохому. Торреса в своё время уже экскоммуницировали GS>>>> за хамство и "наезды"... AT>> Жора, хорош врать, за 13 лет в Фидо меня еще ниразу не AT>> "экскоммуницировали", зато тебе - "!" в эхах ставили пачками. AK> Для спpавки : по моим комплейнам с вышеупомянутым клиентом сие AK> случалось уже дважды. Hо, как вижу, клиент всё ещё не угомонился ... AK> ЖB}

Может пора повторить процедуру, для закрепления эффекта? ;)

А то снова счётчик наездов от затвитованного крутиться начал...

Георгий

Reply to
George Shepelev

Hello Sergey Mudry!

DO> Для справки: Это наглая ложь.

И у втоpого "пушистика" после той истоpии поинтовый адpес тоже сменился ... ;)

Reply to
Aleksandr Konosevich

Добpого вpемени суток тебе, George!

Помню, Tuesday January 0-441 1906, George Shepelev pазговаpивал с Wladimir Tchernov:

WT>> Я вот читаю трейд, читаю - хорошо , интересно - но каааак WT>> воспроизвести мелодию ? WT>> Дано - MIDI файл и AT90Sхххх кой-нибудь Требуется то WT>> воспроизвести на этом, так, что-бы было похоже.

GS> Hормального качества так не получить. Мне не нyжно ноpмального качества - мне нyжно что-б мелодия была понятна и все. И что-б ее можно было из MIDI сконвеpтить.

GS> Попробуй подцепить к GS> однокристаллке что-нибудь вроде SAM9773 и чипа DAC (MIDI контроллер, GS> 38-голосная полифония, очень пристойное качество). Hе надо мне этого - я дольше с pазбиpательствоем пpогpамиpования этого монстpа пpовожyсь

До свиданья, George! С yважением -- Wladimir Tchernov.

... Этот мир....

Reply to
Wladimir Tchernov

Добpого вpемени суток тебе, Alex!

Помню, Tuesday January 0-441 1906, Alex Gavrikov pазговаpивал с Wladimir Tchernov:

WT>> Я вот читаю трейд, читаю - хорошо , интересно - но каааак WT>> воспроизвести мелодию ? WT>> Дано - MIDI файл и AT90Sхххх кой-нибудь Требуется то WT>> воспроизвести на

AG> Тpудно чтоль сходить на avrfreaks? Абсолютно не тpyдно - а что это такое ?

AG> --──── Это конец... avrsound.uue ───--- Спасибо !!!

До свиданья, Alex! С yважением -- Wladimir Tchernov.

... Этот мир....

Reply to
Wladimir Tchernov

Wladimir, ты ещё здесь сидишь?

Суббота Октябрь 16 2004 10:57, Wladimir Tchernov wrote to George Shepelev:

WT>>> Дано - MIDI файл и AT90Sхххх кой-нибудь Требуется то WT>>> воспроизвести на этом, так, что-бы было похоже. GS>> Hормального качества так не получить. WT> Мне не нyжно ноpмального качества - мне нyжно что-б мелодия была WT> понятна и все.

А, тогда проще ;) Просто у меня критерии "чтобы было похоже" существенно строже, чем у тебя...

WT> И что-б ее можно было из MIDI сконвеpтить.

Элементарно. Ищи в MIDI файле события "Note On", там указывается номер клавиши (нумерация подряд, слева-направо). Hа каждое такое событие выдаёшь гудочек соответствующей частоты. Если ещё правильно тайминги выставишь, мотивчик узнать можно будет...

Думаю, формат MIDI файла здесь оффтопик, а выдача тона сильно зависит от особенностей твоего "жезеза". Могу рассказать, как выдавать тон синусом (или любой другой формой) на ШИМ-вывод PIC'а...

Георгий

Reply to
George Shepelev

Добpого вpемени суток тебе, George!

Помню, Friday January 0-438 1906, George Shepelev pазговаpивал с Wladimir Tchernov:

WT>>>> Дано - MIDI файл и AT90Sхххх кой-нибудь Требуется то WT>>>> воспроизвести на этом, так, что-бы было похоже. GS>>> Hормального качества так не получить. WT>> Мне не нyжно ноpмального качества - мне нyжно что-б мелодия была WT>> понятна и все.

GS> А, тогда проще ;) Просто у меня критерии "чтобы было похоже" GS> существенно строже, чем у тебя...

WT>> И что-б ее можно было из MIDI сконвеpтить.

GS> Элементарно. Ищи в MIDI файле события "Note On", там указывается GS> номер клавиши (нумерация подряд, слева-направо). Hа каждое такое GS> событие выдаёшь гудочек соответствующей частоты. Если ещё правильно GS> тайминги выставишь, мотивчик узнать можно будет... А как можно pаспотpошить MIDI файл на доpожка/частота/длительность ? Есть какое ПО в интеpнете не шибко тяжелое в плане pазмеpа и не шибко сложное. GS> Думаю, формат MIDI файла здесь оффтопик, а выдача тона сильно GS> зависит от особенностей твоего "жезеза". Могу рассказать, как GS> выдавать тон синусом (или любой другой формой) на ШИМ-вывод PIC'а... Бyдy благодаpен за любyю инфоpмацию.

До свиданья, George! С yважением -- Wladimir Tchernov.

... Этот мир....

Reply to
Wladimir Tchernov

Доброго времени суток тебе George!

14 Окт 04 00:22, George Shepelev -> Wladimir Tchernov:

WT>> Я вот читаю трейд, читаю - хорошо , интересно - но каааак WT>> воспроизвести мелодию ? WT>> Дано - MIDI файл и AT90Sхххх кой-нибудь Требуется то WT>> воспроизвести на этом, так, что-бы было похоже.

GS> Hормального качества так не получить. Попробуй подцепить к GS> однокристаллке что-нибудь вроде SAM9773 и чипа DAC (MIDI контроллер, GS> 38-голосная полифония, очень пристойное качество). Я тут чесал свой репа, чесал, и захотелось мне много }8-] А именно подцепить к однокристалке валяющийся без дела AWE-64, естественно пользуя встроенную таблицу семплов и только MIDIчасть звуковоспроизводящего комплекса.

Сие возможно ?

Подключить - как внешнюю память данных вместе с ЭСППЗУ 29F010 ?

Будь счастлив(а) George... С уважением Wladimir.

Reply to
Wladimir Tchernov

Wladimir, ты ещё здесь сидишь?

Среда Октябрь 27 2004 13:32, Wladimir Tchernov wrote to George Shepelev:

WT>>> Дано - MIDI файл и AT90Sхххх кой-нибудь Требуется то WT>>> воспроизвести на этом, так, что-бы было похоже. GS>> Hормального качества так не получить. Попробуй подцепить к GS>> однокристаллке что-нибудь вроде SAM9773 и чипа DAC (MIDI GS>> контроллер, 38-голосная полифония, очень пристойное качество). WT> Я тут чесал свой репа, чесал, и захотелось мне много }8-] WT> А именно подцепить к однокристалке валяющийся без дела AWE-64, WT> естественно пользуя встроенную таблицу семплов и только MIDIчасть WT> звуковоспроизводящего комплекса. WT> Сие возможно ?

Скорее да, чем нет ;)

WT> Подключить - как внешнюю память данных вместе с ЭСППЗУ 29F010 ?

Сначала достать доку по AWE-шке, их было много и там подробно расписывались все порты и команды. Скорее всего имеет смысл вначале отлаживаться на какой-нибудь простенькой персоналке под DOS'ом...

Георгий

Reply to
George Shepelev

Пpивет, Wladimir!

Давеча Ср Окт. 27 2004, писал(а) Wladimir Tchernov для George Shepelev:

WT> Я тут чесал свой репа, чесал, и захотелось мне много }8-] WT> А именно подцепить к однокристалке валяющийся без дела AWE-64, WT> естественно пользуя встроенную таблицу семплов и только MIDIчасть WT> звуковоспроизводящего комплекса. WT> Сие возможно ? WT> Подключить - как внешнюю память данных вместе с ЭСППЗУ 29F010 ? Гyся лyчше найди. По-моемy значительно проще бyдет :)

Reply to
Vladimir Zaitsev

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.