Freeze switch for the VIC, does it exist? - It DOES! '-)

Modding and Technical Issues

Moderator: Moderators

Post Reply
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Freeze switch for the VIC, does it exist? - It DOES! '-)

Post by eslapion »

Back in 1983, in the days of the Sorel VIC-20 computer club, the head of the club had a modded RAMAX cart with a reset button and a freeze switch.

When toggled, this switch would simply completely paralize the VIC temporarily. This was a fantastic add-on for games which don't have a pause (just about every game that exists on the VIC) if the phone rings or whatever other emergency happens.

I have no clue what this "pause" switch might have been connected to but if anybody has an idea, I would sure like to hear about it.
Last edited by eslapion on Mon Sep 08, 2008 10:15 pm, edited 1 time in total.
Be normal.
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 »

I vaguely remember someone doing this on a C64. All I can find after a 10-minute Google search is this comp.sys.cbm post, claiming you can pull DMA low to halt the processor. No idea what the equivalent would be on a VIC.

http://groups.google.ca/group/comp.sys. ... 24b9?hl=en
ruud
Vic 20 Devotee
Posts: 245
Joined: Wed Aug 04, 2004 11:26 pm

Post by ruud »

Schema wrote:I vaguely remember someone doing this on a C64. All I can find after a 10-minute Google search is this comp.sys.cbm post, claiming you can pull DMA low to halt the processor.
It can work but if you pull the line low at the wrong moment, like handling an interrupt, your C64 will certainly crash!
Schema wrote:No idea what the equivalent would be on a VIC.
You only have to pull the RDY (ready) input of the 6502 low, really, that's all. This trick is also possible with the C64 but then some soldering and adding of an AND gate is needed.

Code: Select all

    ___
   / __|__
  / /  |_/     Met vriendelijke groet, Ruud Baltissen
  \ \__|_\
   \___|       URL: www.baltissen.org

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

Post by carlsson »

But is there any signal on the cartridge bus that could be used, or did the Sorel computer club have a modified VIC-20? How about the /IRQ and /NMI lines, what happens to the VIC-20 if you keep pulling those?
Anders Carlsson

Image Image Image Image Image
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

ruud wrote:You only have to pull the RDY (ready) input of the 6502
Yes, timing for assserting RDY line is important, otherwise 6502 will crash.
Glue logic is needed for O1, & R/W lines.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

ruud wrote:
Schema wrote:I vaguely remember someone doing this on a C64. All I can find after a 10-minute Google search is this comp.sys.cbm post, claiming you can pull DMA low to halt the processor.
It can work but if you pull the line low at the wrong moment, like handling an interrupt, your C64 will certainly crash!
Gideon (creator of the 1541Ultimate and Ultimate Plus) did have this kind of crash occuring on his early revision models. Especially on the C128.
carlsson wrote:But is there any signal on the cartridge bus that could be used, or did the Sorel computer club have a modified VIC-20? How about the /IRQ and /NMI lines, what happens to the VIC-20 if you keep pulling those?
According to my memory, which is not infallible, it was a switch on his RAMAX so it must have been something wired to the cartridge port.

RDY is not.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

ruud wrote:You only have to pull the RDY (ready) input of the 6502 low, really, that's all.
Apparently, that's the solution. So I guess my memory played tricks on me... its not on the cart port.
Be normal.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

A little bump here.

I placed a switch between pin 2 of the 6502, the RDY line, and pin 1 which is the ground and I now have a fully functional freeze switch.

No glue logic or anything else needed. It works all the time. I have stopped and restarted my VIC hundreds of times with no problem at all.

However, be ready for a rather unpleasant surprise with games or programs which do raster effects using time critical routines, such as Bandits. This can mess up the display completely.

Extremely easy to do, generally extremely pleasant to use.

Thanks to Ruud for his advice which was right on target.
:wink:
Be normal.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

eslapion wrote:I placed a switch between pin 2 of the 6502, the RDY line, and pin 1 which is the ground and I now have a fully functional freeze switch.
Unfortunately it seems that you need to hack a bit the vic for this nice feature, there is a way to obtain the same result by using any external port ? (User, serial, cartridge or i know it seems absurd, tape, joystick, power ?!?)
Mega-Cart: the cartridge you plug in once and for all.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

nbla000 wrote:Unfortunately it seems that you need to hack a bit the vic for this nice feature, there is a way to obtain the same result by using any external port ? (User, serial, cartridge or i know it seems absurd, tape, joystick, power ?!?)
Unfortunately, the RDY line is available only on the CPU socket. In the VIC Cr I captured it on one lead of resistor R3.

No special chip or processing is needed other than just making the connection. Its about as easy as installing a JiffyDOS chip. You can probably do this with no soldering at all by using single lead pickup probes.
Be normal.
Post Reply