Recommended Posts

Took me a while to get rid of usual columns_ui style and get it how I wanted for funcionability :)

Mainly a mod of spex configuration, with some custom crap :p , I think it's just missing some buttons (currently controlled with the taskbar) and the right panel displays lyrics and album art if found, else it looks like on the screen ;)

any chance you're gonna release it?

MAYBE.

$if($meta_test(tracknumber),

// FOR ALBUMS

$drawrect(0,0,0,0,brushcolor-197-218-186 pencolor-null)

// cover
$imageabs2(72,72,,,,,4,4,'images\noalbum.png',)
$imageabs2(72,72,,,,,4,4,$replace(%path%,%filename_ext%,)cover.jpg,NOKEEPASPECT)
$imageabs2(72,72,,,,,4,4,$replace(%path%,%filename_ext%,)folder.jpg,NOKEEPASPECT)
$imageabs2(72,72,,,,,4,4,'images\artoverlay.png',)

// artist
$alignabs(82,12,$add(%_width%,-107),24,left,top)
$font(Calibri,14,bold,85-85-85)
$if2(%album artist%,%artist%)

// album
$alignabs(82,30,$add(%_width%,-107),24,left,top)
$font(Calibri,14,bold,60-60-60)
%album%

// info
$alignabs(82,50,$add(%_width%,-107),24,left,top)
$font(Calibri,10,,105-105-105)

//      MP3
$if($stricmp($info(codec),mp3),
$puts(v_codec,$info(codec)':')
$puts(v_compression,
$if($stricmp($left($info(codec_profile),3),VBR),
VBR
$if($stricmp($info(codec_profile),'VBR V0'),' (V0)')
$if($stricmp($info(codec_profile),'VBR V1'),' (V1)')
$if($stricmp($info(codec_profile),'VBR V2'),' (V2)')
$if($stricmp($info(codec_profile),'VBR V3'),' (V3)')
$if($stricmp($info(codec_profile),'VBR V4'),' (V4)')
,%__bitrate%' kbps (CBR)')),)

//      Vorbis
$if($stricmp($info(codec),vorbis),
$puts(v_codec,$info(codec):)
$puts(v_compression,%__bitrate_nominal%' kbps (nominal)'),)

//      AAC
$if($stricmp($info(codec),AAC),
$puts(v_codec,$info(codec):)
$puts(v_compression,
$if($stricmp($info(codec_profile),LC),low complexity)
$if($stricmp($info(codec_profile),SSR),scalable sampling rate)
$if($stricmp($info(codec_profile),HE),high efficiency)
$if($stricmp($info(codec_profile),LD),low delay)
$if($stricmp($info(codec_profile),LTP),long-term prediction)
$if($stricmp($info(codec_profile),SBR),spectral bandwidth replication)
),)

//      FLAC
$if($stricmp($info(codec),FLAC),
$puts(v_codec,$info(codec)),)

//      APE
$if($stricmp($info(codec),monkey''s audio),
$puts(v_codec,$info(codec))
$puts(v_version,$info(version):)
$puts(v_compression,$lower($info(codec_profile))),)

//      MPC
$if($stricmp($info(codec),musepack),
$puts(v_codec,$caps($info(codec)))
$puts(v_version,$info(mpc_encoder))
$puts(v_compression,$info(mpc_profile)))

// display that jazz
[$left(%date%,4)  /  ]$get(v_codec)[' '$get(v_version)][' '$get(v_compression)]


,


// FOR SINGLES

$drawrect(0,0,0,0,brushcolor-162-187-208 pencolor-null)

$imageabs2(72,72,,,,,4,4,'images\singles.png',)


// artist
$alignabs(82,28,$add(%_width%,-107),24,left,top)
$font(Calibri,14,bold,85-85-85)
SINGLE TRACKS

)

I don't know if all that 'info' stuff is right, they changed some of the fields since i first did that code. MP3 and Vorbis should be correct though. And the 'singles' part obviously depends on all your single tracks having no track numbers. And, uh, artoverlay.png is pretty much just a rectangle.

Got the buttons on bottom bar :)

finalfoobarve7.png

----------------------------------------------------------------------------------------------------------------

TOP TRACKINFO:

$puts(str1,"%title%"[ by %artist%][ / %album%])
$puts(str2,"%title%"[ %genre%][ from %date%])
$puts(str3,"%title%"[ by %artist%][ / %album%][ '('%genre%[, %date%]')'])
$puts(panelbg,245-245-245)
$puts(imagedir,'C:\Program Files\foobar2000\images\delta\')

// background
$drawrect(,,,,brushcolor-$get(panelbg) pencolor-null)
$imageabs2(,,,,,,0,3,$get(imagedir)trackinfo1.png,)

// audioscrobbler
$if($or($greater($muldiv(%playback_time_seconds%,100,%length_seconds%),49),$greater(%playback_time_seconds%,239)),$imageabs2(,,,,,,$sub(%_width%,88),3,$get(imagedir)as.png,))

// curved edges
$drawrect(0,3,1,1,brushcolor-$get(panelbg) pencolor-null)
$drawrect($sub(%_width%,1),3,1,1,brushcolor-$get(panelbg) pencolor-null)
$drawrect(0,57,1,1,brushcolor-$get(panelbg) pencolor-null)
$drawrect($sub(%_width%,1),57,1,1,brushcolor-$get(panelbg) pencolor-null)

$if(%isplaying%,

// progress bar
$drawrect($muldiv(%_width%,15,100),32,$muldiv(%_width%,70,100),8,brushcolor-null pencolor-215-215-215)
$drawrect($add($muldiv(%_width%,15,100),2),34,$ifgreater($muldiv($sub($muldiv(%_width%,70,100),4),%playback_time_seconds%,%length_seconds%),0,$muldiv($sub($muldiv(%_width%,70,100),4),%playback_time_seconds%,%length_seconds%),1),4,brushcolor-200-200-200 pencolor-null)
$alignabs($sub($muldiv(%_width%,15,100),33),30,35,13,center,middle)$font(verdana,6,bold,215-215-215)$if2(%playback_time%,0:00)
$alignabs($muldiv(%_width%,85,100),30,33,13,center,middle)$font(verdana,6,bold,215-215-215)$if2(%length%,0:00)
$alignabs(20,9,$sub(%_width%,28),16,center,middle)$font(verdana,7,bold,215-215-215)

// interchanging text
$select($add($mod(%playback_time_seconds%,15),1),
$get(str1),$get(str1),$get(str1),$get(str1),$get(str1),
$get(str2),$get(str2),$get(str2),$get(str2),$get(str2),
$get(str3),$get(str3),$get(str3),$get(str3),$get(str3))


// properties & open dir
$button($sub(%_width%,17),21,0,0,11,11,$get(imagedir)info.png,$get(imagedir)infoh.png,properties,)
$button(8,21,0,0,11,11,$get(imagedir)dir.png,$get(imagedir)dirh.png,open directory,)

,

// not playing..
$alignabs($div($sub(%_width%,50),2),6,50,45,center,middle)
$font(wingdings,20,bold,170-170-170)z

)

BOTTOM TRACKINFO

$puts(panelbg,245-245-245)
$puts(imagedir,'C:\Program Files\foobar2000\images\delta\')

// background
$drawrect(,,,,brushcolor-$get(panelbg) pencolor-null)
$imageabs2(,,,,,,0,3,$get(imagedir)trackinfo2.png,)

// Prev
$button(14,8,0,0,18,16,$get(imagedir)mprev.png,$get(imagedir)mprevh.png,previous,)
// Play & Pause
$button(34,8,0,0,18,16,
$if($or(%ispaused%,$not(%isplaying%)),$get(imagedir)mplay.png,$get(imagedir)mpause.png),
$if($or(%ispaused%,$not(%isplaying%)),$get(imagedir)mplayh.png,$get(imagedir)mpauseh.png),
$if($or(%ispaused%,$not(%isplaying%)),play,pause)
,)
// Stop
$button(54,8,0,0,18,16,$get(imagedir)mstop.png,$get(imagedir)mstoph.png,stop,)
// Next
$button(74,8,0,0,18,16,$get(imagedir)mnext.png,$get(imagedir)mnexth.png,next,)


$if(%isplaying%,

//info
$alignabs(20,8,$sub(%_width%,50),16,right,middle)$font(Zurich Cn BT,9,bold,215-215-215)
$upper(
%album%  '//'  %codec% @  %__bitrate% Kbps
)

,

// not playing..


)

GROUP BY

$if2($if(%totaltracks%,%album%),0)

ITEM DISPLAY

$puts(imagedir,'C:\Program Files\foobar2000\images\delta\')
$puts(coverstring,$replace(%path%,%filename_ext%,cover.jpg))

// background
$if($stricmp($mod(%list_index%,2),1),$drawrect(,,,,brushcolor-240-240-240 pencolor-null))
$drawrect(-1,-1,$add(%_width%,2),19,brushcolor-null pencolor-220-220-220)
$if(%_selected%,$imageabs2(,,,,,,,,$get(imagedir)selected.png,))
$if(%isplaying%,$imageabs2(,,,,,,,,$get(imagedir)playing.png,))
$if(%_focused%,$imageabs2(,,,,,,,,$get(imagedir)focused.png,))


$if($and($greater(7,%_itemindex%),$greater(%_itemcount%,5),%totaltracks%),

// coverart
$drawrect(-1,$sub(17,$mul(%_itemindex%,18)),109,109,brushcolor-255-255-255 pencolor-220-220-220)
$imageabs2(97,97,,,,,5,$sub(23,$mul(%_itemindex%,18)),$get(imagedir)nocover.png,)
$imageabs2(97,97,,,,,5,$sub(23,$mul(%_itemindex%,18)),$get(coverstring),)
$drawrect(5,$sub(23,$mul(%_itemindex%,18)),97,97,brushcolor-null pencolor-200-200-200)
$drawrect(6,$sub(24,$mul(%_itemindex%,18)),95,95,brushcolor-null pencolor-255-255-255 alpha-200)

// info for files with coverart
$if(%isplaying%,$alignabs(113,,40,40,,)$font(webdings,9,,110-110-110)$if(%ispaused%,;,4),
$alignabs(109,,22,18,center,middle)$font(verdana,6,bold,180-180-180)$num(%tracknumber%,2).)
$alignabs(131,,$sub(%_width%,270),18,left,middle)$font(calibri,8,bold,$if(%isplaying%,110-110-110,130-130-130))%title%
$alignabs($sub(%_width%,142),,50,18,right,middle)$font(calibri,8,bold,$if(%isplaying%,130-160-180,180-180-180))[%play_counter%x  ∙  ]$font(verdana,6,bold,$if(%isplaying%,80-80-80,120-120-120))$if(%isplaying%,%playback_time_remaining%,%length%),

// info for without coverart
$if(%isplaying%,$alignabs(4,,40,40,,)$font(webdings,9,,90-120-140)$if(%ispaused%,;,4),
$alignabs(1,,22,18,center,middle)$font(verdana,6,bold,180-180-180)$if(%totaltracks%,%tracknumber%.,$num(%_itemindex%,2).))
$alignabs(23,,$sub(%_width%,162),18,left,middle)$font(calibri,8,bold,$if(%isplaying%,80-80-80,130-130-130))$if(%totaltracks%,,[%artist% - ])%title%$font(calibri,8,bold,$if(%isplaying%,80-80-80,120-120-120))$if(%totaltracks%,,[ '('%genre%[',' %date%]')'])
$alignabs($sub(%_width%,142),,50,18,right,middle)$font(calibri,8,bold,$if(%isplaying%,80-80-80,130-130-130))[%play_counter%x  ∙  ]$font(verdana,6,bold,$if(%isplaying%,80-80-80,120-120-120))$if(%isplaying%,%playback_time_remaining%,%length%))

// autorating display
$if(%rating%,$puts(rating,%rating%),$puts(rating,$sub(%play_counter%,$div($cwb_datediff(%cwb_systemdatetime%,%first_played%),28))))
$if($greater($get(rating),5),$puts(rating,5))
$if($greater(0,$get(rating)),$puts(rating,0))
$alignabs($sub(%_width%,93),1,76,18,center,middle)$font(wingdings,10,,$if(%isplaying%,130-130-130,150-150-150))$repeat(?,$get(rating))$font(wingdings,10,,$if(%isplaying%,130-130-130,220-220-220))$repeat(?,$sub(5,$get(rating)))

// replaygain check
$alignabs($sub(%_width%,14),1,10,18,center,middle)$font(wingdings,6,,$if($or(%__replaygain_album_gain%,%__replaygain_track_gain%),$if(%isplaying%,80-80-80,180-180-180),$if(%isplaying%,255-255-255,255-255-255)))v

GROUP DISPLAY

$puts(imagedir,'C:\Program Files\foobar2000\images\delta\')

// background
$imageabs2(,,,,,,,,$get(imagedir)whiteheader.png,)

// top row
$alignabs(22,4,$sub(%_width%,80),20,,)$font(Zurich Cn Bt,9,bold uppercase,170-170-170)
$if(%totaltracks%,%album% / %date%,single tracks)

// bottom row
$alignabs(22,15,$sub(%_width%,80),20,,)$font(Zurich Cn Bt,8,bold,190-190-190)
$if($or($stricmp(%playlist_name%,most played songs),$stricmp(%playlist_name%,by rating),$not(%totaltracks%)),assorted artists,%artist%)

// right side
$if(%totaltracks%,
$alignabs($sub(%_width%,80),3,75,10,right,)$font(Kroeger 05_55,9,,190-190-190)%_itemcount% tracks
$alignabs($sub(%_width%,80),11,75,10,right,)$font(Kroeger 05_55,9,,190-190-190)$replace(%filename_ext%,%filename%.,)[ %codec_profile%]$if($or($strstr(%codec_profile%,VBR),%__bitrate_nominal%),, %__bitrate%kbps)
$alignabs($sub(%_width%,80),19,75,10,right,)$font(Kroeger 05_55,9,,190-190-190)%genre%
,
$alignabs($sub(%_width%,80),11,75,10,right,)$font(Kroeger 05_55,9,,230-230-230)%_itemcount% tracks
)

// little arrow
$alignabs(,1,20,32,center,middle)$font(Wingdings 3,6,,190-190-190)q

Row Height: 16

Group Rows: 2

Images go into: >> "\foobar root\images\"

Delta.zip

Mind to give out the code for the up trackinfo?

Single Column Playlist

Row height: 18

Group rows: 2

Group By:

$if(%totaltracks%,%album%,-)

Item Display:

$puts(imagedir,'E:\Program\foobar2000\images\ditt-slan\')
$puts(coverstring,$replace(%path%,%filename_ext%,folder.jpg))

// background
$if($stricmp($mod(%list_index%,2),1),$drawrect(,,,,brushcolor-240-240-240 pencolor-null))
$drawrect(-1,-1,$add(%_width%,2),19,brushcolor-248-248-248 pencolor-null)
$if(%_selected%,$if($stricmp($mod(%list_index%,2),1),$drawrect(,,,,brushcolor-200-200-200 pencolor-null),$drawrect(,,,,brushcolor-210-210-210 pencolor-null))$if($stricmp($mod(%list_index%,2),1),$drawrect(,,,,brushcolor-null pencolor-190-190-190)))
$if(%isplaying%,$imageabs2(,,,,,,,,$get(imagedir)playing.png,))
$if(%_focused%,$drawrect(-1,,$add(%_width%,2),,brushcolor-null pencolor-null))


$if($and($greater(7,%_itemindex%),$greater(%_itemcount%,5),%totaltracks%),

// coverart
$drawrect(-1,$sub(17,$mul(%_itemindex%,18)),109,109,brushcolor-248-248-248 pencolor-null)
$imageabs2(97,97,,,,,5,$sub(23,$mul(%_itemindex%,18)),$get(imagedir)nocover.gif,)
$imageabs2(97,97,,,,,5,$sub(23,$mul(%_itemindex%,18)),$get(coverstring),)
$drawrect(5,$sub(23,$mul(%_itemindex%,18)),97,97,brushcolor-null pencolor-200-200-200)
$drawrect(6,$sub(24,$mul(%_itemindex%,18)),95,95,brushcolor-null pencolor-255-255-255 alpha-200)

// info for files with coverart
$if(%isplaying%,$alignabs(113,,40,40,,)$font(webdings,9,,90-120-140)$if(%ispaused%,;,4),
$alignabs(109,,22,18,center,middle)$font(calibri,8,bold,180-180-180)$num(%tracknumber%,2).)
$alignabs(131,,$sub(%_width%,270),18,left,middle)$font(calibri,8,bold,$if(%isplaying%,60-60-60,90-90-90))%title%
$alignabs($sub(%_width%,60),,50,18,right,middle)$font(calibri,8,bold,$if(%isplaying%,130-160-180,180-180-180))[%play_counter%x  ?  ]$font(calibri,8,bold,$if(%isplaying%,80-80-80,120-120-120))$if(%isplaying%,%playback_time_remaining%,%length%),

// info for without coverart
$if(%isplaying%,$alignabs(4,,40,40,,)$font(webdings,9,,90-120-140)$if(%ispaused%,;,4),
$alignabs(1,,22,18,center,middle)$font(calibri,8,bold,180-180-180)$if(%totaltracks%,%tracknumber%.,$num(%_itemindex%,2).))
$alignabs(23,,$sub(%_width%,162),18,left,middle)$font(calibri,8,bold,$if(%isplaying%,60-60-60,90-90-90))$if(%totaltracks%,,[%artist% - ])%title%$font(calibri,8,bold lowercase,$if(%isplaying%,120-150-170,170-170-170))$if(%totaltracks%,,[ '('%genre%[',' %date%]')'])
$alignabs($sub(%_width%,60),,50,18,right,middle)$font(calibri,8,bold,$if(%isplaying%,130-160-180,180-180-180))[%play_counter%x  ?  ]$font(calibri,8,bold,$if(%isplaying%,80-80-80,120-120-120))$if(%isplaying%,%playback_time_remaining%,%length%))

Group Display:

$puts(imagedir,'E:\Program\foobar2000\images\ditt-slan\')

// background
$imageabs2(,,,,,,,,$get(imagedir)header.png,)

// top row
$alignabs(6,4,$sub(%_width%,80),20,,)$font(Calibri,9,bold uppercase,90-90-90)
$if(%totaltracks%,%album% / %date%,single tracks)

// bottom row
$alignabs(6,19,$sub(%_width%,80),20,,)$font(Calibri,9,bold,130-130-130)
$if($or($stricmp(%playlist_name%,most played songs),$stricmp(%playlist_name%,by rating),$not(%totaltracks%)),assorted artists,%artist%)

// right side
$if(%totaltracks%,
$alignabs($sub(%_width%,80),4,75,10,right,)$font(Kroeger 05_55,9,,170-170-170)%_itemcount% tracks
$alignabs($sub(%_width%,80),12,75,10,right,)$font(Kroeger 05_55,9,,180-180-180)$replace(%filename_ext%,%filename%.,)[ %codec_profile%]$if($or($strstr(%codec_profile%,VBR),%__bitrate_nominal%),, %__bitrate%kbps)
$alignabs($sub(%_width%,80),20,75,10,right,)$font(Kroeger 05_55,9,,190-190-190)%genre%
,
$alignabs($sub(%_width%,80),12,75,10,right,)$font(Kroeger 05_55,9,,230-230-230)%_itemcount% tracks
)

// little arrow
$alignabs(,1,20,36,center,middle)$font(Wingdings 3,6,,120-120-120)

Track Info Mod 1b>

$puts(imagedir,'E:\Program\foobar2000\images\ditt-slan\')

$imageabs2(,,,,,,$div($sub(%_width%,800),2),0,$get(imagedir)trackinfo1.png,)

$button($div($sub(%_width%,39),2),20,0,0,39,39,$if($or(%ispaused%,$not(%isplaying%)),$get(imagedir)play.png,$get(imagedir)pause.png),$if($or(%ispaused%,$not(%isplaying%)),$get(imagedir)playh.png,$get(imagedir)pauseh.png),$if($or(%ispaused%,$not(%isplaying%)),play,pause),)
$button($div($sub(%_width%,119),2),24,0,0,31,32,$get(imagedir)prev.png,$get(imagedir)prevh.png,previous,)
$button($div($add(%_width%,55),2),24,0,0,31,32,$get(imagedir)next.png,$get(imagedir)nexth.png,next,)

// progress bar
$drawrect(10,75,$sub(%_width%,20),8,brushcolor-null pencolor-120-120-120),)
// PerSecond
$if(%isplaying%,
$puts(progress,$muldiv(%playback_time_seconds%,$sub(%_width%,24),%length_seconds%))
$drawrect(10,75,$sub(%_width%,20),8,brushcolor-null pencolor-120-120-120),)
$ifgreater($get(progress),0,$padding(9,75)$drawrect(3,2,$get(progress),4,brushcolor-90-90-90 pencolor-nulll),)

Track Info Mod 2b>

$puts(imagedir,'E:\Program\foobar2000\images\ditt-slan\')

$imageabs2(,,,,,,$div($sub(%_width%,800),2),0,$get(imagedir)trackinfo2.png,)

$if(%_isplaying%,
$font(calibri,12,shadow,240-240-240)
$alignabs(0,15,%_width%,30,center,)%artist%
$alignabs(0,38,%_width%,20,center,)
$font(calibri,8,boldshadow,170-230-250)"%title%"
$alignabs(0,55,%_width%,20,center,)
$font(calibri,8,boldshadow,180-180-180)from 
$font(calibri,8,boldshadow,230-230-230)"%album%"
$alignabs(0,61,%_width%,20,center,)
$font(Calibri,8,boldshadow,180-180-180)
$if($strcmp(%play_counter%,?),
)
,
$font(calibri,12,shadow,170-170-170)
$alignabs(0,25,%_width%,30,center,)Foobar2000
$alignabs(0,46,%_width%,20,center,)
$font(calibri,9,boldshadow,170-230-250)Music Player
$alignabs(0,68,%_width%,20,center,)
$font(calibri,8,boldshadow,210-210-210)v0.9.3
)

Images: http://home.no/lassekongo83/fb2k/ditt-slan.zip

Make sure you change the path in the code to where you put the images.

This part: $puts(imagedir,'E:\Program\foobar2000\images\ditt-slan\')

Also make sure you have these fonts:

Kroeger 05_55

Calibri

Get the latest Track Info Mod and try this again.

$button($div($sub(%_width%,39),2),20,0,0,39,39,$if($or(%ispaused%,$not(%isplaying%)),$get(imagedir)play.png,$get(imagedir)pause.png),$if($or(%ispaused%,$not(%isplaying%)),$get(imagedir)playh.png,$get(imagedir)pauseh.png),$if($or(%ispaused%,$not(%isplaying%)),play,pause),)
$button($div($sub(%_width%,119),2),24,0,0,31,32,$get(imagedir)prev.png,$get(imagedir)prevh.png,previous,)
$button($div($add(%_width%,55),2),24,0,0,31,32,$get(imagedir)next.png,$get(imagedir)nexth.png,next,)

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • RTD and Bad Wolf out Everybody lied, there was never a Christmas script done, even though they said there was RTD brought it back then killed it with the PC overload and garbage nonsensical stories Who knows what production company will want to drink from the poisoned chalice now. The squandered opportunity with the Disney partnership will go down in production folklore
    • Problem with that is Vivaldi is the slowest chromium browser I have ever used. I keep trying it every few months in case performance has improved. ...and it's not due to specs or config. 5900x/32gigs/RTX3080 here, Win 11 25H2 etc.
    • My only concern would be the state of the battery. I'd be getting one from a place you trust and perhaps has a decent warranty.
    • Like yourself Steven P I have watched it from the days of William Hartnell, It was good when we had the Darlek's and the Cybermen. Sad to see one of the longest running shows in the world die a sad death.  
    • My problem with FF is I have to jump through hoops to get at least somewhat close to what Vivaldi gives me out of the box, with no real advantage that would make it worth my while. (But hey, apparently there's now at least experimental support for HDR in FF. I mean it's about a decade too late, but still...finally!) Brave I was never the least interested in, never saw the point, not to mention there's been quite a bit of drama surrounding them over the years. But I've been a faithful and very happy Opera user all the way back to 2001(ish), so once Vivaldi showed up following that awkward period of time after the key people left Opera and the company was sold, I never really looked back. And they never once made me question my choices.
  • Recent Achievements

    • One Month Later
      Sopa flores earned a badge
      One Month Later
    • First Post
      StaticMatrix earned a badge
      First Post
    • Week One Done
      StaticMatrix earned a badge
      Week One Done
    • Rookie
      lamborghiniv10 went up a rank
      Rookie
    • One Month Later
      pinnclepd earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      506
    2. 2
      PsYcHoKiLLa
      207
    3. 3
      +Edouard
      152
    4. 4
      Steven P.
      88
    5. 5
      ATLien_0
      79
  • Tell a friend

    Love Neowin? Tell a friend!