changeset 960:0abfecaaf5c8

Get cursor behaving properly in save state slot list
author Michael Pavone <pavone@retrodev.com>
date Sun, 17 Apr 2016 20:31:22 -0700
parents 3b270fc43ed4
children 750995b587a0
files menu.s68
diffstat 1 files changed, 29 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/menu.s68	Sat Apr 16 13:28:43 2016 -0700
+++ b/menu.s68	Sun Apr 17 20:31:22 2016 -0700
@@ -191,6 +191,7 @@
 mouse_shown    rs.b 1
 last_mbuttons  rs.b 1
 num_menu       rs.b 1
+num_slots      rs.b 1
 
 
 int_6:
@@ -253,6 +254,8 @@
 handle_pad_buttons:
 	tst.b num_menu.w
 	bne handle_buttons_menu
+	tst.b num_slots.w
+	bne handle_buttons_save
 	moveq #16, d2
 
 
@@ -274,6 +277,9 @@
 handle_buttons_menu
 	moveq #48, d2
 	bra buttons_no_leftright
+handle_buttons_save
+	moveq #32, d2
+	bra buttons_no_leftright
 
 down:
 	
@@ -282,6 +288,8 @@
 	add.b (selected).w, d0
 	tst.b num_menu.w
 	bne .menu
+	tst.b num_slots.w
+	bne .slots
 	move.w d0, d1
 	add.w d1, d1
 	add.w d1, d1
@@ -298,6 +306,10 @@
 	cmp.b num_menu.w, d0
 	beq handle_done
 	bra .do_move
+.slots:
+	cmp.b num_slots.w, d0
+	beq handle_done
+	bra .do_move
 	
 up:
 	;check if we are already at the top of the page
@@ -922,7 +934,7 @@
 	lea about_menu(pc), a5
 	bsr draw_menu
 .wait
-	stop #2500
+	stop #$2500
 	bra .wait
 	
 exit:
@@ -934,6 +946,12 @@
 	bra show_pause_menu
 	
 show_save_slots:
+	move.w #(256+26), sprite_list.w
+	move.w #(256+26), (sprite_list+8).w
+	move.w #(128+8), (sprite_list+6).w
+	move.w #(128+320-24), (sprite_list+6+8).w
+	move.b #0, selected.w
+	move.b #0, num_menu.w
 	lea dir_buffer, a6
 	lea menu_port+16, a3
 	move.l a6, (a3)
@@ -943,27 +961,32 @@
 	bsr clear_screen
 	moveq #0, d0
 	
+	moveq #0, d6
 	moveq #2, d7
 .slotloop
 	tst.b (a6)
 	beq .done
-	moveq #2, d1
+	addq #1, d6
+	moveq #4, d1
 	move.w d7, d2
 	bsr print_string_fixed
 	addq #2, d7
 	bra .slotloop
 .done
+	move.b d6, num_slots.w
 	rts
 	
 save_state:
 	bsr show_save_slots
-.forever
-	bra .forever
+.wait
+	stop #$2500
+	bra .wait
 	
 load_state:
 	bsr show_save_slots
-.forever
-	bra .forever
+.wait
+	stop #$2500
+	bra .wait
 	
 about_text:
 	dc.b "BlastEm v0.4.0", 0