BBC Micro and Acorn Electron demo effects
Re: BBC Micro and Acorn Electron demo effects
Very nice, it's good to see one that isn't just horizontal (like all mine!).
Re: BBC Micro and Acorn Electron demo effects
Hi,
Great demo but are you willing to upload the source code so that I can test it on the Atom?
Greetings
Kees
Great demo but are you willing to upload the source code so that I can test it on the Atom?
Greetings
Kees
Last edited by oss003 on Sun May 26, 2019 8:04 pm, edited 1 time in total.
Re: BBC Micro and Acorn Electron demo effects
Nice and smooth. Well done!
- FourthStone
- Posts: 1527
- Joined: Thu Nov 17, 2016 2:29 am
- Location: Brisbane, Australia
- Contact:
Re: BBC Micro and Acorn Electron demo effects
very nice demo
Re: BBC Micro and Acorn Electron demo effects
Thanks everyone, nice to hear!
I have the Starfield demo running on my trusty Electron next to me while typing this. It's very soothing and a great screen saver
@Kees: I haven't given much thought to releasing my source code yet. I will PM you the essential parts of my Starfield demo so you can try to get it to run on an Atom.
I have the Starfield demo running on my trusty Electron next to me while typing this. It's very soothing and a great screen saver
@Kees: I haven't given much thought to releasing my source code yet. I will PM you the essential parts of my Starfield demo so you can try to get it to run on an Atom.
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
0xC0DE. An amazing piece of coding and a great screen saver too! Reminds me of L/R view in ELITE and opening titles of classic STAR TREK series. It certainly has a calming effect and demonstrates what is possible on the Elk. Well done!
- marcusjambler
- Posts: 1147
- Joined: Mon May 22, 2017 12:20 pm
- Location: Bradford
- Contact:
Re: BBC Micro and Acorn Electron demo effects
Cool Demos....
Re: BBC Micro and Acorn Electron demo effects
Thanks guys. I really appreciate it!
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
I've just got to say - where were you 20 years ago on the electron Some amazing stuff!!!
Re: BBC Micro and Acorn Electron demo effects
Thank you Mr B!
Let's see. 20 years ago I had already moved on to PCs and my Electron was safely stored away in the loft
However, 35(!) years ago I played many games on the Electron, tried writing my own games in BASIC and dabbled unsuccessfully in 6502 machine code. Dreaming about creating the things I do for a hobby now. I couldn't have created these demo effects back in the day. Funny how things turn out!
Let's see. 20 years ago I had already moved on to PCs and my Electron was safely stored away in the loft
However, 35(!) years ago I played many games on the Electron, tried writing my own games in BASIC and dabbled unsuccessfully in 6502 machine code. Dreaming about creating the things I do for a hobby now. I couldn't have created these demo effects back in the day. Funny how things turn out!
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: Acorn Electron demo effects
The Electron has had some ok tune-age...
FRAK! rendered some nice tunes...
https://youtu.be/0oADqPx5Bv0
Zalaga had some decent little ditties...
https://youtu.be/TGZalhQ3v6E
Re: BBC Micro and Acorn Electron demo effects
Finally, a new demo effect: RACING THE BEAM
This one will only work on an Acorn Electron (from tape or disk), not on a BBC.
I have only tested it with MMFS (PAGE=&1900).
It will NOT work 100% correctly on any existing Electron emulator; only on the real machine!
Technical details:
Future experiments:
Enjoy! And please report any glitches you may find.
Electron disk: Electron tape:
Update: trying a different shape/flow:
This one will only work on an Acorn Electron (from tape or disk), not on a BBC.
I have only tested it with MMFS (PAGE=&1900).
It will NOT work 100% correctly on any existing Electron emulator; only on the real machine!
Technical details:
- MODE 2
- 50 fps
- Extreme cycle counting, i.e. racing the beam
- Detects even and odd fields of the interlaced display
Future experiments:
- Trying different 'flows' >> done! see below
- Playing a tune >> done! see next post
Enjoy! And please report any glitches you may find.
Electron disk: Electron tape:
Update: trying a different shape/flow:
Last edited by 0xC0DE on Sun Sep 08, 2019 9:30 pm, edited 3 times in total.
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
As an initial proof of concept I have now added a catchy tune. So this is officially my first demo with music.
NOTE: The music was originally written by Orlando for the Electron version of Frak!.
It's one of the better tunes I have ever heard on the Electron's speaker. Same goes for the (hidden) tune in Zalaga (also by Orlando).
Does anybody know of any better music on the Electron?
Technical info: instead of translating Orlando's (BASIC) music program into machine code, I "recorded" the tune with my Electron emulator by saving all writes to &FE06. This raw data (just over 1Kb) is then played back in my demo. The original program uses SOUND and ENVELOPE which I cannot use anyway because MOS is disabled in my code.
Demo with tune:
Edit: watch it on YouTube now: https://www.youtube.com/watch?v=1sm_0msFCzA
NOTE: The music was originally written by Orlando for the Electron version of Frak!.
It's one of the better tunes I have ever heard on the Electron's speaker. Same goes for the (hidden) tune in Zalaga (also by Orlando).
Does anybody know of any better music on the Electron?
Technical info: instead of translating Orlando's (BASIC) music program into machine code, I "recorded" the tune with my Electron emulator by saving all writes to &FE06. This raw data (just over 1Kb) is then played back in my demo. The original program uses SOUND and ENVELOPE which I cannot use anyway because MOS is disabled in my code.
Demo with tune:
Edit: watch it on YouTube now: https://www.youtube.com/watch?v=1sm_0msFCzA
Last edited by 0xC0DE on Sat Sep 14, 2019 10:40 am, edited 1 time in total.
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
"VERTICAL BARS" demo effect on the Acorn Electron.
Will work on the real machine and on any Electron emulator as well.
Tech info: MODE 2, 50fps, buttery smooth animation in various directions/colours/speeds/sizes/splits.
Electron disk:
Electron tape:
YouTube: https://www.youtube.com/watch?v=b67lBEbNZEg
Will work on the real machine and on any Electron emulator as well.
Tech info: MODE 2, 50fps, buttery smooth animation in various directions/colours/speeds/sizes/splits.
Electron disk:
Electron tape:
YouTube: https://www.youtube.com/watch?v=b67lBEbNZEg
Last edited by 0xC0DE on Fri Sep 20, 2019 6:02 pm, edited 1 time in total.
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
How about sneaky mirror alternate columns for the middle one
Re: BBC Micro and Acorn Electron demo effects
I may be able to do that but I'm struggling to understand what exactly you mean by that
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
Absolutely amazing effects you have created on the humble Electron. Who said the Elk could not manage smooth scrolling? I remember an effect I saw on the C64 BITD where the coder would display a bitmap image & then move it around. Would this be possible on the Elk or Beeb?
Re: BBC Micro and Acorn Electron demo effects
Thank you. On the Beeb definitely. On the Elk: depends on the size of the bitmap and the screen mode.
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
Also, see if you can figure out how the smooth scrolling is actually achieved
Hint: not all is what it seems....
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
Re: BBC Micro and Acorn Electron demo effects
You are on the right track. However, quick colour palette changes are not necessary. Once every frame (or rather, field) is enough.
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
-
- Posts: 563
- Joined: Sat Dec 23, 2000 5:56 pm
- Contact:
Re: BBC Micro and Acorn Electron demo effects
I dispute this claim.
... and since I haven't changed anything in the timing on the Electron part of my emulator in a few years, I backdate that to 2019. All I did was download the demo and run it, no tweaking was involved, no changes will be forthcoming.
EDIT: I'll try to grab a video later but, for the record, that correlates with this moment in the real-hardware video:
Re: BBC Micro and Acorn Electron demo effects
I can't think how to do it with only one set of palette changes.
Does it look good a scan line at a time?
Do you get any CPU in MODE 0-2 while the beam is off-screen per scanline?
Does it look good a scan line at a time?
Do you get any CPU in MODE 0-2 while the beam is off-screen per scanline?
-
- Posts: 563
- Joined: Sat Dec 23, 2000 5:56 pm
- Contact:
Re: BBC Micro and Acorn Electron demo effects
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
-
- Posts: 563
- Joined: Sat Dec 23, 2000 5:56 pm
- Contact:
Re: BBC Micro and Acorn Electron demo effects
Alas something seems to be off with that; I guess I don't quite have one of my interrupts properly placed horizontally. The ball bounces up and down properly, and the raster bars look correct, but it flashes between being in its proper position and being split over the edge of the screen. Which I assume to mean that my emulator is misplacing the mode split, and that's where I make the guess about horizontal placement.
Changing my placement is supposed to be as simple as tweaking a constant, if indeed that's the real problem. This section of code is a bit more embarrassing to me than many because I restarted emulation to get up to speed on modern C++ and this is very early code from that effort, but the constants I'm using are here, i.e. within a complete frame — two fields — I'm signalling the real-time clock interrupt at cycles 16704 and 56704, and the end-of-display at 36736 and 76672. If you take those numbers modulo 128, the first graphics fetch occurs at cycle 33.
So I have the two end-of-display interrupts occurring 33 cycles before pixels occur [@2Mhz], the first real-time clock occurs 31 cycles after pixels began on its line, and the second — like the horizontal positioning of end-of-display — occurs 33 cycles before they began.
If you can see any obvious issues with those numbers, let me know! Otherwise the bug is obviously more nebulous. And sorry for the minor thread hijack!
And: mode (and palette) changes always take effect immediately, which it strikes me now might or might not be true.
Typing completely extemporaneously: I'm also curious as to whether I'm doing what hardware would do if there's a 40 <-> 80 mode split on the final line of a character row with regard to updating the address. If the logic is what feels easiest, that on lines 1–7 of a character row a row start address is incremented and reloaded, and on line 8 the final counter is stored back to that row counter, then you could get smooth horizontal scrolling so I guess probably not? E.g. switch from a 40-column mode to an 80-column mode eight 40-column character from the end of the display, the display will consume 16 bytes instead of eight for the rest of the line and then on you'll have offset the video address by 8, i.e. one character square.
Have you poked at that on real hardware at all?
EDIT: it was hard to grab a clean shot, but this shows the errors in rendering currently in my emulator; the mostly-gone basketball in the middle is the end of a correct period of correct placement, and the more solid one at the outside is the beginning of a period of incorrect placement.
Re: BBC Micro and Acorn Electron demo effects
Just to let you know: this has been in the back of my mind, trying to fight its way to the front. In theory / on paper this (smooth horizontal scrolling, 1 byte at a time) sounds completely possible. I am going to try this on real hardware, starting from a stable raster so I have complete control of every cycle for precise timing. Will let you know what happens!ThomasHarte wrote: ↑Fri Jun 12, 2020 10:15 pm Typing completely extemporaneously: I'm also curious as to whether I'm doing what hardware would do if there's a 40 <-> 80 mode split on the final line of a character row with regard to updating the address. If the logic is what feels easiest, that on lines 1–7 of a character row a row start address is incremented and reloaded, and on line 8 the final counter is stored back to that row counter, then you could get smooth horizontal scrolling so I guess probably not? E.g. switch from a 40-column mode to an 80-column mode eight 40-column character from the end of the display, the display will consume 16 bytes instead of eight for the rest of the line and then on you'll have offset the video address by 8, i.e. one character square.
Have you poked at that on real hardware at all?
0xC0DE
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
"I program my home computer / Beam myself into the future"
Follow me on Twitter
Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro