Mega-Cart

Modding and Technical Issues

Moderator: Moderators

Post Reply
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Mega-Cart

Post by 6502dude »

I was accused a few times of hi-jacking the multicart thread with the prototype poject which I have worked on.

Granted, it has evolved from the orginal concepts.

So, I have started this thread for updates on the poject.

I have tested Demon Attack, Atlantis, and Dragon Fire on stand alone (well another home made cart) and they work fine.

However, they do not work okay on Mega-Cart. I have a theory on what the issue is, but need to do some additional testing.

These are the last three ROMs which I do not have a solution for, but hope to soon.
Last edited by 6502dude on Sat Jul 14, 2007 11:19 am, edited 1 time in total.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

When Newtek started working on the video toaster, the name was just a code name until they would find a more suitable marketing title. However, it caught on so bad that in the end they had to sell it under that very name.

The "monster cart" indeed sounds like a very catchy name.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Re: All in one Cart

Post by eslapion »

6502dude wrote:I have tested Demon Attack, Atlantis, and Dragon Fire on stand alone (well another home made cart) and they work fine.

However, they do not work okay on All-in-one-Cart. I have a theory on what the issue is, but need to do some additional testing.

These are the last three ROMs which I do not have a solution for, but hope to soon.
Well, here is my attempt at making a positive contribution to this project...

I read in the programming area that problems arise when games try to poke beyond the color memory area and into the IO2 and IO3 range.

You also specified that your cart is equipped with a couple of flipflops and used as allow/inhibits for various functions such as the RW of the RAM chips, etc.

Do you think it would be possible to use 2 flipflops to altogether allow/inhibit the IO2 and IO3 lines themselves? This inhibiting of the two IO lines could be triggered by the same poke as the software reset.

This way, once a reset has been software triggered, these two lines effectively become "deaf" until a manual reset is triggered to select another game/configuration.

Also, all these 3 problematic games seem to come from Imagic.

As a sidenote, I noticed you are getting tight on space on your proto board and have begun piggybacking your RAM chips and some logic chips. I have a full size Vector 3677 board here. It is 9" long. That's same type of board I had used to make the VIC-scope a long time ago.

It is worth 50$ and I am willing to give it to you if you think it will help this project.
User avatar
hawk
Vic 20 Afficionado
Posts: 342
Joined: Mon Jun 20, 2005 7:32 pm

Post by hawk »

[off-topic]
Sorry that this comment is off topic, but I'm happy to see some positive comments between you two. :)

As much as it can be entertaining watching the to-and-fro'ing, there's always the worry in the back of one's mind that either of you could say, "To h*ll with all" and go and play with another platform. There are some many others to play with out there.

In a hobby where our software continues to get better, but our hardware keeps getting older and older, we need hardware guru's to help us keep them going, and push to boundries. I've only ever had constructive comments from you both about my hardware ideas. And for the most part, I'm only capable of ideas, as I don't have the experience to develop new designs like yourselves.
[\off-topic]

For an on-topic question, you talk about using the IO2 and IO3 lines for controling various parts of your expensions. Is there documented anywhere a list of what the various IO lines/addresses have been allocated to for the various products that have been created over the years?

For example, if you wanted to create a banked memory expansion that was still compatible with say the speech synthesizer. (Not the I know any details of the VIC speech synthesizer.)

--Hawk
Mikam73
2049er
Posts: 1292
Joined: Tue May 18, 2004 4:34 pm

Post by Mikam73 »

By the way.. What means ALL in one cart? Course ALL is quite lot.. :D

Even if there would be all Vic20 carts it would be really amazing.. But if there is also loads of other(tapes) Vic20 games.. Wonder how long menu/list of games there will be.. Guess there will be some submenus or everything at one BIG list..

Amazing project.. 8)
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

I think "all-in-one" refers to it both is a multicart with most (all?) cartridge images, and a memory expansion, and who knows which other Easter eggs are in the planning. Even better if it has a SID socket too. ;-)
Anders Carlsson

Image Image Image Image Image
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

After some discussion regarding paddles games, I thought it best that I got around to testing these more fully on the All-in-one-Cart prototype.

This hardware has been in service, almost without interruption, for 24 hours per day for the past 6 weeks (except for field trip demo last weekend).
No problems have been encountered with reliability, stability, or performance.

In any event, I found some paddles, cleaned the pots, and hooked them up.

After starting the All-in-one-Cart and loading up first game, I thought .... gee now I need to re-install the joystick to slect a diffect game to play.

I had become so accustomed to the easy naviagation with All-in-one-Cart menu that I completely forgot that I could use keyboard cursor keys as well to select games :oops:

All paddle games work great :!:

I had never used paddles before (I don't usually play games).

However, I like game play of Omega Race better with paddles.

Pinball Spectacular and Super Smash are pretty neat games too!
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

For folks which have been following the challenge which I have have had with ROM carts:

Demon Attack
Atlantis
Dragonfire

these carts appear to do a NMI call - $FEA9.

This is based on registers in VIA chips as part of screen set up.

I do not have a solution to this yet, but will work on one.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

6502dude wrote:For folks which have been following the challenge which I have have had with ROM carts:

Demon Attack
Atlantis
Dragonfire

these carts appear to do a NMI call - $FEA9.

This is based on registers in VIA chips as part of screen set up.

I do not have a solution to this yet, but will work on one.
May I suggest a possible avenue for a solution?

Back in 2002, when I made my own first Ultimate Expander on a vector 3677-2 board, I had put a chip on it for 2k for NVRAM available at IO2 and IO3. In this NVRAM chip I put a relocated version of Compute's Gazette turbodisk.

I noticed when using some games (read specifically Demon Attack) that the first few bytes of Turbodisk would always get mangled.

Since Turbodisk did not use the full 2k of NVRAM available, I simply put it at an address 256 bytes higher. This way, the first 256 bytes of NVRAM could receive all sorts of junk with no problem caused to Turbodisk.

This essentially fixed the problem.

Would it be possible for you to put your control registers in a memory area outside the first quarter or half of IO2 ?
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

eslapion wrote:I noticed when using some games (read specifically Demon Attack) that the first few bytes of Turbodisk would always get mangled.

Would it be possible for you to put your control registers in a memory area outside the first quarter or half of IO2 ?
Thanks, but Demon Attack, Dragonfire, & Atlantis so not write to IO2 area.

IO2 problem (which affected Qbert and about 10 other games) was fixed weeks ago.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
MacbthPSW
Vic 20 Afficionado
Posts: 478
Joined: Wed Apr 06, 2005 1:56 pm

Post by MacbthPSW »

6502dude wrote:these carts appear to do a NMI call - $FEA9.

This is based on registers in VIA chips as part of screen set up.
Yeah, they definitely do. Sorry I'm being thick about this, but what's the problem with this happening? I might be able to help more if I obtain a clue :)
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

You indicated that your prototype has the ability to inhibit writing to the 32k RAM expansion.

If your prototype allows for access to ROM on some BLK areas and RAM on others then perhaps it would be possible for you to do the following:

Perhaps it would be possible to copy the game into the BLK5 area of the 32k SRAM then set it to read only then using a switch or software means completely block acces to IO2 and IO3 then invite the user to press the reset button to start the game.
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

MacbthPSW wrote:Sorry I'm being thick about this, but what's the problem with this happening? I might be able to help more if I obtain a clue :)
I still haven't got the knack of using watch comand :oops: , so I single stepped thru code on 17th to find NMI call.

I think, but have not yet confirmed, that the NMI call is causing a reset.

Copying code from ROM to RAM and doing write line inhibit will not resolve the problem as reset line causes toggle to and from menu.

I could perhaps do a hardware mod to prevent this, but would like to get to the bottom if the reset occurs only after first of game or happens throughout.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

Demon Attack, Atlantis, and Dragonfire are now working on the All-in-one-Cart :D

I had to patch each game to fix the problem.

Fortunately, this only required one byte to be changed in each ROM image.

There is only one game left that I need a solution for. It is Baldor's Castle.

I will be revising SA Loader to accomodate this cart image and to have it auto start (just as the Scott Adams games do).

The revision will also include doing auto memory configurations for expanded memory use with Programer's Aid Cart (and other utilities) as well as auto start these utilities.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

The All-in-one-Cart has it's first "Easter Egg" :D :D :D

I know people will be very happy when it is discovered :wink:

Progress on project is going well.

The current design has been tested extensively with multiple Vic-20s (I have a dozen)

I have also been doing multiple memory tests with different configurations and had no issues.

These sort of tests are not feasible based on going into production with a schematic drawn on a PC.
Plus the number of varations in ROM images and their impact on interaction with hardware becomes only evident when they are individually tested.

Messy or not, a prototype stage is essential (irrespective of how pretty the final board layout will be).

I have 26 things left on my to-do list before I'm ready for production. However I am now close to wrapping up testing.

I am confident that a very stable and very reliable unit will be the final result. The prototype has been in service round the clock since mid May (with exception of field trip for a demo).

Final product will be done on printed circuit board prepared professionally by a quality firm, which specialized in PCB production.

I would like to get an idea of how many people may be interested in purchasing one of these units.

Objective will be to keep final price under $100US.

This is intended to be a zero profit project, with cost of project to be limited solely to parts cost. There with no fee for assembly or burning of eproms.

At this point I am looking for expression of interest.

If sufficient interest is present, then I can get a better cost estimate based on expected production lot size.

Please send along a PM if you are interested in purchase of All-in-one-Cart project (non prototype version).
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
Post Reply