Jump to content
IGNORED

Vic 20 memory


Recommended Posts

I picked up a Vic 20 and another c64 off cl this last Saturday. I am wondering what is recommended for a memory card for the Vic 20 and if anyone might have one for sale? I have read that an expanded Vic could load cartridge files?

Ralph.

Link to comment
Share on other sites

Stock VIC has 5k RAM, about 1.5k used up for basic functions like screen. From wiki:

 

 

 

The VIC-20's RAM was expandable through the cartridge port. RAM cartridges were available in several sizes: 3 kB (with or without an included BASIC extension ROM), 8 kB, 16 kB, 32 kB and 64 kB,

 

Just FYI some games (those written in BASIC and uses POKE) will not work with it because expanded memory reorganizes the Vic's memory. Nearly all BASIC games I used to have will work without expanded memory, and cartridge doesn't need expanded memory (since you can't plug both in without rare add on or hack)

Link to comment
Share on other sites

It is worth spending a few minutes studying the memory map, here given with addresses given in hexadecimal.

 

$0000 System RAM (1K)

$0400 Empty space for 3K memory expansion

$1000 BASIC RAM (3.5K)

$1E00 Screen matrix (0.5K)

$2000 Empty space for first block of 8K memory expansion

$4000 Empty space for second block of 8K memory expansion

$6000 Empty space for third block of 8K memory expansion

$8000 Character ROM (4K)

$9000 I/O space for VIC chip, VIAs etc (4K space of which only parts are used)

$A000 RAM/ROM cartridge space, 8K

$C000 BASIC ROM (8K)

$E000 KERNAL ROM (8K)

 

Memory expansions know which slot they go into by using different fingers on the cartridge connector. Most cartridge games go into $A000 and autostart. Some games are 16K and are divided into $6000 and $A000, occasionally they instead use $2000 + $A000. Scott Adams' text adventures go into $4000 + $6000 and thus require a SYS to start.

 

Some memory expansions are switchable, meaning you can configure which slots they should map into. A so-called 32K memory expansion fills all the three slots $2000, $4000, $6000 plus the RAM/ROM slot at $A000 which means you can load dumped cartridge games into RAM and SYS 64802 to start the game, assuming it doesn't contain copy protection and will overwrite itself.

 

The 3K slot is a little oddity of itself. As you can see, it resides in an own part of memory. Most switchable expansions enable this room too.

 

The fact that addresses for the screen matrix, start of BASIC, end of variables etc are reorganized is due to the screen matrix always must reside within the 4K of built-in RAM at $1000, and that BASIC doesn't like to have a partitioned workspace. For 3K expansion, it is a simple matter of moving start of BASIC down by 3072 bytes but for 8K or more expansion, the screen matrix moves from $1E00 to $1000, start of BASIC moves from $1000 to $1200 and then you have up to 27.5K of continuous memory. The RAM/ROM slot at $A000 can never be part of continuous memory, but it is fully possible to configure BASIC to entirely operate in that slot anyway, if you need to for some reason.

 

This reorganization is not exclusive to games in BASIC, programs in machine code would have the same and even worse issues if you e.g. load an unexpanded game while you have a 3K or 8K expansion plugged in, as addresses in machine code tend to be absolute and would mismatch quite a bit unless you load the code into the exact same position as intended.

 

For that matter, those 64K RAM expansions are very rare and would as far as I understand involve a bit of bank switching so they're not practically relevant.

 

When it comes to buying an expansion memory, look for one that is switchable. The more options, the better. Commodore's own VIC-1110 (8K) and VIC-1111 (16K) memory cartridges internally have jumper pads for each block of 8K so with a bit of hacking, you can add switches on the outside to convert one of those to map into either 8K block of your liking, including the block at $A000. However for the 16K cartridges, you need to know which blocks the files go into, which usually is included in the file name.

  • Like 3
Link to comment
Share on other sites

It can be worth pointing out that the majority of factory prepared switchable 16K expansions only support the modes unexpanded, +3K and +16K, which make them not suitable for loading cartridge games. The switchable 32K expansions tend to cover the whole map, and a self-modified cartridge would be possible to setup to your needs.

 

There are some DIY designs too, and I think someone made a small batch for sale a couple of years ago, but I can't find anyone selling memory expansions at the moment, not considering the Mega-Cart or Final Expansion which are more expensive and offer far more functionality than just being memory expansions.

 

Actually if you feel brave and don't mind doing all the work yourself, you can get a kit for the Final Expansion, at 60 Euros ~= 68 USD plus overseas shipping and possible customs fees. With the Final Expansion, you get both memory expansion up to a whopping 512 kB RAM, 512 kB Flash for on-board storage of software and SD card reader. You would have to supply your own cartridge shell though. The kit is a little fiddly to put together so it looks pretty, but if you would happen to be the man with a soldering pen, it is not awfully difficult to get to work.

 

http://www.sinchai.de/index.php?main_page=product_info&products_id=77

Link to comment
Share on other sites

The memory cartridges are only needed for games and programs not on a physical cartridge. The smaller memory cart as described by Stargunner sets a different memory block configuration compared to the larger memory carts. Your programs have to be matched to which memory cart is utilized, some programs and games on disc and tape do not need any memory expansion.

Link to comment
Share on other sites

I believe I'm going to see if I can find an 8k cart cheap. I saw a video of berzerk written for this machine that was fantastic.

Thanks everyone for the help!

I didn't know expansion ram for the Vic was so damn complicated!

Ralph.

Link to comment
Share on other sites

Hi Ralph.

 

The moving memory map was a PITA back in the day, so I was real careful to choose a switchable RAM pack; which I still own to this day.

 

I'm not aware of any commonly available games or programs written back in the day which required more than 16k. With this in mind, something like a "Vixen" switchable RAM-pack might be worth considering. It has two recessed switches, allowing it to be configured as a 3k, 8k or 16k RAM expansion, depending on the program you're trying to load.

 

Alternatively, you could buy the THREE different RAM Packs sold for the Vic-20 by Commodore to cover the same bases.

 

Other options are the Mega-cart (providing you're willing to add yourself to a one-year waiting list) or maybe a Final Expansion 3 (FE3), which comes as a kit you'd need to solder. The FE3 also has the advantage of SD-Card storage and emulates a disk-drive to load-in programs.

 

I had a Vic with a 3/8/16K Vixen back in the day and it was all I needed back then. The opportunity to use 24K or 32K is something which has come about in recent years and I'm not aware if I've used anything which requires this much RAM since I've had the facility.

 

TBH, as I have Mega-cart, I've never needed to load a cartridge into RAM (they're pretty much all on the cart to begin with) so I'm not sure if I'd need to use this facility.

 

Vixen:

post-25357-0-74028400-1433962296_thumb.jpg

Edited by UKRetrogamer
Link to comment
Share on other sites

The Vixen though as far as I know does not allow you to switch memory into block 5 (or block 3 for that matter) so for the specific purpose to load ROM images of dumped cartridge games, it won't be enough. As long as you stick with loading "normal" programs up to 16K expansion memory, it'd be perfectly fine.

 

As for programs that can use all available memory, I'm not entirely sure how many those are, but I've seen a few games in the 24K and even 32K folders at Zimmers. My experimenting with the Contiki OS back in the day surely required 24K expansion memory to even load, and ideally it would've put some of its drivers in the 8K RAM/ROM slot if I could've figured out how to make the compiler generate separate executables. It mostly was a proof of concept compile from the existing, working C64 version of the OS just like I made a proof of concept compile for the Oric-1 which didn't even have support for loadable modules due to it having different secondary storage IIRC, but that is getting from the topic.

Link to comment
Share on other sites

Given GameBase20 exists and having put it together over the last few years, there are NO commercial games in the database from back in the day (1980-85) that require more than 16k. I'm curious to see what at Zimmers needs more, I suspect possibly because they are hacks/cracks or modified. Or homebrew/magazine listings.

Link to comment
Share on other sites

GameBase20 huh? I have never used it. Will it allow me to transfer software to a disk using Zoomfloppy? I am very new to the Commodore scene and do not fully understand all the different things.

Thanks Everyone for the posts of information to an old fart like me.

-Ralph...

Link to comment
Share on other sites

GameBase is an emulator front-end and database utility. http://www.bu22.com/. (Think TOSEC but with a common front-end for each collection).

 

A Gamebase collection exists for a number of popular micros. Details of the Vic-20 version can be found here: http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?f=4&t=6329

 

Gamebase itself is just a collection of game-images and in itself is not a method of software transfer. Basically, it's used with an accompanying emulator to provide a graphical way of browsing and playing games on a modern computer.

 

Games for the Commodore micros (PET, Vic, C64, C16, Plus/4) mainly tend to be distributed as .D64/.D71/.D81 (disk-image), .T64 (Cassette Tape images) or in .PRG (an individual, executable program) format.

 

ZoomFloppy will take a disk-image (.D64) and using software like OpenCBM, transfer the image to a real floppy, via a connected Commodore floppy drive. To transfer a .PRG file will first require transferring the .PRG onto a .D64 disk-image.

 

Various programs exist to create and manipulate disk-images. One such program would be DirMaster. http://style64.org/dirmaster

Edited by UKRetrogamer
Link to comment
Share on other sites

Thanks Everyone for the posts of information to an old fart like me.

-Ralph...

 

Hi Ralph.

 

Don't think, just because you see yourself as an "old fart" makes you unique. You'll find there are plenty of us here. There are probably more older (30+) users here than younger ones. Those under 30 possibly won't have the same level of interest as those of us who owned and used these machines back in the day.

 

That's why forums like this are so useful - to discuss issues like this and for others to learn from threads and posts like yours.

 

Don't be afraid to ask questions. No-one will laugh at you. You'll also find many here are collectors of multiple systems though very few are "experts".

 

TBH, I also own a ZoomFloppy but have yet to use it in earnest. I also have a Flyer Internet Modem but I'm an expert on neither. I'm just a fellow collector with a collection of interesting modern hardware devices, all of which I use with my vintage machines to "enhance" their functionality.

 

From one old fart to another, "Welcome" and ask away!

 

Edit: It's a pity I don't still have my spare Vixen RAM cartridge. You could've taken it, but I gave it away a couple of years ago, along with a nice, clean Vic-20.

 

https://www.youtube.com/watch?v=fiANTcCq624

Edited by UKRetrogamer
  • Like 1
Link to comment
Share on other sites

My brother's (now) fiancée gave me her Vic20, and that's how I got into the system, having been a C64 head for almost 20 years at that point. AND she had the Vixen memory expansion, so I really didn't need to look much further. Apart from getting a 8k/16k expansion from Commodore as mentioned above, that you can open and change the dips so 8k goes to $A0 for cart dumps.

Link to comment
Share on other sites

Hm, I'm quite sure that the GUI 4 OpenCBM allows transferring individual (PRG) files to the floppy drive connected to the PC, not just disk images. Perhaps it depends if you're using a X-series cable or a ZoomFloppy, but I don't see why the latter, more advanced solution would have reduced functionality.

 

There's also Steve's CBM Xfer front end or what it is called, based on the GUI 4 OpenCBM but with added functionality for cbmlink and other alternative transfer metthods, and I think a couple more functional improvements over the original front end, but I haven't updated my installation for a couple of years.

Link to comment
Share on other sites

Hm, I'm quite sure that the GUI 4 OpenCBM allows transferring individual (PRG) files to the floppy drive connected to the PC, not just disk images. Perhaps it depends if you're using a X-series cable or a ZoomFloppy, but I don't see why the latter, more advanced solution would have reduced functionality.

This functionality may very well be within OpenCBM - I've not used it in a while myself - however, I was merely pointing out a program designed with the manipulation of disk-images as its main focus.

Link to comment
Share on other sites

I just bought a 16k expansion cart off eBay. Will that get the job done for the 8k games and such? Or will I need to buy an 8k cart as well. Like I think I've posted earlier I'm a ti'er but I am kinda enjoying looking into the Vic and the 64.

Ralph.

Link to comment
Share on other sites

IIRC, I used to switch my Vixen from the 16K setting only for games which required the +3K expansion. (Very few and far between if my memory serves). I don't remember ever switching it to 8K mode.

 

I'd have the Vixen plugged in and set to the 16K RAM setting for both 16K and 8K games, switching over only for games which required +3K and then remove it entirely when playing unexpanded games.

 

As I mentioned earlier, these days I have a Megacart and (somewhere) an original Behr Bonz board. Because I have all the carts I need on one or the other of these devices, I've never tried loading cartridge dumps into RAM so I can't verify but according to Mayhem in his post above though, if you wish to do this, a Commodore 8/16K cart can be modified with jumpers to allow for carts to be loaded into the newly relocated 8K RAM area.

 

If I'm wrong, I'm sure someone will correct me but I'm pretty sure the 16K RAM pack will work just fine with 8K software for commercially released software from back in the day.

 

Mind you, It's got to be over 30 years since I last used a Vic-20 on a daily basis.

Apart from getting a 8k/16k expansion from Commodore as mentioned above, that you can open and change the dips so 8k goes to $A0 for cart dumps.

 

Mayhem? could you point us to documentation showing us how to modify a RAM pack to relocate the RAM and allow for cart-dumps to be loaded into it?

Edited by UKRetrogamer
Link to comment
Share on other sites

Incidentally, if you wanted a cheap method of loading games via the cartridge slot of your newly appropriated Vic, elsapion over at the Denial forums has a batch of "re-born" Behr Bonz boards (127 games) ready to start shipping.

http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?t=7391&start=45

 

post-25357-0-24847600-1434075089_thumb.png

Edited by UKRetrogamer
Link to comment
Share on other sites

@sparkdrummer: The 16K memory expansion works like a superset of the 8K memory expansion, so with that one plugged in you will be able to load programs requiring either 8K or 16K expansion.

 

However you won't be able to load programs that require 3K expansion, due to the different memory map and also as indicated by UKRetrogamer above.

 

Here is a document on how to modify the VIC-1110 (8K) or VIC-1111 (16K) expansion. The DIP switches mentioned in the manual might just be solder pads, but if you're handy with the soldering iron and a bit of Dremel, you should be able to install actual DIP switches on the back side of the cartridge shell, soldered to match the solder pads.

 

http://www.classiccmp.org/cini/pdf/Commodore/VIC-1210-1110-1111%20Memory.pdf

Link to comment
Share on other sites

Yes, as said, the standard 16k RAM expansion will work fine for 8k games too.

 

The PDF that Carlson posted is perfect for showing you the dips on the board (it was included when you bought the expansions but obviously those sheets tend to go walkies over time!). Mine fortunately happens to have the dips in place from factory, but not all of them do. I opened my 8k up to check, and found I'd left it set to $A0 specifically for cart dumps!

Link to comment
Share on other sites

Of course we need to be helpful when it comes to a somewhat overlooked system as the VIC-20. Many people unfortunately dismiss it as testing ground for the "real" home computer two years later, the Commodore 64, and even some of the major retro gaming exhibitions who bring two of every common and uncommon console and home computer to display, often overlook the VIC because they don't think it deserves its place in history. Thus everyone showing interest in the system should be taken care of.

Link to comment
Share on other sites

  • 1 year later...

Here I am back again with more questions. I shelved my C64 and Vic for awhile because I got back into doing a newsletter for the TI-99/4A crowd on the forum here. I was a newsletter editor for my club here in Phoenix (Valley of the Sun TI99ers - VAST) and I always enjoyed doing it. If you want a look - check out Yesterdays News on the TI-99/4A forum. All done with my trusty TI.

 

Anyway, back to my questions - I have recently purchased a SD2IEC for my Commodore stuff. So I broke out the computers and didn't have much trouble using it with the C64, although I sure would like to get ahold of a FAST LOAD cart for it. The Vic 20 I'm having some trouble with. I can't seem to figure out how to load carts (again).

 

Here are the memory carts I have

 

post-39776-0-01191600-1490880399_thumb.jpg

 

post-39776-0-47277700-1490880431_thumb.jpg

 

This cart is empty now

post-39776-0-73339200-1490880483_thumb.jpg

 

Because of this

post-39776-0-26539000-1490880522_thumb.jpg

 

Anyway, can anyone advise how I should set up the carts equipped with switches?

And which one might be the best one to use for cart games?

 

Thanks again for your help.

 

Anybody got a cheap Fast load cart to part with for the C64 - I have a few C64 carts for trades maybe?

 

 

.

 

 

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