Skip to navigation

Elite on the BBC Micro and NES

Workspaces: ZP

[BBC Micro cassette version, Loader]

Name: ZP [Show more] Type: Workspace Address: &0004 to &0005 and &0070 to &0086 Category: Workspaces Summary: Important variables used by the loader
Context: See this workspace in context in the source code Variations: See code variations for this workspace in the different versions References: This workspace is used as follows: * CHECKER uses ZP * DOMOVE uses ZP * Elite loader (Part 2 of 6) uses ZP * Elite loader (Part 3 of 6) uses ZP * Elite loader (Part 5 of 6) uses ZP * Elite loader (Part 6 of 6) uses ZP * PIX uses ZP * PLL1 (Part 1 of 3) uses ZP * PLL1 (Part 2 of 3) uses ZP * PLL1 (Part 3 of 3) uses ZP * ROOT uses ZP * TT26 uses ZP
ORG &0004 .TRTB% SKIP 2 \ Contains the address of the keyboard translation \ table, which is used to translate internal key \ numbers to ASCII \ \ [Show more]
\ \ This variable is used by the following: \ \ * doPROT1 \ * Elite loader (Part 2 of 6) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
ORG &0070 .ZP SKIP 2 \ Stores addresses used for moving content around \ \ [Show more]
\ \ This variable is used by the following: \ \ * CHECKER \ * DOMOVE \ * Elite loader (Part 2 of 6) \ * Elite loader (Part 3 of 6) \ * Elite loader (Part 5 of 6) \ * Elite loader (Part 6 of 6) \ * PIX \ * PLL1 (Part 1 of 3) \ * PLL1 (Part 2 of 3) \ * PLL1 (Part 3 of 3) \ * ROOT \ * TT26 \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.P SKIP 1 \ Temporary storage, used in a number of places \ \ [Show more]
\ \ This variable is used by the following: \ \ * DOMOVE \ * Elite loader (Part 3 of 6) \ * Elite loader (Part 5 of 6) \ * PLL1 (Part 1 of 3) \ * ROOT \ * SQUA2 \ * TT26 \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.Q SKIP 1 \ Temporary storage, used in a number of places \ \ [Show more]
\ \ This variable is used by the following: \ \ * ROOT \ * SQUA2 \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.YY SKIP 1 \ Temporary storage, used in a number of places \ \ [Show more]
\ \ This variable is used by the following: \ \ * PLL1 (Part 1 of 3) \ * PLL1 (Part 2 of 3) \ * PLL1 (Part 3 of 3) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.T SKIP 1 \ Temporary storage, used in a number of places \ \ [Show more]
\ \ This variable is used by the following: \ \ * PLL1 (Part 3 of 3) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.SC SKIP 1 \ Screen address (low byte) \ \ Elite draws on-screen by poking bytes directly into \ screen memory, and SC(1 0) is typically set to the \ address of the character block containing the pixel \ we want to draw (see the deep dives on "Drawing \ monochrome pixels in mode 4" and "Drawing colour \ pixels in mode 5" for more details) \ \ [Show more]
\ \ This variable is used by the following: \ \ * TT26 \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.SCH SKIP 1 \ Screen address (high byte) .BLPTR SKIP 2 \ Gets set to &03CA as part of the obfuscation code \ \ [Show more]
\ \ This variable is used by the following: \ \ * Elite loader (Part 2 of 6) \ * IRQ1 \ * PLL1 (Part 2 of 3) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.V219 SKIP 2 \ Gets set to &0218 as part of the obfuscation code \ \ [Show more]
\ \ This variable is used by the following: \ \ * doPROT1 \ * Elite loader (Part 2 of 6) \ * Elite loader (Part 3 of 6) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
SKIP 4 \ These bytes appear to be unused .K3 SKIP 1 \ Temporary storage, used in a number of places \ \ [Show more]
\ \ This variable is used by the following: \ \ * TT26 \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.BLCNT SKIP 2 \ Stores the tape loader block count as part of the copy \ protection code in IRQ1 \ \ [Show more]
\ \ This variable is used by the following: \ \ * CHECKER \ * Elite loader (Part 3 of 6) \ * IRQ1 \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.BLN SKIP 2 \ Gets set to &03C6 as part of the obfuscation code \ \ [Show more]
\ \ This variable is used by the following: \ \ * Elite loader (Part 2 of 6) \ * IRQ1 \ * PLL1 (Part 2 of 3) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above
.EXCN SKIP 2 \ Gets set to &03C2 as part of the obfuscation code \ \ [Show more]
\ \ This variable is used by the following: \ \ * Elite loader (Part 2 of 6) \ * IRQ1 \ * PLL1 (Part 1 of 3) \ \ This list only includes code that refers to the \ variable by name; there may be other references to \ this memory location that don't use this label, and \ these will not be mentioned above