# Note: this hides the MSX keys 'SELECT' and 'STOP'
78
bind_default F6 tas::load_replay_slot
79
bind_default F7 tas::open_select_slot_menu
80
bind_default F8 tas::save_replay_slot
81
82
# Set up frame advance/reverse
83
bind_default END -repeat next_frame
84
bind_default SCROLLLOCK -repeat prev_frame
85
}
86
87
procleave_tas_mode{}{
88
89
variable old_inputdelay
90
91
# restore inputdelay
92
set ::inputdelay $old_inputdelay
93
94
if{[osd exists framecount]}{
95
toggle_frame_counter
96
}
97
if{[osd exists lag_counter]}{
98
toggle_lag_counter
99
}
100
if{[osd exists cursors]}{
101
toggle_cursors
102
}
103
if{[osd exists movielength]}{
104
toggle_movie_length_display
105
}
106
107
# Remove reverse slot stuff
108
unbind_default F6
109
unbind_default F7
110
unbind_default F8
111
112
# Remove frame advance/reverse
113
unbind_default END
114
unbind_default SCROLLLOCK
115
}
116
117
register"tas"[namespace code enter_tas_mode]\
118
[namespace code leave_tas_mode]\
119
"Mode for doing Tool Assisted Speedruns, with TAS widgets and easy ways to save replays."
120
121
122
123
# Create setting (uses info from registered modes above)
124
125
set help_text "This setting switches between different openMSX modes. A mode is a set of settings (mostly keybindings, but also OSD widgets that are activated) that are most suitable for a certain task. Currently these modes exist:"
126
foreach name [lsort[dict keys $modes_info]]{
127
append help_text "\n$name: [dict get $modes_info$name description]"