junglejourney

changeset 109:f8ab64d9d70c

Created a routine for OSBYTE 19 calls to try and save some space. Adjusted the behaviour of the boomerang to make it easier to aim.
author David Boddie <david@boddie.org.uk>
date Sun Sep 04 17:51:59 2011 +0200
parents b20becc97203
children 66895d303b5f
files mapcode.oph
diffstat 1 files changed, 17 insertions(+), 18 deletions(-) [+]
line diff
     1.1 --- a/mapcode.oph	Sun Sep 04 15:18:19 2011 +0200
     1.2 +++ b/mapcode.oph	Sun Sep 04 17:51:59 2011 +0200
     1.3 @@ -2902,7 +2902,7 @@
     1.4      cmp #8
     1.5      bpl move_projectile_left_exit
     1.6  
     1.7 -    ldx $3d09       ; dy
     1.8 +    ldx $3d05               ; player's dx
     1.9      ora boomerang_horizontal,x
    1.10      sta $3d07
    1.11      clc
    1.12 @@ -2942,7 +2942,7 @@
    1.13      sec
    1.14      rts
    1.15  
    1.16 -boomerang_horizontal: .byte $28, $28, $28, $38, $38, $38
    1.17 +boomerang_horizontal: .byte $28, $28, $38, $38
    1.18  
    1.19  move_projectile_right:
    1.20  
    1.21 @@ -3022,7 +3022,7 @@
    1.22      cmp #8
    1.23      bpl move_projectile_right_exit
    1.24  
    1.25 -    ldx $3d09       ; dy
    1.26 +    ldx $3d05               ; player's dx
    1.27      ora boomerang_horizontal,x
    1.28      sta $3d07
    1.29      clc
    1.30 @@ -3127,7 +3127,7 @@
    1.31      cmp #8
    1.32      bpl move_projectile_up_exit
    1.33  
    1.34 -    ldx $3d0b       ; dx
    1.35 +    ldx $3d03               ; player's dy
    1.36      ora boomerang_vertical,x
    1.37      sta $3d07
    1.38      clc
    1.39 @@ -3167,7 +3167,7 @@
    1.40      sec
    1.41      rts
    1.42  
    1.43 -boomerang_vertical: .byte $08, $08, $18, $18
    1.44 +boomerang_vertical: .byte $08, $08, $08, $18, $18, $18
    1.45  
    1.46  move_projectile_down:
    1.47  
    1.48 @@ -3244,7 +3244,7 @@
    1.49      cmp #8
    1.50      bpl move_projectile_down_exit
    1.51  
    1.52 -    ldx $3d0b       ; dx
    1.53 +    ldx $3d03               ; player's dy
    1.54      ora boomerang_vertical,x
    1.55      sta $3d07
    1.56      clc
    1.57 @@ -4551,8 +4551,7 @@
    1.58          sta $72
    1.59  
    1.60          show_title_wait_inner_loop:
    1.61 -        lda #19
    1.62 -        jsr $fff4
    1.63 +        jsr wait_for_vsync
    1.64  
    1.65          dec $3df5
    1.66          beq show_title_wait_loop
    1.67 @@ -4565,6 +4564,11 @@
    1.68  
    1.69      rts
    1.70  
    1.71 +wait_for_vsync:
    1.72 +
    1.73 +    lda #19
    1.74 +    jmp $fff4   ; optimise away the rts
    1.75 +
    1.76  game_over_vdu_bytes: .byte 31,4,14, 17,2, "The journey", 31,6,15, "is over"
    1.77  
    1.78  show_game_over:
    1.79 @@ -4581,8 +4585,7 @@
    1.80      sta $3df5
    1.81      show_game_over_delay_loop:
    1.82  
    1.83 -        lda #19
    1.84 -        jsr $fff4
    1.85 +        jsr wait_for_vsync
    1.86          dec $3df5
    1.87          bne show_game_over_delay_loop
    1.88  
    1.89 @@ -4686,8 +4689,7 @@
    1.90  
    1.91      show_end_of_level_bonus_loop:
    1.92  
    1.93 -        lda #19
    1.94 -        jsr $fff4
    1.95 +        jsr wait_for_vsync
    1.96  
    1.97          clc
    1.98          lda $3dfe
    1.99 @@ -4753,8 +4755,7 @@
   1.100  
   1.101      show_end_of_level_delay_loop1:
   1.102  
   1.103 -        lda #19
   1.104 -        jsr $fff4
   1.105 +        jsr wait_for_vsync
   1.106  
   1.107          dec $3df5
   1.108          bne show_end_of_level_delay_loop1
   1.109 @@ -4777,8 +4778,7 @@
   1.110  
   1.111      show_end_of_level_delay_loop2:
   1.112  
   1.113 -        lda #19
   1.114 -        jsr $fff4
   1.115 +        jsr wait_for_vsync
   1.116  
   1.117          dec $3df5
   1.118          bne show_end_of_level_delay_loop2
   1.119 @@ -4853,8 +4853,7 @@
   1.120  
   1.121      show_complete_game_delay_loop:
   1.122  
   1.123 -        lda #19
   1.124 -        jsr $fff4
   1.125 +        jsr wait_for_vsync
   1.126  
   1.127          dec $3df5
   1.128          bne show_complete_game_no_message