Jump to content
PacMan

Internal RAM memory and POKEY expansion Board

Recommended Posts

Hi There,

 

If anyone is interested i have a few prototype cards for an internal 128KByte and POKEY expansion for the 7800 for sale. The expansion (XBoarD) card fits into the socket of the MARIA which means you have to take out the MARIA chip and insert it into the new socket on the XBoarD.

 

Both the POKEY and RAM is disabled after startup, so you need to enable them in your own code. This means that the XBoarD is normally not available for existing games.

 

The mapping is totally non compatible with pretty much everything. There is a bank select latch located at $0470 and the POKEY is located at $0450 (There's also a chip select output ($0460) on the PLD which alows you to simply piggy back a second POKEY). Since the PLD is reconfigurable I could map the POKEY (or the RAM for that matter) to pretty much anything if you wanted to. However since the PLD is soldered under the POKEY this needs to be configured before delivery.

 

I designed and built this unit purely for my own purposes but it turned out pretty good and i have a few proto's that i don't need. I will sell these for the cost of the components (which wasn't very low though ;) )

 

Here are two images of the board:

img1_640.jpgimg3_640.jpg

The red cable going to the system is the audio cable feeding into the EXTAUD input on the cartridge connector.

 

And here's a picture of the unit mounted in one of my 7800's

img2_640.jpg

 

Anyone interested or have questions ?

/P

Share this post


Link to post
Share on other sites

That's a PAL 7800, isn't it? Remember, the board layout is significantly different on the NTSC version, though its MARIA is in basically the same place. The main problem is that the MARIA chip in most NTSC 7800s is not socketed. And if anyone gets the idea of socketizing their MARIA, don't forget that it's a 44-pin chip.

 

I do like the idea of using the unmapped area at $0440-$047F. I really like it. Sure, it's not going to do anything for Commando or Ballblazer in a CC2, but it does rather neatly solve the problem of bus conflicts with cartridge RAM/ROM. Newer games with POKEY detect (like Beef Drop) can be easily modified to look for the new address.

 

Where did you hide the RAM, anyhow? I mean both physically and in the address map. I'm guessing it's an SMD under the Pokey, but where does it appear in the address map?

Edited by Bruce Tomlin

Share this post


Link to post
Share on other sites

Bakasama ->

Although i don't have a CC2 i am reasonably certain that the XBoarD does not conflict with it on startup. The XBoarD is completely disabled after power up and needs to be configured to enable the functions (RAM/POKEY).

 

Having said this I have no idea if the CC2 makes any use of addresses between $0450 - $047F which is where the XBoarD is configure. Anyone ?

 

Bruce Tomlin ->

Yes this is a PAL 7800 and the XBoarD needs a clearance of 19mm from the legs of the MARIA chip to fit. I figured that the NTSC versions would have had their MARIA's soldered due to the higher volumes it was produced in.

 

The MARIA is actually a 48-pin device and it is not much harder to desolder than a standard 40-pin device, providing you are using a proper tool. Otherwise it is darn right impossible.

 

As i mentioned, the mapping is done in a PLD and could be anyting. If you want the POKEY to be in the area between $4000-$7FFF this is also possible. One could even map the POKEY at $4000-$7FFF and place RAM from $4010-$7FFF if desired.

 

As the picture below shows the RAM is hidden under the MARIA and the PLD and latch is found under the POKEY. In the tests that I have done i have the RAM mapped from $4000 up to $7FFF.

img4_640.jpg

 

The configuration latch is located at $0470-$047F and is write only. It uses 5-bits to configure the board. Bits 0 - 2 selects the RAM bank, Bit 3 enables the RAM and bit 4 enables the POKEY's. I just wish i had used bit 5 to, this way i could have made a selection for where to map the POKEY's.

 

Anyway, thank you fo your interest.

Regards

/P

Share this post


Link to post
Share on other sites
Bruce Tomlin ->

The MARIA is actually a 48-pin device and it is not much harder to desolder than a standard 40-pin device, providing you are using a proper tool. Otherwise it is darn right impossible.

Oops, I guess I got that slightly wrong. A pair of 24-pin sockets should work fine.
As i mentioned, the mapping is done in a PLD and could be anyting. If you want the POKEY to be in the area between $4000-$7FFF this is also possible. One could even map  the POKEY at $4000-$7FFF and place RAM from $4010-$7FFF if desired.
At some point you've got to stop worrying about possibilities and decide on something. I think you've got your choices about right, including that I was expecting the RAM to show up at $4000-$7FFF. That's a great place to put the POKEY where homebrews can expect to find it, and where it won't conflict with anything else.
As the picture below shows the RAM is hidden under the MARIA and the PLD and latch is found under the POKEY. In the tests that I have done i have the RAM mapped from $4000 up to $7FFF.
Those TSOP chips sure can hide well.

Share this post


Link to post
Share on other sites

One idea that i was playing with is that when RAM is disabled but the POKEY is enabled it would be mapped to $4000-$7FFF which looks more like the standard mapping. Problem is that a normal Cart would still not see it as the XBoarD is completely disabled after startup.

 

Gotta think some more about that :ponder:

 

/P

Share this post


Link to post
Share on other sites
One idea that i was playing with is that when RAM is disabled but the POKEY is enabled it would be mapped to $4000-$7FFF which looks more like the standard mapping. Problem is that a normal Cart would still not see it as the XBoarD is completely disabled after startup.

 

Gotta think some more about that  :ponder:

 

/P

911867[/snapback]

I don't think that it is really necessary.

It should be easy to patch the two available Pokey games.

And new games could consider the new mapping.

Share this post


Link to post
Share on other sites

Thanks for the answers. I remember somebody asking or proposing about such an expansion a while ago. The idea was to make pokey based homebrews use the pokey expansion in the 7800 instead of putting a pokey in every pokey based cart. Which would make pokey based carts cheaper in the long run if somebody want make a run of carts of said homebrews. I believe the original idea was a pass though cart of some kind.

 

I'll say there's some interest your expansion board from some the 7800 homebrewers on this board.

Edited by Bakasama

Share this post


Link to post
Share on other sites

Is it possible to run a ribbon cable from underneath the MARIA and solder in the board that way?

 

What's considered the proper tool for desoldering the MARIA? I've got a desoldering tool and a separate iron, but will it work?

Share this post


Link to post
Share on other sites
Schmutzpuppe ->

I don't think that it is really necessary.

It should be easy to patch the two available Pokey games.

And new games could consider the new mapping.

 

You are absolutely right, that is the way to do it.

 

Bakasama Posted Yesterday, 11:22 PM

Thanks for the answers. I remember somebody asking or proposing about such an expansion a while ago. The idea was to make pokey based homebrews use the pokey expansion in the 7800 instead of putting a pokey in every pokey based cart. Which would make pokey based carts cheaper in the long run if somebody want make a run of carts of said homebrews. I believe the original idea was a pass though cart of some kind.

 

No problems :) it's just fun to have found a bunch of crazy people with the same interest as my self :D

 

shadow460 Posted Today, 4:51 AM

Is it possible to run a ribbon cable from underneath the MARIA and solder in the board that way?

 

What's considered the proper tool for desoldering the MARIA? I've got a desoldering tool and a separate iron, but will it work?

 

It could probably be done this way but you would have to have a rather long flat cable in order to get up from underneath the board. This would affect the impedance on the buses of the system and you would start to see over and undershoot on the signals which is never nice. It might work but it might not and i would not recommend this attempt. It is better to desolder the MARIA and insert the XBoarD in the correct place. As Bruce Tomlin mentioned you could use two standard 24 dip sockets on the 7800 motherboard.

 

It is not easy to desolder a DIP device if you don't have the proper tools. If you are unexperienced you could contact your local TV repair shop (if there are any left), they should have the proper tools for this. I would really recommend this way instead of doing it yourself, we don't want to destroy our precious do we ???

 

I could probably do it for you but the cost of shipping the 7800 back and forth to Sweden would probably kill anyones budget :(

 

/P

Share this post


Link to post
Share on other sites

For those who don't want to mod their console, a pass-through could provide a POKEY at the same $0450 address. I know someone's going to ask about a switch for the address, but you really don't want it to appear at $4000 when anything could be plugged into the pass-through, and I'm pretty sure that intercepting that address range from the cartridge is harder than it sounds.

 

I don't think RAM is nearly as important right now as POKEY, and by the time it becomes important, someone (either me or someone else) will have RAM cartridge boards ready. 32K RAM chips (especially if you don't need low-power battery save) are dirt common as salvage. I have at least a pound of 'em, both narrow and wide. POKEYs are more important to conserve because there is a limited number of them, and they cost at least $5 each. RAM chips don't grow on trees, but they do grow on old 486/586 motherboards.

 

128K RAM, especially banked into 16K, would be total overkill for anything but programming, and doesn't really need to be in a pass-through cart. Remember, many 7800 games didn't even have that much ROM! Let's see the homebrewers use 16K or 32K first.

Share this post


Link to post
Share on other sites
For those who don't want to mod their console, a pass-through could provide a POKEY at the same $0450 address. I know someone's going to ask about a switch for the address, but you really don't want it to appear at $4000 when anything could be plugged into the pass-through, and I'm pretty sure that intercepting that address range from the cartridge is harder than it sounds.

 

Definitly so, I thought about the pass through idea but was discouraged by the mechanical design. If someone does make a pass through adapter it would be nice to have the POKEY's mapped to the same place ($0450/$0460). Cacthing and remapping accesses to a cart would be possible but not practical as you mentioned.

 

128K RAM, especially banked into 16K, would be total overkill for anything but programming, and doesn't really need to be in a pass-through cart. Remember, many 7800 games didn't even have that much ROM! Let's see the homebrewers use 16K or 32K first.

 

128K is probably overkill but 16K is a little on the low side, depending on what you want to do of course :) I just had these chips available (a lot of 'em) and they made for a nice design.

 

Well, I finally settled for the basic design which maps the POKEY chip selects to $0450 and $0460, whith the XBoarD control register at $0470. This means that the mapping for the device now looks like this.

 

Description:      Start:   End:      Size:
POKEY1            $0450    $045F     16 bytes
POKEY2*           $0460    $046F     16 bytes
XCTRL             $0470    $047F     1 byte
RAM               $4000    $7FFF     16384 bytes

XCTRL Bit Description

 +-------------------------------+
 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +-------------------------------+
   |   |   |   |   |   |   |   |
   |   |   |   |   |   |   |   +-- Bank select bit 0 \
   |   |   |   |   |   |   +------ Bank select bit 1  | Totally 128 KByte in 16 KByte banks
   |   |   |   |   |   +---------- Bank select bit 3 / 
   |   |   |   |   +-------------- Enable memory bit** (1 = Memory enabled, 0 after power on)
   |   |   |   +------------------ Enable POKEY bit (1 = POKEY enabled, 0 after power on)
   |   |   |
  NA  NA  NA = Not Available or Not Used

* = Can be mounted piggy back on the first POKEY. Description how to do this will come when i have tried it out.
** This bit controls both POKEY chip select signals.

 

An assembly instruction with instructions on how to connect the audio signal will be available beginning of next week.

 

1 board left now, I have charged USD $35 for these plus shipping ($5.00 ww) and if you want a pokey chip to go with it it's another extra $5.00. Just send me a PM if you're interested.

 

/P

Share this post


Link to post
Share on other sites

Last proto board is gone now, thank you everyone for your interest.

If anyone else is interested in getting a board let me know and i will see what the possibilities are of making some more.

 

/P

Share this post


Link to post
Share on other sites

What effect will this have on cart based POKEY? If Schmutzpuppe procduces Frogger on POKEY equipped carts, I wanna still be able to play it (not to mention BallBlazer and Commando).

 

Will it affect carts with onboard RAM?

Edited by shadow460

Share this post


Link to post
Share on other sites
What effect will this have on cart based POKEY? If Schmutzpuppe procduces Frogger on POKEY equipped carts, I wanna still be able to play it (not to mention BallBlazer and Commando).

 

The XBoarD is completely disabled after startup which means that it will have no impact on the system. So plugging a standard POKEY Cart will work just fine. If Schmutzpuppe adds POKEY support to Frogger he could implement a small function that would evalute where a pokey is available. This would make it possible to run Frogger on Carts with POKEY's or from simple ROM Carts on systems equiped with the XBoarD.

 

Will it affect carts with onboard RAM?

 

Again, the XBoarD is completely disabled on startup so normal RAM carts will also work as expected.

 

A technical note..... When I say completely disabled i mean that the POKEY's and the SRAM are disabled. The XCTRL register is not disabled, it is still enabled at $0470-$047F allowing you to configure your system at any time.

 

/P

Share this post


Link to post
Share on other sites
    |  |  |  |  +-------------- Enable memory bit** (1 = Memory enabled, 0 after power on)

    |  |  |  +------------------ Enable POKEY bit (1 = POKEY enabled, 0 after power on)

 

** This bit controls both POKEY chip select signals.

Is that right?

 

EDIT: I'm talking about where the asterisks are.

Edited by Bruce Tomlin

Share this post


Link to post
Share on other sites

If it's disabled on startup, then I assume the games that require it will automatically re enable it.

 

What comes to my mind, then, is my Nintendo 64. Most of my games don't use the expansion pak, but Perfect Dark and Star Wars Racer do. I assume the extra 4MB RAM is enabled when Perfect Dark first loads.

 

I wonder, will Xboard games behave more like Perfect Dark or Majora's Mask? Perfect Dark will run without the expansion pak, but the features are very limited. Ditto with Racer.

Majora's Mask will not load at all without it.

 

Assume that Schmutzpuppe produced Frogger for the Xboard. I think it would load, but it would have either no sound, or it would use the sound that was programmed before pokey support was added to the game.

Share this post


Link to post
Share on other sites
If it's disabled on startup, then I assume the games that require it will automatically re enable it.

 

What comes to my mind, then, is my Nintendo 64.  Most of my games don't use the expansion pak, but Perfect Dark and Star Wars Racer do.  I assume the extra 4MB RAM is enabled when Perfect Dark first loads.

 

I wonder, will Xboard games behave more like Perfect Dark or Majora's Mask?  Perfect Dark will run without the expansion pak, but the features are very limited.  Ditto with Racer.

Majora's Mask will not load at all without it.

 

Assume that Schmutzpuppe produced Frogger for the Xboard.  I think it would load, but it would have either no sound, or it would use the sound that was programmed before pokey support was added to the game.

914130[/snapback]

Frogger will support Xboard.

I don't know yet what will happen without Xboard it depens a bit if Bruce manage to make a pokey version of his prototype board because I would really like to avoid tia sound.

Cybergoth's frogger music is quite cool for tia but pokey can do better.

On the other hand I am not sure about this whole cartridge production stuff maybe there will never be a fogger cart only the binary.

Edited by Schmutzpuppe

Share this post


Link to post
Share on other sites
    |  |  |  |  +-------------- Enable memory bit** (1 = Memory enabled, 0 after power on)

    |  |  |  +------------------ Enable POKEY bit (1 = POKEY enabled, 0 after power on)

 

** This bit controls both POKEY chip select signals.

Is that right?

 

EDIT: I'm talking about where the asterisks are.

914111[/snapback]

 

Oops, definitly not so, it should look like this.

 

XCTRL Bit Description

+-------------------------------+
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
+-------------------------------+
  |   |   |   |   |   |   |   |
  |   |   |   |   |   |   |   +-- Bank select bit 0 \
  |   |   |   |   |   |   +------ Bank select bit 1  | Totally 128 KByte in 16 KByte banks
  |   |   |   |   |   +---------- Bank select bit 3 /
  |   |   |   |   +-------------- Enable memory bit (1 = Memory enabled, 0 after power on)
  |   |   |   +------------------ Enable POKEY bit** (1 = POKEY enabled, 0 after power on)
  |   |   |
 NA  NA  NA = Not Available or Not Used

* = Can be mounted piggy back on the first POKEY. Description how to do this will come when i have tried it out.
** This bit controls both POKEY chip select signals.

 

Thanks for pointing that out.

 

If it's disabled on startup, then I assume the games that require it will automatically re enable it.

 

What comes to my mind, then, is my Nintendo 64.  Most of my games don't use the expansion pak, but Perfect Dark and Star Wars Racer do.  I assume the extra 4MB RAM is enabled when Perfect Dark first loads.

 

I wonder, will Xboard games behave more like Perfect Dark or Majora's Mask?  Perfect Dark will run without the expansion pak, but the features are very limited.  Ditto with Racer.

Majora's Mask will not load at all without it.

 

Assume that Schmutzpuppe produced Frogger for the Xboard.  I think it would load, but it would have either no sound, or it would use the sound that was programmed before pokey support was added to the game.

*

Frogger will support Xboard.

I don't know yet what will happen without Xboard it depens a bit if Bruce manage to make a pokey version of his prototype board because I would really like to avoid tia sound.

Cybergoth's frogger music is quite cool for tia but pokey can do better.

On the other hand I am not sure about this whole cartridge production stuff maybe there will never be a fogger cart only the binary.

 

It's fairly easy to detect if a POKEY is present at a certain adress so it should not be problem to make your algorithms detect if a POKEY is available at either XBoarD adresses or at $4000.

 

/P

Share this post


Link to post
Share on other sites
I don't know yet what will happen without Xboard it depens a bit if Bruce manage to make a pokey version of his prototype board because I would really like to avoid tia sound.

Don't be waiting on me... the bigger board isn't exactly around the corner. I've tried and failed a couple of times to route the damn board, and now I'm waiting until the mini board is finalized and then will port back some of the changes after it's finished. And then I still have to squeeze too many wires into it. It'll probably be two months before I can get to first boards stage.

Share this post


Link to post
Share on other sites
I don't know yet what will happen without Xboard it depens a bit if Bruce manage to make a pokey version of his prototype board because I would really like to avoid tia sound.

Don't be waiting on me... the bigger board isn't exactly around the corner. I've tried and failed a couple of times to route the damn board, and now I'm waiting until the mini board is finalized and then will port back some of the changes after it's finished. And then I still have to squeeze too many wires into it. It'll probably be two months before I can get to first boards stage.

914430[/snapback]

I am sure you will manage it :)

Frogger will also take some time because I am quite busy at the moment.

Share this post


Link to post
Share on other sites

Someone will likely make a cart of it.

If Xboard or any POKEY addition mods become popular, I think Frogger should be released with TIA sound as default.

If Frogger detects the POKEY on board a system, then it would disable TIA sound and run through the onboard POKEY--kinda like Perfect Dark and the N64 Expansion Pak.

Other games needing the extra RAM could do that, too.

It would save the hassle and cost of adding POKEY to every single cart made.

 

I know, I'm stating the obvious here. Tell me if it annoys you, so I can do it some more. :)

Share this post


Link to post
Share on other sites

Thank you everyone that have PM'd me, it was exciting to see the response of the XBoarD. Unfortunatly i only had 4 boards to go this time so a lot of you didn't get a board this time.

 

Currently I have 9 more people that are interested in the board and I will be making a new batch of boards for you guys.

 

If there is anyone else that wants to have their own XBoarD let me know in a week or two so i don't order in to few PCB's.

 

I estimate to have these boards ready to ship in about 5 weeks and they will cost USD$39.95 :D (Nutty price I know, but I wanted to have $40 without actually having to say $40). That includes the RAM but no POKEY. The pokeys are USD$5 each but they can easily be ordered from Best Electronics which is also where I get them (for the same price).

 

I know for instance that Schmutzpuppe's Frogger will support the XBoarD and I sure hope that there will be more games in the future.

 

/P

Share this post


Link to post
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.

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...