comparison menu.s68 @ 961:750995b587a0

Save State menu option is now fully functional. Load state sort of works, but is mostly broken.
author Michael Pavone <pavone@retrodev.com>
date Sun, 17 Apr 2016 23:50:41 -0700
parents 0abfecaaf5c8
children e2d7067ea2d8
comparison
equal deleted inserted replaced
960:0abfecaaf5c8 961:750995b587a0
190 mouse_buf rs.b 3 190 mouse_buf rs.b 3
191 mouse_shown rs.b 1 191 mouse_shown rs.b 1
192 last_mbuttons rs.b 1 192 last_mbuttons rs.b 1
193 num_menu rs.b 1 193 num_menu rs.b 1
194 num_slots rs.b 1 194 num_slots rs.b 1
195 port_off rs.b 1
195 196
196 197
197 int_6: 198 int_6:
198 dmasrc sprite_list, DMA_SRC_68K 199 dmasrc sprite_list, DMA_SRC_68K
199 ;set DMA length 200 ;set DMA length
351 move.b (selected).w, d0 352 move.b (selected).w, d0
352 add.w d0, d0 353 add.w d0, d0
353 add.w d0, d0 354 add.w d0, d0
354 tst.b num_menu.w 355 tst.b num_menu.w
355 bne .select_menu_button 356 bne .select_menu_button
357 tst.b num_slots.w
358 bne .select_save_slot
356 lea page_index.w, a2 359 lea page_index.w, a2
357 move.l (0, a2, d0.w), a2 360 move.l (0, a2, d0.w), a2
358 tst.b (-1, a2) 361 tst.b (-1, a2)
359 bne enter_dir 362 bne enter_dir
360 ;regular file 363 ;regular file
366 .select_menu_button: 369 .select_menu_button:
367 movea.l menu_functions.w, a2 370 movea.l menu_functions.w, a2
368 move.l (0, a2, d0.w), a2 371 move.l (0, a2, d0.w), a2
369 addq #6, a7 372 addq #6, a7
370 jmp (a2) 373 jmp (a2)
374 .select_save_slot:
375 lea menu_port, a3
376 moveq #0, d0
377 move.b port_off.w, d0
378 add.w d0, a3
379 move.b selected.w, d0
380 move.l d0, (a3)
381 addq #6, a7
382 jmp show_pause_menu
383
371 enter_dir: 384 enter_dir:
372 lea menu_port+4, a3 385 lea menu_port+4, a3
373 move.l a2, (a3) 386 move.l a2, (a3)
374 .wait_complete 387 .wait_complete
375 tst.w (a3) 388 tst.w (a3)
975 .done 988 .done
976 move.b d6, num_slots.w 989 move.b d6, num_slots.w
977 rts 990 rts
978 991
979 save_state: 992 save_state:
993 move.b #(5*4), port_off.w
980 bsr show_save_slots 994 bsr show_save_slots
981 .wait 995 .wait
982 stop #$2500 996 stop #$2500
983 bra .wait 997 bra .wait
984 998
985 load_state: 999 load_state:
1000 move.b #(6*4), port_off.w
986 bsr show_save_slots 1001 bsr show_save_slots
987 .wait 1002 .wait
988 stop #$2500 1003 stop #$2500
989 bra .wait 1004 bra .wait
990 1005