SAMx8: Dragon 64 512K expansion

For the discussion of all hardware related topics.
Post Reply
sixxie
Posts: 1435
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

SAMx8: Dragon 64 512K expansion

Post by sixxie »

I decided to see how much you could squeeze out of the same CPLD I used in the SAMx4. This was the result.
(I am particularly happy with pages 4 & 5 of the manual ;))

So far I have mostly just been playing Donkey King at double speed which is quite fun, but I've also filled all 512K with a pattern and scrolled through it - which takes about 5½ minutes!

Because it's a small CPLD and I'm not shifting page registers out to extra fast SRAM, the page size is a quite coarse 16K, but with a COMMON flag that fixes the top 8K (and IRQ vectors in RAM) in place in case you want a smaller "kernel" which might make up for that a bit. Basically I've been nosing around the Fuzix source, and this felt like it might be a good fit...

Very much only for the PAL Dragon 64 because it needs to plug into TWO sockets on the motherboard. Even the Tano has a different layout, so you can't use it with one of those.

As usual the JLCPCB minimum order means I have some spares - if anyone's interested (with the important caveat that it involves replacing a chip on the motherboard with a socket), I'll come up with a price for them, but maybe after I've written something a bit more diagnostic-ey to test beforehand!

FWIW even though it ditches some SAM features and tweaks others, Phill's diag cart is still happy with the result :)
Last edited by sixxie on Fri Mar 28, 2025 5:29 pm, edited 1 time in total.
pser1
Posts: 1787
Joined: Sun Mar 25, 2012 7:32 pm
Location: Barcelona (SPAIN)

Re: SAMx8: Dragon 64 512K expansion

Post by pser1 »

this is a very interesting project!
Nice work of yours, as usual, congratulations!
I will be keeping an eye on this project. I am really interested in a 'big' RAM expansion with MMU for the Dragon 64
This monster could led to new ideas used together with the Supersprite-FM+ module. Let's dream!
cheers!
sixxie
Posts: 1435
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

Re: SAMx8: Dragon 64 512K expansion

Post by sixxie »

Soldering up the Supersprite board is on my todolist - then I'll finally be able to play some of the things you've been working on!

I'll report back whether they work together, but can't think of any good reason they wouldn't :)
pser1
Posts: 1787
Joined: Sun Mar 25, 2012 7:32 pm
Location: Barcelona (SPAIN)

Re: SAMx8: Dragon 64 512K expansion

Post by pser1 »

sixxie wrote: Fri Mar 21, 2025 10:19 pm Soldering up the Supersprite board is on my todolist - then I'll finally be able to play some of the things you've been working on!
Most of the things I have done could be executed in MAME. The only things that cannot be 'emulated' by now are all the music and graphics programs that do 'stream' right from the CoCo-SDC. I think that this is not yet allowed in MAME ...
I'll report back whether they work together, but can't think of any good reason they wouldn't :)
Neither can I, being one an external module and the SAMx8 an internal RAM expansion, they should never collide.
Having the bonus of double speed with no restrictions besides the paging possibilities must be very useful even for the AGD engine for the V9958!
cheers!
sixxie
Posts: 1435
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

Re: SAMx8: Dragon 64 512K expansion

Post by sixxie »

FYI I've pushed out RC4 - pretty sure this is "finished", just need a test suite.

While I doubt anyone built one yet, on the offchance they did, all you need to do is reprogram the CPLD.

Various timing changes, but the major programming difference is that you can now nominate one of both of the top 4K areas to be COMMON, instead of just a blanket 8K select. This actually works nicely for Fuzix, which only requires 4K to hang around, and means maximum user process size grows to 60K :)
sixxie
Posts: 1435
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

Re: SAMx8: Dragon 64 512K expansion

Post by sixxie »

The dev branch of XRoar has SAMx8 support in it - just run selecting a Dragon 64 with 512K of RAM:

Code: Select all

xroar -m dragon64 -ram 512
Snapshots here:

https://www.6809.org.uk/tmp/xroar/

In the same directory, I've adapted Stewart's memory tester for it: https://www.6809.org.uk/tmp/xroar/memtstx8.tar.gz for which source here: https://gitlab.com/sixxie/memtstx8

I've been pushing out a branch for Fuzix support in my fork here https://github.com/six809/FUZIX - check out the "samx8" branch. Don't be surprised if history for that branch shifts and changes at random :)

Edit: ok, here's the boot loader: https://gitlab.com/sixxie/fzload09

Further edit: whoops, realised the boot loader used an fdisk tool I hadn't packaged. Don't really know where to put it, so for now it's here: http://www.6809.org.uk/tmp/xroar/yafdisk.pl
Post Reply