Visit Our UNIX and Linux User Community

Full Discussion: OpenBoot OEM Logo
Operating Systems Solaris OpenBoot OEM Logo Post 302187183 by Perderabo on Saturday 19th of April 2008 08:38:34 PM
Old 04-19-2008
OpenBoot OEM Logo

If you have a graphic display you see some sort of logo in OpenBoot immediately after a reset or when you run the banner command. With most systems, you see a spiffy multicolor logo generated by a routine on the video card. But if you have a low-rent video card you just see a plain monochrome Sun logo. In either case, you can override the logo with your own logo but you are limited to a 64 by 64 black and white logo. I decided to give it a try but I found that it was not easy figuring out how to load that logo into OpenBoot. The eeprom command can do it, but the needed format was not documented anywhere. But I peeked at the source code on the Open Solaris web site and figured out what it needed. I see that Solaris has some ImageMagick stuff available and that helps a lot. So here is my script to load a logo. You need a 64 by 64 .bmp file for input. Then just feed that bmp file into my script which I call bmploader...
Code:
#! /usr/bin/ksh
alias convert=/usr/sfw/bin/convert

NORMAL='y/abcdef/ABCDEF/'
REVERSE_VIDEO='y/0123456789abcdef/FEDCBA9876543210/'
if [[ $1 = "-r" ]] ; then
       shift
       CMD=$REVERSE_VIDEO
else
       CMD=$NORMAL
fi

(echo 'Depth=1
Format_version=1
Height=64
Valid_bits_per_item=16
Width=64
*/
'
convert -monochrome -geometry 64x64\! $1 sun:/dev/fd/1 \
               | dd bs=1 skip=32 2>/dev/null \
               | od -Anone -v -tx2 \
               | sed $CMD';s/^ *//;
                       s/ \([0-9A-F][0-9A-F][0-9A-F][0-9A-F]\)/0x\1,/g
                       32s/,$//;33d'
) | eeprom oem-logo=/dev/fd/0

eeprom 'oem-logo?=true'
exit 0

It takes a single argument which is the name of the bmp file. And you can have a -r flag to flip all the bits for a reverse video effect. The 64 by 64 monochrome restriction means that you can't do the Mona Lisa or anything. But it's still fun to play with. Smilie
 
Test Your Knowledge in Computers #828
Difficulty: Medium
JSON and ECMAScript 2018 both allows the Unicode line terminators U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR to appear unescaped in quoted strings.
True or False?

7 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How I can reset Ultra 5 OpenBoot

I'm trying to configure Ultra 5 workstation to be accessed by Win HyperTerminal. I make this change on open boot : setenv input-device ttya setenv output-device ttya boot After that, I can't acess by HyperTerminal and the keyboard / monitor don't work anymore. Anyone... (2 Replies)
Discussion started by: ubriaco
2 Replies

2. UNIX for Dummies Questions & Answers

OEM - what does this abbreviation stand for?

Just saw this OEM abbreviation during installation of Solaris 8. I'm curious to know what the letters stand for and what OEM actually is. (3 Replies)
Discussion started by: Kanu77
3 Replies

3. UNIX for Dummies Questions & Answers

change date on OpenBoot

hi all, I wonder how to change the date and timezone in OpenBoot prompt. Appreciate any idea. Thanks in advance (1 Reply)
Discussion started by: andrec
1 Replies

4. UNIX for Advanced & Expert Users

OpenBoot Loading Problem

I am using a SunBlade 100 system and accidently set a new alias for keyboard, now when it start it gives the following error, The selected input device has no read routine. Keyboard not present using ttya for input and output. Now i cannot execute any commands on the OBP and i just gets... (3 Replies)
Discussion started by: sumwhriblong
3 Replies

5. Solaris

OpenBoot Simulator

Hi, I would like to know if it's possible find a openboot simulator for solaris to can practice some exercices Thanks a lot and sorry for my english! (11 Replies)
Discussion started by: mierdatuti
11 Replies

6. Solaris

Openboot does not display

Hey guys I just inherited a sun netra 210 from an old Avaya system we had setup and I want to use i for studying for my SCSA/OCA exams but I'm running into alot of problems installing SOL 10 on here. I have no experience with SUN hardware at all but familiar with Solaris. It has SOL 9 but no one... (7 Replies)
Discussion started by: blackmantis
7 Replies

7. UNIX for Dummies Questions & Answers

openboot promt on Solaris VM

Hello, Is it possible to go to the openboot promt on a solaris VM on vmware or virtualbox? Please advise.. (1 Reply)
Discussion started by: lubu
1 Replies
obpsym(1M)						  System Administration Commands						obpsym(1M)

NAME
obpsym - Kernel Symbolic Debugging for OpenBoot Firmware SYNOPSIS
modload -p misc/obpsym DESCRIPTION
obpsym is a kernel module that installs OpenBoot callback handlers that provide kernel symbol information to OpenBoot. OpenBoot firmware user interface commands use the callbacks to convert numeric addresses to kernel symbol names for display purposes, and to convert kernel symbol names to numeric literals allowing symbolic names to be used as input arguments to user interface commands. Once obpsym is installed, kernel symbolic names may be used anywhere at the OpenBoot firmware's user interface command prompt in place of a literal (numeric) string. For example, if obpsym is installed, the OpenBoot firmware commands ctrace and dis typically display symbolic names and offsets in the form modname:symbolname + offset. User interface Commands such as dis can be given a kernel symbolic name such as ufs:ufs_mount instead of a numeric address. Placing the command forceload: misc/obpsym into the system(4) file forces the kernel module misc/obpsym to be loaded and activates the kernel callbacks during the kernel startup sequence. obpsym may be useful as a kernel debugger in situations where other kernel debuggers are not useful. For example, on SPARC machines, if obpsym is loaded, you may be able to use the OpenBoot firmware's ctrace command to display symbolic names in the stack backtrace after a watchdog reset. Kernel Symbolic Name Syntax The syntax for a kernel symbolic name is: [ module-name : ] symbol-name Where module-name is the name of the kernel module that the symbol symbol-name appears in. A NULL module name is taken as "all modules, in no particular order" by obpsym. The module name unix is equivalent to a NULL module name, so that conflicts with words defined in the firmware's vocabulary can be avoided. Typically, OpenBoot firmware reads a word from the input stream and looks the word up in its internal vocabulary before checking if the word is a literal. Thus, kernel symbols, such as reset may be given as unix:reset to avoid the unexpected side effect of the firmware find- ing and executing a matching word in its vocabulary. FILES
/etc/system system configuration information file /platform/platform-name/kernel/misc/obpsym ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcar | +-----------------------------+-----------------------------+ SEE ALSO
kadb(1M), kernel(1M), modload(1M), modunload(1M), uname(1), system(4), attributes(5) OpenBoot 2.x Command Reference Manual WARNINGS
Some OpenBoot firmware user interface commands may use system resources incompatibly with the way they are used by the Unix kernel. These commands and the use of this feature as a kernel debugger may cause interactions that the Unix kernel is not prepared to deal with. If this occurs, the Unix kernel and/or the OpenBoot firmware user interface commands may react unpredictably and may panic the system, or may hang or may cause other unpredictable results. For these reasons, the use of this feature is only minimally supported and recommended to be used only as a kernel debugger of "last resort". If a breakpoint or watchpoint is triggered while the console frame buffer is powered off, the system can crash and be left in a state from which it is difficult to recover. If one of these is triggered while the monitor is powered off, you will not be able to see the debugger output. NOTES
platform-name can be found using the -i option of uname(1) obpsym is supported only on architectures that support OpenBoot firmware. On some systems, OpenBoot must be completely RAM resident so the obpsym symbol callback support can be added to the firmware, if the firmware doesn't include support for the symbol callbacks. On these systems, obpsym may complain that it requires that "you must use ram- forth to use this module". See the OpenBoot 2.x Command Reference Manual for details on how to use the ramforth command, how to place the command into nvramrc, and how to set use-nvramrc? to true. On systems with version 1.x OpenBoot firmware, nvramrc doesn't exist, and the ramforth command must be typed manually after each reset, in order to use this module. Once installed, the symbol table callbacks can be disabled by using the following OpenBoot firmware command: 0 0 set-symbol-lookup SunOS 5.10 13 Dec 2001 obpsym(1M)

Featured Tech Videos

All times are GMT -4. The time now is 05:48 AM.
Unix & Linux Forums Content Copyright 1993-2021. All Rights Reserved.
Privacy Policy