Re: Vulcan-74 - A 6502 Retro MegaProject
Posted: Sun Jul 12, 2015 7:59 pm
Finally a rainy Sunday afternoon!
Managed to get the AVR jacked in, and so far every part of the circuitry, including the GPU bus switch has passed the tests.
I wrote a simple program to take 24 bit bitmaps and convert them to RRR-GGG-BB format data for AVR GCC.
Loaded a 400x300 image into the AVR-1284, and then coded a border and some ball sprites to test the buffer switching.

An AVR-1284 used for testing the system.
The AVR is only temporary, so the wiring is ugly!

The AVR pretends to be a GPU, but is much slower.
Orange wires are address lines (18 buts), blue wires are data bus (8 bits).
AVR also listens to V-Sync (1 bit) and controls Video Memory buffer switching (1 bit).
The AVR can do maybe 1 million pixels per second at best.
The GPU will be 20 times faster, running purely at 20MHz.
Funny, the AVR is worth $20, and the 40 logic chips in the GPU are worth half that much!
... perhaps there is still a place for old-school technologies in this modern world!

A 400x300 image displayed, and 16 32x32 sprites moving around.
Notice the single pixel white border being drawn over the screen over the image and sprites.
There border proves that all video signals are synced to the clock, and counter properly.
So this proves that the Video System is working perfectly, as well as the GPU switching system.
The next step will be to connect the GPU destination counters and get some sprites moving around.
With only the destination section working, sprites will just be single color square blocks, but this will be enough to prove the system.
Ok, off to cut, strip, and connect another few hundred wires.
Cheers,
Radical Brad
Managed to get the AVR jacked in, and so far every part of the circuitry, including the GPU bus switch has passed the tests.
I wrote a simple program to take 24 bit bitmaps and convert them to RRR-GGG-BB format data for AVR GCC.
Loaded a 400x300 image into the AVR-1284, and then coded a border and some ball sprites to test the buffer switching.

An AVR-1284 used for testing the system.
The AVR is only temporary, so the wiring is ugly!

The AVR pretends to be a GPU, but is much slower.
Orange wires are address lines (18 buts), blue wires are data bus (8 bits).
AVR also listens to V-Sync (1 bit) and controls Video Memory buffer switching (1 bit).
The AVR can do maybe 1 million pixels per second at best.
The GPU will be 20 times faster, running purely at 20MHz.
Funny, the AVR is worth $20, and the 40 logic chips in the GPU are worth half that much!
... perhaps there is still a place for old-school technologies in this modern world!

A 400x300 image displayed, and 16 32x32 sprites moving around.
Notice the single pixel white border being drawn over the screen over the image and sprites.
There border proves that all video signals are synced to the clock, and counter properly.
So this proves that the Video System is working perfectly, as well as the GPU switching system.
The next step will be to connect the GPU destination counters and get some sprites moving around.
With only the destination section working, sprites will just be single color square blocks, but this will be enough to prove the system.
Ok, off to cut, strip, and connect another few hundred wires.
Cheers,
Radical Brad




















