changeset 958:83532f944e3b

Get slot list displaying in "Save State" and "Load State" menu items
author Michael Pavone <pavone@retrodev.com>
date Sat, 16 Apr 2016 13:07:03 -0700
parents 1618d3676a35
children 3b270fc43ed4
files menu.c menu.s68
diffstat 2 files changed, 32 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/menu.c	Fri Apr 15 23:57:50 2016 -0700
+++ b/menu.c	Sat Apr 16 13:07:03 2016 -0700
@@ -64,8 +64,8 @@
 				break;
 			}
 		}
-		src[1] = *cur;
-		*src = cur[1];
+		dst[1] = *cur;
+		*dst = cur[1];
 	}
 }
 
@@ -256,15 +256,15 @@
 					modtime = get_modification_time(fname);
 					free(fname);
 					if (modtime) {
-						cur += strftime(cur, end-cur, "Quick   - %c", localtime_r(&modtime, &ltime));
-					} else if ((end-cur) > strlen("Quick   - EMPTY")){
-						cur += strlen(strcpy(cur, "Quick   - EMPTY"));
+						cur += strftime(cur, end-cur, "Quick  - %c", localtime_r(&modtime, &ltime));
+					} else if ((end-cur) > strlen("Quick  - EMPTY")){
+						cur += strlen(strcpy(cur, "Quick  - EMPTY"));
 					}
 					//advance past the null terminator for this entry
 					cur++;
 					if (cur < end) {
 						//terminate the list
-						*cur = 0;
+						*(cur++) = 0;
 					}
 				}
 			} else {
--- a/menu.s68	Fri Apr 15 23:57:50 2016 -0700
+++ b/menu.s68	Sat Apr 16 13:07:03 2016 -0700
@@ -933,16 +933,37 @@
 	move.l #2, menu_port+12
 	bra show_pause_menu
 	
+show_save_slots:
+	lea dir_buffer, a6
+	lea menu_port+16, a3
+	move.l a6, (a3)
+.waitdone:
+	tst.w (a3)
+	bne .waitdone
+	bsr clear_screen
+	moveq #0, d0
+	
+	moveq #2, d7
+.slotloop
+	tst.b (a6)
+	beq .done
+	moveq #2, d1
+	move.w d7, d2
+	bsr print_string_fixed
+	addq #2, d7
+	bra .slotloop
+.done
+	rts
+	
 save_state:
-	;TODO: Implement me
-	move.l #0, menu_port+16
+	bsr show_save_slots
 .forever
 	bra .forever
 	
 load_state:
-	;TODO: Implement me
-	move.l #0, menu_port+16
-	bra save_state
+	bsr show_save_slots
+.forever
+	bra .forever
 	
 about_text:
 	dc.b "BlastEm v0.4.0", 0