Going on a VIC raid

Discuss anything related to the VIC
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

carlsson wrote:Inside is a printed card with the marking "32k system x-rom".
On Monday, I bought a cheap digital camera (those who follow my rants in Vintage Computer Forum already know), so I took a picture of this board, both for documenting purposes and to learn the camera's limitations. A such picture should be taken with macro, full detail and no smoothing, but I still don't know quite all the other settings.

Image
(Click to get a full sized version)

The back side has a marking "B&T", but nothing more. I wonder about the row of holes on the middle, maybe it would be possible to connect a pass-through female connector. I could trace the lines for the 8K location, but I assume it maps to BLK5 or so. All in all, a rather advanced 16-32K memory expansion.
Anders Carlsson

Image Image Image Image Image
Leeeeee
soldering master
Posts: 396
Joined: Fri Apr 23, 2004 8:14 am

Post by Leeeeee »

Only 16K RAM fitted but with the pads for the other 16K.

The X-ROM position is for a ROM and not an EPROM so it's not much use as is, unless you can get hold of and program the nearly unobtanium 24 pin 8K EPROM.

I'd guess you're right about being able to fit a passthrough socket as well.

Lee.
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

How does one determine between a ROM and an EPROM space? Although I'd not experiment, I thought any 24 pin EPROM (I have a D2732 here) might fit and work. Assuming the board was populated with another 16K RAM and a cartridge socket, I get the feeling the companion ROM is something meant to copy cartridges.
Anders Carlsson

Image Image Image Image Image
Leeeeee
soldering master
Posts: 396
Joined: Fri Apr 23, 2004 8:14 am

Post by Leeeeee »

I don't think the 24 pin 8K ROM pinout is directly compatable with any standard EPROM pinout. 8K compatable ROMs are devices such as..

Signetics 82S641
Harris 76641
AMD 27S49
Fairchild 93Z565

.. for which I don't have the pinout handy.

Lee.
idrougge
Vic 20 Hobbyist
Posts: 100
Joined: Wed Oct 06, 2004 8:57 am

Post by idrougge »

carlsson wrote:Documentation? Manuals? Magazines? He had a small pile of Swedish PET magazines and the early issues of VIC=Nytt and VIC=Rapport.
I'd love some.
C128, C128D, C64, C64C, ABC80, ABC800, ABC806, 130XE, ZX81, Spectrum 48k, Dragon 32, TI99/4A, Laser 200, Spectravideo 328, Sord M5, VIC20...
User avatar
ral-clan
plays wooden flutes
Posts: 3702
Joined: Thu Jan 26, 2006 2:01 pm
Location: Canada

Post by ral-clan »

carlsson wrote:Inside is a printed card with the marking "32k system x-rom".
I have one of those too (as I posted in another forum):

Image

Here is the back where you can see there are FOUR swiches :o . This is very bizarre, because I have four DIP switches soldered onto the same place that you have a throw switch (compare pictures of circuit board below with CARLSON's in message above).

Image

Guess, what! Inside it's just like yours, but mine is fully populated with RAM chips. I guess I can get 32K RAM, but I don't know how to set it properly :? . I've only managed to get a totaly of 28K on my VIC by playing around with the switches:

Image

As for making a pass-thru slot...look what is silk-screened on the board: LABEL THIS SIDE. There is a place where another chip can be soldered on (to the right in the photo) marked X-ROM and in small print 8K J1. As stated above, it's probably for a ROM, but what kind of ROM would go there?

Image
10 DIP switches sounds like an odd number, maybe it is 2*4 to configure each block of 8K to a memory position?
Well here is a picture of the other RAM expander I have. It has 10 switches (well, really 2 and 8 )....what would they be for and why so many??? The board has no manufacturer label, but is marked 16K RAM/ROM EXPANSION.

Image

SO many questions! Can anyone clear up the mysteries?

Very intriguing cartridges.
User avatar
Schema
factor
Posts: 1430
Joined: Tue Mar 23, 2004 7:07 am
Website: http://www.jammingsignal.com
Location: Toronto, Ontario

Post by Schema »

Leeeeee wrote:The X-ROM position is for a ROM and not an EPROM so it's not much use as is, unless you can get hold of and program the nearly unobtanium 24 pin 8K EPROM.
Would these be the Motorola MCM68764 ? I have a handful of these actually. Unfortunately my EPROM burner doesn't handle them directly.
User avatar
Ghislain
Realms of Quest
Posts: 1279
Joined: Sun Aug 08, 2004 12:54 am

Re: Going on a VIC raid

Post by Ghislain »

carlsson wrote:We'll see what he has to offer. I'm mainly looking for VIC cartridges, but if he has other interesting VIC/64 items, I might pick them up too. Ten years ago, he was still asking the 1983 list price for his items, but now he sound more flexible. If I find a Bridge, Turtle Bridge or some other rather (heh) uncommon item, I might be willing to pay the list price. I'm thrilled!
When I was going to college in a small town around 1993, I saw an advertisement for "VIC-20/Commodore 64 Items Clearance Sale" at the local music/electronics store (the only one in that town). When I came in and asked to look at the stuff, the store owner seemed shocked that his advertisement actually attracted a customer.

Anyways, most of the VIC-20 items were software programs on cassette. And I could tell that they were pirated copies because of the way the labelling was done. Prices for the software was $30 and upwards for each item (as the store was probably charging for it 10 years earlier). And he was still asking for those prices even though the advertisement was supposed to be a clearance sale! Anyways, I didn't buy anything (I was hoping he'd just sell me all of the VIC-20 software for something like $25 or $1 a tape).

That store was notorious for selling pirated music cassettes in the 1980s and trying to pass them off as real. I think the store owner got into a lot of legal problems because of it. And here he was in 1993 still trying to sell pirated software (at the original listed price) that had been obsolete(*) for 10 years!

(*) We VIC-20 enthusiasts don't consider VIC software to be obsolete by any means of course, but I was speaking from the general public's point of view.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
MiaM
Vic 20 Newbie
Posts: 6
Joined: Sun Sep 10, 2017 5:11 pm
Location: Sweden

Re:

Post by MiaM »

Sorry for thread necrophilia deluxe, but I've had one of these boards myself once upon a time.

IIRC I soldered in a pass through connector on mine. I think I had four dip switches, but my memory may be incorrect.

I also had a three port motherboard that were obviously from the same manufacturer. That surely had a switch on the left side. It also had sockets for one or two ROM's, and maybe some dip switches. I don't remember all details but I think the switch swapped block 5 and another block for atleast one of the cartridge slots, I.E. obviously meant to make it easy to pirate copy cartridges.

I've never heard of any software sold on ROMs/EPROMs so the sockets must obviously also have been meant for pirate copies of common cartridges.

AFAIK the cartridges that a "pro user" might want to have were vic-mon, programmers aid (side by side in each half of block 3), super expander and maybe the ieee-488 cartridge (side by side in block 5). With theese eprom sockets you could have super expander and atleast one more copy of a cartridge.
ral-clan wrote:Guess, what! Inside it's just like yours, but mine is fully populated with RAM chips. I guess I can get 32K RAM, but I don't know how to set it properly :? . I've only managed to get a totaly of 28K on my VIC by playing around with the switches:
Well, you can't get more than 28-29k free ram for BASIC. The last 8k is in block 5, you can for example load a copy of most autostart cartridges there.

Leeeeee wrote:The X-ROM position is for a ROM and not an EPROM so it's not much use as is, unless you can get hold of and program the nearly unobtanium 24 pin 8K EPROM.
But a 4K EPROM will fit AFAIK, so you can for example have a copy of SUPER EXPANDER there.


P.S. it would be nice to have theese cartridges reverse engieered. It would be interesting to know how the ram is refreshed. The four 74LS157's is 4*4 two input mux'es, while the DRAM's have 8 address inputs. So I guess that two of the 74LS157's select two parts of the CPU adress bus while the other two switches between the first two and a set of counters for refresh address. It's hard to see in the photo but one or two of the IC's in the upper right corner could possible counter(s).

It's also interesting that there is a CD4050. Those aren't supposed to play well together with TTL IC's :)
Last edited by MiaM on Mon Aug 13, 2018 1:34 pm, edited 1 time in total.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Re: Going on a VIC raid

Post by eslapion »

MiaM wrote:Sorry for thread necrophilia deluxe, but I've had one of these boards myself once upon a time.
I've been on Denial for 11 years now and I really like it when every now and then somebody revives a thread that dates back before I was a member.

P.S. it would be nice to have theese cartridges reverse engieered. It would be interesting to know how the ram is refreshed. The four 74LS157's is 4*4 two input mux'es, while the DRAM's have 8 address inputs. So I guess that two of the 74LS157's select two parts of the CPU adress bus while the other two switches between the first two and a set of counters for refresh address. It's hard to see in the photo but one or two of the IC's in the upper right corner could possible counter(s).

It's also interesting that there is a CD4050. Those aren't supposed to play well together with TTL IC's :)
All the memory expansions I have sold are based on 32k and 8k static RAM chip because they are now cheap. They were quite expensive in the early 80s hence the incentive to develop DRAM based expansion.

I'd love to get my hands on an expansion like that as I have yet to find a good complete schematic for a functional DRAM based expansion for the VIC-20. Looking at the C64 schematics, you can understand what's necessary to access DRAM but the refresh part is all hidden in the VIC-II.
Be normal.
MiaM
Vic 20 Newbie
Posts: 6
Joined: Sun Sep 10, 2017 5:11 pm
Location: Sweden

Re: Going on a VIC raid

Post by MiaM »

eslapion wrote:All the memory expansions I have sold are based on 32k and 8k static RAM chip because they are now cheap. They were quite expensive in the early 80s hence the incentive to develop DRAM based expansion.
Have you ever had any issues with timing? Using chips bigger than 8k for the block 1/2/3/5 and 1k for ram 1/2/3 will require you to be sure that the address line never flips while the chip is selected and write enable is active. I haven't studied the timing diagrams and the schematics (to see where various signals are delayed, and by what amount), but a kind of conclusion is that some revisions of the VIC 20 motherboard makes for example Final Expansion 3 to misbehave in a way that makes the 3k expansion and block 5 clash, while it works fine on other VIC 20 versions. One of the non-CR versions seems to trigger the clash while another non-CR version won't trigger it. Seems like a timing issue, probably due to that those who constructed the FE and wrote the code for the programmable logic didn't go through the tedious work of reading the schematics for all VIC 20 revisions (if everyone even is available) and read the data sheets for the relevant IC's and calculate max/min timins for each relevant signal.

Some time in the future I plan to generally have a look at how to handle timing issues with the help of modern software. I think it might be a good idea to use project planning software as afaik in those you can state that each task (which would be the delay through an IC) can take a min and a max time, and you can make various stuff dependant on other stuff, and see how much the resultant time can vary due to variations in the time for each "tast" (IC delay). That way it should be easier to visualize timing stuff. For the VIC 20 it might be easy enough to do it more or less by hand, but for the more complicated stuff like the complex timing generator for the CBM-II/B series something more advanced would really help.

In a thread in a swedish facebook group we have discussed the FE3 problem, and now there is a thread about a simpler ram expansion which might be something you could had sold (ebay seller in the UK iirc) and trouble running "Doom". Can't remember if there were any conclusion though.

I think that we need some kind of more through test program for ram expansions. Not something like a test cart but something you load from disk/tape and run with it's code and data in the internal ram (which should be known good to run the test), and tests stuff like filling all ram areas with a known value, checking that everything reads back correctly, and then performs a lot of writes to one expansion ram area (one of the blocks or one of the 1k ram areas), and then checks if something in the other areas of ram expansion contains the wrong contents. Repeat this but write to the next area until everything is tested.
eslapion wrote:I'd love to get my hands on an expansion like that as I have yet to find a good complete schematic for a functional DRAM based expansion for the VIC-20. Looking at the C64 schematics, you can understand what's necessary to access DRAM but the refresh part is all hidden in the VIC-II.
Yeah, it would be nice to know how those were made back in the days. Wish I still had some of the stuff I had a long time ago, which I sadly sold off thinking I'd never have a relapse at collecting Commodore 8-bit stuff :wink:
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Re: Going on a VIC raid

Post by eslapion »

MiaM wrote:
eslapion wrote:All the memory expansions I have sold are based on 32k and 8k static RAM chip because they are now cheap. They were quite expensive in the early 80s hence the incentive to develop DRAM based expansion.
Have you ever had any issues with timing? Using chips bigger than 8k for the block 1/2/3/5 and 1k for ram 1/2/3 will require you to be sure that the address line never flips while the chip is selected and write enable is active.
Ha hum... even if you elect to limit yourself to using 8K SRAM ICs for BLK areas and 1K SRAM for RAM 1/2/3 areas, the proper operation of any and all RAM accessible by a 6502 is based on the notion that address line values will not shift while the chip is selected and write enable is active.

Why would there be a 'timing problem' because I re-encoded the BLK lines into higher address lines for a memory IC ? Modern Logic ICs have a response speed which allows them to be used as glue logic with CPUs that are tens of times faster than the good 'ole' VIC-20.
I haven't studied the timing diagrams and the schematics (to see where various signals are delayed, and by what amount), but a kind of conclusion is that some revisions of the VIC 20 motherboard makes for example Final Expansion 3 to misbehave in a way that makes the 3k expansion and block 5 clash, while it works fine on other VIC 20 versions. One of the non-CR versions seems to trigger the clash while another non-CR version won't trigger it. Seems like a timing issue, probably due to that those who constructed the FE and wrote the code for the programmable logic didn't go through the tedious work of reading the schematics for all VIC 20 revisions (if everyone even is available) and read the data sheets for the relevant IC's and calculate max/min timins for each relevant signal.
I can't answer to speculation. I have the schematics of all the VIC-20 revisions and my SRAM expansions work well on all of them.

I have not been involved in the design of the FE3 and know just about nothing of this cartridge.
Be normal.
MiaM
Vic 20 Newbie
Posts: 6
Joined: Sun Sep 10, 2017 5:11 pm
Location: Sweden

Re: Going on a VIC raid

Post by MiaM »

eslapion wrote:
MiaM wrote:
eslapion wrote:All the memory expansions I have sold are based on 32k and 8k static RAM chip because they are now cheap. They were quite expensive in the early 80s hence the incentive to develop DRAM based expansion.
Have you ever had any issues with timing? Using chips bigger than 8k for the block 1/2/3/5 and 1k for ram 1/2/3 will require you to be sure that the address line never flips while the chip is selected and write enable is active.
Ha hum... even if you elect to limit yourself to using 8K SRAM ICs for BLK areas and 1K SRAM for RAM 1/2/3 areas, the proper operation of any and all RAM accessible by a 6502 is based on the notion that address line values will not shift while the chip is selected and write enable is active.

Why would there be a 'timing problem' because I re-encoded the BLK lines into higher address lines for a memory IC ? Modern Logic ICs have a response speed which allows them to be used as glue logic with CPUs that are tens of times faster than the good 'ole' VIC-20.
I'm just asking if you have seen any problems. Afaik the only software available that would trigger the problem would be VIC DOOM as there afaik aren't any other software that uses both the 3k expansion area and the block 1/2/3 areas. All commercial and probably most home made software from back in the days either used the 3k expansion OR the larger expansions, but afaik never both.

When introducing another gate, you add a gate dealy and thus the risk of timings becoming a bit off.

Afaik noone has published a calculated timing graph for VIC 20. There are various more or less delayed clock signals (passing through different numbers of gates) and those signals are involved in the selection of the 138 decoders for both block0-7 and ram0-7.
eslapion wrote:
I haven't studied the timing diagrams and the schematics (to see where various signals are delayed, and by what amount), but a kind of conclusion is that some revisions of the VIC 20 motherboard makes for example Final Expansion 3 to misbehave in a way that makes the 3k expansion and block 5 clash, while it works fine on other VIC 20 versions. One of the non-CR versions seems to trigger the clash while another non-CR version won't trigger it. Seems like a timing issue, probably due to that those who constructed the FE and wrote the code for the programmable logic didn't go through the tedious work of reading the schematics for all VIC 20 revisions (if everyone even is available) and read the data sheets for the relevant IC's and calculate max/min timins for each relevant signal.
I can't answer to speculation. I have the schematics of all the VIC-20 revisions and my SRAM expansions work well on all of them.
Have you specifically tested VIC DOOM (or any other software using both the 3k expansion and the block1/2/3 expansions at the same time) with all revisions?

I'm nog accusing you of seeling something that doesen't work. I'm nog even sure of correct usage by the person who has what seems like one of your expansions. I'm just trying to establish if there are any known problem with any VIC 20 revision and any other ram expansion than FE3.
eslapion wrote:I have not been involved in the design of the FE3 and know just about nothing of this cartridge.
Of ocurse. I'm just using that as an example of a well known product sold in a reasonable quantity that people keep buying not because it's flawless but because it's good enough, it's "only" when using the 3k expansion and block 5 as ram at the same time that it doesen't really work on some VIC 20's.
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Going on a VIC raid

Post by Mike »

MiaM wrote: Afaik the only software available that would trigger the problem would be VIC DOOM as there afaik aren't any other software that uses both the 3k expansion area and the block 1/2/3 areas.
Of the top of my head you can include my CGA panning viewer into the list of programs that need +35K RAM. :)

320x200 - a CGA emulator for VIC-20! (+35K RAM req'd)

Also, a single program utilizing those +35K RAM all for itself isn't the only use case I could imagine. Quite as well people could want to use the +32K as "regular" maximum RAM expansion and run programs and utilities there - and use the +3K in $0400..$0FFF to "stow away" toolkits like a software drive speeder that operates independently of the main application.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Re: Going on a VIC raid

Post by eslapion »

MiaM wrote:I'm just asking if you have seen any problems. Afaik the only software available that would trigger the problem would be VIC DOOM as there afaik aren't any other software that uses both the 3k expansion area and the block 1/2/3 areas. All commercial and probably most home made software from back in the days either used the 3k expansion OR the larger expansions, but afaik never both.
Commercial, probably not but expanders like the RAMAX did allow the presence of both BLK RAM area expansions and RAM in the 0400-0FFF$ areas at the same time. Never heard of any problems. Many 'hackers' or programmers back then did create custom software that used both areas without any technical issues.
When introducing another gate, you add a gate dealy and thus the risk of timings becoming a bit off.
All Commodore 8K and 16K RAM expansion include a 74LS139 decoder and there isn't any problem there.

AFAIK, all 74HCT and older 74LS logic ICs perform their operation in less than 20ns. They perform their job about twice as fast as the C64 PLA.
Afaik noone has published a calculated timing graph for VIC 20. There are various more or less delayed clock signals (passing through different numbers of gates) and those signals are involved in the selection of the 138 decoders for both block0-7 and ram0-7.
The MOS 6502 datasheet has graphs but of course, they only include information about the CPU, not the VIC-20 itself.

However, if your theory is correct, every single VIC-20 and PET computers should have such problems. Doesn't look like it.

In the C64, the PLA introduces glue logic delays that are even greater, at up to 40ns. The delay is even a critical component in the way DRAM is accessed. In the C64c and C128, faster glue logic components were introduced and the delay got back to about the same as those of 74LS logic ICs.

I must admit, I always made sure the SRAM ICs I put on every single memory expansion I have sold since 2006 is rated for 70ns or slower. The same is true for Ultimate Expanders sold around 2006-2007 which carried an EPROM - these were rated for 120ns or slower. The objective being a shift in timing on some lines caused by glue logic would therefore be inconsequential.

The EPROM used on the Behr-Bonz is rated for 90 or 100ns depending on the batches I get.

In the past, I clearly mentioned using SRAM normally destined for use as older PC cache may cause problems but some have ridiculed this notion. I think you may have found a potential problem.
eslapion wrote:I can't answer to speculation. I have the schematics of all the VIC-20 revisions and my SRAM expansions work well on all of them.
Have you specifically tested VIC DOOM (or any other software using both the 3k expansion and the block1/2/3 expansions at the same time) with all revisions?
I did not. Some of my clients did specifically note this software caused problems on other expansions (I didn't care to note which ones specifically) and not on the ones I sell. The architecture of both the Ultimate Expanders I sold a decade ago and the ones I sell presently present themselves to the VIC as if the BLK areas expansion and the RAM/IO were two completely separate RAM expansions built onto a single board. They have separate glue logic and separate RAM ICs. This may have something to do with it.

In fact, in the case of the Ultimate Expander, having RAM in the 0400-0FFF$ area was an optional add-on and having RAM in the IO areas was not available.

AFAIK, all the expansions which have problems with DOOM for VIC use a single glue logic architecture to decode both areas and they also use very fast SRAM ICs. I think the culprit is there.
... it's "only" when using the 3k expansion and block 5 as ram at the same time that it doesen't really work on some VIC 20's.
AFAIK, the FE3 and the other 'not gold plated' RAM expansion use the same logic IC to decode both the BLK5 and 3k RAM areas.

The expansions I sell do not.
Be normal.
Post Reply