00:00:12 | *** | Saving seen data "./dancer.seen" |
00:02:00 | | Quit ender` (Quit: How do you generate a random string? Put a new user in front of VIM and tell him to save and quit. — Duane Morin) |
00:03:08 | pamaury | Gabe: no, I think development version is nightly build, give me a minute |
00:03:27 | Gabe | OK |
00:09:56 | pamaury | I just a built a version out of the trunk and it has 2048 |
00:10:03 | pamaury | so, I am confused |
00:10:26 | pamaury | and the link I posted also have it |
00:10:50 | pamaury | did you reboot the device ? |
00:13:57 | Gabe | Yeah |
00:14:02 | Gabe | I'll try from the .zip |
00:16:44 | | Quit xorly (Ping timeout: 252 seconds) |
00:16:45 | Gabe | This is really weird. The .zip has 2048, but there are a lot of other games that it's missing, and it has only one font instead of the 100 I got from RBUtil |
00:17:41 | Gabe | I'll try just dragging 2048 into the .rockbox folder on the device instead of replacing the whole thing. |
00:19:53 | pamaury | Gabe: if you replace the whole thing, you get less fonts because the dev zip does not include the extra fonts (for space reason) but you can use RBUtil to reinstall them after |
00:20:08 | Gabe | OK. |
00:24:41 | Gabe | It worked. Yay! Thank you. |
00:25:04 | Gabe | My new life mission is to make 2048 less ugly on the Clip+. |
00:31:29 | | Join wodz [0] (~wodz@iwl138.internetdsl.tpnet.pl) |
00:31:41 | pamaury | yeah, with the dual color it probably looks super ugly |
00:32:23 | wodz | pamaury: Some time ago you asked about mips mmu code. Are you looking at mips mmu? |
00:33:10 | pamaury | yes, I am puzzled because the code in mips-mmu.h seems to do "things" but as far I as I understand, it's a lot of deadcode and it essentially does nothing (except maybe removing any mmu mapping) |
00:33:46 | pamaury | and since the crt0.S set the ERL bit, it makes kuseg bypass mmu anyway right ? |
00:34:54 | wodz | pamaury: AFAIK our mips targets use 'mips static' mapping only. No wired entries, no refills and friends |
00:35:11 | pamaury | yeah that was my impression |
00:36:18 | wodz | pamaury: Why do need mmu? |
00:36:36 | pamaury | I don't need mmu, I just don't understand why we have some code for it |
00:37:17 | wodz | pamaury: I think this is for historical reasons. The jz port was copy-paste from linux port to the platform |
00:37:24 | pamaury | ah ok |
00:38:06 | wodz | there were some concerns about licensing even |
00:39:01 | wodz | pamaury: are you poking X1? |
00:39:37 | pamaury | yeah, I have hwstub running, I have begun doing some coding but nothing is running right now |
00:39:53 | pamaury | I am scratching my head a bit about PLL and DRAM settings |
00:40:34 | pamaury | Vortex in his port just happily changes the clock (including DRAM clocks !) happily from code running in DRAM, that can't be right |
00:40:51 | wodz | why did you port hwstub? Was jz bootrom not good enough? |
00:40:52 | pamaury | the OF uses a clever trick: it runs the code from DRAM but fetch and lock the function doing so before running it |
00:41:38 | pamaury | wodz: not really, I cannot setup DRAM otherwise. Instead I use a trick: I put hwstub in a specil file called factory.x1 and do a "factory boot" where the ingenic bootload setups DRAM and execute my code |
00:41:47 | wodz | nice. The code in Vortex's code works because of cache most probably. |
00:41:49 | pamaury | so I can have hwstub + DRAM working |
00:42:06 | wodz | I see |
00:42:41 | pamaury | it also gave me the opportunity to write some code for it, I understand the usb controller much better |
00:43:10 | pamaury | the clock controller is a bit weird though, and the documentation is really sparse on some things |
00:43:52 | wodz | are you going to take care of DRAM init or are you going to use ingenic bootloader to do the dirty work? |
00:44:17 | pamaury | I need to study the OF code a bit, I am still not entirely convinced it's fine to change the DDR clock without tweaking the parameters, and if it's not fine, it means we need to use the same DDR clock as the OF |
00:44:27 | pamaury | no the bootloader does the dirty work |
00:44:35 | pamaury | but there is this clock "problem" as I mentioned |
00:45:07 | wodz | I'd say this is to be solved in the future not now |
00:48:30 | | Quit Tirifto (Quit: Tirifto) |
00:48:48 | | Quit Gabe (Ping timeout: 250 seconds) |
00:49:51 | pamaury | wodz: it's quite important in fact, most peripherals cannot be clocked from crystal, only PLL |
00:51:18 | pamaury | and the PLL is tweaked for CPU and DRAM, although it seems the OF uses pretty much the "standard" frequency of 432MHz for PLL0 and I-dont-remember-how-much for PLL1 (which is also derived from PLL0 by the way) |
00:52:19 | pamaury | anyway, I'll try to have the LCD running soon |
00:53:31 | pamaury | the lcd code is also weird, it toggle a pin when sending commands, I don't quite understand why |
00:55:33 | pamaury | wodz: are you working on anything at the moment ? |
00:56:00 | | Join girafe [0] (~girafe@LFbn-1-8020-64.w90-112.abo.wanadoo.fr) |
00:58:04 | wodz | pamaury: If you mean 'now' I am at work unfortunately. If you mean in general with rockbox then no, I absolutely have no spare time. |
01:00 |
01:02:20 | | Quit cc___ (Quit: WeeChat 1.5) |
01:03:02 | pamaury | oh damn, but it's super late ! |
01:07:19 | pamaury | my spare time has also been low recently |
01:07:25 | pamaury | thus the lack of progress on the port... |
01:08:56 | wodz | yeah, the same here |
01:15:13 | | Quit paulk-collins (Quit: Leaving) |
01:30:37 | | Quit pamaury (Ping timeout: 260 seconds) |
02:00 |
02:00:14 | *** | Saving seen data "./dancer.seen" |
02:03:44 | | Quit wodz (Quit: Leaving) |
02:03:50 | | Quit ZincAlloy (Quit: Leaving.) |
02:04:20 | | Quit girafe (Read error: Connection reset by peer) |
04:00 |
04:00:16 | *** | Saving seen data "./dancer.seen" |
04:07:49 | | Quit smoke_fumus (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) |
04:10:51 | | Quit nlogex (Quit: WeeChat 1.5) |
04:17:05 | | Join nlogex [0] (~filip@dhcp-108-168-15-53.cable.user.start.ca) |
04:58:20 | | Quit nlogex (Ping timeout: 244 seconds) |
05:00 |
05:11:09 | | Join Lwrless [0] (~Lwrless@27.219.205.172) |
06:00 |
06:00:18 | *** | Saving seen data "./dancer.seen" |
06:45:01 | | Quit TheSeven (Disconnected by services) |
06:45:11 | | Join [7] [0] (~quassel@rockbox/developer/TheSeven) |
07:00 |
07:00:57 | | Quit PurlingNayuki (Quit: PurlingNayuki) |
07:54:48 | | Join athidhep [0] (~afoakf@unaffiliated/athidhep) |
07:57:40 | | Join xorly [0] (~xorly@ip-89-176-117-132.net.upcbroadband.cz) |
07:59:27 | | Join ender` [0] (krneki@foo.eternallybored.org) |
08:00 |
08:00:22 | *** | Saving seen data "./dancer.seen" |
08:01:39 | | Join einhirn [0] (~Miranda@bsod.rz.tu-clausthal.de) |
08:03:08 | | Quit xorly (Ping timeout: 244 seconds) |
08:18:07 | | Quit athidhep (Quit: athidhep) |
08:19:33 | | Quit rela (Ping timeout: 260 seconds) |
08:45:28 | | Join soap_ [0] (~soap@rockbox/staff/soap) |
08:46:36 | | Join einhirn_ [0] (~Miranda@bsod.rz.tu-clausthal.de) |
08:47:00 | | Join puck1pedia [0] (~puck@irc.puckipedia.com) |
08:49:26 | | Join shadow [0] (e@gateway/shell/openshells.net/x-sgzexlpwlycaxkrg) |
08:52:01 | | Join Tirifto [0] (~tirifto@95.85.240.122) |
08:52:07 | | Quit Tirifto (Changing host) |
08:52:07 | | Join Tirifto [0] (~tirifto@unaffiliated/tirifto) |
08:55:30 | | Join bzed_ [0] (~bzed@shell.bzed.at) |
08:59:20 | | Join scorche|sh [0] (~scorche@rockbox/administrator/scorche) |
09:00 |
09:04:43 | | Quit einhirn (*.net *.split) |
09:04:43 | | Quit shadows (*.net *.split) |
09:04:44 | | Quit soap (*.net *.split) |
09:04:44 | | Quit scorche|1h (*.net *.split) |
09:04:45 | | Quit bzed (*.net *.split) |
09:04:45 | | Quit puckipedia (*.net *.split) |
09:04:46 | | Nick puck1pedia is now known as puckipedia (~puck@irc.puckipedia.com) |
09:04:46 | | Nick bzed_ is now known as bzed (~bzed@shell.bzed.at) |
09:10:38 | | Join petur [0] (~petur@rockbox/developer/petur) |
09:18:04 | | Quit amiconn (Remote host closed the connection) |
09:18:04 | | Quit pixelma (Remote host closed the connection) |
09:20:15 | | Join pixelma [0] (~pixelma@rockbox/staff/pixelma) |
09:20:16 | | Join amiconn [0] (~amiconn@rockbox/developer/amiconn) |
09:26:10 | | Quit Mir (Excess Flood) |
09:26:54 | | Join Mir [0] (~Mir@173.51.247.246) |
10:00 |
10:00:23 | *** | Saving seen data "./dancer.seen" |
10:02:28 | | Join elensil [0] (~edhelas@2001:1c02:1903:d800:90b1:1a0d:63e5:5b44) |
11:00 |
11:02:42 | | Quit Mir (Ping timeout: 250 seconds) |
11:03:38 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
11:13:27 | | Quit Lwrless (Ping timeout: 252 seconds) |
11:14:04 | | Join Lwrless [0] (~Lwrless@27.219.205.172) |
11:14:23 | | Join fishbulb [0] (~fishbulb@unaffiliated/fishbulb) |
11:14:37 | fishbulb | hey does anyone here know a source of really good quality headphone sockets |
11:14:57 | fishbulb | 3.5mm stereo sockets for replacing the 3 in my iriver |
11:15:11 | fishbulb | line in line out and headphones out, all are wobbly now. |
11:22:47 | | Join Mir [0] (~Mir@173.55.7.209) |
11:26:48 | | Quit pamaury (Ping timeout: 260 seconds) |
11:46:49 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
12:00 |
12:00:27 | *** | Saving seen data "./dancer.seen" |
12:12:37 | Horrorcat | elensil: meh, the CF -> μSD adapter seems to be borked |
12:14:10 | elensil | Horrorcat: oh ? what does it said ? |
12:14:30 | Horrorcat | well, my CF card reader doesn’t like it and rockbox bootloader reports an ATA error |
12:14:40 | Horrorcat | just now trying with a known good CF card |
12:16:08 | Horrorcat | hmm, with the known good I get ATA error -80 |
12:16:53 | Horrorcat | plugging in USB shows the blockdevice and it appears to work fine |
12:17:50 | Horrorcat | (that’s with the known-good CF card) |
12:25:52 | elensil | yeah that's russian roulette :/ |
12:28:43 | Horrorcat | I wonder why the good CF card also has ATA errors even though working fine via USB |
12:28:57 | Horrorcat | do I need a fresher rockbox bootloader? this one is from 2008 or something |
12:31:45 | | Join cc___ [0] (~ac@2001:910:113f:1:6a05:caff:fe1c:1627) |
12:33:53 | | Join paulk-collins [0] (~paulk@gagarine.paulk.fr) |
12:36:50 | | Quit Tirifto (Remote host closed the connection) |
12:39:02 | | Join Tirifto [0] (~tirifto@95.85.240.122) |
12:39:03 | | Join ZincAlloy [0] (~Adium@2a02:8108:8b80:1700:655f:ae92:6162:4edd) |
12:39:12 | | Quit Tirifto (Changing host) |
12:39:12 | | Join Tirifto [0] (~tirifto@unaffiliated/tirifto) |
12:48:21 | | Join Yoones [0] (540e5ed5@gateway/web/freenode/ip.84.14.94.213) |
13:00 |
13:27:53 | | Join PurlingNayuki [0] (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
14:00 |
14:00:30 | *** | Saving seen data "./dancer.seen" |
14:04:26 | | Join xorly [0] (~xorly@193.85.203.185) |
14:13:44 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
14:18:43 | | Quit Lwrless (Quit: Leaving...) |
14:25:00 | | Quit Jinx (Quit: reboot) |
14:27:13 | | Join Lwrless [0] (~Lwrless@27.219.205.172) |
14:34:06 | | Quit cc___ (Quit: WeeChat 1.5) |
14:48:44 | | Quit Staphylo (Ping timeout: 260 seconds) |
14:53:45 | | Join Staphylo [0] (~Staphylo@2a01:4f8:190:126a:d70a:378:c354:a3a3) |
14:57:59 | | Join nlogex [0] (~filip@dhcp-108-168-15-53.cable.user.start.ca) |
15:00 |
15:04:28 | | Join smoke_fumus [0] (~smoke_fum@188.35.176.90) |
15:08:02 | | Join cc___ [0] (~ac@2001:910:113f:1:6a05:caff:fe1c:1627) |
15:28:30 | | Nick Guest57341 is now known as olspookishmagus (~pookie@snf-137798.vm.okeanos.grnet.gr) |
15:39:11 | | Quit einhirn_ (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) |
15:40:16 | | Join fs-bluebot_ [0] (~fs-bluebo@x4d099fbb.dyn.telefonica.de) |
15:40:17 | | Quit bluebrother (Disconnected by services) |
15:40:23 | | Join bluebrother [0] (~dom@rockbox/developer/bluebrother) |
15:41:19 | | Quit alexweissman (Ping timeout: 250 seconds) |
15:42:24 | | Quit fs-bluebot (Ping timeout: 260 seconds) |
15:47:44 | | Join xorly| [0] (~xorly@193.85.203.185) |
15:50:23 | Yoones | hi there |
15:50:42 | Yoones | is rockbox for ibasso devices based on apk? |
15:50:51 | | Quit xorly (Ping timeout: 264 seconds) |
15:52:24 | Yoones | I'm no dev and completly lost when trying to document myself so I don't even know where to start, but I'm willing to give it a try with a friend to get RB work on a DX80 |
15:59:09 | | Quit krabador (Remote host closed the connection) |
16:00 |
16:00:34 | *** | Saving seen data "./dancer.seen" |
16:05:38 | | Quit amayer (Ping timeout: 276 seconds) |
16:17:42 | pamaury | Yoones: I don't know much about this port but I think not |
16:18:00 | pamaury | iirc, it uses a completely stripped down version of android and does not even use Java |
16:21:21 | | Join amayer [0] (~amayer@mail.weberadvertising.com) |
16:28:05 | | Join Lwrless_ [0] (~Lwrless@27.219.205.172) |
16:29:49 | | Join dfkt [0] (~dfkt@unaffiliated/dfkt) |
16:31:31 | | Quit Lwrless (Ping timeout: 260 seconds) |
16:31:32 | | Quit xorly| (Read error: Connection reset by peer) |
16:31:58 | | Join xorly| [0] (~xorly@193.85.203.185) |
16:53:47 | | Join alexweissman [0] (~alexweiss@c-68-51-85-190.hsd1.in.comcast.net) |
17:00 |
17:07:39 | | Quit xorly| (Ping timeout: 252 seconds) |
17:08:45 | | Join robertd [0] (c9f2b970@gateway/web/freenode/ip.201.242.185.112) |
17:10:09 | | Join n17ikh_ [0] (~n17ikh@unaffiliated/n17ikh) |
17:10:44 | | Quit n17ikh (Ping timeout: 244 seconds) |
17:33:37 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
17:36:35 | | Quit petur (Read error: Connection reset by peer) |
17:37:26 | | Quit krnlyng (Ping timeout: 260 seconds) |
17:49:17 | fishbulb | how can android not use java? |
17:49:53 | | Join krnlyng [0] (~liar@178.114.49.198.wireless.dyn.drei.com) |
17:51:36 | | Quit krabador (Remote host closed the connection) |
17:56:08 | pamaury | fishbulb: short answer: the soc manufacturer ported android to his soc, but android uses a modified linux, so can't just take the stock linux and run it. So what company do is to take the android port, strip everything and keep only the modified linux kernel. Thus no java |
17:56:38 | pamaury | (remember that companies usually do not provide the source code of their linux modification) |
17:57:29 | pamaury | so yeah it's not really android, but not quite stock linux either |
18:00 |
18:00:37 | *** | Saving seen data "./dancer.seen" |
18:02:05 | | Quit elensil (Quit: Leaving.) |
18:09:12 | | Join einhirn [0] (~Miranda@p4FC12101.dip0.t-ipconnect.de) |
18:19:38 | duo8 | pamaury only chinese companies |
18:20:31 | pamaury | duo8: well depends, all others put everything in closed source modules, so it's barely better |
18:21:40 | | Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) |
18:21:47 | duo8 | i suppose |
18:21:58 | duo8 | still can't reach mediatek levels though |
18:23:08 | pamaury | yeah sure :) |
19:00 |
19:03:49 | | Quit pamaury (Remote host closed the connection) |
19:26:13 | | Join pamaury [0] (~pamaury@rockbox/developer/pamaury) |
19:32:45 | | Join rela [0] (~x@pdpc/supporter/active/rela) |
19:40:32 | | Join girafe [0] (~girafe@LFbn-1-8020-64.w90-112.abo.wanadoo.fr) |
19:58:02 | | Join robertd_ [0] (c9f2b970@gateway/web/freenode/ip.201.242.185.112) |
20:00 |
20:00:38 | *** | Saving seen data "./dancer.seen" |
20:02:38 | robertd_ | hi, im trying to extract the firmware from the update file of a sony walkman nwzA867. Tried to build the binary for the Nwz but so far no sucess |
20:17:33 | | Join robertd__ [0] (c9f2b970@gateway/web/freenode/ip.201.242.185.112) |
20:20:14 | | Quit robertd_ (Quit: Page closed) |
20:20:26 | | Quit robertd__ (Client Quit) |
20:23:52 | pamaury | robertd: this sony is not supported |
20:24:02 | pamaury | I don't even know what is the cpu inside |
20:27:38 | pamaury | from the firmware upgrade, my guess is that it uses the same cpu most sony nwz use, and which is not supported by rockbox |
20:29:40 | robertd | The EmmaMobile1. I was trying to extract the firmware with scsitool |
20:33:35 | pamaury | which scsitool ? you usually can't extract the firmware with this tool |
20:34:39 | robertd | In an old post I found the scsitool for the nwze380 |
20:34:56 | | Quit PurlingNayuki (Quit: PurlingNayuki) |
20:35:05 | pamaury | the nwze380 uses a completely cpu and software, on those you can extract the firmware but no on those with emma mobile |
20:35:07 | pamaury | the best thing you can do is unpack the firmware upgrade, but that requires a key |
20:35:27 | pamaury | the key can be extracted from the device if you know where to look, using another scsitool, and a bit of luck |
20:36:11 | pamaury | so basically download this: |
20:36:11 | pamaury | http://www.sony.co.uk/support/en/content/cnt-dwnl/prd-dna/sony-nwza864-nwza865-nwza866-nwza867-firmware-update-ver104/NWZ-A865 |
20:36:34 | | Quit Lwrless_ (Remote host closed the connection) |
20:36:45 | pamaury | then you need to run cabextract on it (I hope you using linux otherwise it will not be easy) to get a bunch of files, the upgrade is the UPG one |
20:37:20 | robertd | I managed to extract the Upg file. Im stuck there. Im trying to compile a scsitool for my device |
20:37:44 | | Join krabador [0] (~krabador@unaffiliated/krabador) |
20:37:45 | pamaury | the unpacker tool is in our repo: http://git.rockbox.org/?p=rockbox.git;a=tree;f=utils/nwztools/upgtools;h=e696535ebcf05edc07527407da04c9eeaab7c5e1;hb=c7a561e |
20:39:09 | pamaury | but you need a key |
20:40:13 | pamaury | on some players I was able to retrieve the key using http://git.rockbox.org/?p=rockbox.git;a=tree;f=utils/nwztools/scsitools;h=4ee39e93a425f5fbb1fcf41bfa74010b32bfe401;hb=c7a561e but it's really a try and fail approach because sony randomises the index of the key (that's my findings at least) |
20:43:33 | | Join PurlingNayuki [0] (~Thunderbi@v163-44-154-238.a00f.g.sin1.static.cnode.io) |
20:44:00 | robertd | Thats where Im stuck Pamaury |
20:44:16 | pamaury | did you build the scsitool in nwztools/scsitools ? |
20:45:19 | robertd | I tried but it says logical error>2 |
20:45:46 | pamaury | what arguments did you give ? |
20:47:19 | robertd | That was my mistake. No arguments given. Let me try with the new info you gave me and the trial and error aproach |
20:47:51 | pamaury | to get the key, you need to run (more or less): |
20:47:51 | pamaury | scsitool vid:pid get_dnk_nvp x 64 0 |
20:48:06 | pamaury | where x is a number, you should try all numbers between 0 and 100 basically |
20:48:17 | pamaury | sometimes it will hang, sometimes (often) the device will crash |
20:48:31 | pamaury | there is no way to tell for sure if wat you get is the password though |
20:48:53 | pamaury | but if you get a relatively small sequence of ascii characters that looks meaningless, that might be the key |
20:52:46 | robertd | I have lots of patience. Let me start unpacking, and try to obtain the key. Many thanks for your help |
20:52:50 | pamaury | I would suggest running scsitool vid:pid get_dev_info first to make sure that the device at leasts peaks the protocol |
20:53:08 | pamaury | you can't unpack until you have the key |
20:53:42 | pamaury | when you have the key (or think you have), run upgtool −−extract kas <key> file.upg |
20:53:46 | pamaury | (or something like this) |
21:00 |
21:01:19 | pamaury | robertd: sorry, I was completely wrong, it's not vid:pid, it's the path to the block device, so if you sony has block device /dev/sdc, then write scsitool /dev/sdc ... |
21:02:17 | pamaury | so here is a complete example on my NWZ-E463: |
21:02:17 | pamaury | # ./scsitool /dev/sdb get_dnk_nvp 32 64 0 |
21:02:27 | pamaury | Node: |
21:02:27 | pamaury | 38 39 64 38 31 33 66 38 66 39 36 36 65 66 64 65 89d813f8f966efde |
21:02:27 | pamaury | 62 64 39 63 39 65 30 65 61 39 38 31 35 36 64 32 bd9c9e0ea98156d2 |
21:02:27 | DBUG | Enqueued KICK pamaury |
21:02:27 | pamaury | (and then only zeroes) |
21:03:07 | robertd | using the scitool before the node is similar |
21:04:22 | pamaury | sorry I don't understand your sentence :) |
21:05:51 | pamaury | well actually I am being stupid, apparently I managed to brute force the key of the A860 a long time ago and put it upgtool (lucky for you ;)) |
21:06:44 | pamaury | so you should be able to just run: |
21:06:44 | pamaury | upgtool -m nwz-a86x file.upg |
21:06:54 | pamaury | sorry, upgtool -m nwz-a86x −−extract file.upg |
21:08:38 | pamaury | but I am still interested if you can find it through scsitool to confirm |
21:37:51 | robertd | :-) Sorry for the delay in answering. I used the old scitool and the node info after get_dnk_nvp looks like the one you posted |
21:39:09 | pamaury | which number did you use and what was the result output ? |
21:42:39 | robertd | with the get dnk nvp |
21:43:05 | pamaury | no but what is the output ? (it can't be the same key, the fact that it *looks* similar is useless :)) |
21:43:35 | robertd | C:\Users\Andres\Downloads>scsitool-nwz.exe -c I: get_dnk_nvp kas Node: 61 37 63 34 61 66 36 63 32 38 62 38 39 30 30 61 a7c4af6c28b8900a 37 38 33 66 33 30 37 63 31 62 61 35 33 38 63 35 783f307c1ba538c5 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ |
21:44:00 | robertd | sorry about that. I am really slow |
21:44:07 | pamaury | cool, thanks :) |
21:44:56 | | Quit alucryd_ (Remote host closed the connection) |
21:45:16 | robertd | Thanks to you for all your help, let me start with all the new info you gave and I will keep you posted |
21:46:02 | | Join alucryd [0] (~quassel@archlinux/developer/alucryd) |
21:46:22 | pamaury | that's funny, the brute forced KAS is different from the "real" one but both work ! |
21:46:31 | pamaury | for your information, the UPG contains three files |
21:46:44 | pamaury | one is bach script to update, one the linux kernel iirc and the other the the initrd |
21:47:21 | pamaury | it's absolutely fine to craft a fake upgrade with just a bash script (or for example bash script + binary file and the script runs the file) |
21:47:29 | pamaury | BUT THERE IS ONE VERY IMPORTANT DETAIL |
21:47:41 | pamaury | (otherwise you'll brick your device) |
21:48:15 | | Join edhelas [0] (~edhelas@145.133.43.230) |
21:48:37 | robertd | ouch, I will use the legit one |
21:48:43 | pamaury | the script MUST ABSOLUTELY tell the kernel to remove the upgrade flag, otherwise your device will be stuck in an upgrade loop |
21:49:11 | pamaury | so never ever ever ever ever give it a bash script that is not valid (syntax wise) |
21:49:20 | pamaury | and the first thing your script should do is clear the flag |
21:49:25 | edhelas | Horrorcat: the CF-SD adapter wasn't working in the end ? |
21:50:10 | pamaury | robertd: here is an example that worked on my nwz-E463: https://gist.github.com/pamaury/1bd21f04388132ce2c13e6092f508b35 |
21:50:27 | pamaury | obviously you should check the A860 update script to see if that matches |
21:50:45 | robertd | Definetly will do that, important warning |
21:51:32 | pamaury | the device runs linux, to "dump" the firmware, you can 1) unpack the initrd (you won't get the complete image but that's a good start) 2) write a script that dumps the firmware partition into the user one |
21:52:47 | Horrorcat | edhelas: no, it’s not working |
21:52:51 | edhelas | :/ |
21:52:56 | Horrorcat | at least not with rockbox −− the ATA-USB-thing seems to be happy |
21:53:02 | Horrorcat | trying a newer rockbox bootloader is on my todo |
21:53:13 | robertd | the second method looks better to my habilities |
21:53:47 | edhelas | Horrorcat: that's the one that I bought https://www.amazon.fr/gp/product/B004QY0M7C/ref=oh_aui_detailpage_o00_s01?ie=UTF8&psc=1 |
21:54:19 | | Join petur [0] (~petur@rockbox/developer/petur) |
21:54:23 | Horrorcat | mine is a komputerbay, too, edhelas :/ |
21:54:37 | edhelas | yeah that's weird, because it was working out of the box for me |
21:54:42 | Horrorcat | but the issue is also with ATA -> CF |
21:54:50 | Horrorcat | a known-good CF card doesn’t work with the device |
21:54:51 | | Join lebellium [0] (~chatzilla@89-93-179-187.hfc.dyn.abo.bbox.fr) |
21:55:07 | edhelas | but I had another one before, that was reported as "fully working on iPods" and that wasn't working :D |
21:55:10 | Horrorcat | (the CF->μSD adapter is also problematic, I think, it won’t work with my card reader) |
21:55:12 | pamaury | robertd: the advantage of the first one is that you can see what is available to the update script |
21:55:37 | pamaury | for example I am not sure if the flag thing is "feature" of the E463 or a general thing |
21:56:39 | pamaury | it is possible (though I haven't checked) that the kernel clears the flag if the script executes successfully |
21:56:47 | robertd | What amazes me is that an old scsitool that you wrote in 2013 worked in a different device :-) |
21:57:22 | pamaury | yeah, Sony tends not to change its things over time |
21:57:43 | pamaury | what amazes me is that they designed a secure/crypted firmware upgrade but provide the key over scsi |
22:00 |
22:00:06 | pamaury | although admitely their scsi protocol is complete undocumented, you can't find it by chance |
22:00:41 | *** | Saving seen data "./dancer.seen" |
22:03:51 | robertd | Pamaury, i will start setting up the upgtools and scsitools. I was on the wrong path before working with the available source code |
22:08:40 | | Join xorly| [0] (~xorly@ip-89-176-117-132.net.upcbroadband.cz) |
22:09:31 | pamaury | robertd: I have some datasheets on the emma mobile1 if you are interested |
22:10:04 | robertd | Yes please I appreciate that |
22:10:59 | pamaury | can you PM me your email address? |
22:11:43 | robertd | Yes, and thanks again |
22:38:35 | pamaury | robertd: I forgot to add, the source code for the linux running on the device is open, you can find it on sony's website |
22:38:48 | pamaury | of course most of the interesting stuff happens in closed source modules |
22:40:10 | robertd | Excellent Pamaury, thanks again. At this moment running ./scsitool -x firmware.sb /dev/ |
22:40:28 | pamaury | hum, what's the point ? |
22:40:37 | pamaury | it won't work... |
22:41:00 | robertd | Youre right, it doesnt work |
22:41:17 | pamaury | there are two scsitool: one from nwztools/ and one from imxtools/. The first applies to emma based nwz and the second to imx based nwz |
22:41:38 | robertd | i am using the first |
22:42:42 | pamaury | that one can't extract the firmware |
22:43:04 | pamaury | there is no easy way to extrat the firmware on emma based devices |
22:43:33 | pamaury | best you can do, as I said earlier is either to looks the firmware upgrade or run a fake upgrade to dump it |
22:43:34 | robertd | :-) Indeed it is hard |
22:43:50 | pamaury | (or dump the emmc but you probably don't want to do that) |
22:47:15 | pamaury | I would suggest only the lines of: |
22:47:15 | pamaury | upgtool −−extract -m nwz-a86x -o nw_wm_fw NW_WM_FW.UPG |
22:47:15 | pamaury | cd nw_wm_fw/ |
22:47:15 | pamaury | cat 0.bin # this is the bash file |
22:47:15 | pamaury | mkdir rootfs |
22:47:15 | *** | Alert Mode level 1 |
22:47:15 | pamaury | cat 1.bin | tar -C rootfs -xvzf - |
22:49:12 | | Quit duo8 (Ping timeout: 252 seconds) |
22:50:39 | robertd | mmm, upgtool command not found |
22:52:58 | pamaury | you need to compile upgtool, it's in utils/nwztools/upgtool |
22:53:54 | robertd | perfect, let me get to it |
22:56:26 | | Quit akaWolf (Ping timeout: 276 seconds) |
22:56:47 | | Join akaWolf [0] (~akaWolf@unaffiliated/akawolf) |
22:56:54 | | Join JanC_ [0] (~janc@lugwv/member/JanC) |
22:57:16 | *** | Alert Mode OFF |
22:57:55 | | Quit JanC (Killed (kornbluth.freenode.net (Nickname regained by services))) |
22:57:55 | | Nick JanC_ is now known as JanC (~janc@lugwv/member/JanC) |
22:58:17 | pamaury | the second file in the upg (ie 1.bin) is a uboot image (uImage), I am trying to remember how to dump it |
23:00 |
23:00:26 | | Join robertd_ [0] (c9f2b970@gateway/web/freenode/ip.201.242.185.112) |
23:00:39 | robertd_ | Pamaury sorry got disconected |
23:02:26 | pamaury | did you manage to run the commands I listed ? |
23:02:28 | pamaury | ls |
23:03:30 | robertd_ | no, no package openssl found |
23:04:10 | | Join duo8 [0] (~ZNC-SRV-H@27.76.250.142) |
23:04:35 | pamaury | openssl ?! |
23:04:57 | pamaury | ah yeah that's for the crypto stuff I guess |
23:05:24 | pamaury | you need to get the openssl dev package using your package manager |
23:06:49 | robertd_ | exactly I am missing that one and the crypto |
23:07:39 | pamaury | libcrypto++-dev or libcrypto++6-dev I guess |
23:12:57 | pamaury | by the way, note that the device usually has two kernel images: one for upgrade and one for normal usage, at least that was the case on the E463, and the the first partition of the emmc basically looked like this: https://gist.github.com/pamaury/9431ad497845642b964ff2743a17f592 |
23:13:45 | pamaury | as far as know, some tools are only to be found in the FU initrd, which is not contained in the firmware upgrade, so you really have to dump it from the device |
23:14:04 | pamaury | I can send you a copy of the one from E463 if you ever need it |
23:14:34 | robertd_ | That would be great Pamaury. I need a model to guide |
23:15:35 | pamaury | done |
23:15:45 | pamaury | the nteresting stuff is mostly in install_scripts/ |
23:16:15 | pamaury | install_scripts/constants.txt contains all the offsets and all (probably different from device to device) |
23:16:36 | pamaury | and install_scripts/start_update.sh is the script that triggers the firmware upgrade |
23:24:44 | | Quit smoke_fumus (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) |
23:27:27 | | Quit petur (Quit: Leaving) |
23:31:44 | | Quit prof_wolfff (Quit: Bye) |
23:52:32 | | Quit lebellium (Quit: ChatZilla 0.9.92 [Firefox 47.0/20160604131506]) |
23:57:48 | | Quit alucryd (Read error: Connection reset by peer) |
23:58:49 | | Join alucryd [0] (~quassel@archlinux/developer/alucryd) |