English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 01 April 2013, 20:30   #1
Ted1969
Registered User
 
Join Date: Feb 2013
Location: Hambleton, England
Age: 54
Posts: 9
Thumbs up Winning Amiga 500 demo at revision

Hi all,

Perhaps slightly off topic for this forum as it's Amiga Scene stuff, but the winning old-school demo at Revision 2013 was Rink-A-Dink REDUX by Lemon, available from here.

http://www.pouet.net/prod.php?which=61182

More on topic is the fact that the original version of this demo used to be a real pain to try and get to run on WinUAE and interestingly, for you Amiga programmers and emulation purists, there's a stack of text at the end of the demo about the changes required for WinUAE over a stock A500 (might be of some interest to Toni) along with a few hints and tips on how the effects were made... cool retro stuff

Thanks

Ted


P.S. I thought about hacking the text out using Action Replay & WinUAE, but then I realised I didn't have an Action Replay ROM... and my hacking skills wouldn't know where to start with compressed text on disk. Maybe some kind demo fan will attach it to this thread, but you should take a look at the demo anyway if you want to see some fast A500 code

Last edited by Ted1969; 01 April 2013 at 20:43.
Ted1969 is offline  
Old 01 April 2013, 23:03   #2
Codetapper
2 contact me: email only!
 
Codetapper's Avatar
 
Join Date: May 2001
Location: Auckland / New Zealand
Posts: 3,182
Post Rink a Dink end credits

you have been watching

R I N K A D I N K
R E D U X

by

L E M O N - P O I N T


an OCS trackmo for the
oldschool demo competion at


R E V I S I O N

29th March - 1st April 2013
Saarbrucken - Germany




- CREDITS -


Graphics
Facet
Prowler
Paradroid

Original Soundtrack
Nuke

The Redux Remix
Magnar

Spatism
- second track -
Magnar

Gone 4D
- ending track -
Nuke

Code & Design
Paradroid



- also starring -

The Red Faced Monster
Paradroid 2.0

This Lovely Lady
Mrs Paradroid



Hi there! Paradroid here, but I don't really have time to write much as the deadline for the compo has already passed. Luckily I already prepared a run down of all the effects in this demo, giving a short explanation of the techniques and tricks used, so at least you're not now viewing an empty screen... : )


(left mouse button to pause)


Opening Logo Zoom
Same as the original RAD, but with a reverse of direction which leads into a brief mosaic effect. The zoom is a simple enough trick, with each line displaying a coarsely pre-scaled image with the smooth steps in between achieved by spamming the hardware scroll register across the screen. The hardest part was making it work with both real hardware and WinUAE as the DMA timings are slightly different and I'd often get gaps in one or the other.


Star Zoom
Not much to see here, but I spiced up the transition a little by adding a feedback effect to give the impression of particles.


Presents
The first thing I coded for the demo. The original twister used pre-calculated points that were plotted and then filled, the shading was probably the same. Not sure why I did it that way as the hardware is plenty fast enough to do it realtime, in fact after recoding it I had so much time left over that I made it solid. All was great until I ran it on a real Amiga and it was hellishly slow – turns out I wasn't running WinUAE in cycle exact mode so had to recode it. Lesson learned and luckily I had been a bit lazy and had plenty of scope for optimisation to get it back into 50Hz, phew!


Rink A Dink: Redux
Similar to first time around, although I made the logos appear in the correct order this time. The 'A' also now has a transparency effect. The intention was
to have a warping lens effect here, but I ran out of time. Most of the coding time was sunk into making the Redux logo fall into place as it required some convoluted clipping of the RAD scene.


Lemon Image
This was an abandoned effect, but I had a second to fill so used it for the transition to black. It's used again for a different transition later on...


Plasma
Rewrite of the original plasma effect, but shortened to improve the pacing. The second effect is a simple variation that blends two plasmas together.


Glenz Vector
I just had to have some classic Celebrandle vectors. The object that zooms into the scene is drawn using a couple of methods as the blitter wasn't quick enough to draw and fill three overscan bitplanes at 50Hz. The front facing and inner white polygons are drawn using the blitter as normal, but the bitplane for the overall shape is achieved using the copper to select bitplane spans.

When the clipping kicks in I switch to pure blitter rendering, but this time there are four bitplanes. The rendering is copper controlled while the CPU is running flat out doing the clipping and generating the blitter information. I'd only seen this effect done properly (i.e. all 4 bitplanes clipped) in an A1200 demo, so I was very happy when I finally got it working at full speed on a vanilla A500.


Vertical Bars
I had this in mind years ago after seeing an ident sequence on TV. I found a rough version of it I'd coded up for a demo called DMA Dream and worked from that. It actually looked a little dull as an effect, so I made the light source dynamic and introduced some stippling to achieve the illusion of extra shades.


Colourful Vertical Bars
More old code revamped, but it's quick and I needed to buy some time for preparing the next sections of demo. The bars are a realtime generated HAM image and there were going to be a few more patterns, but it was a bit dull to see after the previous effect so I stuck to a single spinner and made it move on as soon as possible. Apologies for the programmer colours, I left it until too late to them properly, oops!


Star Field
Nothing special with just a couple of thousand stars, but again this is because I needed to leave over some CPU for preparing the next part. You may have missed that the final larger star balls to fly out of the screen are the same colours as the balls in the next sequence.


Big Balls
A world record? I actually found out about an OCS demo that had already done 8 after finishing this effect, so I went back and redid it to get an extra one in there. This was all done with bitplanes which is why I was able to add a translucency effect too, unlike other demos which use sprites for the balls at the back. A think I can push the number even higher, but that will be a task for another demo.


Colourful Image
What a pain in the ass this was! It may look like a simple image, but it's HAM mode and changing it's palette every line to get even more colours out of it. Having that and then also stretching it down the screen should have been easy enough, but WinUAE does some strange things when you use HAM and a none black background, so lots of messing about was needed, grrrrr!

It was getting close to the deadline for completion and there was no time for anyone to pixel a proper picture, so I opted for a photo of my kid instead. His face painted to look a little like the monster that featured in the original RAD, although you probably wouldn't have noticed until reading this : )

RotoZoom
Similar to the original in that it can display 4096 colours, but I managed to more than double the vertical resolution and add a 50Hz offset flicker to give the impression of increased horizontal resolution too. I had some free frame time so chucked in a simple warp effect to finish it off. The tricky part of this effect was to the fade in from white at the very start of it. The original used pre-faded images for this, but I didn't have enough memory this time around, so I instead generated a small animation in the background and played that back – a bit over the top for what is only about 8 frames, but it looked better for it.


Greetings
So I actually remembered to put greetings in a demo for once! There are several thousand dots being plotted behind the scroller, which isn't a record, but that's the price of having other stuff going on at the same time.

The “Heart of Melon” animation is just a little joke dating back to some of the trolling/trash talk that went on between our groups back in the day. No harm is meant by it, in fact they were one of my favourite groups and some of us were friends and remain so to this day. Maybe they should make another OCS demo too so they can send a reply – I can but dream! : )


Dot Vector
As seen before in Kefren's Desert Dream. Nothing too clever going on here, I just wanted something to transition to the next effect that wasn't just a simple fade and I had an in progress version ready to work from.


Clipping/Morphing Vectors
An effect lifted directly from Booze Design's C64 demo “Edge of Disgrace”, which explains the little message that appears at the bottom of the screen ; ) After I finished it I was well within 50Hz so added a stipple layer that allowed for much smoother lighting (when viewing on a CRT display).


Lit & Clipped Icosahedron
A continuation of the sequence from EoD, but I added some full colour (i.e. not RGB) light sources. It's based on the code for the clipped glenz, so there is nothing more to explain.


Filled Balls
These are visually the same as the balls I created for Anarchy's Deja-Vu demo, but a little bigger and with an extra ball thrown in. The balls at the front are rendered with bitplane spans, while the furthest is constructed from sprites. The trick was to animate it in such a way that the smallest ball was never over a certain size, otherwise it couldn't be represented with sprites. I could have made them even bigger, but opted to keep the preferred to keep the noisier fill pattern (see Desert Dream for what they look like without this) and avoid losing two sprites as happens when using overscan mode.


Credits
Pretty much identical to the original RAD but with a few tweaks to allow the top and bottom to animate at the same time. I did rewrite it to handle more colours in zooming logos, but needed the frame time for background tasks relating to the next effect.


Tunnels
The original RAD stored these on disk and just played them back. I planned to do the same with Redux but we ran out of diskspace towards the end of development and the tunnel data was the stand out candidate for culling. It took a couple of days to rewrite the effect but eventually got it quick enough, saving the second music track from being removed instead, YAY! : )


The End
Nothing much to say, it just seemed like a fitting end to a demo that has been an absolute joy to program. Most of my working day is spent making API calls to hardware that does everything for you, so to come back to a platform that lets you get so close to the metal and have some fun has been a truly wonderful experience.


Thank you for watching.


See you in the post-party AGA fixed version!


BYE BYE
Codetapper is offline  
Old 01 April 2013, 23:13   #3
Dr.Venom
Registered User
 
Join Date: Jul 2008
Location: Netherlands
Posts: 485
Quote:
Originally Posted by Ted1969 View Post
Perhaps slightly off topic for this forum as it's Amiga Scene stuff, but the winning old-school demo at Revision 2013 was Rink-A-Dink REDUX by Lemon, available from here.
Thanks for the pointer, very nice demo and relaxing to watch, including reading the end-scroller. Brings back memories of the days when A500 demos were released on a regular basis...

@Codetapper: Ahhh, now you've spoiled it...
Dr.Venom is offline  
Old 02 April 2013, 00:54   #4
robinsonb5
Registered User
 
Join Date: Mar 2012
Location: Norfolk, UK
Posts: 1,153
Very nice! Just watched it on YouTube, then watched it again "properly" (OK, nearly properly!) on the Minimig.
robinsonb5 is offline  
Old 02 April 2013, 09:45   #5
Ted1969
Registered User
 
Join Date: Feb 2013
Location: Hambleton, England
Age: 54
Posts: 9
@ Codetapper - Thanks for pulling the text. I won't ask how you did it but it saves me from trying to find out how to do it myself

@ Dr.Venom & robinsonb5 - No worries. The original version (often labelled Rink-A-Pink, but then that D does look a pit like P) is not very relaxing trying to get it to run in WinUAE and I never even tried on my A12oo. If they make the post-party AGA version then it should work on all Amiga's and WinUAE without issue
Ted1969 is offline  
Old 02 April 2013, 10:41   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
I have already requested UAE non-working example code from demo's programmer.

I don't personally like if standard A500 demo has any kinds of UAE workarounds. It is totally wrong, it is my "job" to fix it, original programmer shouldn't care and/or waste time.
Toni Wilen is offline  
Old 02 April 2013, 11:18   #7
Paradroid
Rock Lobster
 
Join Date: Nov 2012
Location: Macclesfield
Age: 49
Posts: 40
Hey hey hey, Toni! I'd like to say that the demo wouldn't have got made at all if it wasn't for winuae, so please don't take my complaining about it in the demo harshly. It's a wonderful piece of software and works great most of the time

I'm recovering from the run up and the party itself right now and still need to fix some A1200/A4000 issues (once I can face it), but once I'm done I'll get those examples made for you.

Be prepared for DMA timing hell, lol


(suppose it's better than me emailing directly about audio sync issues that don't really exist... sorry about that )
Paradroid is offline  
Old 02 April 2013, 11:26   #8
Ted1969
Registered User
 
Join Date: Feb 2013
Location: Hambleton, England
Age: 54
Posts: 9
That's good to hear Toni. If it adds to the accuracy of an emulator that has a very high level of compatibility, with far more configs and software than other emulated systems, then us emulator enthusiasts benefit. Seemingly it will add to your satisfaction in creating something that should handle all the tricks and turns that demo (and some game) programmers throw at it.

I'm quite grateful to the Lemon people (ex-Core Design (Tomb Raider), whom knows ?) for getting it to work on WinUAE, because I currently haven't got a working A500 / A1200 setup. Although I own both machines and I know my A1200 still works, I haven't got a ready display device or external flicker-fixer that will allow me to run native Amiga modes. Perhaps it's just programming evolution for those that have transitioned through many API and hardware revisions applying a little knowledge to extend compatibility... the demo still doesn't work on A1200's apparently and I don't know about other A500 configs. I guess the maxim should be - It's an OCS demo, it's tested and works on A500 OCS.

Anyway, enough rambling from me for now, I hope to test a beta WinUAE sometime in the future with the original Rink-A-Dink and get past the bootloader.

Thanks

Ted
Ted1969 is offline  
Old 02 April 2013, 11:35   #9
Paradroid
Rock Lobster
 
Join Date: Nov 2012
Location: Macclesfield
Age: 49
Posts: 40
If you can't get past the bootloader then it's probably to do with the floppy drive speed. Set that to "100% compatible" and also make sure "cycle exact" is ticked in the chipset options. The demo also uses 1MB of ram, so make sure an extra 512KB is added somewhere (should be fine with chip, slow or fast)

EDIT:
PS. Yes, many of us were employed at Core Design, but I left just as Tomb Raider went into pre-production.
Paradroid is offline  
Old 02 April 2013, 11:40   #10
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
Quote:
Originally Posted by Ted1969 View Post
Anyway, enough rambling from me for now, I hope to test a beta WinUAE sometime in the future with the original Rink-A-Dink and get past the bootloader.
Use OCS config or Full ECS. Reading from non-existing register (DENISEID) works incorrectly because my test A500 isn't exactly in original configuration and made my tests invalid.. (Noticed few days ago..)

btw, I solved missing left edge border in rotozoomer part but implementing it properly won't be trivial.. Bitplanes have the HRM documented delay after BPL1DAT has been written but already "armed" sprites will become visible immediately. Which means sprites can be visible in exactly 1 lores pixel wide region just before first bitplane pixel. (Of course, only if DIWSTRT is small enough)

Quote:
Be prepared for DMA timing hell, lol
I am quite sure it isn't that bad anymore. Copper/bitplane/etc timing was nearly fully done few years ago. Biggest problem was missing test cases, everything just worked until now

(Only known problems are those programs that poke blitter registers, mostly accidentally, while blitter is already active. This is practically impossible to emulate without blitter circuit or logic diagrams..)
Toni Wilen is offline  
Old 02 April 2013, 11:54   #11
Ted1969
Registered User
 
Join Date: Feb 2013
Location: Hambleton, England
Age: 54
Posts: 9
@ Paradroid - REDUX version works just fine, it's the original Rink-A-Dink that gives me the purple OOPS! screen ;o) - REDUX has audio glitches in a couple of places, but I think something is pushing my aging PC a bit too hard at that point, so I get syncing issues ? And Core Design, thought so, I'm more or less ex-game industry... started out at Acid Software in New Zealand (Blitz Basic, etc.)

@ Toni Wilen - Sounds like there may be a free, slightly lame, starfield waiting to be programmed somewhere.


Glad you two have linked up. Amiga demos and Amiga emulation - Probably my favourites


Thanks,

Ted
Ted1969 is offline  
Old 02 April 2013, 12:10   #12
Codetapper
2 contact me: email only!
 
Codetapper's Avatar
 
Join Date: May 2001
Location: Auckland / New Zealand
Posts: 3,182
Quote:
Originally Posted by Ted1969 View Post
@ Codetapper - Thanks for pulling the text. I won't ask how you did it but it saves me from trying to find out how to do it myself
For your information, I simply waited until the demo was displaying the credits, saved an uncompressed state in WinUAE, loaded it into CygnusEd and searched for some text that was on the screen. Then cut the text out and made a few substitutions to remove the text formatting control codes.
Codetapper is offline  
Old 02 April 2013, 13:04   #13
Asle
Registered User
 
Join Date: May 2006
Location: Paris/France
Age: 52
Posts: 527
And for further information, it's RNC data on disk (replace PDR with RNC). The text is in one of them. Same for other texts.
Asle is offline  
Old 02 April 2013, 14:47   #14
Mclane
Old retro god.
 
Mclane's Avatar
 
Join Date: Apr 2002
Location: Northolt, West London
Age: 62
Posts: 857
Ted, just tested Rink a dink original on beta 14 Winuae and it works perfectly, it does seem to sit a wile on the Boris Vajalelo type loader screen but it is still reading tracks and runs fine.

I'm using a DMS of it, maybe you have a corrupt version or as said the floppy timing is set to high.
Mclane is offline  
Old 02 April 2013, 14:49   #15
dalton
tulou
 
dalton's Avatar
 
Join Date: Jun 2006
Location: Gothenburg / Sweden
Posts: 88
Did anyone rip the music yet? Would really like to get my hands on those mods!
dalton is offline  
Old 02 April 2013, 15:19   #16
Ted1969
Registered User
 
Join Date: Feb 2013
Location: Hambleton, England
Age: 54
Posts: 9
@ Codetapper - I didn't think of that one, emulation state saves to the rescue

@ Asle - RNC is Rob Northern ? I thought he was Gremlin ;o) Thanks for the info though

@ Mclane - I just tried the .adf on WinUAE beta14 again too (called Rink-A-Pink) - could be a corrupt image I guess, everything else is set for accuracy (cycle exact, 100% compatible floppy speed, standard memory config 512K chip, 512K 'slow', OCS, KS 1.2). I'm due a format and re-install so I'll check again once I'm up and running
Ted1969 is offline  
Old 02 April 2013, 16:25   #17
Leffmann
 
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
Really great looking demo!
Leffmann is offline  
Old 02 April 2013, 17:07   #18
1time
Amiga Lover
 
1time's Avatar
 
Join Date: Jan 2010
Location: Stockholm / Sweden
Age: 46
Posts: 612
Really nice demo..
1time is offline  
Old 02 April 2013, 17:18   #19
Mclane
Old retro god.
 
Mclane's Avatar
 
Join Date: Apr 2002
Location: Northolt, West London
Age: 62
Posts: 857
Quote:
Originally Posted by dalton View Post
Did anyone rip the music yet? Would really like to get my hands on those mods!
Just tried with the built in Winuae ripper but all I got was garbled mess, said it was a The Player 6.1A module but tried it on Deliplayer and it was rough.
Mclane is offline  
Old 02 April 2013, 18:21   #20
Asle
Registered User
 
Join Date: May 2006
Location: Paris/France
Age: 52
Posts: 527
Yup, P61A. It's as is on disk. Launch any ripper on the adf.
Was hoping for the original to pop-up, though.
Asle is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Winning Tactics (KO2/PM) adalsgaard support.Games 1 03 July 2015 16:50
revision demo party 2013 excellent !!! turrican3 Amiga scene 23 14 April 2013 20:11
Amiga 1200 revision mai MarketPlace 8 06 March 2010 16:49
Amiga 600, A600 what revision? Whitesnake support.Hardware 2 10 November 2004 08:15
Body Blows winning pose voices lilalurl New to Emulation or Amiga scene 5 08 April 2003 18:33

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 06:23.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09244 seconds with 13 queries