There is development of new hardware named “BeamRacer” with “VASYL” as its core for C64 that is designed to be placed in VICII socked.
What is BeamRacer (Vasyl) and why is it interesting?
It’s basically a kind of “copper”, chip that can take almost all the VIC handling load off the 6510. This should allow for some not previously conceivable things and effects, higher SID update rate and more CPU time for other things:)
The final product is to be delivered with full programming reference guide and documented BASIC extension for running VIC effects directly from BASIC – as I wrote already – at no CPU cost.
As can be seen on picture the expansion sits between the VIC and its socket. By default it doesn’t do anything because we want to keep the expansion as “invisible” as possible, but Vasyl have all VIC signals and buffers/process the required signals. R/_W is one of signals, which Vasyl handle because it needs to communicate with the VIC, but with flip of a bit it can add a tiny delay to the R/_W line, which makes HMOS VIC output behave the same as NMOS one. Then there are VASYL commands to help controlling badlines. One can make it wait for next badline (needed for some effects) without calculating its number and one can force badline at any position.
Vasyl can be programmed direct and indirect programming (when properly set, VASYL can actually even reprogram itself, w/o CPU interaction)
Another advantage is that there it was only a small step to have the sparkles annoyance fixed at will as well a jumper to enable “Lumafix”.
As we already wrote documentation and technical/reference guide for VASYL needs to be finished,but current implemented registers are described here:
$00 CTRL 8 VASYL control
$01 DLISTL 8 Lo-byte of the Display List address to use from the next V-Blank
$02 DLISTH 8 Hi-byte of the Display List address to use from the next V-Blank
$04-$05 ADR0 16 Select address in VASYL memory to write to
$06 STEP0 8 Select address post increment value (-128 to +127)
$07 PORT0 8 Actual value to be transferred to/read from VASYL memory
$08-$09 ADR1 16
$0a STEP1 8
$0b PORT1 8
$0c REP0 8 Repeat last PORT0 write 1-256 times (0 means 256)
$0d REP1 8
Currently Basic extensions for Vasyl are on EF3, authors does not plan to put in on a single-purpose cartridge but we can build a “cart friendly” version if someone wants to put it into his cart.
SD (silverdr AT wfmh.org.pl) who is working on Vasyl seeks help for demo program(s) that will show off possibilities of Vasyl on the C64.
The only thing I would change with BeamRacer(Vasyl) is it’s name. We Have VIC,SID, CIA,PLA, CPU and other standard TLA so since Vasyl stands as a Copper it should be named COP 🙂
Who needs Vasyl? Anyone who want more CPU time for something else,
but also it might be interesting to demo scene to creat new unseen effect on our Commodore 64. ANd there is Lumafix that meens better picture.
We need to mention emulation Vice will, that is there exists patch, to emulate most of hardware functionalities of Vasyl. “Most” means it also need to be update because the latest development is not there yet.