WHAM Player by NS

Программное обеспечение
User avatar
MARAT_BEST
Posts: 341
Joined: 13 Feb 2012, 15:32
Location: Россия

Re: WHAM Player by NS

Post by MARAT_BEST »

NeoSpectruman wrote:а что это у вас с цветами о_О
они же от рождения на Львове инверсные
а подключить по "настоящему" пока не смог :(
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: WHAM Player by NS

Post by Zelya »

Звук ужасен... Попробую WHAM Player от уважаемого NeoSpectruman
NeoSpectruman
Posts: 145
Joined: 21 Aug 2012, 22:30

Re: WHAM Player by NS

Post by NeoSpectruman »

Из видео ясно что эффективная частота львова может падать аж до 1,375242 - 1,633749 МГц (((((
NeoSpectruman
Posts: 145
Joined: 21 Aug 2012, 22:30

Re: WHAM Player by NS

Post by NeoSpectruman »

пересчитал таблицы с учетом проца с частотой 1640000 Гц (надеюсь я не забыл их засунуть в исходник(да нет вроде не забыл))
на глаз подкорректировал скорость темпа
более не требуеться правка со стороны биполы

исправил попавшейся очепятко в 8080 версии

добавил примеры звучания

чисто для эксперимента впилил расстройку detune для внезапного получения биений

см 1-й пост
NeoSpectruman
Posts: 145
Joined: 21 Aug 2012, 22:30

Re: WHAM Player by NS

Post by NeoSpectruman »

Для тех кому интересно что пищит внутри(ато в сорсе это не очевидно\а дебагать может лень)

Code: Select all

ADD HL,BC		;10 I	11 Z
LD A,H		;5	4
RLCA			;4	4
AND 01h		;7	7
OUT (C3h),a	;10	11

EX DE,HL		;4	4

ADD HL,SP		;10	11
LD A,H		;5	4
RLCA			;4	4
AND 01h		;7	7
OUT (C3h),a	;10	11

EX DE,HL		;4	4

Code: Select all


DAD B
MOV	A,H
RLC
ANI 01h
OUT C3h

XCHG

DAD SP
MOV	A,H
RLC
ANI 01h
OUT C3h

XCHG
предлагайте идеи по оптимизации
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: WHAM Player by NS

Post by Zelya »

NeoSpectruman
Пока нет времени копать. Чуток позже покурю Ваш движок, попробую прикрутить к Рику, может, что-то посоветую, если смогу.
NeoSpectruman
Posts: 145
Joined: 21 Aug 2012, 22:30

Re: WHAM Player by NS

Post by NeoSpectruman »

на подходе WHAM Player v02

имеем новую табличку с улучшением дел в плане вхамовской медведеухости\ухомедведести
слушаем примеры
xtab.lvt
xtab2.lvt
xtab3.lvt
xtab4.lvt
xtab5d.lvt
xtab6d.lvt

не забываем замедлять эмуль до 1.6 МГц


прилепил ударные (лучшо б я вставил что нибудь своё вместо них)


повышение частоты вхамовксого шумогенератора я не осилил
так же оно кушает килобайт 8 спектрумовской ПЗУ-шки для получения рандомных значений
позже поищу в ПЗУ-шке львова шум похожей консистенции)))


"kick" генерируется с активным участием процедуры из ПЗУ-шки
менять его высоту я уже и не пытался

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



тк генератор тона, генератор шума и генератор kick-а
гавнокод разной степени криворукости

а львов страдает весьма заметным плаванием произодительности

то требуеться калибровка времени работы трех жжужалок относительно львова
а не относительно эмуля



для чего имеються
KICK01.LVT
KICK02.LVT
WAVE01.LVT
WAVE02.LVT

И MARAT_BEST КОТОРЫЙ ЗАПУСТИТ ИХ НА РЕАЛЕ И ВЫЛОЖИТ ЗАПИСИ ИХ ЗВУЧАНИЯ :wink:


wpv2tst.zip
(12.97 KiB) Downloaded 1115 times
User avatar
MARAT_BEST
Posts: 341
Joined: 13 Feb 2012, 15:32
Location: Россия

Re: WHAM Player by NS

Post by MARAT_BEST »

NeoSpectruman wrote:на подходе WHAM Player v02

имеем новую табличку с улучшением дел в плане вхамовской медведеухости\ухомедведести
слушаем примеры
xtab.lvt
xtab2.lvt
xtab3.lvt
xtab4.lvt
xtab5d.lvt
xtab6d.lvt

.....

для чего имеються
KICK01.LVT
KICK02.LVT
WAVE01.LVT
WAVE02.LVT

И MARAT_BEST КОТОРЫЙ ЗАПУСТИТ ИХ НА РЕАЛЕ И ВЫЛОЖИТ ЗАПИСИ ИХ ЗВУЧАНИЯ :wink:
Доброго времени суток !!!
подключил Львов к колонкам которые встроены в монитор, звук обалденный !!!

запустил на реале труды NeoSpectruman и ОХ....Л :shock: это КРУТО !!!!
слушать особенно xtab.lvt xtab2.lvt xtab3.lvt xtab4.lvt xtab5d.lvt xtab6d.lvt

KICK01


KICK02


WAVE01


WAVE02


Xtab


Xtab2 вообще меня порвал :) !!!!


Xtab3


Xtab4


xtab5d


xtab6d
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: WHAM Player by NS

Post by Zelya »

Крутяк! Слов нет! NeoSpectruman просто сумрачный гений музыки. Я уже рассматривал код плеера. В Марио должен встать без проблем. Но само-собой из-за игрового процесса музыка будет "перерывчастой". Что касается Рика, то движок великоват. Вопрос, можно, пойдя на некоторые потери, не существенные для игры (например убрать ударники и уменьшить кол-во октав) его сократить в размере? Со своей стороны, я еще не все попаковал в Рике, так что может еще и влезет, но на будущее хотелось бы знать минималистические варианты.
NeoSpectruman
Posts: 145
Joined: 21 Aug 2012, 22:30

Re: WHAM Player by NS

Post by NeoSpectruman »

там от меня не сильно и много
Zelya wrote: Вопрос, можно, пойдя на некоторые потери, не существенные для игры (например убрать ударники и уменьшить кол-во октав) его сократить в размере?

таблицы занимают 512 байт

если предварительно сконвертить мелодию
то можно сократить таблицы до 106 байт (2 штуки по 53байт лежащие друг за другом по адрессам кратным 100h байт )
можно попытаться сделать одной таблицай

полный диапазон вхама в биполе 53 ноты(4 с половиной октавы(хотя можно было и больше))

можно будет лучше упаковать музыку
так как старшие 2 бита почти всегда будут ровняться 0

основной пожиратель памяти указывается в
WPDUPTEMPO = 147 (обязательное значение для нормального играния музыки)

147*16 = 2352 байт

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

для музыки во время игры второе значения не имеет
а так как время звучания не сильно продолжительное то можно немного с экономить и на качестве (нужно проверять экспериментально(сильно низкое число должно привести к понижению тона, дополнительному свисту))

например можно запускать установщик с разными параметрами перед игрой и перед нормальным проигрыванием мелодии скажем в меню


ударные легко выпиливаються да и не думаю что они жрут много места

можно отказаться от плеера вообще(для музыки не использующей преимущества патернов, не дергающюю темп)

хранить мелодию в виде потока нот
и просто читать её конвертить по 100байтной табличке и запускать пищалку



можно было бы улучшить пищалку выпилив AND 01h у делая аут прямо в C2h

Code: Select all

ADD HL,BC      ;10 I   11 Z
LD A,H      ;5   4
RLCA         ;4   4
                   ;AND 01h      ;7   7
OUT (C2h),a  ;OUT (C3h),a   ;10   11

EX DE,HL      ;4   4

ADD HL,SP      ;10   11
LD A,H      ;5   4
RLCA         ;4   4
                   ;AND 01h      ;7   7
OUT (C2h),a  ;OUT (C3h),a   ;10   11

EX DE,HL      ;4   4
но переживет ли львов усердное щелканье видеопамятью
и не замедлит ли это еще больше работу
chis
Posts: 43
Joined: 28 Nov 2011, 20:54

Re: WHAM Player by NS

Post by chis »

Zelya wrote:но переживет ли львов усердное щелканье видеопамятью
и не замедлит ли это еще больше работу
Кстати совершенно случайно только что обнаружил: http://en.wikipedia.org/wiki/Intel_8255 ... SR.29_mode
Вкратце есть возможность оперировать отдельными битами порта C. Век живи - век учись :)
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: WHAM Player by NS

Post by Zelya »

Марат, не могли б Вы опробовать Марио на движке уважаемого NeoSpectruman? (см. аттач)

ПС В теле первой версии было пару багов в алгоритме распаковки задержек (просто по невнимательности регистры попутаны). Так же движок частично не совместим с bbsong. Как минимум в признаке конца паттерна (0 вместо FE, у себя пофиксал) и темов паттерна (пока, не фиксал).
Если звук выйдет приемлимым, то в простых кузауалках можно использовтаь. Для больших игр почти 2К памяти на расчет задержек может быть очень критично.
Attachments
drmario.lvt
(7.17 KiB) Downloaded 1108 times
User avatar
MARAT_BEST
Posts: 341
Joined: 13 Feb 2012, 15:32
Location: Россия

Re: WHAM Player by NS

Post by MARAT_BEST »

Zelya wrote:Марат, не могли б Вы опробовать Марио на движке уважаемого NeoSpectruman? (см. аттач)
извиняюсь за долгий ответ, пока прочитал сообщение, пока протестировал



мое мнение - звук для такой игры высший класс !!!
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: WHAM Player by NS

Post by Zelya »

Огромное спасибо NeoSpectruman, и MARAT_BEST. Звук дейстивтельно лучше. Теперь можно будет фиксать и доделывать игру.
NeoSpectruman
Posts: 145
Joined: 21 Aug 2012, 22:30

Re: WHAM Player by NS

Post by NeoSpectruman »

для чего имеються
KICK01.LVT
KICK02.LVT
WAVE01.LVT
WAVE02.LVT
вощемта посмотрел я на результаты...
и забил на эту идею н**

но наткнувшись на релиз всякого марива внезапно седня посидел немного
(проще было бы вообще переписать все с нуля чем пытаться заставить работать эту горстку говнокода разбавленного еще и моим говнокодом)
и
в общем вот
V2DEMO.lvt
(6.61 KiB) Downloaded 1086 times
частота kick-a и диапазон шумов по желанию подстраивается

пример я выбрал не сильно удачный
(я что то больше первых трех секунд никогда его не слушал как оказалось)

позже выложу что нибудь похожее на исходник


Как минимум в признаке конца паттерна (0 вместо FE, у себя пофиксал)
конец патерна обозначается 0
FEh это F# в биполе
обращаю внимание что я юзаю биполу 1.08.00 и у меня все работает
(просто по невнимательности регистры попутаны)
ну если 8080 версия то может быть и до
Так же движок частично не совместим с bbsong.
"движок" в принципе не совместим с bbsong))))
Для больших игр почти 2К памяти на расчет задержек может быть очень критично.
для внутреигрового процесса лучшо бы вообще использовать другой движок
и просто конвертировать трек написанный в другом редакторе
а для меню вполне можно юзать и это
2К хлама нужно только на момент вооспроизведения
и генерируется оно не долго

и еще способ (правда мне он не очень нравится)
у нас 16К экрана
пожертвовать по 16 пикселей сверху и снизу
вот и недостающие 2К
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest