Annotation of elwix/config/boot/brand.4th, revision 1.2.6.1
1.2 misho 1: \ Copyright (c) 2006-2011 Devin Teske <devinteske@hotmail.com>
2: \ All rights reserved.
3: \
4: \ Redistribution and use in source and binary forms, with or without
5: \ modification, are permitted provided that the following conditions
6: \ are met:
7: \ 1. Redistributions of source code must retain the above copyright
8: \ notice, this list of conditions and the following disclaimer.
9: \ 2. Redistributions in binary form must reproduce the above copyright
10: \ notice, this list of conditions and the following disclaimer in the
11: \ documentation and/or other materials provided with the distribution.
12: \
13: \ THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14: \ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15: \ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16: \ ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17: \ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18: \ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19: \ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20: \ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21: \ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22: \ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23: \ SUCH DAMAGE.
24: \
1.2.6.1 ! misho 25: \ $FreeBSD: src/sys/boot/forth/brand.4th,v 1.4 2012/11/17 01:51:16 svnexp Exp $
1.2 misho 26: \
1.2.6.1 ! misho 27: \ $Id: brand.4th,v 1.2 2011/10/18 09:02:06 misho Exp $
1.2 misho 28:
29: marker task-brand.4th
30:
31: variable brandX
32: variable brandY
33:
34: \ Initialize logo placement
35: 2 brandX !
36: 1 brandY !
37:
38: : elwix-logo ( x y -- ) \ "ElwiX" [wide] logo in B/W (7 rows x 42 columns)
39:
40: 2dup at-xy ." " 1+
41: 2dup at-xy ." '||''''| '|| || '||' '|' " 1+
42: 2dup at-xy ." || . || ... ... ... ... || | " 1+
43: 2dup at-xy ." ||''| || || || | || || " 1+
44: 2dup at-xy ." || || ||| ||| || | || " 1+
45: 2dup at-xy ." .||.....| .||. | | .||. .| ||. " 1+
46: at-xy ." "
47:
48: \ Put the cursor back at the bottom
49: 0 25 at-xy
50: ;
51:
52: : fbsd-logo ( x y -- ) \ "FreeBSD" [wide] logo in B/W (7 rows x 42 columns)
53:
54: 2dup at-xy ." ______ ____ _____ _____ " 1+
55: 2dup at-xy ." | ____| | _ \ / ____| __ \ " 1+
56: 2dup at-xy ." | |___ _ __ ___ ___ | |_) | (___ | | | |" 1+
57: 2dup at-xy ." | ___| '__/ _ \/ _ \| _ < \___ \| | | |" 1+
58: 2dup at-xy ." | | | | | __/ __/| |_) |____) | |__| |" 1+
59: 2dup at-xy ." | | | | | | || | | |" 1+
60: at-xy ." |_| |_| \___|\___||____/|_____/|_____/ "
61:
62: \ Put the cursor back at the bottom
63: 0 25 at-xy
64: ;
65:
66: \ This function draws any number of company logos at (loader_brand_x,
67: \ loader_brand_y) if defined, or (2,1) (top-left) if not defined. To choose
68: \ your logo, set the variable `loader_brand' to the respective logo name.
69: \
70: \ Currently available:
71: \
72: \ NAME DESCRIPTION
73: \ fbsd FreeBSD logo
74: \ elwix ELWIX logo
75: \
76: \ NOTE: Setting `loader_brand' to an undefined value (such as "none") will
77: \ prevent any brand from being drawn.
78: \
79: : draw-brand ( -- )
80:
81: s" loader_brand_x" getenv dup -1 <> if
82: ?number 1 = if
83: brandX !
84: then
85: else
86: drop
87: then
88:
89: s" loader_brand_y" getenv dup -1 <> if
90: ?number 1 = if
91: brandY !
92: then
93: else
94: drop
95: then
96:
97: s" loader_brand" getenv dup -1 = if
98: brandX @ brandY @ elwix-logo
99: drop exit
100: then
101:
102: 2dup s" fbsd" compare-insensitive 0= if
103: brandX @ brandY @ fbsd-logo
104: 2drop exit
105: then
106: 2dup s" elwix" compare-insensitive 0= if
107: brandX @ brandY @ elwix-logo
108: 2drop exit
109: then
110:
111: 2drop
112: ;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>