2008-09-21 8 views

Répondre

0

Si vous avez besoin de son dans XNA, et que vous voulez la prise en charge de XBOX 360, vous devez utiliser les formats de fichier pris en charge. Vous êtes mieux en essayant de convertir les fichiers .ay dans un format supporté par XNA.

Si vous souhaitez uniquement prendre en charge Windows, puis rechercher une bibliothèque .NET qui peut les lire, il fonctionnera dans XNA sous Windows s'il fonctionne dans .NET.

6

Vous devez d'abord convertir les fichiers .ay en wav. Pour ce faire, il existe un programme here . Il vient également avec le code source afin que quelqu'un qui a un peu de temps libre puisse aider en créant un processeur & d'importateur de contenu de lui? :-)

0

Si vous voulez coder vous-même vous avez besoin:

  1. Zilog émulateur CPU Z80A

    pas facile à faire, mais il y a des libres C/C++ sources pour elle . J'utilise le mien.

  2. 3 canaux AY 8910/8912 émulateur puce PSG

    ce qui est beaucoup plus simple, la CPU. c'est juste un générateur de sons mais la documentation n'est pas très bonne pour ça donc il faut beaucoup expérimenter.

  3. 1 Bit d'émulation de haut-parleur numérique

    * Les fichiers .AY n'utilisent pas toujours puce AY pour la sortie de son. Certains jeux combinent AY et Build In speaker. Je ne suis pas sûr maintenant si AY a aussi pris pour covox ou pas ... Mais si oui alors vous devez inclure également 8/16 bits mono/stéréo covox habituellement sur une puce i8255.

  4. émulation du clavier

  5. variable de support architecture HW

    * fichiers .AY musique magasin pour plus d'architectures ... il y a des différences entre Sharp, Amstard CPC, ZX48, ZX128, clones ... Certains ont des fréquences de cristal différentes, d'autres ont un mélange de canaux différent pour les reproducteurs, et les adresses d'E/S peuvent également différer pour ne pas mentionner les problèmes de pagination de la mémoire.

  6. Sortie son

    Ceci est la plate-forme cible dépendante et que je ne l'utilise XNA ne touche pas ce sujet (comme il est déjà répondu/accepté)

Le joueur AY ressemble à ceci:

  1. première charge l'en-tête AY
  2. détecter la plate-forme cible et configurer votre émulateur pour correspondre
  3. charge le binaire AY pour cibler les zones de mémoire
  4. définir les registres et commencer l'émulation

Donc, si vous voulez lecteur code AY vous terminerez avec l'écriture de l'émulateur Z80 car les fichiers * .AY sont des programmes qui ne sont pas des enregistrements sonores. Comme de nombreux fichiers AY utilise haut-parleur, vous devrez imiter correctement le modèle de contention autre problèmes de synchronisation aura lieu qui peut être entendu en particulier sur Speaker ...

Pour améliorer la qualité que vous pouvez appliquer des filtres FIR pour simuler le PWM - comme le contrôle de l'orateur que de nombreux effets utilisent.