Skip to navigation

Elite on the BBC Micro

List of all subroutines [Elite-A]

This index contains every subroutine and entry point that appears in the source code for Elite-A, grouped by category. An entry points is a label within a subroutine that is called from outside the subroutine, which typically implements a subset or variation of the functionality of the parent subroutine.

Buying ships
------------

buy_invnt (Encyclopedia)Process key presses in the encyclopedia
cash_query (Docked)Print "CASH?", make a short, high beep, delay for 1 second and go to the docking bay (i.e. show the Status Mode screen)
cash_query (Parasite)Print "CASH?", make a short, high beep, delay for 1 second and go to the docking bay (i.e. show the Status Mode screen)
jmp_start3 (Docked)Make a short, high beep, and delay for 1 second and go to the docking bay (i.e. show the Status Mode screen)
jmp_start3 (Parasite)Make a short, high beep, and delay for 1 second and go to the docking bay (i.e. show the Status Mode screen)
n_buyship (Docked)Show the Buy Ship screen (CTRL-f3)
n_buyship (Parasite)Show the Buy Ship screen (CTRL-f3)
n_load (Docked)Load the name and flight characteristics for the current ship type
n_load (Parasite)Load the name and flight characteristics for the current ship type
n_price (Docked)Set K(0 1 2 3) to the price of a given ship
n_price (Parasite)Set K(0 1 2 3) to the price of a given ship

Charts
------

hm (Docked)Select the closest system and redraw the chart crosshairs
hm (Encyclopedia)Select the closest system and redraw the chart crosshairs
hm (Flight)Select the closest system and redraw the chart crosshairs
hm (Parasite)Select the closest system and redraw the chart crosshairs
HME2 (Docked)Search the galaxy for a system
HME2 (Encyclopedia)Search the galaxy for a system
HME2 (Parasite)Search the galaxy for a system
TT103 (Docked)Draw a small set of crosshairs on a chart
TT103 (Encyclopedia)Draw a small set of crosshairs on a chart
TT103 (Flight)Draw a small set of crosshairs on a chart
TT103 (Parasite)Draw a small set of crosshairs on a chart
TT105 (Docked)Draw crosshairs on the Short-range Chart, with clipping
TT105 (Encyclopedia)Draw crosshairs on the Short-range Chart, with clipping
TT105 (Flight)Draw crosshairs on the Short-range Chart, with clipping
TT105 (Parasite)Draw crosshairs on the Short-range Chart, with clipping
TT114 (Flight)Display either the Long-range or Short-range Chart
TT114 (Parasite)Display either the Long-range or Short-range Chart
TT123 (Docked)Move galactic coordinates by a signed delta
TT123 (Encyclopedia)Move galactic coordinates by a signed delta
TT123 (Flight)Move galactic coordinates by a signed delta
TT123 (Parasite)Move galactic coordinates by a signed delta
TT16 (Docked)Move the crosshairs on a chart
TT16 (Encyclopedia)Move the crosshairs on a chart
TT16 (Flight)Move the crosshairs on a chart
TT16 (Parasite)Move the crosshairs on a chart
TT180 (Docked)Contains an RTS
TT180 (Encyclopedia)Contains an RTS
TT180 (Flight)Contains an RTS
TT180 (Parasite)Contains an RTS
TT22 (Docked)Show the Long-range Chart (red key f4)
TT22 (Encyclopedia)Show the Long-range Chart (red key f4)
TT22 (Flight)Show the Long-range Chart (red key f4)
TT22 (Parasite)Show the Long-range Chart (red key f4)
TT23 (Docked)Show the Short-range Chart (red key f5)
TT23 (Encyclopedia)Show the Short-range Chart (red key f5)
TT23 (Flight)Show the Short-range Chart (red key f5)
TT23 (Parasite)Show the Short-range Chart (red key f5)

Copy protection
---------------

PROT3 (Loader)Part of the CHKSM copy protection checksum calculation

Dashboard
---------

ABORT (Flight)Disarm missiles and update the dashboard indicators
ABORT (Parasite)Disarm missiles and update the dashboard indicators
ABORT, Removed (Docked)Disarm missiles and update the dashboard indicators
ABORT2 (Flight)Set/unset the lock target for a missile and update the dashboard
ABORT2 (Parasite)Set/unset the lock target for a missile and update the dashboard
ABORT2, Removed (Docked)Set/unset the lock target for a missile and update the dashboard
BULB (Flight)Draw an indicator bulb on the dashboard
BULB (I/O processor)Draw an indicator bulb on the dashboard
BULB, Removed (Docked)Draw an indicator bulb on the dashboard
BULB-2 (Docked)Set the Y screen address
BULB-2 (Flight)Set the Y screen address
BULB-2 (I/O processor)Set the Y screen address
BUMP2 (Flight)Bump up the value of the pitch or roll dashboard indicator
BUMP2 (Parasite)Bump up the value of the pitch or roll dashboard indicator
BUMP2, Removed (Docked)Bump up the value of the pitch or roll dashboard indicator
cntr (Flight)Apply damping to the pitch or roll dashboard indicator
cntr (Parasite)Apply damping to the pitch or roll dashboard indicator
cntr, Removed (Docked)Apply damping to the pitch or roll dashboard indicator
COMPAS (Flight)Update the compass
COMPAS (Parasite)Update the compass
DIALS (Part 1 of 4) (Docked)Update the dashboard: speed indicator
DIALS (Part 2 of 4) (Docked)Update the dashboard: pitch and roll indicators
DIALS (Part 3 of 4) (Docked)Update the dashboard: four energy banks
DIALS (Part 4 of 4) (Docked)Update the dashboard: shields, fuel, laser & cabin temp, altitude
DIALS (Part 1 of 4) (Flight)Update the dashboard: speed indicator
DIALS (Part 2 of 4) (Flight)Update the dashboard: pitch and roll indicators
DIALS (Part 3 of 4) (Flight)Update the dashboard: four energy banks
DIALS (Part 4 of 4) (Flight)Update the dashboard: shields, fuel, laser & cabin temp, altitude
DIALS (Part 1 of 4) (Parasite)Update the dashboard: speed indicator
DIALS (Part 2 of 4) (Parasite)Update the dashboard: pitch and roll indicators
DIALS (Part 3 of 4) (Parasite)Update the dashboard: four energy banks
DIALS (Part 4 of 4) (Parasite)Update the dashboard: shields, fuel, laser & cabin temp, altitude
DIL (Docked)The range of the indicator is 0-16 (for the energy banks)
DIL (Flight)The range of the indicator is 0-16 (for the energy banks)
DIL (Parasite)The range of the indicator is 0-16 (for the energy banks)
DIL-1 (Docked)The range of the indicator is 0-32 (for the speed indicator)
DIL-1 (Flight)The range of the indicator is 0-32 (for the speed indicator)
DIL-1 (Parasite)The range of the indicator is 0-32 (for the speed indicator)
DIL2 (Docked)Update the roll or pitch indicator on the dashboard
DIL2 (Flight)Update the roll or pitch indicator on the dashboard
DIL2 (I/O processor)Implement the draw_angle command (update the roll or pitch indicator on the dashboard)
DIL2 (Parasite)Update the roll or pitch indicator on the dashboard by sending a draw_angle command to the I/O processor
DILX (Docked)Update a bar-based indicator on the dashboard
DILX (Flight)Update a bar-based indicator on the dashboard
DILX (I/O processor)Implement the draw_bar command (update a bar-based indicator on the dashboard
DILX (Parasite)Update a bar-based indicator on the dashboard by sending a draw_bar command to the I/O processor
DILX+2 (Docked)The range of the indicator is 0-64 (for the fuel indicator)
DILX+2 (Flight)The range of the indicator is 0-64 (for the fuel indicator)
DILX+2 (Parasite)The range of the indicator is 0-64 (for the fuel indicator)
DOT (Flight)Draw a dash on the compass
DOT (Parasite)Draw a dash on the compass
draw_tail (I/O processor)Implement the draw_tail command (draw a ship on the 3D scanner)
ECBLB (Flight)Light up the E.C.M. indicator bulb ("E") on the dashboard
ECBLB (I/O processor)Light up the E.C.M. indicator bulb ("E") on the dashboard
ECBLB (Parasite)Light up the E.C.M. indicator bulb ("E") on the dashboard by sending a draw_E command to the I/O processor
ECBLB2 (Flight)Start up the E.C.M. (indicator, start countdown and make sound)
ECBLB2 (Parasite)Start up the E.C.M. (indicator, start countdown and make sound)
iff_index (Loader)Return the type index for this ship in the I.F.F. system
iff_index_code (Loader)The iff_index routine, bundled up in the loader so it can be moved to &0D7A to be run
MSBAR (Docked)Draw a specific indicator in the dashboard's missile bar
MSBAR (Flight)Draw a specific indicator in the dashboard's missile bar
MSBAR (I/O processor)Implement the put_missle command (update a missile indicator on the dashboard)
MSBAR (Parasite)Draw a specific indicator in the dashboard's missile bar by sending a put_missle command to the I/O processor
MSBARS (Parasite)Draw a specific indicator in the dashboard's missile bar
msblob (Docked)Display the dashboard's missile indicators in green
msblob (Flight)Display the dashboard's missile indicators in green
msblob (Parasite)Display the dashboard's missile indicators in green
PZW (Docked)Fetch the current dashboard colours, to support flashing
PZW (Flight)Fetch the current dashboard colours, to support flashing
PZW (Parasite)Fetch the current dashboard colours, to support flashing
RE2+2 (Docked)Restore A from T and return from the subroutine
RE2+2 (Flight)Restore A from T and return from the subroutine
RE2+2 (Parasite)Restore A from T and return from the subroutine
RE3+2 (Docked)Auto-recentre the value in X, if keyboard auto-recentre is configured
RE3+2 (Flight)Auto-recentre the value in X, if keyboard auto-recentre is configured
RE3+2 (Parasite)Auto-recentre the value in X, if keyboard auto-recentre is configured
REDU2 (Flight)Reduce the value of the pitch or roll dashboard indicator
REDU2 (Parasite)Reduce the value of the pitch or roll dashboard indicator
REDU2, Removed (Docked)Reduce the value of the pitch or roll dashboard indicator
SCAN (Flight)Display the current ship on the scanner
SCAN (Parasite)Display the current ship on the scanner by sending a draw_tail command to the I/O processor
SP1, Removed (Flight)Draw the space station on the compass
SP2 (Flight)Draw a dot on the compass, given the planet/station vector
SP2 (Parasite)Draw a dot on the compass, given the planet/station vector
SPBLB (Flight)Light up the space station indicator ("S") on the dashboard
SPBLB (I/O processor)Light up the space station indicator ("S") on the dashboard
SPBLB (Parasite)Light up the space station indicator ("S") on the dashboard by sending a draw_S command to the I/O processor
SPBLB, Removed (Docked)Light up the space station indicator ("S") on the dashboard
update_pod (Parasite)Ensure the correct palette is shown for the dashboard/hyperspace tunnel, by sending a write_pod command to the I/O processor
WPSHPS (Docked)Clear the scanner, reset the ball line and sun line heaps
WPSHPS (Encyclopedia)Clear the scanner, reset the ball line and sun line heaps
WPSHPS (Flight)Clear the scanner, reset the ball line and sun line heaps
WPSHPS (Parasite)Clear the scanner, reset the ball line and sun line heaps
WPSHPSS (Parasite)Clear the scanner, reset the ball line and sun line heaps
write_pod (I/O processor)Implement the write_pod command (show the correct palette for the dashboard and hyperspace tunnel)

Drawing circles
---------------

BLINE (Docked)Draw a circle segment and add it to the ball line heap
BLINE (Encyclopedia)Draw a circle segment and add it to the ball line heap
BLINE (Flight)Draw a circle segment and add it to the ball line heap
BLINE (Parasite)Draw a circle segment and add it to the ball line heap
CHKON (Docked)Check whether any part of a circle appears on the extended screen
CHKON (Encyclopedia)Check whether any part of a circle appears on the extended screen
CHKON (Flight)Check whether any part of a circle appears on the extended screen
CHKON (Parasite)Check whether any part of a circle appears on the extended screen
CIRCLE (Flight)Draw a circle for the planet
CIRCLE (Parasite)Draw a circle for the planet
CIRCLE, Removed (Docked)Draw a circle for the planet
CIRCLE2 (Docked)Draw a circle (for the planet or chart)
CIRCLE2 (Encyclopedia)Draw a circle (for the planet or chart)
CIRCLE2 (Flight)Draw a circle (for the planet or chart)
CIRCLE2 (Parasite)Draw a circle (for the planet or chart)
HFS1 (Docked)Draw the launch or hyperspace tunnel
HFS1 (Parasite)Draw the launch or hyperspace tunnel
HFS2 (Flight)Draw the launch or hyperspace tunnel
HFS2 (Parasite)Clear the screen and draw the launch or hyperspace tunnel
LAUN (Flight)Make the launch sound and draw the launch tunnel
LAUN (Parasite)Make the launch sound and draw the launch tunnel
LAUN, Removed (Docked)Make the launch sound and draw the launch tunnel
LL164 (Flight)Make the hyperspace sound and draw the hyperspace tunnel
LL164 (Parasite)Make the hyperspace sound and draw the hyperspace tunnel
LL164, Removed (Docked)Make the hyperspace sound and draw the hyperspace tunnel
TT128 (Docked)Draw a circle on a chart
TT128 (Encyclopedia)Draw a circle on a chart
TT128 (Flight)Draw a circle on a chart
TT128 (Parasite)Draw a circle on a chart
TT14 (Docked)Draw a circle with crosshairs on a chart
TT14 (Encyclopedia)Draw a circle with crosshairs on a chart
TT14 (Flight)Draw a circle with crosshairs on a chart
TT14 (Parasite)Draw a circle with crosshairs on a chart

Drawing lines
-------------

EDGES (Docked)Draw a horizontal line given a centre and a half-width
EDGES (Encyclopedia)Draw a horizontal line given a centre and a half-width
EDGES (Flight)Draw a horizontal line given a centre and a half-width
EDGES (Parasite)Draw a horizontal line given a centre and a half-width
HL6 (Docked)Contains an RTS
HL6 (Encyclopedia)Contains an RTS
HL6 (Flight)Contains an RTS
HL6 (I/O processor)Contains an RTS
HLOIN (Docked)Draw a horizontal line from (X1, Y1) to (X2, Y1)
HLOIN (Encyclopedia)Draw a horizontal line from (X1, Y1) to (X2, Y1)
HLOIN (Flight)Draw a horizontal line from (X1, Y1) to (X2, Y1)
HLOIN (I/O processor)Implement the draw_hline command (draw a horizontal line
HLOIN (Parasite)Draw a horizontal line by sending a draw_hline command to the I/O processor
HLOIN2 (Docked)Remove a line from the sun line heap and draw it on-screen
HLOIN2 (Encyclopedia)Remove a line from the sun line heap and draw it on-screen
HLOIN2 (Flight)Remove a line from the sun line heap and draw it on-screen
HLOIN2 (Parasite)Remove a line from the sun line heap and draw it on-screen
LASLI (Flight)Draw the laser lines for when we fire our lasers
LASLI (Parasite)Draw the laser lines for when we fire our lasers
LASLI-1 (Flight)Contains an RTS
LASLI-1 (Parasite)Contains an RTS
LASLI2 (Flight)Just draw the current laser lines without moving the centre point, draining energy or heating up. This has the effect of removing the lines from the screen
LASLI2 (Parasite)Just draw the current laser lines without moving the centre point, draining energy or heating up. This has the effect of removing the lines from the screen
LL118 (Docked)Move a point along a line until it is on-screen
LL118 (Encyclopedia)Move a point along a line until it is on-screen
LL118 (Flight)Move a point along a line until it is on-screen
LL118 (Parasite)Move a point along a line until it is on-screen
LL118-1 (Docked)Contains an RTS
LL118-1 (Encyclopedia)Contains an RTS
LL118-1 (Flight)Contains an RTS
LL118-1 (Parasite)Contains an RTS
LL145 (Part 1 of 4) (Docked)Clip line: Work out which end-points are on-screen, if any
LL145 (Part 2 of 4) (Docked)Clip line: Work out if any part of the line is on-screen
LL145 (Part 3 of 4) (Docked)Clip line: Calculate the line's gradient
LL145 (Part 4 of 4) (Docked)Clip line: Call the routine in LL188 to do the actual clipping
LL145 (Part 1 of 4) (Encyclopedia)Clip line: Work out which end-points are on-screen, if any
LL145 (Part 2 of 4) (Encyclopedia)Clip line: Work out if any part of the line is on-screen
LL145 (Part 3 of 4) (Encyclopedia)Clip line: Calculate the line's gradient
LL145 (Part 4 of 4) (Encyclopedia)Clip line: Call the routine in LL188 to do the actual clipping
LL145 (Part 1 of 4) (Flight)Clip line: Work out which end-points are on-screen, if any
LL145 (Part 2 of 4) (Flight)Clip line: Work out if any part of the line is on-screen
LL145 (Part 3 of 4) (Flight)Clip line: Calculate the line's gradient
LL145 (Part 4 of 4) (Flight)Clip line: Call the routine in LL188 to do the actual clipping
LL145 (Part 1 of 4) (Parasite)Clip line: Work out which end-points are on-screen, if any
LL145 (Part 2 of 4) (Parasite)Clip line: Work out if any part of the line is on-screen
LL145 (Part 3 of 4) (Parasite)Clip line: Calculate the line's gradient
LL145 (Part 4 of 4) (Parasite)Clip line: Call the routine in LL188 to do the actual clipping
LL147 (Docked)Don't initialise the values in SWAP or A
LL147 (Encyclopedia)Don't initialise the values in SWAP or A
LL147 (Flight)Don't initialise the values in SWAP or A
LL147 (Parasite)Don't initialise the values in SWAP or A
LL30 (Docked)LL30 is a synonym for LOIN and draws a line from (X1, Y1) to (X2, Y2)
LL30 (Encyclopedia)LL30 is a synonym for LOIN and draws a line from (X1, Y1) to (X2, Y2)
LL30 (Flight)LL30 is a synonym for LOIN and draws a line from (X1, Y1) to (X2, Y2)
LL30 (I/O processor)LL30 is a synonym for LOIN and draws a line from (X1, Y1) to (X2, Y2)
LL30 (Parasite)Draw a one-segment line by sending a draw_line command to the I/O processor
LOIN (Part 1 of 7) (Docked)Draw a line: Calculate the line gradient in the form of deltas
LOIN (Part 2 of 7) (Docked)Draw a line: Line has a shallow gradient, step right along x-axis
LOIN (Part 3 of 7) (Docked)Draw a shallow line going right and up or left and down
LOIN (Part 4 of 7) (Docked)Draw a shallow line going right and down or left and up
LOIN (Part 5 of 7) (Docked)Draw a line: Line has a steep gradient, step up along y-axis
LOIN (Part 6 of 7) (Docked)Draw a steep line going up and left or down and right
LOIN (Part 7 of 7) (Docked)Draw a steep line going up and right or down and left
LOIN (Part 1 of 7) (Encyclopedia)Draw a line: Calculate the line gradient in the form of deltas
LOIN (Part 2 of 7) (Encyclopedia)Draw a line: Line has a shallow gradient, step right along x-axis
LOIN (Part 3 of 7) (Encyclopedia)Draw a shallow line going right and up or left and down
LOIN (Part 4 of 7) (Encyclopedia)Draw a shallow line going right and down or left and up
LOIN (Part 5 of 7) (Encyclopedia)Draw a line: Line has a steep gradient, step up along y-axis
LOIN (Part 6 of 7) (Encyclopedia)Draw a steep line going up and left or down and right
LOIN (Part 7 of 7) (Encyclopedia)Draw a steep line going up and right or down and left
LOIN (Part 1 of 7) (Flight)Draw a line: Calculate the line gradient in the form of deltas
LOIN (Part 2 of 7) (Flight)Draw a line: Line has a shallow gradient, step right along x-axis
LOIN (Part 3 of 7) (Flight)Draw a shallow line going right and up or left and down
LOIN (Part 4 of 7) (Flight)Draw a shallow line going right and down or left and up
LOIN (Part 5 of 7) (Flight)Draw a line: Line has a steep gradient, step up along y-axis
LOIN (Part 6 of 7) (Flight)Draw a steep line going up and left or down and right
LOIN (Part 7 of 7) (Flight)Draw a steep line going up and right or down and left
LOIN (Part 1 of 7) (I/O processor)Implement the draw_line command (draw a line)
LOIN (Part 2 of 7) (I/O processor)Draw a line: Line has a shallow gradient, step right along x-axis
LOIN (Part 3 of 7) (I/O processor)Draw a shallow line going right and up or left and down
LOIN (Part 4 of 7) (I/O processor)Draw a shallow line going right and down or left and up
LOIN (Part 5 of 7) (I/O processor)Draw a line: Line has a steep gradient, step up along y-axis
LOIN (Part 6 of 7) (I/O processor)Draw a steep line going up and left or down and right
LOIN (Part 7 of 7) (I/O processor)Draw a steep line going up and right or down and left
NLIN (Docked)Draw a horizontal line at pixel row 23 to box in a title
NLIN (Encyclopedia)Draw a horizontal line at pixel row 23 to box in a title
NLIN (Flight)Draw a horizontal line at pixel row 23 to box in a title
NLIN (Parasite)Draw a horizontal line at pixel row 23 to box in a title
NLIN2 (Docked)Draw a screen-wide horizontal line at the pixel row in A
NLIN2 (Encyclopedia)Draw a screen-wide horizontal line at the pixel row in A
NLIN2 (Flight)Draw a screen-wide horizontal line at the pixel row in A
NLIN2 (Parasite)Draw a screen-wide horizontal line at the pixel row in A
NLIN3 (Docked)Print a title and a horizontal line at row 19 to box it in
NLIN3 (Encyclopedia)Print a title and a horizontal line at row 19 to box it in
NLIN3 (Flight)Print a title and a horizontal line at row 19 to box it in
NLIN3 (Parasite)Print a title and a horizontal line at row 19 to box it in
NLIN4 (Docked)Draw a horizontal line at pixel row 19 to box in a title
NLIN4 (Encyclopedia)Draw a horizontal line at pixel row 19 to box in a title
NLIN4 (Flight)Draw a horizontal line at pixel row 19 to box in a title
NLIN4 (Parasite)Draw a horizontal line at pixel row 19 to box in a title
PL44 (Docked)Clear the C flag and return from the subroutine
PL44 (Encyclopedia)Clear the C flag and return from the subroutine
PL44 (Parasite)Clear the C flag and return from the subroutine
TT15 (Docked)Draw a set of crosshairs
TT15 (Encyclopedia)Draw a set of crosshairs
TT15 (Flight)Draw a set of crosshairs
TT15 (Parasite)Draw a set of crosshairs

Drawing pixels
--------------

CPIX2 (Flight)Draw a single-height dash on the dashboard
CPIX2 (I/O processor)Draw a single-height dash on the dashboard
CPIX2 (Parasite)Draw a single-height dash on the dashboard by sending a draw_blob command to the I/O processor
CPIX2, Removed (Docked)Draw a single-height dash on the dashboard
CPIX4 (Flight)Draw a double-height dot on the dashboard
CPIX4 (Parasite)Draw a double-height dot on the dashboard
CPIX4, Removed (Docked)Draw a double-height dot on the dashboard
draw_blob (I/O processor)Implement the draw_blob command (draw a single-height dash on the dashboard)
out (Loader)Contains an RTS
PIX (Loader)Draw a single pixel at a specific coordinate
PIXEL (Docked)Draw a 1-pixel dot, 2-pixel dash or 4-pixel square
PIXEL (Encyclopedia)Draw a 1-pixel dot, 2-pixel dash or 4-pixel square
PIXEL (Flight)Draw a 1-pixel dot, 2-pixel dash or 4-pixel square
PIXEL (I/O processor)Implement the draw_pixel command (draw space view pixels)
PIXEL (Parasite)Draw a 1-pixel dot, 2-pixel dash or 4-pixel square by sending a draw_pixel command to the I/O processor
PIXEL2 (Flight)Draw a stardust particle relative to the screen centre
PIXEL2 (Parasite)Draw a stardust particle relative to the screen centre
PIXEL2, Removed (Docked)Draw a stardust particle relative to the screen centre
PX3 (Docked)Plot a single pixel at (X, Y) within a character block
PX3 (Encyclopedia)Plot a single pixel at (X, Y) within a character block
PX3 (I/O processor)Plot a single pixel at (X, Y) within a character block
PX3, Removed (Flight)Plot a single pixel at (X, Y) within a character block
PX4 (Docked)Contains an RTS
PX4 (Encyclopedia)Contains an RTS
PX4 (Flight)Contains an RTS

Drawing planets
---------------

PL2 (Flight)Remove the planet or sun from the screen
PL2 (Parasite)Remove the planet or sun from the screen
PL2-1 (Flight)Contains an RTS
PL2-1 (Parasite)Contains an RTS
PL21 (Docked)Return from a planet/sun-drawing routine with a failure flag
PL21 (Encyclopedia)Return from a planet/sun-drawing routine with a failure flag
PL21 (Flight)Return from a planet/sun-drawing routine with a failure flag
PL21 (Parasite)Return from a planet/sun-drawing routine with a failure flag
PL21S (Parasite)Return from a planet/sun-drawing routine with a failure flag
PL44 (Flight)Clear the C flag and return from the subroutine
PL9 (Part 1 of 3) (Flight)Draw the planet, with either an equator and meridian, or a crater
PL9 (Part 2 of 3) (Flight)Draw the planet's equator and meridian
PL9 (Part 3 of 3) (Flight)Draw the planet's crater
PL9 (Part 1 of 3) (Parasite)Draw the planet, with either an equator and meridian, or a crater
PL9 (Part 2 of 3) (Parasite)Draw the planet's equator and meridian
PL9 (Part 3 of 3) (Parasite)Draw the planet's crater
PLANET (Flight)Draw the planet or sun
PLANET (Parasite)Draw the planet or sun
PLL1 (Loader)Draw Saturn on the loading screen
PLS1 (Flight)Calculate (Y A) = nosev_x / z
PLS1 (Parasite)Calculate (Y A) = nosev_x / z
PLS2 (Flight)Draw a half-circle
PLS2 (Parasite)Draw a half-circle
PLS22 (Flight)Draw a circle or half-circle
PLS22 (Parasite)Draw a circle or half-circle
PLS3 (Flight)Calculate (Y A P) = 222 * roofv_x / z
PLS3 (Parasite)Calculate (Y A P) = 222 * roofv_x / z
PLS4 (Flight)Calculate CNT2 = arctan(P / A) / 4
PLS4 (Parasite)Calculate CNT2 = arctan(P / A) / 4
PLS5 (Flight)Calculate roofv_x / z and roofv_y / z
PLS5 (Parasite)Calculate roofv_x / z and roofv_y / z
PLS6 (Flight)Calculate (X K) = (A P) / (z_sign z_hi z_lo)
PLS6 (Parasite)Calculate (X K) = (A P) / (z_sign z_hi z_lo)
WP1 (Flight)Reset the ball line heap
WP1 (Parasite)Reset the ball line heap
WP1, Removed (Docked)Reset the ball line heap
WPLS2 (Flight)Remove the planet from the screen
WPLS2 (Parasite)Remove the planet from the screen

Drawing ships
-------------

DOEXP (Flight)Draw an exploding ship
DOEXP (Parasite)Draw an exploding ship
DOEXP, Removed (Docked)Draw an exploding ship
EE51 (Docked)Remove the current ship from the screen, called from SHPPT before drawing the ship as a point
EE51 (Encyclopedia)Remove the current ship from the screen, called from SHPPT before drawing the ship as a point
EE51 (Flight)Remove the current ship from the screen, called from SHPPT before drawing the ship as a point
EE51 (Parasite)Remove the current ship from the screen, called from SHPPT before drawing the ship as a point
LL10-1 (Docked)Contains an RTS
LL10-1 (Encyclopedia)Contains an RTS
LL10-1 (Flight)Contains an RTS
LL10-1 (Parasite)Contains an RTS
LL70+1 (Docked)Contains an RTS (as the first byte of an LDA instruction)
LL70+1 (Encyclopedia)Contains an RTS (as the first byte of an LDA instruction)
LL70+1 (Flight)Contains an RTS (as the first byte of an LDA instruction)
LL70+1 (Parasite)Contains an RTS (as the first byte of an LDA instruction)
LL81+2 (Docked)Draw the contents of the ship line heap, used to draw the ship as a dot from SHPPT
LL81+2 (Encyclopedia)Draw the contents of the ship line heap, used to draw the ship as a dot from SHPPT
LL81+2 (Flight)Draw the contents of the ship line heap, used to draw the ship as a dot from SHPPT
LL81+2 (Parasite)Draw the contents of the ship line heap, used to draw the ship as a dot from SHPPT
LL9 (Part 1 of 12) (Docked)Draw ship: Check if ship is exploding, check if ship is in front
LL9 (Part 2 of 12) (Docked)Draw ship: Check if ship is in field of view, close enough to draw
LL9 (Part 3 of 12) (Docked)Draw ship: Set up orientation vector, ship coordinate variables
LL9 (Part 4 of 12) (Docked)Draw ship: Set visibility for exploding ship (all faces visible)
LL9 (Part 5 of 12) (Docked)Draw ship: Calculate the visibility of each of the ship's faces
LL9 (Part 6 of 12) (Docked)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 7 of 12) (Docked)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 8 of 12) (Docked)Draw ship: Calculate the screen coordinates of visible vertices
LL9 (Part 9 of 12) (Docked)Draw ship: Draw laser beams if the ship is firing its laser at us
LL9 (Part 1 of 12) (Encyclopedia)Draw ship: Check if ship is exploding, check if ship is in front
LL9 (Part 2 of 12) (Encyclopedia)Draw ship: Check if ship is in field of view, close enough to draw
LL9 (Part 3 of 12) (Encyclopedia)Draw ship: Set up orientation vector, ship coordinate variables
LL9 (Part 4 of 12) (Encyclopedia)Draw ship: Set visibility for exploding ship (all faces visible)
LL9 (Part 5 of 12) (Encyclopedia)Draw ship: Calculate the visibility of each of the ship's faces
LL9 (Part 6 of 12) (Encyclopedia)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 7 of 12) (Encyclopedia)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 8 of 12) (Encyclopedia)Draw ship: Calculate the screen coordinates of visible vertices
LL9 (Part 9 of 12) (Encyclopedia)Draw ship: Draw laser beams if the ship is firing its laser at us
LL9 (Part 1 of 12) (Flight)Draw ship: Check if ship is exploding, check if ship is in front
LL9 (Part 2 of 12) (Flight)Draw ship: Check if ship is in field of view, close enough to draw
LL9 (Part 3 of 12) (Flight)Draw ship: Set up orientation vector, ship coordinate variables
LL9 (Part 4 of 12) (Flight)Draw ship: Set visibility for exploding ship (all faces visible)
LL9 (Part 5 of 12) (Flight)Draw ship: Calculate the visibility of each of the ship's faces
LL9 (Part 6 of 12) (Flight)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 7 of 12) (Flight)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 8 of 12) (Flight)Draw ship: Calculate the screen coordinates of visible vertices
LL9 (Part 9 of 12) (Flight)Draw ship: Draw laser beams if the ship is firing its laser at us
LL9 (Part 1 of 12) (Parasite)Draw ship: Check if ship is exploding, check if ship is in front
LL9 (Part 2 of 12) (Parasite)Draw ship: Check if ship is in field of view, close enough to draw
LL9 (Part 3 of 12) (Parasite)Draw ship: Set up orientation vector, ship coordinate variables
LL9 (Part 4 of 12) (Parasite)Draw ship: Set visibility for exploding ship (all faces visible)
LL9 (Part 5 of 12) (Parasite)Draw ship: Calculate the visibility of each of the ship's faces
LL9 (Part 6 of 12) (Parasite)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 7 of 12) (Parasite)Draw ship: Calculate the visibility of each of the ship's vertices
LL9 (Part 8 of 12) (Parasite)Draw ship: Calculate the screen coordinates of visible vertices
LL9 (Part 9 of 12) (Parasite)Draw ship: Draw laser beams if the ship is firing its laser at us
LL9 (Part 10 of 12) (Docked)Draw ship: Calculate the visibility of each of the ship's edges
LL9 (Part 10 of 12) (Encyclopedia)Draw ship: Calculate the visibility of each of the ship's edges
LL9 (Part 10 of 12) (Flight)Draw ship: Calculate the visibility of each of the ship's edges
LL9 (Part 10 of 12) (Parasite)Draw ship: Calculate the visibility of each of the ship's edges
LL9 (Part 11 of 12) (Docked)Draw ship: Add all visible edges to the ship line heap
LL9 (Part 11 of 12) (Encyclopedia)Draw ship: Add all visible edges to the ship line heap
LL9 (Part 11 of 12) (Flight)Draw ship: Add all visible edges to the ship line heap
LL9 (Part 11 of 12) (Parasite)Draw ship: Add all visible edges to the ship line heap
LL9 (Part 12 of 12) (Docked)Draw ship: Draw all the visible edges from the ship line heap
LL9 (Part 12 of 12) (Encyclopedia)Draw ship: Draw all the visible edges from the ship line heap
LL9 (Part 12 of 12) (Flight)Draw ship: Draw all the visible edges from the ship line heap
LL9 (Part 12 of 12) (Parasite)Draw ship: Draw all the visible edges from the ship line heap
LL9_FLIGHT (Parasite)Draw a ship (flight version)
PROJ (Flight)Project the current ship onto the screen
PROJ (Parasite)Project the current ship onto the screen
ship_data (Parasite)The extended ship blueprints table for Elite-A, which includes an extra entry at the start for our current ship
ship_flags (Parasite)The extended NEWB flags table for Elite-A, which includes an extra entry at the start for our current ship
SHPPT (Docked)Draw a distant ship as a point in the middle of the screen
SHPPT (Encyclopedia)Draw a distant ship as a point in the middle of the screen
SHPPT (Flight)Draw a distant ship as a point rather than a full wireframe
SHPPT (Parasite)Draw a distant ship as a point rather than a full wireframe

Drawing suns
------------

FLFLLS (Docked)Reset the sun line heap
FLFLLS (Encyclopedia)Reset the sun line heap
FLFLLS (Flight)Reset the sun line heap
FLFLLS (Parasite)Reset the sun line heap
RTS2 (Docked)Contains an RTS
RTS2 (Encyclopedia)Contains an RTS
RTS2 (Flight)Contains an RTS
RTS2 (Parasite)Contains an RTS
SUN (Part 1 of 4) (Docked)Draw the sun: Set up all the variables needed
SUN (Part 2 of 4) (Docked)Draw the sun: Start from bottom of screen and erase the old sun
SUN (Part 3 of 4) (Docked)Draw the sun: Continue to move up the screen, drawing the new sun
SUN (Part 4 of 4) (Docked)Draw the sun: Continue to the top of the screen, erasing old sun
SUN (Part 1 of 4) (Encyclopedia)Draw the sun: Set up all the variables needed
SUN (Part 2 of 4) (Encyclopedia)Draw the sun: Start from bottom of screen and erase the old sun
SUN (Part 3 of 4) (Encyclopedia)Draw the sun: Continue to move up the screen, drawing the new sun
SUN (Part 4 of 4) (Encyclopedia)Draw the sun: Continue to the top of the screen, erasing old sun
SUN (Part 1 of 4) (Flight)Draw the sun: Set up all the variables needed
SUN (Part 2 of 4) (Flight)Draw the sun: Start from bottom of screen and erase the old sun
SUN (Part 3 of 4) (Flight)Draw the sun: Continue to move up the screen, drawing the new sun
SUN (Part 4 of 4) (Flight)Draw the sun: Continue to the top of the screen, erasing old sun
SUN (Part 1 of 4) (Parasite)Draw the sun: Set up all the variables needed
SUN (Part 2 of 4) (Parasite)Draw the sun: Start from bottom of screen and erase the old sun
SUN (Part 3 of 4) (Parasite)Draw the sun: Continue to move up the screen, drawing the new sun
SUN (Part 4 of 4) (Parasite)Draw the sun: Continue to the top of the screen, erasing old sun
WPLS (Flight)Remove the sun from the screen
WPLS (Parasite)Remove the sun from the screen
WPLS, Removed (Docked)Remove the sun from the screen
WPLS-1 (Docked)Contains an RTS
WPLS-1 (Flight)Contains an RTS
WPLS-1 (Parasite)Contains an RTS

Encyclopedia
------------

controls (Encyclopedia)Show the Controls menu and display the chosen page
controls (Parasite)Show the Controls menu and display the chosen page
encyclopedia (Parasite)Show the Encyclopedia screen
equip_data (Encyclopedia)Show the Equipment menu and display the chosen page
equip_data (Parasite)Show the Equipment menu and display the chosen page
info_menu (Encyclopedia)Show the Encyclopedia screen
jmp_start3 (Encyclopedia)Make a short, high beep, delay for one second, and go to the docking bay (i.e. show the Encyclopedia screen)
l_restart (Encyclopedia)Does exactly the same as a call to trading
l_restart (Parasite)Does exactly the same as a call to trading
menu (Encyclopedia)Display a menu and ask for a choice
menu (Parasite)Display a menu and ask for a choice
ships_ag (Encyclopedia)Show the Ships A-G or Ships K-W menu and display the chosen ship card
ships_ag (Parasite)Show the Ships A-G or Ships K-W menu and display the chosen ship card
ships_kw (Encyclopedia)Does exactly the same as a call to ships_kw
ships_kw (Parasite)Does exactly the same as a call to ships_kw
trading (Encyclopedia)Wait until a key is pressed and show the Encyclopedia screen
trading (Parasite)Wait until a key is pressed and show the Encyclopedia screen
write_card (Encyclopedia)Display a ship card in the encyclopedia
write_card (Parasite)Display a ship card in the encyclopedia

Equipment
---------

c (Docked)Contains an RTS
c (Parasite)Contains an RTS
eq (Docked)Subtract the price of equipment from the cash pot
eq (Parasite)Subtract the price of equipment from the cash pot
EQSHP (Docked)Show the Equip Ship screen (red key f3) or Buy Ship screen (CTRL-f3)
EQSHP (Parasite)Show the Equip Ship screen (red key f3) or Buy Ship screen (CTRL-f3)
err (Docked)Beep, pause and go to the docking bay (i.e. show the Status Mode screen)
err (Parasite)Beep, pause and go to the docking bay (i.e. show the Status Mode screen)
pres (Docked)Given an item number A with the item name in recursive token Y, show an error to say that the item is already present, refund the cost of the item, and then beep and exit to the docking bay (i.e. show the Status Mode screen)
pres (Parasite)Given an item number A with the item name in recursive token Y, show an error to say that the item is already present, refund the cost of the item, and then beep and exit to the docking bay (i.e. show the Status Mode screen)
pres+3 (Docked)Show the error to say that an item is already present, and process a refund, but do not free up a space in the hold
pres+3 (Parasite)Show the error to say that an item is already present, and process a refund, but do not free up a space in the hold
prx (Docked)Return the price of a piece of equipment
prx (Parasite)Return the price of a piece of equipment
prx-3 (Docked)Return the price of the item with number A - 1 c Contains an RTS
prx-3 (Parasite)Return the price of the item with number A - 1 c Contains an RTS
query_beep (Docked)Print the recursive token given in A followed by a question mark, then make a beep, pause and go to the docking bay (i.e. show the Status Mode screen)
query_beep (Parasite)Print the recursive token given in A followed by a question mark, then make a beep, pause and go to the docking bay (i.e. show the Status Mode screen)
qv (Docked)Print a menu of the four space views, for buying lasers
qv (Parasite)Print a menu of the four space views, for buying lasers
refund, Removed (Docked)Install a new laser, processing a refund if applicable
sell_jump (Docked)Show the Sell Equipment screen (CTRL-f2)
sell_jump (Parasite)Show the Sell Equipment screen (CTRL-f2)

Flight
------

DCS1 (Flight)Calculate the vector from the ideal docking position to the ship
DCS1 (Parasite)Calculate the vector from the ideal docking position to the ship
DENGY (Flight)Drain some energy from the energy banks
DENGY (Parasite)Drain some energy from the energy banks
DENGY, Removed (Docked)Drain some energy from the energy banks
DOCKIT (Flight)Apply docking manoeuvres to the ship in INWK
DOCKIT (Parasite)Apply docking manoeuvres to the ship in INWK
DOENTRY (Docked)Dock at the space station, show the ship hanger and work out any mission progression
DOENTRY (Parasite)Dock at the space station, show the ship hanger and work out any mission progression
ESCAPE (Flight)Launch our escape pod
ESCAPE (Parasite)Launch our escape pod
Ghy (Flight)Perform a galactic hyperspace jump
Ghy (Parasite)Perform a galactic hyperspace jump
Ghy, Removed (Docked)Perform a galactic hyperspace jump
hyp (Flight)Start the hyperspace process
hyp (Parasite)Start the hyperspace process
hyp, Removed (Docked)Start the hyperspace process
hyper_snap (Flight)Perform a hyperspace, but without using up any fuel
hyper_snap (Parasite)Perform a hyperspace, but without using up any fuel
icode_set (Docked)Reset a number of flight variables and workspaces and go to the docking bay (i.e. show the Status Mode screen)
LO2 (Flight)Contains an RTS
LO2 (Parasite)Contains an RTS
LOOK1 (Flight)Initialise the space view
LOOK1 (Parasite)Initialise the space view
MJP (Flight)Process a mis-jump into witchspace
MJP (Parasite)Process a mis-jump into witchspace
n_oops (Flight)Take some damage, taking our ship's shields into consideration
n_oops (Parasite)Take some damage, taking our ship's shields into consideration
n_shok (Flight)Contains an RTS
n_shok (Parasite)Contains an RTS
OOPS (Flight)Take some damage
OOPS (Parasite)Take some damage
OUCH (Flight)Potentially lose cargo or equipment following damage
OUCH (Parasite)Potentially lose cargo or equipment following damage
PU1 (Flight)Flip the coordinate axes for the four different views
PU1 (Parasite)Flip the coordinate axes for the four different views
RTS111 (Flight)Contains an RTS
RTS111 (Parasite)Contains an RTS
SESCP (Flight)Spawn an escape pod from the current (parent) ship
SESCP (Parasite)Spawn an escape pod from the current (parent) ship
SHD (Flight)Charge a shield and drain some energy from the energy banks
SHD (Parasite)Charge a shield and drain some energy from the energy banks
SHD, Removed (Docked)Charge a shield and drain some energy from the energy banks
SIGHT (Flight)Draw the laser crosshairs
SIGHT (Parasite)Draw the laser crosshairs
SIGHT, Removed (Docked)Draw the laser crosshairs
top_6a (Flight)Set bit 7 of the ship's NEWB flags to indicate that it has docked or been scooped
top_6a (Parasite)Set bit 7 of the ship's NEWB flags to indicate that it has docked or been scooped
TT110 (Docked)Launch from a station or show the front space view
TT110 (Flight)Launch from a station or show the front space view
TT110 (Parasite)Launch from a station or show the front space view
TT18 (Flight)Try to initiate a jump into hyperspace
TT18 (Parasite)Try to initiate a jump into hyperspace
TTX110, Removed (Docked)Set the current system to the nearest system and return to hyp
TTX110, Removed (Flight)Set the current system to the nearest system and return to hyp
TTX111 (Docked)Used to rejoin this routine from the call to TTX110
TTX111 (Flight)Used to rejoin this routine from the call to TTX110
TTX111 (Parasite)Used to rejoin this routine from the call to TTX110
WA1 (Flight)Make a long, low beep
WA1 (Parasite)Make a long, low beep
WARP (Flight)Perform an in-system jump
WARP (Parasite)Perform an in-system jump
wW (Flight)Start a hyperspace countdown
wW (Parasite)Start a hyperspace countdown
wW, Removed (Docked)Start a hyperspace countdown
zZ+1 (Docked)Contains an RTS
zZ+1 (Flight)Contains an RTS
zZ+1 (Parasite)Contains an RTS

Inventory
---------

NWDAVxx (Docked)Used to rejoin this routine from the call to NWDAV4
NWDAVxx (Parasite)Used to rejoin this routine from the call to NWDAV4
TT210 (Docked)Show a list of current cargo in our hold, optionally to sell
TT210 (Flight)Show a list of current cargo in our hold, optionally to sell
TT210 (Parasite)Show a list of current cargo in our hold, optionally to sell
TT213 (Docked)Show the Inventory screen (red key f9)
TT213 (Flight)Show the Inventory screen (red key f9)
TT213 (Parasite)Show the Inventory screen (red key f9)
TT214, Removed (Docked)Ask a question with a "Y/N?" prompt and return the response

Keyboard
--------

auton (Flight)Get the docking computer to "press" the flight keys to dock the ship
b_14 (Flight)Scan the Delta 14b joystick buttons
b_14 (I/O processor)Scan the Delta 14b joystick buttons
b_pressed (Flight)Store &FF in the Y-th byte of the key logger at KL, to indicate that key is being pressed
BAD (Flight)Work out how bad we are from the amount of contraband in our hold
BAD (Parasite)Work out how bad we are from the amount of contraband in our hold
check_keys (Parasite)Wait until a key is pressed, quitting the game if the game is paused and ESCAPE is pressed
chk_dirn (Parasite)Do not scan the keyboard, instead just set the movement variables based on the current state of the key logger
CTRL (Docked)Scan the keyboard to see if CTRL is currently pressed
CTRL (Encyclopedia)Scan the keyboard to see if CTRL is currently pressed
CTRL (Flight)Scan the keyboard to see if CTRL is currently pressed
CTRL (Parasite)Scan the keyboard to see if CTRL is currently pressed
DK4 (Docked)Scan for pause, configuration and secondary flight keys
DK4 (Encyclopedia)Scan for pause, configuration and secondary flight keys
DK4 (Flight)Scan for pause, configuration and secondary flight keys
DK4 (Parasite)Scan for pause, configuration and secondary flight keys
DK4_FLIGHT (Parasite)Scan for pause, configuration and secondary flight keys (flight version)
DKJ1 (Flight)Read joystick and flight controls
DKJ1 (Parasite)Read joystick and flight controls
DKJ1, Removed (Docked)Read joystick and flight controls
DKS1 (Flight)Scan the keyboard for a flight key
DKS1 (Parasite)Scan the keyboard or joystick for a flight key by sending a scan_y command to the I/O processor
DKS2 (Docked)Read the joystick position
DKS2 (Encyclopedia)Read the joystick position
DKS2 (Flight)Read the joystick position
DKS2 (Parasite)Read the joystick position
DKS2-1 (Docked)Contains an RTS
DKS2-1 (Encyclopedia)Contains an RTS
DKS2-1 (Flight)Contains an RTS
DKS2-1 (Parasite)Contains an RTS
DKS3 (Docked)Toggle a configuration setting and emit a beep
DKS3 (Encyclopedia)Toggle a configuration setting and emit a beep
DKS3 (Flight)Toggle a configuration setting and emit a beep
DKS3 (Parasite)Toggle a configuration setting and emit a beep
DKS4 (Docked)Scan the keyboard to see if a specific key is being pressed
DKS4 (Encyclopedia)Scan the keyboard to see if a specific key is being pressed
DKS4 (Flight)Scan the keyboard to see if a specific key is being pressed
DKS4 (I/O processor)Scan the keyboard to see if a specific key is being pressed
DKS4 (Parasite)Scan for a particular key press by sending a scan_xin command to the I/O processor
DOKEY (Docked)Scan for the joystick
DOKEY (Encyclopedia)Scan for the seven primary flight controls
DOKEY (Flight)Scan for the seven primary flight controls
DOKEY (Parasite)Scan for the seven primary flight controls
DOKEY_FLIGHT (Parasite)Scan for the seven primary flight controls (flight version)
FLKB (Docked)Flush the keyboard buffer
FLKB (Encyclopedia)Flush the keyboard buffer
FLKB (Parasite)Flush the keyboard buffer
FLKB, Removed (Flight)Flush the keyboard buffer
get_key (I/O processor)Implement the get_key command (wait for a key press)
KYTB (Flight)Contains an RTS
l_release (Parasite)If a key is currently being pressed, wait until it is released
out (Docked)Contains an RTS
out (Encyclopedia)Contains an RTS
out (Parasite)Contains an RTS
PAS1 (Docked)Display a rotating ship at space coordinates (0, 112, 256) and scan the keyboard
PAS1 (Parasite)Display a rotating ship at space coordinates (0, 112, 256) and scan the keyboard
PAUSE (Docked)Display a rotating ship, waiting until a key is pressed, then remove the ship from the screen
PAUSE (Parasite)Display a rotating ship, waiting until a key is pressed, then remove the ship from the screen
PAUSE2 (Docked)Wait until a key is pressed, ignoring any existing key press
PAUSE2 (Encyclopedia)Wait until a key is pressed, ignoring any existing key press
PAUSE2 (Parasite)Wait until a key is pressed, ignoring any existing key press
RDKEY (Docked)Scan the keyboard for key presses
RDKEY (Encyclopedia)Scan the keyboard for key presses
RDKEY (Flight)Scan the keyboard for key presses
RDKEY (I/O processor)Scan the keyboard for key presses
RDKEY (Parasite)Scan the keyboard for key presses by sending a scan_10in command to the I/O processor
scan_10in (I/O processor)Implement the scan_10in command (scan the keyboard)
scan_fire (I/O processor)Implement the scan_fire command (scan the joystick's fire button)
scan_fire (Parasite)Check whether the joystick's fire button is being pressed by sending a scan_fire command to the I/O processor
scan_xin (I/O processor)Implement the scan_xin command (scan the keyboard for a specific key press)
scan_y (I/O processor)Implement the scan_y command (scan for a specific flight key or Delta 14b button press)
T95 (Docked)Print the distance to the selected system
T95 (Encyclopedia)Print the distance to the selected system
T95 (Flight)Print the distance to the selected system TT107 Progress the countdown of the hyperspace counter
T95 (Parasite)Print the distance to the selected system TT107 Progress the countdown of the hyperspace counter
TT102 (Docked)Process function key, save key, hyperspace and chart key presses
TT102 (Encyclopedia)Process function key, save key, hyperspace and chart key presses
TT102 (Flight)Process function key, save key, hyperspace and chart key presses and update the hyperspace counter
TT102 (Parasite)Process function key, save key, hyperspace and chart key presses
TT107 (Flight)Progress the countdown of the hyperspace counter
TT107 (Parasite)Progress the countdown of the hyperspace counter
TT17 (Docked)Scan the keyboard for cursor key or joystick movement
TT17 (Encyclopedia)Scan the keyboard for cursor key or joystick movement
TT17 (Flight)Scan the keyboard for cursor key or joystick movement
TT17 (Parasite)Scan the keyboard for cursor key or joystick movement
TT217 (Docked)Scan the keyboard until a key is pressed
TT217 (Encyclopedia)Scan the keyboard until a key is pressed
TT217 (Parasite)Scan the keyboard until a key is pressed by sending a get_key command to the I/O processor
U% (Flight)Clear the key logger
U% (Parasite)Clear the key logger
write_fe4e (I/O processor)Implement the write_fe4e command (update the System VIA interrupt enable register)

Loader
------

BEGIN (Docked)Initialise the configuration variables and start the game
BEGIN (Parasite)Initialise the configuration variables and start the game
boot_in (Parasite)The entry point for the game
BRBR1 (Loader)Loader break handler: print a newline and the error message, and then hang the computer
do_BYTEV (Loader)The custom handler for OSBYTE calls in the BBC Master version
do_FILEV (Loader)The custom handler for OSFILE calls in the BBC Master version
do_FSCV (Loader)The custom handler for filing system calls in the BBC Master version
DOBEGIN (Docked)Initialise the configuration variables and start the game
DOENTRY (Encyclopedia)Initialise the encyclopedia and show the menu screen
DOENTRY (Flight)Load and run the docked code
DOENTRYS (Parasite)Dock at the space station, show the ship hanger and work out any mission progression
Elite loader (Part 1 of 3) (Loader)Set up the split screen mode, move code around, set up the sound envelopes and configure the system
Elite loader (Part 2 of 3) (Loader)Include binaries for recursive tokens, Missile blueprint and images
Elite loader (Part 3 of 3) (Loader)Include binaries for the loading screen images
encyclopedia (Docked)Load and run the encyclopedia code in 1.E
INBAY (Docked)Set the break handler and go to the docking bay without showing the tunnel or ship hanger, or checking mission progress
INBAY (Encyclopedia)Load and run the main docked code in 1.D
INBAY (Flight)Load and run the main docked code in 1.D
INBAY (Parasite)Restart the game upon death
launch (Encyclopedia)Load and run the main docked code in 1.D
LOAD (Loader)Load the main docked code, set up various vectors, run a checksum and start the game
LOADcode (Loader)Encrypted LOAD routine, bundled up in the loader so it can be moved to &0B00 to be run
LSHIPS (Flight)Load a new ship blueprints file
old_BYTEV (Loader)Call the default OSBYTE handler
restorews (Loader)Restore the filing system workspace
RSHIPS (Flight)Launch from the station, load a new set of ship blueprints and jump into the main game loop
RSHIPS (Parasite)Launch from the station, load a new set of ship blueprints and jump into the main game loop
savews (Loader)Save the filing system workspace in a safe place and replace it with the MOS character set
SCRAM (Docked)Set the save_lock variable and break handler
SCRAM (Parasite)Set the save_lock variable and break handler
scramble, Removed (Docked)Decrypt the main docked code between &1300 and &5FFF and the main game loop
scramble, Removed (Flight)Decrypt the main flight code between &1300 and &55FF and jump into the main game loop
set_vectors (Loader)Set the FILEV, FSCV and BYTEV vectors to point to our custom handlers
to_dd00 (Loader)BBC Master code for saving and restoring the MOS character set, bundled up in the loader so it can be moved to &DD00 to be run
TVT1code (Loader)Code block at &1100-&11E2 that remains resident in both docked and flight mode (palettes, screen mode routine and commander data)

Main loop
---------

FRCE (Docked)The entry point for the main game loop if we want to jump straight to a specific screen, by pretending to "press" a key, in which case A contains the internal key number of the key we want to "press"
FRCE (Encyclopedia)The entry point for the main game loop if we want to jump straight to a specific screen, by pretending to "press" a key, in which case A contains the internal key number of the key we want to "press"
FRCE (Flight)The entry point for the main game loop if we want to jump straight to a specific screen, by pretending to "press" a key, in which case A contains the internal key number of the key we want to "press"
FRCE (Parasite)The entry point for the main game loop if we want to jump straight to a specific screen, by pretending to "press" a key, in which case A contains the internal key number of the key we want to "press"
GOIN (Flight)We jump here from part 3 of the main flight loop if the docking computer is activated by pressing "C"
GOIN (Parasite)We jump here from part 3 of the main flight loop if the docking computer is activated by pressing "C"
hordes (Flight)Spawn a pack of ships, made up of ships from type A to type A + X, with the pack size normally being one to four ships, but rarely being up to eight ships
hordes (Parasite)Spawn a pack of ships, made up of ships from type A to type A + X, with the pack size normally being one to four ships, but rarely being up to eight ships
M% (Flight)The entry point for the main flight loop
M% (Parasite)The entry point for the main flight loop
Main flight loop (Part 1 of 16) (Flight)Seed the random number generator
Main flight loop (Part 2 of 16) (Flight)Calculate the alpha and beta angles from the current pitch and roll of our ship
Main flight loop (Part 3 of 16) (Flight)Scan for flight keys and process the results
Main flight loop (Part 4 of 16) (Flight)For each nearby ship: Copy the ship's data block from K% to the zero-page workspace at INWK
Main flight loop (Part 6 of 16) (Flight)For each nearby ship: Move the ship in space and copy the updated INWK data block back to K%
Main flight loop (Part 7 of 16) (Flight)For each nearby ship: Check whether we are docking, scooping or colliding with it
Main flight loop (Part 8 of 16) (Flight)For each nearby ship: Process us potentially scooping this item
Main flight loop (Part 9 of 16) (Flight)For each nearby ship: If it is a space station, check whether we are successfully docking with it
Main flight loop (Part 1 of 16) (Parasite)Seed the random number generator
Main flight loop (Part 2 of 16) (Parasite)Calculate the alpha and beta angles from the current pitch and roll of our ship
Main flight loop (Part 3 of 16) (Parasite)Scan for flight keys and process the results
Main flight loop (Part 4 of 16) (Parasite)For each nearby ship: Copy the ship's data block from K% to the zero-page workspace at INWK
Main flight loop (Part 6 of 16) (Parasite)For each nearby ship: Move the ship in space and copy the updated INWK data block back to K%
Main flight loop (Part 7 of 16) (Parasite)For each nearby ship: Check whether we are docking, scooping or colliding with it
Main flight loop (Part 8 of 16) (Parasite)For each nearby ship: Process us potentially scooping this item
Main flight loop (Part 9 of 16) (Parasite)For each nearby ship: If it is a space station, check whether we are successfully docking with it
Main flight loop (Part 5 of 16), Removed (Flight)For each nearby ship: If an energy bomb has been set off, potentially kill this ship
Main flight loop (Part 10 of 16) (Flight)For each nearby ship: Remove if scooped, or process collisions
Main flight loop (Part 10 of 16) (Parasite)For each nearby ship: Remove if scooped, or process collisions
Main flight loop (Part 11 of 16) (Flight)For each nearby ship: Process missile lock and firing our laser
Main flight loop (Part 11 of 16) (Parasite)For each nearby ship: Process missile lock and firing our laser
Main flight loop (Part 12 of 16) (Flight)For each nearby ship: Draw the ship, remove if killed, loop back
Main flight loop (Part 12 of 16) (Parasite)For each nearby ship: Draw the ship, remove if killed, loop back
Main flight loop (Part 13 of 16) (Flight)Charge shields and energy banks
Main flight loop (Part 13 of 16) (Parasite)Charge shields and energy banks
Main flight loop (Part 14 of 16) (Flight)Spawn a space station if we are close enough to the planet
Main flight loop (Part 14 of 16) (Parasite)Spawn a space station if we are close enough to the planet
Main flight loop (Part 15 of 16) (Flight)Perform altitude checks with the planet and sun and process fuel scooping if appropriate
Main flight loop (Part 15 of 16) (Parasite)Perform altitude checks with the planet and sun and process fuel scooping if appropriate
Main flight loop (Part 16 of 16) (Flight)Process laser pulsing, E.C.M. energy drain, call stardust routine
Main flight loop (Part 16 of 16) (Parasite)Process laser pulsing, E.C.M. energy drain, call stardust routine
Main game loop (Part 2 of 6) (Docked)Update the main loop counters
Main game loop (Part 5 of 6) (Docked)Cool down lasers, make calls to update the dashboard
Main game loop (Part 6 of 6) (Docked)Process non-flight key presses (red function keys, docked keys)
Main game loop (Part 2 of 6) (Encyclopedia)Update the main loop counters
Main game loop (Part 5 of 6) (Encyclopedia)Cool down lasers, make calls to update the dashboard
Main game loop (Part 6 of 6) (Encyclopedia)Process non-flight key presses (red function keys, docked keys)
Main game loop (Part 1 of 6) (Flight)Spawn a trader (a Cobra Mk III, Python, Boa or Anaconda)
Main game loop (Part 2 of 6) (Flight)Call the main flight loop, and potentially spawn a trader, an asteroid, or a cargo canister
Main game loop (Part 3 of 6) (Flight)Potentially spawn a cop, particularly if we've been bad
Main game loop (Part 4 of 6) (Flight)Potentially spawn a lone bounty hunter, a Thargoid, or up to four pirates
Main game loop (Part 5 of 6) (Flight)Cool down lasers, make calls to update the dashboard
Main game loop (Part 6 of 6) (Flight)Process non-flight key presses (red function keys, docked keys)
Main game loop (Part 2 of 6) (Parasite)Update the main loop counters
Main game loop (Part 5 of 6) (Parasite)Cool down lasers, make calls to update the dashboard
Main game loop (Part 6 of 6) (Parasite)Process non-flight key presses (red function keys, docked keys)
Main game loop for flight (Part 1 of 6) (Parasite)Spawn a trader (a Cobra Mk III, Python, Boa or Anaconda)
Main game loop for flight (Part 2 of 6) (Parasite)Update the main loop counters
Main game loop for flight (Part 3 of 6) (Parasite)Potentially spawn a cop, particularly if we've been bad
Main game loop for flight (Part 4 of 6) (Parasite)Potentially spawn a lone bounty hunter, a Thargoid, or up to four pirates
Main game loop for flight (Part 5 of 6) (Parasite)Cool down lasers, make calls to update the dashboard
Main game loop for flight (Part 6 of 6) (Parasite)Process non-flight key presses (red function keys, docked keys)
MAL1 (Flight)Marks the beginning of the ship analysis loop, so we can jump back here from part 12 of the main flight loop to work our way through each ship in the local bubble. We also jump back here when a ship is removed from the bubble, so we can continue processing from the next ship
MAL1 (Parasite)Marks the beginning of the ship analysis loop, so we can jump back here from part 12 of the main flight loop to work our way through each ship in the local bubble. We also jump back here when a ship is removed from the bubble, so we can continue processing from the next ship
me3 (Docked)Used by me2 to jump back into the main game loop after printing an in-flight message
me3 (Encyclopedia)Used by me2 to jump back into the main game loop after printing an in-flight message
me3 (Flight)Used by me2 to jump back into the main game loop after printing an in-flight message
me3 (Parasite)Used by me2 to jump back into the main game loop after printing an in-flight message
MLOOP (Docked)The entry point for the main game loop. This entry point comes after the call to the main flight loop and spawning routines, so it marks the start of the main game loop for when we are docked (as we don't need to call the main flight loop or spawning routines if we aren't in space)
MLOOP (Encyclopedia)The entry point for the main game loop. This entry point comes after the call to the main flight loop and spawning routines, so it marks the start of the main game loop for when we are docked (as we don't need to call the main flight loop or spawning routines if we aren't in space)
MLOOP (Flight)The entry point for the main game loop. This entry point comes after the call to the main flight loop and spawning routines, so it marks the start of the main game loop for when we are docked (as we don't need to call the main flight loop or spawning routines if we aren't in space)
MLOOP (Parasite)The entry point for the main game loop. This entry point comes after the call to the main flight loop and spawning routines, so it marks the start of the main game loop for when we are docked (as we don't need to call the main flight loop or spawning routines if we aren't in space)
TT100 (Docked)The entry point for the start of the main game loop, which calls the main flight loop and the moves into the spawning routine
TT100 (Encyclopedia)The entry point for the start of the main game loop, which calls the main flight loop and the moves into the spawning routine
TT100 (Flight)The entry point for the start of the main game loop, which calls the main flight loop and the moves into the spawning routine
TT100 (Parasite)The entry point for the start of the main game loop, which calls the main flight loop and the moves into the spawning routine

Market
------

BAY2 (Docked)Jump into the main loop at FRCE, setting the key "pressed" to red key f9 (so we show the Inventory screen)
BAY2 (Parasite)Jump into the main loop at FRCE, setting the key "pressed" to red key f9 (so we show the Inventory screen)
gnum (Docked)Get a number from the keyboard
gnum (Encyclopedia)Get a number from the keyboard
gnum (Parasite)Get a number from the keyboard
NWDAV4 (Docked)Print an "ITEM?" error, make a beep and rejoin the TT210 routine
NWDAV4 (Parasite)Print an "ITEM?" error, make a beep and rejoin the TT210 routine
stay_here (Docked)Pay a docking fee and refresh the system's market prices
stay_here (Parasite)Pay a docking fee and refresh the system's market prices
Tml (Docked)Calculate the sum of the following, returning the C flag according to whether this all fits into the hold:
Tml (Parasite)Calculate the sum of the following, returning the C flag according to whether this all fits into the hold:
tnpr (Docked)Work out if we have space for a specific amount of cargo
tnpr (Parasite)Work out if we have space for a specific amount of cargo
tnpr1 (Flight)Work out if we have space for one tonne of cargo
tnpr1 (Parasite)Work out if we have space for one tonne of cargo
tnpr1, Removed (Flight)Work out if we have space for one tonne of cargo
TT151 (Docked)Print the name, price and availability of a market item
TT151 (Flight)Print the name, price and availability of a market item
TT151 (Parasite)Print the name, price and availability of a market item
TT152 (Docked)Print the unit ("t", "kg" or "g") for a market item
TT152 (Flight)Print the unit ("t", "kg" or "g") for a market item
TT152 (Parasite)Print the unit ("t", "kg" or "g") for a market item
TT160 (Docked)Print "t" (for tonne) and a space
TT160 (Flight)Print "t" (for tonne) and a space
TT160 (Parasite)Print "t" (for tonne) and a space
TT161 (Docked)Print "kg" (for kilograms)
TT161 (Flight)Print "kg" (for kilograms)
TT161 (Parasite)Print "kg" (for kilograms)
TT163 (Docked)Print the headers for the table of market prices
TT163 (Flight)Print the headers for the table of market prices
TT163 (Parasite)Print the headers for the table of market prices
TT167 (Docked)Show the Market Price screen (red key f7)
TT167 (Flight)Show the Market Price screen (red key f7)
TT167 (Parasite)Show the Market Price screen (red key f7)
TT16a (Docked)Print "g" (for grams)
TT16a (Flight)Print "g" (for grams)
TT16a (Parasite)Print "g" (for grams)
TT208 (Docked)Show the Sell Cargo screen (red key f2) or Sell Equipment screen (CTRL-f2)
TT208 (Parasite)Show the Sell Cargo screen (red key f2) or Sell Equipment screen (CTRL-f2)
TT219 (Docked)Show the Buy Cargo screen (red key f1) or Special Cargo screen (CTRL-f1)
TT219 (Parasite)Show the Buy Cargo screen (red key f1) or Special Cargo screen (CTRL-f1)
var (Docked)Calculate QQ19+3 = economy * |economic_factor|
var (Flight)Calculate QQ19+3 = economy * |economic_factor|
var (Parasite)Calculate QQ19+3 = economy * |economic_factor|

Maths (Arithmetic)
------------------

ADD (Docked)Calculate (A X) = (A P) + (S R)
ADD (Encyclopedia)Calculate (A X) = (A P) + (S R)
ADD (Flight)Calculate (A X) = (A P) + (S R)
ADD (Parasite)Calculate (A X) = (A P) + (S R)
DV41 (Flight)Calculate (P R) = 256 * DELTA / A
DV41 (Parasite)Calculate (P R) = 256 * DELTA / A
DV41, Removed (Docked)Calculate (P R) = 256 * DELTA / A
DV42 (Flight)Calculate (P R) = 256 * DELTA / z_hi
DV42 (Parasite)Calculate (P R) = 256 * DELTA / z_hi
DV42, Removed (Docked)Calculate (P R) = 256 * DELTA / z_hi
DVID3B2 (Flight)Calculate K(3 2 1 0) = (A P+1 P) / (z_sign z_hi z_lo)
DVID3B2 (Parasite)Calculate K(3 2 1 0) = (A P+1 P) / (z_sign z_hi z_lo)
DVID3B2, Removed (Docked)Calculate K(3 2 1 0) = (A P+1 P) / (z_sign z_hi z_lo)
DVID4 (Docked)Calculate (P R) = 256 * A / Q
DVID4 (Flight)Calculate (P R) = 256 * A / Q
DVID4 (Parasite)Calculate (P R) = 256 * A / Q
DVIDT (Docked)Calculate (P+1 A) = (A P) / Q
DVIDT (Encyclopedia)Calculate (P+1 A) = (A P) / Q
DVIDT (Flight)Calculate (P+1 A) = (A P) / Q
DVIDT (Parasite)Calculate (P+1 A) = (A P) / Q
FMLTU (Docked)Calculate A = A * Q / 256
FMLTU (Encyclopedia)Calculate A = A * Q / 256
FMLTU (Flight)Calculate A = A * Q / 256
FMLTU (Parasite)Calculate A = A * Q / 256
FMLTU2 (Docked)Calculate A = K * sin(A)
FMLTU2 (Encyclopedia)Calculate A = K * sin(A)
FMLTU2 (Flight)Calculate A = K * sin(A)
FMLTU2 (Parasite)Calculate A = K * sin(A)
GC2 (Docked)Calculate (Y X) = (A P) * 4
GC2 (Flight)Calculate (Y X) = (A P) * 4
GC2 (Parasite)Calculate (Y X) = (A P) * 4
GCASH (Docked)Calculate (Y X) = P * Q * 4
GCASH (Parasite)Calculate (Y X) = P * Q * 4
GCASH, Removed (Flight)Calculate (Y X) = P * Q * 4
LCASH (Docked)Subtract an amount of cash from the cash pot
LCASH (Parasite)Subtract an amount of cash from the cash pot
LL120 (Docked)Calculate (Y X) = (S x1_lo) * XX12+2 or (S x1_lo) / XX12+2
LL120 (Encyclopedia)Calculate (Y X) = (S x1_lo) * XX12+2 or (S x1_lo) / XX12+2
LL120 (Flight)Calculate (Y X) = (S x1_lo) * XX12+2 or (S x1_lo) / XX12+2
LL120 (Parasite)Calculate (Y X) = (S x1_lo) * XX12+2 or (S x1_lo) / XX12+2
LL121 (Docked)Calculate (Y X) = (S R) / Q and set the sign to the opposite of the top byte on the stack
LL121 (Encyclopedia)Calculate (Y X) = (S R) / Q and set the sign to the opposite of the top byte on the stack
LL121 (Flight)Calculate (Y X) = (S R) / Q and set the sign to the opposite of the top byte on the stack
LL121 (Parasite)Calculate (Y X) = (S R) / Q and set the sign to the opposite of the top byte on the stack
LL122 (Docked)Calculate (Y X) = (S R) * Q and set the sign to the opposite of the top byte on the stack
LL122 (Encyclopedia)Calculate (Y X) = (S R) * Q and set the sign to the opposite of the top byte on the stack
LL122 (Flight)Calculate (Y X) = (S R) * Q and set the sign to the opposite of the top byte on the stack
LL122 (Parasite)Calculate (Y X) = (S R) * Q and set the sign to the opposite of the top byte on the stack
LL123 (Docked)Calculate (Y X) = (S R) / XX12+2 or (S R) * XX12+2
LL123 (Encyclopedia)Calculate (Y X) = (S R) / XX12+2 or (S R) * XX12+2
LL123 (Flight)Calculate (Y X) = (S R) / XX12+2 or (S R) * XX12+2
LL123 (Parasite)Calculate (Y X) = (S R) / XX12+2 or (S R) * XX12+2
LL128 (Docked)Contains an RTS
LL128 (Encyclopedia)Contains an RTS
LL128 (Flight)Contains an RTS
LL128 (Parasite)Contains an RTS
LL129 (Docked)Calculate Q = XX12+2, A = S EOR XX12+3 and (S R) = |S R|
LL129 (Encyclopedia)Calculate Q = XX12+2, A = S EOR XX12+3 and (S R) = |S R|
LL129 (Flight)Calculate Q = XX12+2, A = S EOR XX12+3 and (S R) = |S R|
LL129 (Parasite)Calculate Q = XX12+2, A = S EOR XX12+3 and (S R) = |S R|
LL133 (Docked)Negate (Y X) and return from the subroutine LL128 Contains an RTS
LL133 (Encyclopedia)Negate (Y X) and return from the subroutine LL128 Contains an RTS
LL133 (Flight)Negate (Y X) and return from the subroutine LL128 Contains an RTS
LL133 (Parasite)Negate (Y X) and return from the subroutine LL128 Contains an RTS
LL28 (Docked)Calculate R = 256 * A / Q
LL28 (Encyclopedia)Calculate R = 256 * A / Q
LL28 (Flight)Calculate R = 256 * A / Q
LL28 (Parasite)Calculate R = 256 * A / Q
LL28+4 (Docked)Skips the A >= Q check and always returns with C flag cleared, so this can be called if we know the division will work
LL28+4 (Encyclopedia)Skips the A >= Q check and always returns with C flag cleared, so this can be called if we know the division will work
LL28+4 (Flight)Skips the A >= Q check and always returns with C flag cleared, so this can be called if we know the division will work
LL28+4 (Parasite)Skips the A >= Q check and always returns with C flag cleared, so this can be called if we know the division will work
LL31 (Docked)Skips the A >= Q check and does not set the R counter, so this can be used for jumping straight into the division loop if R is already set to 254 and we know the division will work
LL31 (Encyclopedia)Skips the A >= Q check and does not set the R counter, so this can be used for jumping straight into the division loop if R is already set to 254 and we know the division will work
LL31 (Flight)Skips the A >= Q check and does not set the R counter, so this can be used for jumping straight into the division loop if R is already set to 254 and we know the division will work
LL31 (Parasite)Skips the A >= Q check and does not set the R counter, so this can be used for jumping straight into the division loop if R is already set to 254 and we know the division will work
LL38 (Docked)Calculate (S A) = (S R) + (A Q)
LL38 (Encyclopedia)Calculate (S A) = (S R) + (A Q)
LL38 (Flight)Calculate (S A) = (S R) + (A Q)
LL38 (Parasite)Calculate (S A) = (S R) + (A Q)
LL5 (Docked)Calculate Q = SQRT(R Q)
LL5 (Encyclopedia)Calculate Q = SQRT(R Q)
LL5 (Flight)Calculate Q = SQRT(R Q)
LL5 (Parasite)Calculate Q = SQRT(R Q)
LL61 (Docked)Calculate (U R) = 256 * A / Q
LL61 (Encyclopedia)Calculate (U R) = 256 * A / Q
LL61 (Flight)Calculate (U R) = 256 * A / Q
LL61 (Parasite)Calculate (U R) = 256 * A / Q
LL62 (Docked)Calculate 128 - (U R)
LL62 (Encyclopedia)Calculate 128 - (U R)
LL62 (Flight)Calculate 128 - (U R)
LL62 (Parasite)Calculate 128 - (U R)
MAD (Docked)Calculate (A X) = Q * A + (S R)
MAD (Encyclopedia)Calculate (A X) = Q * A + (S R)
MAD (Flight)Calculate (A X) = Q * A + (S R)
MAD (Parasite)Calculate (A X) = Q * A + (S R)
MAS3 (Flight)Calculate A = x_hi^2 + y_hi^2 + z_hi^2 in the K% block
MAS3 (Parasite)Calculate A = x_hi^2 + y_hi^2 + z_hi^2 in the K% block
MCASH (Docked)Add an amount of cash to the cash pot
MCASH (Flight)Add an amount of cash to the cash pot
MCASH (Parasite)Add an amount of cash to the cash pot
MLS1 (Flight)Calculate (A P) = ALP1 * A
MLS1 (Parasite)Calculate (A P) = ALP1 * A
MLS2 (Flight)Calculate (S R) = XX(1 0) and (A P) = A * ALP1
MLS2 (Parasite)Calculate (S R) = XX(1 0) and (A P) = A * ALP1
MLS2, Removed (Docked)Calculate (S R) = XX(1 0) and (A P) = A * ALP1
MLTU2 (Flight)Calculate (A P+1 P) = (A ~P) * Q
MLTU2 (Parasite)Calculate (A P+1 P) = (A ~P) * Q
MLTU2, Removed (Docked)Calculate (A P+1 P) = (A ~P) * Q
MLTU2-2 (Docked)Set Q to X, so this calculates (A P+1 P) = (A ~P) * X
MLTU2-2 (Flight)Set Q to X, so this calculates (A P+1 P) = (A ~P) * X
MLTU2-2 (Parasite)Set Q to X, so this calculates (A P+1 P) = (A ~P) * X
MLU1 (Flight)Calculate Y1 = y_hi and (A P) = |y_hi| * Q for Y-th stardust
MLU1 (Parasite)Calculate Y1 = y_hi and (A P) = |y_hi| * Q for Y-th stardust
MLU1, Removed (Docked)Calculate Y1 = y_hi and (A P) = |y_hi| * Q for Y-th stardust
MLU2 (Flight)Calculate (A P) = |A| * Q
MLU2 (Parasite)Calculate (A P) = |A| * Q
MLU2, Removed (Docked)Calculate (A P) = |A| * Q
MU1 (Docked)Copy X into P and A, and clear the C flag
MU1 (Encyclopedia)Copy X into P and A, and clear the C flag
MU1 (Flight)Copy X into P and A, and clear the C flag
MU1 (Parasite)Copy X into P and A, and clear the C flag
MU11 (Docked)Calculate (A P) = P * X
MU11 (Encyclopedia)Calculate (A P) = P * X
MU11 (Flight)Calculate (A P) = P * X
MU11 (Parasite)Calculate (A P) = P * X
MU5 (Flight)Set K(3 2 1 0) = (A A A A) and clear the C flGag
MU5 (Parasite)Set K(3 2 1 0) = (A A A A) and clear the C flGag
MU5, Removed (Docked)Set K(3 2 1 0) = (A A A A) and clear the C flGag
MU6 (Flight)Set P(1 0) = (A A)
MU6 (Parasite)Set P(1 0) = (A A)
MU6, Removed (Docked)Set P(1 0) = (A A)
MULT1 (Docked)Calculate (A P) = Q * A
MULT1 (Encyclopedia)Calculate (A P) = Q * A
MULT1 (Flight)Calculate (A P) = Q * A
MULT1 (Parasite)Calculate (A P) = Q * A
MULT12 (Docked)Calculate (S R) = Q * A
MULT12 (Encyclopedia)Calculate (S R) = Q * A
MULT12 (Flight)Calculate (S R) = Q * A
MULT12 (Parasite)Calculate (S R) = Q * A
MULT3 (Flight)Calculate K(3 2 1 0) = (A P+1 P) * Q
MULT3 (Parasite)Calculate K(3 2 1 0) = (A P+1 P) * Q
MULTS-2 (Flight)Calculate (A P) = X * A
MULTS-2 (Parasite)Calculate (A P) = X * A
MULTU (Docked)Calculate (A P) = P * Q
MULTU (Encyclopedia)Calculate (A P) = P * Q
MULTU (Flight)Calculate (A P) = P * Q
MULTU (Parasite)Calculate (A P) = P * Q
MUT1 (Flight)Calculate R = XX and (A P) = Q * A
MUT1 (Parasite)Calculate R = XX and (A P) = Q * A
MUT1, Removed (Docked)Calculate R = XX and (A P) = Q * A
MUT2 (Flight)Calculate (S R) = XX(1 0) and (A P) = Q * A
MUT2 (Parasite)Calculate (S R) = XX(1 0) and (A P) = Q * A
MUT2, Removed (Docked)Calculate (S R) = XX(1 0) and (A P) = Q * A
MUT3, Removed (Docked)Unused routine that does the same as MUT2
MUT3, Removed (Flight)Unused routine that does the same as MUT2
n_store (Flight)Set K(3 2 1) = (A A A) and clear the C flag
n_store (Parasite)Set K(3 2 1) = (A A A) and clear the C flag
PIX1 (Flight)Calculate (YY+1 SYL+Y) = (A P) + (S R) and draw stardust particle
PIX1 (Parasite)Calculate (YY+1 SYL+Y) = (A P) + (S R) and draw stardust particle
PIX1, Removed (Docked)Calculate (YY+1 SYL+Y) = (A P) + (S R) and draw stardust particle
price_xy (Docked)Set (Y X) = (A P)
price_xy (Flight)Set (Y X) = (A P)
price_xy (Parasite)Set (Y X) = (A P)
ROOT (Loader)Calculate ZP = SQRT(ZP(1 0))
SPS2 (Flight)Calculate (Y X) = A / 10
SPS2 (Parasite)Calculate (Y X) = A / 10
SPS2, Moved (Flight)Calculate (Y X) = A / 10
SQUA (Docked)Clear bit 7 of A and calculate (A P) = A * A
SQUA (Encyclopedia)Clear bit 7 of A and calculate (A P) = A * A
SQUA (Flight)Clear bit 7 of A and calculate (A P) = A * A
SQUA (Parasite)Clear bit 7 of A and calculate (A P) = A * A
SQUA2 (Docked)Calculate (A P) = A * A
SQUA2 (Encyclopedia)Calculate (A P) = A * A
SQUA2 (Flight)Calculate (A P) = A * A
SQUA2 (Loader)Calculate (A P) = A * A
SQUA2 (Parasite)Calculate (A P) = A * A
TAS1 (Flight)Calculate K3 = (x_sign x_hi x_lo) - V(1 0)
TAS1 (Parasite)Calculate K3 = (x_sign x_hi x_lo) - V(1 0)
TIS1 (Docked)Calculate (A ?) = (-X * A + (S R)) / 96
TIS1 (Encyclopedia)Calculate (A ?) = (-X * A + (S R)) / 96
TIS1 (Flight)Calculate (A ?) = (-X * A + (S R)) / 96
TIS1 (Parasite)Calculate (A ?) = (-X * A + (S R)) / 96
TIS2 (Docked)Calculate A = A / Q
TIS2 (Encyclopedia)Calculate A = A / Q
TIS2 (Flight)Calculate A = A / Q
TIS2 (Parasite)Calculate A = A / Q
TIS3 (Docked)Calculate -(nosev_1 * roofv_1 + nosev_2 * roofv_2) / nosev_3
TIS3 (Encyclopedia)Calculate -(nosev_1 * roofv_1 + nosev_2 * roofv_2) / nosev_3
TIS3 (Flight)Calculate -(nosev_1 * roofv_1 + nosev_2 * roofv_2) / nosev_3
TIS3 (Parasite)Calculate -(nosev_1 * roofv_1 + nosev_2 * roofv_2) / nosev_3
TT113 (Docked)Contains an RTS
TT113 (Flight)Contains an RTS
TT113 (Parasite)Contains an RTS
Unused duplicate of MULTU (Flight)Unused duplicate of the MULTU routine
Unused duplicate of MULTU (Parasite)Unused duplicate of the MULTU routine
Unused duplicate of MULTU, Removed (Docked)Unused duplicate of the MULTU routine
VCSU1 (Flight)Calculate vector K3(8 0) = [x y z] - coordinates of the sun or space station
VCSU1 (Parasite)Calculate vector K3(8 0) = [x y z] - coordinates of the sun or space station
VCSUB (Flight)Calculate vector K3(8 0) = [x y z] - coordinates in (A V)
VCSUB (Parasite)Calculate vector K3(8 0) = [x y z] - coordinates in (A V)

Maths (Geometry)
----------------

ARCTAN (Flight)Calculate A = arctan(P / Q)
ARCTAN (Parasite)Calculate A = arctan(P / Q)
FAROF (Flight)Compare x_hi, y_hi and z_hi with 224
FAROF (Parasite)Compare x_hi, y_hi and z_hi with 224
FAROF2 (Flight)Compare x_hi, y_hi and z_hi with A
FAROF2 (Parasite)Compare x_hi, y_hi and z_hi with A
LL51 (Docked)Calculate the dot product of XX15 and XX16
LL51 (Encyclopedia)Calculate the dot product of XX15 and XX16
LL51 (Flight)Calculate the dot product of XX15 and XX16
LL51 (Parasite)Calculate the dot product of XX15 and XX16
m (Flight)Do not include A in the calculation
m (Parasite)Do not include A in the calculation
MA9 (Flight)Contains an RTS
MA9 (Parasite)Contains an RTS
MAS1 (Flight)Add an orientation vector coordinate to an INWK coordinate
MAS1 (Parasite)Add an orientation vector coordinate to an INWK coordinate
MAS2 (Flight)Calculate a cap on the maximum distance to the planet or sun
MAS2 (Parasite)Calculate a cap on the maximum distance to the planet or sun
MAS4 (Flight)Calculate a cap on the maximum distance to a ship
MAS4 (Parasite)Calculate a cap on the maximum distance to a ship
NO1 (Docked)Contains an RTS
NO1 (Encyclopedia)Contains an RTS
NO1 (Flight)Contains an RTS
NO1 (Parasite)Contains an RTS
NORM (Docked)Normalise the three-coordinate vector in XX15
NORM (Encyclopedia)Normalise the three-coordinate vector in XX15
NORM (Flight)Normalise the three-coordinate vector in XX15
NORM (Parasite)Normalise the three-coordinate vector in XX15
SPS1 (Flight)Calculate the vector to the planet, sun or station and store it in XX15
SPS1 (Parasite)Calculate the vector to the planet, sun or station and store it in XX15
SPS1+1 (Docked)A BRK instruction
SPS1+1 (Flight)A BRK instruction
SPS1+1 (Parasite)A BRK instruction
SPS1, Removed (Docked)Calculate the vector to the planet, sun or station and store it in XX15
SPS3 (Flight)Copy a space coordinate from the K% block into K3
SPS3 (Parasite)Copy a space coordinate from the K% block into K3
SPS3, Removed (Docked)Copy a space coordinate from the K% block into K3
SPS4, Removed (Flight)Calculate the vector to the space station
TA2 (Docked)Calculate the length of the vector in XX15 (ignoring the low coordinates), returning it in Q
TA2 (Flight)Calculate the length of the vector in XX15 (ignoring the low coordinates), returning it in Q
TA2 (Parasite)Calculate the length of the vector in XX15 (ignoring the low coordinates), returning it in Q
TAS2 (Flight)Normalise the three-coordinate vector in K3
TAS2 (Parasite)Normalise the three-coordinate vector in K3
TAS2, Removed (Docked)Normalise the three-coordinate vector in K3
TAS3 (Flight)Calculate the dot product of XX15 and an orientation vector
TAS3 (Parasite)Calculate the dot product of XX15 and an orientation vector
TAS3, Removed (Docked)Calculate the dot product of XX15 and an orientation vector
TAS3-2 (Docked)Calculate nosev . XX15
TAS3-2 (Flight)Calculate nosev . XX15
TAS3-2 (Parasite)Calculate nosev . XX15
TAS4 (Flight)Calculate the dot product of XX15 and one of the space station's orientation vectors
TAS4 (Parasite)Calculate the dot product of XX15 and one of the space station's orientation vectors
TAS6 (Flight)Negate the vector in XX15 so it points in the opposite direction
TAS6 (Parasite)Negate the vector in XX15 so it points in the opposite direction
TIDY (Docked)Orthonormalise the orientation vectors for a ship
TIDY (Encyclopedia)Orthonormalise the orientation vectors for a ship
TIDY (Flight)Orthonormalise the orientation vectors for a ship
TIDY (Parasite)Orthonormalise the orientation vectors for a ship

Missions
--------

BRIEF (Docked)Start mission 1 and show the mission briefing
BRIEF (Parasite)Start mission 1 and show the mission briefing
BRIEF2 (Docked)Start mission 2
BRIEF2 (Parasite)Start mission 2
BRIEF3 (Docked)Receive the briefing and plans for mission 2
BRIEF3 (Parasite)Receive the briefing and plans for mission 2
BRIS (Docked)Clear the screen, display "INCOMING MESSAGE" and wait for 2 seconds
BRIS (Parasite)Clear the screen, display "INCOMING MESSAGE" and wait for 2 seconds
BRP (Docked)Print an extended token and show the Status Mode screen
BRP (Parasite)Print an extended token and show the Status Mode screen
BRPS (Docked)Print the extended token in A, show the Status Mode screen and return from the subroutine
BRPS (Parasite)Print the extended token in A, show the Status Mode screen and return from the subroutine
cour_buy (Docked)Show the Special Cargo screen (CTRL-f1)
cour_buy (Parasite)Show the Special Cargo screen (CTRL-f1)
cour_count (Docked)Generate a single special cargo mission and display its menu item
cour_count (Parasite)Generate a single special cargo mission and display its menu item
cour_dock (Docked)Update the current special cargo delivery mission on docking
cour_dock (Parasite)Update the current special cargo delivery mission on docking
DEBRIEF (Docked)Finish mission 1
DEBRIEF (Parasite)Finish mission 1
DEBRIEF2 (Docked)Finish mission 2
DEBRIEF2 (Parasite)Finish mission 2
THERE (Flight)Check whether we are in the Constrictor's system in mission 1
THERE (Parasite)Check whether we are in the Constrictor's system in mission 1

Moving
------

MV40 (Flight)Rotate the planet or sun's location in space by the amount of pitch and roll of our ship
MV40 (Parasite)Rotate the planet or sun's location in space by the amount of pitch and roll of our ship
MV45 (Flight)Rejoin the MVEIT routine after the rotation, tactics and scanner code
MV45 (Parasite)Rejoin the MVEIT routine after the rotation, tactics and scanner code
MVEIT (Part 1 of 9) (Docked)Move current ship: Tidy the orientation vectors
MVEIT (Part 7 of 9) (Docked)Move current ship: Rotate ship's orientation vectors by pitch/roll
MVEIT (Part 8 of 9) (Docked)Move current ship: Rotate ship about itself by its own pitch/roll
MVEIT (Part 9 of 9) (Docked)Return from the subroutine (the scanner is not used when docked)
MVEIT (Part 1 of 9) (Encyclopedia)Move current ship: Tidy the orientation vectors
MVEIT (Part 7 of 9) (Encyclopedia)Move current ship: Rotate ship's orientation vectors by pitch/roll
MVEIT (Part 8 of 9) (Encyclopedia)Move current ship: Rotate ship about itself by its own pitch/roll
MVEIT (Part 9 of 9) (Encyclopedia)Move current ship: Redraw on scanner, if it hasn't been destroyed
MVEIT (Part 1 of 9) (Flight)Move current ship: Tidy the orientation vectors
MVEIT (Part 2 of 9) (Flight)Move current ship: Call tactics routine, remove ship from scanner
MVEIT (Part 3 of 9) (Flight)Move current ship: Move ship forward according to its speed
MVEIT (Part 4 of 9) (Flight)Move current ship: Apply acceleration to ship's speed as a one-off
MVEIT (Part 5 of 9) (Flight)Move current ship: Rotate ship's location by our pitch and roll
MVEIT (Part 6 of 9) (Flight)Move current ship: Move the ship in space according to our speed
MVEIT (Part 7 of 9) (Flight)Move current ship: Rotate ship's orientation vectors by pitch/roll
MVEIT (Part 8 of 9) (Flight)Move current ship: Rotate ship about itself by its own pitch/roll
MVEIT (Part 9 of 9) (Flight)Move current ship: Redraw on scanner, if it hasn't been destroyed
MVEIT (Part 1 of 9) (Parasite)Move current ship: Tidy the orientation vectors
MVEIT (Part 7 of 9) (Parasite)Move current ship: Rotate ship's orientation vectors by pitch/roll
MVEIT (Part 8 of 9) (Parasite)Move current ship: Rotate ship about itself by its own pitch/roll
MVEIT (Part 9 of 9) (Parasite)Move current ship: Redraw on scanner, if it hasn't been destroyed
MVEIT_FLIGHT (Part 1 of 6) (Parasite)Move current ship (flight version)
MVEIT_FLIGHT (Part 2 of 6) (Parasite)Move current ship: Call tactics routine, remove ship from scanner
MVEIT_FLIGHT (Part 3 of 6) (Parasite)Move current ship: Move ship forward according to its speed
MVEIT_FLIGHT (Part 4 of 6) (Parasite)Move current ship: Apply acceleration to ship's speed as a one-off
MVEIT_FLIGHT (Part 5 of 6) (Parasite)Move current ship: Rotate ship's location by our pitch and roll
MVEIT_FLIGHT (Part 6 of 6) (Parasite)Move current ship: Move the ship in space according to our speed
MVS4 (Docked)Apply pitch and roll to an orientation vector
MVS4 (Encyclopedia)Apply pitch and roll to an orientation vector
MVS4 (Flight)Apply pitch and roll to an orientation vector
MVS4 (Parasite)Apply pitch and roll to an orientation vector
MVS5 (Docked)Apply a 3.6 degree pitch or roll to an orientation vector
MVS5 (Encyclopedia)Apply a 3.6 degree pitch or roll to an orientation vector
MVS5 (Flight)Apply a 3.6 degree pitch or roll to an orientation vector
MVS5 (Parasite)Apply a 3.6 degree pitch or roll to an orientation vector
MVT1 (Flight)Calculate (x_sign x_hi x_lo) = (x_sign x_hi x_lo) + (A R)
MVT1 (Parasite)Calculate (x_sign x_hi x_lo) = (x_sign x_hi x_lo) + (A R)
MVT1, Removed (Docked)Calculate (x_sign x_hi x_lo) = (x_sign x_hi x_lo) + (A R)
MVT1-2 (Docked)Clear bits 0-6 of A before entering MVT1
MVT1-2 (Flight)Clear bits 0-6 of A before entering MVT1
MVT1-2 (Parasite)Clear bits 0-6 of A before entering MVT1
MVT3 (Flight)Calculate K(3 2 1) = (x_sign x_hi x_lo) + K(3 2 1)
MVT3 (Parasite)Calculate K(3 2 1) = (x_sign x_hi x_lo) + K(3 2 1)
MVT3, Removed (Docked)Calculate K(3 2 1) = (x_sign x_hi x_lo) + K(3 2 1)
MVT6 (Flight)Calculate (A P+2 P+1) = (x_sign x_hi x_lo) + (A P+2 P+1)
MVT6 (Parasite)Calculate (A P+2 P+1) = (x_sign x_hi x_lo) + (A P+2 P+1)
MVT6, Removed (Docked)Calculate (A P+2 P+1) = (x_sign x_hi x_lo) + (A P+2 P+1)
SFS2 (Flight)Move a ship in space along one of the coordinate axes
SFS2 (Parasite)Move a ship in space along one of the coordinate axes

Save and load
-------------

BRKBK (Docked)Set the standard BRKV handler for the game
BRKBK (Encyclopedia)Set the standard BRKV handler for the game
BRKBK (Parasite)Set the standard BRKV handler for the game
CAT (Docked)Catalogue a disc, wait for a key press and display the disc access menu
CAT (Parasite)Catalogue a disc, wait for a key press and display the disc access menu
CATS (Docked)Ask for a disc drive number and print a catalogue of that drive
CATS (Parasite)Ask for a disc drive number and print a catalogue of that drive
CHECK (Docked)Calculate the checksum for the last saved commander data block
CHECK (Parasite)Calculate the checksum for the last saved commander data block
confirm (Docked)Print "ARE YOU SURE?" and wait for a response
confirm (Parasite)Print "ARE YOU SURE?" and wait for a response
DELT (Docked)Catalogue a disc, ask for a filename to delete, and delete the file
DELT (Parasite)Catalogue a disc, ask for a filename to delete, and delete the file
DELT-1 (Docked)Contains an RTS
DELT-1 (Parasite)Contains an RTS
GTDRV (Docked)Get an ASCII disc drive drive number from the keyboard
GTDRV (Parasite)Get an ASCII disc drive drive number from the keyboard
GTNMEW (Docked)Fetch the name of a commander file to save or load
GTNMEW (Parasite)Fetch the name of a commander file to save or load
LOD (Docked)Load a commander file
LOD (Parasite)Load a commander file
MEBRK (Docked)The BRKV handler for disc access operations
MEBRK (Parasite)The BRKV handler for disc access operations
QUS1 (Docked)Save or load the commander file
QUS1 (Parasite)Save or load the commander file
retry (Docked)Scan the keyboard until a key is pressed and display the disc access menu
retry (Parasite)Scan the keyboard until a key is pressed and display the disc access menu
SVE (Docked)Save the commander file
SVE (Parasite)Save the commander file
TR1 (Docked)Copy the last saved commander's name from NA% to INWK
TR1 (Parasite)Copy the last saved commander's name from NA% to INWK
TRNME (Docked)Copy the last saved commander's name from INWK to NA%
TRNME (Parasite)Copy the last saved commander's name from INWK to NA%

Screen mode
-----------

DET1 (Flight)Show or hide the dashboard (for when we die)
DET1 (I/O processor)Show or hide the dashboard (for when we die)
DET1 (Parasite)Show or hide the dashboard (for when we die) by sending a write_crtc command to the I/O processor
DET1, Removed (Docked)Show or hide the dashboard (for when we die)
IRQ1 (Loader)The main screen-mode interrupt handler (IRQ1V points here)
sync_in (I/O processor)Implement the sync_in command (wait for the vertical sync)
WSCAN (Docked)Wait for the vertical sync
WSCAN (Encyclopedia)Wait for the vertical sync
WSCAN (Flight)Wait for the vertical sync
WSCAN (I/O processor)Wait for the vertical sync
WSCAN (Parasite)Wait for the vertical sync by sending a sync_in command to the I/O processor

Ship hanger
-----------

HA1 (Docked)Contains an RTS
HA1 (I/O processor)Contains an RTS
HA2 (I/O processor)Implement the picture_v command (draw vertical lines for the ship hanger background)
HA3 (Docked)Contains an RTS
HA3 (I/O processor)Contains an RTS
HALL (Docked)Draw the ships in the ship hanger, then draw the hanger
HALL (Parasite)Draw the ships in the ship hanger, then draw the hanger
HANGER (Docked)Display the ship hanger
HANGER (I/O processor)Implement the picture_h command (draw horizontal lines for the ship hanger floor)
HANGER (Parasite)Display the ship hanger by sending picture_h and picture_v commands to the I/O processor
HAS1 (Docked)Draw a ship in the ship hanger
HAS1 (Parasite)Draw a ship in the ship hanger
HAS2 (Docked)Draw a hanger background line from left to right
HAS2 (I/O processor)Draw a hanger background line from left to right
HAS3 (Docked)Draw a hanger background line from right to left
HAS3 (I/O processor)Draw a hanger background line from right to left
UNWISE (Docked)Switch the main line-drawing routine between EOR and OR logic
UNWISE (I/O processor)Switch the main line-drawing routine between EOR and OR logic
UNWISE (Parasite)Switch the main line-drawing routine between EOR and OR logic by sending a draw_mode command to the I/O processor

Sound
-----

BEEP (Docked)Make a short, high beep
BEEP (Encyclopedia)Make a short, high beep
BEEP (Flight)Make a short, high beep
BEEP (Parasite)Make a short, high beep
BELL (Docked)Make a standard system beep
BELL (Encyclopedia)Make a standard system beep
BELL (Flight)Make a standard system beep
BELL (Parasite)Make a standard system beep
ECMOF (Docked)Switch off the E.C.M.
ECMOF (Encyclopedia)Switch off the E.C.M.
ECMOF (Flight)Switch off the E.C.M.
ECMOF (Parasite)Switch off the E.C.M.
EXNO (Flight)Make the sound of a laser strike or ship explosion
EXNO (Parasite)Make the sound of a laser strike or ship explosion
EXNO, Removed (Docked)Make the sound of a laser strike or ship explosion
EXNO-2 (Docked)Set X = 7 and fall through into EXNO to make the sound of a ship exploding
EXNO-2 (Flight)Set X = 7 and fall through into EXNO to make the sound of a ship exploding
EXNO-2 (Parasite)Set X = 7 and fall through into EXNO to make the sound of a ship exploding
EXNO2 (Flight)Process us making a kill
EXNO2 (Parasite)Process us making a kill
EXNO2, Removed (Docked)Process us making a kill
EXNO3 (Flight)Make an explosion sound
EXNO3 (Parasite)Make an explosion sound
EXNO3, Removed (Docked)Make an explosion sound
n_sound10 (Flight)Make the first part of the death sound, or the second part of the explosion sound
NO3 (Docked)Make a sound from a prepared sound block
NO3 (Encyclopedia)Make a sound from a prepared sound block
NO3 (Flight)Make a sound from a prepared sound block
NO3 (Parasite)Make a sound from a prepared sound block
NOISE (Docked)Make the sound whose number is in A
NOISE (Encyclopedia)Make the sound whose number is in A
NOISE (Flight)Make the sound whose number is in A
NOISE (Parasite)Make the sound whose number is in A
NOS1 (Docked)Prepare a sound block
NOS1 (Encyclopedia)Prepare a sound block
NOS1 (Flight)Prepare a sound block
NOS1 (Parasite)Prepare a sound block
sound_10 (Parasite)Make the first part of the death sound, or the second part of the explosion sound

Stardust
--------

FLIP (Flight)Reflect the stardust particles in the screen diagonal
FLIP (Parasite)Reflect the stardust particles in the screen diagonal
FLIP, Removed (Docked)Reflect the stardust particles in the screen diagonal
nWq (Flight)Create a random cloud of stardust
nWq (Parasite)Create a random cloud of stardust
NWSTARS (Flight)Initialise the stardust field
NWSTARS (Parasite)Initialise the stardust field
STARS (Flight)The main routine for processing the stardust
STARS (Parasite)The main routine for processing the stardust
STARS1 (Flight)Process the stardust for the front view
STARS1 (Parasite)Process the stardust for the front view
STARS2 (Flight)Process the stardust for the left or right view
STARS2 (Parasite)Process the stardust for the left or right view
STARS6 (Flight)Process the stardust for the rear view
STARS6 (Parasite)Process the stardust for the rear view

Start and end
-------------

BR1 (Encyclopedia)Start or restart the game
BR1 (Part 1 of 2) (Docked)Start or restart the game
BR1 (Part 2 of 2) (Docked)Show the "Load New Commander (Y/N)?" screen and start the game
BR1 (Part 1 of 2) (Parasite)Start or restart the game
BR1 (Part 2 of 2) (Parasite)Show the "Load New Commander (Y/N)?" screen and start the game
DEATH (Flight)Display the death screen
DEATH (Parasite)Display the death screen
DEATH2 (Docked)Reset most of the game and restart from the title screen
DEATH2 (Encyclopedia)Reset most of the game and restart from the title screen
DEATH2 (Flight)Reset most of the game and restart from the title screen
DEATH2 (Parasite)Reset most of the game and restart from the title screen
DFAULT (Docked)Reset the current commander data block to the last saved commander
DFAULT (Parasite)Reset the current commander data block to the last saved commander
escape (Encyclopedia)Load the main docked code so that it shows the docking tunnel
RES2 (Docked)Reset a number of flight variables and workspaces
RES2 (Encyclopedia)Reset a number of flight variables and workspaces
RES2 (Flight)Reset a number of flight variables and workspaces
RES2 (Parasite)Reset a number of flight variables and workspaces
RESET (Docked)Reset most variables
RESET (Flight)Reset most variables
RESET (Parasite)Reset most variables
TITLE (Docked)Display a title screen with a rotating ship and prompt
TITLE (Parasite)Display a title screen with a rotating ship and prompt
TT170 (Docked)Main entry point for the Elite game code

Status
------

BAD, Removed (Docked)Calculate how bad we have been
BAD, Removed (Flight)Calculate how bad we have been
BAY (Docked)Go to the docking bay (i.e. show the Status Mode screen)
BAY (Encyclopedia)Go to the docking bay (i.e. show the Encyclopedia screen)
BAY (Parasite)Go to the docking bay (i.e. show the Status Mode screen)
sell_equip (Docked)Show the Sell Equipment screen, i.e. show a "Sell(Y/N)?" prompt as we print each item of equipment
sell_equip (Flight)Show the Sell Equipment screen, i.e. show a "Sell(Y/N)?" prompt as we print each item of equipment
sell_equip (Parasite)Show the Sell Equipment screen, i.e. show a "Sell(Y/N)?" prompt as we print each item of equipment
STATUS (Docked)Show the Status Mode screen (red key f8)
STATUS (Flight)Show the Status Mode screen (red key f8)
STATUS (Parasite)Show the Status Mode screen (red key f8)

Tactics
-------

anger_8c (Flight)Make the current ship angry
anger_8c (Parasite)Make the current ship angry
ANGRY (Flight)Make a ship hostile
ANGRY (Parasite)Make a ship hostile
fq1 (Flight)Used to add a cargo canister to the universe
fq1 (Parasite)Used to add a cargo canister to the universe
FR1 (Flight)Display the "missile jammed" message
FR1 (Parasite)Display the "missile jammed" message
FR1-2 (Flight)Clear the C flag and return from the subroutine
FR1-2 (Parasite)Clear the C flag and return from the subroutine
FRMIS (Flight)Fire a missile from our ship
FRMIS (Parasite)Fire a missile from our ship
FRS1 (Flight)Launch a ship straight ahead of us, below the laser sights
FRS1 (Parasite)Launch a ship straight ahead of us, below the laser sights
GOPL (Flight)Make the ship head towards the planet
GOPL (Parasite)Make the ship head towards the planet
HI1 (Flight)Contains an RTS
HI1 (Parasite)Contains an RTS
HITCH (Flight)Work out if the ship in INWK is in our crosshairs
HITCH (Parasite)Work out if the ship in INWK is in our crosshairs
n_sound30 (Flight)Make the sound of a missile being launched
n_sound30 (Parasite)Make the sound of a missile being launched
SFRMIS (Flight)Add an enemy missile to our local bubble of universe
SFRMIS (Parasite)Add an enemy missile to our local bubble of universe
TA151 (Flight)Make the ship head towards the planet
TA151 (Parasite)Make the ship head towards the planet
TACTICS (Part 1 of 7) (Flight)Apply tactics: Process missiles, both enemy missiles and our own
TACTICS (Part 2 of 7) (Flight)Apply tactics: Escape pod, station, lone Thargon, safe-zone pirate
TACTICS (Part 3 of 7) (Flight)Apply tactics: Calculate dot product to determine ship's aim
TACTICS (Part 4 of 7) (Flight)Apply tactics: Check energy levels, maybe launch escape pod if low
TACTICS (Part 5 of 7) (Flight)Apply tactics: Consider whether to launch a missile at us
TACTICS (Part 6 of 7) (Flight)Apply tactics: Consider firing a laser at us, if aim is true
TACTICS (Part 7 of 7) (Flight)Apply tactics: Set pitch, roll, and acceleration
TACTICS (Part 1 of 7) (Parasite)Apply tactics: Process missiles, both enemy missiles and our own
TACTICS (Part 2 of 7) (Parasite)Apply tactics: Escape pod, station, lone Thargon, safe-zone pirate
TACTICS (Part 3 of 7) (Parasite)Apply tactics: Calculate dot product to determine ship's aim
TACTICS (Part 4 of 7) (Parasite)Apply tactics: Check energy levels, maybe launch escape pod if low
TACTICS (Part 5 of 7) (Parasite)Apply tactics: Consider whether to launch a missile at us
TACTICS (Part 6 of 7) (Parasite)Apply tactics: Consider firing a laser at us, if aim is true
TACTICS (Part 7 of 7) (Parasite)Apply tactics: Set pitch, roll, and acceleration

Text
----

BPRNT (Docked)Print a 32-bit number, left-padded to a specific number of digits, with an optional decimal point
BPRNT (Encyclopedia)Print a 32-bit number, left-padded to a specific number of digits, with an optional decimal point
BPRNT (Flight)Print a 32-bit number, left-padded to a specific number of digits, with an optional decimal point
BPRNT (Parasite)Print a 32-bit number, left-padded to a specific number of digits, with an optional decimal point
cargo_mtok (Flight)Print the name of a specific cargo item
cargo_mtok (Parasite)Print the name of a specific cargo item
CHPR (Docked)Print a character at the text cursor by poking into screen memory
CHPR (Encyclopedia)Print a character at the text cursor by poking into screen memory
CHPR (I/O processor)Implement the write_xyc command (write a character to the screen)
CHPR (Parasite)Print a character at the text cursor by sending a write_xyc command to the I/O processor
clr_vdustat (Encyclopedia)Switch to standard tokens in lower case
cmn (Docked)Print the commander's name
cmn (Encyclopedia)Print the commander's name
cmn (Flight)Print the commander's name
cmn (Parasite)Print the commander's name
cmn-1 (Docked)Contains an RTS
cmn-1 (Encyclopedia)Contains an RTS
cmn-1 (Flight)Contains an RTS
cmn-1 (Parasite)Contains an RTS
column_16 (Encyclopedia)Tab to column 16 and start a new word when printing extended tokens
cpl (Docked)Print the selected system name
cpl (Encyclopedia)Print the selected system name
cpl (Flight)Print the selected system name
cpl (Parasite)Print the selected system name
crlf (Docked)Tab to column 21 and print a colon
crlf (Encyclopedia)Tab to column 21 and print a colon
crlf (Flight)Tab to column 21 and print a colon
crlf (Parasite)Tab to column 21 and print a colon
csh (Docked)Print the current amount of cash
csh (Encyclopedia)Print the current amount of cash
csh (Flight)Print the current amount of cash
csh (Parasite)Print the current amount of cash
DASC (Docked)DASC does exactly the same as TT26 and prints a character at the text cursor, with support for verified text in extended tokens
DASC (Encyclopedia)DASC does exactly the same as TT26 and prints a character at the text cursor, with support for verified text in extended tokens
DASC (Parasite)DASC does exactly the same as TT26 and prints a character at the text cursor, with support for verified text in extended tokens
DETOK (Docked)Print an extended recursive token from the TKN1 token table
DETOK (Encyclopedia)Print an extended recursive token from the TKN1 token table
DETOK (Parasite)Print an extended recursive token from the TKN1 token table
DETOK2 (Docked)Print an extended text token (1-255)
DETOK2 (Encyclopedia)Print an extended text token (1-255)
DETOK2 (Parasite)Print an extended text token (1-255)
DETOK3 (Docked)Print an extended recursive token from the RUTOK token table
DETOK3 (Parasite)Print an extended recursive token from the RUTOK token table
DETOK3, Moved (Docked)Print an extended recursive token from the RUTOK token table
dn (Docked)Print the amount of cash and beep
dn (Parasite)Print the amount of cash and beep
dn2 (Docked)Make a short, high beep and delay for 1 second
dn2 (Encyclopedia)Make a short, high beep and delay for 1 second
dn2 (Parasite)Make a short, high beep and delay for 1 second
DT3 (Docked)Print the jump token given in A (where A is in the range 0 to 31)
DT3 (Encyclopedia)Print the jump token given in A (where A is in the range 0 to 31)
DT3 (Parasite)Print the jump token given in A (where A is in the range 0 to 31)
DTEN (Docked)Print recursive token number X from the token table pointed to by (A V), used to print tokens from the RUTOK table via calls to DETOK3
DTEN (Encyclopedia)Print recursive token number X from the token table pointed to by (A V), used to print tokens from the msg_3 table via calls to write_msg3
DTEN (Parasite)Print recursive token number X from the token table pointed to by (A V), used to print tokens from the RUTOK table via calls to DETOK3
DTS (Docked)Print a single letter in the correct case DT3 Print the jump token given in A (where A is in the range 0 to 31)
DTS (Encyclopedia)Print a single letter in the correct case DT3 Print the jump token given in A (where A is in the range 0 to 31)
DTS (Parasite)Print a single letter in the correct case
ee3 (Flight)Print the hyperspace countdown in the top-left of the screen
ee3 (Parasite)Print the hyperspace countdown in the top-left of the screen
ex (Docked)Print a recursive token
ex (Encyclopedia)Print a recursive token
ex (Flight)Print a recursive token
ex (Parasite)Print a recursive token
FEED (Docked)Print a newline
FEED (Encyclopedia)Print a newline
FEED (Parasite)Print a newline
fwl (Docked)Print fuel and cash levels
fwl (Encyclopedia)Print fuel and cash levels
fwl (Flight)Print fuel and cash levels
fwl (Parasite)Print fuel and cash levels
me1 (Docked)Erase an old in-flight message and display a new one
me1 (Encyclopedia)Erase an old in-flight message and display a new one
me1 (Flight)Erase an old in-flight message and display a new one
me1 (Parasite)Erase an old in-flight message and display a new one
me2 (Docked)Remove an in-flight message from the space view
me2 (Encyclopedia)Remove an in-flight message from the space view
me2 (Flight)Remove an in-flight message from the space view
me2 (Parasite)Remove an in-flight message from the space view
mes9 (Docked)Print a text token, possibly followed by " DESTROYED"
mes9 (Encyclopedia)Print a text token, possibly followed by " DESTROYED"
mes9 (Flight)Print a text token, possibly followed by " DESTROYED"
mes9 (Parasite)Print a text token, possibly followed by " DESTROYED"
MESS (Docked)Display an in-flight message
MESS (Encyclopedia)Display an in-flight message
MESS (Flight)Display an in-flight message
MESS (Parasite)Display an in-flight message
msg_pairs (Docked)Print the extended two-letter token in A (where A is in the range 215 to 255)
msg_pairs (Encyclopedia)Print the extended two-letter token in A (where A is in the range 215 to 255)
msg_pairs (Parasite)Print the extended two-letter token in A (where A is in the range 215 to 255)
MT1 (Docked)Switch to ALL CAPS when printing extended tokens
MT1 (Encyclopedia)Switch to ALL CAPS when printing extended tokens
MT1 (Parasite)Switch to ALL CAPS when printing extended tokens
MT13 (Docked)Switch to lower case when printing extended tokens
MT13 (Encyclopedia)Switch to lower case when printing extended tokens
MT13 (Parasite)Switch to lower case when printing extended tokens
MT14 (Docked)Switch to justified text when printing extended tokens
MT14 (Encyclopedia)Switch to justified text when printing extended tokens
MT14 (Parasite)Switch to justified text when printing extended tokens
MT15 (Docked)Switch to left-aligned text when printing extended tokens
MT15 (Encyclopedia)Switch to left-aligned text when printing extended tokens
MT15 (Parasite)Switch to left-aligned text when printing extended tokens
MT16 (Docked)Print the character in variable DTW7
MT16 (Encyclopedia)Print the character in variable DTW7
MT16 (Parasite)Print the character in variable DTW7
MT17 (Docked)Print the selected system's adjective, e.g. Lavian for Lave
MT17 (Encyclopedia)Print the selected system's adjective, e.g. Lavian for Lave
MT17 (Parasite)Print the selected system's adjective, e.g. Lavian for Lave
MT18 (Docked)Print a random 1-8 letter word in Sentence Case
MT18 (Encyclopedia)Print a random 1-8 letter word in Sentence Case
MT18 (Parasite)Print a random 1-8 letter word in Sentence Case
MT19 (Docked)Capitalise the next letter
MT19 (Encyclopedia)Capitalise the next letter
MT19 (Parasite)Capitalise the next letter
MT2 (Docked)Switch to Sentence Case when printing extended tokens
MT2 (Encyclopedia)Switch to Sentence Case when printing extended tokens
MT2 (Parasite)Switch to Sentence Case when printing extended tokens
MT23 (Docked)Move to row 10, switch to white text, and switch to lower case when printing extended tokens
MT23 (Encyclopedia)Move to row 10, switch to white text, and switch to lower case when printing extended tokens
MT23 (Parasite)Move to row 10, switch to white text, and switch to lower case when printing extended tokens
MT26 (Docked)Fetch a line of text from the keyboard
MT26 (Encyclopedia)Fetch a line of text from the keyboard
MT26 (Parasite)Fetch a line of text from the keyboard
MT27 (Docked)Print the captain's name during mission briefings
MT27 (Encyclopedia)Print the captain's name during mission briefings
MT27 (Parasite)Print the captain's name during mission briefings
MT28 (Docked)Print the location hint during the mission 1 briefing
MT28 (Encyclopedia)Print the location hint during the mission 1 briefing
MT28 (Parasite)Print the location hint during the mission 1 briefing
MT29 (Docked)Move to row 6, switch to white text, and switch to lower case when printing extended tokens
MT29 (Encyclopedia)Move to row 6, switch to white text, and switch to lower case when printing extended tokens
MT29 (Parasite)Move to row 6, switch to white text, and switch to lower case when printing extended tokens
MT5 (Docked)Switch to extended tokens
MT5 (Encyclopedia)Switch to extended tokens
MT5 (Parasite)Switch to extended tokens
MT6 (Docked)Switch to standard tokens in Sentence Case
MT6 (Encyclopedia)Switch to standard tokens in Sentence Case
MT6 (Parasite)Switch to standard tokens in Sentence Case
MT8 (Docked)Tab to column 6 and start a new word when printing extended tokens
MT8 (Encyclopedia)Tab to column 6 and start a new word when printing extended tokens
MT8 (Parasite)Tab to column 6 and start a new word when printing extended tokens
MT9 (Docked)Clear the screen and set the current view type to 1
MT9 (Encyclopedia)Clear the screen and set the current view type to 1
MT9 (Parasite)Clear the screen and set the current view type to 1
n_name (Docked)Print the type of a given ship
n_name (Parasite)Print the type of a given ship
new_name (Parasite)This part of token 132 is updated with our current ship's type by routine n_load, so printing token 132 will always show the correct type of our ship
new_name (Text tokens)This part of token 132 is updated with our current ship's type by routine n_load, so printing token 132 will always show the correct type of our ship
ou2, Removed (Flight)Display "E.C.M.SYSTEM DESTROYED" as an in-flight message
ou3, Removed (Flight)Display "FUEL SCOOPS DESTROYED" as an in-flight message
PD1 (Encyclopedia)Print the standard "goat soup" description without checking for overrides
PDESC (Docked)Print the system's extended description or a mission 1 directive
PDESC (Encyclopedia)Print the system's extended description or a mission 1 directive
PDESC (Parasite)Print the system's extended description or a mission 1 directive
plf (Docked)Print a text token followed by a newline
plf (Encyclopedia)Print a text token followed by a newline
plf (Flight)Print a text token followed by a newline
plf (Parasite)Print a text token followed by a newline
plf2 (Flight)Print text followed by a newline and indent of 6 characters
plf2, Removed (Docked)Print text followed by a newline and indent of 6 characters
pr2 (Docked)Print an 8-bit number, left-padded to 3 digits, and optional point
pr2 (Encyclopedia)Print an 8-bit number, left-padded to 3 digits, and optional point
pr2 (Flight)Print an 8-bit number, left-padded to 3 digits, and optional point
pr2 (Parasite)Print an 8-bit number, left-padded to 3 digits, and optional point
pr2+2 (Docked)Print the 8-bit number in X to the number of digits in A
pr2+2 (Encyclopedia)Print the 8-bit number in X to the number of digits in A
pr2+2 (Flight)Print the 8-bit number in X to the number of digits in A pr2-1 Print X without a decimal point
pr2+2 (Parasite)Print the 8-bit number in X to the number of digits in A pr2-1 Print X without a decimal point
pr2-1 (Flight)Print X without a decimal point
pr2-1 (Parasite)Print X without a decimal point
pr5 (Docked)Print a 16-bit number, left-padded to 5 digits, and optional point
pr5 (Encyclopedia)Print a 16-bit number, left-padded to 5 digits, and optional point
pr5 (Flight)Print a 16-bit number, left-padded to 5 digits, and optional point
pr5 (Parasite)Print a 16-bit number, left-padded to 5 digits, and optional point
pr6 (Docked)Print 16-bit number, left-padded to 5 digits, no point
pr6 (Encyclopedia)Print 16-bit number, left-padded to 5 digits, no point
pr6 (Flight)Print 16-bit number, left-padded to 5 digits, no point
pr6 (Parasite)Print 16-bit number, left-padded to 5 digits, no point
print_esc (I/O processor)Send an escape sequence to the printer
print_safe (I/O processor)Print a character using the VDU routine in the MOS, to bypass our custom WRCHV handler
print_wrch (I/O processor)Send a character to the printer
printer (I/O processor)Send the screen to the printer, following a CTRL-P key press
printer (Parasite)This routine is commented out in the original source
prq (Docked)Print a text token followed by a question mark
prq (Flight)Print a text token followed by a question mark
prq (Parasite)Print a text token followed by a question mark
qw (Docked)Print a recursive token in the range 128-145
qw (Encyclopedia)Print a recursive token in the range 128-145
qw (Flight)Print a recursive token in the range 128-145
qw (Parasite)Print a recursive token in the range 128-145
RR3+1 (Docked)Contains an RTS RREN Prints the character definition pointed to by P(2 1) at the screen address pointed to by (A SC). Used by the BULB routine
RR3+1 (Encyclopedia)Contains an RTS RREN Prints the character definition pointed to by P(2 1) at the screen address pointed to by (A SC). Used by the BULB routine
RR3+1 (Flight)Contains an RTS RREN Prints the character definition pointed to by P(2 1) at the screen address pointed to by (A SC). Used by the BULB routine
RR3+1 (Parasite)Contains an RTS
RREN (Docked)Prints the character definition pointed to by P(2 1) at the screen address pointed to by (A SC). Used by the BULB routine
RREN (Encyclopedia)Prints the character definition pointed to by P(2 1) at the screen address pointed to by (A SC). Used by the BULB routine
RREN (Flight)Prints the character definition pointed to by P(2 1) at the screen address pointed to by (A SC). Used by the BULB routine
rT9 (Docked)Contains an RTS
rT9 (Encyclopedia)Contains an RTS
rT9 (Flight)Contains an RTS
rT9 (Parasite)Contains an RTS
sell_yn (Docked)Print a "Sell(Y/N)?" prompt and get a number from the keyboard
sell_yn (Parasite)Print a "Sell(Y/N)?" prompt and get a number from the keyboard
set_token (Docked)Switch to standard tokens, keeping the current case
set_token (Encyclopedia)Start a new word when printing extended tokens
set_token (Parasite)Switch to standard tokens, keeping the current case
spc (Docked)Print a text token followed by a space
spc (Encyclopedia)Print a text token followed by a space
spc (Flight)Print a text token followed by a space
spc (Parasite)Print a text token followed by a space
status_equip (Docked)Print equipment name, adding a sell prompt if appropriate
status_equip (Parasite)Print equipment name, adding a sell prompt if appropriate
tal (Docked)Print the current galaxy number
tal (Encyclopedia)Print the current galaxy number
tal (Flight)Print the current galaxy number
tal (Parasite)Print the current galaxy number
TT11 (Docked)Print a 16-bit number, left-padded to n digits, and optional point
TT11 (Encyclopedia)Print a 16-bit number, left-padded to n digits, and optional point
TT11 (Flight)Print a 16-bit number, left-padded to n digits, and optional point
TT11 (Parasite)Print a 16-bit number, left-padded to n digits, and optional point
TT146 (Docked)Print the distance to the selected system in light years
TT146 (Encyclopedia)Print the distance to the selected system in light years
TT146 (Flight)Print the distance to the selected system in light years
TT146 (Parasite)Print the distance to the selected system in light years
TT147 (Flight)Print an error when a system is out of hyperspace range
TT147 (Parasite)Print an error when a system is out of hyperspace range
TT147, Removed (Docked)Print an error when a system is out of hyperspace range
TT162 (Docked)Print a space
TT162 (Encyclopedia)Print a space
TT162 (Flight)Print a space
TT162 (Parasite)Print a space
TT162+2 (Docked)Jump to TT27 to print the text token in A
TT162+2 (Encyclopedia)Jump to TT27 to print the text token in A
TT162+2 (Flight)Jump to TT27 to print the text token in A
TT162+2 (Parasite)Jump to TT27 to print the text token in A
TT26 (Docked)Print a character at the text cursor, with support for verified text in extended tokens
TT26 (Encyclopedia)Print a character at the text cursor, with support for verified text in extended tokens
TT26 (Flight)Print a character at the text cursor by poking into screen memory
TT26 (Parasite)Print a character at the text cursor, with support for verified text in extended tokens
TT27 (Docked)Print a text token
TT27 (Encyclopedia)Print a text token
TT27 (Flight)Print a text token
TT27 (Parasite)Print a text token
TT41 (Docked)Print a letter according to Sentence Case
TT41 (Encyclopedia)Print a letter according to Sentence Case
TT41 (Flight)Print a letter according to Sentence Case
TT41 (Parasite)Print a letter according to Sentence Case
TT42 (Docked)Print a letter in lower case
TT42 (Encyclopedia)Print a letter in lower case
TT42 (Flight)Print a letter in lower case
TT42 (Parasite)Print a letter in lower case
TT43 (Docked)Print a two-letter token or recursive token 0-95
TT43 (Encyclopedia)Print a two-letter token or recursive token 0-95
TT43 (Flight)Print a two-letter token or recursive token 0-95
TT43 (Parasite)Print a two-letter token or recursive token 0-95
TT44 (Docked)Jumps to TT26 to print the character in A (used to enable us to use a branch instruction to jump to TT26)
TT44 (Encyclopedia)Jumps to TT26 to print the character in A (used to enable us to use a branch instruction to jump to TT26)
TT44 (Flight)Jumps to TT26 to print the character in A (used to enable us to use a branch instruction to jump to TT26)
TT44 (Parasite)Jumps to TT26 to print the character in A (used to enable us to use a branch instruction to jump to TT26)
TT45 (Docked)Print a letter in lower case
TT45 (Encyclopedia)Print a letter in lower case
TT45 (Flight)Print a letter in lower case
TT45 (Parasite)Print a letter in lower case
TT46 (Docked)Print a character and switch to capitals
TT46 (Encyclopedia)Print a character and switch to capitals
TT46 (Flight)Print a character and switch to capitals
TT46 (Parasite)Print a character and switch to capitals
TT48 (Docked)Contains an RTS
TT48 (Encyclopedia)Contains an RTS
TT48 (Flight)Contains an RTS
TT48 (Parasite)Contains an RTS
TT60 (Docked)Print a text token and a paragraph break
TT60 (Encyclopedia)Print a text token and a paragraph break
TT60 (Flight)Print a text token and a paragraph break
TT60 (Parasite)Print a text token and a paragraph break
TT67 (Docked)Print a newline
TT67 (Encyclopedia)Print a newline
TT67 (Flight)Print a newline
TT67 (Parasite)Print a newline
TT68 (Docked)Print a text token followed by a colon
TT68 (Encyclopedia)Print a text token followed by a colon
TT68 (Flight)Print a text token followed by a colon
TT68 (Parasite)Print a text token followed by a colon
TT69 (Docked)Set Sentence Case and print a newline
TT69 (Flight)Set Sentence Case and print a newline
TT69 (Parasite)Set Sentence Case and print a newline
TT70 (Docked)Display "MAINLY " and jump to TT72
TT70 (Encyclopedia)Display "MAINLY " and jump to TT72
TT70 (Flight)Display "MAINLY " and jump to TT72
TT70 (Parasite)Display "MAINLY " and jump to TT72
TT73 (Docked)Print a colon
TT73 (Encyclopedia)Print a colon
TT73 (Flight)Print a colon
TT73 (Parasite)Print a colon
TT74 (Docked)Print a character
TT74 (Encyclopedia)Print a character
TT74 (Flight)Print a character
TT74 (Parasite)Print a character
TTX69 (Docked)Print a paragraph break
TTX69 (Encyclopedia)Print a paragraph break
TTX69 (Flight)Print a paragraph break
TTX69 (Parasite)Print a paragraph break
tube_wrch (I/O processor)Write characters to the screen and process Tube commands from the parasite
vdu_00 (Flight)Switch standard tokens to ALL CAPS
vdu_80 (Docked)Switch standard tokens to Sentence Case
vdu_80 (Flight)Switch standard tokens to Sentence Case vdu_00 Switch standard tokens to ALL CAPS
vdu_80 (Parasite)Switch standard tokens to Sentence Case
VOWEL (Docked)Test whether a character is a vowel
VOWEL (Encyclopedia)Test whether a character is a vowel
VOWEL (Parasite)Test whether a character is a vowel
wrch_font (I/O processor)Set the font and screen address for printing characters on-screen
write_msg3 (Encyclopedia)Print an extended recursive token from the msg_3 token table
write_msg3 (Parasite)Print an extended recursive token from the msg_3 token table
ypl (Docked)Print the current system name
ypl (Encyclopedia)Print the current system name
ypl (Flight)Print the current system name
ypl (Parasite)Print the current system name
ypl-1 (Docked)Contains an RTS
ypl-1 (Encyclopedia)Contains an RTS
ypl-1 (Flight)Contains an RTS
ypl-1 (Parasite)Contains an RTS

Tube
----

read_0346 (I/O processor)Implement the read_0346 command (read LASCT)
read_0346 (Parasite)Get the value of LASCT by sending a read_0346 command to the I/O processor
tube_elite (I/O processor)Set the vectors to receive Tube communications, run the parasite code, and terminate the I/O processor's loading process
tube_func (I/O processor)Call the corresponding routine for a Tube command
tube_get (I/O processor)As the I/O processor, fetch a byte that's been sent over the Tube from the parasite
tube_put (I/O processor)As the I/O processor, send a byte across the Tube to the parasite
tube_read (Parasite)As the parasite, fetch a byte that's been sent over the Tube from the I/O processor
tube_write (Parasite)As the parasite, send a byte across the Tube to the I/O processor
write_0346 (I/O processor)Implement the write_0346 command (update LASCT)
write_0346 (Parasite)Update the value of LASCT by sending a write_0346 command to the I/O processor

Universe
--------

GINF (Docked)Fetch the address of a ship's data block into INF
GINF (Encyclopedia)Fetch the address of a ship's data block into INF
GINF (Flight)Fetch the address of a ship's data block into INF
GINF (Parasite)Fetch the address of a ship's data block into INF
GTHG (Flight)Spawn a Thargoid ship and a Thargon companion
GTHG (Parasite)Spawn a Thargoid ship and a Thargon companion
GVL (Docked)Calculate the availability of market items
GVL (Flight)Calculate the availability of market items
GVL (Parasite)Calculate the availability of market items
hy5 (Docked)Contains an RTS
hy5 (Flight)Contains an RTS
hy5 (Parasite)Contains an RTS
hyp1 (Docked)Process a jump to the system closest to (QQ9, QQ10)
hyp1 (Flight)Process a jump to the system closest to (QQ9, QQ10)
hyp1 (Parasite)Process a jump to the system closest to (QQ9, QQ10)
hyp1+3 (Docked)Jump straight to the system at (QQ9, QQ10) without first calculating which system is closest. We do this if we already know that (QQ9, QQ10) points to a system
hyp1+3 (Flight)Jump straight to the system at (QQ9, QQ10) without first calculating which system is closest. We do this if we already know that (QQ9, QQ10) points to a system
hyp1+3 (Parasite)Jump straight to the system at (QQ9, QQ10) without first calculating which system is closest. We do this if we already know that (QQ9, QQ10) points to a system
hyp1_FLIGHT (Parasite)Process a jump to the system closest to (QQ9, QQ10) (flight version)
hyR (Flight)Contains an RTS
hyR (Parasite)Contains an RTS
install_ship (Parasite)Install a ship blueprint into the ship blueprints lookup table
jmp (Docked)Set the current system to the selected system
jmp (Flight)Set the current system to the selected system
jmp (Parasite)Set the current system to the selected system
KILLSHP (Flight)Remove a ship from our local bubble of universe
KILLSHP (Parasite)Remove a ship from our local bubble of universe
KS1 (Flight)Remove the current ship from our local bubble of universe
KS1 (Parasite)Remove the current ship from our local bubble of universe
KS2 (Flight)Check the local bubble for missiles with target lock
KS2 (Parasite)Check the local bubble for missiles with target lock
KS3 (Flight)Set the SLSP ship heap pointer after shuffling ship slots
KS3 (Parasite)Set the SLSP ship heap pointer after shuffling ship slots
KS4 (Flight)Remove the space station and replace it with the sun
KS4 (Parasite)Remove the space station and replace it with the sun
LSHIPS (Parasite)Populate the ship blueprints table at XX21 with a random selection of ships and set the compass to point to the planet
NwS1 (Flight)Flip the sign and double an INWK byte
NwS1 (Parasite)Flip the sign and double an INWK byte
NwS1, Removed (Docked)Flip the sign and double an INWK byte
NWSHP (Docked)Add a new ship to our local bubble of universe
NWSHP (Encyclopedia)Add a new ship to our local bubble of universe
NWSHP (Flight)Add a new ship to our local bubble of universe
NWSHP (Parasite)Add a new ship to our local bubble of universe
NWSPS (Flight)Add a new space station to our local bubble of universe
NWSPS (Parasite)Add a new space station to our local bubble of universe
oh (Flight)Contains an RTS SPIN2 Remove any randomness: spawn cargo of a specific type (given in X), and always spawn the number given in A
oh (Parasite)Contains an RTS SPIN2 Remove any randomness: spawn cargo of a specific type (given in X), and always spawn the number given in A
ping (Docked)Set the selected system to the current system
ping (Encyclopedia)Set the selected system to the current system
ping (Flight)Set the selected system to the current system
ping (Parasite)Set the selected system to the current system
rand_posn (Flight)Set up the INWK workspace for a ship in a random ship position
rand_posn (Parasite)Set up the INWK workspace for a ship in a random ship position
SFS1 (Flight)Spawn a child ship from the current (parent) ship
SFS1 (Parasite)Spawn a child ship from the current (parent) ship
SFS1-2 (Flight)Add a missile to the local bubble that has AI enabled, is hostile, but has no E.C.M.
SFS1-2 (Parasite)Add a missile to the local bubble that has AI enabled, is hostile, but has no E.C.M.
SHIPinA (Parasite)Populate the ship blueprints table but without setting the compass to show the planet
SOLAR (Flight)Set up various aspects of arriving in a new system
SOLAR (Parasite)Set up various aspects of arriving in a new system
SOS1 (Flight)Update the missile indicators, set up the planet data block
SOS1 (Parasite)Update the missile indicators, set up the planet data block
SPIN (Flight)Randomly spawn cargo from a destroyed ship
SPIN (Parasite)Randomly spawn cargo from a destroyed ship
SPIN2 (Flight)Remove any randomness: spawn cargo of a specific type (given in X), and always spawn the number given in A
SPIN2 (Parasite)Remove any randomness: spawn cargo of a specific type (given in X), and always spawn the number given in A
stay_quit (Docked)Go to the docking bay (i.e. show the Status Mode screen)
TT111 (Docked)Set the current system to the nearest system to a point
TT111 (Encyclopedia)Set the current system to the nearest system to a point
TT111 (Flight)Set the current system to the nearest system to a point
TT111 (Parasite)Set the current system to the nearest system to a point
TT111-1 (Docked)Contains an RTS
TT111-1 (Encyclopedia)Contains an RTS
TT111-1 (Flight)Contains an RTS
TT111-1 (Parasite)Contains an RTS
TT20 (Docked)Twist the selected system's seeds four times
TT20 (Encyclopedia)Twist the selected system's seeds four times
TT20 (Flight)Twist the selected system's seeds four times
TT20 (Parasite)Twist the selected system's seeds four times
TT24 (Docked)Calculate system data from the system seeds
TT24 (Encyclopedia)Calculate system data from the system seeds
TT24 (Flight)Calculate system data from the system seeds
TT24 (Parasite)Calculate system data from the system seeds
TT25 (Docked)Show the Data on System screen (red key f6) or Encyclopedia screen (CTRL-f6)
TT25 (Encyclopedia)Show the Data on System screen (red key f6) or Encyclopedia screen (CTRL-f6)
TT25 (Flight)Show the Data on System screen (red key f6) or Encyclopedia screen (CTRL-f6)
TT25 (Parasite)Show the Data on System screen (red key f6) or Encyclopedia screen (CTRL-f6)
TT54 (Docked)Twist the selected system's seeds
TT54 (Encyclopedia)Twist the selected system's seeds
TT54 (Flight)Twist the selected system's seeds
TT54 (Parasite)Twist the selected system's seeds
TT72 (Docked)Used by TT70 to re-enter the routine after displaying "MAINLY" for the economy type
TT72 (Encyclopedia)Used by TT70 to re-enter the routine after displaying "MAINLY" for the economy type
TT72 (Flight)Used by TT70 to re-enter the routine after displaying "MAINLY" for the economy type
TT72 (Parasite)Used by TT70 to re-enter the routine after displaying "MAINLY" for the economy type
TT81 (Docked)Set the selected system's seeds to those of system 0
TT81 (Encyclopedia)Set the selected system's seeds to those of system 0
TT81 (Flight)Set the selected system's seeds to those of system 0
TT81 (Parasite)Set the selected system's seeds to those of system 0
Ze (Flight)Initialise the INWK workspace to a hostile ship
Ze (Parasite)Initialise the INWK workspace to a hostile ship
Ze, Removed (Docked)Initialise the INWK workspace to a hostile ship

Utility routines
----------------

BOL1-1 (Docked)Contains an RTS
BOL1-1 (Encyclopedia)Contains an RTS
BOL1-1 (Flight)Contains an RTS
BOX (Flight)Just draw the border and (if this is a space view) the view name. This can be used to remove the border and view name, as it is drawn using EOR logic
BRBR (Docked)The standard BRKV handler for the game
BRBR (Encyclopedia)The standard BRKV handler for the game
BRBR (Parasite)The standard BRKV handler for the game
clr_scrn (I/O processor)Clear the top part of the screen (the space view)
CLYNS (Docked)Clear the bottom three text rows of the mode 4 screen
CLYNS (Encyclopedia)Clear the bottom three text rows of the mode 4 screen
CLYNS (Flight)Clear the bottom three text rows of the mode 4 screen
CLYNS (I/O processor)Clear the bottom three text rows of the mode 4 screen
CLYNS (Parasite)Clear the bottom three text rows of the mode 4 screen by sending a clr_line command to the I/O processor
DELAY (Docked)Wait for a specified time, in 1/50s of a second
DELAY (Encyclopedia)Wait for a specified time, in 1/50s of a second
DELAY (Flight)Wait for a specified time, in 1/50s of a second
DELAY (Parasite)Wait for a specified time, in 1/50s of a second
DORND (Docked)Generate random numbers
DORND (Encyclopedia)Generate random numbers
DORND (Flight)Generate random numbers
DORND (Loader)Generate random numbers
DORND (Parasite)Generate random numbers
DORND2 (Flight)Make sure the C flag doesn't affect the outcome
DORND2 (Parasite)Generate random numbers, making sure the C flag doesn't affect the outcome
FX200 (Docked)Set the behaviour of the ESCAPE and BREAK keys
FX200 (Parasite)Set the behaviour of the ESCAPE and BREAK keys
LYN (Docked)Clear most of a row of pixels
LYN (Encyclopedia)Clear most of a row of pixels
LYN (Flight)Clear most of a row of pixels
LYN (I/O processor)Clear most of a row of pixels
MVBL (Loader)Move a multi-page block of memory
MVPG (Loader)Move a page of memory
OSB (Loader)A convenience routine for calling OSBYTE with Y = 0
SC5 (Docked)Contains an RTS
SC5 (Encyclopedia)Contains an RTS
SC5 (Flight)Contains an RTS
SC5 (I/O processor)Contains an RTS
TT66 (Docked)Clear the screen and set the current view type
TT66 (Encyclopedia)Clear the screen and set the current view type
TT66 (Flight)Clear the screen and set the current view type
TT66 (Parasite)Clear the screen and set the current view type
TTX66 (Docked)Clear the top part of the screen and draw a white border
TTX66 (Encyclopedia)Clear the top part of the screen and draw a white border
TTX66 (Flight)Clear the top part of the screen and draw a white border
TTX66 (Parasite)Clear the top part of the screen and draw a white border by sending a clr_scrn command to the I/O processor
Unused routine, Removed (Docked)This code appears to be unused
ZEBC (Docked)Zero-fill pages &B and &C
ZEBC (Parasite)Zero-fill pages &B and &C
ZERO (Docked)Zero-fill pages &9, &A, &B, &C and &D
ZERO (Encyclopedia)Zero-fill pages &9, &A, &B, &C and &D
ZERO (Flight)Zero-fill pages &9, &A, &B, &C and &D
ZERO (Parasite)Zero-fill pages &9, &A, &B, &C and &D
ZES1 (Docked)Zero-fill the page whose number is in X
ZES1 (Encyclopedia)Zero-fill the page whose number is in X
ZES1 (Flight)Zero-fill the page whose number is in X
ZES1 (I/O processor)Zero-fill the page whose number is in X
ZES1 (Parasite)Zero-fill the page whose number is in X
ZES2 (Docked)Zero-fill a specific page
ZES2 (Encyclopedia)Zero-fill a specific page
ZES2 (Flight)Zero-fill a specific page
ZES2 (I/O processor)Zero-fill a specific page
ZES2 (Parasite)Zero-fill a specific page
ZINF (Docked)Reset the INWK workspace and orientation vectors
ZINF (Encyclopedia)Reset the INWK workspace and orientation vectors
ZINF (Flight)Reset the INWK workspace and orientation vectors
ZINF (Parasite)Reset the INWK workspace and orientation vectors