file_id.diz
Defence Force presents Cybernova 202X...
_________ ___. _______
\_ ___ \___.__.\_ |__ ___________ \ \ _______ _______
/ \ \< | | | __ \_/ __ \_ __ \/ | \ / _ \ \/ /\__ \
\ \___\___ | | \_\ \ ___/| | \/ | ( <_> ) / / __ \_
\______ / ____| |___ /\___ >__| \____|__ /\____/ \_/ (____ /
\/\/ \/ \/ \/ --202X-- \/
...a cyberpunk inspired story for 48K Oric compatible systems
presented in June 2026 at the Nova demoparty
777777777777777 777777777 777777 777
7688888888888887 748888888887 18888847 76883
7688777777779881 79888888888897 77728897 18888857
76887 79881 79888888888888827 18897 3889728867
76887 79881 38888888888888847 79883728867 38897
76887 79881 738888888888882 68888857 18881
76887 79888897 7988888888837 758883 76888867
71317 71333317 7333333337 7177 71333317
-===< Credits >================================================================-
h0ffman ......... Music
Kl0d ............ Grunt work
Dbug ............ Creative work
With grateful nods to:
Tomasz Pioszyk - gun lineart
NeoGzus - digital flaming skull image
Krzysztof Olborski - The megabuilding artwork
P.T. Adamczyk - Composer of "Never Fade Away"
CD Projekt RED - For one of the best games of the last decade
Mike Pondsmith - Without whom none of the above would exist
-===< Genesis >================================================================-
I (Dbug) had not made a proper Oric demo since 2015, but fortunately Xeron and
h0ffman had kept the torch shining strongly by presenting Oric entries at the
Nova demoparty three years in a row!
Earlier last year Xeron told me he would not be able to make one for Nova 2026
and asked if I could take over, pointing out that h0ffman would probably be ok
making the soundtrack if I asked.
I've spent the last few years working on my Oric game Encounter, which had
allowed me to improve my entire development system, so I decided to give it a
shot and basically build a new demo based on the Encounter codebase with our
fancy new loader that even runs on Jasmin systems now!
Finding an idea for the demo took some time, and then it just clicked:
NOVA demo party
My current main Oric is the Oric NOVA 64 (clone made in Yugoslavia)
NOVA is also some slang used in the Cyberpunk universe
That's basically it: A nova Cyberpunk demo for the Oric Nova for Nova.
And the rest is mostly a lot of time spent on making graphics. Rather than
chasing the usual demo-style effects, I went for something more cinematic -
the tech is still there (real-time decompression, animations, scrolls, line
drawing, music and sound effect mixing, even raster bars), it just serves the
scenes instead of taking the spotlight.
And finally the h0ffman sauce on top to make the dish look and feel tasty!
-===< System Requirements >====================================================-
This demo should run on any 48K Oric 1, Atmos Nova, Telestrat or Pravetz with a
double sided floppy disk drive (Microdisc, Cumana, Jasmin, Cumulus or Loci).
Any recent Oric emulator (such as Oricutron) will also work.
-===< Contact Information >====================================================-
Defence Force website:
- http://www.defence-force.org
Forum:
- http://forum.defence-force.org
IRC:
- #oric on IRCnet
NeoGzus: https://www.deviantart.com/neogzus/gallery
Krzysztof Olborski: https://www.artstation.com/krzysztofolborski
Tomasz Pioszyk: https://www.artstation.com/pioszyk86
-===< AI use >=================================================================-
Last year I released "Vibe Coding" for the Atari STe - a demo with zero AI in
it, despite the title. Some people voted it down on principle anyway. This
year, well... they'll have something real to complain about.
This year I started to use Claude Code at work, as part of a project of checking
if using code assistants can actually help us achieve our goals and I did try
it at home for things like adding RSS support to the blog, fixing some old bugs
in the mobile rendering of the website, etc... then I used it to fix some long
standing bugs in the OSDK, things I never had the time to work on.
The result? It's hit and miss, but like many things in computer science, the
good old "garbage in -> garbage out" still stands... and code assistants are no
exceptions.
So can Claude write 6502 code? Yes, it definitely can.
Is the code any good? Depends, ranges from quite smart to completely hopeless,
but the trick is that if you can point out the problem it will generally be
able to fix the issue, and if it fails to do it you can edit the code and show
how you fixed it... and then it can apply that pattern.
So, did I write any code in this demo?
Well, it's based on Encounter, it uses the OSDK, and pretty much all of that is
code I wrote in the last 3 decades, most of which has been publicly available
on SVN and Git for free since it existed: The Oric community effectively
provided the training set on how to program on the Oric, so we are now reaping
the benefits of having been public all that long.
So, did I ACTUALLY write any code SPECIFICALLY in this demo?
I did not write much 6502 in this demo, most of it was written by Claude, but
there was quite a lot of prompting, testing, iterating, pointing at code that
could be done more efficiently, pointing at misuse of zero page or misaligned
buffers, redundant functions, etc... and I had to manually edit the code maybe
a dozen times in total.
The thing is, almost nobody makes demos for the Oric, so it's not like on the
C64 where you can get an army of people working on a single demo.
By having Claude writing the code, it gave me the time to work on the design,
make the graphics, tweak the timings, edit the order of parts, etc... it's like
making the demo with a friend, except it does not get annoyed when you ask to
revert some changes because they don't quite work the way you hoped they would.
Another thing is that I'm tired.
I simply don't have the stamina and ability to stay focused that I used to have.
So the choice is simple really:
1) Don't use any AI and end up not finishing anything or release very rarely.
2) Use AI and finish stuff.
Let me be clear though: AI does not imply "slop", in the same way as "hand made"
does not imply "quality".
The way I used Claude for example was things like:
"Ok, I added a new loading_screen_netwatch.png image, can you add it between the
windows and the monitor module?"
One prompt resulting in the file being added to the makefile with the proper
conversion parameters, integrated in the demoscript with the proper #ifdef for
loading screens.
It's not experience shattering, but this stuff takes a long time to do, and it's
boring. So instead of spending 5 minutes finding the right file, checking the
conversion parameters, etc... the agent does that automatically based on the
existing patterns while I'm doing something else, and when it's done I can just
check.
That's it, choom, enjoy the demo!