video: scrolling does now not wrap around the screen anymore
authorLukas Krickl <lukas@krickl.dev>
Sat, 1 Nov 2025 11:20:34 +0000 (12:20 +0100)
committerLukas Krickl <lukas@krickl.dev>
Sat, 1 Nov 2025 11:20:34 +0000 (12:20 +0100)
src/video.s

index f421c6cbaa846c0b81ca79d5765370a6b3531e43..490287724c82e354a5155f7ca6e0ec5ae7af8a1e 100644 (file)
@@ -161,11 +161,33 @@ video_wait_n_frames:
        ; but does not allow camera to wrap
 scroll_center_player:
        ld a, [player+act_pos_y]
-       sub a, 32
+       sub a, 16*3
+       jr nc, @no_y_underflow REL
+               ; on underflow we don't scroll
+               xor a, a
+@no_y_underflow:
+       cp a, 0x90
+       jr c, @no_y_overflow REL
+               ; on overflow don't scroll further
+               ld a, 0x90
+@no_y_overflow:
+@sety:
        ld [scroll_y], a
 
+
        ld a, [player+act_pos_x]
-       sub a, 32
+       sub a, 16*4
+       jr nc, @no_x_underflow REL
+               ; on underflow we don't scroll
+               xor a, a
+@no_x_underflow:
+       
+       cp a, 0x60
+       jr c, @no_x_overflow REL
+               ; on overflow don't scroll further
+               ld a, 0x60
+@no_x_overflow:
+@setx:
        ld [scroll_x], a
        ret