Path: utzoo!attcan!utgpu!watserv1!watdragon!lotus!rrwood From: rrwood@lotus.waterloo.edu (Roy Wood) Newsgroups: comp.sys.atari.8bit Subject: 130XE Memory tricks Message-ID: <19168@watdragon.waterloo.edu> Date: 11 Dec 89 16:22:15 GMT Sender: daemon@watdragon.waterloo.edu Distribution: na Lines: 31 I've been fiddling about with the bank selectable memory in my 130XE, and I've been having a bit of a problem. It's easy enough to swap in and out the bank at $4000-$7FFF, but I'm having trouble with the memory under the ROMs. Bit zero of $D301 controls whether the upper 16k of the machine is ROM or RAM, and I can turn it off and on without any problem. However, I tried to do the following: 1) copy the ROMs down to lower memory. 2) swap out the ROMs for RAM. 3) copy the "ROMs" from low memory back to their original position, and thus have the OS completely in RAM. I took care to mask out all the interrupts I could think of (SEI, POKMSK at $10 and it equivalent hardware register, plus the NMI hardware register). Unfortunately, the machine still hangs. The screen goes futzy, as if the character set has been redefined as garbage, and there's no response to keystrokes. (Reset brings it back) By the apparent character set mixup, it seems that the hardware is not addressing the RAM correctly, or something like that. Any ideas? Also, what is the second-highest bit in $D301 for? I know the highest-bit (bit 7) is for masking in/out the self-test ROM, but what is bit 6 for? Does anyone have a copy of Mapping the Atari, so they could look this up? (I have a downloaded file version of Mapping the Atari, but it's not very complete.) Thanks... -Roy Wood (rrwood@lotus.waterloo.edu)