> shadow RAM at the same address as the ROMs, > I found something vaguely the opposite with Apple II. Being at the same address as ROM, the 2 x 8k of RAM was probably largely unused by most people, and certainly the O/S didn't use it unless asked to. To access an 8k bank you had to turn the corresponding BASIC or KERNEL ROM off and hand over control to ML. Being out of reach of the O/S (BASIC variable storage etc) it was a very useful place to store large amounts of data like bitmapped screens / character sets, or ML routines The memory used for BASIC normally went from $0801 to $9FFF. Programs built from $0801 upwards and variables were stored from $9FFF downwards. Inevitably there would be corruption and crashes as either the program got longer and ran into the variables it created or you went a bit mad with variable or string creation. The BASIC ROM (and the underlying RAM) went from $A000 to $BFFF, but of course you couldn't turn BASIC off to access the $A000 RAM for BASIC variables. However, by making an editable soft copy of BASIC, it was (ISTR) possible to change the default vectors and store variables at $CFFF -> $C000, which was RAM not overlaid by ROM, the KERNEL ROM being at $E000 to $FFFF, and other parts of the O/S at $D000 - $DFFF Joe --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .