4MB Georam test program

Started by Mangelore, October 05, 2007, 12:22 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Mangelore

Hi guys,

I'm trying to locate a program that would allow me to test the RAM on a 4MB Georam REU.

I've located one on zimmers but it only tests up to 512KB.

Any ideas?

Cheers
Fotios

RobertB

Quote from: FotiosI'm trying to locate a program that would allow me to test the RAM on a 4MB Georam REU.

I've located one on zimmers but it only tests up to 512KB.
How did you get 4 megs into a Georam which ordinarily holds 512K?

Truly,
Robert Bernardo
Fresno Commodore User Group
http://videocam.net.au/fcug

Mangelore

Quote from: RobertBHow did you get 4 megs into a Georam which ordinarily holds 512K?
I'm not using the original 512K Georam.

I've had a look at how Georam is designed and in theory one should be able to access up to 4MB. That's one of the reasons VICE has an option available for a 4MB Georam.

So, I've started a small hardware project for a new 4MB REU and will need a test program for it ;)

airship

So... I know geoRAM isn't compatible with CBM REUs. Will yours be? Or is there a reason for going after a big geoRAM rather than building a big CBM REU with fast, low-power modern RAM chips? What would that take? A PLU and a single big RAM chip, or is it harder than that?
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

Mangelore

Unfortunately, the one I'm working on will also not be compatible with 17xx REU's. In order to make a 17xx compatible REU, one would need to source the RAM Expansion Controller (REC) chip. I don't believe anyone has been able to clone this chip.

So, my first attempt at an REU will only be Georam compatible and not 17xx.

However, it should be easy to add Georam support to programs. There's also GeoRAM Wedge for 128 users but I'm not sure if it can be modified to support a 4MB version.
http://www.zimmers.net/anonftp/pub/cbm/geos/non-GEOS/

Or do you guys think it's a waste of time if it's not 17xx compatible?

nikoniko

Fotios, I don't think it's a waste at all. Having 4MB available is nice anytime.

How rigorous does the RAM test need to be? I just tried a quick test in VICE which does the following:

Select one page, write to it
Select next page, write to it
Reselect first page, read from it and verify the data is identical to that written
Reselect second page, read and verify
Repeat with another two pages, continuing until the end of 4096K

I'm not sure if the page switch before verify is necessary or not. I thought that maybe data isn't actually written to geoRAM until you switch to a new page.

Mangelore

Quote from: nikonikoFotios, I don't think it's a waste at all. Having 4MB available is nice anytime.

How rigorous does the RAM test need to be? I just tried a quick test in VICE which does the following:

Select one page, write to it
Select next page, write to it
Reselect first page, read from it and verify the data is identical to that written
Reselect second page, read and verify
Repeat with another two pages, continuing until the end of 4096K

I'm not sure if the page switch before verify is necessary or not. I thought that maybe data isn't actually written to geoRAM until you switch to a new page.
Thanks!

An ideal test would be to maybe write/read/verify the following 00000000, 01010101, 10101010, 11111111 at each memory location.

Not sure if you need to page switch before verify. What if you wrote different data in two pages and then tried verifying to see the results within VICE?

airship

I don't do GEOS, so I'd love to see a big REU instead. But if nobody's written PLA code for the REC, it would be a big job.

We really need people with good technical knowledge to work on cloning these CBM custom chips. They're all going to rust away someday, and being able to replace them (or use them in  projects like this) would be cool.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

nikoniko

Well, you don't need GEOS to use a GeoRAM. It's just RAM that you can easily bank in one page at a time. It's less flexible than an REU because you can't just read and write from abitrary locations in system RAM, but its simplicity is just fine for storing data that doesn't need to be in specific areas (eg. storing a huge text buffer for an editor). Programmatically, it's very simple to adapt routines which read and write from linear system RAM. When your indexing reaches the bottom or top of the page, you adjust $DFFE accordingly, and less often $DFFF.

airship

The nicest thing about REUs is the support via STASH, FETCH, and SWAP. It makes swapping out blocks of memory in BASIC even faster than M/L - it's faster to STASH a block of C128 RAM to the REU and FETCH it back into another spot than it is to move it with a M/L routine, thanks to the REU's DMA.

Everyone's seen the REU animation demos that C= shipped on the REU disks, right?

PS nikoniko, I know you know all that already, but I just wanted to let you know that I know. :)
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

RobertB

Quote from: airshipBut if nobody's written PLA code for the REC, it would be a big job.
Adrian Gonzalez was working on cloning the REC chip but put that work to the wayside.  Francois Leveille was also working on it, but I haven't asked him about his progress lately.

Truly,
Robert Bernardo
Fresno Commodore User Group
http://videocam.net.au/fcug

airship

I hope they get back to it sometime. Didn't someone do a PLA chip? I thought I saw the code somewhere...
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

RobertB

Quote from: airshipDidn't someone do a PLA chip?
Francois created a PLA replacement chip.  He distributes it, as does Ray Carlsen (who received permission from Francois).

Truly,
Robert Bernardo
Fresno Commodore User Group
http://videocam.net.au/fcug

Mangelore

Quote from: RobertB
Quote from: airshipDidn't someone do a PLA chip?
Francois created a PLA replacement chip.  He distributes it, as does Ray Carlsen (who received permission from Francois).

Truly,
Robert Bernardo
Fresno Commodore User Group
http://videocam.net.au/fcug
Yes, that's the C64 PLA chip.
However, I'm not aware of any REC chips being cloned.

In any case, I'll try to get a 4MB GeoRAM board done even if I end up being the only one who ends up using it. :)

Blacklord

Quote from: Mangelore
Quote from: RobertB
Quote from: airshipDidn't someone do a PLA chip?
Francois created a PLA replacement chip.  He distributes it, as does Ray Carlsen (who received permission from Francois).

Truly,
Robert Bernardo
Fresno Commodore User Group
http://videocam.net.au/fcug
Yes, that's the C64 PLA chip.
However, I'm not aware of any REC chips being cloned.

In any case, I'll try to get a 4MB GeoRAM board done even if I end up being the only one who ends up using it. :)
I'll order one off you (& the VGA adapter when that's done too).

cheers,

Lance

smf

Quote from: airshipThe nicest thing about REUs is the support via STASH, FETCH, and SWAP. It makes swapping out blocks of memory in BASIC even faster than M/L - it's faster to STASH a block of C128 RAM to the REU and FETCH it back into another spot than it is to move it with a M/L routine, thanks to the REU's DMA.
There are advantages to DMA, but in terms of speed it's actually quicker to use bank switching.

The disadvantage is you are limited to a page size and the number of pages by the design. DMA allows you to copy data from anywhere to anywhere, it's more flexible, but slower.

However georam only seems to have a page size of 256 bytes, which means you have to copy into main ram. A larger page size and maybe a couple of pages would have been much better. A more complex MMU would have made georam more expensive, but being able to task switch with no copying would have completely trashed the REU in performance.