Freeze switch for the VIC, does it exist? - It DOES! '-)
Moderator: Moderators
- 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! '-)
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.
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.
- Schema
- factor
- Posts: 1430
- Joined: Tue Mar 23, 2004 7:07 am
- Website: http://www.jammingsignal.com
- Location: Toronto, Ontario
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
http://groups.google.ca/group/comp.sys. ... 24b9?hl=en
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: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.
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.Schema wrote:No idea what the equivalent would be on a VIC.
Code: Select all
___
/ __|__
/ / |_/ Met vriendelijke groet, Ruud Baltissen
\ \__|_\
\___| URL: www.baltissen.org
Yes, timing for assserting RDY line is important, otherwise 6502 will crash.ruud wrote:You only have to pull the RDY (ready) input of the 6502
Glue logic is needed for O1, & R/W lines.
Mega-Cart: the ultimate cartridge for your Commodore Vic-20
- eslapion
- ultimate expander
- Posts: 5458
- Joined: Fri Jun 23, 2006 7:50 pm
- Location: Canada
- Occupation: 8bit addict
Gideon (creator of the 1541Ultimate and Ultimate Plus) did have this kind of crash occuring on his early revision models. Especially on the C128.ruud wrote: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: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.
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.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?
RDY is not.
- eslapion
- ultimate expander
- Posts: 5458
- Joined: Fri Jun 23, 2006 7:50 pm
- Location: Canada
- Occupation: 8bit addict
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.
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.
Be normal.
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 ?!?)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.
Mega-Cart: the cartridge you plug in once and for all.
- eslapion
- ultimate expander
- Posts: 5458
- Joined: Fri Jun 23, 2006 7:50 pm
- Location: Canada
- Occupation: 8bit addict
Unfortunately, the RDY line is available only on the CPU socket. In the VIC Cr I captured it on one lead of resistor R3.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 ?!?)
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.