Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!indri!dogie.macc.wisc.edu!uwvax!puff!cat28!blochowi From: blochowi@cat28.CS.WISC.EDU (Jason Blochowiak) Newsgroups: comp.sys.apple Subject: Re: JMP/JML revisited... Message-ID: <2762@puff.cs.wisc.edu> Date: 11 May 89 00:15:41 GMT References: <8905101021.aa15777@SMOKE.BRL.MIL> Sender: news@puff.cs.wisc.edu Reply-To: blochowi@cat28.CS.WISC.EDU (Jason Blochowiak) Organization: U of Wisconsin CS Dept Lines: 28 In article <8905101021.aa15777@SMOKE.BRL.MIL> JWANKERL@UTCVM.BITNET ("Josef W. Wankerl") writes: >I didn't mean JML... I meant BRL. (They both have L so I guess that's >what messed me up. I have it straight when I program... :-) > >They're both 3 byte instructions, but is there any difference in >execution time? On range? According to Leo J. Scanlon's _Apple IIGS Assembly Language Programming_, a BRL takes 3 cycles, and a JMP Absolute also takes 3 cycles. I've learned not to trust the book, but this seems reasonable. Anyways, it would seem that their range is exactly the same, it's just a matter of how one gets to the destination - by using an absolute, or by using a relative address. The BRL won't require an entry in the relocation dictionary, but the JMP will - then again, I don't think this is a real consideration while coding, unless you're REAL tight for memory. Obviously, BRL is relocatable, so you can use it in a chunk of code that will move around after being loaded (btw, there's a neat "relative JSR" that can be done with a PER and a BRL - I think it's PER #2, but I'm not sure). So, I suppose BRL has the advantage when you're within your own code, but isn't much good for calling ROM locations (which would only be useful in ProDOS 8 programs, methinks) or a fixed address in your code (which seems pretty daft, seeing as the relocator exists). > -Gonzo ------------------------------------------------------------------------------ Jason Blochowiak (blochowi@garfield.cs.wisc.edu) "Not your average iconoclast..." ------------------------------------------------------------------------------