Jump to content
IGNORED

"Dragonfly" my version of the Atari 7800 SD cartridge


rj1307

Recommended Posts

Thanks for linking.  :) at work now, so can't do it.

 

Also:  There is a POKEY tool in that thread.  It currently only steps through these waveform in 16-bit mode:

 

$Ax square wave

$2x triangle

$Cx mod 3 aka RMT C

$Cx non mod 3 aka RMT E

$4x mod 3 

$4x non mod 3

$8x with 9-bit polycounter

 

Buttons cycle through the notes, joystick plays that note in the appropriate waveform for easy comparison.

  • Like 2
Link to comment
Share on other sites

To follow-up on the pricing differences, evidently, there are 6 variations of the Version 2 PokeyMAX.

 

Also, those with the smaller FPGA, may have some low pass filters disabled (Though that seems to only impact the quad design on the small FGA - should be a moot point then).  Nonetheless, just some things to be mindful of, especially respecting @Synthpopalooza's current and future work and any other developers working with POKEY sound.

 

Curious to know what version and/or variation of the PokeyMAX is currently being tested, @rj1307.

Link to comment
Share on other sites

The Pokey Max Stereo + Covox works in mono in the A7800. Tomorrow I'll be talking about making a version just for the A7800, we'll see what comes out of it.

 

Below are samples from Millie And Molly.

Pokey Molly 1

Pokey Max Molly 1

Pokey Molly 2

 

Pokey Max Molly 2

 

 

  • Like 4
Link to comment
Share on other sites

9 hours ago, Synthpopalooza said:

Covox functional at all on 7800?  That'd be a good source for sampled PCM sounds like on the NES.

In fact, how is dual POKEY addressed?  is it @$450?  I want to try a demo.

Does the A7800 have enough resources to play Covox samples? You have to transfer a lot of data.

 

Stereo Pokey can work if you want, I suggest you do it according to XM .:
POKEY1 $ 0450- $ 045F
POKEY2 $ 0460- $ 046F
Of course, the audio outputs would be summed up into one channel.
A special firmware version would be made for Pokey Max.

 

To test it, I need a demo. Can someone create music that switches between Pokey 1 and Pokey 2 while playing?

Link to comment
Share on other sites

$500 is free, as far as I know.

 

The issue with the covox and PCM samples in general, is the 7800 doesn't have a source of regular interrupts, other than the DLI... PCM samples require most of the game logic to stop, so the audio registers can be hit regularly. Some kind of fifo or source of interrupts would make samples work better on the 7800. Not sure if this is in your scope or not.

Link to comment
Share on other sites

I don't know 7800 programming, so I ask if it makes sense. While on the other hand, Covox is in Pokey Max anyway, running it won't cost you anything but a little CPLD code.
As long as I understand the principle of operation, it is enough to write the data to the addresses
$500 for channel 1
$501 for channel 2
$502 for channel 3
$503 for channel 4
and Covox is about to make a sound. But I have no idea how fast you have to do this and whether the A7800 can do it.

Link to comment
Share on other sites

Well irq is in the 7800 cart socket, so could use the pokey irq?

 

There is a sample core now for pokeymax (in test). So poke samples into pokeymax ram then tell it to play them at a given frequency. This requires the larger fpga version though. 

Edited by foft
Link to comment
Share on other sites

5 minutes ago, foft said:

Well irq is in the 7800 cart socket, so could use the pokey irq?

 

There is a sample core now for pokeymax (in test). So poke samples into pokeymax ram then tell it to play them at a given frequency. This requires the larger fpga version though. 

If pokey IRQ was hooked up to IRQ in cart designs, then yes. This isn't the case with present designs, as far as I'm aware. Perhaps it is, in rj1307's prototype?

Link to comment
Share on other sites

3 hours ago, rj1307 said:

Enclosed is music from Millie And Molly, this time with good speed.

 

Back to the Covox, he'll probably be able to get it started on the A7800. I need a free address, one byte is enough. Is $0500 free?

Molly.zip 24.17 MB · 2 downloads

These sound great, and as intended.  Jolly good job ...

  • Like 1
Link to comment
Share on other sites

20 minutes ago, Synthpopalooza said:

RevEng:  That pokeysound code, how would be the best way to mod the code to address all 8 channels?  i.e.  $04 to $07 addressing the second POKEY?  

The first pokey is at $450, and the second pokey is at $460, so you'd either add $10 to your x or y indexes for the second set of voices, or you need duplicate code that more or less fetches the second set of notes using the same indexes but with a different base address.

 

It's worth mentioning the $460 location conflicts with the XM's YM2151 register location, so putting hardware there may rule out XM compatibility for this cart, or at least YM2151 compatibility. If $460 can be entirely taken off the bus when an A78 header flags XM, then things might be ok. (there's still a case where the header doesn't have XM flagged, but may probe for this hardware anyway)

Link to comment
Share on other sites

POKEY plus YM or double POKEY no YM as the two options, is not a bad thing.  :)

 

Will see if I can hack the code tonight.  This is the piece of music I want to do:

 

This piece can be done on double POKEY as follows:

 

00/01 - 16 bit $Cx non mod 3 ... NES pulse wave

02/03 - same as 00/01

04/05 - 16-bit $Ax - NES triangle channel

06 - $8x noise perc 8-bit

 

One channel free for game sfx

  • Like 2
Link to comment
Share on other sites

18 minutes ago, RevEng said:

The first pokey is at $450, and the second pokey is at $460, so you'd either add $10 to your x or y indexes for the second set of voices, or you need duplicate code that more or less fetches the second set of notes using the same indexes but with a different base address.

 

It's worth mentioning the $460 location conflicts with the XM's YM2151 register location, so putting hardware there may rule out XM compatibility for this cart, or at least YM2151 compatibility. If $460 can be entirely taken off the bus when an A78 header flags XM, then things might be ok. (there's still a case where the header doesn't have XM flagged, but may probe for this hardware anyway)

 

I was guided by this: http://7800.8bitdev.org/index.php/XBoard_or_XM_RAM_and_POKEY_banking

I can move the second Pokey to another place, just indicate a free address  :)

 

 

 

  • Like 1
Link to comment
Share on other sites

1 hour ago, rj1307 said:

I was guided by this: http://7800.8bitdev.org/index.php/XBoard_or_XM_RAM_and_POKEY_banking

I can move the second Pokey to another place, just indicate a free address  :)

Sadly, I wrote that when it was thought that XM followed the Xboard register spec. It's now only applicable to xboard. (which AFAIK nobody actually has) I'll update it shortly to remove XM references from the document. [edit - I've now removed the doc. I had previously removed links to this page, but neglected to remove the page itself]

 

I know what the official XM registers are, but don't know if there are any mirror addresses. I'm going to add a few folks who have been more involved in dealing with XM bus conflicts to hopefully answer your question: @tep392 @Curt Vendel 

 

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...