#!/bin/bash
for (( c=1; c<=${COUNT}; c++ ))
do
sed -n '/module '${MODULE}'${c} /,/endmodule/p' prescan.v > temp${c}.v
sed -i '0,/o_func_clk /s/o_func_clk/o_func_clk, DFT_ClkEnScanIn1 ,scan_clock_en , DFT_ClkgenScanEnable /' temp${c}.v
#sed -i '0,/i_UDR_DFT_free_running;/i_UDR_DFT_free_running;/i_UDR_DFT_free_running , DFT_ClkEnScanIn1 , DFT_ClkgenScanEnable ;/' temp${c}.v
sed -i 's/i_UDR_DFT_free_running;/i_UDR_DFT_free_running , DFT_ClkEnScanIn1 , DFT_ClkgenScanEnable ;/' temp${c}.v
sed -i '/\[0\:0\] i_func_clk_en/a output scan_clock_en ;' temp${c}.v
sed -i '/scan_clock_en_reg/,+1d' temp${c}.v
sed -i '/endmodule/i M8E35B_SDFF2X1 scan_clock_en_reg (.q ( scan_clock_en ) , .d (pre_scan_clock_en ) , .te ( DFT_ClkgenScanEnable ) , .ti ( DFT_ClkEnScanIn1 ) , .phi ( i_scan_clk ));' temp${c}.v
done
This script should generate multiple temp files temp1.v temp2.v temp3.v temp4.v
after being processed with sed scripts.
The problem is with the first line
sed is unable to do variable substitution.
I tried with double quotes also substitution is not happening and getting empty temp files.
The $c should be incremented and the $MODULE1 $MODUL2 should be read depending upon the environmental variable set and the pattern should be searched and temp file should be created.
Please let me how to tackle this issue
Last edited by Scrutinizer; 05-09-2014 at 07:11 AM..
Reason: additional code tags
i have two lines in my rc.local file that are
wget -O/<path>/<file>.zip url://domain.com
unzip -o /<path>/<file>.zip
the wget works fine, but the unzip won't work. when i copy/pase the unzip line to the prompt it works fine. i thought that maybe the unzip was running before the wget... (0 Replies)
Hi All,
I need to pass a variable to perl script from bash script, where in perl i am using if condition. Here is the cmd what i am using in perl
FROM_DATE="06/05/2008"
TO_DATE="07/05/2008"
"perl -ne ' print if ( $_ >="$FROM_DATE" && $_ <= "$TO_DATE" ) ' filename"
filename has... (10 Replies)
Is it possible with a bash variable to perform multiple substitution strings to one variable?
I have this variable:
echo $clock
TIMEZONE="US/Central"
What I would like to do with bash only it pull out just the "US" part of the variable.. which could be any number of countries.
this is... (6 Replies)
When script is running you only see when some of the commands are not successfull.
Is there a way to see which command are executed and to show the substitution of variables as every line is executed ? (3 Replies)
Hello,
can someone please help me to fix this script,
I have a 2 files, one file has hostname information and second file has console information of the hosts in each line, I have written a script which actually reads each line in hostname file and should grep in the console file and paste the... (8 Replies)
Hi
I need help with my coding , first time I'm working with bash .
What i must do is check if there is 3 .txt files if there is not 3 of them i must give an error code , if al three is there i must first arrange them in alphabetical order and then take the last word in al 3 of the .txt files... (1 Reply)
Hi I am trying to do the following in a script find a string and add in a block of text two lines above on the command line this works fine
#/usr/bin/cat /usr/local/etc/dhcpd.conf_subnet | /usr/xpg4/bin/sed -n -e '1h;1\!H;${;g;s/}.*#END of 10.42.33.0/#START of RANGE $dstart\:option... (3 Replies)
I have a script.
filecreatenew () {
touch /usr/src/$1_newfile.txt
var=$1
echo $var
touch /usr/src/$var_newfile_with_var.txt
}
filecreatenew myfile
Its creating file /usr/src/myfile_newfile.txt as the variable $1 is correctly used. When $ is... (2 Replies)
Hi, I am trying to do a bash script that convert a decimal number to a binary value, but it doesn't work...
To begin, I am just trying to convert a positive number to 8 bits binary.
read -p"Entrez un nombre entre -128 et 127 pour l'encoder en binaire: " number
binaryValues=(128 64 32 16 8 4 2... (8 Replies)
Discussion started by: Zedki
8 Replies
LEARN ABOUT OPENSOLARIS
sdl_pixelformat
SDL_PixelFormat(3) SDL API Reference SDL_PixelFormat(3)NAME
SDL_PixelFormat - Stores surface format information
STRUCTURE DEFINITION
typedef struct SDL_PixelFormat {
SDL_Palette *palette;
Uint8 BitsPerPixel;
Uint8 BytesPerPixel;
Uint8 Rloss, Gloss, Bloss, Aloss;
Uint8 Rshift, Gshift, Bshift, Ashift;
Uint32 Rmask, Gmask, Bmask, Amask;
Uint32 colorkey;
Uint8 alpha;
} SDL_PixelFormat;
STRUCTURE DATA
palette Pointer to the palette, or NULL if the BitsPerPixel>8
BitsPerPixel The number of bits used to represent each pixel in a surface. Usually 8, 16, 24 or 32.
BytesPerPixel The number of bytes used to represent each pixel in a surface. Usually one to four.
[RGBA]mask Binary mask used to retrieve individual color values
[RGBA]loss Precision loss of each color component (2^[RGBA]loss)
[RGBA]shift Binary left shift of each color component in the pixel value
colorkey Pixel value of transparent pixels
alpha Overall surface alpha value
DESCRIPTION
A SDL_PixelFormat describes the format of the pixel data stored at the pixels field of a SDL_Surface. Every surface stores a SDL_PixelFor-
mat in the format field.
If you wish to do pixel level modifications on a surface, then understanding how SDL stores its color information is essential.
8-bit pixel formats are the easiest to understand. Since its an 8-bit format, we have 8 BitsPerPixel and 1 BytesPerPixel. Since BytesPer-
Pixel is 1, all pixels are represented by a Uint8 which contains an index into palette->colors. So, to determine the color of a pixel in a
8-bit surface: we read the color index from surface->pixels and we use that index to read the SDL_Color structure from surface->for-
mat->palette->colors. Like so:
SDL_Surface *surface;
SDL_PixelFormat *fmt;
SDL_Color *color;
Uint8 index;
.
.
/* Create surface */
.
.
fmt=surface->format;
/* Check the bitdepth of the surface */
if(fmt->BitsPerPixel!=8){
fprintf(stderr, "Not an 8-bit surface.
");
return(-1);
}
/* Lock the surface */
SDL_LockSurface(surface);
/* Get the topleft pixel */
index=*(Uint8 *)surface->pixels;
color=fmt->palette->colors[index];
/* Unlock the surface */
SDL_UnlockSurface(surface);
printf("Pixel Color-> Red: %d, Green: %d, Blue: %d. Index: %d
",
color->r, color->g, color->b, index);
.
.
Pixel formats above 8-bit are an entirely different experience. They are considered to be "TrueColor" formats and the color information is
stored in the pixels themselves, not in a palette. The mask, shift and loss fields tell us how the color information is encoded. The mask
fields allow us to isolate each color component, the shift fields tell us the number of bits to the right of each component in the pixel
value and the loss fields tell us the number of bits lost from each component when packing 8-bit color component in a pixel.
/* Extracting color components from a 32-bit color value */
SDL_PixelFormat *fmt;
SDL_Surface *surface;
Uint32 temp, pixel;
Uint8 red, green, blue, alpha;
.
.
.
fmt=surface->format;
SDL_LockSurface(surface);
pixel=*((Uint32*)surface->pixels);
SDL_UnlockSurface(surface);
/* Get Red component */
temp=pixel&fmt->Rmask; /* Isolate red component */
temp=temp>>fmt->Rshift;/* Shift it down to 8-bit */
temp=temp<<fmt->Rloss; /* Expand to a full 8-bit number */
red=(Uint8)temp;
/* Get Green component */
temp=pixel&fmt->Gmask; /* Isolate green component */
temp=temp>>fmt->Gshift;/* Shift it down to 8-bit */
temp=temp<<fmt->Gloss; /* Expand to a full 8-bit number */
green=(Uint8)temp;
/* Get Blue component */
temp=pixel&fmt->Bmask; /* Isolate blue component */
temp=temp>>fmt->Bshift;/* Shift it down to 8-bit */
temp=temp<<fmt->Bloss; /* Expand to a full 8-bit number */
blue=(Uint8)temp;
/* Get Alpha component */
temp=pixel&fmt->Amask; /* Isolate alpha component */
temp=temp>>fmt->Ashift;/* Shift it down to 8-bit */
temp=temp<<fmt->Aloss; /* Expand to a full 8-bit number */
alpha=(Uint8)temp;
printf("Pixel Color -> R: %d, G: %d, B: %d, A: %d
", red, green, blue, alpha);
.
.
.
SEE ALSO
SDL_Surface, SDL_MapRGB
SDL Tue 11 Sep 2001, 23:01 SDL_PixelFormat(3)