Introducing: Dragon multi-cartridge for roms

Hardware Hacking, Programming and Game Solutions/Cheats
User avatar
Rolo
Posts: 228
Joined: Sun Feb 10, 2013 7:36 pm

Introducing: Dragon multi-cartridge for roms

Post by Rolo »

Hi guys,
I just wanted to show you the just finished prototype of my Dragon multi-cartridge (we were discussing it a few month ago). :mrgreen:
You'll probably won't like the design, because it's plain green, but that was the cheapest solution (and a can of paint is easy to obtain). And back in the day PCBs were brown or green, sometimes blue. ;)
CIMG4896.JPG
CIMG4896.JPG (867.63 KiB) Viewed 6996 times
The board can be populated with 27(C)256 or 72(C)512 EPROMS and is therefore offering 16 or 32 8k game slots.The slots are selected by a combination of an hexadecimal rotary switch (slot 0 to 15) and an additional simple switch (slot 16 to 31) in case of the 72(C)512 EPROMS. The EPROM type is defined by setting two jumpers on the board.
It looks like that:
CIMG4903.JPG
CIMG4903.JPG (625.14 KiB) Viewed 6996 times


And the solder side:
CIMG4902.JPG
CIMG4902.JPG (433.67 KiB) Viewed 6996 times
Most of the cartridges seemed to be 8k, so I did not bother to also implement 4k banks. In that case I simply waste the upper 4k :oops:.
I tried the ROM-images of the download section of the archive like Berserk, Metioroids, Cave Hunter, Diagnostic, Edit+, Dasm Demon... and, that's funny, even Color Backgammon of the Tandy section. They're all working fine!
Question to the Dragon-specialists: Does anybody have a listing of all the Dragon-compatible Tandy cartridges? Was Color Backgammon just a lucky draw or are most of the ROMs working? :?:

What is still missing? Well, it's a prototype and not perfect:
1. No housing and the board is quite heavy. The form factor was dictated by the layout program and the price scheme of the PCB maker. And I never had a Dragon cartridge. So I do have no sample.
Solution: I'm going to mount the PCB on an aluminum plate with spacers in between. That worked perfectly with the LAFUMAT disk controller:
CIMG4904.JPG
CIMG4904.JPG (147.56 KiB) Viewed 6996 times
2. The cartridge is almost swallowed by the giant cartridge bay of the Dragon and the rotary switch is right at the edge of the housing. I did underestimate this, when I designed the board. It takes very tall and slim fingers or a small screw driver for turning the rotary switch, when the cartridge is attached.
Solution: Hmm, there is no simple solution. Using a screwdriver, pulling the cartridge, selecting and reinserting, or redesigning part of the board (quite some work: its crowded and only two layered)
CIMG4898.JPG
CIMG4898.JPG (442.83 KiB) Viewed 6996 times
3. Minor PCB errors: one line is missing, two vias were not drilled (edge connector, Q<->CART, GND<->GND), I forgot 4 resistors, some labels on the silk layer are not accurate.
Solution: Those are easy to repair manually. At the moment I have 10 PCBs on my desk. I've already changed the design-files. So, if there ever will be another PCB order, those flaws will be gone.

That's all for tonight!
Regards!
Last edited by Rolo on Wed Oct 16, 2013 1:21 pm, edited 2 times in total.
sixxie
Posts: 1346
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

Re: Introducing: Dragon multi-cartridge for roms

Post by sixxie »

Nice. Despite your caveats, it's good to do anything, even a prototype. It's still going to be useful, eh?
Rolo wrote: Question to the Dragon-specialists: Does anybody have a listing of all the Dragon-compatible Tandy cartridges? Was Color Backgammon just a lucky pull or are most of the ROMs working? :?:
Quite a few Tandy carts will run on the Dragon, but not vice-versa. Tandy seemed to encourage use of the indirect jump table at $A000- so that the ROM could change, and this table is also present in the Dragon ROM. Even Dungeons of Daggorath seems to work!

Most Dragon carts I've looked at use the additional Dragon-specific jump table at $8000-, which is fair enough, but I'm sure I remember some also made direct calls straight into the middle of BASIC. Would have been annoying for backwards compatibility, had Dragon Data got much further...
User avatar
Rolo
Posts: 228
Joined: Sun Feb 10, 2013 7:36 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rolo »

Aha, thanks for the quick reply!
So I will just go on trying some of the rom images from time to time and hope and see...
Rink
Posts: 236
Joined: Mon Sep 05, 2011 7:01 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rink »

That's cool.

I like the way you've approached this. I remember considering doing the same project and the straightforward approach of switching ROMs using a rotary switch wouldn't have occurred to me, but was clearly a good option.

Aside from the cost of ROM chips, has this worked out to be a particularly cost-effective solution? The PCB can't have been cheap but the other aspects of your design seem to suggest it wouldn't be massively expansive.

Great work!
User avatar
Rolo
Posts: 228
Joined: Sun Feb 10, 2013 7:36 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rolo »

Thanks Rink!
Well, I did not think of costs in the first place. I built the whole thing around old components, I had in the drawer. You can see that, if you look at the eproms (quite old NMOS chips), which I pulled off some old PC boards or something, time ago. But they are not extremly expensive: 27C256 are about 2.50€ and 27C512 around 5€. Used chips can be found for lower price on ebay.
  • So the four eproms are around 10 to 15 bugs.
    I could not get any hexadecimal seven segment drivers (just BCD types) or double segment drivers like the TDA 4092 anymore (many of the good old ttl circuits are gone :( ), so I used a PIC (16F1826) micro controller (about 1€).
    And a 74HCT139 demux (1€).
    The display is about 3€.
    The board: I got 10 boards for something like 30€ or 35€ (incl. shipping). So 3.50€ for one PCB.
    Sockets, switches, passive components, maybe 5€.
All in all about 30€ ... 40€ for the components of one board, depending on the size and price of the eproms, if I got it right.
Ok, I could drop the display, that's luxury and not necessary. Would save 5€. But I like it.
I could have used eproms with more memory (more cost efficient). But those were the ones I had and I did not find too many rom images anyway. I was thinking, one or two boards would probably be enough. It's just a hobby project, not a mass production cartridge. Most important: I'm happy that it works :|. (No stupid, hidden flaw).
Rink
Posts: 236
Joined: Mon Sep 05, 2011 7:01 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rink »

Oh I know mate, was just curious about the costings - balancing the spend on an improvement against the actual cost of the machine you're plugging it into is fun. :)

But designing a circuit pre-dominantly around what you have in your drawers is even cooler. :)
User avatar
Rolo
Posts: 228
Joined: Sun Feb 10, 2013 7:36 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rolo »

Yeah, the whole thing is funny, or maybe crazy? The most expensive part of my Dragon is the floppy emulator. And the display driver of the cartridge is more powerful, than the Dragon computer itself.
By the way, I just bought 16 eproms (C512) for 2.15€ each on ebay. So I'm going to build another four cartridges (32 slot type). I've not tried the big eprom configuration, yet.
Should be enough cartridges for the moment :D .
User avatar
Rolo
Posts: 228
Joined: Sun Feb 10, 2013 7:36 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rolo »

Update on the multi-cartridge :

I've learned, that not all programs are thought to be auto-started. Some development tools need a CLEAR x,y first, like the 6809 Editor Assembler or Dos Dream of M.J. Kerry. Compusense's Demon refuses to autostart. I could add an autostart disable switch or simply compile a special development cartridge without autostart at all and maybe only a single eprom, if those are the only programs that are affected.

I've made another two cartridges. I tested the configuration with the "big" eproms and 32 game slots. Works without problems. :D No design mistake.
I downloaded roms from the coco section and programmed 32 of them into the eproms. All in all it looks quite good, most of the programs are running. I don't know the programs, so in some cases the problems might be my fault.

:!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!:
list of cartridges updated Jun-04-2014:

I put the list into a separate post at the end of the thread

:!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!: :!:


[The RAM diagnostics don't seem to work. I don't get any error messages or ok messages, simply strange screen patterns, but I don't think I have real RAM problems. Maybe it has something to do with my 32k -> 64k upgrade(?).]

This is better than expected and proofs, that the multi-cartridge can be a useful extension: Press & hold reset button, select game, release reset button. Program is on screen instantly, no loading, no waiting, comfortable.

I noticed, that there are some rom-images larger than 8k. I thought that this would be the limit. Obviously not on the Coco, which has the same cartridge port. I found some documentation about and schematics of the CoCo cartridges, stating that they can use up to 64k using two memory chips. I think, pin 40 must be considered. If there is no difference in the circuitry, Dragon must be able to externally use more memory, too. If so, I probably will have to change the design of a future version of the cartridge. Maybe sometimes, but probably not in the near future....
I'll keep on updating...
That's all folks!
Last edited by Rolo on Wed Jun 04, 2014 10:34 am, edited 14 times in total.
Rink
Posts: 236
Joined: Mon Sep 05, 2011 7:01 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Rink »

Missed the part earlier about not liking the design because it's green :D Nothing wrong with green mate - I always question whether I'm being stupid paying extra to get black soldermask since the colour doesn't help it work any better ;)

All looking good here.

Personally, I'd just go with an autostart disable switch/jumper which can be set when you know you have ROMs on there which won't like autostarting. I can see that in practice, I'd end up leaving autostart disabled since it's not much of a hardship to type EXEC &HC000. In fact, for something like this, autostart is possibly an annoyance - since I could see me putting my four most used ROMs on there, and then not wanting to remove the cartridge on the occasions when I want to load something from tape.
Alastair
Posts: 669
Joined: Fri Jul 18, 2008 11:33 pm

Re: Introducing: Dragon multi-cartridge for roms

Post by Alastair »

Rolo wrote:Compusense's Demon refuses to autostart.
It doesn't autostart, you invoke it with EXEC &HC000. The manual is not yet in the downloads section but it is available from the uploads section of the forum.
Post Reply