PCM player using SCC (Development Foros MSX)MSX Resource Center            
                       
English Nederlands Espa�ol Portugu�s Russian                  
 Noticias
   Página principal
  Almacén de noticias
  Temas de noticias

 Recursos
   Foros MSX
  Artículos
  Analisis
  Informe de ferias/RUs
  Álbum de fotos
  Ferias y encuentros
  Encuestas
  Enlaces
  Buscar

 Software
   Descargas
  Tienda Online

 MRC
   Quiénes somos
  Únete a nuestro equipo
  Donar
  Políticas
  Contacta con nosotros
  Enlázanos
  Estadísticas

 Buscar
 
  

  

 Login
 

Login

Contraseña




¿Aún no tienes una cuenta? ¡Conviértete en miembro del MSX Resource Center! ¡Únete a nosotros!.


 Estadísticas
 

Hay 39 invitados y 1 miembro en línea

Eres un usuario anónimo.
 

Foros MSX


Foros MSX

Development - PCM player using SCC

Ir a la página ( Página anterior 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 Siguiente página )
Autor

PCM player using SCC

tfh
msx addict
Mensajes: 496
Publicado: Octubre 27 2007, 08:29   
Quote:

Quote:

The functionality of the deformation register is implemented in blueMSX and openMSX but since there aren't any apps using it, the emulation may not be 100% correct but it should be pretty good in both emus.


Actually, Fony/Tyfoon did some SCC sampling in one of their picture disk demos. Maybe the filehunter can point you out the right file from his website in order to test the feature in any emu.


Hmmm, I know The Pretender was working on something, yes.. But did we actually release it? Hmmm.. I am afraid I can't help you though: I have no clue which demo it is. If someone has that demo available, please let me know and send it to me to arnaud at file-hunter dot com

Not that it's very usefull for this project I guess, but I do remember the sound quality was quite bad Michiel converted some samples from the amiga to toy around with, but he wasn't very happy with the result. I think he converted those samples to 4 bit samples somehow and just pumped these to the SCC.
He also had another project where he used the tape-recorder connector as a 1-bit sampler. Those results sucked even more
ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 27 2007, 08:51   
I see your way of computing the period and actually I think it is good.
my proposal was worst than yours, as we measure periods, the
longer the better (why not looking for period 1800*4 and than
dividing the result by 4?)

I see that you measure the period in such a way that it is the shortest
that guarantees that the channel is still playing sample 31 when the
VINT occurs.

I still do not understand if and/how the fact that the period is slightly
longer that required affects the results
and if it is correct in ReplayerUpdate to start updating a bunch of samples
and than after that set the period, instead of doing in the other way, i.e.
set only one sample (minimum delay) set the period and than continue....

At first glance, due o the fact that you have to allow some period mismatch,
in your way this mismatch is one sample each 32 (i.e. 1/Fs), in my way it is only
few cycles (one ldi) each 32 samples.
But I need to investigate on this.

I didn't get the SCC jet, in case I'll try to record the output of my TV
using the PC soundcard.


PS
Look at the results of my test wave.this latter does not suffer of rounding errors
so you should be able to see exactly all the sample losses or phase errors

I forgot a x256 factor in my code
   
    if (cnt <= 0) {
    
    // TEST SIGNAL IF NO INPUT
        
        int i=0,j;
        while (i<MAXLEN)
        {
        for (j=-128;j<=127;j++)
           src[i++]=j*256;
        for (j=127;j>=-128;j--)
           src[i++]=j*256;
        }
    }




ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 27 2007, 09:03   
About the multiple period measure
let's think on this:
        ld      hl,1800*8   
        ld      de,9800h+32*3
        ld      c,31

1:
        in      a,(99h)
        and     80h
        jp      z,1b

        ld      (9888h),hl
        ld      (9886h),hl
        
.loop:
        rept 8
1:
        in      a,(99h)
        and     80h
        jp      z,1b
        endm

        ld      a,(de)
        ld      (9888h),hl
        ld      (9886h),hl
        cp      c
        jp      z,.end
        inc     hl
        jp      .loop
        inc     hl                           ;<-------- ? no more needed
        call divide_by_4
        ld      (Period),hl



dvik
msx master
Mensajes: 1376
Publicado: Octubre 27 2007, 09:05   
I think the longest possible period is 0xfff which is 4095. So it would be doable to do *2 within the limits.
ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 27 2007, 09:10   
Quote:

I think the longest possible period is 0xfff which is 4095. So it would be doable to do *2 within the limits.


i forgot this detail
ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 28 2007, 01:03   
how is going with the new test signal?
dvik
msx master
Mensajes: 1376
Publicado: Octubre 28 2007, 08:12   
Haven't been able to do much since I can't sample the real hardware. What I want to know is if there are any phase problems or amplitude problems on a real SCC. I'm actually quite curious to see the square wave test signal as well because with that one its easer to see any phase differences between the channels. In the new test signal there is no way of seeing what the different channels are doing but it will be good once the replayer is working ok to verify that its working correctly. First I need more information about the relationship between the channels and I think the square waves will provide that so if someone can sample that rom from a real MSX it would be great.
ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 28 2007, 13:02   
I had my scc flash
i'll do what i can in order to record the result of the tests...
stay tuned
dvik
msx master
Mensajes: 1376
Publicado: Octubre 29 2007, 04:53   
I've been working with the rotation synced player and have some strange behavior that may be releated to the noise in the poliphase version. It seems like reads from CH4 adds noise whenever the reads are done. I can't really figure out what it is but it seems like it changes the phase of something. I tried quite a few different implementation of the rotation replayer and none have been without noise. I tried to write samples as fast as possible, fairly slow, in two segments to really avoid overlap with the playback. Nothing helped.

Then I did a new replayer that is a one channel that resets the phase every 31.95 samples (to avoid getting out of sync) and then writes new samples in a way so they don't overlap with the played sample. The result was good (see the little demo in the post I'm soon about to make).

This one is using syncrhonized code with busy loops that are made to fit the period as well as possible, somewhat similar to the poliphase player but this one only uses one SCC channel.

Then just to test if reads to a rotating CH4 would interfere with the playback I added some reads in a safe area (not those samples that you should avoid) without changing timing at all. I only read CH4, not taking any action based on the result so I still kept the syncrhonized logic. But this actually added quite a lot of noise (!). So it seems like channel 1 was affected by the reads to CH4 even though it shouldn't.
What I'm afraid of is that updates to the four poliphase channels may affect each other similar to what I observed with reading CH4. This could explain why the real SCC doesn't sound so good in the poliphase replayer. If this is the case we can drop the whole idea of doing a decent SCC PCM player. I really hope I'm wrong but I'm starting to doubt that its possible to solve these problems.

Let me know what you find from your samples ARTRAG. If you do some samples of the test signals (both would be good), can you send them or post them here?


ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 29 2007, 07:48   
no result jet, i need a special converter in order to sample the audio out of the tr
moreover getting the fd working and exchanging files with xp is horrible (not jet
succeeded, the sole disk that is now working is 20 yo and badly damaged)
moreover opf does not work in msxdos2 !! thus i need to boot from disks i cannot format or write to....


dvik
msx master
Mensajes: 1376
Publicado: Octubre 29 2007, 08:02   
Its coming. Once you get it working you'll see that the MegaFlashRomSCC is a great cartridge and very easy to work with. My problem is that I don't have a PC to sample the MSX with. I used to have one but that PC is boxed and put in storage because we needed space for the baby
ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 29 2007, 12:45   
lunch time, i'm going to buy the connector
moreover huey sent me the tool "msxform"
that could solve the XP issue...
tonight we will see
ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 29 2007, 14:39   
I've got the connector, now it's matter to see if tonight all the pieces work together

ARTRAG
msx master
Mensajes: 1802
Publicado: Octubre 29 2007, 20:10   
Daniel, you have mail
dvik
msx master
Mensajes: 1376
Publicado: Octubre 29 2007, 20:29   
Thanks ARTRAG
 
Ir a la página ( Página anterior 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 Siguiente página )
 







(c) 1994 - 2009 Fundación MSX Resource Center. MSX es una marca registrada de MSX Licensing Corporation