;;; START SCREEN MENU ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
LDA gameState ;; CHECK ON A PASSCODE SCREEN ;;
CMP #$02 ;; PASSCODE SCREEN IS $02 ;;
BEQ BoSelector
JMP StartScreenSelector
BoSelector:
LDA #SELECTION_POS_Y ;; Y POSITION WHEN 0 SELECTED ;;
STA temp1
LDA #SELECTION_POS_X ;; X POSITION OF ALL SELECTIONS ;;
STA temp2
LDX #$00
startScreenSelectorLoop:
CPX newGameCur
BCC dothis
JMP donecur
dothis:
LDA temp1 ;; LOAD Y POSITION ;;
CLC
ADC #SELECTION_STEP_Y ;; ADD Y STEP TO POSITION ;;
STA temp1
;;; NEW GAME ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
LDA temp2
ADC #$1D
STA temp2
LDA temp1
SBC #$0B
STA temp1
DrawSprite temp2, temp1, #$E0, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E1, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E2, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E3, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E4, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E5, #%00000011, #$00
LDA temp2
SBC #$44
STA temp2
LDA temp1
ADC #$0B
STA temp1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INX
JMP startScreenSelectorLoop
donecur:
;;; DRAW FOUR CORNERS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DrawSprite temp2, temp1, #$42, #%00000010, #$00
LDA temp2
ADC #$62
STA temp2
DrawSprite temp2, temp1, #$42, #%01000010, #$00
LDA temp1
ADC #$09
STA temp1
DrawSprite temp2, temp1, #$42, #%11000010, #$00
LDA temp2
SBC #$61
STA temp2
DrawSprite temp2, temp1, #$42, #%10000010, #$00
;;; PASSCODE MASK ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
LDA newGameCur
CMP #$00
BEQ domasking
JMP StartScreenSelector:
domasking:
LDA temp1
ADC #$0B
STA temp1
LDA temp2
ADC #$15
STA temp2
DrawSprite temp2, temp1, #$E6, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E7, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E8, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$E9, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$EA, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$EB, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$EC, #%00000011, #$00
LDA temp2
ADC #$08
STA temp2
DrawSprite temp2, temp1, #$ED, #%00000011, #$00
StartScreenSelector: