Jump to content
IGNORED

XM has shipped!


Curt Vendel

Recommended Posts

2 hours ago, CPUWIZ said:

 

Actually, my Versa PLD code can pick up the POKEY in many locations, so for instance, if you code for $0450 for XM, you can also trigger the Versa POKEY at $0500 for instance, but you probably can't mix the two on your board.

 

I'm just content that it will enable using your mini mega boards in place of using pokey and ram on everything that would otherwise need it. It will make production cost much cheaper and would streamline production with a tiny pcb being a catchall for so many different flavors of program requirments. A HSC cart built in is great and I could care less about anything else like the talk of dual pokey that nobody really needs or anything from the yamaha chip that doesn't have a single game in the works for yet.

  • Like 1
Link to comment
Share on other sites

The DX-100 has a YM2164 vs a YM2151 in the XM - those are very similar chips, but not identical. In theory translating your DX-100 patches would just be a matter of hitting the correct YM2151 registers with the values used in your patches, while accounting for the differences. In practice, you'd probably need to get a midi sysex dump out of the synth and do something programmatic to pull the patch register info out of that.

 

I'm planning at building an import for YM2151 OPM instrument patches into 7800basic, as part of it's music tracker. There's a ton of OPM patches on the internet, including patches that are imported from the default FB-01 patch set. (another YM2164 synth, like your DX-100.)

 

There's going to be a lot of bytes we'll need to send to manage the ym2151, in addition to keeping track of a lot of voices - 8x YM voices, 4x POKEY voices, and 2x TIA voices. it should be interesting to see how much of a toll all of this takes on the 6502.

 

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

8 minutes ago, RevEng said:

There's going to be a lot of bytes we'll need to send to manage the ym2151, in addition to keeping track of a lot of voices - 8x YM voices, 4x POKEY voices, and 2x TIA voices. it should be interesting to see how much of a toll all of this takes on the 6502.

 

Title screen music, baby!

  • Like 5
Link to comment
Share on other sites

3 hours ago, CPUWIZ said:

Title screen music, baby!

For sure, and in-game fancy sound effects and musical flourishes. :thumbsup:

 

If people are looking for "Sonic, Green Hill Zone" type music during in-game, that capability really remains to be seen. Fingers crossed.

  • Like 2
Link to comment
Share on other sites

5 hours ago, RevEng said:

The DX-100 has a YM2164 vs a YM2151 in the XM - those are very similar chips, but not identical. In theory translating your DX-100 patches would just be a matter of hitting the correct YM2151 registers with the values used in your patches, while accounting for the differences. In practice, you'd probably need to get a midi sysex dump out of the synth and do something programmatic to pull the patch register info out of that.

 

I'm planning at building an import for YM2151 OPM instrument patches into 7800basic, as part of it's music tracker. There's a ton of OPM patches on the internet, including patches that are imported from the default FB-01 patch set. (another YM2164 synth, like your DX-100.)

 

There's going to be a lot of bytes we'll need to send to manage the ym2151, in addition to keeping track of a lot of voices - 8x YM voices, 4x POKEY voices, and 2x TIA voices. it should be interesting to see how much of a toll all of this takes on the 6502.

 

This is awesome.

 

I do a lot of 80s synth music (under the musical project name Synthetik FM) and one of my signature sounds is a kick drum patch I made on my DX-100 synth.  If this and my other percussion sounds can be imported, this would rock my world.

  • Like 2
Link to comment
Share on other sites

This discussion reminds me that I still haven't tested my Yamaha Pac-man sound test.  I'll have to post a video.  :) One potential issue I see is that after writing a byte to the Yamaha, you need to poll it to know when it's ready for the next byte to be written.  I haven't done any testing to see how many CPU cycles it takes, or if the duration varies.  It may just be a matter of waiting a certain number of cycles between writes.

  • Like 5
Link to comment
Share on other sites

1 hour ago, tep392 said:

One potential issue I see is that after writing a byte to the Yamaha, you need to poll it to know when it's ready for the next byte to be written.  I haven't done any testing to see how many CPU cycles it takes, or if the duration varies.  It may just be a matter of waiting a certain number of cycles between writes.

From experience working with this chip family - it's easy (and relatively performant) to interleave processing channel data within the worst case write delay time for each channel rather than polling each flush. But in any case you're going to lose a good amount of cycles handling audio updates, there's a reason most arcade boards dedicated a CPU for this task.

 

The overhead won't be bad enough that it's impossible to run anything, but it's still significantly more than none.

  • Like 5
Link to comment
Share on other sites

As promised, here is a little Yamaha test.  It's a little rough, but it's also the first attempt I made about 7 years ago.  It's a few Pac-man tunes and sound affects.  It sounds fast, so I might have assembled it for 50hz on PAL systems.  Groovybee was helping me test at the time since I didn't have an actual XM.

 

 

  • Like 17
Link to comment
Share on other sites

1 hour ago, tep392 said:

As promised, here is a little Yamaha test.  It's a little rough, but it's also the first attempt I made about 7 years ago.  It's a few Pac-man tunes and sound affects.  It sounds fast, so I might have assembled it for 50hz on PAL systems.  Groovybee was helping me test at the time since I didn't have an actual XM.

 

 

 

Awesomesauce! :)

 

  • Like 1
Link to comment
Share on other sites

15 hours ago, TailChao said:

From experience working with this chip family - it's easy (and relatively performant) to interleave processing channel data within the worst case write delay time for each channel rather than polling each flush. But in any case you're going to lose a good amount of cycles handling audio updates, there's a reason most arcade boards dedicated a CPU for this task.

 

The overhead won't be bad enough that it's impossible to run anything, but it's still significantly more than none.

 

As CPUWIZ mentioned, Title screen music should be a viable option. Player deaths, game overs and actions that are not time sensitive could be used for this as well. I have to be honest though, I really don't see that much of an improvment in sound with the Yamaha that would be worth sacrificing extra cycles compromising timing that could be saved using other methods, especially if the POKEY doesn't take away as many cycles for the same actions to perform the calls.

  • Like 1
Link to comment
Share on other sites

I see them as complimenary. Each with their own strengths. And since they are both available, they can be used together. In practice, most of the bytes written to the yamaha are to setup the instruments. Once thats done, its just note data and durations. Pokey actually requires more overhead when trying to do attack/rise/sustain/decay type musical notes because its all cpu work. Yamaha handles that stuff internally. 

  • Like 7
Link to comment
Share on other sites

On 1/28/2020 at 7:59 PM, Curt Vendel said:

Still hoping someone will do Marble Madness, maybe Gyruss on the 7800

X2 on Marble Madness. The NES version just doesn't cut it for me.

Given the quality of Galagon for the 2600, I'm convinced Gyruss can be done for the 7800.

  • Like 7
Link to comment
Share on other sites

7 hours ago, tep392 said:

I see them as complimenary. Each with their own strengths. And since they are both available, they can be used together. In practice, most of the bytes written to the yamaha are to setup the instruments. Once thats done, its just note data and durations. Pokey actually requires more overhead when trying to do attack/rise/sustain/decay type musical notes because its all cpu work. Yamaha handles that stuff internally. 

 

Very good. :) 

  • Like 1
Link to comment
Share on other sites

Now that I have 1 fully working and 1 without a case 7800, I'm looking forward to this!  While waiting, I'll see if I can put my meager CAD skills to work and create a bottom replacement for the other 7800, probably will make one model that is normal and one that has holes for the composite mod...

Link to comment
Share on other sites

Hi guys:

 

Here is my video on demoing the XM...  sorry it's in 4 parts (and yes, I know I need to vacuum the rug).

 

Part 1: 

Part 2: 

Part 3: 

 

Part 4: 

 

 

Curt, if I missed anything, please let me know - I did these kind of quickly.

  • Like 19
  • Thanks 1
  • Haha 1
Link to comment
Share on other sites

1 hour ago, PacManPlus said:

Hi guys:

 

Here is my video on demoing the XM...  sorry it's in 4 parts (and yes, I know I need to vacuum the rug).

 

[...]

 

Curt, if I missed anything, please let me know - I did these kind of quickly.

 

Loved the videos, with the off-the-cuff dialog and unedited console-drop blooper. :D It's like we were invited over for coffee and show-and-tell.

 

I also was hella distracted by that cool LED pacman clock, and your matching decor. :thumbsup:

 

  • Like 8
Link to comment
Share on other sites

Thanks for the videos PMP.  I'm not the best at picking up on subtle clues, but from that game room you have, I might almost get the impression you are a fan of Pac Man ?

 

Sorry for off-topic - but can you give me sdome details on the Roland drum kit you have please?

  • Haha 1
Link to comment
Share on other sites

2 hours ago, tep392 said:

p.p.s. Love the Apple IIc also.  The first computer I purchased with my own money was an Apple IIe.

Pretty cool! We had Apple IIe's in high school with Silentype (thermal) printers. 

 

@PacManPlus Thanks for the videos! Can't wait to see *cough*defender*cough*.

  • Like 2
  • Haha 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

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