English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 03 December 2011, 03:13   #1
punchy71
 
Posts: n/a
Which programming languages were used on the Amiga historically?

This is a complete newbie question. Which programming languages were commonly used to program software back during the heyday of the Amiga in the 1990's and which ones are used today?

Thank you
 
Old 03 December 2011, 04:47   #2
DeafDaz
Deafdaz
 
Join Date: Jul 2011
Location: Blackpool Egland
Age: 43
Posts: 200
BASIC programming language:

AmigaBASIC
AMOS
Blitz BASIC

Assembler programming language:
Devpac
ASM
DeafDaz is offline  
Old 03 December 2011, 10:43   #3
Galahad/FLT
Going nowhere

Galahad/FLT's Avatar
 
Join Date: Oct 2001
Location: United Kingdom
Age: 45
Posts: 7,070
Quote:
Originally Posted by punchy71 View Post
This is a complete newbie question. Which programming languages were commonly used to program software back during the heyday of the Amiga in the 1990's and which ones are used today?

Thank you
Primarily it was Assembly Language, with some games written in C and others in the likes of AMOS/Blitz and occasional BASIC, and maybe one or two in Amiga E
Galahad/FLT is offline  
Old 03 December 2011, 11:55   #4
Photon
Moderator
Photon's Avatar
 
Join Date: Nov 2004
Location: Hult / Sweden
Posts: 4,591
Yep, originally the whole OS and all libs with a few exceptions was written entirely in C. Many of the bundled utilities as well. Don't know what compiler the Amiga devs used, but it seems likely it would be a cross-compiler on another computer brand.

Then native assemblers became available, Seka and Argasm were two early ones, I think. As that happened games closer to arcade quality emerged, this would be in 1987. Before this, C was completely dominant with only one or two games written in BASIC.

In 1988 came the explosion of games that tried to use the Amiga as an arcade games platform, and also of course the many make-a-quick-buck conversions (f.ex. Bombjack).

I remember everyone wanted something decent instead of the Microsoft Basic, and a bit later we got it in the form of Hisoft Basic (and also Hisoft Pascal). Devpac appeared and some liked it because Seka had some bugs left and DevPac was less 'pedal to the metal' (and therefore much more lame according to the elite Seka users, of course).

So from 1988 onwards almost all games were written in Assembly, and almost all major utilities written in C. Demos were always coded in Assembly because it was the point of demos to show maximum hardware performance.

I think Blitz Basic and AMOS came late 1991 and this was about when I left Amiga for the worklife, so others know better from then on.
Photon is offline  
Old 04 December 2011, 00:24   #5
matthey
Banned
 
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
Quote:
Originally Posted by Photon View Post
So from 1988 onwards almost all games were written in Assembly, and almost all major utilities written in C. Demos were always coded in Assembly because it was the point of demos to show maximum hardware performance.
There were a lot of games written in C after 1988. Many had assembler parts though. The AmigaOS was also 90%+ written in C. Most in SAS/C including AmigaOS 3.9. Dice C was also popular for a time and used for some of AmigaOS. VBCC was horrible at first but got really good fast. Some AmigaOS 3.9 "modules" are in VBCC like the picture.datatype.
matthey is offline  
Old 04 December 2011, 00:31   #6
StingRay
move.l #$c0ff33,throat

StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,157
Quote:
Originally Posted by matthey View Post
There were a lot of games written in C after 1988.
The vast majority of games was coded in 100% assembler. Mostly adventure games (Lucas Arts/Sierra) were coded in C, rest, as said, was 100% assembler.

Quote:
Originally Posted by Photon View Post
Demos were always coded in Assembly because it was the point of demos to show maximum hardware performance.
Since crack intros are kind of demos for me too I have to correct you here. A certain well known ECA (Electronic Cracking Association) intro has been coded in C. I guess you can figure out which one. =)
StingRay is offline  
Old 04 December 2011, 03:29   #7
matthey
Banned
 
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
Quote:
Originally Posted by StingRay View Post
The vast majority of games was coded in 100% assembler. Mostly adventure games (Lucas Arts/Sierra) were coded in C, rest, as said, was 100% assembler.
There's plenty of Amiga games that used C...

Cinemaware Games (Wings, It Came From The Desert, Bo Jackson Baseball, TV Sports Basketball), 4D Boxing, Bane of the Cosmic Forge, SSI D&D games, Flashback, Dungeon Master 2 (Skull Keep), DuckTales, F-18 Interceptor, Syndicate, Warlords

Either that or assembly programmers think link a5,#0 is useful ;P.
matthey is offline  
Old 04 December 2011, 06:23   #8
Minuous
Coder/webmaster/gamer
Minuous's Avatar
 
Join Date: Oct 2001
Location: Canberra/Australia
Posts: 1,836
Quote:
Originally Posted by matthey View Post
There's plenty of Amiga games that used C...

Cinemaware Games (Wings, It Came From The Desert, Bo Jackson Baseball, TV Sports Basketball)
Sinbad too. The "Sea of Kernighan" and "Ritchie Reef" are the giveaways ;-)
Minuous is offline  
Old 04 December 2011, 12:54   #9
StingRay
move.l #$c0ff33,throat

StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,157
Quote:
Originally Posted by matthey View Post
There's plenty of Amiga games that used C...
I said "vast majority" of games were coded in 100% assemby language, not all. If you count the games programmed in C (all Dino Dini games (Kick Off 1/2, Goal!, Player Manager 1/2 etc.) were programmed in C too) and then do the same for the games coded in assembly you'll see what I mean.
StingRay is offline  
Old 05 December 2011, 00:54   #10
Wepl
Moderator
Wepl's Avatar
 
Join Date: Nov 2001
Location: Germany
Posts: 678
I would estimate that 10-15% (maybe more) of the games are coded in C.
Nearly all adventures and simulations and most role playing games are done in C.

Most early games are compiled using Aztec-C and can be identified by containing the string 'MANX' as part of the startup code.
Wepl is offline  
Old 05 December 2011, 01:44   #11
Photon
Moderator
Photon's Avatar
 
Join Date: Nov 2004
Location: Hult / Sweden
Posts: 4,591
Stingray, no, I can't guess. The one with real-time color-cycling maybe

-~-

Anyway.

Still I think it's safe to say that coding in the demoscene is best described as "everything in Assembler" (don't you agree StingRay)? I definitely think that saying high level languages played even a tiny part in demos (like >0.01%, even) would be a hugely over-exaggerated view.

When it comes to games I was referring to commercial releases. I know there were many simpler games coded in C, Microsoft Basic etc. And among the commercial releases it's easy to see that 1985-1986 are Assembler-free, 1987 was the year when established studios made Amiga versions of established game titles (often making them less enjoyable than f.ex. C64, but remember: everyone was still learning this great new machine then), and then at end of 1988 came the great transition: an explosion of independant small game companies capable of out-stripping the established competition, because they had learned the hardware and thanks to Assembler were capable of making much better, enjoyable and polished games than the Amiga had seen before.

Slower adventures games and strategy games didn't need Assembler because of the concept, so they all very well could have been coded in C or Basic.

I think 10-15% of games coded in C is pretty accurate; if we include all PD games in all countries PD clubs that figure would rise I think; some may think some release you never heard of made by a non-game-company doesn't count. But that's no way to appraise usage stats for misc. languages.

Whatever language they used, you can bet that they had fun! I remember it was pure carnal pleasure to just pour your ideas into this machine that could do anything, it seemed.
Photon is offline  
Old 05 December 2011, 08:43   #12
Coagulus
Gets there in the end...

Coagulus's Avatar
 
Join Date: Sep 2005
Location: Wales
Posts: 624
I seem to remember a video titler program (name escapes me) for the Amiga which the review said was written in SAM Basic for the Sam Coupe computer. Was hopeful for a cross-compiler or interpreter at the time cos I had one of those machines!
Coagulus is offline  
Old 05 December 2011, 08:45   #13
fuzzylogic
Registered User
 
Join Date: Jan 2010
Location: Germany
Posts: 59
Quote:
Originally Posted by StingRay View Post
A certain well known ECA (Electronic Cracking Association) intro has been coded in C. I guess you can figure out which one. =)
A Backlash cracktro/trainer has been coded in, well dunno if C, I also guess something basic like, here is the link: http://www.pouet.net/prod.php?which=48905

Well at least as far as I remember )
fuzzylogic is offline  
Old 05 December 2011, 19:49   #14
absence
Registered User
 
Join Date: Mar 2009
Location: moon
Posts: 353
Quote:
Originally Posted by Photon View Post
Yep, originally the whole OS and all libs with a few exceptions was written entirely in C. Many of the bundled utilities as well. Don't know what compiler the Amiga devs used, but it seems likely it would be a cross-compiler on another computer brand.
Wasn't a lot of Amiga OS 1.x written in BCPL, and not rewritten in C until 2.0?
absence is offline  
Old 05 December 2011, 20:30   #15
StingRay
move.l #$c0ff33,throat

StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,157
Quote:
Originally Posted by Wepl View Post
I would estimate that 10-15% (maybe more) of the games are coded in C.
Nearly all adventures and simulations and most role playing games are done in C.
10-15% is a good guess I think.


Quote:
Originally Posted by Photon View Post
Stingray, no, I can't guess. The one with real-time color-cycling maybe
Correct. This one, always loved it and still do!

Quote:
Originally Posted by Photon View Post
Still I think it's safe to say that coding in the demoscene is best described as "everything in Assembler" (don't you agree StingRay)?
Yes, totally! Demos should be coded in 100% assembler, everything else just doesn't feel right.

Quote:
Originally Posted by Photon View Post
I definitely think that saying high level languages played even a tiny part in demos (like >0.01%, even) would be a hugely over-exaggerated view.
I think so too. Nowadays lots of people use a mix of C/ASM for their (68060) demos but back then it was all 100% asm. As it should be when it comes to demo coding.


Quote:
Originally Posted by fuzzylogic View Post
A Backlash cracktro/trainer has been coded in, well dunno if C, I also guess something basic like, here is the link: http://www.pouet.net/prod.php?which=48905

Well at least as far as I remember )
That's wrong. What makes you think this was coded in basic or C? I don't remember any Backlash release that was not done in 100% asm. This trainer, even though it looks rather basic (pun intended) is 100% asm too.
StingRay is offline  
Old 06 December 2011, 13:23   #16
stevsurv
Beta 1.666
stevsurv's Avatar
 
Join Date: Jun 2007
Location: in 1985
Posts: 232
Looks like some of the early AmigaDOS was written in BCPL.

Some interesting info's about BCPL - http://en.wikipedia.org/wiki/BCPL

Bit about B Language -
http://en.wikipedia.org/wiki/B_(programming_language)

Early AmigaDOS - http://en.wikipedia.org/wiki/AmigaDOS
stevsurv is offline  
Old 06 December 2011, 13:29   #17
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 43
Posts: 22,121
Nearly all executables on 1.x WB disks are written in BCPL. (Easy to confirm by enabling BCPL support debugging in m68k AROS )
Toni Wilen is online now  
Old 06 December 2011, 19:09   #18
Ed Cruse
Registered User
 
Join Date: Sep 2007
Location: Las Cruces, USA
Age: 65
Posts: 351
Quote:
Originally Posted by Toni Wilen View Post
Nearly all executables on 1.x WB disks are written in BCPL. (Easy to confirm by enabling BCPL support debugging in m68k AROS )

BCPL is definitely different then C, and difficult to deal with, the includes are strange. The pointers are block pointers, ( BP x 4 to get real pointer) it was probably designed for 32 bit main frames.
Ed Cruse is offline  
Old 07 December 2011, 17:51   #19
fuzzylogic
Registered User
 
Join Date: Jan 2010
Location: Germany
Posts: 59
Quote:
Originally Posted by StingRay View Post
That's wrong. What makes you think this was coded in basic or C? I don't remember any Backlash release that was not done in 100% asm. This trainer, even though it looks rather basic (pun intended) is 100% asm too.
Just download the intro and disassemble it. Maybe they are not using a high level language but some kind of strange "support-routines", you can also find messages like "COP:UNGEK.BEFEHL" or "LIBRARY-FEHLER", "nachladen noetig" etc. Looks strange :-)

Also the code partly looks like something produced by a compiler somehow. There is stuff in it which a human would not produce, I can't tell, if you take a look yourself you have to agree ;-) - or another option: it is simply REALLY bad code.

But well, you are right this is just a guess.
fuzzylogic is offline  
Old 07 December 2011, 18:09   #20
StingRay
move.l #$c0ff33,throat

StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,157
Quote:
Originally Posted by fuzzylogic View Post
Just download the intro and disassemble it.
I did that before replying.


Quote:
Originally Posted by fuzzylogic View Post
Also the code partly looks like something produced by a compiler somehow.
Which parts should that be? I only saw somewhat long-winded code but nothing that looks like compiler output. If you give me the offset for the routines you think are made by a compiler I'll check again.
StingRay 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
Programming for the Amiga burf2000 Coders. Language 2 16 October 2012 22:13
Programming Amiga? Amiga Forever Coders. General 14 03 April 2011 19:33
Other languages for the amiga Tiddlypeeps Coders. General 55 21 January 2010 20:33
The Word 'Game' In Different Languages (Was: Looking for the amiga games) utri007 Amiga scene 28 28 September 2006 13:43
Amiga programming magnox Coders. General 6 28 April 2006 01: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 20:40.


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