diff options
author | Alexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com> | 2021-04-19 17:22:31 +0300 |
---|---|---|
committer | Alexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com> | 2021-04-19 17:22:31 +0300 |
commit | 7d75992caafa6fb9869017cbd02ab02652ff75e2 (patch) | |
tree | dfcb2d3a23444dd49bb264ca16649ff599e68350 /buttons.asm | |
parent | 4a1362304809dac8842ad7bd98a485015a9397de (diff) |
Fixed screen wrapping when using separators
Diffstat (limited to 'buttons.asm')
-rw-r--r-- | buttons.asm | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/buttons.asm b/buttons.asm index 90a29d9..50f3907 100644 --- a/buttons.asm +++ b/buttons.asm @@ -294,11 +294,15 @@ check_separator_down: lda <SELECTED_GAME cmp #GAMES_COUNT & $FF bne check_separator_down + .if GAMES_COUNT < WRAP_GAMES lda #0 sta <SELECTED_GAME sta <SELECTED_GAME+1 sta <SCROLL_LINES_TARGET sta <SCROLL_LINES_TARGET+1 + .else + jsr screen_wrap_down + .endif jmp check_separator_down check_separator_down_end: rts @@ -319,13 +323,14 @@ check_separator_up: sbc #0 sta <SELECTED_GAME+1 bpl check_separator_up - lda #GAMES_COUNT & $FF - sec - sbc #1 + .if GAMES_COUNT < WRAP_GAMES + lda #(GAMES_COUNT - 1) & $FF sta <SELECTED_GAME - lda #(GAMES_COUNT >> 8) & $FF - sbc #0 + lda #((GAMES_COUNT - 1) >> 8) & $FF sta <SELECTED_GAME+1 + .else + jsr screen_wrap_up + .endif jmp check_separator_up check_separator_up_end: rts |