Mercurial > repos > blastem
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: |