Edgedancer by Icebird [web]
_ __ /~\ __ / \ ___ _____/ (__ /___\ ____ ) \__ . /___\/x__\) __\ . \_ ___/ x \ _ \ . :::___ / \/ \ _\ \ x \ \ ) / \:::. :::/ \______|____/_____/____\_/ \_____/::::. ------/______|----- presents -----\___\------------ _ __ -================- =-{ Edgedancer }-= -================- a 90 byte intro by exoticorn/icebird for RISC OS on modern hardware, for example Raspberry PI 2 or later. It requires a CPU which supports the Thumb-2 instruction set. The target platform is a Raspberry Pi 3B+ where it runs at a reasonable framerate. This is the final version, the party version was shown at Outline Online 2020 and was pretty much unoptimized 112 bytes. To exit this intro you need to kill it using alt+break. NOTES: This intro runs in 320x256 (Mode 13, for those who still remember the Acorn Archimedes days), so you'll have to make sure your system supports this resolution. The easiest way to do so is to have 'disable_mode_changes' in your cmdline.txt and to have the 'anymode' module loaded. RISC OS Direct comes set up like this, so if you are running Direct and haven't changed the cmdline.txt you should already be good to go. This intro uses Thumb mode (16bit instructions, rather than the original 32bit ARM instructions) and does system calls from this mode. RISC OS fully supports this, but a commonly used 3rd party module called SpecialFX intercepts system calls (mostly to force enable anti-aliasing in old applications) and is not Thumb aware. So having this module loaded causes the intro to crash immediately. A simple 'RMKill SpecialFX' remedies this. I have also provided an Obey file you can run which does just that. Bonus versions: --------------- EdgeARM: ARM mode version in 128 bytes. Runs (or possibly crawls) on every RISC OS machine out there. Showing that this intro can fit in 128 bytes even without using Thumb. EdgeARMSlow: Somewhat pointless, half as fast as EdgeARM @ 124 bytes. Only neat thing about it is that it uses just a single branch instruction. Edgedancer480: Same as the main version, only in 640x480. It's a little slow on my Pi 3B+, but according to Kuemmel, it's fast enough on a Pi 4. EdgedancerCentered: The final version saves two bytes by not having the camera perfectly centered. This version looks identical to the party version at 92 bytes. EdgedancerXS: Saving two more bytes by throwing the correct aspect ratio out of the window. Building the intro from source: ------------------------------- To bulid the intro yourself, you'll have to first run !GCC to set the run-path for the gcc binutils, then just run !BuildAndRun. Special thanks have to go to: ----------------------------- - giZMo/icebird for reminding me to do a backup of my old RiscPC HD before it is too late. Taking a look at my old code again inspired me to check out RISC OS on Raspberry PI. - Kuemmel for his RISC OS 256 byte intro '3dball' @ Revision 2020 which also motivated me to release something for this platform again. - Phlamethrower for pointing out (via Kuemmel) that RISC OS fully supports Thumb mode, as long as the 3rd party 'SpecialFX' module isn't running to mess things up. Also a big thanks to anyone involved in keeping RISC OS alive, 20 years after the death of Acorn. It still is a really fun platform to code on. Contact: dennis.ranke@gmail.com
[ back to the prod ]