radical retrofit expands 65c02 architecture

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

tomaitheous
Posts: 592
Joined: Thu Aug 28, 2008 1:17 am
Contact:

Post by tomaitheous »

65024U wrote:I know I own and program on one and know that.....I thought you were talking about the Coco 1 :P XD And the 6309 isn't even as close to the 68000, 16/32 bit @ 8 or so Mhz vs 8-bit @1 Mhz.....no competition. :P
I'm sure he means at the same clock speed.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

65024U wrote:Could this be added to the 65816 or whatever the SNES uses?
The 65816 already has much of this in the form of the K (program segment), B (data segment), and D (direct page base) registers and 16-bit X and Y. Besides, there are only two spare opcodes: COP and WDM.
psycopathicteen
Posts: 3001
Joined: Wed May 19, 2010 6:12 pm

Post by psycopathicteen »

65024U wrote:I know I own and program on one and know that.....I thought you were talking about the Coco 1 :P XD And the 6309 isn't even as close to the 68000, 16/32 bit @ 8 or so Mhz vs 8-bit @1 Mhz.....no competition. :P
Can the 68000 shift a register in 1 cycle? No it can't!
Can the 68000 multiply in 10 cycles? No it can't!
Can the 68000 add an immediate in 2 cycles? No it can't!
3gengames
Formerly 65024U
Posts: 2281
Joined: Sat Mar 27, 2010 12:57 pm

Post by 3gengames »

Lol okay okay....but still it's 16-bit/32-bit. It can move alot more data at a time easily. Not that I've programmed it...but still.



And dang.....only 2 extra opcodes? Darn.... :( Oh well. Still. Yet I say again....amazing. :3
psycopathicteen
Posts: 3001
Joined: Wed May 19, 2010 6:12 pm

Post by psycopathicteen »

65024U wrote:Lol okay okay....but still it's 16-bit/32-bit. It can move alot more data at a time easily. Not that I've programmed it...but still.
6309:

LDQ #$01234567 ;;7 cycles
STQ $00 ;;8 cycles

15 cycles


68000:

MOVE.L #$01234567,(a0) ;;20 cycles

20 cycles
3gengames
Formerly 65024U
Posts: 2281
Joined: Sat Mar 27, 2010 12:57 pm

Post by 3gengames »

Hmmm I guess if you need to. But whatever, I don't really care....I'd take 68000 over it any day but thats just me. :P ^_^



Can't get 6309'sat 3Mz at all IIRC, They're rare. 68000's are everywhere....I have a couple genesis's I could gut for them too. :P
User avatar
Dr Jefyll
Posts: 5
Joined: Mon Sep 06, 2010 7:14 pm
Contact:

Post by Dr Jefyll »

psycopathicteen wrote:Can the 68000 shift a register in 1 cycle? No it can't!
Can the 68000 multiply in 10 cycles? No it can't!
Can the 68000 add an immediate in 2 cycles? No it can't!
Heheheh... I'm a big 6309 fan, too. I've only ever coded for 6809, though. 68000 looks nice; I wanna try that as well.

But as for all the jousting over clocks and relative performance of different chips, wouldn't it make sense to bear in mind how many clocks are required for a bus cycle -- ie, to access memory? It doesn't impress me one way or the other if a chip's crystal frequency is high or its clocks-per-op are low. A more meaningful measure is, "how fast will it run using a given memory system -- one with 100 ns access, for example. (We were having a similar discussion over on 6502.org. Another proposed metric was, "how fast will it run using a given amount of power?")
clueless wrote:Heading back on topic...

The only thing even remotely like [the KimKlone] that I've come across was a guy who built a dual-processor 68B09E computer.
It's pretty weird that you'd say that, Clueless. The last computer I built before the KimKlone was almost exactly like what you describe! I couldn't get my hands on '09Es, though, so I used a pair of non-E chips.

There was a 64KB DRAM array -- 64K-by-1 chips were new at the time! -- and instead of 2:1 multiplexers (eg 74257) for Row & Column it had 4:1 mux's to take Row & Column addresses from each CPU in turn. The memory ran at 3 Mhz; the CPUs at 1.5. How times have changed! Nowadays it'd be absurd to imagine main memory running TWICE AS FAST AS THE CPU!!!

Back on topic, as you say... (well, close at least!) -- check out these links. Here's a guy who, like me, saw hardware potential in the 6502 SYNC pin. It's very powerful to latch the same instruction that the CPU is latching!! But Jorge took the ball and ran in another interesting direction, quite different from the KimKlone.

http://homepage.mac.com/jorgechamorro/a ... index.html
http://forum.6502.org/viewtopic.php?t=1160

Cheers,

Jeff
3gengames
Formerly 65024U
Posts: 2281
Joined: Sat Mar 27, 2010 12:57 pm

Post by 3gengames »

I am pretty sure Coco 1 & 2 used 6809E's...especially since there is a "high speed poke" that increse the CPU speed. So go buy some trash ones somewhere and part them out if you'd need some. :) Just saying, top give an idea of where to get them. ^_^


Also.....the way 6809 works with the Y register is to add a $10 (IIRC) in front of a X register instruction. If the 65816 has 2 other opcodes unused, could you double the registers by just taking that and adding it in front of every instruction to reverse the registers used in the instruction to a extended register set to double the registers on the chip? I am understanding how this works, right? XD
User avatar
Dr Jefyll
Posts: 5
Joined: Mon Sep 06, 2010 7:14 pm
Contact:

Re:

Post by Dr Jefyll »

3gengames wrote:Lol this project is like a 6809-6309 equivalent, I wish this was on a chip....
Meaning that the Kimklone upgrade to 6502 is comparable to the 6309 upgrade to 6809? Interesting comparison. BTW it would've been nice to implement the KK as a chip, but unfortunately CPLDs and FPGAs didn't exist back then!

On a side note, apparently in 1978 Hitachi and Motorola set up a technology sharing deal which resulted in a huge improvement to Motorola's at-the-time inferior wafer fab process. As for the 6309, you'd almost wonder whether it was Hitachi's way of once again demonstrating their sophistication! The technology sharing agreement is discussed in this Oral history of the 68000.
clueless wrote:I think that the KimKlone was a really neat idea. The design seems really nifty. Definitely ++ geek points.

The only thing even remotely like it that I've come across was a guy who built a dual-processor 68B09E computer. [...] The CPUs shared ROM and most RAM, but did have a small, per-CPU RAM bank (for stack and private vars).
I mentioned having built a dual 6809 computer myself, and recently I finally got around to documenting the project online.
6809 computer block diagram.gif
FWIW there is no private memory space for either CPU, but the address map is distorted in a way that allows each CPU to have its own unique interrupt vectors.

In closing, two quick notes: Last summer I posted a one-page summary of the KK Computer.
KK_block_diagram_simplified.gif
Also, there's a new web site and forum now online, set up by some of the folks from 6502.org. Please check out anycpu.org :D

cheers,
Jeff
http://LaughtonElectronics.com
Post Reply