My understanding is that the extra cartridge RAM banks at
&A000-&BFFF are battery-backed SRAM that is preserved after powering off the game. If I'm making a simple game that doesn't have a save feature, can this RAM be used as the home for the stack pointer? Putting the stack at the top of high ram seems like a very tight limitation, especially when that ram area has to share space with DMA code. But from what I've read the extra ram should be disabled when not in use. Is there any danger of damaging the Game Boy or the cartridge if I use the additional RAM just as a "scratchpad" for a game with no save feature?
Some sample code from my test rom (the header jumps here, this is in main and not in a subroutine)
nop di ld sp,&FFFF call GetHardwareVersion ;sets internal variables depending on which game boy model is being used xor a call GBCart_RamBank ;activate extra cartridge RAM at &A000-&BFFF ld sp,&BFFF ;relocate the stack pointer to the extra RAM area