Lines Matching +full:u +full:- +full:boot

1 \ Copyright (c) 2006-2015 Devin Teske <dteske@FreeBSD.org>
26 marker task-menu-commands.4th
28 include /boot/menusets.4th
37 also menu-namespace also menu-command-helpers
40 \ Boot
43 : init_boot ( N -- N )
45 s" boot_single" getenv -1 <> if
46 drop ( n n c-addr -- n n ) \ unused
47 toggle_menuitem ( n n -- n n )
57 \ Alternate Boot
60 : init_altboot ( N -- N )
62 s" boot_single" getenv -1 <> if
63 drop ( n c-addr -- n ) \ unused
64 toggle_menuitem ( n -- n )
73 : altboot ( N -- NOTREACHED )
74 s" boot_single" 2dup getenv -1 <> if
75 drop ( c-addr/u c-addr -- c-addr/u ) \ unused
76 unsetenv ( c-addr/u -- )
78 2drop ( c-addr/u -- ) \ unused
81 0 boot ( state -- )
88 : acpi_enable ( -- )
94 : acpi_disable ( -- )
100 : toggle_acpi ( N -- N TRUE )
102 \ Make changes effective _before_ calling menu-redraw
110 menu-redraw
119 : safemode_enabled? ( -- flag )
120 s" kern.smp.disabled" getenv -1 <> dup if
121 swap drop ( c-addr flag -- flag )
125 : safemode_enable ( -- )
134 : safemode_disable ( -- )
143 : init_safemode ( N -- N )
145 toggle_menuitem ( n -- n )
149 : toggle_safemode ( N -- N TRUE )
160 menu-redraw
169 : singleuser_enabled? ( -- flag )
170 s" boot_single" getenv -1 <> dup if
171 swap drop ( c-addr flag -- flag )
175 : singleuser_enable ( -- )
179 : singleuser_disable ( -- )
183 : init_singleuser ( N -- N )
185 toggle_menuitem ( n -- n )
189 : toggle_singleuser ( N -- N TRUE )
191 menu-redraw
205 \ Verbose Boot
208 : verbose_enabled? ( -- flag )
209 s" boot_verbose" getenv -1 <> dup if
210 swap drop ( c-addr flag -- flag )
214 : verbose_enable ( -- )
218 : verbose_disable ( -- )
222 : init_verbose ( N -- N )
224 toggle_menuitem ( n -- n )
228 : toggle_verbose ( N -- N TRUE )
230 menu-redraw
247 : goto_prompt ( N -- N FALSE )
253 ." or type `boot' and press ENTER to start FreeBSD." cr
263 : init_cyclestate ( N K -- N )
264 over cycle_stateN ( n k -- n k addr )
266 tuck @ ( n k addr -- n addr k c )
267 over <> ( n addr k c -- n addr k 0|-1 )
269 rot ( n addr k -- addr k n )
271 swap rot ( addr k n -- n k addr )
273 2drop ( n k addr -- n )
280 : init_kernel ( N -- N )
281 kernel_state @ ( n -- n k )
282 init_cyclestate ( n k -- n )
285 : activate_kernel ( N -- N )
286 dup cycle_stateN @ ( n -- n n2 )
287 dup kernel_state ! ( n n2 -- n n2 ) \ copy for re-initialization
288 48 + ( n n2 -- n n2' ) \ kernel_state to ASCII num
291 36 +c! ( n n2 c-addr/u -- n c-addr/u ) \ 'N' to ASCII num
292 evaluate ( n c-addr/u -- n ) \ sets $kernel to full kernel-path
295 : cycle_kernel ( N -- N TRUE )
298 menu-redraw \ redraw menu
306 : init_root ( N -- N )
307 root_state @ ( n -- n k )
308 init_cyclestate ( n k -- n )
311 : activate_root ( N -- N )
312 dup cycle_stateN @ ( n -- n n2 )
313 dup root_state ! ( n n2 -- n n2 ) \ copy for re-initialization
314 48 + ( n n2 -- n n2' ) \ root_state to ASCII num
317 30 +c! ( n n2 c-addr/u -- n c-addr/u ) \ 'N' to ASCII num
318 evaluate ( n c-addr/u -- n ) \ sets $root to full kernel-path
321 : cycle_root ( N -- N TRUE )
324 menu-redraw \ redraw menu
332 : goto_menu ( N M -- N TRUE )
333 menu-unset
334 menuset-loadsetnum ( n m -- n )
335 menu-redraw
343 : set_default_boot_options ( N -- N TRUE )
352 \ Set boot environment defaults
355 : init_bootenv ( -- )
370 print_version \ print version string (bottom-right; see version.4th)
371 draw-beastie \ Draw FreeBSD logo at right (in beastie.4th)
372 draw-brand \ Draw brand.4th logo at top (in brand.4th)
373 menu-init \ Initialize menu and draw bounding box (in menu.4th)
377 \ Select a boot environment
380 : set_bootenv ( N -- N TRUE )
384 free-module-options
385 s" /boot/defaults/loader.conf" read-conf
386 s" /boot/loader.conf" read-conf
387 s" /boot/loader.conf.local" read-conf
390 menu-redraw
395 \ Switch to the next page of boot environments
398 : set_be_page ( N -- N TRUE )
399 s" zfs_be_currpage" getenv dup -1 = if
403 >number ( ud caddr/u -- ud' caddr'/u' ) \ convert string to numbers
405 1 um/mod ( ud u1 -- u2 u3 ) \ convert double ud' to single u3' and remainder u2
406 swap drop ( ud2 u3 -- u3 ) \ drop the remainder u2