acmfiu@serss0.fiu.edu (ACMFIU) (05/28/91)
someone want to explain to me why the MVN/MVP instructions don't restore the data bank register? (yes, i'm moving data in different banks). albert
ujmurphy@KING.MCS.DREXEL.EDU (Jim Murphy) (05/30/91)
albert recently asked: >someone want to explain to me why the MVN/MVP instructions don't restore >the data bank register? (yes, i'm moving data in different banks). Well, because they don't. The instruction set reference plainly states that the data bank register holds the destination bank value when these instructions are finished. If you'd look at the detailed instruction operation listing in the '816 data sheet, you can see it there too. Is a PHB/PLB sequence too difficult? Jim Murphy "I know that you believe you understand Internet: ujmurphy@mcs.drexel.edu what you think I said. But I am not sure GEnie: J.MURPHY7 you realize that what you heard is not AOL: Jim Murphy what I meant."
toddpw@nntp-server.caltech.edu (Todd P. Whitesel) (05/30/91)
acmfiu@serss0.fiu.edu (ACMFIU) writes: >someone want to explain to me why the MVN/MVP instructions don't restore >the data bank register? (yes, i'm moving data in different banks). Because. No explanation was given in the 65816 data sheet, although I suppose it could be argued that the data bank is set to the destination data so you can use absolute addressing on it right away... I think the real reason is that there only one temporary bank latch, so the other one ended up being the data bank register. What's stupid is that there "should" be a way to do it without modifying the data bank register. It has been speculated that the MVP/MVN instructions were originally different and somewhat useless instructions, and that Mensch hacked in the move code at the last minute -- this would easily explain the 7 cycle/byte timing (the instruction is fetched repeatedly for each byte copied -- blech!) and the side effects. Besides, it took them long enough to get the original 65816 ready (the GS ROM 00 was tested with 65802's because they were all that was available -- evidence of this is buried in the softswitch list in the firmware ref). Todd Whitesel toddpw @ tybalt.caltech.edu
jb10320@uxa.cso.uiuc.edu (Jawaid Bazyar) (05/30/91)
toddpw@nntp-server.caltech.edu (Todd P. Whitesel) writes: >It has >been speculated that the MVP/MVN instructions were originally different and >somewhat useless instructions, and that Mensch hacked in the move code at >the last minute -- this would easily explain the 7 cycle/byte timing (the >instruction is fetched repeatedly for each byte copied -- blech!) and the >side effects. Might the fetch of the instruction over and over be a result of making the MVP/MVN instructions interruptable? >Besides, it took them long enough to get the original 65816 >ready (the GS ROM 00 was tested with 65802's because they were all that >was available -- evidence of this is buried in the softswitch list in the >firmware ref). Amen- it was what, almost three years after the Apple //x rumors started that we finally got the GS? -- Jawaid Bazyar | "Twenty seven faces- with their eyes turned to Graduated!/Comp Engineering | the sky. I have got a camera, and an airtight bazyar@cs.uiuc.edu | alibi.." Apple II Forever! | I need a job... Be privileged to pay me! :-)
acmfiu@serss0.fiu.edu (ACMFIU) (05/31/91)
In article <9105300228.AA00543@mcs.drexel.edu> ujmurphy@KING.MCS.DREXEL.EDU (Jim Murphy) writes: }albert recently asked: } }}someone want to explain to me why the MVN/MVP instructions don't restore }}the data bank register? (yes, i'm moving data in different banks). } } Well, because they don't. The instruction set reference plainly states }that the data bank register holds the destination bank value when these }instructions are finished. If you'd look at the detailed instruction operation }listing in the '816 data sheet, you can see it there too. Is a PHB/PLB sequence }too difficult? } }Jim Murphy "I know that you believe you understand }Internet: ujmurphy@mcs.drexel.edu what you think I said. But I am not sure }GEnie: J.MURPHY7 you realize that what you heard is not }AOL: Jim Murphy what I meant." no, a phb/plb sequence is not difficult. you have no choice, really. but that wasn't my question. i was just curious as to why it has the side affect of not restoring the data bank register. i think it should. albert
ericmcg@pnet91.cts.com (Eric Mcgillicuddy) (06/01/91)
>someone want to explain to me why the MVN/MVP instructions don't restore >the data bank register? (yes, i'm moving data in different banks). > >albert Because it does. It also modifyies the X, Y and A registers. The accumulator is left with a -1 when the instruction completes. It might help if you think of the MVN/MVP as subroutines written in microcode rather than opcodes. UUCP: bkj386!pnet91!ericmcg INET: ericmcg@pnet91.cts.com