Amiga programmeringsspråk
Den här artikeln behandlar programmeringsspråk som används i Amiga- serien av datorer, som kör AmigaOS- operativsystemet och dess derivator AROS och MorphOS . Det är en uppdelning av huvudartikeln Amiga programvara . Se även relaterade artiklar Amiga produktivitetsprogramvara , Amiga musikmjukvara , Amiga Internet- och kommunikationsprogramvara och Amigas support- och underhållsprogram för annan information om programvara som körs på Amiga.
Historia
Många spel och mjukvara, särskilt under de tidiga åren av Amiga, skrevs för att direkt komma åt hårdvaran istället för att använda operativsystemet för grafik och input. Följaktligen kunde spel uppnå mycket snabbare och smidigare spel, men till priset av kompatibilitet med nyare Amiga-modeller.
Plattformsövergripande bibliotek och programmeringsfaciliteter
Flera plattformsoberoende bibliotek och faciliteter är tillgängliga för Amiga:
- MUI och ReAction är Amigas standardobjektorienterade system för att bygga grafiska gränssnitt.
- SDL- bibliotek används i stor utsträckning i alla moderna Amiga-system
- Cairo- stöd är inbyggt i AmigaOS 4.1 och MorphOS 3.0
- Anti-grain geometri [1]
- CLib2 är ett bärbart ISO C (1994) runtime-bibliotek för Amiga.
- Allegro Library har porterats till AmigaOS 4 [2] och MorphOS [3] .
- en Amiga-port av wxWidgets arbetar på wxWidgets-AOS .
- Gallium3D är nu en del av AROS Icaros Desktop Live Distro.
- OpenAL gratis programvara för plattformsoberoende ljud- API , designad för effektiv rendering av flerkanaligt tredimensionellt positionsljud, är tillgängligt för MorphOS och alla versioner av AmigaOS version 3 och senare.
- AROS och MorphOS stöder FreeType- biblioteket i olika projekt, inklusive dess version av Origyn Web Browser .
- FLTK "Fast, Light Toolkit" version för AmigaOS 4.0 är nästan klar [ när? ] och den erbjuder alla funktioner i den officiella 1.1.6-versionen, inklusive standard- och plastschemat.
Under många år saknade Amiga en komplett integrerad utvecklingsmiljö (IDE). Detta ändrades 2005–2006 när Cubic IDE skapades, baserat på den modulära textredigeraren GoldED.
Kort lista över språk tillgängliga på Amiga
Assemblers: ASM-One Macro Assembler , Devpac Assembler , Metacomco Macro Assembler, SEKA Assembler
Grunddialekter: AmigaBASIC från Microsoft, ABasic från Commodore (utvecklad av Metacomco ), AC Basic Compiler, GFA BASIC , HiSoft Basic, AMOS BASIC , Blitz BASIC , PureBasic
C-kompilatorer: Aztec C , DICE C, GNU gcc, VBCC , Lattice C , SAS/C, Storm C, HiSoft C++
PASCAL: Amiga Pascal, Kick-Pascal, High Speed Pascal, Free Pascal
Andra språk: Forth (JForth), FORTRAN , Amiga Logo , Oberon , Perl 5, Ruby , Amiga E , FALSE, PortablE , Python (AmigaPython), REBOL , ARexx , Scheme ( SCM , Gambit , UMB Scheme, SIOD ), GNU C++ , Modula-2 , Benchmark Modula 2, Eiffel, Java (JAmiga), Draco och ML ( Caml Light ).
Beskrivningar av vissa språk
ABasiC utvecklades av MetaComCo och levererades med AmigaOS 1.0 och 1.1.
AmigaOS 1.2 och 1.3 kom med AmigaBASIC (och en komplett manual), som förutom att vara en BASIC-dialekt inte var relaterad till ABasic. AmigaBASIC var det enda programmeringsspråket (och det enda verktyget) som gjordes av Microsoft för Amiga-datorn. Dess bästa egenskap var avsaknaden av numreringsrader med kod, vilket var det första försöket 1985/1986 att skapa ett nytt tillvägagångssätt inom BASIC-programmering. Microsoft lade sedan till den här funktionen till alla sina verktyg för utvecklingsspråk. Eftersom AmigaBASIC levererades med så många Amigas var det ett av de vanligaste språken under de första åren.
Eftersom Commodore ville spara pengar gjordes aldrig en uppdatering för AmigaBasic. På grund av dess stora antal kända buggar och begränsningar kasserades den omedelbart av professionella utvecklare till förmån för andra programmeringsspråk som GFA BASIC, Aztec C, Lattice C och sedan AMOS. Dessa buggar och begränsningar inkluderade:
- kraschar på nyare processorer och AmigaOS-versioner nyare än 1.3 när subrutiner (gosub) och ljud används
- redigeraren är skriven för NTSC och använder därför inte helskärm på PAL- skärmar (TV-standarden i Europa )
- kommersiellt släppta BASIC's gav bättre IDE's och bättre (snabbare) prestanda
SEKA assembler var ett populärt verktyg bland spel- och demoprogrammerare under de första åren av Amiga. Senare blev Devpac och AsmOne populära montörer. SEKA, DevPac och AsmOne var alla IDE:s och inkluderade editor, assembler, linker och debugger.
Devpac Assembler av HiSoft var ett professionellt assemblerprogram som blev de facto-standarden för monteringsprogrammering. Den kan också användas för plattformsoberoende utveckling för alla andra Motorola 68k-baserade enheter, som Atari ST. Det var vanligt att program skrevs gemensamt för Amiga och Atari med Devpac på Amiga. Men eftersom Atari ST var den mindre kapabla av de två maskinerna, skulle programmen testas på och byggas i första hand för ST.
IDE (Integrated Development Environment)
Fram till 2005-6 saknade Amiga riktig IDE-mjukvara (bortsett från den äldre IDE Storm C). Utvecklingen gjordes med avancerade textredigerare som Emacs, MicroEmacs, Cygnus Editor och Gold Ed (Gold Editor), som kunde lyfta fram syntax av olika slag i programmeringsspråk. Gold Ed utvecklades sedan till ett komplett kommersiellt IDE-miljöprogram som heter Cubic IDE .
De mest använda IDE-programmen är det kommersiella programmet Cubic IDE och det kommersiella programmet CodeBench som ibland släpps med begränsade funktioner som frilicensversion.
Verktyg för applikationsbyggande
Vissa Amiga-program var kompletta applikationsverktyg. Exempel var: CanDO, Amiga Vision, Shoot'Em-Up Construction Kit även känd som SEUCK, 3D Construction Kit , 3D Construction Kit II och till viss del The Director (BASIC-liknande språk som syftar till multimedia, presentationer och animationer). AMOS i sig kunde betraktas som ett applikationsbyggande verktyg och var mer än ett enkelt programmeringsspråk (även om SEUCK var inriktat på spel. 3D Construction-serien kunde också hantera någon sorts 3D VRML ). Andra verktyg för att bygga oberoende applikationer eller "självladdningsprojekt" var Scala Multimedia och Hollywood Designer .
CanDO var ett av de första applikationsbyggande verktygen som kunde skapa program för Amiga som var helt oberoende (kompilerade eller helt binära). Det är baserat på ett visuellt gränssnitt, efter det moderna " visuella programmeringssättet " för programmering som blev känt med Visual C++ och Visual Basic från Microsoft. Även om CanDO inte har något gemensamt med Visual C och Visual Basic, är det ett musdrivet program med ikonupplägg, och dess interna programmering är som ett interaktivt flödesschema över funktioner, precis som VISUAL-programmeringsverktygen. Eddie Churchill, en av de främsta utvecklarna av CanDO, fortsatte med att utveckla Borlands objektorienterade Pascal IDE, Delphi .
Amiga Vision är som CanDO för Amiga. Det är ett VISUELLT "applikationsbyggande"-verktyg gjort av Commodore för lanseringen av Amiga 3000 , och det släpptes gratis för alla som köpte en Amiga 3000.
Visionen är mer än ett språk som syftar till multimedia, allt ikondrivet, och flödesschemat för funktionerna realiserades grafiskt, på en sida där användaren kunde ordna visuellt ikoner där var och en representerar en programfunktion. Vision sparade filer (projekt) kunde inte användas som rena binära filer. Ur denna synvinkel var Amiga Vision "applikationsbyggande"-verktyget ett tolkat språk.
AmigaBasic skapad av Microsoft, CanDO och sedan Amiga Vision inspirerade Microsoft själv till ett förhållningssätt till Visual programmering med deras linje av Visual programmeringsspråk, som Visual Basic och andra.
- Amiga Assember Insider Guide, Author: Paul Overaa, ISBN 1-873308-27-2
- Mastering Amiga Assembler, författare: Paul Overaa, ISBN 1-873308-11-6
- Amiga Machine Language (1987), undertitel: En praktisk guide till att lära sig 68000 assembler-språk på Amiga, Författare: Stefan Dittrich, Utgivare: Abacus Software Inc., ISBN 1-55755-025-5
- Amiga Hardware Reference Manual (3:e upplagan), publicerad av Addison Wesley , (1991), ISBN 0-201-56776-8
- Amiga ROM Kernel Reference Manual: Includes and Autodocs, publicerad av Addison Wesley (1991), ISBN 0-201-56773-3
- Amiga ROM Kernel Reference Manual: Libraries, publicerad av Addison Wesley, (1991), ISBN 0-201-56774-1
- Amiga ROM Kernel Reference Manual: Devices (3rd ed.), publicerad av Addison Wesley (1991), ISBN 0-201-56775-X
externa länkar
- AmiWorld-lista över Amiga-programvara på italiensk webbplats som rapporterar en lista över alla kända produktivitetsprogram för Amiga.
- Classicamiga Software Directory Ett Amiga-katalogprojekt som syftar till att katalogisera all känd Amiga-mjukvara.
- Benchmark Modula-2 manual