6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Thu Nov 14, 2024 1:40 am

All times are UTC




Post new topic Reply to topic  [ 30 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Tue Dec 22, 2009 10:40 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10977
Location: England
I've been working with richarde over the last year and a half on various evolutions of an idea to build something meaningful with a 65816 and a BBC micro. For various values of work, and meaningful.

I'm in the process of putting together a website, but meantime this gallery should give an idea of what we've been up to.

I've done the minority of the work, but it's a joint effort, and we've helped keep each other interested in the project. Now we've reached the stage of a CPLD on PCB we (ahem, mostly richarde) can tweak the logic in a matter of minutes without any desoldering or even de-socketing - we've several ideas of where to take this. Compared to breadboard or verowire, it's ... well, it doesn't compare.

This topic, then, for questions and comments about the project and (soon) the website.


Top
 Profile  
Reply with quote  
PostPosted: Wed Dec 23, 2009 2:03 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8483
Location: Midwestern USA
BigEd wrote:
I've been working with richarde over the last year and a half on various evolutions of an idea to build something meaningful with a 65816 and a BBC micro. For various values of work, and meaningful.

You must be wait-stating the bejesus out of that thing to accommodate all that old logic. :)

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Wed Dec 23, 2009 2:35 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10977
Location: England
BigDumbDinosaur wrote:
wait-stating


Not at present. We switch between clock domains - the 128k on-board RAM and the CPLD internal resources are clocked at full speed, which is 8MHz now and might go a bit higher but is limited by the RAM. The beeb host computer whose CPU socket we occupy is clocked at the original 2MHz, slowing to 1MHz for peripheral accesses.

We may yet add an i2c eeprom, or other mass storage, and would expect to use RDY to access that, or to stall the CPU while we DMA.


Top
 Profile  
Reply with quote  
PostPosted: Thu Dec 31, 2009 5:04 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10977
Location: England
It took me a while, but I've got a first pass at our project website now - it's a bit thin, so any suggestions on more content are welcome.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Jan 01, 2010 12:06 am 
Offline

Joined: Mon Mar 02, 2009 7:27 pm
Posts: 3258
Location: NC, USA
... Added to favorites. Very interesting... Still checking it out.

_________________
65Org16:https://github.com/ElEctric-EyE/verilog-6502


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Jan 01, 2010 1:37 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8540
Location: Southern California
Quote:
... Added to favorites.

Ditto here (except in my Firefox running under Linux, they're called "bookmarks".) Make sure Mike Naberezny puts up a link to it on the website.

In the "why the 65816" page, I would add to the benefits that it has more instructions and addressing modes. The '816 does not clock quite as fast as current-production 6502's though. As for the "downsides" mentioned, the banked memory (and high byte latching or decoding) is irrelevant if you only use bank 0 (but the '816 still has a lot of advantages over the '02). I find the '816 much easier to program, but I don't have to go in and out of emulation mode since I'm not using a commercial '02-oriented machine with '02 routines in the ROM. I just go into native mode and stay there.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Jan 03, 2010 2:08 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8483
Location: Midwestern USA
GARTHWILSON wrote:
Quote:
... Added to favorites.

Ditto here (except in my Firefox running under Linux, they're called "bookmarks".)

A pox on Microsoft and their non-standard, herpes-infested software. :) BTW, I have some bookmarks in SeaMonkey pointing to government websites. Not exactly what I'd call "favorites!"

Quote:
In the "why the 65816" page, I would add to the benefits that it has more instructions and addressing modes.

Especially the very useful stack relative mode—makes parameter passing via the stack relatively painless..

Quote:
The '816 does not clock quite as fast as current-production 6502's though.

Very minor limitation, in my opinion. What the '816 can't do in terms of ultimate clock speed it more than makes up for in the rapidity of 16 bit loads and stores, as well as the much tighter code that can result from 16 bit memory indexing.

Quote:
As for the "downsides" mentioned, the banked memory (and high byte latching or decoding) is irrelevant if you only use bank 0 (but the '816 still has a lot of advantages over the '02).

The bank latching is probably no muy importante if using a PLD to handle bus logic.

The '816 has so much more to offer that I find it hard to even justify a new '02 design. The cost difference between the two MPU's is very small, and even if the target system will never use more than 64K of RAM, the enhanced instruction set of the '816 makes it much easier to do a lot of things. Plus, how about that 16 bit stack pointer and ability to assign multiple zero pages? :D

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Sun Jan 03, 2010 2:12 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8483
Location: Midwestern USA
BigEd wrote:
It took me a while, but I've got a first pass at our project website now - it's a bit thin, so any suggestions on more content are welcome.

Interesting site but tough for these old eyes to read. It appears in viewing the home page's source code that the font sizes are being defined in pixels. That has the regrettable action of causing the font to shrink as resolution increases. I'm running here at 1980 x 1020 and your page's text is borderline unreadable for me. I find myself reaching for [Ctrl-+] too often.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Jan 03, 2010 3:37 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8540
Location: Southern California
Quote:
Quote:
The '816 does not clock quite as fast as current-production 6502's though.

Very minor limitation, in my opinion. What the '816 can't do in terms of ultimate clock speed it more than makes up for in the rapidity of 16 bit loads and stores, as well as the much tighter code that can result from 16 bit memory indexing.

The comment was in response to where the web page said, "And it clocks a lot faster than 80's-era 6502s." Although that's true, the 80's-era 6502s didn't clock nearly as fast as current-production 6502s. However my '816 Forth does run 2-3 times as fast as my '02 Forth at a given clock speed; so yes, the '816 is faster, even if the clock speed maxes-out a little lower.

Quote:
Quote:
It took me a while, but I've got a first pass at our project website now - it's a bit thin, so any suggestions on more content are welcome.

Interesting site but tough for these old eyes to read. It appears in viewing the home page's source code that the font sizes are being defined in pixels. That has the regrettable action of causing the font to shrink as resolution increases. I'm running here at 1980 x 1020 and your page's text is borderline unreadable for me. I find myself reaching for [Ctrl-+] too often.

I always go up one step in size with <Ctrl>+, not because of my eyes, but because of my monitor, and also the fact that the video signal is blurred slightly by going through two cables and a switchbox so I can have two different computers on the same monitor and go back and forth with the switch box. Too many people, even the pros at big companies, forget that some people might need to do something like this, and they make their websites such that when you turn the text size up, things start stepping on each other. I didn't see any of that on the Beeb816 website though.

Quote:
The bank latching is probably no muy importante if using a PLD to handle bus logic.

It's just as easy with a '573, but you don't even need that if a 64K memory map is enough for the application.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Jan 03, 2010 2:07 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10977
Location: England
Thanks for your comments everyone.

On the topic of 65816, I'm in two minds as to whether to address the global question or the questions arising specifically from the intent to upgrade a BBC micro. I've tweaked my posting, and also incorporated Garth's input as a comment... which leads me onto...

I'm using google sites, which made everything rather easy and hopefully cross-platform and usable, but doesn't give me fine control of every aspect. So, if you see a systematic presentation problem, I can only suggest you adjust your browser. See here for a tip on per-site adjustments. (If I've anywhere specifically chosen a bad font or size please PM me with details.)

The other thing about Google sites is that it has not-quite-useful support for comments on postings. If anyone would like to post a comment, just PM me an acceptable comment(!) and I'll post it.

More on-topic, our Eagle project and netlist is now downloadable if anyone is interested. We don't have a schematic, but the connectivity is in the layout and also expressed in the textual netlist files. All the interesting stuff, and the several ideas for enhancements, are inside the CPLD. Also, hopefully, that's where we put the bugs.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Jan 03, 2010 2:31 pm 
Offline

Joined: Wed May 20, 2009 1:06 pm
Posts: 491
It is an interesting project. Is the hardware timer something that others can buy off the shelf?

I'm interested in making a SBC but cost, time and availability of parts are what I'm looking at as well as several projects that others have.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Jan 04, 2010 10:59 pm 
Offline

Joined: Sun Dec 20, 2009 8:48 pm
Posts: 3
Hi Chuck, all

ChuckT wrote:
It is an interesting project. Is the hardware timer something that others can buy off the shelf?


Which timer were you thinking of?

The BBC has a custom ULA on the motherboard which takes in the 16MHz master clock and derives 8, 4, 2 and 1MHz clocks mainly for video use. The 2 MHz is also used as the 6502 CPU clock and stretched to 1Mhz for peripheral accesses by other 74 series logic on the motherboard.

On our card we use a CPLD to switch between the 8Mhz clock and the original CPU clock. We did have a similar, though not identical, system working in 74 series logic on a verowire card on an earlier proto.

ChuckT wrote:
I'm interested in making a SBC but cost, time and availability of parts are what I'm looking at as well as several projects that others have.


I've long been interested in building my own computer, but it always seemed too much like hard work to do the whole firmware and hardware all in one go. Building the 65816 into an old 6502 system has its limitations, but has proved to be a pretty good way of getting going.

bye

Rich


Top
 Profile  
Reply with quote  
 Post subject: Elite running on 65816
PostPosted: Mon Jan 18, 2010 7:52 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10977
Location: England
I haven't written it up yet on our website, but we've now seen Elite
Image
running on two of our 816-upgraded Beebs. (Yes, that's hidden-line-removed 3D space trading and combat on a 2MHz 32k RAM 6502 machine! Massive credit to Braben and Bell.)

This tells us that both the game and the (1770) disk filing system are compatible with the 65816 emulation mode. (The 8271 disk filing system seems not to be.)

There isn't any performance difference because we haven't yet implemented the feature to accelerate host RAM accesses. I'm hopeful that Elite is well enough architected to run more smoothly but at the proper rate if it finds itself on a faster CPU.

We'll try to get our own screendump too.

PS. If Ian's site design didn't cause enough eyestrain, try reading the Elite sources - that's 6502 assembly embedded in BBC Basic, squashed down to be usable on a 32k development platform.


Last edited by BigEd on Thu Jan 19, 2017 8:55 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject: Beeb at 17MHz
PostPosted: Wed Jan 27, 2010 10:08 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10977
Location: England
we had a bit of a breakthrough a few days ago: mapping the host RAM into our on board RAM we were finally able to run with any clock, up to 17MHz max! That's out of spec, of course.

Shortly after that, we added mapping of the BASIC ROM, and, running at 12.5MHz we measured a 6x speedup over the normal 2MHz machine.

We still had a little instability which we're investigating, but we found that mapping the OS ROM in acts as a workaround - all 64k of the host memory space is now in fast on-board RAM, expect the 3 pages of i/o space. We map in just one of the sideways ROMs - normally BASIC.

We still get video output, because half the RAM is mapped for reads but shadowed for writes. It's still a beeb, not an SBC.

Soon we'll find out how Elite runs on a 12MHz 65816 BBC model B!


Top
 Profile  
Reply with quote  
 Post subject: Re: Beeb at 17MHz
PostPosted: Thu Jan 28, 2010 8:12 pm 
Offline

Joined: Tue Sep 24, 2002 4:56 pm
Posts: 50
Location: Essex, UK
BigEd wrote:
Soon we'll find out how Elite runs on a 12MHz 65816 BBC model B!


Hmm... I can get what I think will be a similar effect by cranking "BeebEm" up to its "x5" or "x10" setting - unplayably fast! :shock:

If you _do_ get Elite running, it might be fun to video it and stick it on, say, YouTube :lol:

--Martin

_________________
Martin Penny

.sig in beta - full release to follow.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 30 posts ]  Go to page 1, 2  Next

All times are UTC


Who is online

Users browsing this forum: Google [Bot] and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: