My actual projects
SID-Wizard:
A native Commodore 64 tracker. My purpose with writing a tracker again
is to give as many as possible spells into the hands of a
chip-musician. Goattracker, XSID, SDI and others gave a lot of
inspiration, and people at CSDB were more than ready to help by giving
ideas in the CSDB musician forum...
I won't attach any screenshots or preview in advance, because I want to
let it be a surprise... still many optimization and features are
required to release the 1.0 version, but it contains many (hopefully)
useful and never seen things already.
Necropolo
(my guitarhero bandmate) is the only person who tests it right now. I
like his honest feedbacks, and he seems to be my dedicated code-tester
a while ago.
(Helped many times with my SPRedit crossplatform sprite editor's
development. Many thanx again :)

This is my latest, seemingly very long-term project (maybe
3-4 years including hardware and dedicated software). As I've explained
at the index page, I'm fed up with today's computers, and still would
go for old Commodore products if it's about everydays' work or special,
demanding tasks. The small memory and CPU speed however limits the
possibilities on these machines. There exist several workarounds,
expansion projects...but they still have to maintain compatibility with
the old hardware.
Many articles at Wikipedia exist about alternative, parallel
processing units, the Neumann
bottleneck, or CISC
vs RISC
, or even AI neural networks
which is getting more & more common (but only programmable yet with
epoch training). It's clear that mainstream
PC
products
mostly
improve
towards
overclocking
and parallel
processing is less priorized (just some trials like dual/quadro cores,
or GPUs might be better examples for parallel hardware). They eat up energy like a network plant,
they're noisy, and dissipate a lot of unused energy as heat.
You know, the warming of
processor (and indirectly
global warming) is mainly coming
from
the
transient
of
transistors'
voltage
between
0
and 1 state.
They're just physical entities, and can't switch infinitely fast.
Otherwise transistors used in switching mode between 0 and 1 shouldn't
dissipate at all (P=U*i would be either 0*1 or 1*0 which is both 0W in
theory). That's why pumping up CPU
clock increases heat dissipation, energy loss in other
words...Therefore a computer should
incorporate many CPUs in parallel with as many buses and memories as
possible, and should work without warming at all. That would be
the REAL, thread-safe multitasking.
That's where FPGA
as such comes
into picture. I recently bought a Nexys2
FPGA board to experiment with parallelism. It runs at 50MHz, which many
would laugh at nowadays. But it has a
strength: You can implement many independent cores and many
task-specific, dedicated hardware on it, as long as the amount of
programmable logic-cells allows it. The development board has
16MB Flash and 16MB PSDRAM on it sharing the same bus...as a C64 coder
I know it's plenty of
RAM. BTW, the CPU cores will use own dedicated block-RAMs (say 'cache',
but not exactly) each besides the shared RAM.
It's planned that the CPUs, at least the main CPU will be able to handle modular
programming by default in machine code...In other words I'll be
able to easily reuse existing code
even in assembly. This will help the architecture to evolve for sure.
...to be continued...