!IF, !IFDEF [expression] {
This pseudo op starts an conditional block. The conditional block is only evaluated if the expression yields a result not equal to zero. The opening curly brace must be on the same line.
A conditional block has to end with a closing curly brace. An optional else or else if statement may open an opposite conditional block, however it must be stated on one line.
Kod: Zaznacz cały
!ifdef MUSIC_PLAYING{
;initialise music player
ldx #0
ldy #0
lda #MUSIC_TITLE_TUNE
jsr MUSIC_PLAYER
} else if SFX_PLAYING {
;start sfx engine
lda #0
jsr SFX_PLAYER
} else {
lda #7
sta VIC_BORDER_COLOR
}
Kod: Zaznacz cały
EXOD_LITERAL_SEQUENCES_NOT_USED = 0
;---------------
exod_decrunch:
;W A I X ADRES pierwszego BAJTU ZA PLIKIEM!
;
STA OPBASE+1
STX OPBASE+2
...
exod_get_crunched_byte
LDA OPBASE + 1
BNE NOWRAP
DEC OPBASE + 2
NOWRAP DEC OPBASE + 1
; CHANGE THE $FFFF TO POINT TO THE BYTE IMMEDIATELY FOLLOWING THE LAST
; BYTE OF THE CRUNCHED FILE DATA (MEM COMMAND)
OPBASE
LDA $FFFF
rts