2FK8ALIN@UKANVAX.BITNET.UUCP (05/07/87)
Date: Wed, 6 May 87 15:43 CST From: <2FK8ALIN@UKANVAX.BITNET> Subject: Re: 68000 vs. 6502, help with Turbo Basic To: info-atari8@score.stanford.edu X-Original-To: info-atari8@score.stanford.edu, 2FK8ALINE Well, you do have a point about the 8.0 MHz 68000 being near 1.5 times as fast (in instructions per second as a comparison) as a 1.8 MHz 6502. BUT... The original point of the argument was that a 6502 might beat a 68000 at certain tasks given the above clock speeds. Again, not true! As you yourself said, it would be about 1.5 times faster given the data I supplied. I need to clear up another point also. This stuff about averages (in clock cycles) is too misleading. I have the official MC68000 reference card in front of me at this very moment, which includes all clock cycle data. Given direct translation (as near as possible) from 6502 to 68000, there is not a single instruction quicker on the 6502 given the above clock speeds. For instance, look at: 6502 inst. cycles 68000 inst. cycles 68000 speed inc ---------- ------ ----------- ------ -------------- INY 2 ADDQ.B #1, Dn 4 *2.23 JMP abso 3 JMP abso.W 10 *1.34 LDA abso 4 MOVE.W abso.W, Dn 12 *1.49 So, you say, 1.34 times is not very much. But as it turns out, all instruction conversions turn out with the 68000 being faster at 8.0 MHz vs. those on a 1.8 MHz 6502. By simple deduction, then, no task can be faster on a 6502, no no matter how trivial or contrived. You can then take into account the increased power of the addressing modes of the 68000 (and, in fact, other instructions such as the DIVS and MULS, divide signed and multiply signed) and see how a "normal" program, such as a typical game or assembler, would run much faster than 1.5 to 2 times that of the 6502. Need I also mention the ability to use 16 bit and 32 bit quantities with the processor? Or maybe the 8 data registers AND 8 address registers? Compare this to the 6502's 8 bit only quantities and its three 8 bit data registers, which can't even be used in uniform ways (INA does not exist, for instance). By now it must appear that I am a lover of the 68000. Believe it or not, this is not so! I only defend the thing because it is FASTER than the 6502 and it lends itself to more powerful applications such as multitasking/multiuser systems, relocatable coding, etc. So, do I like the 6502 better? Yes, I think so. This is because, I suspect, that I have programmed the little thing since about 1981 (I got my Atari a little before then) and the 68000 does have weaknesses. Some of these are: I. Odd address errors. You cannot put words/longwords on odd byte addresses or a processor trap occurs, meaning program crash (and on the horrible Corvus I have programmed, the system just dies without any diagnostics!) It seems the designer thought that 23 processor pins would do for 24 bit addressing. 8 bit quantities may be put on any address, however. II. Bus access time slow. As I said before, it takes 4 cycles to access memory. It would be sooooo much faster if it accessed every cycle as does the 6502. III. LARGE instructions. The smallest instruction size is 16 bits, the largest is 80 bits (gulp). The 6502 instruction sizes range from 8 to 24 bits. I must admit that I really would love an ST so I do have some divided loyalties, but I have had such a time with my 800 over the years that I can't even think of getting rid of it or giving up on it. -------------------------------------------- Concerning Turbo Basic for the 800: I would really be interested in hearing more about this. Unfortunately, I am just a Kansas University student and my VAX account is about to die. I will be halting my subscription to this newsletter until next year (I am a CS major, so I will get one as soon as next year begins). The point is: is anyone willing to send me information, when found, on how to get it? My home address is: Eric Greene 169 Terrace Trail West Lake Quivira, KS 66106 I would really appreciate it. I look forward to subscribing again next year. ---- Eric Greene