From owner-svn-src-all@FreeBSD.ORG Thu Aug 15 15:34:26 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id C9F777B5; Thu, 15 Aug 2013 15:34:26 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A7FDA27A4; Thu, 15 Aug 2013 15:34:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r7FFYQZc086842; Thu, 15 Aug 2013 15:34:26 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r7FFYQHK086841; Thu, 15 Aug 2013 15:34:26 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201308151534.r7FFYQHK086841@svn.freebsd.org> From: Devin Teske Date: Thu, 15 Aug 2013 15:34:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-releng@freebsd.org Subject: svn commit: r254370 - releng/9.2/sys/boot/forth X-SVN-Group: releng MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Aug 2013 15:34:26 -0000 Author: dteske Date: Thu Aug 15 15:34:26 2013 New Revision: 254370 URL: http://svnweb.freebsd.org/changeset/base/254370 Log: MFS9 SVN r254331: Add optional support for default override of standard setup; but only if corresponding functions are provided. If override function does not exist, boot remains unmodified. This patch should not result in any changes. This includes changes to take advantage of the new functionality. Approved by: re (marius) Modified: releng/9.2/sys/boot/forth/beastie.4th Directory Properties: releng/9.2/sys/ (props changed) releng/9.2/sys/boot/ (props changed) releng/9.2/sys/boot/forth/ (props changed) Modified: releng/9.2/sys/boot/forth/beastie.4th ============================================================================== --- releng/9.2/sys/boot/forth/beastie.4th Thu Aug 15 15:12:14 2013 (r254369) +++ releng/9.2/sys/boot/forth/beastie.4th Thu Aug 15 15:34:26 2013 (r254370) @@ -123,6 +123,76 @@ variable logoY 0 25 at-xy ; +: tribute-art ( x y -- ) \ see tribute[bw]-logo + + \ Disable the brand art (we're going to use that space) + s" set loader_brand=none" evaluate + + \ Blank out the frame of the menu and move the title to left + s" set loader_menu_title=" evaluate + s" set loader_menu_frame=none" evaluate + + \ Move the menu to the center of the screen + s" set loader_menu_x=26" evaluate + s" set loader_menu_y=13" evaluate + s" set loader_menu_timeout_x=21" evaluate + s" set loader_menu_timeout_y=24" evaluate + + 2 - swap 39 - swap \ top-left (see `fbsdbw-logo' comments above) + + 2dup at-xy 11 spaces ." ,d b." 1+ + 2dup at-xy ." ,d88] [88b." 1+ + 2dup at-xy ." ,d888P" 34 emit ." ,d88b. " 34 emit ." Y888b." 1+ + 2dup at-xy ." , <888P" 34 emit ." ,dP" 34 emit ." ,db." 34 emit + ." Yb. " 34 emit ." Y888> ," 1+ + 2dup at-xy ." <88b.~ ,d888 " 34 emit ." YP" 34 emit + ." 888b. ~,d88>" 1+ + 2dup at-xy ." ," 34 emit ." Y888888P" 34 emit ." ,db.,db." 34 emit + ." Y888888P" 34 emit ." ," 1+ + 2dup at-xy ." <88b." 34 emit ." YP" 34 emit ." _ " 34 emit + ." YP" 34 emit 34 emit ." YP" 34 emit ." _ " 34 emit + ." YP" 34 emit ." ,d88>" 1+ + 2dup at-xy ." " 34 emit ." Y88b.,dP Yb.,d88P" 34 emit 1+ + at-xy ." " 34 emit ." YP" 34 emit ." " 34 emit + ." YP" 34 emit ." " +; + +: tribute-text ( x y -- ) \ see tribute[bw]-logo + + swap 2 - swap \ beastie adjustment (see `fbsdbw-logo' comments above) + + 2dup at-xy ." CEO Workstation" 1+ + 1+ + 2dup at-xy ." Nakatomi Socrates FreeBSD 9.2" 1+ + 2dup at-xy ." Z-Level Central Core" 1+ + 1+ + at-xy ." Preliminary Clearance Approved." +; + +: tribute-logo ( x y -- ) \ color Socrates tribute (16 rows x 32 columns) + + \ Produce the tribute art in bright green + 2dup at-xy ." " 2dup tribute-art ." " + + \ Produce the tribute text in regular green + 2dup at-xy ." " 2dup tribute-text ." " + + \ Distinguish the ``Free'' in tribute-text + 2 + swap 16 + swap at-xy ." Free" + + \ Put the cursor back at the bottom + 0 25 at-xy +; + +: tributebw-logo ( x y -- ) \ Socrates tribute (16 rows x 32 columns) + + \ Produce the tribute art and text + 2dup tribute-art tribute-text + + \ Put the cursor back at the bottom + 0 25 at-xy +; + : orb-logo ( x y -- ) \ color Orb mascot (15 rows x 30 columns) 3 + \ beastie adjustment (see `fbsdbw-logo' comments above) @@ -181,8 +251,10 @@ variable logoY \ beastie Color ``Helper Daemon'' mascot (19 rows x 34 columns) \ beastiebw B/W ``Helper Daemon'' mascot (19 rows x 34 columns) \ fbsdbw "FreeBSD" logo in B/W (13 rows x 21 columns) -\ orb Color ``Orb'' mascot (15 rows x 30 columns) (default) +\ orb Color ``Orb'' mascot (15 rows x 30 columns) (2nd default) \ orbbw B/W ``Orb'' mascot (15 rows x 32 columns) +\ tribute Color ``Tribute'' (must fit 19 rows x 34 columns) (default) +\ tributebw B/W ``Tribute'' (must fit 19 rows x 34 columns) \ \ NOTE: Setting `loader_logo' to an undefined value (such as "none") will \ prevent beastie from being drawn. @@ -203,9 +275,21 @@ variable logoY s" loader_logo" getenv dup -1 = if logoX @ logoY @ loader_color? if - orb-logo + s" tribute-logo" + sfind if + execute + else + drop + orb-logo + then else - orbbw-logo + s" tributebw-logo" + sfind if + execute + else + drop + orbbw-logo + then then drop exit then @@ -230,6 +314,24 @@ variable logoY logoX @ logoY @ orbbw-logo 2drop exit then + 2dup s" tribute" compare-insensitive 0= if + logoX @ logoY @ + s" tribute-logo" sfind if + execute + else + orb-logo + then + 2drop exit + then + 2dup s" tributebw" compare-insensitive 0= if + logoX @ logoY @ + s" tributebw-logo" sfind if + execute + else + orbbw-logo + then + 2drop exit + then 2drop ;