Jump to content
IGNORED

My 7800 Pokey Sound Tool (Pokey Player)


fultonbot

Recommended Posts

I don't know if this is useful to anyone else, but I built a tool to help me figure out what pokey sounds on the 7800

It lets me test out sound mixing on all four channels at the same time.

 

Controls:
-Joystick/arrow keys select the value to change (orange)
-Left button increases value, right button decreases value

- F = Frequency

-W =Waveform

-V = Volume (needs to be > 0 to hear anything)

-D = Duration (how many frames to play the sound)

-S = Silence  (amount of time between plays to keep channel silent)

-T = Type  (C)onstant (play at same volume), (A)attack (play from volume 0 to 15, (D)ecay (play from volume 15 to 0) 

 

This is s the first version. Suggestions much appreciated.  

 

link: JS7800: Atari 7800 Emulator (raz0red.github.io)

pokeyplayer1.thumb.png.6bbb501b21cad9bfea536369ca8015da.png

 

There may well already be a tool like this, but this is mine.  I used to help me understand the pokey chip and what it can do.

 

I think I probably made something similar to this in Atari 8-bit BASIC back in the 1984 or 1985 for the same purpose.

 

 

 

 

pokeyplayer2.bas.a78 pokeyplayer2.bas.bin

Edited by fultonbot
  • Like 5
  • Thanks 1
Link to comment
Share on other sites

Very impressive.

 

There are a couple of other registers which shape the sound too ...

 

AUDCTL (POKEYADDR + $08) 

 

There are 8-bits to this register.   These control everything from clocking (which can let you play your channels at higher or lower frequencies), hi-pass filter (an effect which lets you use one channel to modulate the waveform of the other), 16-bit mode (joining two channels into a 16-bit one to extend the musical range), and a 9-bit polycounter (for playing musical notes on the $0x and $8x waveform settings).

 

SKCTLS (POKEYADDR + $0F)

 

This one is more complicated.   It acts on the first two channels.  Default is $03.  Storing $8B here activates two tone mode where the frequency of the 2nd channel is played to the first channel, plus a modulation from the first channel.  It was used in the old Atari 8-bit days for cassette I/O.

 

Both of these have varying issues of compatibility when it comes to emulation, though ...

 

 

  • Like 2
Link to comment
Share on other sites

1 hour ago, Synthpopalooza said:

Very impressive.

 

There are a couple of other registers which shape the sound too ...

 

 

Yeah, I did read about those, but they stretched my brain too-far to try to implement just yet.   I think once I realize I can't do what I need with the 8-bit Pokey, I'll be on to the 16-bit stuff.

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