--- Log for 29.10.111 Server: leguin.freenode.net Channel: #rockbox --- Nick: logbot Version: Dancer V4.16 Started: 25 days and 16 hours ago 00.05.20 Quit TheLemonMan (Quit: WeeChat 0.3.6) 00.05.26 # Changes for the clip zip port are here: http://pastebin.com/yGsf7cbG if anyone's interested 00.05.44 # Dual-boot to the OF by holding vol- during boot 00.06.04 # Display is still off (no red component apparently) 00.06.16 *** Saving seen data "./dancer.seen" 00.06.23 Quit bertrik (Quit: And That, My Liege, Is How We Know the Earth to Be Banana Shaped) 00.09.08 # bertrik: what color output does RGB565SWAPPED give? 00.16.05 Join Acorn [0] (2e4019ad@gateway/web/freenode/ip.46.64.25.173) 00.16.56 Quit funman (Quit: leaving) 00.28.22 Join ChickeNES [0] (~ChickeNES@128.135.100.102) 00.31.55 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean) 00.33.23 Join Strife89 [0] (~Strife89@adsl-068-213-037-174.sip.mcn.bellsouth.net) 00.33.27 # Is it possible to begin playing an arbitrary file or playlist using the plugin API? 01.04.08 Quit ender` (Quit: There is no reason anyone would want a computer in their home. -- Ken Olson, president, chairman and founder of DEC) 01.05.49 Quit tjb0607 (Read error: Connection reset by peer) 01.09.10 Join tjb0607 [0] (~quassel@bc10753.bendcable.com) 01.09.59 Quit PokeYouInDaEye (Quit: CGI:IRC (EOF)) 01.12.22 Quit ReimuHak_ (Quit: Leaving...) 01.12.35 Join ReimuHak_ [0] (~reimu@wireless.sit-co.net) 01.22.22 Quit ChickeNES (Read error: Connection reset by peer) 01.22.43 Join ChickeNES [0] (~ChickeNES@128.135.100.102) 01.37.42 Quit keyb_gr (Ping timeout: 260 seconds) 01.47.50 Quit ReimuHak_ (Quit: Leaving...) 01.57.32 Quit GeekShadow (Ping timeout: 260 seconds) 01.57.56 Join GeekShadow [0] (~antoine@126.132.197.77.rev.sfr.net) 02.06.17 *** Saving seen data "./dancer.seen" 02.08.52 Quit Strife89 (Quit: Reboot) 02.12.17 Join Horscht [0] (~Horscht@p57B57D3C.dip.t-dialin.net) 02.12.17 Quit Horscht (Changing host) 02.12.17 Join Horscht [0] (~Horscht@xbmc/user/horscht) 02.15.09 Part domonoky 02.57.55 Quit AlexP (Remote host closed the connection) 03.02.18 Quit GeekShadow (Remote host closed the connection) 03.11.45 Quit ChickeNES (Quit: Computer has gone to sleep.) 03.33.20 Join Strife1989 [0] (~Strife89@adsl-068-213-037-174.sip.mcn.bellsouth.net) 03.34.26 Nick Strife1989 is now known as Strife89 (~Strife89@adsl-068-213-037-174.sip.mcn.bellsouth.net) 04.06.19 *** Saving seen data "./dancer.seen" 04.17.03 Quit [7] (Disconnected by services) 04.17.14 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven) 04.27.54 Quit Topy (Read error: Connection reset by peer) 04.33.14 Join ReimuHak_ [0] (~reimu@adsl-99-35-86-54.dsl.kntpin.sbcglobal.net) 04.39.35 Quit Acorn (Ping timeout: 265 seconds) 04.45.04 Quit amiconn (Disconnected by services) 04.45.05 Quit pixelma (Disconnected by services) 04.45.05 Join amiconn_ [0] (quassel@rockbox/developer/amiconn) 04.45.07 Join pixelma_ [0] (quassel@rockbox/staff/pixelma) 04.45.09 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma) 04.45.27 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn) 04.46.06 Join [Saint] [0] (~Saint]@101.98.129.152) 04.46.06 Quit [Saint] (Changing host) 04.46.06 Join [Saint] [0] (~Saint]@unaffiliated/saint/x-8516940) 04.47.43 Quit Riviera (Ping timeout: 248 seconds) 04.59.08 Join Topy44 [0] (~Topy44@f048238081.adsl.alicedsl.de) 04.59.30 Quit MethoS- (Remote host closed the connection) 05.01.18 Quit TheSeven (Disconnected by services) 05.01.38 Join [7] [0] (~TheSeven@rockbox/developer/TheSeven) 05.22.22 Quit Strife89 (Quit: Heading home.) 05.25.09 Quit amiconn (Disconnected by services) 05.25.10 Join amiconn_ [0] (quassel@rockbox/developer/amiconn) 05.25.10 Quit pixelma (Disconnected by services) 05.25.12 Join pixelma_ [0] (quassel@rockbox/staff/pixelma) 05.25.14 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma) 05.25.31 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn) 05.34.53 Join Rob2223 [0] (~Miranda@p4FFF1507.dip.t-dialin.net) 05.38.38 Quit Rob2222 (Ping timeout: 260 seconds) 05.43.04 Join zibit [0] (~a@c-24-21-161-67.hsd1.or.comcast.net) 05.45.38 Quit ReimuHak_ (Quit: Leaving...) 06.06.22 *** Saving seen data "./dancer.seen" 06.30.44 Join Rob2222 [0] (~Miranda@p4FFF0CA4.dip.t-dialin.net) 06.34.38 Quit Rob2223 (Ping timeout: 256 seconds) 06.43.10 Quit robin0800 (Quit: Leaving) 07.41.40 Quit zibit () 07.43.11 Quit antil33t (Ping timeout: 256 seconds) 07.47.11 Join bertrik [0] (~bertrik@ip117-49-211-87.adsl2.static.versatel.nl) 07.47.12 Quit bertrik (Changing host) 07.47.12 Join bertrik [0] (~bertrik@rockbox/developer/bertrik) 08.06.23 *** Saving seen data "./dancer.seen" 08.08.48 Quit factor (Read error: Connection reset by peer) 08.24.16 Join n1s [0] (~quassel@rockbox/developer/n1s) 08.25.26 Join factor [0] (~factor@74.197.205.204) 08.42.13 Join fyrestorm [0] (~nnscript@cpe-24-90-84-81.nyc.res.rr.com) 08.51.48 Quit bertrik (Ping timeout: 240 seconds) 09.07.35 Quit n1s (Ping timeout: 240 seconds) 09.09.27 # my microSDHC card in my Sansa E260 is mounting read-only recently 09.09.50 # the built in memory is mounting just fine though 09.09.56 # any idea on how I can fix this? 09.20.57 # <[Saint]> checking for fs corruption would probably be a good start. 09.34.37 # what is the policy for port status pages? Is it supposed to reflect the progress that has been commited or is it enough for "someone who does the port to achieve something working but not quite decent for inclusion"? 09.35.43 Quit Bagder (Ping timeout: 248 seconds) 09.59.18 Join Bagder [0] (~daniel@1-1-5-26a.hud.sth.bostream.se) 09.59.19 Quit Bagder (Changing host) 09.59.19 Join Bagder [241] (~daniel@rockbox/developer/bagder) 10.01.11 Quit Farthen (Excess Flood) 10.02.36 Join Farthen [0] (~Farthen@2a01:4f8:101:2a4:0:bc28:b2e1:9) 10.06.25 *** Saving seen data "./dancer.seen" 10.18.12 Quit Farthen (Excess Flood) 10.18.36 Join Farthen [0] (~Farthen@2a01:4f8:101:2a4:0:bc28:b2e1:9) 10.24.24 Quit [Saint] (Ping timeout: 260 seconds) 10.49.40 Join pamaury [0] (~quassel@213.103.191.81) 10.49.41 Quit pamaury (Changing host) 10.49.41 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 10.56.52 Quit fyrestorm (Read error: Connection reset by peer) 11.13.57 Join ender` [0] (~ender@foo.eternallybored.org) 11.19.44 Join mortalis [0] (~mortalis@77.108.98.176) 11.37.31 Join n1s [0] (~quassel@rockbox/developer/n1s) 11.39.32 Quit pamaury (Ping timeout: 245 seconds) 11.40.46 Quit mortalis (Quit: KVIrc 4.1.1 Equilibrium http://www.kvirc.net/) 11.40.49 Join lebellium [0] (~chatzilla@91-65-137-216-dynip.superkabel.de) 11.42.58 Join lorenzo92 [0] (~chatzilla@host139-14-dynamic.182-80-r.retail.telecomitalia.it) 11.44.00 # hi all! For my R0 port I decided that I must take another path, exploit SDL only for audio and not for graphics 11.44.09 # this why recompiling a kernel is too buggy 11.44.19 # samsung didn't provide the right things probably 11.44.35 # so I need to use directly a framebuffer (/dev/fb0) 11.48.36 Join Kiwi_Cam [0] (~KiwiCAM@207.193.69.111.dynamic.snap.net.nz) 11.49.47 Quit fs-bluebot (Read error: Connection reset by peer) 11.52.02 Quit KiwiCam (Ping timeout: 245 seconds) 11.52.08 # I just need to figure out how RB drawing (from lcd init, to udpate ecc) everything 11.52.50 Join fs-bluebot [0] (~fs-bluebo@g226069202.adsl.alicedsl.de) 11.58.14 # lorenzo92: what's wrong with sdl drawing? 11.58.34 Quit Llorean (Read error: Connection reset by peer) 11.58.56 # nothing...but recompiling a kernel drives me mad; no framebuffer sleep is possible (= device crash); OF crashes after song changes etc 11.59.03 # JdGordon: is r30846 alright? 11.59.48 # no usb is accessible throug script...I really don't know what's the mess, I tried lots of hacks loosing only time 11.59.49 # lorenzo92: you don't need to recompile the kernel if you don't do sdl drawing? 12.00.15 # yes..accessing directly to framebuffer. In this way I don't need to recompile it 12.00.36 Join Llorean [0] (~DarkkOne@99-68-45-56.lightspeed.hstntx.sbcglobal.net) 12.00.44 # and so, as we have no multiple apps running it's the best deal 12.00.59 # I don't know how the linux framebuffer works, but I assume it's similar to what we call framebuffer 12.01.01 # it should be even faster than sdl and maybe less power consuming 12.01.09 # kugel: its not obviously wrong.. need to have more thna a 10s look to say if it is right though.. probably is 12.01.12 # i.e. just an array of pixels 12.01.14 # yes should be. 12.01.17 # ah yes it is 12.01.19 # hehe 12.01.49 # in 2 words: I map a memory region (240*320*3 size) and then here are our beautiful pixels 12.02.04 # *3? 12.02.20 # uhm...3 bytes x pixel? 12.02.37 # we use 2 byte per pixel 12.02.43 # ah ok :) 12.02.45 # RGB565 format 12.03.11 # well, we supprt a number of other formats as well, but this is the easiest to work with 12.03.44 # you only need to port putting that pixel array to the screen, with format conversion possibly 12.04.19 # okay...so now I need to see some other ports. Do you suggest me one? 12.04.38 # what are the main functions to be "binded"? 12.04.58 # lcd_init_device(), lcd_update() and lcd_update_rect() 12.05.40 # (lcd_update()/_rect can wrap each other if wanted) 12.06.26 *** Saving seen data "./dancer.seen" 12.07.04 # perfect. Seem to be not so difficult, maybe it is a bit for me that I'm still not so C-guru haha 12.08.18 # ah another question...lcd-charcell in your sdl port is used to simlulate something? Do I need it? 12.08.26 # no 12.08.35 # the simulators use sdl 12.08.53 # okay I guessed that. So I need to remove them..thanks 12.09.40 Join mgue [0] (~mgue@p5DDA21E9.dip.t-dialin.net) 12.10.08 Join thomasjfox [0] (~thomasjfo@rockbox/developer/thomasjfox) 12.10.40 Join MethoS- [0] (~clemens@134.102.106.250) 12.14.10 Join GeekShadow [0] (~antoine@126.132.197.77.rev.sfr.net) 12.14.25 # so I need to deeply modify the lcd-bitmpap.c.... 12.17.31 # Hello, the %Vb(color) tag doesn't work when the %X tag is used?!!! 12.21.27 # I don't manage to set a background color in a viewport when there is a general background (%X) 12.23.38 Nick kugel is now known as kugelp (~kugel@rockbox/developer/kugel) 12.24.12 # lorenzo92: just create a new file if you don't use ask 12.24.45 # yes yes...in that way of course. I won't use the SDL one ;) 12.25.48 # lebellium: yep, nothing you can do about that unfortunately 12.25.52 # longstanding issue 12.26.00 Quit amiconn (Remote host closed the connection) 12.26.00 Quit pixelma (Read error: Connection reset by peer) 12.26.34 Join amiconn [0] (quassel@rockbox/developer/amiconn) 12.26.36 Join pixelma [0] (quassel@rockbox/staff/pixelma) 12.26.46 # JdGordon: That's not the answer I expected but thank you very much, now it's clear, I won't waste much time on it lol 12.27.09 Nick kugelp is now known as kugel (~kugel@rockbox/developer/kugel) 12.27.24 Quit amiconn (Remote host closed the connection) 12.27.24 Quit pixelma (Remote host closed the connection) 12.30.05 Join liar [0] (~liar@clnet-p09-185.ikbnet.co.at) 12.31.38 Join KiwiCam [0] (~KiwiCAM@224.193.69.111.dynamic.snap.net.nz) 12.32.34 Join keyb_gr [0] (~chatzilla@p4FF03041.dip.t-dialin.net) 12.34.07 Quit Kiwi_Cam (Ping timeout: 245 seconds) 12.39.51 # lcd_update_rect -> this is the only function that really makes the framebuffer data visible right? 12.42.40 # on the screen... 12.45.12 # yes (lcd_update() too) 12.46.01 # and the rb framebuffer data is stored in? 12.46.23 # ah this ? lcd_framebuffer 12.47.15 Join Thra11 [0] (~thrall@230.72.113.87.dyn.plus.net) 12.52.47 Join benedikt93 [0] (~benedikt9@unaffiliated/benedikt93) 12.52.47 Join AlexP [0] (~alex@rockbox/staff/AlexP) 12.53.05 # yes 12.58.33 Join dfkt [0] (~dfkt@unaffiliated/dfkt) 13.00.15 Join TheLemonMan [0] (~LemonBoy@ppp-151-25.26-151.libero.it) 13.09.00 Quit thomasjfox (Remote host closed the connection) 13.11.07 Join Acorn [0] (2e4019ad@gateway/web/freenode/ip.46.64.25.173) 13.11.11 # Is it possible to begin playing an arbitrary file or playlist using the plugin API? 13.13.46 # is ft_enter() in he plugin api? 13.16.32 # wouldn't playlis_add() + function to play file at given index work ? 13.17.02 # probably playlist_start i guess 13.17.51 Quit keyb_gr (Ping timeout: 258 seconds) 13.19.01 # Acorn: yes 13.19.26 # Ah, so I need to create a playlist and then play that? 13.21.06 # right. have a look at pictureflow 13.21.21 Join keyb_gr [0] (~chatzilla@p4FF03041.dip.t-dialin.net) 13.27.22 # okay. I'm seeing something on the screen but seems to be monochrome + crappy 13.27.29 # but that's fine, need to tune something 13.28.46 # kugel: Is there any way to find out what index in the playlist is currently being played? Or do you have to keep track of that yourself by checking for track changes? 13.29.15 # using audio_has_changed_track() 13.29.43 # kugel: this is what I get opening FB device...The framebuffer device was opened successfully. 13.29.45 # 240x320, 24bpp 13.29.46 # The framebuffer device was mapped to memory successfully. 13.29.55 Join The_Seeker [0] (~seeker@5ac8999a.bb.sky.com) 13.30.32 # Acorn: doesn't look like there's a function for that 13.32.52 # lorenzo92: 24bpp doesn't match rockbox framebuffer 13.33.05 # okay. it is 16 bit right? 13.33.11 # yes 13.33.18 # i should be able to change it easily... 13.33.23 Nick kugel is now known as kugelp (~kugel@rockbox/developer/kugel) 13.34.01 Nick kugelp is now known as kugel (~kugel@rockbox/developer/kugel) 13.38.12 Join pixelma [0] (quassel@rockbox/staff/pixelma) 13.38.12 Join amiconn [0] (quassel@rockbox/developer/amiconn) 13.41.41 Join y4n [0] (y4n@unaffiliated/y4ndexx) 13.48.40 Nick kugel is now known as kugelp (~kugel@rockbox/developer/kugel) 13.48.58 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 13.49.27 Quit pamaury (Client Quit) 13.49.33 Join pamaury [0] (~quassel@213.103.191.81) 13.49.33 Quit pamaury (Changing host) 13.49.33 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 13.49.40 # great!!! It's working fairly well hehe 13.49.53 # many thanks..now I need to implement lcd sleep etc 13.50.13 # now rb is usable with OF 13.50.58 # cool 13.53.37 # kugel: basically it's just this to update screen hehe -> memcpy(out, p, pixels * 2); 13.53.42 # indeed simplier than sdl 13.54.30 Quit pamaury (Ping timeout: 252 seconds) 14.06.29 *** Saving seen data "./dancer.seen" 14.07.49 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky) 14.10.06 # kugelp: don't know why but it's even faster the startup etc. Using OF kernel is the best solution 14.10.40 # not surprised :-) 14.12.12 # what is supposed to do lcd_blit_yuv? I just copied-pasted from original lcd-bitmap... 14.19.40 # it's used by the mpegplayer plugin to convert from yuv and blit to the display without going via framebuffer 14.25.35 # so I'll keep it..thanks 14.26.01 # i still have some little glitches but the base is working fine ;) 14.29.29 Nick kugelp is now known as kugel (~kugel@rockbox/developer/kugel) 14.34.23 Nick soap_ is now known as soap (~soap@rockbox/staff/soap) 14.45.04 Join mortalis [0] (~4d6c62b0@www.haxx.se) 14.52.37 Join [Saint] [0] (~Saint]@unaffiliated/saint/x-8516940) 15.11.13 Join pamaury [0] (~quassel@213.103.191.81) 15.11.13 Quit pamaury (Changing host) 15.11.14 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 15.18.43 Quit Staphylo (Quit: Bye Bye =)) 15.19.30 Quit benedikt93 (Quit: Bye ;)) 15.23.50 Nick kugel is now known as kugelp (~kugel@rockbox/developer/kugel) 15.28.40 Nick kugelp is now known as kugel (~kugel@rockbox/developer/kugel) 15.37.44 Quit The_Seeker (Quit: I know your passwords) 15.50.15 Quit lorenzo92 (Quit: ChatZilla 0.9.87 [Firefox 7.0.1/20111008085652]) 16.06.31 *** Saving seen data "./dancer.seen" 16.06.59 Quit mortalis (Quit: CGI:IRC (EOF)) 16.12.24 Join abckb__ [0] (~abckb@223.180.183.41) 16.19.20 # hi, i have an ipod shuffle 2nd generation, can i install rockbox on it? 16.22.18 # abckb__: no, rockbox doesn't run on any shuffle 16.22.19 # New commit by 03pamaury (r30849): sbtools: factor key code, introduce crypto layer, move from open/read/... to fopen/fread/..., add support for encryption/decryption using a device ... 16.23.04 # Bagder: ok thanks 16.24.14 # r30849 build result: All green 16.31.01 Part abckb__ ("Ex-Chat") 16.34.27 Join ReimuHak_ [0] (~reimu@adsl-99-35-86-54.dsl.kntpin.sbcglobal.net) 16.44.57 Quit pamaury (Ping timeout: 245 seconds) 16.46.50 Nick kugel is now known as kugelp (~kugel@rockbox/developer/kugel) 16.46.58 Nick kugelp is now known as kugel (~kugel@rockbox/developer/kugel) 17.07.44 Quit TheLemonMan (Quit: WeeChat 0.3.6) 17.08.13 Nick [sanyi] is now known as [Sanyi] (~sanyi@unaffiliated/alexanderc) 17.08.23 Quit Topy44 (Ping timeout: 240 seconds) 17.16.04 # New commit by 03kugel (r30850): Better fix for FS#12337. Use 0 to make the line height calculated from the font height, as before r30773. 17.17.36 # r30850 build result: All green 17.19.11 Quit Unhelpful (Ping timeout: 240 seconds) 17.28.01 Join einhirn [0] (~Miranda@p4FC7443C.dip0.t-ipconnect.de) 17.35.45 # hm; I wonder if we could support 32bit bitmaps (ARGB8888) for themes 17.37.14 # from what I gather there's no problem to re-use the alpha blending from AAF for transparent bitmaps 17.40.51 # the only problem is that they need a different in-ram representation than normal bitmaps (which are converted to native format at loading time) 17.42.35 # anyone fancy implementing it? :) 17.57.41 Quit Zarggg (Ping timeout: 258 seconds) 17.57.53 Join ChickeNES [0] (~ChickeNES@128.135.100.102) 18.02.46 Quit Llorean (Changing host) 18.02.46 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean) 18.05.15 Join Zarggg [0] (~zarggg@24.229.139.169.res-cmts.sm.ptd.net) 18.05.59 Quit factor (Ping timeout: 240 seconds) 18.06.35 *** Saving seen data "./dancer.seen" 18.08.06 Join factor [0] (~factor@74.197.205.204) 18.11.06 Join bertrik [0] (~bertrik@rockbox/developer/bertrik) 18.11.30 Quit factor (Read error: Connection reset by peer) 18.11.41 Join factor [0] (~factor@74.197.205.204) 18.22.34 # I figured out part of the problem with the weird colours on the clip zip, I was incorrectly writing a bunch of (what seems like) curves that map the pixel value into RGB intensities 18.23.00 # but red and blue are still reversed, so it appears as BGR565 encoding instead of RGB565 18.26.48 # apparently there can be two different kinds of display on the clip zip, but unfortunately I can't find a datasheet for the one now in my clip zip 18.27.09 # (I expect that the display controller allows me to switch between RGB and BGR) 18.30.54 Quit einhirn (Read error: Connection reset by peer) 18.32.44 Join lorenzo92 [0] (~chatzilla@host179-108-dynamic.40-79-r.retail.telecomitalia.it) 18.33.48 Join toffe82_ [0] (~chatzilla@adsl-70-235-225-233.dsl.frs2ca.sbcglobal.net) 18.34.27 # I was wondering how hold button works...I already set up the keymap and then enabled the support, but then? 18.34.43 Join Unhelpful [0] (~quassel@rockbox/developer/Unhelpful) 18.43.29 Quit bertrik (Remote host closed the connection) 18.44.27 Quit ChickeNES (Quit: Computer has gone to sleep.) 18.45.38 Join bertrik [0] (~bertrik@ip117-49-211-87.adsl2.static.versatel.nl) 18.45.38 Quit bertrik (Changing host) 18.45.38 Join bertrik [0] (~bertrik@rockbox/developer/bertrik) 18.47.08 Quit Acorn (Quit: Page closed) 18.56.13 # hmm, I'm actually pondering having a go at transparent bitmap support 18.57.32 # thinking about the internal representation. What would be nicer/better? store as 32bbp (as in the bitmap file), ARGB8565 (24bbp) or alpha and colors entirely separately? 18.57.54 # (e.g. a rgb565 buffer and a alpha buffer (4 or 8 bbp)) 18.58.19 # I think the latter would be the easiest to implement, since the existing rgb565 can be reused 18.58.59 Join pamaury [0] (~quassel@213.103.191.81) 18.58.59 Quit pamaury (Changing host) 18.58.59 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 19.01.49 # New commit by 03pamaury (r30851): sbtools: move sb file production to its own file with a clean api, factor key reading even more 19.02.08 # Zoiah: here ? 19.02.09 Quit pamaury (Client Quit) 19.02.15 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 19.02.18 # pamaury: yes. :D 19.02.44 # I've got all the tools ready to decrypt the firmware 19.02.55 # I saw the blinking taskbar, went to the channel and thought: "Shit, did I just miss him again?". 19.02.57 # Woo. :) 19.03.20 # just need to commit one more thing and you'll be able to test it :) 19.03.22 # r30851 build result: All green 19.03.32 # I'll fire up my VM. 19.04.21 # New commit by 03pamaury (r30852): sbtools: add options to override real key and IV, fix output prefix in sbtoelf, unify command line to add keys 19.05.11 Quit Unhelpful (Ping timeout: 240 seconds) 19.05.49 # r30852 build result: All green 19.06.21 Nick kugel is now known as kugelp (~kugel@rockbox/developer/kugel) 19.06.42 Join thomasjfox [0] (~thomasjfo@rockbox/developer/thomasjfox) 19.07.03 # I need to: 19.07.04 # - $(LD) $(LDFLAGS) -o $@ $^ 19.07.04 # + $(LD) -o $@ $^ $(LDFLAGS) 19.07.08 # - $(LD) $(LDFLAGS) -o $@ $^ 19.07.08 # + $(LD) -o $@ $^ $(LDFLAGS) 19.07.21 # Otherwise: 19.07.22 # crypto.o: In function `crypto_apply': 19.07.22 # /home/smite/tmp/rockbox/utils/sbtools/crypto.c:75: undefined reference to `libusb_init' 19.08.00 # ok, here it goes 19.08.06 # New commit by 03bertrik (r30853): Sansa clip zip: update mkamsboot and fix various drivers to make it boot to the main firmware 19.08.38 # Zoiah: ok thanks, will change that, I need to commit the usbotp part also 19.09.41 # r30853 build result: All green 19.09.44 # New commit by 03pamaury (r30854): sbtools: fix compilation when linker expects correctly ordered files 19.11.03 # Zoiah: ok with this ? 19.11.12 # r30854 build result: All green 19.12.45 Quit Zarggg (Ping timeout: 260 seconds) 19.13.08 # pamaury: seems to build fine now. :) 19.14.20 # ok, now I need to do something. I wrote the tool to encrypt/decrypt on device 19.14.36 # but the final production and crafting is rather dependent on the device 19.14.46 # so I don't really know how to do this 19.14.57 # Can I help you with anything? 19.15.19 Quit liar (Remote host closed the connection) 19.15.28 # It's more a question of how I organize things to commit, I don't want to commit something particular to your device :) 19.15.42 # perhaps a README with the instruction is better 19.15.58 # Or you just tarball it up and I'll give it a spin? 19.16.22 # yeah that might works, I will torture myself on this issue later :) 19.17.21 # :) 19.17.34 Join Zarggg [0] (~zarggg@24.229.139.169.res-cmts.sm.ptd.net) 19.18.19 # :) 19.18.32 # Sorry, wrong window. :) 19.19.23 # I sent you the archive 19.19.38 # the best way would be to unzip it in utils/ in the roxkbox SVN 19.19.47 # so you utils/imxusbotp/* 19.19.50 # *have 19.20.49 # when it's done, you don't need to rebuild, I sent you the fully built version but I encourage you to check it's build correctly with make clean && make 19.21.33 # then in utils/imxusbotp/ do: sudo ../imx_hid_recovery/imxhidrecovery 1024 usbotp-hack.sb 19.22.19 # Ok. 19.22.59 # done ? 19.23.15 # Builds fine. 19.23.17 # Now to try. :) 19.24.14 # Ok, ran. 19.24.58 # ok, when you have sent the file to the device, go in the directory where you have the .sb file of the device. Let's say you want to decrypt firmware.sb you do: (you will need to recompile sbtoelf with the latest svn version) 19.24.58 # sudo sbtoelf -a "usbotp(066f:3780)" -o FIRMWARE. firmware.sb 19.25.36 # One moment. 19.26.20 # Final signature: 19.26.20 # Encrypted SHA-1: 19.26.20 # 9E 08 F6 CF 22 1C CA B0 BC 64 64 AA F0 8D A2 33 19.26.20 # 31 2B 41 F9 F4 39 28 16 37 08 50 98 21 5A 0C 6A 19.26.20 # File SHA-1: 19.26.21 *** Alert Mode level 1 19.26.21 # 82 07 C6 5E C9 56 17 32 B6 82 30 18 1F C8 15 2F 55 0B 36 55 Ok 19.26.29 # Lol, it looks like it worked. :D 19.27.03 # http://pastebin.com/U3MT1pXD 19.27.26 # victory \o/ 19.27.49 # I would appreciate if you send me the files produces (all the FIRMWARE.*) 19.27.53 # *produced 19.27.54 # Just wanted to ask this. :) 19.29.37 # I would be tempted to say we did a great job :) 19.29.51 # now you need to reverse engineer the firmware :) 19.29.58 # IDA to the rescue. ;) 19.30.17 # To figure out the parts and stuff, right? 19.30.24 # Or something else in particular? 19.31.27 # Basically if you want to port rockbox you will need to figure out: the hardware (did you open it ?), what to keep in the OF (like memory init and so one), how to init the external hardware like LCD, nand/sd/audio codec if any... 19.31.31 # the main step is the lcd 19.32.18 # It would be great if you could write things on the wiki so information is not lost 19.33.10 # I'll give it a whirl. :) 19.33.29 # how do I generate bitmaps for plugins? pitch notes for the pitch detector plugin, for example 19.35.09 # and can anyone explain /home/bertrik/rockbox.git/rockbox/apps/recorder/jpeg_idct_arm.S:25:31: error: apps/core_asmdefs.h: No such file or directory ? 19.35.15 Nick [Sanyi] is now known as [sanyi] (~sanyi@unaffiliated/alexanderc) 19.36.22 *** Alert Mode OFF 19.37.31 Nick [sanyi] is now known as [Sanyi] (~sanyi@unaffiliated/alexanderc) 19.37.40 Join stoffel [0] (~quassel@p57B4B782.dip.t-dialin.net) 19.39.27 Quit lorenzo92 (Quit: ChatZilla 0.9.87 [Firefox 7.0.1/20111008085652]) 19.39.40 Nick kugelp is now known as kugel (~kugel@rockbox/developer/kugel) 19.39.55 # oh, that last thing just needed a make clean it seems 19.40.42 Join robin0800 [0] (~robin0800@149.254.61.29) 19.43.37 Quit Horscht (Quit: Verlassend) 19.49.07 Join benedikt93 [0] (~benedikt9@unaffiliated/benedikt93) 19.57.13 # pamaury: why do all sections have a counterpart with 'L' on the second character? 19.58.06 # don't know, of all sb files I've seen I can tell this one is really different 19.58.18 # data sections are basically useless for you 19.58.26 # they contain data like images for example 19.58.55 # play is probably the firmware, host is usb 19.59.05 # ____ is init/boot 19.59.16 # mlc_ is something I've never seen 19.59.16 # Does the device run ELFs concurrently? 19.59.25 # Or is there always only one running? 19.59.50 # no, it begins with ____, then ____ can switch to another section 20.00.07 # usually it's switching to host if usb is plugged and play otherwise 20.00.25 # but here there are more so I can't really tell, you'll have to look at the code to see 20.00.46 # In any case, you should begin with ____ and then go to host because these are probably the "simplest" 20.00.54 # Yeah. 20.01.01 # host is very readable. 20.01.51 Quit stoffel (Ping timeout: 248 seconds) 20.02.43 # Are there special "modes" on the device ? 20.02.55 # Perhaps the "L" are overlays like plugins 20.03.08 # They're very similar to the non-L. 20.03.33 # good point 20.03.39 # language difference perhaps ? 20.03.49 # or region ? 20.06.31 # try to diff the resulting elf ? :) 20.06.37 *** Saving seen data "./dancer.seen" 20.06.58 # I do. 20.07.04 # Some are very different, some are minimal. 20.07.17 # http://pastebin.com/8RHtmgHi 20.07.47 Join Jerom [0] (~jerome@79.132.42.48) 20.08.19 # indeed, just a few bytes, what a waste 20.09.08 # it would be interesting to know what are mlc_ and lba_, I'll have a try at reverse engineering, don't focus on them presently :) 20.10.39 # backlight-target.h is weird 20.13.35 Quit robin0800 (Ping timeout: 240 seconds) 20.13.45 # pamaury: all .L.. versions are shorter than the normal versions. 20.14.38 # bertrik: w.r.t to what ? 20.15.02 Join robin0800 [0] (~robin0800@149.254.60.29) 20.15.33 Quit thomasjfox (Remote host closed the connection) 20.15.45 # it has prototypes that other code depends upon, so those prototypes could better be in backlight.h and not be repeated in every backlight-target.h instance 20.15.58 # Zoiah: or perhaps this firmware handles several plays / versions of the hardware 20.22.13 # pamaury: the difference between regular and L seems a bit too consistent to me for that. 20.23.27 # Looks like it refers to the internal storage as 'a:/' on a few places. 20.23.38 # for i in FIRMWARE*elf; do echo $i; strings $i | grep -i "a:/"; done 20.24.45 # Zoiah: If you want I can send you my ida files for the fuze+, if they are based on the same sdk, it will save you some time because some part were really tricky to understand 20.25.01 # Please. :) 20.25.37 # ok, I'll do that later, don't want to boot my VM now but I'll do it :) 20.25.53 # It refers to sdk_os stuff a few times. 20.26.07 # ok, then it's probably based on it 20.26.41 # I think the mlc_/lba_ things are ran before the normal runtime. 20.26.57 # It also handles reading the /firmware.sb and updating the device. 20.27.18 Quit MethoS- (Read error: Connection reset by peer) 20.27.49 # hello guys, why "%?if(%mp, =, 0)" doesn't work? 20.28.11 # I want to display the picture only when playback is not stopped 20.28.37 # but I don't know what the format of %mp. Seems like it's neither "Stop" nor "0" 20.31.00 # lebellium: isn't it documented in the manual ? (I've never written a wps) 20.31.11 Quit robin0800 (Ping timeout: 240 seconds) 20.32.13 # pamaury: I read this page http://www.rockbox.org/wiki/CustomWPS again and again but sometimes I don't understand how to use some tags in conditional tags, that's not clear like for this %mp 20.32.50 Join robin0800 [0] (~robin0800@149.254.61.157) 20.34.19 # any volunteers to port cabbiev2 to a 96x96 resolution? 20.34.40 # lebellium: I can't really help you since I've never written a wps. Perhaps bertrik ? JdGordon ? 20.34.44 # [Saint] ? 20.35.32 # pamaury: Yep no problem, thanks anyways :) If a theme expert read these words I assume he will help me 20.35.52 # pamaury: hmm, the difference between lba/mlc is similar to the difference between regular and L. :) 20.36.11 # Actually, mlc/lba and regular/L respectively. 20.36.57 # interesting, that's doesn't tell what mlc is however :) Perhaps some updater 20.37.00 # or recovery 20.37.11 # is there such thing ? 20.37.21 # mlc is ran before the regular firmware. 20.37.29 # It checks for presence of /firmware.sb among other things. 20.37.38 # Philips uses the regular 3780 recovery for recovery. 20.38.15 # you can't tell, it must be ran before but it might also never go to the main firmware after it 20.38.33 # The recovery is even built in as standard feature in their media management App, Philips Songbird. 20.38.56 # ah yeah, you told me that :) 20.39.11 # I'll disassemble it and see :) 20.39.12 # If I put a false firmware.sb it takes far longer to progress through the 'Updating' bar which happens during booting. 20.39.29 # And it's the only ELF that refers to firmware.sb. 20.39.32 # it might be interesting for you to read the SbFileFormat page on the wiki to understand the format a bit 20.39.36 # I need to leaf 20.39.42 # *leave 20.39.50 # Ok, will do. 20.39.54 # Thanks for your hard work. :) 20.41.35 Quit robin0800 (Ping timeout: 240 seconds) 20.42.18 # My random guess would mean that mlc refers to the internal NAND flash and lba would refers to some lba-addressable SD card. 20.43.58 Join robin0800 [0] (~robin0800@149.254.61.157) 20.46.36 # Even though pLay.1.elf is shorter than play.1.elf, it does refer to a lot of NAND_ functions, where the other does not. 20.49.24 # Hm, should see which functions refer to the NAND_ thing and if they also exist in the other. :) 20.52.28 # pamaury: maybe it would be beneficial to also dump the bootloader of this device to see if it has been customized in any way? 20.53.58 Quit pamaury (Ping timeout: 252 seconds) 20.56.53 Quit mgue (Ping timeout: 258 seconds) 20.58.32 Join mgue [0] (~mgue@p5DDA3B03.dip.t-dialin.net) 21.08.28 Join Acorn [0] (2e4019ad@gateway/web/freenode/ip.46.64.25.173) 21.08.57 # Is there any way to start playing a specific playlist using the plugin API? 21.15.24 # it appears the needed functions are already present. if not, add them 21.20.11 Quit guymann (Ping timeout: 255 seconds) 21.24.42 # which functions should I be looking at? I see there's one for creating a playlist which you can then play, but none to specify a playlist file 21.26.53 # playlist_* 21.28.06 # probably playlist_insert_playlist 21.30.59 Quit Zarggg (Ping timeout: 260 seconds) 21.32.09 Quit robin0800 (Ping timeout: 252 seconds) 21.33.38 Join robin0800 [0] (~robin0800@149.254.61.232) 21.36.39 Quit Thra11 (Ping timeout: 244 seconds) 21.41.49 Quit robin0800 (Ping timeout: 244 seconds) 21.43.51 Join robin0800 [0] (~robin0800@149.254.60.157) 21.50.14 Join Thra11 [0] (~thrall@16.101.113.87.dyn.plus.net) 22.02.00 Join fml [0] (~chatzilla@manz-590f3192.pool.mediaWays.net) 22.03.15 # Out of C curiosity: what does the following line do (from lcd-bitmap-common.c): height = s->vp->line_height ?: (int)font_get(s->vp->font)->height; There is no first expression. Is it standard C? 22.05.41 # New commit by 03bertrik (r30855): Sansa clip zip: add missing prototype to backlight-target.h 22.06.38 # font_get must return a struct pointer 22.06.40 *** Saving seen data "./dancer.seen" 22.07.19 # r30855 build result: All green 22.07.22 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 22.07.44 # oops, misread 22.08.02 # Zoiah: no there is no benefit in dumping the bootloader, it's stored in ROM and can't be customized. Much stmp3780 are shipped with version A4 and there is a A5 too fixed a few issues 22.08.14 # New commit by 03bertrik (r30856): Sansa clip zip: update target configuration with correct battery capacity, album art 22.08.16 # pamaury: ahh, ok. 22.08.24 # fml: I think that means leave height as is unless the test fails? 22.08.54 # pamaury: who decides which elf to run next? The bootloader? or is the bootloader told that by the elf in some form of exitcode/return? 22.09.43 # pamaury: also, I just noticed that the output of sbtoelf is not always consistent. Some files differ between runs. 22.09.48 Quit ReimuHak_ (Ping timeout: 240 seconds) 22.09.54 # r30856 build result: All green 22.10.08 # I do: for i in {1..10}; do mkdir $i; sudo ../sbtoelf -a "usbotp(066f:3780)" -z -o $i/FIRMWARE. firmware.sb; done 22.10.40 # Zoiah: the elf files shouldn't differ :-/ 22.11.38 # The changes aren't distributed in filesize, strangely enough. 22.11.58 # you should read the SbFileFormat page on the wiki or download the source of sbtoelf on freescale website (there is a pdf with the spec); basically the elf files are just a way to reverse engineer it, it's not something really concrete 22.12.00 # http://pastebin.com/Qet9QZHF 22.12.40 # fml: yeah, it's basically "height = s->vp->line_height ? height : (int)font_get(s->vp->font)->height;" and not standard 22.12.49 # the first section to be executed is ____, it "runs" ____.0 then ____.1 etc and then either it stops or one of the "CALL" asks the bootloader to jump to another section 22.13.50 # jhMikeS: I didn't know it's possible (I mean the syntax). Shouldn't it be changed to standard? 22.13.51 # Zoiah: the command line is a bit crypitc for me, what does it do ? 22.14.10 Join ReimuHak_ [0] (~reimu@99.35.86.54) 22.14.26 # fml: not like we don't use gcc extensions if we darn well please, and if linux uses it, it must be right as well :) 22.14.32 # pamaury: amount of differing versions of that file. 22.15.01 # pamaury: so, 10 runs of sbtoelf on the same source ends up with 10 different copies of FIRMWARE.____.2.elf. 22.15.04 # can you pastebin the diff between two versions. Check that the output of sbelf says all checksums are right, 22.15.06 Nick [Sanyi] is now known as [sanyi] (~sanyi@unaffiliated/alexanderc) 22.15.40 # perhaps I broke sbtoelf in one of the recent commits :-/ 22.15.46 # let me check 22.16.28 # http://pastebin.com/BGW6RjJr 22.16.36 # I'll re-run my sbtoelfs and record the outputs. 22.17.59 # might be some padding I introduce in the elf files, that's really weird 22.18.45 # Maybe my box is broken. ;) 22.18.54 # It's curious how one file _always_ changes. 22.18.58 Join The_Seeker [0] (~seeker@5ac8999a.bb.sky.com) 22.18.58 # And the rest just randomly. 22.19.49 # give me a minute, I will hack my tools to decrypt your file now that I have the real key 22.20.24 # pamaury: output of sbtoelf is even the same, even though it results in 10 different copies of FIRMWARE.____.2.elf 22.21.01 Quit The_Seeker (Client Quit) 22.22.37 # ok, if the output is the same, it means crc went all good so the tools either adds some padding I'm not aware of (that would be strange ^^) or this is some uninitialized data (bad !) 22.23.48 Quit keyb_gr (Ping timeout: 240 seconds) 22.24.29 # Zoiah: I've got the answer 22.24.35 # Woo. :) 22.24.56 # I think because of some padding, when fseek-ing, it will write some unitialized data 22.25.29 # that is, if I fwrite from 0 to 6 and then fseek to 8, byte 7 will be random 22.25.34 # That makes sense. 22.26.02 # that's a bit bad, I'll try to change that, I don't like this behaviour 22.26.24 # I knew it, because valgrind report unitialized data when fseeking 22.33.34 # BTW, SA3ARAK08 (succesor of this device) has the same firmware format, but different key. 22.33.44 # But the sectionnames aren't encrypted. 22.33.55 # There they have a mlc_ and mmc_ instead of mlc_ and lba_. 22.34.46 # And an S version of every executable. 22.35.38 # Oh, and philips supplies sa2ara08k_02_hf1_kor.zip, sa2ara08k_02_hf1_deu.zip, sa2ara08k_02_hf1_eng.zip, etc. 22.35.42 # But they're all identical. :) 22.35.56 # And I tried to sign up for the wiki, but it does not like me. :( 22.35.57 Quit fml (Quit: ChatZilla 0.9.87 [Firefox 7.0.1/20110928134238]) 22.36.39 Quit Llorean (Read error: Connection reset by peer) 22.36.59 # perhaps you need to ask, don't remember I signed up a long time ago :) 22.40.50 # Zoiah: which tool do you use to make a hex diff ? 22.41.24 # New commit by 03jethead71 (r30857): Fix FS#12356 : next track advances when skip in repeat one mode. audio_flush_and_reload_track wasn't called when the setting changed from the playback ... 22.41.27 # pamaury: diff -urN <(xxd file1) <(xxd file2) 22.41.37 # or ok, I thought about that :) 22.42.09 # There probably are better tools, but this one is stuck in my brain. ;) 22.42.26 # which one is the file changing all the time so I can check ? 22.42.48 # r30857 build result: All green 22.43.01 # I'm attempting to play a playlist from an Lua script, but I'm getting the error "/test.lua:6: attempt to index field 'contexts' (a nil value)". What am I doing wrong? http://paste.pocoo.org/show/500180/ 22.43.16 # FIRMWARE.____.2.elf changes most frequently. 22.43.38 # oh, just realised the error is thrown by the input handling 22.44.26 # pamaury: oh, and not sure if this is your code, but the abort() thrown by the default getopt-handler is a bit harsh. ;) 22.44.45 # hmm, now it just gets stuck on a "loading.." splash :( 22.44.58 # pamaury: and confusing, because the usage outputs a -r for raw mode, but getopt doesn't handle it. 22.45.51 # Zoiah: abort should never happen, it means a bug, I must have overlooked the short mode 22.46.57 # strangly enough I don't seem to get different files accross executions 22.47.45 # switch(c) 22.47.45 # { 22.47.48 # default: 22.47.48 # abort(); 22.47.48 # Zoiah: do you have a 32-bit or a 64-bit machine ? Perhaps this is related to it 22.48.07 # pamaury: 32-bit VM with latest Ubuntu running on 64-bit Windows 7. ;) 22.48.45 # hum, I'm running a 64-bit one, so I would be the most likely to see strange things :) 22.49.06 Quit Thra11 (Ping timeout: 252 seconds) 22.49.27 # -00001a0: 041c 0000 6602 5709 cc00 0000 0000 0000 ....f.W......... 22.49.27 # +00001a0: 041c 0000 6602 e708 cc00 0000 0000 0000 ....f........... 22.49.34 # FIRMWARE.____.2.elf 22.49.52 Quit benedikt93 (Quit: Bye ;)) 22.49.55 Join lorenzo92 [0] (~chatzilla@host55-111-dynamic.31-79-r.retail.telecomitalia.it) 22.50.00 # It's always 0x1a6 that's different. 22.50.14 Quit lorenzo92 (Client Quit) 22.50.17 # Zoiah: try this http://pastebin.com/vm354xvz 22.51.53 # or perhaps there is a bug somewhere but the data is written with some delay and it only shows up on fseek... 22.52.11 Quit y4n (Quit: PÆNTS ØLF!) 22.52.27 # Does anyone know of an example Lua script that plays a playlist? or does some other playback control? 22.52.56 # pamaury: still same effect. 22.53.11 Quit robin0800 (Ping timeout: 240 seconds) 22.53.34 # pamaury: http://pastebin.com/eRNUgfrz 22.54.32 # I don't have the same content at this location ! 22.56.04 Join robin0800 [0] (~robin0800@149.254.60.157) 22.56.05 # FIRMWARE.____.2.elf, right? 22.56.07 # From firmware.sb? 22.56.15 # From sa2ara08k_02_hf1_eng.zip? 22.57.05 Quit scorche (Disconnected by services) 22.57.12 Join scorche` [0] (~scorche@rockbox/administrator/scorche) 22.58.56 # Zoiah: I *might* have the answer this time 23.01.33 Join Thra11 [0] (~thrall@69.81.112.87.dyn.plus.net) 23.05.33 Join keyb_gr [0] (~chatzilla@p4FF02BEA.dip.t-dialin.net) 23.11.03 # It's related to the elf section offset of bss portions (which don't have an offset), it's not initialized but I don't see why... 23.13.16 # Zoiah: can you run sbtoelf with valgrind ? 23.18.33 # pamaury: I could give it a whirl. 23.21.31 # pamaury: I've never used valgrind before, do I need to give it any particular parameters? 23.21.52 # no, just valgrind sbtoelf ... 23.21.57 # Ok. 23.21.59 # and if you need sudo, do sudo valgrind 23.22.03 # and NOT valgrind sudo 23.23.43 # Yes. 23.24.19 # ==15320== LEAK SUMMARY: 23.24.19 # ==15320== definitely lost: 1,024 bytes in 21 blocks 23.24.19 # ==15320== indirectly lost: 154 bytes in 10 blocks 23.24.19 # ==15320== possibly lost: 32 bytes in 2 blocks 23.24.19 # ==15320== still reachable: 328 bytes in 2 blocks 23.24.23 # stop it before the end, it will be damn slow 23.24.40 # leak is normal, free-ing everything is a real mess and it doesn't allocate a lot here :) 23.25.00 # I'm more interested in error message like unitialized data 23.25.23 # http://pastebin.com/MuWFEwAX 23.25.43 # thanks, apparently you get the same error message in fseek 23.28.05 # It's probably not superrelevant to our goal, but still. ;) 23.30.03 # trying to get anywhere with plugin writing is seriously frustrating :( 23.30.33 # Acorn: plugins in lua are not really documented I think 23.30.34 # no it's really relevant, I tried to fflush after fwrite and the error is then in fflush so it's be related 23.31.43 # pamaury: yeah, not much documentation at all. Although I'm trying the example at the bottom of the http://www.rockbox.org/wiki/PluginLua page and that isn't working.. 23.32.05 # Acorn: did you had a look at the existing plugins in lua ? I think there is a game 23.32.45 # pamaury: yeah, although I'm trying to do something with audio playback, and there are no examples of that, other than the short on the page I linked 23.32.56 # *short one 23.33.21 # If I was doing something wrong I would have thought I would have gotten some output in the emulator console 23.34.09 # I don't lua and I've not written plugins in a while so unfortunately I can't really help, I don't know who can help you. 23.39.27 # Is it possible to change the scroll bar color independantly from the text color in the UI viewport? 23.41.01 Quit Thra11 (Quit: kthxbai) 23.42.06 Join Highlander [0] (~Connor_Ma@2a01:e35:2ec2:dcd0:5d9a:3b06:315:6a45) 23.58.06 Join Zarggg [0] (~zarggg@24.229.139.169.res-cmts.sm.ptd.net)