Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!agate!helios.ee.lbl.gov!pasteur!ames!apple!dlyons From: dlyons@Apple.COM (David Lyons) Newsgroups: comp.sys.apple Subject: Re: Computer languages on the various Apple Corp computers Message-ID: <31464@apple.Apple.COM> Date: 23 May 89 23:41:56 GMT References: <2821@puff.cs.wisc.edu> <10204@claris.com> Organization: Apple Computer Inc, Cupertino, CA Lines: 37 In article <10204@claris.com> kevin@claris.com (Kevin Watts) writes: [...] >Sorry, but the 65816 is quite inadequate for high-level languages. The main >problem is it's severe shortage of registers, which is why it's NOT a RISC >chip - they have LOTS of registers. Yes, it does have stackframe support, >but large data sets are extremely cumbersome - anything over 64K requires >struggling like crazy to obtain any sort of reasonable performance, and >because of the bank restrictions even 64K can be difficult to obtain. >Crossing a bank boundary on a 65816 produces very messy code. [...] It isn't all *that* bad...writing in high-level languages is certainly possible. Crossing bank boundaries is not a problem. Code segments can't do it, but data segments can. I really don't like global variables much at all in the first place, so the Bank register doesn't bother me much. I just use long addressing when I really want to use global variables, and that way I don't have to worry about setting it in content-draw procedures, etc. Most of my accesses are to direct page. ('course, in programs with a fairly small amount of code, I just put everything in one segment and set B=K.) My favorite addressing mode, by the way, is [xx],Y. No bank restrictions, just an offset from a 3-byte pointer on direct page. > Kevin Watts ! Any opinions expressed here are my own, and are not > Claris Corporation ! neccessarily shared by anyone else. Unless they are > kevin@claris.com ! patently absurd, in which case they're not mine either. --Dave Lyons, Apple Computer, Inc. | DAL Systems AppleLink--Apple Edition: DAVE.LYONS | P.O. Box 875 AppleLink--Personal Edition: Dave Lyons | Cupertino, CA 95015-0875 GEnie: D.LYONS2 or DAVE.LYONS CompuServe: 72177,3233 Internet/BITNET: dlyons@apple.com UUCP: ...!ames!apple!dlyons My opinions are my own, not Apple's.