La Place des Développeurs Recherche programmeur

Bonjour
Je projette de réaliser une série de Covox en cartouche.
Par contre l'intérêt de cette carte est limitée à cause de la quantité de mémoire nécessaire pour jouer un morceau complet.
En effet il faut 4Mo pour jouer 4 minutes de musique
J'avais bien pensé intégrer un mapper 4Mo à la cartouche mais :
Il y en a déjà pour 50€ rien qu'en mémoire
Ca rentre pas dans une cartouche standard
Il faut toujours attendre le chargement du morceau en RAM
J'ai essayé de lire le fichier octet par octet et de les balancer au port 91H mais en basic c'est pas assez rapide pour titiller correctement le convertisseur D/A.
Je demande donc l'aide d'un programmeur LM pour faire soit un lecteur complet sous DOS, soit une routine que je pourrais appeler depuis le basic.
On peut aussi envisager une intégration en ROM du lecteur.
Le programmeur qui se lancera dans l'aventure sera récompensé par mon éternelle gratitude et bien entendu une cartouche Covox
Merci par avance

Je projette de réaliser une série de Covox en cartouche.
Par contre l'intérêt de cette carte est limitée à cause de la quantité de mémoire nécessaire pour jouer un morceau complet.
En effet il faut 4Mo pour jouer 4 minutes de musique

J'avais bien pensé intégrer un mapper 4Mo à la cartouche mais :
Il y en a déjà pour 50€ rien qu'en mémoire

Ca rentre pas dans une cartouche standard


Il faut toujours attendre le chargement du morceau en RAM



J'ai essayé de lire le fichier octet par octet et de les balancer au port 91H mais en basic c'est pas assez rapide pour titiller correctement le convertisseur D/A.

Je demande donc l'aide d'un programmeur LM pour faire soit un lecteur complet sous DOS, soit une routine que je pourrais appeler depuis le basic.
On peut aussi envisager une intégration en ROM du lecteur.
Le programmeur qui se lancera dans l'aventure sera récompensé par mon éternelle gratitude et bien entendu une cartouche Covox

Merci par avance



ericb59 :
C'est un player qu'il te faut ?
Oui un lecteur mais en streaming.

Ça n'est pas possible. Il faut faire un système comme dans le Music Module. Il faut une mémoire dédiée et une puce sonore (ou un contrôleur) capable de lire les données de sa mémoire indépendamment.
Edité par
GDX
Le 03/11/2014 à 02h02

Si c'est possible, les lecteur EVA le font, avec de la video en plus.

Content de lire ce poste 
Dans la série [non c'est pas possible]:
1) Tu prends une SCC dont il manque une masse (celle que l'on coupe accidentellement lorsqu'on veut placer un interrupteur et une fiche RCA et qu'on grignote trop la partie "haut droite" de la cartouche.
2) tu met le volume de la TV à fond.
3) tu lances playsmp avec n'importe quelle configuration. ( perso, j'étais à zéro et en mode no wait).
4) tu choisies la musique .WAV que tu veux de préférence en stéréo à 44khz et tu vas entendre ta musique jouer "PENDANT" le chargement.
C'est expérimental, mais cc'est encore une autre voix dans le sillage "Non c'est pas possible"
Edité par
igal
Le 03/11/2014 à 08h03

Dans la série [non c'est pas possible]:
1) Tu prends une SCC dont il manque une masse (celle que l'on coupe accidentellement lorsqu'on veut placer un interrupteur et une fiche RCA et qu'on grignote trop la partie "haut droite" de la cartouche.
2) tu met le volume de la TV à fond.
3) tu lances playsmp avec n'importe quelle configuration. ( perso, j'étais à zéro et en mode no wait).
4) tu choisies la musique .WAV que tu veux de préférence en stéréo à 44khz et tu vas entendre ta musique jouer "PENDANT" le chargement.
C'est expérimental, mais cc'est encore une autre voix dans le sillage "Non c'est pas possible"


@GDX :
-Oui il faut juste le player sans aucune autre tâche annexe.
-Il est possible de faire un fichier EVA avec juste le son mais il est énorme.
-Ce ne sont pas les disques qui sont rarement supportés mais les interfaces, seuls la sunrise CF et la SD2.2 ont leur lecteur.
@igal :
Je sais pas ou tu vas chercher ces trucs de fou mais c'est peut être une idée à creuser
Dans l'absolue je pense que c'est vraiment réalisable, ma petite BEER IDE charge le fichier PCM au minimum 2 fois plus vite qu'il est relu.
-Oui il faut juste le player sans aucune autre tâche annexe.
-Il est possible de faire un fichier EVA avec juste le son mais il est énorme.
-Ce ne sont pas les disques qui sont rarement supportés mais les interfaces, seuls la sunrise CF et la SD2.2 ont leur lecteur.
@igal :
Je sais pas ou tu vas chercher ces trucs de fou mais c'est peut être une idée à creuser

Dans l'absolue je pense que c'est vraiment réalisable, ma petite BEER IDE charge le fichier PCM au minimum 2 fois plus vite qu'il est relu.

GDX :
Un fichier EVA n'est pas lu en streaming à ce que je sache.
Fabf :
Si c'est possible, les lecteur EVA le font, avec de la video en plus.
Un fichier EVA n'est pas lu en streaming à ce que je sache.
Et tu le case ou le fichier qui fait entre 30 et 100 Mo ?

GDX si tu modifie pendant que je poste ça va être vite incompréhensible

Je n'ai jamais essayé le lire un EVA mais Konamiman dit que le DOS2 patché Fat16 ou même Nextor ne supporte pas les fichiers de plus de 32Mo.
Quand aux vidéos EVA, je suis étonné, je pensais que ça chargait tout en RAM avant les lire. Dans ce cas, quel est l'intérêt de gaver le MSX de RAM ?
De toutes façons, si c'est vraiment en streaming, je maintiens qu'on ne peut rien faire d'autre en même temps. Le fait que ça lit un octet en même temps pour la vidéo ne change pas grand-chose mais faire autre en même temps, ça serait une prouesse. Edité par GDX Le 03/11/2014 à 11h16
Quand aux vidéos EVA, je suis étonné, je pensais que ça chargait tout en RAM avant les lire. Dans ce cas, quel est l'intérêt de gaver le MSX de RAM ?
De toutes façons, si c'est vraiment en streaming, je maintiens qu'on ne peut rien faire d'autre en même temps. Le fait que ça lit un octet en même temps pour la vidéo ne change pas grand-chose mais faire autre en même temps, ça serait une prouesse. Edité par GDX Le 03/11/2014 à 11h16

A défaut de savoir ce qui se passe dans le MSX, voici comment le Fichier.EVA 2 est construit (compilé?) avec le script de Nyyrikki
Un tutoriel complet ici => http://www.msxvillage.fr/articles/articles.php?id=78&cat=5
Par expérience, je peux affirmer que si l'on arrive à ne pas "intégrer l'image", la lecture du WAV peut être beaucoup beaucoup plus performante.
Ca c'est une certitude.
En fait Fabf veut simplement lire un SAMPLE en l'envoyant sur le COVOX en Continu.
Que ce soit du Streaming ou un subterfuge qui y ressemble, c'est un détail. L'important est que ça marche.
En l'état, le player EVA2 est capable de lire la somme de données suivante en 60 Hz.
[(IMAGES SCREEN 4 X 12 FPS) + (15750Hz X 8Bits) = Capacité globale du Streaming.
Reste a voir combien pèse une page SCREEN4 pour savoir combien de données Nyyrikki arrive à streamer avec son player
Un tutoriel complet ici => http://www.msxvillage.fr/articles/articles.php?id=78&cat=5
Code TEXT :
dim palette(1000) Set fso = CreateObject("Scripting.FileSystemObject") Set WshShell = WScript.CreateObject("WScript.Shell") Set sound = fso.OpenTextFile("AUDIO.raw", 1, False, tristatefalse) set evafile=fso.OpenTextFile("SORTIE.ev2",2,True,TristateFalse) jokubyte=0 filenumber=0 DO filename = "F"+right("00000000"+hex(filenumber),7)+".SC2" filenumber=filenumber+1 wscript.echo filename if not fso.FileExists (filename) then exit DO Set picture = fso.OpenTextFile(filename, 1, False, tristatefalse) header=picture.read(7) for i=1 to 48 for x=1 to 11 data=sound.read(1):sr=sr+1 evafile.write(data) for y=1 to 11 data=picture.read(1) evafile.write(data) next next data=sound.read(1):sr=sr+1 evafile.write(data) for y=1 to 7 data=picture.read(1) evafile.write(data) next next for i=&h1800 to &h1B7F data=picture.read(1) next for i=0 to 31 palette(i)=asc(picture.read(1)) next for i=&h1BA0 to &h1FFF data=picture.read(1) next for i=1 to 48 for x=1 to 11 data=sound.read(1):sr=sr+1 evafile.write(data) for y=1 to 11 data=picture.read(1) evafile.write(data) next next data=sound.read(1):sr=sr+1 evafile.write(data) for y=1 to 7 data=picture.read(1) evafile.write(data) next next i=0 for x=1 to 11 evafile.write(sound.read(1)):sr=sr+1 for y=1 to 11 evafile.write(chr(palette(i))) i=i+1 next next evafile.write(sound.read(1)):sr=sr+1 for y=1 to 7 evafile.write(chr(0)) next picture.close for i=97 to 105 for x=1 to 11 evafile.write(sound.read(1)):sr=sr+1 for y=1 to 11 evafile.write(chr(0)) next next evafile.write(sound.read(1)):sr=sr+1 for y=1 to 7 evafile.write(chr(0)) next next for y=1 to 40+jokubyte evafile.write(sound.read(1)):sr=sr+1 next ' 13879 bytes for i=&h3A20+jokubyte to &h3BFD evafile.write(chr(0)) next evafile.write(chr(jokubyte+&h20)+chr(&h05)) jokubyte=jokubyte xor 1 ' end of frame LOOP evafile.close sound.close wscript.echo "Sound bytes :" & sr
Par expérience, je peux affirmer que si l'on arrive à ne pas "intégrer l'image", la lecture du WAV peut être beaucoup beaucoup plus performante.
Ca c'est une certitude.
En fait Fabf veut simplement lire un SAMPLE en l'envoyant sur le COVOX en Continu.
Que ce soit du Streaming ou un subterfuge qui y ressemble, c'est un détail. L'important est que ça marche.

En l'état, le player EVA2 est capable de lire la somme de données suivante en 60 Hz.
[(IMAGES SCREEN 4 X 12 FPS) + (15750Hz X 8Bits) = Capacité globale du Streaming.
Reste a voir combien pèse une page SCREEN4 pour savoir combien de données Nyyrikki arrive à streamer avec son player


Ca serait cool d'avoir un player permettant de lire un fichier en streaming d'un lecteur CF/SD ou d'un Ram disc 
Perso je vise plutot une banque de sons courte qu'une musique de 4 minutes.
Un player LM avec une instruction sous basic
, le top pour une application et une démocratisation du genre 
10 IF....... THEN player"LOL.PCM"
Edité par
TurboSEB
Le 03/11/2014 à 15h14

Perso je vise plutot une banque de sons courte qu'une musique de 4 minutes.
Un player LM avec une instruction sous basic


10 IF....... THEN player"LOL.PCM"


MSX 1&2 + Moniteurs+divers (environ 0.70Tonnes)





Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie