A.D.A. Amiga Demoscene Archive

        Welcome guest!

  

  

  

log in with SceneID

  

Demos Amiga Demoscene Archive Forum / Coding / coding tutorial: how to structure a demo

 

Author Message
z5_
Member
#1 - Posted: 20 Dec 2004 12:54
Reply Quote
So far, we have talked about a lot of things like blitter, startup, shutdown, copper, structuring an asm project... But one thing still missing for newbies: structuring a demo.

I mean, different parts of a demo will need different variables, different resolutions, different screen setup, different colors,... so basically it will need a different copperlist (or other solution for those who don't like copperlists).

So far, i have studied quite a lot of source code, and everybody has a different approach to the matter. I liked the way everything was setup in Major Release/Da Jormas though. Very structured and quite easy to comprehend. Vesuri, the coder, seems to use one copperlist and for each effect, he sets up a 'copper template'. An effect always consists of two parts: initialisation of the effect and then the effect in itself. Each of those parts is triggered when the music reaches a specific line.

In the initialisation part, memory is cleared, data is decrunched, bitplane pointers are set, the copper template of the effect is copied to the copperlist, tables are created,... Once this is done, the effect in itself starts.

There is one thing i don't understand in this approach: the chipmem/fastmem part at the bottom of the source. It seems that the necessary memory, chip and fast, is reserved for each effect? The caculations there are something i yet don't understand.

So in general, what is the best approach to handle different parts in a demo? What about memory? Do i need to reserve chipmem/fastmem for each part and if yes, how much? Do i work with one screen buffer or do i reserve screen buffers for each effect...
TheDarkCoder
Member
#2 - Posted: 20 Dec 2004 13:03
Reply Quote
is the sourcecode of Major Release public available??

About your question, I don't use a fix schema. In every production I used a different one, depending on the needs
Cyf
Member
#3 - Posted: 20 Dec 2004 13:27 - Edited
Reply Quote
is the sourcecode of Major Release public available??

yes :
;This source code is provided strictly for the purpose of education.
;
; You are NOT allowed to sell or modify this code or
; use any part of it in your own programs (modified or unmodified)
; without a written permission from the author.


so, dont use any of effects coded in this demo ! code effects yourself !! ^^ but some effects are coded with the same approach (like imageroll, used for others copper effects, ...)

about the structure of a demo, you can use the approach you like most.
for memory, you can reserve big Datas Buffers in chip (for screens) and in fast (or public), common for all effects, or alloc for each effect.
the coplist template is used between each effects, during init. each effect copy a standard copperlist or create own copperlist (for copper effects).

for the script "when each part init and start", like DaJormas, you can use a simple list with #frame or #music line and address of the part (it's not a specific DaJormas system!), or with some improvment : TEK Rampage system is totally crazy! with instructions+parameters (call,gosub,...).
Those systems are used for big demos (one filed or trackmos)
or the most simple : sequential effects, launched one after the other. (aspartame)
Create your own.
TheDarkCoder
Member
#4 - Posted: 20 Dec 2004 14:21
Reply Quote
of course I like coding effects by myself, however is always good to learn somating from great productions!!
Where can I find the source?
Cyf
Member
#5 - Posted: 20 Dec 2004 15:15 - Edited
Reply Quote
source included : scene.org without datas, nor *.i files

ps: sources of cracktros/trainers wanted on flashtro

@z5: add Silicon Asparame and TEK Rampage on ADA ^^
z5_
Member
#6 - Posted: 20 Dec 2004 17:58
Reply Quote
so, dont use any of effects coded in this demo ! code effects yourself !! ^^ but some effects are coded with the same approach (like imageroll, used for others copper effects, ...)

I was never intending to use any effect/code from there. But it was released for learning purposes so i am allowed to actually learn from it :)

I believe in good guidance from the start. Yes, probably i could figure it out for myself and maybe set up a system myself in the end, but even then it may be a bad system. I find it important to start the correct way, not to end with a pile of crap after months of 'trying it out myself'. Bad habits are not easy to get rid of, so better start out the correct way. I believe in help/tips/advice from experienced users because they know and have been there themselves.

I can't spend every free minute of my time learning assembler as i'm sitting before a computer screen each day at work. So at the evening, i don't feel like sitting in front of a computer screen again. Which is a problem... :(

@cyf: i'll check them out. I have heard good things about TEK Rampage.
d0DgE
Member
#7 - Posted: 24 Dec 2004 23:58
Reply Quote
@ z5_

I feel with you 'cause I've got the same problem by now as beeing an
independent PHP slave for hire there was plenty of work before x-mas.
yesterday I've sat for about 14 hours in front of screen.

and thus there left nearly nothing for upgrading asm skills which are
still rather poor by now :(
sp_
Member
#8 - Posted: 8 Aug 2006 01:42 - Edited
Reply Quote
I should upload my c2p os somewhere. it contains several c2p's a screen open macro wich is similar to AMOS screen open. Everything made by banging the hardware ;)

1x2 support (copper)
vbl interrupt. with script system for timing.
faders
music compressor/decompressor
I use a variant of bit rate reduction algoritm..Fast decompression
1 meg = 1 minute music.

c2p's:

4bit, 6bit,8 bit, 12bit(ham6),15bit (ham6),18bit(ham8)

both 030 (blitter / scrambled etc)
and 060 optimized.

My last production was a demo called retrospectacular. Kindergarden 1998 vinner. Not very spectacular :) but it's one of the last 030 demos available.. since I never got 060. I mostly use 4 bpl 1x1 with modulo cheating to produce more colours (flipping the screen). I also have a truecolour 15bit bumpmapping and realtime music decompression 20fps++ on a 030. The scroller is made using sprites to get the 50fps feeling.
z5_
Member
#9 - Posted: 8 Aug 2006 12:14
Reply Quote
sp_

My last production was a demo called retrospectacular. Kindergarden 1998 vinner. Not very spectacular :) but it's one of the last 030 demos available.. since I never got 060.

hi sp :o) Must say that i really enjoyed and still enjoy your last demo Retrospectacular. Never grow tired of it... 8 years later you're still interested in coding and Amiga. You should make a comeback someday :)
sp_
Member
#10 - Posted: 8 Aug 2006 12:37
Reply Quote
Thanks Z5, Actully I will do a comeback soon. I've been working as a fulltime developer in C++/C# for 7 years now, so I haven't got any time for scene stuff..

I'm actually planning to take a loong vacation i Thailand. Look for a demo thats "Made in thailand" in 1-2 years..
..
After watching the TBL demo at assembly beat the hell out of the anabolic steriod pc productions. I relize that:

PC CODERS BUY NEW HARDWARE, AMIGA CODERS OPTIMIZE!
z5_
Member
#11 - Posted: 8 Aug 2006 12:51
Reply Quote
Thanks Z5, Actully I will do a comeback soon.

Is this for real or are you making a joke? Seriously, your last demo was great... and there needs to be competition for TBL... you know you can do it... Don't be shy :o)
sp_
Member
#12 - Posted: 8 Aug 2006 12:58
Reply Quote
hehe, well first I need a break from the working life, then we wil se what happens. If Slide/Polk Brothers could begin tracking again, and maybe archmage/Andromeda for the graphics. Damn that would be a TBL killer team!! ;)
z5_
Member
#13 - Posted: 8 Aug 2006 13:01
Reply Quote
If Slide/Polk Brothers could begin tracking again, and maybe archmage/Andromeda for the graphics. Damn that would be a TBL killer team!! ;)

Damn right it would :o)
winden
Member
#14 - Posted: 9 Aug 2006 17:52
Reply Quote
is archmage is doing graphics again, or just hanging out at pouet? it sure would kill to have him back active ;)
sp_
Member
#15 - Posted: 9 Aug 2006 18:44 - Edited
Reply Quote
I met archmage and Hyde at the Solskogen party here in Norway. Archmage is back!! He won the gfx compo!
..

Anyway, Mr. hyde told me they had been working for 2 years to finish nexus7. Andromeda won the gathering and the party in the same year(1994) As a group they had nothing to prove anymore. :)
.
But Hyde told me had been coding some effects afterwards, but they where to crazy to put in a andromeda production.
winden
Member
#16 - Posted: 9 Aug 2006 20:19
Reply Quote
"[Andromeda] As a group they had nothing to prove anymore"

this gains you a nomination for the best understatement of the year 2006 ;)
klipper
Member
#17 - Posted: 10 Aug 2006 00:23
Reply Quote
but if they did return, they'd have something to prove in 2006 :) A lot has changed since '94
z5_
Member
#18 - Posted: 10 Aug 2006 12:59
Reply Quote
Continuing off-topic, Archmage did a great picture for the Solskogen 2006 gfx competition.

 

  Please log in to comment

  

  

  

 

A.D.A. Amiga Demoscene Archive, Version 3.0