Print this page
11581 'debug' loader option is a little obscure
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Rob Johnston <rob.johnston@joyent.com>
*** 22,31 ****
--- 22,32 ----
\ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
\ SUCH DAMAGE.
\
\ Copyright 2015 Toomas Soome <tsoome@me.com>
\ Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+ \ Copyright 2019 Joyent, Inc.
marker task-menu-commands.4th
include /boot/forth/menusets.4th
*** 34,46 ****
variable osconsole_state
variable acpi_state
variable kernel_state
variable root_state
variable kmdb_state
! variable debug_state
0 kmdb_state !
! 0 debug_state !
0 osconsole_state !
0 acpi_state !
0 kernel_state !
0 root_state !
--- 35,47 ----
variable osconsole_state
variable acpi_state
variable kernel_state
variable root_state
variable kmdb_state
! variable drop_into_kmdb_state
0 kmdb_state !
! 0 drop_into_kmdb_state !
0 osconsole_state !
0 acpi_state !
0 kernel_state !
0 root_state !
*** 198,223 ****
s" set boot_kmdb=YES" evaluate
;
: kmdb_disable ( -- )
s" boot_kmdb" unsetenv
! s" boot_debug" unsetenv
;
: init_kmdb ( N -- N )
! dup kmdb_state ! \ store entry number for kmdb+debug
kmdb_enabled? if
toggle_menuitem ( n -- n )
then
;
: toggle_kmdb ( N -- N TRUE )
toggle_menuitem
dup toggle_stateN @ 0= if ( kmdb is not set )
! debug_state @ if ( debug is set? )
! debug_state @ toggle_stateN @ if ( debug is enabled? )
! debug_state @ toggle_menuitem drop
then
then
then
menu-redraw
--- 199,224 ----
s" set boot_kmdb=YES" evaluate
;
: kmdb_disable ( -- )
s" boot_kmdb" unsetenv
! s" boot_drop_into_kmdb" unsetenv
;
: init_kmdb ( N -- N )
! dup kmdb_state ! \ store entry number for kmdb+drop_into_kmdb
kmdb_enabled? if
toggle_menuitem ( n -- n )
then
;
: toggle_kmdb ( N -- N TRUE )
toggle_menuitem
dup toggle_stateN @ 0= if ( kmdb is not set )
! drop_into_kmdb_state @ if ( drop_into_kmdb is set? )
! drop_into_kmdb_state @ toggle_stateN @ if ( drop_into_kmdb is enabled? )
! drop_into_kmdb_state @ toggle_menuitem drop
then
then
then
menu-redraw
*** 231,281 ****
TRUE \ loop menu again
;
\
! \ kmdb + debug
\
! : debug_disable ( -- )
! s" boot_debug" unsetenv
;
! : debug_enabled? ( -- flag )
! \ -d is only allowed with -k
! s" boot_debug" getenv -1 <> kmdb_enabled? and dup if
swap drop ( c-addr flag -- flag )
else
! debug_disable \ make sure env is not set
then
;
! : debug_enable ( -- )
kmdb_enable
! s" set boot_debug=YES" evaluate
;
! : init_debug ( N -- N )
! dup debug_state ! \ store entry number for kmdb
! kmdb_enabled? debug_enabled? and if
toggle_menuitem ( n -- n )
then
;
! : toggle_debug ( N -- N TRUE )
toggle_menuitem
kmdb_enabled? 0= if
kmdb_state @ toggle_menuitem drop
then
menu-redraw
\ Now we're going to make the change effective
dup toggle_stateN @ 0= if
! debug_disable
else
! debug_enable
then
TRUE \ loop menu again
;
--- 232,282 ----
TRUE \ loop menu again
;
\
! \ drop into kmdb
\
! : drop_into_kmdb_disable ( -- )
! s" boot_drop_into_kmdb" unsetenv
;
! : drop_into_kmdb_enabled? ( -- flag )
! \ -d is only allowed with -k
! s" boot_drop_into_kmdb" getenv -1 <> kmdb_enabled? and dup if
swap drop ( c-addr flag -- flag )
else
! drop_into_kmdb_disable \ make sure env is not set
then
;
! : drop_into_kmdb_enable ( -- )
kmdb_enable
! s" set boot_drop_into_kmdb=YES" evaluate
;
! : init_drop_into_kmdb ( N -- N )
! dup drop_into_kmdb_state ! \ store entry number for kmdb
! kmdb_enabled? drop_into_kmdb_enabled? and if
toggle_menuitem ( n -- n )
then
;
! : toggle_drop_into_kmdb ( N -- N TRUE )
toggle_menuitem
kmdb_enabled? 0= if
kmdb_state @ toggle_menuitem drop
then
menu-redraw
\ Now we're going to make the change effective
dup toggle_stateN @ 0= if
! drop_into_kmdb_disable
else
! drop_into_kmdb_enable
then
TRUE \ loop menu again
;
*** 521,531 ****
s" acpi-user-options" unsetenv
s" boot-args" unsetenv
s" boot_ask" unsetenv
singleuser_disable
verbose_disable
! kmdb_disable \ disables debug as well
reconfigure_disable
;
: set_default_boot_options ( N -- N TRUE )
unset_boot_options
--- 522,532 ----
s" acpi-user-options" unsetenv
s" boot-args" unsetenv
s" boot_ask" unsetenv
singleuser_disable
verbose_disable
! kmdb_disable \ disables drop_into_kmdb as well
reconfigure_disable
;
: set_default_boot_options ( N -- N TRUE )
unset_boot_options