English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 02 February 2014, 00:23   #1
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,604
A brief history of the demoscene

This is the title of a short article I wrote yesterday when I started thinking about coding, demos, and platforms that have passed revue. This often happens with me when I'm supposed to write a simple and short reply to a thread and find I can't without losing nuance or, alternatively, posting one of my famous walls of text...

It's not about the other aspects of the demoscene, i.e. the friendships and battles, cracking and swapping, etc. And I've been catching up on events 1992-2004 when I was absent and there are a bunch of platforms I haven't kept up with. But even this brief summary could maybe be interesting for someone curious about the demoscene, and maybe other would enjoy the read as well and share memories or opinions.

So I thought it might be apt to share the article here

Last edited by Photon; 05 February 2014 at 22:50. Reason: s/replay/reply...
Photon is offline  
Old 03 February 2014, 13:19   #2
phx
Natteravn
 
phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,500
Good article!

I share your hope that the OCS-Amiga will make a similar development as the C64, with many new demos and homebrew games.

It's still a lot of fun to do some low level programming on a fixed hardware, like in the early 90s.

But I wouldn't shun cross development, as long as it is the real hardware we are coding for and where we enjoy the results.
phx is offline  
Old 03 February 2014, 20:21   #3
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,604
Thanks, I started to write a lot about the reasons for the punches I don't pull, but I'll spare you the wall of text treatment. It might make it into an article instead

Quote:
Originally Posted by phx View Post
and homebrew games.
I have wet* dreams about another major game release, though! Wouldn't it be just astounding with a really ambitious and solid new game? We've had a few that were sort of "re-discoveries" like Mega Typhoon, Snow Bros and now Putty Squad, and wouldn't something like those just blow some gaskets?
Quote:
Originally Posted by phx View Post
It's still a lot of fun to do some low level programming on a fixed hardware, like in the early 90s.
It certainly is, and it's my contention that you really can invent all sort of things on it, even if few have the time|skills for it. If a new generation of young coders had the A500 hardware under their fingers, it would have already happened, and we'd all be bitter old men whining bitterly and jealously about having been surpassed by those young punks.
Quote:
Originally Posted by phx View Post
But I wouldn't shun cross development, as long as it is the real hardware we are coding for and where we enjoy the results.
The details of that jab would be in that omitted wall of text. My basic objection is that it's unnecessary for end result or productivity and that it's less enjoyable. It should be possible to discern a common goal for a combo of punches I throw in my opinionated article.

*Not actually wet actually.
Photon is offline  
Old 04 February 2014, 12:13   #4
losso
Registered User
 
losso's Avatar
 
Join Date: Oct 2013
Location: Hamburg
Posts: 69
Too bad, would love to read that… But I’m getting timeouts/HTTP 500.

Does EAB have the power of slashdotting already? Is there a mirror somewhere perhaps?

EDIT: scrap that, working now!

PS: Great read! Can only share the optimism; bring it on, OCS!

Last edited by losso; 04 February 2014 at 12:59.
losso is offline  
Old 05 February 2014, 22:56   #5
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,604
I think in this case EAB is falsely accused! (Since it's a direct link.)
Photon is offline  
Old 06 February 2014, 09:41   #6
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Photon View Post
My basic objection is that it's unnecessary for end result or productivity and that it's less enjoyable.
Let's put it this way, I would have quit coding for c64 and Amiga several years ago if I wouldn't be able to cross develop. For my it's FAR MORE enjoyable to actually be able to use comfortable tools. And as you said, it's the end result that counts, who cares how you got there.
britelite is offline  
Old 06 February 2014, 19:45   #7
Leffmann
 
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
I agree it's less enjoyable if you're looking for that real retro feeling, but saying it's unnecessary for end result or productivity is a bit misleading. You can write any imaginable software using an old machine code monitor, but you can also reach a whole different level of productivity if you instead use a good editor and compiler, and this is what cross-development is really about; getting access to the best and most modern tools and development environments.
Leffmann is offline  
Old 06 February 2014, 20:43   #8
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,604
Quote:
Originally Posted by britelite View Post
Let's put it this way, I would have quit coding for c64 and Amiga several years ago if I wouldn't be able to cross develop. For my it's FAR MORE enjoyable to actually be able to use comfortable tools. And as you said, it's the end result that counts, who cares how you got there.
That's not what I meant. I meant that you don't need crossdev in order to make better OCS demos and be more productive. Any Amiga including an OCS/1MB Amiga is perfectly good for developing any OCS/1MB demo. This is different from earlier platforms, where the Assembler hogged more than half the available platforms.

So I'm working against preconceptions that you need to spend chunks of time setting up a devchain and having a hard time, when you could start AsmOne on your Amiga in seconds and assemble your demo in seconds, and have a good time in no time Especially if you want to try something new with the hardware, I think there's nothing like that quick and direct interaction of code>assemble>test

I also think bending the hardware is fundamentally impossible with devchain+emulator. You even get tricked by the emulator if the effect is not new but the coding is tight enough. Even with cycle-exact mode in WinUAE, even though it's really good. Certainly if you use anything else. I don't know anyone who crossdev by cable or card-swapping to a real Amiga, that's why I say crossdev = emulator.

For utilities, hardware banging is right out, and C is an actual option. If your C skills have progressed you'd want a proper C compiler, so I have no beef with that. And games need to be compatible more than they need to be flashy or super tight. But for writing new code for the hardware, you need the hardware.

Quote:
Originally Posted by Leffmann View Post
I agree it's less enjoyable if you're looking for that real retro feeling, but saying it's unnecessary for end result or productivity is a bit misleading. You can write any imaginable software using an old machine code monitor, but you can also reach a whole different level of productivity if you instead use a good editor and compiler, and this is what cross-development is really about; getting access to the best and most modern tools and development environments.
It takes 1 second to assemble and start 32963 lines of source on my A1200-060, 2 seconds on my A600-030. I can hit debug and the program starts instantly and step through the code with registers and watches. The AsmOne editor is silky and quick. I confess I'm a babe in the woods when it comes to crossdev for Amiga, and still I'm just not buying how something can be more productive than that.
Photon is offline  
Old 06 February 2014, 21:00   #9
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Photon View Post
I meant that you don't need crossdev in order to make better OCS demos and be more productive.
And I said _I_ need to crossdev in order to make better OCS demos and be more productive. Because for me (and several others) no crossdev means no demos.

Quote:
Originally Posted by Photon View Post
I also think bending the hardware is fundamentally impossible with devchain+emulator. You even get tricked by the emulator if the effect is not new but the coding is tight enough. Even with cycle-exact mode in WinUAE, even though it's really good.
And this argument goes right out the window if you're developing stuff for a regular A500 on an Amiga with any kind of accelerator or expansions.

Last edited by TCD; 06 February 2014 at 21:36. Reason: Back-to-back posts merged
britelite is offline  
Old 06 February 2014, 23:51   #10
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,604
Quote:
Originally Posted by britelite View Post
And I said _I_ need to crossdev in order to make better OCS demos and be more productive. Because for me (and several others) no crossdev means no demos.
Sure. But I'm still looking for arguments for higher productivity (rather than all or no productivity, if you know what I mean). I'm asking openly because I think coding on Amiga is fast and simple, direct and productive. Make me see where the productivity lies?

Quote:
Originally Posted by britelite View Post
(Re: Coding on a real Amiga but using an accelerator.)
And this argument goes right out the window if you're developing stuff for a regular A500 on an Amiga with any kind of accelerator or expansions.
There are two parts to this. Let's separate them.

That was addressing Leffman's crossdev productivity claims. I have no problems assembling on a 68000 Amiga, it takes 10 seconds for a 3500 line source. (From pressing Assemble to code running.) Can you match that? Again, it's me arguing that crossdev is unnecessary.

(The big source was just chosen to show that you can assemble big projects really fast on Amiga. It's very unusual to have one 600K source for an OCS demo, so it was a bad example.)

As for expansions, the cycle exact part is lost, but only for the CPU. All custom chip behavior and timing is kept. Again, for utilities and games this may be fine, and depending on what you do with the chipset, this may or may not be an issue. But I suspect you've had your share of f.ex. copper differences in WinUAE.

So this part is kept and also the directness which I enjoy but you not as much.

It's not about not being 'pure', or some accusation like that. I'm not completely pure either. I select any which one of my running un/accelerated Amigas and code whenever I want, and rarely code and test in WinUAE as well.

What I'm trying to do is convince others (people who are not already crossdev fans) of the truth that native coding is absolutely fine and that you lose some things when you crossdev. I have other arguments, but I'll bring them up if the discussion goes in that direction.

What I mean is:

You don't need to hunt for compilers for your OS. You don't need command-line assemblers. You don't need to setup the WinUAE debugger or another debugger and make it understand the label and debug info. You don't need to autostart exes or images in an emulator. You don't need to make it all work together with your favorite text editor. You don't need to get syntax color coding of sorts and code hinting running with it.

You need AsmOne, and then you're set.
Photon is offline  
Old 07 February 2014, 01:54   #11
riksfetto
aka "den Ensamma mannen"
 
Join Date: Dec 2011
Location: Eskilstuna/Sweden
Posts: 12
Define productivity. I'd say whatever keeps you inspired is productive. Without inspiration - no productivity. Inspiration is impossible to define and (very) individual.

Nevermind whatever the method is, it can never be wrong as long as the PROCESS is evolving.

Then again, a debate is a process and may lead to inspiration. But I (myself) always react to this kind of (i.m.o pointless) discussions in the same way; - Shut up and go to work.
riksfetto is offline  
Old 07 February 2014, 02:22   #12
Kitty
Registered User
 
Kitty's Avatar
 
Join Date: Mar 2005
Location: London UK
Posts: 1,532
Excellent read Photon
Kitty is offline  
Old 07 February 2014, 07:31   #13
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Photon View Post
Make me see where the productivity lies?
Well, first of all you're not tied to your Amiga-hardware. Having my dev-env installed on my laptop means I can start coding pretty much anywhere when I get the inspiration, no need to wait until I'm home and take the risk of losing that inspiration. Also, I have my environment and sources online, so I can basically install WinUAE and my stuff on any PC and get cracking.

I've done my fair share of coding exclusively on the original hardware in past. But the fact is that I'm not a teenager or student anymore, the rare times I get ideas and inspiration I need to be able to do stuff NOW, not later.


Quote:
That was addressing Leffman's crossdev productivity claims. I have no problems assembling on a 68000 Amiga, it takes 10 seconds for a 3500 line source. (From pressing Assemble to code running.) Can you match that? Again, it's me arguing that crossdev is unnecessary.
Really? You're saying a modern PC wouldn't be able to match compile times of an A500? Seriously? It's also faster to reset WinUAE than to reboot an Amiga when the code crashes/gets stuck.

Quote:
But I suspect you've had your share of f.ex. copper differences in WinUAE.
I've had one single problem with the copper in WinUAE vs A500, and that was fixed several years ago.

Quote:
What I'm trying to do is convince others (people who are not already crossdev fans) of the truth that native coding is absolutely fine and that you lose some things when you crossdev.
The thing is, if you want more activity on the A500 you shouldn't try to convince anyone of which route to take. Let people use whatever they feel comfortable with.

And besides, nobody's saying that coding on the real hardware would be bad, but you keep on insisting that it's a superior alternative to cross development. If the end result is the same, who cares how you got there?
britelite is offline  
Old 07 February 2014, 12:11   #14
phx
Natteravn
 
phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,500
Quote:
Originally Posted by Photon View Post
So I'm working against preconceptions that you need to spend chunks of time setting up a devchain and having a hard time, when you could start AsmOne on your Amiga in seconds and assemble your demo in seconds, and have a good time in no time
I tend to agree with you here. For new Amiga coders it is quite easy to launch AsmOne and follow your great tutorials. I can only recommend that.

But also britelite had a good argument that cross-development allows to do the development everywhere (e.g. I will sometimes log in from the office onto my NetBSD server at home and work on 68k code with vasm).

Quote:
Especially if you want to try something new with the hardware, I think there's nothing like that quick and direct interaction of code>assemble>test
Right again. But you will also have the risk to crash your hardware and development environment quick and directly.

Quote:
I don't know anyone who crossdev by cable or card-swapping to a real Amiga, that's why I say crossdev = emulator.
When I worked on Solid Gold I transfered the new ADFs over network to my A3000, where the image was written to a real disk. Another option was to write the ADF to an SD-card, which I simply plugged into my Minimig.

I admit that I also used E-UAE a lot for quick testing and especially for debugging. But usually I made a real disk for my A500 every day.
phx is offline  
Old 07 February 2014, 18:47   #15
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by phx View Post
I admit that I also used E-UAE a lot for quick testing and especially for debugging. But usually I made a real disk for my A500 every day.
Indeed, cross developing in no way rules out the fact that stuff has to be tested on the target hardware
britelite is offline  
Old 07 February 2014, 18:52   #16
marduk_kurios
move $dff006,$dff180
 
marduk_kurios's Avatar
 
Join Date: Feb 2014
Location: USA
Posts: 66
Regarding cross development I can recommend this:

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

This is a finished setup including WinUAE and VASM, only 25mb in size. All you need is the Amiga Kickroms to make it work.

It even allows you to write your assembler code in Visual Studio and have it built and run with a click. You can then use the WinUAE debugger for debugging.
marduk_kurios is offline  
Old 07 February 2014, 20:30   #17
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,604
Quote:
Originally Posted by britelite View Post
Indeed, cross developing in no way rules out the fact that stuff has to be tested on the target hardware
Yes, this is kind of what all of it is about. I think porting and crossdev is prone to provide only a remix of existing effects. Apart from porting and crossdev, thinking something up, coding it, and checking it once in a while on real hardware is different from playing with the custom chips until you get a great idea.

From experience, all you need to do to break WinUAE is to do something advanced that isn't in normal lores or hires modes. I'm afraid coders will try things and get stumped by an emulator bug. That try could have become a celebrated effect that got copied and improved, which has happened to every new effect.

I write in that article about a silly dream, young people coming in with fresh ideas and blowing us away because they don't have 20 years of preconceptions. Insulate yourself from the hardware at the very beginning of a project, while the slate is blank so to speak, and presto, even if the impossible should happen that teenagers got turned onto Amiga, they'd be limited right away and such a dream goes out the window. Well, the exact same as for young coders applies to new or returning coders.

I'd love to have a look at your crossdev setup on Datastorm, Britelite. Not least for learning more about such setups. Articles and forum stuff needs to be a little too formal and this detailing back and forth can make discussions silly and a bit heated. Better with a simple chat.
Photon is offline  
Old 08 February 2014, 01:52   #18
demolition
Unregistered User
 
demolition's Avatar
 
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 43
Posts: 4,190
In my very first attempt to create some copper bars not so long ago I had something that looked as it should in WinUAE but as I tried it out on the real Amiga, the screen was blank.. Emulation can be good for development, but occasional testing on a real Amiga is mandatory or you could be wasting a lot of time.

I read about someone creating a simple boot-disk with a serial server which allowed for code transfer to the Amiga memory and some commands to start execution etc. The development toolchain on the PC would then upload the assembled program and start it on the real Amiga. Simply reset the Amiga and within a few seconds it will be ready to go again if you crash it. Seems very useful to me, and I thought about creating something similar. If only to learn some 68k asm.
demolition is offline  
Old 09 February 2014, 20:26   #19
Leffmann
 
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
Quote:
Originally Posted by Photon View Post
It takes 1 second to assemble and start 32963 lines of source on my A1200-060, 2 seconds on my A600-030. I can hit debug and the program starts instantly and step through the code with registers and watches. The AsmOne editor is silky and quick. I confess I'm a babe in the woods when it comes to crossdev for Amiga, and still I'm just not buying how
something can be more productive than that.
We may have misunderstood each other here. Cross-development isn't beneficial in itself, we agree on that, but nobody cross-develops specifically for the purpose of doing so. Rather, cross-developing is the circumstance, requirement and consequence of finding better tools, development environments and models, when your target system and its tools won't do.

I can list many things that are wrong with all-in-one programs like ASM-One (and some good things), but people generally don't like hearing what's wrong with the things they like, so I think anything I write here would be dismissed as a tirade and a boring wall of text, but we could dig into it sometime if you really want.
Leffmann is offline  
Old 12 April 2014, 03:21   #20
Kitty
Registered User
 
Kitty's Avatar
 
Join Date: Mar 2005
Location: London UK
Posts: 1,532
Hey Photon, I just realised I forgot to add this to the articles menu on CiA, it's there now with your others
Kitty 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
CD32 demoscene cd h0ffman Amiga scene 0 12 July 2011 00:48
Demoscene and .... consoles ?! Another World Retrogaming General Discussion 11 07 June 2009 21:03
Demoscene Freax volume 1 out now... Paul_s News 13 29 August 2008 03:33
The good old demoscene devilstar Nostalgia & memories 2 01 May 2008 16:50
UK demoscene pics Yesideez Amiga scene 12 16 September 2007 17:18

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 15:50.

Top

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