diff --git a/dino.asm b/dino.asm index e3b6dc0..933cca4 100644 --- a/dino.asm +++ b/dino.asm @@ -85,6 +85,7 @@ WorldTable :WORLD_LENGTH+1 .byte 0 ; ground ;--------------------------------------------------- FirstSTART + jsr ClearScreen jsr GenerateCharsets jsr SetGameScreen jsr FadeColorsIN @@ -92,12 +93,12 @@ NewGame jsr SetStatusToR jsr SetStart jsr GameR - key + AnyKey jsr HiScoreR jsr SetStatusToL jsr SetStart jsr GameL - key + AnyKey jsr HiScoreL jmp NewGame rts @@ -273,13 +274,14 @@ SwapLoop ldy #44 ; visible screen len lda #0 ClearLoop - sta screen+$700,y - sta screen+$600,y - sta screen+$500,y - sta screen+$400,y - sta screen+$300,y - sta screen+$200,y - sta screen+$100,y + sta screen+$0700,y + sta screen+$0600,y + sta screen+$0500,y + sta screen+$0400,y + sta screen+$0300,y + sta screen+$0200,y + sta screen+$0100,y + sta screen+$0000,y dey bne ClearLoop rts @@ -1084,6 +1086,37 @@ FadeColor mva #>font1 chbas rts .endp +;----------------------------------------------- +.proc AnyKey + ; wait for releasing keyz +@ lda CONSOL + cmp #7 + bne @- + ; check keyboard +@ lda SKSTAT + cmp #$f7 ; SHIFT + beq @- + cmp #$ff + bne @- +@ lda TRIG0 + beq @- + + ; test for going further +@ lda CONSOL + cmp #7 + bne pressed + ; check keyboard + lda SKSTAT + cmp #$f7 ; SHIFT + beq pressed + cmp #$ff + bne pressed + lda TRIG0 + beq pressed + jmp @- +pressed + rts +.endp ;-------------------------------------------------- icl 'artwork/shapes.asm' ;-------------------------------------------------- diff --git a/dino.xex b/dino.xex index 71a4a95..02a379a 100644 Binary files a/dino.xex and b/dino.xex differ diff --git a/intro/tech_diff.asm b/intro/tech_diff.asm index 327dcb1..1a931f6 100644 --- a/intro/tech_diff.asm +++ b/intro/tech_diff.asm @@ -27,6 +27,16 @@ leet_anim lda CONSOL cmp #7 bne leet_end + ; check keyboard + lda SKSTAT + cmp #$f7 ; SHIFT + beq leet_end + cmp #$ff + bne leet_end + lda TRIG0 + beq leet_end + + mwa #pre_screen temp_w mwa #leet_screen temp_w3 ldy #0 @@ -39,6 +49,7 @@ leet_anim cmp #"z" bcs next_letter ;letter is leetable + beq next_letter sec sbc #"a" tay ;save the letter @@ -60,6 +71,18 @@ next_letter jmp @- leet_end + ; wait for releasing keyz +@ lda CONSOL + cmp #7 + bne @- + ; check keyboard +@ lda SKSTAT + cmp #$f7 ; SHIFT + beq @- + cmp #$ff + bne @- +@ lda TRIG0 + beq @- rts DL_pre @@ -90,10 +113,9 @@ leet_speek1 leet_speek2 dta "ABCDEFGHIJKLMNOPQRSTUVWXYZ" leet_speek3 - dta "4&[]eF9-|jk_mn0p@r57uvw*y2" + dta "4&[)eF9-|jk_mn0p@r57uvw*y2" leet_speek4 - ;dta "^b([E " - dta "^b(]",$5b,$41,"gh1",$4c+$80,"k",$4b+$80,"M\",$54,$49+$80,"q",$51,"s",$57,"uvwxyz" + dta "^b(>",$5b,$41,"gh1",$4c+$80,"k",$4b+$80,"M\",$54,$49+$80,"q",$51,"5",$57,"uvwxyz" leet_speeks_l .by