Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!lll-lcc!ptsfa!ihnp4!inuxc!iuvax!iucs!silver!sl109001 From: sl109001@silver.UUCP Newsgroups: comp.sys.apple Subject: Help: memory move Message-ID: <21600002@silver> Date: Sat, 14-Feb-87 19:33:00 EST Article-I.D.: silver.21600002 Posted: Sat Feb 14 19:33:00 1987 Date-Received: Sun, 15-Feb-87 15:44:15 EST Organization: Indiana University BACS, Bloomington Lines: 30 Nf-ID: #N:silver:21600002:000:1444 Nf-From: silver.bacs.indiana.edu!sl109001 Feb 14 19:33:00 1987 I'm currently writing an assembly language program on my Apple //c, and have encountered a surprising bug that seems to contradict the documentation I have. At one point, my program BLOADs a binary file at location $4E00 in main memory and then moves it to auxillary memory at location $800 via the routine "MoveMem" (I forget the official name) at $C311 in ROM. The BLOAD works just fine, but the copy that's put into auxillary memory somehow gets damaged. Specifically, the region from about $D40 to $F80 is different from the corresponding range in the original file. I can avoid this trouble by copying it instead to auxillary location $1000. It seems that everything from this address on up is perfectly safe. This is what I'm doing at the moment, so I can get on with the rest of my otherwise enjoyable project. Nevertheless, the ProDos Technical Reference Manual says (or rather, shows in a graph) that auxillary memory is unused from $800 on up to $BF__. Did I miss something though? I have the Apple //c Technical Reference Manual as well, and it doesn't say there should be any problem either. Anyone have an idea? Thanks in advance, "Phaedrus" ___________________________________________ "May the forces of evil become confused on the way to your house." -- George Carlin Colin Klipsch Indiana University sl109001@silver.bacs.indiana.edu