Skip to navigation

Elite on the BBC Micro

Dashboard: DIALS (Part 1 of 4) [Electron version]

Name: DIALS (Part 1 of 4) [Show more] Type: Subroutine Category: Dashboard Summary: Update the dashboard: speed indicator Deep dive: The dashboard indicators
Context: See this subroutine in context in the source code Variations: See code variations for this subroutine in the different versions References: This subroutine is called as follows: * EQSHP calls DIALS * Main game loop (Part 5 of 6) calls DIALS * RES2 calls DIALS

This routine updates the dashboard. First we draw all the indicators in the right part of the dashboard, from top (speed) to bottom (energy banks), and then we move on to the left part, again drawing from top (forward shield) to bottom (altitude). This first section starts us off with the speedometer in the top right.
.DIALS LDA #&F0 \ Set SC(1 0) = &76F0, which is the screen address for STA SC \ the character block containing the left end of the LDA #&76 \ top indicator in the right part of the dashboard, the STA SC+1 \ one showing our speed LDA DELTA \ Fetch our ship's speed into A, in the range 0-40 JSR DIL \ Draw the speed indicator using a range of 0-31, and \ increment SC to point to the next indicator (the roll \ indicator)