FS: 24KB RAM EXPANSION BOARD

Vic 20 Item Exchange

Moderator: Moderators

Post Reply
unebonnevie
Vic 20 Drifter
Posts: 35
Joined: Sat Oct 11, 2014 3:25 pm

FS: 24KB RAM EXPANSION BOARD

Post by unebonnevie »

Please see photos. Asking $32 + shipping of $3.50 domestic $7.50 international. Only accept Paypal or money order. Please also see the below descriptions.

The VIC20 comes with 5KB of RAM built-in; out of that 5KB, only 3.5KB is available. That's why you see the VIC20 displays 3583 bytes (3.5 x 1024) available for BASIC when you turn on the VIC20. NOW...With the additional 24KB, your VIC20 now has 27.5KB. This is why you will see 28159 bytes (27.5 x 1024) available when you boot up the VIC20 with the RAM expansion board inserted.

The 24KB expansion is made possible for the THREE 8KB blocks in the VIC20 memory map, BLK1 ($2000-$3FFF), BLK2 ($4000-$5FFF), BLK3 ($6000-$7FFF), respectively. You can now use these memory areas for assembly code, etc. And VIC20's BASIC is also seeing this. Please note that this is all the information provided in the listing. There are a lot of information available on the internet regarding VIC20's memory map and how to use it.


THE BOARD
Fits into the VIC20's cartridge port
Comes with 24KB expansion
Built with a RESET button that you can gently touch / press to reset the VIC20 without powering it off

You can use the below BASIC program to test the RAM expansion. Basically, we POKE a value (any value 0-255) of 25 into 8192 sequential memory locations of the block and read it back via the PEEK command to see if each memory location has the same value. It should. If not, please check your VIC20!

10 REM STARTING EXPANDED RAM BLOCK ADDRESS
20 REM FOR EXAMPLE BLK1 STARTS AT ADDRESS $2000
30 REM IN HEX OR 8192 IN DECIMAL
40 ADDR = 8192
50 FOR I = 0 TO 8191
60 POKE ADDR + I, 25
70 IF (PEEK(ADDR + I) <> 25) GOTO 100
80 NEXT I
90 GOTO 110
100 PRINT "MEMORY ERROR!": GOTO 120
110 PRINT "RAM TEST IS SUCCESSFUL!"
120 END

It will take about 2-3 minutes to run the test. Remember that the VIC20's speed is only 1Mhz!!! Ah...The good old days!

To test BLK2 and BLK3, change 'ADDR' in line 40 to 16384 and 24576, respectively. THE ADDRESS RANGES FOR BLK1, BLK2, AND BLK3 ARE PRINTED ON THE BOARD, FACING UP!

IMPORTANT
Turn off or unplug your VIC20 when not in use.
Turn off or unplug your VIC20 FIRST before inserting or pulling out the board, as if you would do for a cartridge. When inserting or pulling out the board, make sure to use the upper right corner and the middle top areas to hold the board, as these areas are clear of any soldering, thus no pins from the components touching your fingers.
Although the board is designed to have the chips completely hidden once the board is inserted into the VIC20's cartridge port, NEVER touch the chips on the board when in use. The static electricity from your body can cause the chip not to work properly.
I AM NOT RESPONSIBLE FOR YOUR PROJECT IN ANYWAY, THAT IS, ANY KIND OF DAMAGES TO YOU OR YOUR MACHINE(S)/COMPUTER(S), INCLUDING BUT NOT LIMITED OF TO PHYSICAL, MENTAL, EMOTIONAL, PROPERTY-WISE, OR FINANCIAL DAMAGES FROM YOUR PROJECT(S), NOR AM I RESPONSIBLE FOR ANY TECHNICAL SUPPORT. THIS IS JUST LIKE A BREAD BOARD THAT YOU USE IT WITH YOUR OWN RESPONSIBILITY AND IMAGINATION.
I AM NOT RESPONSIBLE FOR ANY TECHNICAL SUPPORT. THIS BOARD PROVIDES YOU THE EXTRA MEMORY. THAT IS IT. I CANNOT GUARANTEE IN ANY WAY IF OTHER PRODUCTS WOULD MAKE USE OF THIS MEMORY EFFECTIVELY OR CORRECTLY.

TERMS
SOLD AS-IS
No returns or refund

Some additional information I found on the net about the VIC20's memory behavior. I am not responsible for the below information in anyway, and you would need to do your diligence in more research and verification.

THE MYSTERIOUS MOVING SCREEN

You may have been warned by some (tape-based) software suppliers [in the early days of the VIC20] that "THIS PROGRAM WILL ONLY RUN ON VIC-20's WITH NO ADDITIONAL MEMORY INSTALLED Or you may have tried to load a program from a tape when you had your 16k RAM cartridge in place and found it didn't work, or had some really weird goings-on happening on the screen." The reason is that when you put an 8k or 16k RAM in the VIC's BLK #1 location and turned on the VIC, the screen RAM is moved to a new position.

A well written program will not be affected by the amount of memory you have, but for those of you who own some poorly written
programs. There are two possible solutions.

POSSIBLE SOLUTION #1. Additionally, there is a set of statements that will allow you to preprogram any programs that you write to run in any VIC memory configuration:

Make this one of your first program lines:

S = 4 * (PEEK (36866) AND 128) + 64 * (PEEK (36869) AND 112) : C = 37888 + 4 * (PEEK (36866) AND 128)

You can now peek or poke to the screen (no matter where it is) by using the variable S as the start of the screen memory locations and C as the start of the color memory locations. For example, the 3rd character on the 3rd line would be S+68. (S=start of the screen, and 68 is the 3rd line because each line is 22 characters long, so 3*22=66, and the 3rd character adds 2 because the 1st position is the zero, the 2nd position is 1, etc.)

POSSIBLE SOLUTION #2. Use the program below which will put the screen back at its original position and relocate basic to start above the screen RAM area. This will allow you to use up to 24k of RAM. It has the side benefit of protecting the RAM area below the screen from being overrun by basic, and that is the area where you store the special characters you design for your own games. Or you can store machine language subroutines there without fear of destruction
or using any of basic' s memory area.

PROGRAM TO RELOCATE THE SCREEN

By: E.J. Lippert II
NOTE: This program must stand alone. It cannot be part of another program

10 POKE 8192,00

20 POKE 44,32

30 CLR

40 POKE 648,30

50 POKE 36866,150

60 POKE 36869,240

70 FOR I = 217 TO 228:POKE J,158:NEXT

80 FOR I = 229 TO 250:POKE I,159:NEXT

90 PRINT "CLEAR/HOME"

99 NEW
Attachments
24KB-2.JPG
24KB-2.JPG (323.64 KiB) Viewed 2693 times
24KB-1.JPG
24KB-1.JPG (257.19 KiB) Viewed 2693 times
24KB.JPG
24KB.JPG (228.53 KiB) Viewed 2693 times
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Re: FS: 24KB RAM EXPANSION BOARD

Post by Boray »

Nice with new hardware around, but...

Question 1: Why 24 K and not 32 K? (or even 35 K?)

Question 2: Why no block switches?
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
User avatar
Mike
Herr VC
Posts: 4831
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: FS: 24KB RAM EXPANSION BOARD

Post by Mike »

Boray wrote:Question 1: Why 24 K and not 32 K? (or even 35 K?)
The expansion ought to be capable to provide +32K anyway, judging from the *four* traces going to the block encoder to the left. Nice try, BTW, to grind off/photoshop the labels of the 74LS08 to the left and 62256 or 6206 to the right. ;)

The RAM in BLK5 is not contiguous to the RAM in BLK1..3, thus it doesn't add to the BYTES FREE, but it is still there and can be used to soft-load cartridge images or machine code or data tables, etc. Further reading here in the thread 'RAM...what to get?'.
Question 2: Why no block switches?
This, like adding the +3K in RAM1..3 would require extra hardware, of course. But there's plenty of space on this board.

@unebonnevie: Most people here in Denial are well aware, that adding a bigger RAM expansion shifts screen memory, and thus can hinder programs written for smaller RAM configurations (unexpanded or +3K) to run properly. While your slightly longer posting describing that issue might help some people to write programs which not only run on unexpanded machines, it gets a little more complicated when there are user defined characters around.

It is possible though to soft-limit the RAM available to BASIC, which also corrects the screen RAM address like thus:

Code: Select all

POKE642,16:POKE644,30:POKE648,30:SYS64818
Also, there are now file browsers available which feature similar methods to provide the correct RAM configuration. They use the load address of the *.prg file to find out the necessary set up.

Greetings,

Michael

P.S. you still didn't answer my question about what you are after in the thread about BASIC wedges.
unebonnevie
Vic 20 Drifter
Posts: 35
Joined: Sat Oct 11, 2014 3:25 pm

Re: FS: 24KB RAM EXPANSION BOARD

Post by unebonnevie »

Mike wrote: @unebonnevie: Most people here in Denial are well aware, that adding a bigger RAM expansion shifts screen memory, and thus can hinder programs written for smaller RAM configurations (unexpanded or +3K) to run properly. While your slightly longer posting describing that issue might help some people to write programs which not only run on unexpanded machines, it gets a little more complicated when there are user defined characters around.

It is possible though to soft-limit the RAM available to BASIC, which also corrects the screen RAM address like thus:

Code: Select all

POKE642,16:POKE644,30:POKE648,30:SYS64818
Also, there are now file browsers available which feature similar methods to provide the correct RAM configuration. They use the load address of the *.prg file to find out the necessary set up.

Greetings,

Michael

P.S. you still didn't answer my question about what you are after in the thread about BASIC wedges.
Thank you, Michael for the in-dept answer. Yes, I saw your response about BASIC wedges. I am looking to do a DIY project for my VIC20 of a real-time clock and calendar (RTTC) via the user expansion port. So adding two wedges BASIC calls getTime()/setTime(...) would help.
Va. Slim
Vic 20 Newbie
Posts: 4
Joined: Tue Mar 10, 2015 10:32 am

Re: FS: 24KB RAM EXPANSION BOARD

Post by Va. Slim »

Hi all,
I got one of these last month, and like it. I can run Realms of Quest 3 with it, and AFAIK that takes 32k. Just got back into the Vic-20 late last year, bought it 20+ years ago, never had games this good back then !
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Re: FS: 24KB RAM EXPANSION BOARD

Post by eslapion »

I know I have a reputation for being the negative commentor but out of respect for eveyone in the Denial community, I have to speak out.

DON'T BUY THIS EXPANDER. iT WILL WORK VERY WELL AT FIRST BUT SINCE IT HAS NO GOLD PLATING ON THE EDGE CONNECTOR, IT WILL EVENTUALLY DAMAGE YOUR CARTRIDGE PORT CONNECTOR.

If you want a good expansion, get yourselves a Megacart or a Final expansion.

Back in the 80s when it was expected that our beloved machine would be obsolete after at most 2 years, it didn't matter that many game carts didn't have proper gold plating on their boards but now the VIC is more than 30 years old and I assume everyone here wants to keep using it for decades to come.

I am not saying this because I want to make money as I am not selling any expansion at all anymore.
Be normal.
Post Reply