Jump to content
Curt Vendel

7800 XM update

Recommended Posts

How much could be done with dual Pokey, Yamaha, and Atari TIA? That would be a lot of sound channels! The CPU isn't that strong at 1.79Mhz. Unless you wanna release XM music demos, there isn't a lot of CPU left for gameplay. That said, I'm a big chiptune fan so that may have merit. An XM music demo could use on cart or Concerto Pokey, plus all the XM chips. I hope the XM has a good sound mixing circuit... :)

Share this post


Link to post
Share on other sites

How much could be done with dual Pokey, Yamaha, and Atari TIA? That would be a lot of sound channels!

 

It wouldn't be entirely unlike music on the Sega Genesis, which can combine audio from its own Yamaha soundchip with the POKEY-ish sound on the 8-bit Sega hardware bundled in. Sonic the Hedgehog does a good job creating music with both audio chips, if you want an idea of such a behemoth might sound like.

Share this post


Link to post
Share on other sites

How much could be done with dual Pokey, Yamaha, and Atari TIA? That would be a lot of sound channels! The CPU isn't that strong at 1.79Mhz. Unless you wanna release XM music demos, there isn't a lot of CPU left for gameplay. That said, I'm a big chiptune fan so that may have merit. An XM music demo could use on cart or Concerto Pokey, plus all the XM chips. I hope the XM has a good sound mixing circuit... :)

Did someone suggest using 4 sound chips at once? That would be a cool thing to listen to, but I was just talking about the possibility of doing dual POKEY's with the XM plus an on cart POKEY. Most music code I've seen isn't very CPU intensive. It's basically looking up values in tables and counting. I'm sure that if Tempest Extreme can manage driving two POKEY's, then the 7800 should be able to handle it also.

 

Regarding the mixing circuit, Mark redesigned it a while ago so that it would have good sound quality.

  • Like 3

Share this post


Link to post
Share on other sites
An 128KB Apple IIe could drive two to four AY-3-891x chips at once with Ultima V and the game was still very playable. The 7800 uses a faster 6502 CPU than the IIe and with the Expansion Module will have an extra 128KB to play with.

Edited by Great Hierophant

Share this post


Link to post
Share on other sites

 

An 128KB Apple IIe could drive two to four AY-3-891x chips at once with Ultima V and the game was still very playable. The 7800 uses a faster 6502 CPU than the IIe and with the Expansion Module will have an extra 128KB to play with.

 

 

I think the concern people are expressing is due to the MARIA hogging so much of the shared bus between it and the SALLY [the CPU].

 

My other assumption is that people are also remembering how much exotic hardware was in the arcade originals when it came to multiple sound chips. Take Atari Games for instance past 1984. If you look at Gauntlet, you have the Motorola 68010 calling most of the shots but there's also a 6502 in there to manage the harem of sound chips [and also run the coin slots]. And that 6502 [or 6502C or 6C502, whatever] is managing the POKEY, the YM2151 [used because the Atari AMY wasn't finished], and the TI TMS5220 speech synthesis chip. So people are probably assuming such tasks would tax the hell out of the XM.

 

I'm going to go out on a limb here and say the speech synthesis from the arcade Gauntlet would probably be a no-go for the XM because of everything else going on unless there was a speech synthesis chip added to the cartridge. Doing digitized voices would blow the RAM to hell. The Atari ST version can get away with it since it had 512K RAM standard although the coders themselves really wanted to do a 1MB RAM version even back then to get it even more arcade-perfect.

 

*On a side note concerning the Apple II line using Dual MockingBoards with dual AY sound chips - basically the same thing as that Cromdamn YM2149 in the Atari ST - I'm surprised the existence of that never drove anyone in the ST community back then - or now - to attempt to install Dual - or Quad - YM2149s inside the ST. Then again, there were only 60'ish games on the Apple II that supported the MockingBoard and it seems even fewer of those supported any more than a single AY chip. That's a shame since 12 channel audio is nothing to sneeze at. Then again, why the Atari 8-bit enthusiasts never tried Quad POKEY back in the day surprises me as well considering Atari Coin/Games did that with a few of their own titles.

Edited by Lynxpro

Share this post


Link to post
Share on other sites

Did someone suggest using 4 sound chips at once? That would be a cool thing to listen to, but I was just talking about the possibility of doing dual POKEY's with the XM plus an on cart POKEY. Most music code I've seen isn't very CPU intensive. It's basically looking up values in tables and counting. I'm sure that if Tempest Extreme can manage driving two POKEY's, then the 7800 should be able to handle it also.

 

Regarding the mixing circuit, Mark redesigned it a while ago so that it would have good sound quality.

 

Tep, I like how you think. How are you planning for Dual POKEYs on the XM? Has the board been redesigned to accommodate 2 of 'em now? Tempest Xtreme is definitely a game to reference for Dual POKEY; same with Yoomp! and Space Harrier, as well as all of the POKEY music coming out of Eastern Europe [or is the preferred term "Central Europe" once again?].

Share this post


Link to post
Share on other sites

 

Tep, I like how you think. How are you planning for Dual POKEYs on the XM? Has the board been redesigned to accommodate 2 of 'em now? Tempest Xtreme is definitely a game to reference for Dual POKEY; same with Yoomp! and Space Harrier, as well as all of the POKEY music coming out of Eastern Europe [or is the preferred term "Central Europe" once again?].

I'm not suggesting a second POKEY on the XM. We don't want any major board redesigns at this point. But it might be possible to update the CPLD to allow the POKEY to be mapped to an alternate location, via application control, that doesn't interfere with a cartridge based POKEY like on the H2 or CPUWIZ's board. The you could do dual POKEY with one on the XM and one on the cart. I'm going to look into this.

  • Like 3

Share this post


Link to post
Share on other sites

I'm not suggesting a second POKEY on the XM. We don't want any major board redesigns at this point. But it might be possible to update the CPLD to allow the POKEY to be mapped to an alternate location, via application control, that doesn't interfere with a cartridge based POKEY like on the H2 or CPUWIZ's board. The you could do dual POKEY with one on the XM and one on the cart. I'm going to look into this.

 

And that would be well worth it. I'm going to assume that re-assigning locations on the fly - for multiple POKEYs located/overlapping in the same address areas - would be impossible or a massive programming headache. Maybe you could configure the XM to recognize the 2nd POKEY on an XBoard and ignore the first for any rabid enthusiast who ends up with both devices. And then still recognize cart-based POKEYs if they're programmed for different locations.

 

Since the MockingBoard from the Apple II has been referenced, it might be interesting to see an external box with 4 AYs - or 4 YM2149s - used in games that are shared between the two platforms. But if the cartridge slot is already being used by the XM, I don't see how a hypothetical box like that could be connected to the 7800. Maybe converting that audio over to something compatible with the YM2151 would be more appropriate and less of a headache for all. Imagine that… Karateka XM. The horror…the horror!

 

Speaking of the YM2151, you're going to use that on Dig Dug XM so you can use the audio from the Sharp X68000 version, right? Or do you feel the 2151 can best replicate the Namco sound chip from the arcade original?

Share this post


Link to post
Share on other sites

 

Speaking of the YM2151, you're going to use that on Dig Dug XM so you can use the audio from the Sharp X68000 version, right? Or do you feel the 2151 can best replicate the Namco sound chip from the arcade original?

My plan is to rip the sound data from the X68000 program "Namco Video Game Music Library Vol 1" I posted an mp3 I made from an emulator a while back and it is good enough for me. I'm currently analyzing the format of the data and working on a tracker to play it.

 

http://atariage.com/forums/topic/174793-help-choose-my-next-sound-update/?do=findComment&comment=2173581

  • Like 3

Share this post


Link to post
Share on other sites

I'm not suggesting a second POKEY on the XM. We don't want any major board redesigns at this point. But it might be possible to update the CPLD to allow the POKEY to be mapped to an alternate location, via application control, that doesn't interfere with a cartridge based POKEY like on the H2 or CPUWIZ's board. The you could do dual POKEY with one on the XM and one on the cart. I'm going to look into this.

 

CPUWIZ mentioned previously his Versaboard handled POKEY at either $0400 or $0450.

 

Later on, he was able to have POKEY made available anywhere from $0400-$047F and $0500-$057F.

 

With the XM POKEY default set to $0450, would just utilizing CPUWIZ's board(s) having POKEY at $0400 or any of the other available address spaces above (That doesn't conflict with an XM feature address space) be enough, or is some additional logic required from the XM in order to function properly?

  • Like 2

Share this post


Link to post
Share on other sites

 

CPUWIZ mentioned previously his Versaboard handled POKEY at either $0400 or $0450.

 

Later on, he was able to have POKEY made available anywhere from $0400-$047F and $0500-$057F.

 

With the XM POKEY default set to $0450, would just utilizing CPUWIZ's board(s) having POKEY at $0400 or any of the other available address spaces above (That doesn't conflict with an XM feature address space) be enough, or is some additional logic required from the XM in order to function properly?

This is a good alternative. The key with either approach is to identify a location where the cart and XM won't conflict. Thanks Trebor.

Share this post


Link to post
Share on other sites

I'm wondering if reconfiguration on the fly might break existing stuff or complicate homebrew programming. The Concerto I believe supports both the standard on cart Pokey address and the XM address so XM games that only used the Pokey and possibly extra RAM would be able to execute on a standard Concerto with Pokey installed.

 

The issue is that some games might try to write both cart and XM Pokey addresses simultaneously because the author may want to release a single ROM that works in emulator, Concerto, CPUWIZ boards with Hokey, and the XM. But if it writes the same values to both the Concerto Pokey and the XM Pokey (for instance if one runs a Pokey or XM enabled homebrew in a flash cart equipped to run it wihtout the XM, but is plugged into the XM anyway) then the chips may fight each other creating distortion in the mixer/amplifier. Worse, if RAM inside the cart is mapped to the same address as RAM inside the XM, bus conflicts are likely to occur unless one of the devices scans for the presence of additional hardware and disables itself or duplicate components therein accordingly.

 

I can guarantee people will own both products (the Concerto and XM) and try to run them together. Hell it's even plausible someone somewhere will try to piggyback two XMs, so it may be useful for the XM module to scan for the presence of a second XM module and disable one of them if duplicate hardware is found. Adding micro code to homebrews to remap or change the address space of hardware components such as sound chips or RAM, could further complicate the programming side of things. And it is entirely possible that a firmware update to the XM meant to fix compatibility issues with one game or app may break another. It has happened all too frequently with revisions of vintage hardware. I can imagine it's a real developmental nightmare, and I hope Batari and tep392 are working together to make sure their competing products play nicely together.

Share this post


Link to post
Share on other sites

I'm wondering if reconfiguration on the fly might break existing stuff or complicate homebrew programming. The Concerto I believe supports both the standard on cart Pokey address and the XM address so XM games that only used the Pokey and possibly extra RAM would be able to execute on a standard Concerto with Pokey installed.

 

The issue is that some games might try to write both cart and XM Pokey addresses simultaneously because the author may want to release a single ROM that works in emulator, Concerto, CPUWIZ boards with Hokey, and the XM. But if it writes the same values to both the Concerto Pokey and the XM Pokey (for instance if one runs a Pokey or XM enabled homebrew in a flash cart equipped to run it wihtout the XM, but is plugged into the XM anyway) then the chips may fight each other creating distortion in the mixer/amplifier. Worse, if RAM inside the cart is mapped to the same address as RAM inside the XM, bus conflicts are likely to occur unless one of the devices scans for the presence of additional hardware and disables itself or duplicate components therein accordingly.

 

I can guarantee people will own both products (the Concerto and XM) and try to run them together. Hell it's even plausible someone somewhere will try to piggyback two XMs, so it may be useful for the XM module to scan for the presence of a second XM module and disable one of them if duplicate hardware is found. Adding micro code to homebrews to remap or change the address space of hardware components such as sound chips or RAM, could further complicate the programming side of things. And it is entirely possible that a firmware update to the XM meant to fix compatibility issues with one game or app may break another. It has happened all too frequently with revisions of vintage hardware. I can imagine it's a real developmental nightmare, and I hope Batari and tep392 are working together to make sure their competing products play nicely together.

Thinking through all these scenarios is part of the design process.

  • Like 1

Share this post


Link to post
Share on other sites

Thinking through all these scenarios is part of the design process.

 

Could the Yamaha be moved elsewhere out of $0460 and somewhere else that doesn't interfere with other stuff?

 

 

Let's see...

 

$0400-$047F = Used by Versaboard for POKEY

 

$0450 = Used by XBoard POKEY1, used by XM for POKEY, used by Versaboard for POKEY.

 

$0460 = Used by XBoard POKEY2, currently used by XM for Yamaha [YM2151].

 

$0470 = Used by XBoard for POKEY+RAM Control Register

 

$0500 - $057F = Used by Versaboard for POKEY

 

 

Can't find the thread that states where cart-based POKEYs map to [probably $0450]. I'm assuming Concerto and Cuttle Cart 2 probably map there as well.

 

So it seems you have to account for POKEY at $0450 and the XM would just ignore external POKEYs also mapped to that area unless it could remap them [probably not] to other locations. My understanding is that the XM's 128K RAM is mapped the same way as the XBoard; hopefully, I'm remembering that correctly.

 

Now if the Yamaha could be moved into a different spot away from $0460, then that would leave maximum opportunities for other POKEYs or different sound chips, assuming those areas aren't overlapping with PIA/SIO, the keyboard port, HSC, or any other feature I'm forgetting about.

 

Does anyone here have an XBoard? I don't know why it isn't more popular, especially if all European 7800s have MARIA socketed. Even with North American 7800s mostly soldered, you'd think it would be an easy fix for the likes of Electronic Sentimentalities to offer such a service to install it. Seems a waste that it hasn't been produced in so long and that almost no homebrew or hacks support it.

  • Like 1

Share this post


Link to post
Share on other sites

Can't find the thread that states where cart-based POKEYs map to [probably $0450]. I'm assuming Concerto and Cuttle Cart 2 probably map there as well.

 

Cart-based POKEY titles such as Commando and Ballblazer map POKEY writes to $4000. (Note: There is no ROM mapped to $4000 for these titles).

 

Cart-based POKEY titles such as Donkey Kong XM/PK and Bentley Bear's Crystal Quest map writes to $0450. (Note: There is ROM mapped to $4000 for these titles).

 

Cart-based optional POKEY/TIA sound support titles such as Beef Drop and Froggie perform POKEY writes to both $4000 and $0450 address spaces. Other titles may/can do that as well. (Note: For a title to map POKEY writes to both addresses, there cannot be ROM mapped to either address space).

 

Concerto (previously) was following the ProSystem emulator's erroneous and impossible hardware setup of simultaneous support for ROM @$4000 and POKEY writes @$4000; which some (older) ROM images of homebrew games were 'hacked' to support. Concerto (previously) did not support POKEY writes to $0450.

 

Cuttle Cart 2 does not have support for 144K images with POKEY enabled, resulting in DK PK/XM and BBCQ not being able to run on it properly. The highest possible ROM size for POKEY properly mapped under a CC2 is 128K (Commando).

 

Technically a homebrew(er) can map out POKEY writes for a game to several address spaces. It's just a matter of ensuring hardware is in place to support it accordingly. (I.E. See CPUWIZ's post providing possible options for POKEY writes for his PCB(s).)

 

So it seems you have to account for POKEY at $0450 and the XM would just ignore external POKEYs also mapped to that area unless it could remap them [probably not] to other locations. My understanding is that the XM's 128K RAM is mapped the same way as the XBoard; hopefully, I'm remembering that correctly.

 

If still following what was discussed previously, XM disables it's internal hardware component/support (I.E. POKEY mapping to $0450, HSC Support) if an external one is found to be in place. Your understanding regarding the 128K RAM is correct, if it is still following previous design for it as well. :)

  • Like 2

Share this post


Link to post
Share on other sites

Your understanding regarding the 128K RAM is correct, if it is still following previous design for it as well. :)

 

The XM RAM is mapped to the same location as on the XBOARD, but the control bits are different. If any XBOARD software actually exists, it would need to be updated to run correctly with the XM RAM.

Share this post


Link to post
Share on other sites

competing products?? NOPE! I guess they both go in the slot..

They are competing products to the extent that they will share significant feature overlap (ie Hi score function, extra RAM, Hokey/Pokey) and some 7800 fans may only afford to buy one. If both the XM and H2/Concerto were released tomorrow and I only had $150 bucks to spend, I would have to make a decision between product A or B.

 

Although I definitely believe there is enough room in the homebrew market for both products, especially since the implementation is entirely different. The XM relies on carts to operate. The H2 needs an SD card with ROMs. Each device will have it's fans and there will be significant overlap between the two.

 

That's why it's imperative that the XM and H2 are able to "play nice" together. Since the XM is designed to be left in the system, it would suck to be forced to remove it every time one wanted to play the H2 cart due to incompatibility or bus conflicts.

  • Like 1

Share this post


Link to post
Share on other sites

One is a multicart one is not. Thats exactly what they have been looking at is to make the xm compatible with other devices.

Share this post


Link to post
Share on other sites

Update -

 

Team is back together and back to work.

 

Rev 3.5.1 board released to team late last night.

84 Pin CPLD code completed

BIOS being completed.

New XM "Killer app" games in the work.

Gerber files going to manufacturing for latest test run.

 

All features have been retained, nothing removed or excluded.

 

 

Curt

 

 

Very good, Curt, very good!

  • Like 3

Share this post


Link to post
Share on other sites

Is this thing ever going to ship?

 

I did the pre-sale purchase like 6 years ago.......since then I've retired from the working world and no longer have the email address that I ordered this from. I've completely given up on this item and no longer follow the thread.

I also am aware of most of Curts problems,both health and team wise,however he did tell me two years ago that this thing was going to ship in June of 2014 to coincide with the 7800's 30th anniversary. Plenty of time to write books and take on other projects but no time for this apparently.

 

He doesn't really update his "update" site on a regular basis, if at all.

Now that I no longer have my original email address how is he going to contact myself and others if say this thing does ever ship?

  • Like 3

Share this post


Link to post
Share on other sites

Now that I no longer have my original email address how is he going to contact myself and others if say this thing does ever ship?

 

IIRC, he said he will have a lookup page on the web for people in your situation, where you can see what your details are and contact him to update any info necessary.

Share this post


Link to post
Share on other sites

 

IIRC, he said he will have a lookup page on the web for people in your situation, where you can see what your details are and contact him to update any info necessary.

 

I would love to know the url of that page.

Edited by san-d-2000

Share this post


Link to post
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...