comparison menu.s68 @ 1438:e2bd03ed3190

Allow reloading current ROM with a hotkey (default F5) and allow locking on a cartridge via menu
author Michael Pavone <pavone@retrodev.com>
date Wed, 23 Aug 2017 21:18:17 -0700
parents 9a3e003bdcb3
children c3c3b65f17aa
comparison
equal deleted inserted replaced
1437:da72344af3ff 1438:e2bd03ed3190
167 move.w #($9700 + (\1) >> 17 & $7F | (\2)), (a1) 167 move.w #($9700 + (\1) >> 17 & $7F | (\2)), (a1)
168 endm 168 endm
169 169
170 dir_buffer equ $100000 170 dir_buffer equ $100000
171 menu_port equ $180000 171 menu_port equ $180000
172 load_rom_port equ (menu_port+2*4)
173 lock_on_port equ (menu_port+8*4)
172 174
173 MAX_DISPLAY equ 24 175 MAX_DISPLAY equ 24
174 176
175 rsset $FFFF8000 177 rsset $FFFF8000
176 x_pos rs.w 1 178 x_pos rs.w 1
181 page_pointers rs.l 1024 183 page_pointers rs.l 1024
182 mouse_sprite rs.l 1 184 mouse_sprite rs.l 1
183 menu_functions rs.l 1 185 menu_functions rs.l 1
184 cursor_show_fun rs.l 1 186 cursor_show_fun rs.l 1
185 special_click rs.l 1 187 special_click rs.l 1
188 rom_load_addr rs.l 1
186 mouse_x rs.w 1 189 mouse_x rs.w 1
187 selection_top rs.w 1 190 selection_top rs.w 1
188 selection_bot rs.w 1 191 selection_bot rs.w 1
189 selection_mask rs.w 1 192 selection_mask rs.w 1
190 num_sprites rs.b 1 193 num_sprites rs.b 1
368 lea page_index.w, a2 371 lea page_index.w, a2
369 move.l (0, a2, d0.w), a2 372 move.l (0, a2, d0.w), a2
370 tst.b (-1, a2) 373 tst.b (-1, a2)
371 bne enter_dir 374 bne enter_dir
372 ;regular file 375 ;regular file
373 lea menu_port+8, a3 376 move.l rom_load_addr.w, a3
374 move.l a2, (a3) 377 move.l a2, (a3)
375 378
376 addq #6, a7 379 addq #6, a7
377 bra show_pause_menu 380 bra show_pause_menu
378 .select_menu_button: 381 .select_menu_button:
903 move.l #pause_menu_func, menu_functions.w 906 move.l #pause_menu_func, menu_functions.w
904 lea pause_menu(pc), a5 907 lea pause_menu(pc), a5
905 bsr draw_menu 908 bsr draw_menu
906 bra gamepad_setup 909 bra gamepad_setup
907 910
911 lock_on:
912 move.l #lock_on_port, rom_load_addr.w
913 bra menu_common
908 menu_start: 914 menu_start:
915 move.l #load_rom_port, rom_load_addr.w
916 menu_common:
909 moveq #0, d0 917 moveq #0, d0
910 ;init vertical scroll RAM 918 ;init vertical scroll RAM
911 vdpaccess $0, VDP_VSRAM_WRITE 919 vdpaccess $0, VDP_VSRAM_WRITE
912 move.w d0, (a0) 920 move.w d0, (a0)
913 move.w d0, (a0) 921 move.w d0, (a0)
1410 dc.l show_main_menu 1418 dc.l show_main_menu
1411 1419
1412 pause_menu: 1420 pause_menu:
1413 dc.b "Resume", 0 1421 dc.b "Resume", 0
1414 dc.b "Load ROM", 0 1422 dc.b "Load ROM", 0
1423 dc.b "Lock On", 0
1415 dc.b "Save State", 0 1424 dc.b "Save State", 0
1416 dc.b "Load State", 0 1425 dc.b "Load State", 0
1417 dc.b "Exit", 0 1426 dc.b "Exit", 0
1418 dc.b 0 1427 dc.b 0
1419 1428
1420 align 1 1429 align 1
1421 pause_menu_func 1430 pause_menu_func
1422 dc.l resume 1431 dc.l resume
1423 dc.l menu_start 1432 dc.l menu_start
1433 dc.l lock_on
1424 dc.l save_state 1434 dc.l save_state
1425 dc.l load_state 1435 dc.l load_state
1426 dc.l exit 1436 dc.l exit
1427 1437
1428 rom_end: 1438 rom_end: