Jump to content
IGNORED

Interesting


emkay

Recommended Posts

Looking at some outsourced contingent....

 

http://formatwar.net/forums/viewtopic.php?t=265&p=4412#p4412

 

 

The idea is nice. Playing 6 voices (yet) with a rather good quality on one hardware channel.

I wonder about the CPU usage. But, for sure, it IS what's been missing in POKEY music.

 

 

I wonder what will happen, putting this together with the modulation abilities of POKEY. Good low notes played together with good high notes played by Pokey... concentrating the software routines for the low notes, someone could use 2 16 bit channels for full 16 bit music... whatever. Actually one of those software chnnels makes it possible to use 16 bit filter on the Pokey. But this seems far future...

 

Here some "cross-mix" video, for a short demostration. Software played by altirra, modulations on A800win ... no professional mix yet ;)

 

 

http://www.youtube.com/watch?v=NP4fXALasgg

Link to comment
Share on other sites

The best solution for a demo video was to syncronize both, but Altirra has simply speed problems with the sound ;)

 

Anyone knows why A800 doesn't replay it?

 

What do you mean with Altirra has speed problems with the sound ? It was written on Altirra and sounds exactly as it should..

 

As for the CPU speed, it's variable.. Lower frequencies eat less CPU time, higher frequencies more CPU time..

In that test, when all 6 voices are on, spread over a reasonable range of notes it's taking about 85% of the CPU time though the screen DMA is responsible for a lot of cycles going missing..

If it runs with the screen off then the CPU load is about 70%..

You can see this in Altirra if you use the profiler.. Although you don't have the symbols you can still see how much time is left for 'main'..

There's many optimisations still possible, all while still keeping a 15.6K output rate, one of which is potentially a real game changer ;)

Link to comment
Share on other sites

It's not interesting to me I'm afraid.. It's only going to be 15.6Khz.. The aim is to be able to produce nice sound, not things aliased into oblivion :)

 

But.. There's a lot more to the sound than meets the eye.. If you've figured out how the waveform generator works you'd realise that each of those channels is essentially a pulse stream, which means there's a huge amount of potential in those voices, and if you're familiar with *why* PWM samples work, then you know what I'm getting at.. But that's the next step, after making it drive 8 channels..

 

Using much lower sample rates (well, not one constant one) is something I've been trying on the 64.. Using all 4 timers, each being a 'voice' then letting them generate IRQs/NMIs when they finish and toggling bits then whenever any one of them expires.. It means you only generate an IRQ for each voices waveform transition, which means it does in hardware what this does here, except I don't need a constant sample rate, and output is generated when it's actually needed, which is the big optimisation I'm talking about.. If I can do that on the A8, it means you'll be able to playback 15.6Khz output with maybe only few thousand IRQs per second..

  • Like 1
Link to comment
Share on other sites

Yeah... I see. It's common on the A8 scene to see shiny bubbles pop easily....

 

What the Atari "needs" is a sound generator, pushing the musical quality, at a CPU usage, that allows games to be run fluently.

On the other hand, such a Software-Sound Tracker could help developing things...

Link to comment
Share on other sites

There's no bubbles being burst, just you want something different to me :)

 

Anyway.. Here's a nicer sounding version.. You'll need a VBXE to see the display because right now trying to keep this thing working whilst the screen DMA is happening is a pain in the butt, so for now it's simpler to drive the display using VBXE..

 

You can see the CPU time clearly.. The red region is the actual music player, green the volume table builder (actually doing 7 voices now, but there's nothing using it), and the blue the actual pulse builder.. Grey bit above that is free time..

 

And this is playing back with a much higher bit depth now using Phaerons technique..

main.xex

  • Like 3
Link to comment
Share on other sites

There's no bubbles being burst, just you want something different to me :)

 

Anyway.. Here's a nicer sounding version.. You'll need a VBXE to see the display because right now trying to keep this thing working whilst the screen DMA is happening is a pain in the butt, so for now it's simpler to drive the display using VBXE..

 

OK.

The bubble seems artificial only. So it must not burst.

Link to comment
Share on other sites

Seeing the NES "emulation" .... the sound quality could be perfect. Always the same: Low notes played via software, high notes played via POKEY's generator: Remember, it has two 16 bit channels..... No quantization noise needed , even if using ANTIC ;)

Edited by emkay
Link to comment
Share on other sites

Seeing the NES "emulation" .... the sound quality could be perfect. Always the same: Low notes played via software, high notes played via POKEY's generator: Remember, it has two 16 bit channels..... No quantization noise needed , even if using ANTIC ;)

 

It was only a simple test because I was getting bogged down with writing a whole new music driver, and this allowed me to concentrate on what was important rather than implementing a bad music driver for now..

Link to comment
Share on other sites

What still makes me wonder.... after all those decades, why no one has built such a combined tracker for the A8.

Using all CPU and POKEY capacities for a good sound/music demonstration.... and vary .... to most free CPU with good POKEY sounds, depending on the CPU speed a game needs.

Link to comment
Share on other sites

I guess because it's not really useful for a game or a demo.. I know in 64 land that half the challenge is to push the machine to the limits sound-wise with what's considered a normal player, actually seeing what weirdness lies under the bonnet that no-one has ever heard before and making it do things people haven't dreamt off..

 

I mean as an example of this, listen to this.. A regular sound player, 50hz, no silly raster time (although you can't see it in the video, it is!)..

And I don't mean get excited by the speech.. That's cool, but the bass is awesome, as is most of the damned song :)

 

http://www.youtube.com/watch?v=XBLir3zTwkY

 

It sounds astonishing to my ears for a plain old SID, for a 50hz, 20-30 rasters player.. And that's what I think people get a kick out of, pushing the hardware to its limits..

But I suspect a lot of the Pokey world are the same :)

 

If you want a tracker with some a few additional low-overhead voices then surely the answer is to just write it ? That's what I have to do when ever I want something doing..

 

And just to balance out the thread a little ;)

http://www.youtube.com/watch?v=in16hHDKPs4&feature=related

http://www.youtube.com/watch?v=C3-YcpVowdA&feature=related

Has to be done, after all, I'm a fully signed up member of the SID appreciation society ;)

Link to comment
Share on other sites

Just wait and see.. There's more to come with the stuff I'm playing with, one of which is to massively reduce the interrupt rate, I mean somewhere in the region of 8x, maybe more, but without sacrificing the underlying 15.6k rate.. So then you get the best of both worlds :)

Who knows what next.. Maybe even 32k becomes possible ;)

 

(null)

Link to comment
Share on other sites

And something different:

 

I have been doing a thousands of demonstrations of what POKEY can do. But Raster never treated my proposals well, doing the needed updates on the RMT.

 

Keep in Mind, this is even done before some patched RMT versions were available....

 

The Title tells the main point....

 

http://www.youtube.com/watch?v=tCYMMc2ctQo

  • Like 1
Link to comment
Share on other sites

Just wait and see.. There's more to come with the stuff I'm playing with, one of which is to massively reduce the interrupt rate, I mean somewhere in the region of 8x, maybe more, but without sacrificing the underlying 15.6k rate.. So then you get the best of both worlds :)

Who knows what next.. Maybe even 32k becomes possible ;)

 

(null)

 

The idea around it is good. The high "sampling rate" comes with the "simple" square wave producing. In theory you could produce independent waveforms with that, throwing different "channels" through the stream. Because the resulting waveforms always changes slightly, the quantization-noise gets less recognized, making the sounding quality "looking" better. Which is ok, because "senses" want to be illusionized ;)

 

If that was possible to use in "working" games, I'd jump over skyscrapers, you know .

 

It's still the solution for the A8. Using a rather low sampling rate with that technique.... well.... the PAL A8's CPU sleeps ~20% (or more) in 99% of the available games....

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...