• Welcome to SCdev.org. Please log in.

Welcome to the new SCdev forums!

Pimp My MoonShell :) - customizing guide

Started by GIDZzz, February 17, 2006, 12:56:04 PM

Previous topic - Next topic

GIDZzz

(\__/)
(o'.'o)
(")_(")
______________________________
Welcome to my little skinning guide. You can find here descriptions of files and elements needed to customize your MoonShell.
There may be some errors. If you find any of those, need help or closer decriptions, you can pm me or write in this topic. I'm gonna correct them if needed.

If something changes in a new release of MoonShell, I'll try to upgrade my guide as soon as I can.
______________________________

Current guide version is compatible with MoonShell 1.71
______________________________

This is the first section, just a short list. You can find here names, sizes and small descriptions for the files which can be used to pimp your MoonShell.

Bitmaps
\moonshl\skin\desktop.bmp [256x192] desktop background
\moonshl\skin\c_file.bmp [256x192] file browser window background
\moonshl\skin\client.bmp [256x192] normal window backround
\moonshl\skin\c_text [256x192] text viewer background
\moonshl\skin\titlea.bmp [256x16] active window header
\moonshl\skin\titled.bmp [256x16] inactive window header
\moonshl\skin\fbarcur.bmp [256x12] selected file highlight
\moonshl\skin\fbarplay.bmp [256x12] opened file highlight
\moonshl\skin\prgbara.bmp [256x16] full progress bar
\moonshl\skin\prgbard.bmp [256x16] empty progress bar
\moonshl\skin\sb_part.bmp [8x8] scroll bar endings (upper 4 pixel rows are for top and lower 4 are for bottom)
\moonshl\skin\sb_body.bmp [8x8] scroll bar middle part
\moonshl\skin\sb_bg.bmp [8x8] scroll bar area background
\moonshl\skin\closebtn.bmp [14x14] close button (to make it transparent, use full green (00FF00) color)
\moonshl\skin\sysicon.bmp [16x16] sytem menu icon

Sounds
\moonshl\startup.mp3 [] starup sound
\moonshl\shutdown.mp3 [] shutdown sound

Configuration Files
\moonshl\moonshl.ini [] player settings
\moonshl\skin\skin.ini [] skin settings
______________________________

Here comes the second part, which describes skin.ini, used to define some skin parts. All colors should be in RRGGBB hex format and sizes should be in pixels. Use -1 value for bitmaps or default settings.

;file: /moonshl/skin/skin.ini - appearance settings

[SkinInfo]

Title= skin name (text)
Author= skin author (text)
LastUpdate= last update date (text)

[Boot]

hiddenAboutWindow= About Window visiblity (0 = show, 1 = hide)
hiddenHelpWindow= Help Window visiblity (0 = show, 1 = hide)

[ColorCoordination]

;COLORS

;Desktop
DesktopBG= desktop color

;Active Header
TitleA_Bright= left and top part of header frame color
TitleA_Dark= right and bottom part of header frame color
TitleA_BG= header color
TitleA_Text= header text color
TitleA_TextShadow= shadow of header text color

;Inctive Header
TitleD_Bright= left and top part of header frame color
TitleD_Dark= right and bottom part of header frame color
TitleD_BG= header color
TitleD_Text= header text color

;Scroll Bar
ScrollBar= scroll bar color (this is the main body color, edges will be a bit darker)

;Window Frame
FrameBright= left and top part of window frame color
FrameDark= right and bottom part of window frame color

;Window
ClientBG= window background color
ClientText= window text color

;File Browser
FileSelectBG= file browser window background color and selected filename color
FileSelectText= file browser text color
FileSelectCursor= selected file highlight color
FileSelectPlay= opened file highlight color

;Text Viewer
TextViewBG= background color
TextViewText= text color

;Progress Bar
ProgressEnd= full progress bar color
ProgressLast= empty progress bar color


;WINDOWS POSITIONS AND SIZES

;About Window
[OverrideWindowRect_About]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Help Window
[OverrideWindowRect_Help]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Media Player Window
[OverrideWindowRect_PlayControl]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;File Browser Window
[OverrideWindowRect_FileSelect]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Clock Window
[OverrideWindowRect_DateTime]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Image Viewer Window
[OverrideWindowRect_PicView]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Text Viewer Window
[OverrideWindowRect_TextView]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Work Progress Window
[OverrideWindowRect_Progress]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;Playback Mode Window
[OverrideWindowRect_SetNext]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;File Information Window
[OverrideWindowRect_FileInfo]
x= horizontal position
y= vertical position
w= width
h= height
DisabledCloseButton= close button availability (0 = enable, 1 = disable)

;eof: /moonshl/skin/skin.ini
______________________________

There's a new feature in 1.71: animated splash screens. It allows to show an animation at startup. Here's a description how to make your own using a proper tool (MakeSplash.exe) from MoonShell's site:

First, you need a background (256x384 to cover both screens or smaller to cover them partially). The next step is making some frames for the animation. They can be up to 256x384. If they are smaller, then only a part of the splash scren will be animated – the rest (bottom part) will be static, so if you want to animate only the upper screen, there's no need to make them larger than 256x192. If you want to make some pixels transparent (for example to make loading log on the upper screen visible), you can use full green (00FF00) color. If you've got all the frames ready, make sure they names are in the format "splashXXX.bmp", where XXX is a number of an animation frame (background should be splash000.bmp).
Now you need an ini file so you can set some parameters for the animation. It looks as follows:

;file: splash.ini

[ConvertSetting]
SourceFileMask= name of the animation frames (default is splash???.bmp, but you can also use custom names; question mark represents varying numbers, for non-animated splash screens you don't need them.)
SourceFPS= number of frames played per second
WaitForTerminate= loading MoonShell and playing animation simultaneously (0 = on, 1 = off)
AlreadyAllDraw= allways playing the whole animation (0 = off, 1 = on)
UseDither24to15bit= dithering in conversion to smaller color palette (0 = off, 1 = on)

;eof: splash.ini

Put all those files in one folder and open splash.ini with MakeSplash.exe. It will generate splash.ani. To enable animation put the ani file into /moonshl/ on your memory card.

______________________________

And now a little about moonshl.ini, plugin settings and custom clocks.

Previous version of this guide contained description of global.ini (now it's moonshl.ini) because it wasn't well documented by the author of MoonShell. However, it changed some time ago and now moonshl.ini contains detailed descriptions of its content so I think it's unnecessary to keep this part of the guide. I'll only mention that this file contains mainly settings which don't directyly affect skins.

As you probably noticed if you were messing with customization, there is a plugin folder. It contains plugins and their ini files, so you can change some settings, e.g. enable progressive jpegs (which aren't supported by default) or add more plugins (*.msp) and executables (*.mse) if you've got any.

There's also a possiblity of making a custom clock. Provious versions (from 1.2) contained instructions for making a clock but now I removed them for the same reason as moonshl.ini. The way to make a clock is simple: open MoonShell_OrWhereverYouKeepSetupFiles\misc\ClockPlugin_CustomKit\CustomKit.exe and you should see a small window of program for clock plugins. It's pretty easy to use. Just load images which you need, set some parameters and when you're satisfied with your work, choose "File > Save MSP as" from menu... and voila! The only thing left is to copy clk_customkit.msp and clk_customkit.ini (they may vary, depending on how have you named it) to /moonshl/plugin/ on your memory card.
______________________________

I hope it helps somehow.
GIDZzz

Blebekblebek

eto... i don't want to ask bout skinning

but just want to ask
how to disable Pause & Next (L+R) button?

m2pt5

Quote from: "Blebekblebek"how to disable Pause & Next (L+R) button?
It's in the global.ini. This has been answered 923456234890 times already.
Manually signing your posts is dumb.
---
Firmware versioning: Get a Passcard 3, a SuperKey, or a slot-1 flashkit. Then it doesn't matter which firmware you have.

onarum

thanks for the guide man, i never thought of customizing my moonshell but after seeing this guide i gave it a shot, and works like a charm hehe.
SC CF + 1GB Kingston CF + flashed NDS = a whole lot of fun.

Cyprien Walker

how can i remove file info screen and i dont understand the part with the screen potitions couse if i cnage them thay stay the same

richardv

Just change skin.ini
set [OverrideWindowRect_FileInfo] to 192 256 to hide it down in the corner
ilver DS>White DSLite>Black GBA Micro>SCSD>SCLite>DSLink>4GB Transcend sd>2GB Patriot sd>512 MB Sandisk microsd>1 GB Sandisk microsd

Blebekblebek

Quote from: "m2pt5"
Quote from: "Blebekblebek"how to disable Pause & Next (L+R) button?
It's in the global.ini. This has been answered 923456234890 times already.
Thx...
sorry i'm asking the same question for 923456234890 times

GIDZzz

(\__/)
(='.'=)
(")_(")
________________________________________________________
In v0.999test3 configuration settings for SPCPlugin and MikModPlugin moved from global.ini to separated files in ".../shell/plugin"  folder.
________________________________________________________

rocky

Quote from: "Blebekblebek"
Quote from: "m2pt5"
Quote from: "Blebekblebek"how to disable Pause & Next (L+R) button?
It's in the global.ini. This has been answered 923456234890 times already.
Thx...
sorry i'm asking the same question for 923456234890 times

m2pt5 I think your one short isnt it 9234562348901 times? :lol:

mgarrine

Just a question,.,..

in the previous version we had to launch IMFS to upgrade with the change...now sorryif i want to use my skin ...i should: (correct me if i'm worng)


take the file modified by us (all the bitmaps and the skin.ini file)

then put these in the SetupData\files\shell ....

then launch the setup ???



is that the right procedure... it seems not to work for me...

thanks
[size=14]´   º Í!¸ LÍ!mgarrine$[/size]

GIDZzz

"SetupData\files\shell" folder is for default elements and you can use them in "Configuration files" part of the setup but it will only copy basic parts like desktop.bmp or global.ini.

To apply new skin, place files in "shell" folder in the main directory of your memory card " and that's everything. If you haven't this folder, setup will create it automatically.

mgarrine

thank you so much

Quote
My name is Canny

/\__/\
(='.'=)
(")_(")

my mother was a Bunny
(\__/)
(°'.'°)
(")_(")


but a Cat gave it the carrot...

[size=14]´   º Í!¸ LÍ!mgarrine$[/size]

GIDZzz

(\__/)
(='.'=)
(")_(")
________________________________________________________
I just upgraded it to work with MoonShell 1.0. However, I hadn't much time and there may be some errors. If so, please correct me.
________________________________________________________

Madrigal

Can anyone tell me the settings to get the clock to the top right corner? Thanks :)
img]http://img297.imageshack.us/img297/3183/dsig4uu.jpg[/img]
DS Lite (US) Polar White - M3 Lite - Superkey - Sandisk MicroSD 1GB

GIDZzz

I don't know your window width so you have to calculate it for yourself:
x = 256 - 2 - w
y = 0