Есть у меня подозрение, что эмуляторы не могут корректно передать результаты высокочастотных игрищ с бипером (ШИМ) из-за того, что вынуждены отображать его на звуковую карту с фиксированной частотой дискретизации.
Я формирую импульсы с частотой 16/17кГц, но на эмуляторах слышу частоты гораздо ниже, в некоторых случаях в пару-тройку сотен герц, причем на разных эмуляторах одна и та же прога дает разные низкочастотные артефакты. Пjхоже это связано с тем, как эмуляторы реализуют ресемплинг с 3.5МГц на частоту дискретизации звуковой карты (и реализуют ли вообще).
Про проблемы Contented Memory и Contented I/O я в курсе. Поэтому запускается на моделях, свободных от этих проблем (Пентагон, Спектрум 3+). К тому же программа выполняет критический код исключительно в старшей половине адресов (с дефолтным маппингом страниц на машинах со страницами), дополнительно предотвращая memory contention. Тем не менее, слышны низкочастотные артефакты, несмотря на постоянство частоты и скважности импульсов (проверялось дебаггером с точностью до тактов).
Есть у кого-нибудь железный пентагон, спектрум 3+ или какая-нибудь другая модель, не подверженная Contented I/O? Можете сделать звукозапись работы программы в WAV-файл?
Если кто может - в каком виде предоставить программу? Есть .tap и .trd (оба с загрузочной частью на бейсике).
Помогите с проверкой бипера на реальном железе?
Moderator: Shaos
-
- Junior
- Posts: 9
- Joined: 12 May 2025 21:56