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>


 425                 then
 426 
 427                 rot 1+ dup [char] 8 > if
 428                         -rot 2drop TRUE ( break )
 429                 else
 430                         -rot FALSE
 431                 then
 432         until
 433         2drop ( x y -- )
 434 ;
 435 
 436 \ Illumos kernel acpi-user-options has following values:
 437 \ default:      0 - system will enable acpi based on bios date
 438 \ on:           1 - acpi is set on
 439 \ off:          2 - acpi is set off
 440 \ madt:         4 - use only MADT
 441 \ legacy:       8 - use legacy mode
 442 
 443 : acpi-captions ( N -- )
 444   \ first entry
 445   dup s" [A]CPI.... default" rot 48 menu_caption[x][y] setenv
 446   dup s" ^[1mA^[mCPI.... ^[32;7mdefault^[m" rot 48 ansi_caption[x][y] setenv
 447 
 448   dup s" [A]CPI........ On" rot 49 menu_caption[x][y] setenv
 449   dup s" ^[1mA^[mCPI........ ^[34;1mOn^[m" rot 49 ansi_caption[x][y] setenv
 450 
 451   dup s" [A]CPI........ Off" rot 50 menu_caption[x][y] setenv
 452   dup s" ^[1mA^[mCPI........ ^[34;1mOff^[m" rot 50 ansi_caption[x][y] setenv
 453 
 454   dup s" [A]CPI....... MADT" rot 51 menu_caption[x][y] setenv
 455   dup s" ^[1mA^[mCPI....... ^[34;1mMADT^[m" rot 51 ansi_caption[x][y] setenv
 456 
 457   dup s" [A]CPI..... Legacy" rot 52 menu_caption[x][y] setenv
 458   s" ^[1mA^[mCPI..... ^[34;1mLegacy^[m" rot 52 ansi_caption[x][y] setenv
 459 ;
 460 
 461 \ Illumos console has following values:
 462 \ text, ttya, ttyb, ttyc, ttyd
 463 
 464 : osconsole-captions ( N -- )
 465   \ first entry
 466   dup s" Os[C]onsole.. text" rot 48 menu_caption[x][y] setenv
 467   dup s" Os^[1mC^[monsole.. ^[32;7mtext^[m" rot 48 ansi_caption[x][y] setenv
 468 
 469   dup s" Os[C]onsole.. ttya" rot 49 menu_caption[x][y] setenv
 470   dup s" Os^[1mC^[monsole.. ^[34;1mttya^[m" rot 49 ansi_caption[x][y] setenv
 471 
 472   dup s" Os[C]onsole.. ttyb" rot 50 menu_caption[x][y] setenv
 473   dup s" Os^[1mC^[monsole.. ^[34;1mttyb^[m" rot 50 ansi_caption[x][y] setenv
 474 
 475   dup s" Os[C]onsole.. ttyc" rot 51 menu_caption[x][y] setenv
 476   dup s" Os^[1mC^[monsole.. ^[34;1mttyc^[m" rot 51 ansi_caption[x][y] setenv
 477 
 478   dup s" Os[C]onsole.. ttyd" rot 52 menu_caption[x][y] setenv
 479   s" Os^[1mC^[monsole.. ^[34;1mttyd^[m" rot 52 ansi_caption[x][y] setenv
 480 ;
 481 
 482 \ This function creates the list of menu items. This function is called by the
 483 \ menu-display function. You need not call it directly.
 484 \
 485 : menu-create ( -- )
 486 
 487         \ Print the frame caption at (x,y)
 488         s" loader_menu_title" getenv dup -1 = if
 489                 drop s" Welcome to illumos"
 490         then
 491         TRUE ( use default alignment )
 492         s" loader_menu_title_align" getenv dup -1 <> if
 493                 2dup s" left" compare-insensitive 0= if ( 1 )
 494                         2drop ( c-addr/u ) drop ( bool )
 495                         menuX @ menuY @ 1-
 496                         FALSE ( don't use default alignment )
 497                 else ( 1 ) 2dup s" right" compare-insensitive 0= if ( 2 )
 498                         2drop ( c-addr/u ) drop ( bool )
 499                         menuX @ 42 + 4 - over - menuY @ 1-




 425                 then
 426 
 427                 rot 1+ dup [char] 8 > if
 428                         -rot 2drop TRUE ( break )
 429                 else
 430                         -rot FALSE
 431                 then
 432         until
 433         2drop ( x y -- )
 434 ;
 435 
 436 \ Illumos kernel acpi-user-options has following values:
 437 \ default:      0 - system will enable acpi based on bios date
 438 \ on:           1 - acpi is set on
 439 \ off:          2 - acpi is set off
 440 \ madt:         4 - use only MADT
 441 \ legacy:       8 - use legacy mode
 442 
 443 : acpi-captions ( N -- )
 444   \ first entry
 445   dup s" [A]CPI.............. default" rot 48 menu_caption[x][y] setenv
 446   dup s" ^[1mA^[mCPI.............. ^[32;7mdefault^[m" rot 48 ansi_caption[x][y] setenv
 447 
 448   dup s" [A]CPI.............. On" rot 49 menu_caption[x][y] setenv
 449   dup s" ^[1mA^[mCPI.............. ^[34;1mOn^[m" rot 49 ansi_caption[x][y] setenv
 450 
 451   dup s" [A]CPI.............. Off" rot 50 menu_caption[x][y] setenv
 452   dup s" ^[1mA^[mCPI.............. ^[34;1mOff^[m" rot 50 ansi_caption[x][y] setenv
 453 
 454   dup s" [A]CPI.............. MADT" rot 51 menu_caption[x][y] setenv
 455   dup s" ^[1mA^[mCPI.............. ^[34;1mMADT^[m" rot 51 ansi_caption[x][y] setenv
 456 
 457   dup s" [A]CPI.............. Legacy" rot 52 menu_caption[x][y] setenv
 458   s" ^[1mA^[mCPI.............. ^[34;1mLegacy^[m" rot 52 ansi_caption[x][y] setenv
 459 ;
 460 
 461 \ Illumos console has following values:
 462 \ text, ttya, ttyb, ttyc, ttyd
 463 
 464 : osconsole-captions ( N -- )
 465   \ first entry
 466   dup s" Os[C]onsole............ text" rot 48 menu_caption[x][y] setenv
 467   dup s" Os^[1mC^[monsole............ ^[32;7mtext^[m" rot 48 ansi_caption[x][y] setenv
 468 
 469   dup s" Os[C]onsole............ ttya" rot 49 menu_caption[x][y] setenv
 470   dup s" Os^[1mC^[monsole............ ^[34;1mttya^[m" rot 49 ansi_caption[x][y] setenv
 471 
 472   dup s" Os[C]onsole............ ttyb" rot 50 menu_caption[x][y] setenv
 473   dup s" Os^[1mC^[monsole............ ^[34;1mttyb^[m" rot 50 ansi_caption[x][y] setenv
 474 
 475   dup s" Os[C]onsole............ ttyc" rot 51 menu_caption[x][y] setenv
 476   dup s" Os^[1mC^[monsole............ ^[34;1mttyc^[m" rot 51 ansi_caption[x][y] setenv
 477 
 478   dup s" Os[C]onsole............ ttyd" rot 52 menu_caption[x][y] setenv
 479   s" Os^[1mC^[monsole............ ^[34;1mttyd^[m" rot 52 ansi_caption[x][y] setenv
 480 ;
 481 
 482 \ This function creates the list of menu items. This function is called by the
 483 \ menu-display function. You need not call it directly.
 484 \
 485 : menu-create ( -- )
 486 
 487         \ Print the frame caption at (x,y)
 488         s" loader_menu_title" getenv dup -1 = if
 489                 drop s" Welcome to illumos"
 490         then
 491         TRUE ( use default alignment )
 492         s" loader_menu_title_align" getenv dup -1 <> if
 493                 2dup s" left" compare-insensitive 0= if ( 1 )
 494                         2drop ( c-addr/u ) drop ( bool )
 495                         menuX @ menuY @ 1-
 496                         FALSE ( don't use default alignment )
 497                 else ( 1 ) 2dup s" right" compare-insensitive 0= if ( 2 )
 498                         2drop ( c-addr/u ) drop ( bool )
 499                         menuX @ 42 + 4 - over - menuY @ 1-