Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Вектор (http://zx-pk.ru/forumdisplay.php?f=55)
-   -   Вектор-06Ц: Эмуляция (http://zx-pk.ru/showthread.php?t=8634)

Stas Bergich 1st February 2010 01:04

Quote:

Originally Posted by ZEman (Post 253153)
про сайт тимохи они точно незнают.

А давайте сделаем английскую версию

helloworld 3rd February 2010 11:35

в общем проект создан на sourceforge.net. Название "OpenVector". Homepage: http://openvector.sourceforge.net/
Репозиторий SVN: https://openvector.svn.sourceforge.n...oot/openvector
Пока пуст, на днях залью исходники. Репозиторий на чтение доступен для всех. Желающие поучаствовать в разработке - напишите свои sourceforge-аккаунты, я добавлю вам права на модификацию исходников. Все технические вопросы уже будем решать на форуме разработчиков

Tim0xA 26th February 2010 01:20

Новая версия VV на сайте! Продолжается борьба за быстродействие. Оптимизирован код.

helloworld 26th February 2010 19:00

Опубликованы исходники OpenVector. Пока имеет:
- эмулятор z80
- видеоадаптер
- клавиатура (от реальной клавы еще не работает)
- звуковой адаптер (нифига не работает как надо)

За быстродействие ни библиотека .NET ни язык C# должным образом бороться не позволяет, поэтому делаем ставку на хороший объектный дизайн, читабельный код и кросплатформенность.

Сейчас по умолчанию загружается "Болдер-М".

Исходники лежат в репозитории SVN по адресу: https://openvector.svn.sourceforge.n...envector/trunk

Вопросы к разработчикам эмуляторов: как вы победили звук? Какой размер буфера устанавливали? Какой Sampling Rate? если возможно, выложите алгоритм или кусочек исходника для работы со звуком. У меня есть подозрение что быстродействия библиотеки .net не хватит и придется реализовывать звук через unmanaged код

b2m 26th February 2010 19:37

Quote:

Originally Posted by helloworld (Post 260511)
Вопросы к разработчикам эмуляторов: как вы победили звук?

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

Quote:

Originally Posted by helloworld (Post 260511)
Какой размер буфера устанавливали?

У меня 1/10 сек.

Quote:

Originally Posted by helloworld (Post 260511)
Какой Sampling Rate?

У меня моно, 8 бит, 44100Гц
Соответственно размер буфера 4410 байт.

Quote:

Originally Posted by helloworld (Post 260511)
У меня есть подозрение что быстродействия библиотеки .net не хватит

Не верю.

helloworld 26th February 2010 19:50

спасибо!
по поводу быстродействия - при размере буфера в 1/10 получается что переключать надо 20 раз в секунду. У NAudio уже щелчки появляются и много. У DirectSound вроде тоже (поменьше). Но это победимо, я думал размер буфера должен быть значительно меньше, значит вероятно косяки с синхронизацией тактов эмуляции и реального времени.

Ramiros 27th February 2010 12:41

Quote:

Originally Posted by helloworld (Post 260511)
Вопросы к разработчикам эмуляторов: как вы победили звук? Какой размер буфера устанавливали? Какой Sampling Rate? если возможно, выложите алгоритм или кусочек исходника для работы со звуком. У меня есть подозрение что быстродействия библиотеки .net не хватит и придется реализовывать звук через unmanaged код

в VV буфер полностью обновляется за 4 прерывания и при 8 bit 44100Hz Stereo =(44100х2/50)х4=7056 byte. реализовано через DirectSound. т.к. буфер организован по кольцу и пока одна половина играет, вторая обновляется, получается задержка в два прерывания (или кадра).
Другая проблема с которой пришлось столкнуться, это синхронизация буфера с эмуляцией процессора (вернее прерываний которые возникают каждые 1/50 сек).
если прерывания эмулируются через например ММ таймер, то рассинхронизация ММ таймера и DirectSound-а приводит к трескам в звуке, поэтому я сделал эмуляцию прерываний от того же DirectSound, а ММ таймер использую только для подсчета FPS.

Tim0xA 7th March 2010 21:45

VV 6.09 на сайте!

TAL 8th March 2010 01:55

Подскажите с помощью какой проги можно собрать отдельные файлы в образ флопа? Желательно чтоб она запускалась под ХР

ZEman 8th March 2010 04:12

с помощью total comander и плагина к нему можно собирать дискеты для вектора.
хотя было бы намного лучше еслиб авторы подсуетились и написали win прогу для таких дел ;)


All times are GMT +4. The time now is 23:41.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.