Dr. apocalipsis, stop being so completely salty. It's nervegrating to read. If you are right, talk like an engineer. Be exhaustive and exceedingly patient. This wont work otherwise.
Thanks.
I'm not the one overseeing any other quotes and taking them out of context to try to show someone is saying something he isn't saying.
I'm annoyed and dissapointed at the reaction of some guy with my same hobby and interests after I corrected some inaccurate stuff from him on a discussion board. More than legit when used to a Megadrive comunity known for being extremely friendly unlike others.
Well, that's how your statement in the part I quoted read. Local/specialized RAM is local/specialized RAM, main RAM is just RAM. When you say something needs to go through RAM that's what most people would understand.
So do you really think I explained, one post earlier, what would be a perfect case for DMA transfer from cartridge to VRAM (uncompressed tiles copy), and brought to this discussion that concept before anyone else to then deny, one post later, that such a thing is even possible?
Reply in all honesty, please.
Well, I haven't seen anybody claiming one can DMA wildly - doing a DMA on the MD takes the main bus away from all other agents using that bus (again, going entirely off that doc). Clearly the timing of DMA transfers has to be considered in the grand scheme of things.
DMA has its uses and its cons. You just can't use it to bypass RAM (whatever RAM) as suggested here.
Basically, you're saying for best performance a processor might need to buffer data in its local memory pool. Which is fine, but that does not contradict what Krejlooc has been saying - that DMA can copy from cart to VRAM (and for Sound-RAM the Z80 can do the copies from ROM on its own, akin to a bus-master DMA agent), thus cart data that is in a displayable format might have no business going via main RAM before reaching VRAM. Same with sound data on the cart - it can go from ROM directly to S-RAM, no main RAM detours.
Please, try not to put affirmations in any others keyboard. What I am denying is this:
Let's clarify - The Sega Genesis doesn't have ram at all as you're describing it. It has, say, CRAM for palette entries, but not the conventional ram you're imagining. The sega genesis addresses the entire cartridge slot and can access any piece of the cartridge itself.).
Megadrive has conventional RAM and works like any other system on that regard. It has to preload stuff just like any other system before a level starts. The only difference being that with any given CD system you need to preload *more* stuff because you don't have the ease to load stuff during blanking periods as you have with cartridges. But those DMA transfers aren't as wild card as they sound, because they have severe limitations. Everytime you start a DMA transfer M68k enters into wait state, taking a performance hit, so you want to use RAM (whatever RAM) as much as possible with manual copies using CPU. Bandwidth isn't that stellar neither, just enough to load some stuff during blank periods without affecting display/gameplay if you are careful enough. Even then, you have plenty of cases of halted gameplay during DMA transfers around, like when action stops while loading a boss in several beat 'em ups. And, of course, the trademark Megadrive scratchy samples playback when poor sound drivers do nothing to prevent bus contention.
When you are displaying anything you are limited at any given moment to the tiles VRAM can hold, not whatever cartridges is storing. Then, VRAM access time is around 100~120ms, while cartridge ROM can be as high as 300ms and beyond.
To summarize: Saying you just load stuff from cartridge at will with DMA and than Megadrive doesn't have conventional RAM is fully nonsense.
The entire reason I posted is that I saw you referring to audio RAM as "any working RAM". This is simply against existing nomenclature for people dealing with this sort of hardware a lot. I am aware this is not what you're trying to say so I ask you to stop it. Work RAM is basically the way to describe main CPU's biggest RAM bank, so I think for clarity you shouldn't put anything else under that umbrella.
There is no such a thing like audio RAM on Megadrive. Those 8kb work like a scratchpad for Z80. Z80 is pretty autonomous inside the Megadrive design and it is a general purpose CPU, not a sound one like SPC700 on SNES. It was there instead of a cheaper chip to allow backwards compatibility with Master System to start with. Then most uses it got during lifecycle were mostly afterthoughs, since it was overkill for just feeding Yamaha YM2612, but at the same time too weak to allow sound sample decompression.
This is as good time as any other to show you Stef's
XGM driver sample ROM (Use any Megadrive emu or flashcart).
It uses Z80 as a software mixer for being able to playback 4 PCM @14 Khz samples simultaneously without any limitation on the FM(6 full channels or 5 channels+4PCM)+PSG (3+noise) side. For comparison, SSF2 is doing 2PCM @4.8 Khz. Having this back then would have changed the history.