Jump to content
IGNORED

[AQUARIUS] Mattel Aquarius Multi-Cart


Recommended Posts

Okay, here's how I spent my weekend:

 

(EDIT: See my subsequent posts for the latest version of the cartridge design)

 

This is my WIP cartridge board layout, which includes only the bankswitched ROM functionality. At this point, there doesn't seem to be enough room on the board to include the RAM and its supporting logic along with all the logic required for the ROM. There's a lot more work I want to do with this, so I might find a way to squeeze it in, but it's starting to look like I might need a separate board for the RAM expansion. That one will be a whole lot easier to design. :)

  • Like 1
Link to comment
Share on other sites

Okay, here's how I spent my weekend:

 

This is my WIP cartridge board layout, which includes only the bankswitched ROM functionality. At this point, there doesn't seem to be enough room on the board to include the RAM and its supporting logic along with all the logic required for the ROM. There's a lot more work I want to do with this, so I might find a way to squeeze it in, but it's starting to look like I might need a separate board for the RAM expansion. That one will be a whole lot easier to design. :)

 

Great googly-moogly that looks awesome. I'm wringing my hands in anticipation.

Edited by the-topdog
Link to comment
Share on other sites

where are you going to get the boards made?

 

estimated cost per board including eprom?

I don't know where I'll be getting them made yet; I need to get some prototypes manufactured and tested, and then I need to shop around to compare prices for a larger production run. I want to get these boards made with the highest-quality workmanship that I can afford: nice solder mask and silkscreen, gold-plated fingers and jumper pads, a beveled edge connector, etc. Even with all that, they shouldn't be more than a few dollars per board if I have them made in bulk.

 

The EPROM price will depend on what size is needed. The board will support up to a one megabyte EPROM (a 27C080), which seems to go for about six to eight dollars each; smaller ones are considerably cheaper. The rest of the hardware (logic gates, resistor nets, and decoupling caps) shouldn't be too bad: probably about $3 per board in all, and you can leave most of it off if you only need a 16K ROM. I've made assembly as easy as possible by using nothing but off-the-shelf, through-hole parts; no surface-mounted components or programmable logic required.

 

Eventually, I want to make these available to homebrew developers who might be interested in making their own Aquarius cartridges. That's one reason I designed the board to support multiple bankswitching modes and multiple ROM sizes: they'll be useful for much more than just the multi-cart project.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Well, about two weeks and four revisions later, I finally have a board design that I'm happy with:

 

cart.png

 

I sent this off for prototyping this morning, so if all goes well, I'll soon be receiving the first new Aquarius cartridge boards to be produced in over twenty-five years. Of course, the first boards are usually somewhat different from the final boards (depending on how the prototypes turn out, I might have to make changes in the circuitry, or the dimensions/layout of the board, or both), but at least this phase of the project is complete.

 

Now, I'll be turning my attention to the software while I wait for the boards to come in ...

  • Like 4
Link to comment
Share on other sites

Well, about two weeks and four revisions later, I finally have a board design that I'm happy with:

 

I sent this off for prototyping this morning, so if all goes well, I'll soon be receiving the first new Aquarius cartridge boards to be produced in over twenty-five years. Of course, the first boards are usually somewhat different from the final boards (depending on how the prototypes turn out, I might have to make changes in the circuitry, or the dimensions/layout of the board, or both), but at least this phase of the project is complete.

 

Now, I'll be turning my attention to the software while I wait for the boards to come in ...

 

**passes out from excitement**

Link to comment
Share on other sites

  • 3 weeks later...

Okay, a few updates today ...

 

proto_bare.jpg

 

This is one of the prototype boards that I (finally) received on Tuesday afternoon. The first thing I did was to try the boards inside all of the various types of Aquarius cartridge shells that I have, and I was delighted to see that they fit perfectly! Because I didn't measure the original boards with anything more sophisticated than a six-inch ruler and lots of eyestrain, I was certain I was going to have to tweak the size or the placement of the holes, the shape of the board, or the placement of the components, but it all fit together seamlessly.

 

Here is my first fully assembled prototype:

 

proto_populated.jpg

 

So far, it works perfectly with standalone 8K/16K games, and it also works with my bankswitched ROM tester. I still have to complete one more revision of the board to fix a few things and to add some features that I really wanted to include from the beginning. I'm also putting together a simple multi-cart menu with a handful of games, so I can test them from within a bankswitched ROM (I'm not expecting any problems here unless they try to write into the cartridge ROM space, which would be very unusual).

 

I have also secured a limited number of Aquarius cartridges, so I will be able to provide (at a reasonable premium) a complete cartridge shell for multi-cart buyers who do not have any extras of their own. I've also been working with some longtime Aquarius collectors to gather supplemental content for the multi-cart, and we've been able to archive some rare game instructions that have never been archived before. Their inclusion in the multi-cart will be the first time these instruction manuals will all be available in one place and in one format.

 

I'll keep everyone posted!

  • Like 3
Link to comment
Share on other sites

I'm still thinking of how to best handle the labels. The ones I made for my switch-based cartridges (pictured earlier in the thread) were just printed on a laser printer and hand-cut. Very plain, but at least I was able to find the exact font that Mattel used in the originals.

 

I'd like to provide a label for people to add to their own cartridges (as Chad Schell did for the CC3), and I'll certainly add one to the full cartridges that I sell. I probably won't need enough of them to justify having them printed and cut professionally, so I'll probably design and print the final labels myself. Either way, I wouldn't charge extra just for the label.

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...

I'm sorry for keeping everybody waiting; I've been very busy with work and with other projects these last three weeks, and I finally found the time to get back to the multi-cart project this past weekend.

 

After I got the prototype cartridge boards in, my first task was to write some software to test the flow of data from the cartridge as it cycled through the ROM banks. What little time I had for the project was spent on that, and since that was the most boring part of all, I'm glad I finally have it done. While I still have more testing to do, I'm pleased to see that the boards have worked exactly as expected. They support all the ROM sizes I wanted, from 16K up to one megabyte, so Aquarius homebrewers will have plenty of room to play with.

 

mctest_board.jpg

 

Once I confirmed that the hardware was working, I proceeded to put together a very very simple test version of the multi-cart software, and I loaded it onto a 128K ROM (pictured above) with a handful of games:

 

mctest.png

 

Right now, you just press the key on the keyboard corresponding to the game you want, and the game runs. I haven't played any of the games for more than a few minutes, but so far, they all work perfectly! After all the work I've put into the project so far, it's especially gratifying to finally see these first versions of the hardware and software completed and working perfectly together.

 

With just a little dressing up (and with the full library of cartridges), this would probably make a perfectly functional multi-cart just as it is. But, as I've said, I want to do a lot more with it: manuals, overlays, and a few other goodies I have in mind. I've used my time away from the project to do some more thinking about it, and I've changed my plans for it a little bit, but I'll talk more about that later.

 

The next steps are to complete my revisions to the cartridge board layout and to have the next--and, hopefully, the last--prototypes made, and to begin designing the final multi-cart software. I still plan to have the multi-cart finished and ready for sale by early fall.

  • Like 1
Link to comment
Share on other sites

I hadn't heard of SDCC, but I have played around a bit with z88dk, and I've managed to put together a few simple "hello world" programs for the Aquarius in C, just to test it. Its support for the Aquarius as a target platform seems to be limited to compiling to cassette tape images, but it shouldn't be too hard to reconfigure it for cartridge binaries. I need to look into that some more, and I'll give SDCC a try as well, because I agree that C would be a very desirable language for Aquarius homebrews.

  • Like 1
Link to comment
Share on other sites

SDCC is used on the Colecovision so it must be possible to make Aquarius carts behave in a similar manner. I think AA member newcoleco (Daniel Bienvenu) would be the man to ask for help on that.

 

Here's an introduction to using SDCC on the Colecovision :-

http://www.colecovision.eu/ColecoVision/development/tutorial0.shtml

 

Daniel's web site :-

http://www.ccjvq.com/newcoleco/

Link to comment
Share on other sites

Thanks. C will almost certainly be my language of choice for future projects, so I'll definitely investigate SDCC further. I've done all my work in assembly so far, and since the multi-cart software is relatively simple, it will probably be most convenient to stick with assembly for this project.

  • Like 1
Link to comment
Share on other sites

Thanks for the update, everything is looking good! I only get on here maybe once I week now but its once of the first things I look up :)

Thanks! I'm glad to know that people are still following the project.

 

A quick update: I mentioned earlier that I wasn't expecting any of these programs to write into the ROM space, but after some more testing, I discovered that several of them actually do. This results in an unexpected bank switch, which of course causes the program to jump into garbage and crash. I haven't determined exactly why they're doing it, but it might have been an attempt to disable pirate copies of the programs running from RAM. To get around this, I make a quick change to the hardware design that allows the programmer to (optionally) change banks in a way that blocks out future changes, and I'm using this new mode of switching to bank in the cartridge that the user selects from the menu. This seems to have solved the problem, and implementing it only added about a nickel to the hardware cost.

 

Here is the latest version of the multi-cart test software (which is now in a 256K ROM so I could test more cartridges). I've tested each one of these programs, and they all work perfectly:

 

mctest2.PNG

  • Like 2
Link to comment
Share on other sites

  • 4 weeks later...

Time for some long overdue updates.

 

First of all, the next (and, hopefully, final) revision of the cartridge board hardware finally went out this morning:

 

aquarius2.png

 

My progress on this has been frustratingly slow over the last six weeks, mainly because I've also been busy building a two-story addition onto our house this summer, so I'm very glad to have this step finished. This new revision integrates the changes I had to make to implement the bankswitching lockout mechanism, along with a few other minor changes (mostly cosmetic) based on my experience with the first prototypes.

 

I mentioned earlier that my plans for the project had changed a bit from my initial conception. In particular, I'm probably going to drop the idea of including cassette conversions. I had originally thought about converting at least some of the Aquarius machine-language cassette programs to run from the cartridge, and since many of them require expanded RAM, I was also thinking of designing a simple 32K RAM module. However, a future project that I'd really like to do instead is to design a cartridge that combines extra RAM with some sort of flash-based persistent storage, which would also be capable of handling cassette tape images. Assuming this comes to fruition, it would make both the RAM cartridge and the cassette conversions obsolete, so I'd rather cancel those and put that effort into the flash cartridge instead, limiting the multi-cart to the Aquarius cartridge library. This also leaves me enough room to include more documentation and extras.

 

Speaking of which, I've also been hard at work gathering supplemental content, with the help of other Aquarius collectors and enthusiasts. I'm glad to say that I've managed to obtain the full manuals for almost all of the released Aquarius cartridges, including such rare ones as Melody Chase and Chess. The only manuals I'm missing at this point are those for the the "edutainment" titles, Space Speller and Zero-In, both of which are exceedingly rare.

 

Here are some of the "exclusives" that I will now be able to include, in addition to the core library of Aquarius applications and games:

 

  • A Y2K-patched version of Biorhythms (courtesy of Martin van de Steenoven) which will allow you to use the program with four-digit dates.
  • A patched version of BurgerTime which removes the extraneous characters in the screen border (this was just a quick hack that I did, and in my opinion, it makes the game a little nicer looking).
  • The 1541 Extended BASIC ROM: In 1988, Ron Koenig designed an Aquarius interface for the Commodore 1541 floppy disk drive. Koenig also included a modified version of Extended BASIC which integrated a series of new DOS commands, along with commands for using the Mini-Expander hand controllers and sound chip, reading and writing to I/O ports, quickly filling the screen with color, and other tasks that previously required the use of assembly language. The DOS functions will not work from the multi-cart, of course, but the other commands will make it easier for Aquarius programmers working in BASIC to get the most out of their machines. The 1541 ROM also includes a simple monitor, useful for dumping/disassembling memory.
  • The Mini-Expander Diagnostic Cartridge: An internal tool used by Radofin to test the Mini-Expander and accessories. It includes tests for expanded RAM cartridges, the AY-3-8910 sound chip, and the hand controllers.
  • The "Aquarius Home Computer System Command Console" Cartridge: the software portion of the first home computer interface developed for X10, an industry standard protocol for home automation (turning electrical appliances on or off, dimming lights, raising/lowering the temperature in a house, monitoring sensors, etc). X10 was originally controlled by dedicated devices, but the Aquarius was intended to be the first computer system to have an X10 interface and control center. The Aquarius was discontinued before the interface could be marketed; the technology was eventually ported over to the Tandy Color Computer instead.

The last two cartridges in this list were dumped by me (for the first time, as far as I know) from a collection of prototypes, while the first two were prepared specifically for this project. In case you're interested, there is a picture (probably a non-functional mockup) of the Command Console interface on the Blue Sky Rangers' Aquarius page, and the Aquarius is also mentioned in this interesting article about the history of X10. In its current form, the Command Console cartridge isn't usable without having the interface connected (it errors out and stops at the title screen), but perhaps its inclusion in the multi-cart will inspire somebody to recreate the interface hardware.

 

So, while I'm waiting for the new boards to arrive, I'm going to turn my attention to the software. I already have a functional bare-bones multi-cart program, so I will be expanding it with a better menu system and with a viewer for the documentation and other materials. I also need to create plain-text versions of the manuals. Because some of them (such as Aquarius Logo) are very long, I might have to limit myself to a command reference or some other subset, but I should have enough room for the full text of all of the game manuals.

  • Like 4
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...