Home • VB 7+ • VB 1-6 • FB • QB64 • QB45 • GW-BASIC • Micro • Retro
AmigaBASIC
AmigaBASIC is a BASIC language implementation for the earlier line of Amiga personal computers, designed and written by Microsoft. AmigaBASIC shipped with AmigaOS versions 1.1 to 1.3. It succeeded ABasiC, which was initially included in AmigaOS 1.0 (possibly even on some early 1.1 disks), and discontinued in AmigaOS version 2.0 onwards.
AmigaBASIC provided not only the common BASIC language, but also attempted to provide an easy-to-use API for the Amiga’s unique graphics and sound capabilities. OBJECT
commands, for example, made it easy to create moving objects - sprites and bobs that could be drawn with an external drawing program, Object editor, that was supplied with AmigaBASIC.
Patch?
Although it is officially not supported (possible?) to run AmigaBASIC on newer AmigaOS versions… it does appear there is a patch that allows this. According to the notes related to the patch…
There is one bad instruction in AmigaBASIC which the 68000 in a standard Amiga seems to execute properly. A 68020 has trouble with this bad instruction and performs a Guru Meditation trap. This program will fix the bad instruction in AmigaBASIC.
Additionally, there also appears to be a tip written by Andreas Mixich (in an Amiga FAQ) about needing to…
- Run NoFastMem (or turn off FastMem).
- Switch off sound output in the Sound prefs editor.
- Better avoid SUBs and use GOSUBs instead, then the compatibility with newer processors will be higher. There is a patch you should run at the beginning of AmigaBasic:
' AmigaBASIC patch to let AmigaBASIC work on A1200 and other newer machines.
' Start at the beginning of AmigaBASIC or invoke AmigaBASIC with this program
OPEN "AMIGABasic" AS 1 LEN=1
FIELD #1,1 AS d$
i&=&HF3*256+&H87 : PRINT i&
GET #1,i& : a$=HEX$(ASC(d$))
PRINT a$
IF a$="79" THEN
LSET d$=CHR$(&H78)
PUT #1,i&
END IF
CLOSE 1
Found elsewhere was this which was credited to a Dr. Peter Kittel…
Can I run AmigaBasic on my A1200?
To run AmigaBasic on the A1200 and A4000 you need to follow these steps:
- Disable sound output in the SoundPrefs editor in PREFS. This will prevent it from conflicting with the sound AmigaBasic produces.
- If you have fast ram, run the NoFastMem program in your System drawer.
- Avoid SUBs and use GOSUB instead to retain compatibility with higher processors.
Utility: Convert to ASCII
To convert an AmigaBASIC binary formatted (tokenized) file to ASCII without using AmigaBASIC, check out ab2ascii-1.3.
Books
- Microsoft AmigaBASIC Manual (Alternate)
- Amiga 3D Graphic Programming in BASIC: A revealing book on how to use the spectacular and powerful graphic capabilities of the Amiga.
Samples
Blogs
Articles
- COMPUTE!
- The Beginner’s Page
- #20 - Loops
- #21 - Translating Equations
- #23 - Making Decisions
- #29 - Writing Your First Game
- #30 - Arrays
- #32 - Myths About Programming
- #38 - Writing a Simulation Game
- #40 - Machine Minds
- #41 - Your First Useful Program
- #42 - Zones Of Unpredictability - Part 1
- #43 - Zones Of Unpredictability - Part 2
- #46 - Computer Amnesia
- #47 - Size, Speed or Clarity
- #48 - A Random Leap
- #49 - A Wall Of Loops
- #50 - Trapping Bugs
- #53 - Logical Dreams
- #55 - Learning To Program
- #56 - Which Computer Language Is Best?
- #57 - IF-THEN Intelligence
- #58 - Two Kinds Of Logic
- #59 - Programs Within Programs
- #60 - Assembly Line Computing
- #61 - FOR-NEXT Applications
- #64 - Forget Your Algebra
- #65 - Clearing Up Variable Cloudiness
- #67 - No Strings Attached
- #70 - Cutting Strings Without Scissors
- #71 - More String-Slicing
- #72 - String Comparisons
- #73 - More String Arithmetic
- #74 - Turning Apples Into Oranges
- #75 - Advanced String Features
- #77 - The Many Faces of PRINT
- #78 - More About PRINTing
- #79 - Arrays
- #80 - DATA Statements
- #86 - Using Variables
- #87 - Program Loops
- #88 - Interactive Programming
- #89 - Detecting Keypresses
- #90 - The Random Function
- #92 - Drawing Lines
- #94 - Making Music With BASIC
- #95
- The Elementary Amiga
- Part 1 #91
- Part 2 #92
- Part 3 #93
- Part 4 #94
- Part 5 #95
- Writing Transportable BASIC - Part 1 #32
- Requester Windows In Amiga BASIC #70
- Switchbox #70
- Tug-A-War #71
- Amiga Puzzle #72
- UFO Invasion For IBM And Amiga #73
- Meet ED The AmigaDOS Editor #73
- Getting Down to BASICs #74
- Readers Feedback #74
- Hex War #74
- Foolproof Input For Amiga BASIC #75
- Tightrope #75
- Amiga BASIC Style #76
- Be Hive #76
- Reader Feedback #76
- Pyramid Power For The Amiga
- Amiga Math Graphics #77
- Biker Dave #78
- Reader Feedback #79
- Laser Strike #79
- The Great Graphics Leap #80
- Chain Reaction #80
- Zookeeper For The Amiga #86
- Weather Wizard #86
- Fractal Mountains For Amiga #87
- Climber 5 #87
- Amiga SuperMenus #88
- Amiga And 64 RAMdisk Files #88
- Monte Carlo #88
- A BUTTON Command #89
- Word War #89
- Marbles #89
- IFF To Icon Translator
- Masked Input For The Amiga #90
- The Fastest Amiga Language #90
- The Hermit #90
- CAPUTE! #90
- Canfield #92
- Casino Blackjack #94
- Graphics And Music In Amiga Basic #95
- The Pyramid Game #95
- AMIGA #117
- The Beginner’s Page
Videos
- Coding Christmas Like It’s 1985 - Amiga BASIC Nostalgia
- Utilizing Amiga System Libraries in Amiga BASIC
- Avoiding library function name conflicts in Amiga BASIC
- Amiga Basic Graphics
- Microsoft Amiga BASIC (Workbench 1.3)
Additional videos that are not BASIC specific, but could be helpful.
Alternative: ABasiC
- MetaComCo ABasiC: Note that the entry is mislabeled, but a commenter pointed out which version of BASIC this actually is. See MetaComCo.
- Patch Metacomco’s ABasiC to work on OS2+
- Collection of ABasiC games and programs
Alternative: ACE
ACE is a freeware AmigaBASIC compiler which produces 68000 assembly source code. ACE runs under all versions of the operating system from Release 1.3, as do the executables it produces.
ACE supports a large subset of AmigaBASIC. It also provides a variety of commands, functions and features not found in AmigaBASIC.
Alternative: AMIBLITZ³
- AMIBLITZ³: AMIBLITZ³ is a free Development environment for AmigaOS3.x and Compatible based on BlitzBasic.
- How to install Amiblitz / Blitz Basic 3 on the Commodore Amiga running on WinUAW
Alternative: AQB
- AQB: A QuickBASIC-style Compiler and IDE for Amiga computers.
Alternative: Cursor
Cursor is a free compiler available for AmigaBASIC. It also includes a simple editor which can control the compiler. Runs with Kickstart 1.2 or later with 512K RAM. Get it here.
Alternative: GFA BASIC
TBD
Alternative: HiSoft BASIC
TBD
Alternative: PureBasic 4.00
TBD
More
Hardware Emulation (FPGA)
Additional
- BitmapFonts: Collection of bitmap fonts pulled from various demoscene archives over the years.