Kickstart (Amiga)
   HOME

TheInfoList



OR:

Kickstart is the bootstrap
firmware In computing, firmware is a specific class of computer software that provides the low-level control for a device's specific hardware. Firmware, such as the BIOS of a personal computer, may contain basic functions of a device, and may provide h ...
of the
Amiga Amiga is a family of personal computers introduced by Commodore International, Commodore in 1985. The original model is one of a number of mid-1980s computers with 16- or 32-bit processors, 256 KB or more of RAM, mouse-based GUIs, and sign ...
computers developed by
Commodore International Commodore International (other names include Commodore International Limited) was an American home computer and electronics manufacturer founded by Jack Tramiel. Commodore International (CI), along with its subsidiary Commodore Business Mac ...
. Its purpose is to initialize the Amiga hardware and core components of
AmigaOS AmigaOS is a family of proprietary native operating systems of the Amiga and AmigaOne personal computers. It was developed first by Commodore International and introduced with the launch of the first Amiga, the Amiga 1000, in 1985. Early versions ...
and then attempt to boot from a bootable
volume Volume is a measure of occupied three-dimensional space. It is often quantified numerically using SI derived units (such as the cubic metre and litre) or by various imperial or US customary units (such as the gallon, quart, cubic inch). ...
, such as a
floppy disk A floppy disk or floppy diskette (casually referred to as a floppy, or a diskette) is an obsolescent type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined ...
. Most Amiga models were shipped with the Kickstart firmware stored on ROM chips.


Versions

Commodore's
AmigaOS AmigaOS is a family of proprietary native operating systems of the Amiga and AmigaOne personal computers. It was developed first by Commodore International and introduced with the launch of the first Amiga, the Amiga 1000, in 1985. Early versions ...
was formed of both the Kickstart firmware and a software component provided on disk (with the software portion often termed as Workbench). For most AmigaOS updates the Kickstart version number was matched to the Workbench version number. Confusingly, Commodore also used internal revision numbers for Kickstart chips. For example, there were several Kickstart revisions designated as version 2.0.


Version summary

The first Amiga model, the A1000, required that Kickstart 1.x be loaded from
floppy disk A floppy disk or floppy diskette (casually referred to as a floppy, or a diskette) is an obsolescent type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined ...
into a 256  KB section of
RAM Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch * ...
called the writable control store (WCS). Some A1000 software titles (notably ''
Dragon's Lair ''Dragon's Lair'' is a video game franchise created by Rick Dyer and Don Bluth. The series is famous for its Western animation-style graphics and complex decades-long history of being ported to many platforms and being remade into television a ...
'') provided an alternative code-base in order to use the extra 256 KB for data. Later Amiga models had Kickstart embedded in a ROM chip, thus improving boot times. Many Amiga 1000 computers were modified to take these chips. Kickstart was stored in 256 KB ROM chips for releases prior to AmigaOS 2.0. Later releases used 512 KB ROM chips containing additional and improved functionality. The
Amiga CD32 The Amiga CD32 (stylized as Amiga CD32, code-named "Spellbound") is a 32-bit home video game console developed by Commodore and released in Europe, Australia, Canada, and Brazil. It was first announced at the Science Museum in London on July 16, ...
featured a 1 MB ROM (Kickstart 3.1) with additional firmware and an integrated
file system In computing, file system or filesystem (often abbreviated to fs) is a method and data structure that the operating system uses to control how data is stored and retrieved. Without a file system, data placed in a storage medium would be one larg ...
for
CD-ROM A CD-ROM (, compact disc read-only memory) is a type of read-only memory consisting of a pre-pressed optical compact disc that contains data. Computers can read—but not write or erase—CD-ROMs. Some CDs, called enhanced CDs, hold both com ...
. Early A3000 models were, like the A1000, also shipped with Kickstart on floppy disk, and used a 1.4 BETA ROM as bootstrap. Either Kickstart 1.3 or 2.0 could be extracted to a partition specifically named WB_1.3 or WB_2.x, respectively, and put in DEVS:kickstart, an absolute system location from where the A3000 system will find it at bootstrap and copy its image into RAM. This early A3000 supported both ROM based Kickstarts and disk-based Kickstarts, although not simultaneously. An A3000 configured to use disk-based Kickstart images had the benefit of being able to boot various versions of AmigaOS without additional tools, simply by selecting the appropriate Kickstart image at boot time. The
Commodore CDTV The CDTV (from Commodore Dynamic Total Vision, later treated as a backronym for Compact Disc Television) is a home multimedia entertainment and video game console – convertible into a full-fledged personal computer by the addition of optional ...
featured additional firmware ROMs which are not technically part of the Amiga Kickstart. The CDTV's original firmware ROMs must be upgraded in order to install a Kickstart version later than 1.3. AmigaOS 2.1 was a pure software update and did not require matching Kickstart ROM chips. Workbench 2.1 ran on all Kickstart ROMs of the 2.0x family. Later releases of AmigaOS (3.5 and 3.9) were also software only and did not include matching ROM upgrades instead requiring Kickstart 3.1, with ROM-file based Kickstart components replacing those in ROM. Kickstart modules of
AmigaOS 4 AmigaOS 4 (abbreviated as OS4 or AOS4) is a line of Amiga operating systems which runs on PowerPC microprocessors. It is mainly based on AmigaOS 3.1 source code developed by Commodore, and partially on version 3.9 developed by Haage & Partne ...
are stored on the boot disk partition. Up to Kickstart v2.0 (V36) only 512-byte blocks were supported.
Motorola 68040 The Motorola 68040 ("''sixty-eight-oh-forty''") is a 32-bit microprocessor in the Motorola 68000 series, released in 1990. It is the successor to the 68030 and is followed by the 68060, skipping the 68050. In keeping with general Motorola na ...
uses write caches that requires the use of the functions CacheClearU() and CacheControl() to flush cache when program code has been modified. These functions are only available in or better.


Function

Upon start-up or reset the Kickstart performs a number of diagnostic and system checks and then initializes the Amiga
chipset In a computer system, a chipset is a set of electronic components in one or more integrated circuits known as a "Data Flow Management System" that manages the data flow between the processor, memory and peripherals. It is usually found on the mo ...
and some core OS components. It will then check for connected boot devices and attempt to boot from the one with the highest boot priority. If no boot device is present a screen will be displayed asking the user to insert a boot disk typically a floppy disk. Insertion of such a bootable disk (other than workbench-like disk) will result in: a) a command line interface ("CLI") prompt to operate with ROM-internal and disks commands (including programs, scripts) (if the disk is non-workbench, or empty), or b) a (basic) point and click UI named "Workbench" if the disk contains at least "loadwb" in the "startup-sequence" script residing inside the "s"-folder on this disk. c) the disk booting into a customized workbench or an application, keeping the OS "alive" in the background. d) a game or other application directly starting up, taking over all the hardware resources of this computer by avoiding to establish core Exec multitasking, driver initialization etc. The Kickstart contains many of the core components of the Amiga's
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
, such as: * ''
Exec Exec or EXEC may refer to: * Executive officer, a person responsible for running an organization * Executive producer, provides finance and guidance for the making of a commercial entertainment product * A family of kit helicopters produced by Rot ...
'' – the Amiga's multi-tasking kernel * ''
Intuition Intuition is the ability to acquire knowledge without recourse to conscious reasoning. Different fields use the word "intuition" in very different ways, including but not limited to: direct access to unconscious knowledge; unconscious cognition; ...
'' – functionality for GUI, screens, windowing and handling of input/output devices * ''
Autoconfig Autoconfig is an auto-configuration protocol of Amiga computers which is intended to automatically assign resources to expansion devices without the need for jumper settings. It is analogous to PCI configuration through ACPI. Autoconfig is ...
'' – functionality to automatically initialize or boot from compliant expansion hardware * Floppy disk device driver and
file system In computing, file system or filesystem (often abbreviated to fs) is a method and data structure that the operating system uses to control how data is stored and retrieved. Without a file system, data placed in a storage medium would be one larg ...
to read and boot from floppy disk *
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
library for file access and handling * ''
AmigaDOS AmigaDOS is the disk operating system of the AmigaOS, which includes file systems, file and directory manipulation, the command-line interface, and file redirection. In AmigaOS 1.x, AmigaDOS is based on a TRIPOS port by MetaComCo, written in ...
'' –
Command Line Interface A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
(CLI) functionality and a number of core CLI commands * Graphics library for basic drawing and
raster graphics upright=1, The Smiley, smiley face in the top left corner is a raster image. When enlarged, individual pixels appear as squares. Enlarging further, each pixel can be analyzed, with their colors constructed through combination of the values for ...
functions using the native Amiga chipset * Audio device driver for the native Amiga sound hardware * Device drivers for the Amiga keyboard and mouse/gameports Kickstart 1.3 is the first version to support booting from a
hard disk drive A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating platters coated with mag ...
. 090429 amiga.resource.cx From AmigaOS release 2.0 onwards Kickstart also contained device drivers to boot from devices on IDE controllers, support for
PC Card In computing, PC Card is a configuration for computer parallel communication peripheral interface, designed for laptop computers. Originally introduced as PCMCIA, the PC Card standard as well as its successors like CardBus were defined and devel ...
ports and various other hardware built into Amiga models.


Diagnostic test

At power-on a self-test is run from the ROM, this is a short program that can produce a color on the screen which correspont with a fault. If everything is working the following screen color sequence will be displayed on older kickstarts.: * Dark grey – Hardware working and the registers are readable. * Light grey – ROM verified. * White – Initialization is alright. Ready to boot. These colors indicate a problem: * – Bad result on Kickstart- ROM test (Checksum error). A small fault in ROM data will cause a checksum error. * – Bad result on lower part of
chip RAM Chip RAM is a commonly used term for the integrated RAM used in Commodore's line of Amiga computers. Chip RAM is shared between the central processing unit (CPU) and the Amiga's dedicated chipset (hence the name). It was also, rather misleadingly, ...
. Does not always mean the ram is at fault. * – Custom chip problem ( Denise, Paula,
Agnus Agnus (Latin for Domestic sheep, lamb) can be used to refer to : People with the surname * Felix Agnus (1839-1925), American military officer and newspaper publisher Religion * ''Agnus Dei'' (Latin: "Lamb of God") ** referring to Jesus Christ as d ...
) * {{color, #DFDF00, Yellow – CPU exception occurred, this is a CPU error detection by the CPU itself and can be an illegal instruction executed or address bus error – Mostly a bad
CPU A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, a ...
or a bad
Zorro Zorro ( Spanish for 'fox') is a fictional character created in 1919 by American pulp writer Johnston McCulley, appearing in works set in the Pueblo of Los Angeles in Alta California. He is typically portrayed as a dashing masked vigilante w ...
expansion card In computing, an expansion card (also called an expansion board, adapter card, peripheral card or accessory card) is a printed circuit board that can be inserted into an electrical connector, or expansion slot (also referred to as a bus sl ...
.{{cite web , url=https://eab.abime.net/showthread.php?t=497 , website=abime.net , title= blinking power led/no screen on amiga 500 , archive-url=https://web.archive.org/web/20120403044629/http://eab.abime.net/showthread.php?t=497 , archive-date=2012-04-03 CPU exception happened before the " Guru Meditation" trapping software was enabled.amigahistory.co.uk - What your Amiga is telling you
/ref> * {{color, Purple, Purple – Bad Paula on older kickstart Amigas. * {{color, Lime, Light green –
CIA The Central Intelligence Agency (CIA ), known informally as the Agency and historically as the Company, is a civilian foreign intelligence service of the federal government of the United States, officially tasked with gathering, processing, ...
problem * {{color, Silver, Light Grey – If it stops at grey the CIA may be defective * {{color, Silver, White - If it stops at white you may have used ram chips that are not working well on an A500 mainboard in combination with other "RAM"chips? * Black/stripes/glitching – random code (ROMs swapped/ROM garbage) or CIA problem * Black – No video output or CPU not running for some reason.{{cite web , url=https://amiaga.serveftp.net/A3000_HardwareGuide/booting-problems.html , website=amiga.serveftp.net , title=A3000 Booting Problems , access-date= 2011-11-03 , archive-url=https://web.archive.org/web/20191203151022/https://amiga.serveftp.net/A3000_HardwareGuide/booting-problems.html , archive-date=2019-12-03 If you get a colorcode, it does not always mean that it comes from a hardware fault, red can also happen if you map your rom to fastmem or rom patches from software, for yellow it can be unstable software in memory. Some Amigas can give a short color on screen at power-on which can be the last background color. Keep in mind that bad activity on the databus that should not be there can have effect on other chips on the bus. The keyboard LED uses blink codes that come from the keyboard controller chip where: * One blink means the keyboard ROM has a checksum error * Two blinks means keyboard RAM failure * Three blinks means watchdog timer failure. * When the Caps Lock key is repeatedly pressed approx. 10 times, and the Caps Lock LED is not turning on and off each time you press, the CPU is not reading out key presses and mostly indicate a CPU crash. CIA-A serial register is used with a CIA interrupt to pickup keypresses from the keyboard buffer. If the Caps Lock LED sticks on or off, the CPU is probably not servicing CIA interrupt requests.


Usage

In general, to run a specific ''
Workbench A workbench is a sturdy table at which manual work is done. They range from simple flat surfaces to very complex designs that may be considered tools in themselves. Workbenches vary in size from tiny jewellers benches to the huge benches used by ...
'' version a Kickstart with a matching or greater version number is required. It is not generally possible to boot directly into the
Workbench A workbench is a sturdy table at which manual work is done. They range from simple flat surfaces to very complex designs that may be considered tools in themselves. Workbenches vary in size from tiny jewellers benches to the huge benches used by ...
windowing environment from Kickstart alone. Though much of the functionality required for Workbench is contained in Kickstart some disk-based components are needed to launch it. From release 2.0 onwards it is possible to enter a boot menu by holding down both mouse buttons at power on or reset. This allows the user to choose a boot device, set parameters for backwards compatibility and examine
Autoconfig Autoconfig is an auto-configuration protocol of Amiga computers which is intended to automatically assign resources to expansion devices without the need for jumper settings. It is analogous to PCI configuration through ACPI. Autoconfig is ...
hardware. With third-party
software Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work. At the lowest programming level, executable code consist ...
, it is possible to use an alternate Kickstart to the version stored in the embedded ROM chip. Such software allows a Kickstart version to be loaded from file into
RAM Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch * ...
{{snd for example Kickstart 1.3 may be loaded in order to run old software incompatible with Kickstart 2.0 or later. Several third-party vendors produced hardware Kickstart switchers (
dual-boot Multi-booting is the act of installing multiple operating systems on a single computer, and being able to choose which one to boot. The term dual-booting refers to the common configuration of specifically two operating systems. Multi-booting may ...
systems) in the form of socket doublers in order to allow two ROM chips to plug into a single motherboard socket with some mechanism to switch between them. These became popular with users who had problems with later Kickstart versions causing incompatibility with earlier software titles. An MMU-enabled Amiga is able to "shadow" Kickstart from the embedded ROM chip (or from file) into RAM and pass control to it at start-up. This is often preferable as RAM access times are significantly faster than ROM, particularly on expanded systems. At subsequent resets the copy of Kickstart is re-used, reducing boot time and allowing faster access and execution of Kickstart functionality. Similar shadowing functions were also developed for some devices without MMU hardware.


References

{{Portal, Amiga {{Reflist {{Amiga hardware {{AmigaOS {{AmigaOS 4 AmigaOS Amiga Firmware ru:AmigaOS#Kickstart