Skip to navigation


Version analysis of SETVDU19 / DOVDU19

This code appears in the following versions (click to see it in the source code):

Code variations between these versions are shown below.

Code variation 1 of 5A variation in the comments only

Tap on a block to expand it, and tap it again to revert.

Name: DOVDU19
Name: SETVDU19
Type: Subroutine Category: Drawing the screen

Code variation 2 of 5A variation in the comments only

Tap on a block to expand it, and tap it again to revert.

Summary: Change the mode 1 palette
Summary: Implement the #SETVDU19 <offset> command (change mode 1 palette)

Code variation 3 of 5A variation in the comments only

This variation is blank in the Master version.

This routine is run when the parasite sends a #SETVDU19 <offset> command.
This routine updates the VNT3+1 location in the IRQ1 handler to change the palette that's applied to the top part of the screen (the four-colour mode 1 part). The parameter is the offset within the TVT3 palette block of the desired palette.
Arguments: A The offset within the TVT3 table of palettes: * 0 = Yellow, red, cyan palette (space view) * 16 = Yellow, red, white palette (charts) * 32 = Yellow, white, cyan palette (title screen) * 48 = Yellow, magenta, white palette (trading)

Code variation 4 of 5A variation in the labels only

Tap on a block to expand it, and tap it again to revert.

.DOVDU19
.SETVDU19
 STA VNT3+1             \ Store the new colour in VNT3+1, in the IRQ1 routine,
                        \ which modifies which TVT3 palette block gets applied
                        \ to the mode 1 part of the screen

Code variation 5 of 5Related to Elite's use of the Tube

Tap on a block to expand it, and tap it again to revert.

RTS \ Return from the subroutine
JMP PUTBACK \ Jump to PUTBACK to restore the USOSWRCH handler and \ return from the subroutine using a tail call