04:07.20 | *** join/#htc-linux apt (i=ibot@pdpc/supporter/active/TimRiker/bot/apt) |
04:07.20 | *** topic/#htc-linux is HTC Linux Channel: Find logs at http://apt.rikers.org/%23htc-linux/ | please check http://handhelds.org/moin/moin.cgi/HTC_2dPhones | http://wiki.xda-developers.com/index.php?pagename=Xanadux | <cr2> let's define a common setup. |
05:33.03 | *** join/#htc-linux rmoravcik (n=rmoravci@pc-3s0zt5w2e4y0vzmhnrzq3a21zqajzfw.users.student.utc.sk) |
05:34.37 | *** join/#htc-linux rmoravcik (n=rmoravci@pc-3s0zt5w2e4y0vzmhnrzq3a21zqajzfw.users.student.utc.sk) |
06:02.40 | *** join/#htc-linux sadeness_ (n=LamersIn@nat2.rlan.ru) |
06:55.43 | *** join/#htc-linux Kevin2 (n=Kevin@207-237-65-88.c3-0.avec-ubr12.nyr-avec.ny.cable.rcn.com) |
07:32.45 | *** join/#htc-linux psokolovsky_ (n=psokolov@empty-crossing.volia.net) |
07:37.03 | *** join/#htc-linux dion (n=dion@inhex.net) |
08:30.09 | *** join/#htc-linux tsdogs (n=twostupi@host22-76-static.110-62-b.business.telecomitalia.it) |
09:00.21 | *** join/#htc-linux stefan_schmidt (n=stefan@datenfreihafen.org) |
10:00.58 | *** join/#htc-linux rob_w (n=bob@BACa25a.bac.pppool.de) |
10:06.03 | *** join/#htc-linux ases (n=script@cm-83-97-141-100.telecable.es) |
10:07.40 | ases | hi people |
10:08.44 | ases | how i can seach information in the testwm5 dump files? |
10:09.26 | ases | via disassbler? |
10:09.49 | ases | help me please |
10:37.54 | *** join/#htc-linux tsdogs (n=twostupi@84.18.144.39) |
11:11.20 | *** join/#htc-linux donn (n=donn@p5085f5e4.dip.t-dialin.net) |
11:11.27 | donn | Good Morning @ all :) |
11:37.33 | *** join/#htc-linux bd2 (n=cbou@85.21.88.2) |
11:51.10 | *** join/#htc-linux scorpio16v (n=scorpio1@AC9EA2B9.ipt.aol.com) |
12:05.24 | *** join/#htc-linux pH5 (n=ph5@p5485ED03.dip.t-dialin.net) |
12:07.29 | *** join/#htc-linux dion (n=dion@inhex.net) |
12:10.27 | tsdogs | cr2: you here? |
12:11.41 | tsdogs | cr2_: what happened to the Xanadux CVSROOT ? |
12:21.41 | *** join/#htc-linux kiozen (n=oeichler@p54920779.dip0.t-ipconnect.de) |
12:25.22 | cr2_ | tsdogs: hi. don't know, it worked for me yesterday. |
12:25.54 | tsdogs | ok, it's not working anymore :( |
12:26.04 | tsdogs | hi btw |
12:26.28 | tsdogs | I can only checkout in anonymous :( |
12:26.44 | cr2_ | kiozen: the 76Cx has 2MB SRAM and 16MB flash. but not everything is lost. we can put the linux kernel .text into flash and use as XIP. i've never used it before, but it should work :) |
12:26.58 | cr2_ | tsdogs: i'll have a look. |
12:27.03 | tsdogs | ok |
12:27.43 | pH5 | hi cr2, tsdogs |
12:27.47 | pH5 | I get "Cannot access /cvsroot/xanadux/CVSROOT", too |
12:27.56 | tsdogs | :) |
12:28.07 | kiozen | 2MB that is not much. How mauch is the kernel w/o .text? |
12:28.13 | kiozen | hi btw |
12:28.23 | tsdogs | mailin lists seem to be broken somehow too |
12:29.18 | cr2_ | mailing list is broken long ago |
12:29.54 | tsdogs | ok. I though think it's a SF problem, it's very slow now. |
12:30.24 | cr2_ | kiozen: i don't have any experience with such setup, i just know that such option exists. |
12:31.12 | cr2_ | in april i have heard a talk at fosdem by a guy from montavista about using XIP on small slow arm cpus. |
12:32.06 | kiozen | maybe I should switch unit :) |
12:32.09 | kiozen | http://www.engadget.com/2007/06/01/satmaps-active-10-handheld-gps-mapping-system/ |
12:32.18 | kiozen | that one looks cute |
12:32.27 | kiozen | but it's still vaporware |
12:33.39 | cr2_ | <PROTECTED> |
12:33.58 | kiozen | but don't ask for battery life :) |
12:34.07 | cr2_ | tell me how many A*h does it need :) |
12:34.09 | cr2_ | lol |
12:34.26 | cr2_ | that's the only reason to buy garmin. |
12:34.40 | cr2_ | otherwise it's certainly overpriced. |
12:34.53 | kiozen | Garmin, too |
12:35.00 | cr2_ | i mean garmin. |
12:35.05 | kiozen | ah :) |
12:35.20 | kiozen | that on isn't cheap either |
12:35.30 | kiozen | I guess it has no A* |
12:35.43 | kiozen | look at the form factor |
12:35.43 | cr2_ | ok. |
12:35.51 | kiozen | it's more built-in :( |
12:35.54 | cr2_ | rugged stuff is not cheap anyway. |
12:36.12 | kiozen | as long as it has not as many bugs as garmin |
12:36.50 | cr2_ | 128MB is the most stupid feature on this device. |
12:36.58 | cr2_ | but it's wince ;-) |
12:37.19 | kiozen | what's so bad abaout memory? |
12:37.28 | kiozen | except the juice it takes |
12:37.29 | cr2_ | probably you can run openoffice |
12:37.39 | kiozen | much better: powerpoint |
12:37.48 | cr2_ | :) |
12:37.55 | kiozen | dos it have beamer acces? :) |
12:38.11 | kiozen | projecting maps to the trees |
12:38.14 | cr2_ | pH5: the viewcvs is broken too. worked for me yesterday. |
12:38.33 | cr2_ | kiozen: that's available on htc athena. |
12:38.53 | kiozen | the beamer? |
12:39.04 | cr2_ | VGA out, pal/ntsc/svideo/fcbs |
12:39.18 | cr2_ | the TV encoder. |
12:39.43 | kiozen | looks like a laptop :) |
12:41.43 | cr2_ | yes. |
12:43.11 | kiozen | 2MB, that explains a lot |
12:43.17 | kiozen | the assembly |
12:43.27 | kiozen | the bad memory management |
12:43.40 | kiozen | the bad USB support |
12:44.21 | cr2_ | kiozen: now i need to understand the flash partitioning. |
12:44.31 | cr2_ | USB is on-cpu. |
12:45.02 | kiozen | I mean more the protocoll hickups |
12:45.14 | cr2_ | where is the OS, where is the basemap, where is the firmware. |
12:45.16 | cr2_ | ok. |
12:45.19 | donn | hi@all :) |
12:45.24 | cr2_ | all with address/size. |
12:45.32 | kiozen | didn't you tell you know |
12:45.39 | donn | hi@cr2 :) |
12:45.45 | donn | how are you? |
12:45.46 | cr2_ | ho donn |
12:45.59 | donn | its hard to meet kevin2 here, or? |
12:46.24 | kiozen | no ususally he shows up 30 min after you left ;) |
12:46.29 | kiozen | look at the logs |
12:46.34 | donn | omg |
12:46.44 | donn | does somebody knows, when her arrives back? |
12:47.15 | kiozen | around 00:30 usually (from the logs) |
12:47.21 | donn | ah, k :) |
12:47.23 | donn | thank you |
12:49.26 | pH5 | anybody familiar with the ATAG linux param structure? |
12:49.46 | pH5 | I booted the kernel from the bootloader with this param structure: http://en.pastebin.ca/552738 |
12:49.56 | cr2_ | pH5: it's documented. |
12:49.58 | pH5 | but it hangs because it believes that there is no root= parameter |
12:50.36 | donn | @all: does somebody loaded a linux OS on his Qtek S200 or O2 XDA? |
12:50.50 | cr2_ | haret creates an ATAG for the cmdline. |
12:50.58 | cr2_ | and EOL too. |
12:51.39 | cr2_ | donn: omap850 is the least developed platform here. |
12:52.03 | pH5 | cr2_: yup, I stole harets code to generate that structure. what is EOL? |
12:52.58 | cr2_ | EOL is linux minibootloader for omap phones. it is booting as a diagnostic card too. |
12:53.13 | cr2_ | htc omap phones. |
12:53.39 | donn | ah |
12:53.50 | donn | EOL is an application I am able to run on my Omap Phone? |
12:53.58 | cr2_ | pH5: http://vivien.chappelier.free.fr/typhoon/index.html |
12:54.08 | cr2_ | EOL-0.4 |
12:54.10 | pH5 | ah, cool. you can run code from diagnostic sd cards? to me it looks like you just can write stuff to flash/ram? |
12:54.52 | cr2_ | pH5: you can flash and you can run the code loaded into RAM. |
12:54.56 | donn | EOL is a Linux application? |
12:55.22 | donn | I have to format my sd card when I want to download the mini sd image, or? |
12:55.30 | cr2_ | donn: it's a bootloader. raw binary code. |
12:55.43 | donn | ah. ok |
12:55.53 | cr2_ | donn: you don#t need to. haret works. |
12:55.55 | donn | so I have to load it to the sd card via linux? |
12:56.52 | cr2_ | kiozen: EOL is the first thing to test on garmin :) |
12:57.17 | donn | hmm... i didn't understood really hat EOL is |
12:57.18 | donn | hm |
12:57.23 | kiozen | so you want to replace the bootloader, too? |
12:57.27 | kiozen | not just the fw |
12:57.30 | donn | its for mini sds, correct? |
12:57.36 | donn | i have only a normal SD Card Slot |
12:58.30 | pH5 | cr2_: thanks, looks like I should look at EOL in detail |
12:58.38 | cr2_ | kiozen: to flash linux bootloader (EOL) as a firmware. |
12:59.00 | donn | i had accomplished to run a OS called "LinWizard" on my pocket pc |
12:59.04 | kiozen | ok |
12:59.08 | donn | but I have no access to the sd card |
12:59.16 | donn | thats the problem I tried to solve with cr2 |
12:59.45 | cr2_ | donn: there is no logical difference between miniSD and SD and microSD. only the write-protection pin. |
13:00.15 | donn | ah |
13:00.18 | donn | and the speed |
13:00.20 | donn | :-P |
13:00.28 | cr2_ | and size. |
13:00.37 | donn | and look^^ |
13:00.37 | donn | :-D |
13:00.52 | donn | so I should install this mini sd image on my sd card? |
13:00.58 | cr2_ | no. |
13:01.06 | cr2_ | you should trace the gpios. |
13:01.22 | donn | trace the gpios...sry.. means? |
13:01.32 | cr2_ | what did Kevin2 say about the new trace command ? |
13:01.41 | donn | nothing, I haven't met him |
13:01.44 | donn | yet |
13:01.52 | cr2_ | must be in the log somewhere. |
13:02.28 | donn | omg |
13:03.13 | donn | trace command.. do you know what ~day |
13:04.05 | donn | is this helpful? |
13:04.05 | donn | 21:47.13 BabelO pH5: i set trace 0x40E00008 0x8; wi 30 |
13:04.17 | donn | this is a command for an o2xda |
13:04.29 | donn | i think :) |
13:05.02 | cr2_ | <Kevin2> cr2/donn: The "addwatch" command is now "addlist gpios". |
13:05.14 | cr2_ | type |
13:05.19 | cr2_ | 'help' |
13:05.23 | donn | okay, i make a telnet again? |
13:05.30 | donn | and then help and searches for addlist |
13:05.31 | cr2_ | and look for addlist gpios |
13:05.33 | cr2_ | yes. |
13:05.34 | donn | kk, one moment Please |
13:07.29 | donn | ADDLIST <variable> <value> Add an item to a list variable |
13:10.56 | donn | so I should know what I replace for <variable> and <value> |
13:10.58 | donn | help |
13:11.02 | donn | oh.. wrong window |
13:11.05 | donn | :-P |
13:14.48 | cr2_ | variable is obviuosly 'gpios' |
13:15.11 | cr2_ | values are the OUT register addresses. |
13:15.22 | donn | ah, and where i get them? |
13:15.27 | cr2_ | in the log :) |
13:15.31 | donn | the out adresses are the ones, you asked me last time? |
13:15.36 | cr2_ | yes. |
13:15.43 | donn | ah, so I should enter each of them? |
13:15.51 | cr2_ | but i think these are the virtual addresses here. |
13:15.53 | *** join/#htc-linux goxboxlive (n=goxboxli@176.84-48-210.nextgentel.com) |
13:16.04 | cr2_ | at least for the addwatch it was so. |
13:16.15 | cr2_ | something to check... |
13:16.30 | cr2_ | otherwise you should use P2V() macro. |
13:17.12 | goxboxlive | hio |
13:17.17 | donn | the settings of the addlist, could you explain me in one sentence what it does? |
13:17.23 | cr2_ | addlist gpios P2V(0xfffbc000) |
13:17.28 | cr2_ | addlist gpios P2V(0xfffbc800) |
13:17.28 | donn | and could I make my pocket pc irreparable broken? |
13:17.32 | cr2_ | addlist gpios P2V(0xfffbd000) |
13:17.37 | cr2_ | addlist gpios P2V(0xfffbd800) |
13:17.46 | cr2_ | and then watch. |
13:18.13 | cr2_ | donn: when you have decided to run linux, you've already stepped on this road :) |
13:18.25 | donn | okay, I entered every of them |
13:18.30 | cr2_ | hi goxboxlive |
13:18.30 | donn | then I should enter "watch"? |
13:18.40 | cr2_ | is there such command ? |
13:18.52 | cr2_ | i think yes. |
13:18.57 | cr2_ | watch 30 |
13:19.01 | goxboxlive | hi cr2, i have been at the mountain for a week now, a lot of log to read :-) |
13:19.05 | donn | http://nopaste.php-q.net/299867 |
13:19.07 | donn | ah, watch 30 |
13:19.08 | cr2_ | so 30 seconds of something like that. |
13:19.12 | donn | i entered watch gpios :) |
13:19.15 | donn | kk, one moment please |
13:19.47 | cr2_ | goxboxlive: we started hacking on omap. and the NAND on hermes is working now. |
13:19.49 | donn | I entered "watch gpios" and the returned value is in the link |
13:20.03 | donn | and when I enter "watch 30" |
13:20.03 | goxboxlive | great. |
13:20.04 | donn | line 12: Expected <watch list var> |
13:20.05 | cr2_ | donn: read help on the watch |
13:20.08 | cr2_ | ok. |
13:20.22 | cr2_ | so the syntax changed a bit too. |
13:20.24 | goxboxlive | omap? seems like i should bought me a qtek s200 then. |
13:20.38 | donn | @goxboxlive: yes, or an O2 XDA |
13:20.39 | donn | :) |
13:20.40 | cr2_ | goxboxlive: but not on the phone. |
13:20.46 | goxboxlive | ok |
13:20.52 | cr2_ | only to make it run as a PDA. |
13:20.56 | cr2_ | SD+ts. |
13:21.02 | donn | :) hehe |
13:21.08 | cr2_ | i think it's relatively easy to do. |
13:21.20 | cr2_ | donn: this is a realistic goal. |
13:21.24 | goxboxlive | but will you not be able to make the phone work to? Isent it the same as on pxa? |
13:21.32 | cr2_ | the phone is much more difficult. |
13:22.03 | donn | okay, each of "watch" is insert |
13:22.07 | cr2_ | goxboxlive: no. it's controlled by the undocumented DSP on omap itself. there is no modem. |
13:22.18 | goxboxlive | ok i c |
13:22.31 | cr2_ | and a part of RAM is used for GSM data. |
13:22.48 | cr2_ | that may be cool, but difficult to reproduce in linux without any docs. |
13:23.12 | goxboxlive | ok |
13:23.21 | cr2_ | it's like hacking on the ACX100 firmware ;-) |
13:23.40 | cr2_ | which is also arm. |
13:23.44 | donn | i am very excited when its finished :) |
13:27.01 | donn | @cr2: do you think it work now? |
13:27.10 | donn | or do i have to insert some more commands? |
13:29.32 | goxboxlive | cr2_ What is this roadmap stuff in xanadux cvs? Is it runable in Qtopia? |
13:30.31 | goxboxlive | and qpegps? |
13:31.40 | tsdogs | goxboxlive: roadmap is a porting to qt4 / qtopia |
13:31.56 | tsdogs | qpegps is just a porting fot qt3 right now. |
13:31.57 | goxboxlive | wow thats great |
13:32.08 | tsdogs | roadmap_editor should work on qtopia. |
13:32.22 | tsdogs | Have not had the time to test it yet. Maybe tonight. |
13:32.33 | tsdogs | hi btw. |
13:32.33 | goxboxlive | tsdogs, why dont you add it to opieII source? |
13:32.38 | goxboxlive | hi :-) |
13:32.56 | tsdogs | Sure, once it's working correctly. |
13:33.20 | tsdogs | btw have you tryed suspend on opieII ? |
13:34.38 | goxboxlive | tsdogs, yes i have tried that and it works |
13:34.52 | tsdogs | goxboxlive: BabelO wanted to submit to opieII htcphone, but first wanted to know if suspend works. |
13:35.18 | goxboxlive | but i have just tried out the automatic one (sometimes very irretating so i have disabled it). |
13:35.32 | tsdogs | perfect. I'll bb tonight (If I don't fall asleep on the couch again :) |
13:35.33 | goxboxlive | right, sounds good |
13:35.39 | goxboxlive | :-) |
13:35.41 | goxboxlive | cu |
13:35.44 | tsdogs | cu |
13:53.18 | donn | cr2? here soon? |
14:11.12 | cr2_ | donn: busy with other stuff ... |
14:11.41 | cr2_ | kiozen: do you have this funny round 4pin serial cable ? |
14:12.07 | kiozen | yes but without serial adapter |
14:12.14 | kiozen | just for power (car) |
14:12.21 | kiozen | should I get u one? |
14:14.00 | donn | @cr2: no problem :) |
14:14.03 | donn | i ask you later, sry ;) |
14:20.12 | cr2_ | kiozen: the RS232 converter chip is in the device. |
14:20.54 | kiozen | cr2: ? sure where should it be else? |
14:20.56 | cr2_ | i think it's the easiest way to enable the output, just to use the available serial port. |
14:21.07 | cr2_ | ah, ok. |
14:21.27 | cr2_ | need to find out if this is port1 or 3. |
14:21.39 | cr2_ | the other will the the sirf3. |
14:22.15 | cr2_ | 4 LEDs, 12buttons on the keyboard. |
14:22.44 | kiozen | 4 LEDs ? where? background light? |
14:23.08 | cr2_ | on the keyboard board. |
14:23.38 | cr2_ | the backlight does not use PWM it seems. |
14:24.05 | cr2_ | which is not surprising: on/off/half. |
14:24.39 | kiozen | Then the LEDs are just theory :) |
14:26.26 | kiozen | the 70SCx just has serial port, hasn't it? |
14:27.42 | goxboxlive | hmm the fic phone is delayed |
14:28.06 | goxboxlive | it should have been on the mass market in september, but it sayd now in six month pr so. |
14:28.15 | goxboxlive | s/pr/or/ |
14:29.34 | cr2_ | kiozen: yes, i have a serial port. |
14:29.47 | kiozen | and USB? |
14:29.58 | cr2_ | and USB and microSD. |
14:30.35 | kiozen | Funny, I get ask frequently for serial support on that device.. |
14:31.04 | kiozen | must be some older stuff |
14:31.07 | cr2_ | goxboxlive: i wish they have started with a htc phone instead ;) |
14:31.28 | cr2_ | kiozen: i think serial is used for NMEA only, not for the fw update. |
14:31.44 | cr2_ | to connect the echolot if you have one :) |
14:32.13 | cr2_ | 76C(S)x is waterproof. |
14:32.30 | kiozen | yes, the peculiar depth value :) |
14:32.55 | kiozen | took me quite some time to realize why there is alt and depth |
14:32.55 | cr2_ | well, it could be done better. that's true. |
14:33.13 | cr2_ | more of a marketing gimmick. |
14:33.40 | kiozen | they tried to put everything into those two devices |
14:33.57 | kiozen | sadly nothing really well done |
14:34.05 | goxboxlive | :-) |
14:34.15 | cr2_ | produce very cheap sell for a lot of money. |
14:34.23 | cr2_ | and sue tomtom in the process. |
14:34.52 | kiozen | wasn't that for some funny autorouting gimmik? |
14:35.14 | cr2_ | kiozen: i mean their business model :) |
14:35.31 | kiozen | ah |
14:35.56 | kiozen | "but their stock is doing well, so they can't be wrong" |
14:35.58 | cr2_ | kiozen: do you think we will be able to do a better format than img ? |
14:36.23 | cr2_ | alan500 does not have routing graph. and 600 is not documented. |
14:36.26 | kiozen | partly, if take the good stuff and l drop the bad |
14:36.31 | cr2_ | yes. |
14:36.40 | cr2_ | add utf8 in the process. |
14:36.46 | kiozen | the polygon compressen is slick |
14:37.02 | cr2_ | yeah, that's what is completely broken in roadmap. |
14:37.09 | kiozen | I have the feeling the chinese stuff is utf8 |
14:37.09 | cr2_ | rdm data format. |
14:37.18 | cr2_ | sure ? |
14:37.21 | cr2_ | why 10bit ? |
14:37.32 | kiozen | john mechalas error |
14:37.38 | kiozen | its 8bit |
14:37.43 | cr2_ | ok. |
14:38.00 | kiozen | 0 is terminatig |
14:38.19 | kiozen | QString worked out of the box |
14:38.21 | cr2_ | mkgmap supports zoom layer, i've read in the osm ML archive. |
14:38.39 | kiozen | wow that's ne to me |
14:38.40 | cr2_ | yes, utf8 is normal unsigned char * |
14:40.04 | cr2_ | then it's only the question of the included glyphs in the font. |
14:40.18 | cr2_ | and you can use chinese fw for latin1 too. |
14:40.55 | cr2_ | kiozen: the SVN version, not the released. |
14:41.37 | kiozen | just looked at the homepage |
14:44.57 | kiozen | btw the polygon compression technique is patented by either REWAG or Techem (I don't remember) |
14:45.29 | kiozen | it's one of those trivial ones you get prices for |
14:47.05 | Kevin2 | Hi |
14:48.00 | kiozen | donn: your chance ;) |
14:53.07 | cr2_ | kiozen: we are not in the US. |
14:53.28 | kiozen | never the less the got the patent |
14:53.50 | cr2_ | #ifdef |
14:54.14 | kiozen | because they stored the stuff in hardware |
14:54.15 | cr2_ | the subpixel renderer in freetype had the same problem ? |
14:54.38 | kiozen | huh? |
14:55.00 | cr2_ | apple or whatever has patented the algorithm. |
14:55.28 | cr2_ | but it's in the code, so you just compile with a right #ifdef if you'd like. |
14:56.49 | kiozen | http://gauss.ffii.org/PatentView/EP1154668 |
14:57.30 | kiozen | I wouldn't fear that one |
14:58.32 | cr2_ | yeah, they just payed 10000€ for hot air. |
14:58.58 | cr2_ | at least it's not very broad :) |
14:59.07 | cr2_ | einer Liegenschaft mit wenigstens einer Messstelle |
14:59.42 | kiozen | actually it's about 30000€ for a full livetime patent |
14:59.43 | cr2_ | ok. |
15:00.15 | cr2_ | the [0002] is really funny. |
15:00.46 | cr2_ | if they were not serious, i would have thought it's a parody on the US patent system. |
15:02.04 | kiozen | I just can't find the part where they state to store the data just with the bitsize really needed. |
15:04.37 | cr2_ | i must admit that it's still a very accurate description. |
15:05.07 | kiozen | http://gauss.ffii.org/PatentView/EP1241912 |
15:05.15 | cr2_ | and therefore does not have much value :) |
15:05.21 | kiozen | that one is more on the format |
15:06.12 | cr2_ | i thought it's about the GPS :) maybe they have such for GALILEO. |
15:06.30 | cr2_ | "The system has a radio network with terminals and data collectors." |
15:07.20 | cr2_ | no :) |
15:07.24 | cr2_ | in Europa 434 MHz und 868 MHz |
15:08.19 | cr2_ | so they are not covered. |
15:08.42 | cr2_ | donn: does the "watch" work for you ? |
15:09.41 | donn | @cr2: yes, i think |
15:09.50 | donn | i got the "watch list" |
15:10.00 | donn | and every of the 3 0xf... are in it |
15:10.23 | cr2_ | ok, do some bits change in the normal operation ? |
15:10.41 | cr2_ | are there any changes when you insert/remove the SD card ? |
15:10.50 | donn | in windows mode? |
15:10.55 | cr2_ | yes. |
15:11.16 | donn | no |
15:11.18 | cr2_ | run "watch" for 60sec and insert/remove the card. |
15:11.22 | donn | nothing special happens |
15:11.26 | cr2_ | haret should be on the device. |
15:11.35 | cr2_ | hmm. strange. |
15:11.41 | donn | okay, i should start it? |
15:11.46 | cr2_ | yes. |
15:11.46 | donn | and then remove the sd card? |
15:11.49 | cr2_ | yes. |
15:11.55 | donn | and then start a telnet session |
15:12.22 | cr2_ | copy haret to the device. start it. start telnet, run the commands, insert/remove the CARD |
15:12.39 | Kevin2 | Are there docs for omap gpios? |
15:12.43 | cr2_ | look if some bits change. |
15:13.10 | cr2_ | Kevin2: not really, and there are some differences between cpu versions. |
15:13.22 | cr2_ | Kevin2: look at the EOL source. |
15:13.31 | cr2_ | for omap730/850 |
15:14.10 | cr2_ | and here i think for the "other" omap docs. http://focus.ti.com/lit/ug/spru749b/spru749b.pdf |
15:14.41 | cr2_ | afaik, that's the only open omap docs. |
15:14.59 | cr2_ | 5910 and 5912 |
15:15.27 | cr2_ | and even they are not documented completely. like pxa ;) |
15:15.47 | *** part/#htc-linux scorpio16v (n=scorpio1@AC9EA2B9.ipt.aol.com) |
15:15.48 | Kevin2 | cr2_: Do you have a link to EOL? |
15:16.58 | donn | i have to restart it, please wait cr2 :L) |
15:17.38 | donn | @cr2: when i started the telnet session, I have to enter the commands from yesterday again? |
15:17.47 | cr2_ | Kevin2: find it here http://vivien.chappelier.free.fr/typhoon/index.html |
15:18.26 | cr2_ | Kevin2: the TYPHOON sig in EOL is actually for OMAP850, the TORNADO sig is for OMAP730 |
15:18.48 | cr2_ | we have checked it on donn's phone. |
15:19.09 | cr2_ | donn: no. only 'addlist *' |
15:19.22 | donn | okay :) |
15:19.31 | donn | one time for removed card |
15:19.37 | donn | and one time for insert card? |
15:20.20 | cr2_ | run 'watch' and see if anything changes first. |
15:20.43 | cr2_ | maybe you'll be flooded by the changes in normal operations. |
15:20.54 | cr2_ | that's the case on hermes for example. |
15:21.01 | cr2_ | then you need to mask some bits. |
15:21.22 | donn | yes, they are changed |
15:21.34 | cr2_ | without doing anything ? |
15:21.41 | donn | with removing it |
15:21.45 | donn | with removing the card |
15:22.00 | donn | I typed in the commands addlist gpios P2V... every of the 4 commands |
15:22.05 | donn | and then i typed in "watch gpios" |
15:22.12 | cr2_ | ok. |
15:22.13 | donn | and then i removed the card and entered it again |
15:22.16 | cr2_ | ok. |
15:22.24 | cr2_ | pastebin the output. |
15:22.30 | pH5 | ah, solved my ATAG problem. I uploaded ATAGs + kernel to a3000000, but the kernel decompresses into a0000000 and params have to within 4M from the uncompressed kernel, it seems. when uploading the params to a0000000 from the start it works. now to see why it hangs after loading the sd ext2 partition and freeing init mem... |
15:23.08 | donn | http://nopaste.php-q.net/299889 |
15:23.52 | cr2_ | it seems they typhoon guys made a release today |
15:24.18 | cr2_ | pH5: a good progress :) |
15:24.36 | Kevin2 | What is omap850 base memory address? |
15:24.53 | cr2_ | 0x10000000 |
15:25.18 | cr2_ | Kevin2: read also these: http://vivien.chappelier.free.fr/typhoon/download.html |
15:25.47 | cr2_ | Kevin2: and that for haret http://vivien.chappelier.free.fr/typhoon/wince.html |
15:28.20 | Kevin2 | donn: Do you use Linux as your host OS? |
15:28.44 | donn | i could |
15:28.49 | donn | i have to computers |
15:28.54 | donn | one with XP and one with linux |
15:29.41 | Kevin2 | It's better to use haretconsole instead of telnet to connect to your device. |
15:31.14 | cr2_ | donn: here is the list for tornado, we need a similar one - http://vivien.chappelier.free.fr/typhoon/doc.html |
15:31.15 | donn | hm, ok |
15:31.35 | cr2_ | you can also check inserting/removing the USB cable. |
15:31.59 | donn | but what is the difference between the telnet console and the haret ones? |
15:32.09 | donn | so, what I should do now? |
15:32.17 | cr2_ | haretconsole decodes the bits for you. |
15:32.39 | donn | kk |
15:32.43 | donn | where can i get it? |
15:32.47 | donn | i have to do it with linux? |
15:33.02 | cr2_ | yes. |
15:33.09 | cr2_ | it uses python. |
15:33.22 | donn | could you say me where i get it? |
15:34.04 | cr2_ | in the haret CVS |
15:34.23 | cr2_ | Kevin2: have you seen that the NAND on hermes is working ? |
15:34.58 | cr2_ | Kevin2: now we need to partition it in some way. |
15:35.35 | cr2_ | i have updated the CVS, so we should not have any differences in the kernel tree now. |
15:35.47 | *** join/#htc-linux goxboxlive (n=goxboxli@176.84-48-210.nextgentel.com) |
15:35.57 | Kevin2 | donn: http://handhelds.org/~koconnor/haret/haretconsole-0.4.8.tar.gz |
15:36.22 | Kevin2 | cr2_: Yes, I saw. But you still see the nand errors though, right? |
15:36.51 | cr2_ | yes. |
15:37.04 | Kevin2 | cr2_: Do you know what the irq registers are on omap? |
15:37.22 | donn | @cr2: i downloaded the haret console |
15:37.30 | cr2_ | but they are in the SPL area, where we should not write anyway. |
15:38.50 | cr2_ | Kevin2: only by looking at the source |
15:45.50 | kiozen | bye |
15:50.27 | donn | @cr2: is it important to connect via haretconsole |
15:50.27 | donn | "also muss ich noch"? |
15:51.27 | Kevin2 | donn: It will help with reading the values that you trace. It isn't a requirement. |
15:53.51 | donn | but would be better, k |
15:54.04 | donn | the problem is, i have a problem to connect to it via the usb port |
15:54.11 | donn | the question is, what whould be the next step? |
15:55.18 | *** join/#htc-linux BabelO (n=Fabrice@lun34-2-82-238-28-28.fbx.proxad.net) |
15:57.58 | *** join/#htc-linux donn (n=donn@p5085F5E4.dip.t-dialin.net) |
15:58.04 | *** join/#htc-linux donn120 (n=donn@p5085F5E4.dip.t-dialin.net) |
15:58.43 | donn | sry, does somebody wrote something? |
15:58.48 | donn | i was disconnected :-P |
16:01.10 | Kevin2 | donn: You need to run "watch gpios 10" and find out what gpios have which actions. |
16:02.03 | *** join/#htc-linux scorpio16v (n=scorpio1@AC9EA2B9.ipt.aol.com) |
16:02.05 | Kevin2 | You're going to see a lot of changes at first. You'll need to ignore those bits. Once you get to a steady state, then start doing things while running the watch command (eg, plug/unplug usb, insert/remove headphones, insert/remove sd card). That will show you what gpios map to which actions. |
16:02.41 | donn | oh my god, thats a lot |
16:03.07 | donn | ah ,k |
16:03.11 | donn | so, only for example |
16:03.24 | donn | i type in "watch gpios 10" |
16:03.31 | donn | then there are a lot of bits |
16:03.38 | donn | then I put out the sd card |
16:03.45 | donn | then I do it again |
16:03.57 | donn | and i have to "compare" them with all bits before? |
16:04.12 | pH5 | I want to disable interrupts in the bootloader before jumping into linux, should clearing out ICMR/ICLR/ICMR2/ICLR2 on pxa27x be enough for that? |
16:09.38 | Kevin2 | donn: Yes. Weed out the gpios that just change randomly. Then find the gpios that change when you take a specific action. |
16:09.39 | Kevin2 | donn: You'll find that haretconsole will help with the weeding out part. |
16:09.59 | Kevin2 | donn: BTW, you may be able to get haretconsole to work under windows. I haven't tried it, but python should run there.. |
16:10.12 | donn | okay, only a question... for example I have the specific "bits" |
16:10.16 | donn | what I have to do then? |
16:10.25 | Kevin2 | pH5: I didn't need to do that from haret. |
16:10.56 | Kevin2 | donn: Not sure I understand. Once you know SD enable/disable bits, you can put them into linux kernel and hopefully boot up. |
16:11.31 | donn | AAAH, ok :9 |
16:12.40 | donn | only for example... I have the bit 0xffff024 responsible for the sd card |
16:12.48 | donn | its only an exapmple |
16:12.54 | donn | <PROTECTED> |
16:13.11 | donn | it has no "default.txt" or "linux.ln" file where I can "change something" |
16:13.19 | donn | It calls Haret.exe and thats all |
16:13.27 | donn | it start up a linux called "linWizard" |
16:16.51 | pH5 | Kevin2: ok. I had one hangup before the kernel booted, but I can't reproduce it anyway. I'm probably fine as long as I don't pull the plug during kernel decompression. |
16:17.46 | Kevin2 | pH5: You do need to disable irqs. But that is in the cpsr register |
16:18.01 | pH5 | ah |
16:18.25 | Kevin2 | <PROTECTED> |
16:18.26 | Kevin2 | <PROTECTED> |
16:18.26 | Kevin2 | <PROTECTED> |
16:18.26 | Kevin2 | <PROTECTED> |
16:18.26 | Kevin2 | <PROTECTED> |
16:20.14 | pH5 | Kevin2: thanks! |
16:25.18 | donn | ah, i found a linux.ha |
16:25.37 | donn | could you say me, what I have to edit in the linux.ha when I found the special bits for the sd card |
16:25.37 | donn | ? |
16:27.27 | Kevin2 | donn: I think cr2 will have more info on that. |
16:27.36 | *** join/#htc-linux TeringTuby (n=maarten@162-117-dyn.ipact.nl) |
16:27.52 | donn | ah, thanks :) |
16:39.31 | Kevin2 | cr2_: Any update on haret on the jornada? |
16:41.25 | *** join/#htc-linux bd2 (n=cbou@85.21.88.2) |
17:00.25 | cr2_ | Kevin2: i'll try it now. |
17:00.46 | cr2_ | donn: you don't need to change anything. only to trace the gpios. |
17:02.32 | donn | aha, k |
17:02.38 | donn | but then I know the gpios |
17:02.40 | donn | and then? |
17:02.42 | donn | thats all? |
17:02.44 | donn | ?? |
17:02.55 | donn | don't i have to enter anywhere the changed "bits"? |
17:03.29 | donn | sorry, I am little bit confused. its a kind of "level" of system, where I never had been before |
17:03.46 | cr2_ | yes, that's all. the bits should go into the kernel code. |
17:04.50 | cr2_ | which is a bit involved, because i don't know how good is the omap tree on hh.org |
17:04.56 | cr2_ | otherwise it will be necessary to create patches like the tornado guys are doing. |
17:05.44 | cr2_ | have a look at the tornado site and you'll get the idea. |
17:05.51 | cr2_ | bbl. |
17:06.11 | donn | hm...k |
17:06.51 | donn | but I don't really know what to do know? when I insert "watch gpios 10" and connect and disconnect the different devices |
17:07.03 | donn | is there a change in the system? |
17:07.35 | donn | Ändert sich IRGENDWAS, wenn ich das mit dem "watch..." mache? ich soll doch etwas herausfinden, aber wenn ich damit letztlich nichts mache, bringt es doch gar nichts, oder? |
17:13.50 | pH5 | hm.. booting from haret works, but when booting from the bootloader init always hangs, as does init=/bin/sh. when I try init=/bogus, it correctly complains about the missing file and then hangs, when I set init=/helloworld (a statically compiled eabi binary with just a printf("hello world")) it resets. |
17:18.55 | Kevin2 | pH5: Are tags correct? Are you disabling and flushing the caches fully? What about memsize? |
17:25.56 | pH5 | Kevin2: I think tags are correct (http://en.pastebin.ca/553283), I built them with the code from haret. The cache flush code is from haret, too. This is the loader code that I upload: http://en.pastebin.ca/553285 |
17:26.26 | pH5 | memory params are addr 0xa0000000, size 0x04000000 for 64MB RAM. |
17:28.22 | cr2_ | Kevin2: it hangs on "help". i think it's some stdio bug, which shows up on 2.11 |
17:29.09 | cr2_ | donn: run 'watch gpios 60' and tell us if you see something happening. |
17:29.22 | cr2_ | without doing anything else. |
17:29.58 | donn | Beginning memory tracing |
17:29.59 | donn | thats all |
17:30.02 | donn | and he waits |
17:30.14 | cr2_ | wait till it exits |
17:30.19 | donn | kk |
17:31.01 | donn | no, thing happened |
17:31.11 | Kevin2 | donn: You need to run the addlist stuff. |
17:31.35 | donn | ah, I had to restart it |
17:31.37 | donn | so its gone? k |
17:31.39 | Kevin2 | cr2_: Can you create a startup.txt file with one line that says "foo", and then forward the haretlog.txt file? |
17:31.49 | cr2_ | Kevin2: why are you using a different asm syntax from that of objdump ? |
17:32.06 | cr2_ | Kevin2: ok, do i need earlyharetlog.txt too ? |
17:32.22 | cr2_ | i think we need a checkbox for it ;) |
17:32.23 | Kevin2 | cr2_: Yes. |
17:32.27 | cr2_ | ok. |
17:32.34 | donn | i was disconnected.. could somebody paste me the addlists? |
17:32.42 | Kevin2 | cr2_: What do you mean by different syntax? |
17:33.13 | cr2_ | mrc p15, 0, r0, c2, c0, 0 |
17:33.25 | Kevin2 | cr2_: Checkbox wont help - we need log before haret starts. :-) |
17:33.35 | cr2_ | objdump uses mrc 15,0,r0,cr2,cr0, {0} |
17:33.46 | cr2_ | or something like that. |
17:34.01 | cr2_ | ok. |
17:34.20 | Kevin2 | cr2_: Original haret code must have been written like that. I doesn't seem to matter. |
17:34.40 | cr2_ | ok. funny that as does not complain. |
17:35.58 | Kevin2 | donn: Use: http://handhelds.org/~koconnor/haret/haret-20070609.exe |
17:36.08 | Kevin2 | That version should have the addlist by default. |
17:36.30 | donn | means, i only have to enter "addlist"? |
17:36.36 | donn | i have the version 0.4.8 |
17:36.38 | donn | its not the same? |
17:36.48 | donn | oh, its a new one, k^^ |
17:36.52 | Kevin2 | donn: I added the addlist commands to the version above. |
17:37.36 | donn | okay, i am reconnected |
17:37.46 | cr2_ | Kevin2: the program works after 'help' hangs, so it's some screen output problem. |
17:38.02 | cr2_ | 'screen'== telnet. |
17:38.13 | Kevin2 | What does the log say? |
17:39.04 | donn | my`? |
17:39.40 | donn | from haret? |
17:41.04 | cr2_ | Kevin2: http://pastebin.ca/553321 |
17:41.41 | cr2_ | Kevin2: the lines 171+ are after the telnet session hanged. |
17:41.58 | cr2_ | i've pressed the 'run' button. |
17:44.18 | cr2_ | hmm. and at line 157 i've pressed the 'listen' button again. |
17:44.45 | donn | okay, i think I wait for a normal distribution and the sd card support is okay |
17:44.48 | donn | i need a timeout.. don |
17:44.55 | donn | don't know what to do and nothing works :( |
17:44.59 | donn | so, i think, I wait :) |
17:45.46 | cr2_ | donn: if nobody traces the gpio, there will be no SD support. this is the current state since 1 year. |
17:46.58 | donn | oh... |
17:47.00 | donn | hm. |
17:47.05 | donn | perhaps I wait 10 years :-P |
17:47.06 | donn | hehe |
17:47.13 | donn | the problem is, I don't know what to do |
17:47.36 | cr2_ | donn: well, let's wait a bit. |
17:47.45 | donn | I try to do all what you say, but most I don't know what it should change to have support to the sd card |
17:47.57 | Kevin2 | cr2_: try http://handhelds.org/~koconnor/haret/haret-20070609-ce2.exe -- just put a startup.txt file with one line "foo". Run haret, then forward the log. |
17:47.59 | donn | "ich weiß nichtmal was GPIO verfolgen heißt. |
17:49.05 | cr2_ | donn: ok, i'll think how to make it simplier. just need some time. |
17:49.14 | cr2_ | Kevin2: ok. |
17:49.53 | donn | @cr2: okay |
17:49.58 | donn | I wait how long it needs |
17:50.07 | cr2_ | Kevin2: sorry, put default.txt in a wrong directory. |
17:50.30 | donn | day? week? I don't want to have a "script" made buy a guy. I want to do something for it... I really want to do something that it will work |
17:50.55 | donn | but the problem is, my knowledge of this level is reached long time ago |
17:51.36 | donn | "heißt, ich will nichts vorgekaut bekommen :-P, wenns nötig ist tu ich alles dafür, naja fast" |
17:52.55 | cr2_ | Kevin2: the 'foo' prevents the dialog window from showing up. |
17:53.11 | Kevin2 | cr2_: The idea is to have an invalid command (that exercises the least part of the command dispatch stuff). |
17:53.18 | Kevin2 | cr2_: Okay. What did the log have? |
17:53.26 | cr2_ | looking. |
17:53.58 | cr2_ | Running WSAStartup |
17:54.00 | cr2_ | Starting gui |
17:54.00 | cr2_ | In initdialog |
17:54.00 | cr2_ | Found machine Jornada820 |
17:54.00 | cr2_ | executing startup.txt |
17:54.02 | cr2_ | that's all. |
17:54.22 | cr2_ | the startup.txt is obviously found. |
17:54.26 | cr2_ | and opened. |
17:54.42 | cr2_ | because if it's not there, the error popup comes. |
17:56.10 | Kevin2 | cr2_: You're using my modified haret that I just uploaded? haret-20070609-ce2.exe |
17:56.33 | cr2_ | no, the standard one. i'll get the -ce2.exe now. |
17:58.38 | cr2_ | Kevin2: |
17:58.42 | cr2_ | Found machine Jornada820 |
17:58.46 | cr2_ | executing startup.txt |
17:58.50 | cr2_ | se 1 |
17:58.54 | cr2_ | se 2 |
17:58.58 | cr2_ | se 3 |
17:59.02 | cr2_ | se 4 |
17:59.02 | cr2_ | se 5 |
17:59.03 | cr2_ | se 6 |
17:59.03 | cr2_ | si 1 |
17:59.19 | cr2_ | si1 is the last. |
18:00.23 | Kevin2 | It doesn't like isspace |
18:00.45 | Kevin2 | locale thing? |
18:00.46 | cr2_ | which version do you have ? |
18:00.59 | Kevin2 | version of what? |
18:01.17 | cr2_ | i remember adding some libc functions to haret820 |
18:01.25 | cr2_ | gcc version |
18:01.35 | cr2_ | afair isspace was one of them. |
18:01.58 | cr2_ | looking at jornada820.sf.net |
18:02.10 | cr2_ | the gpio functions should be also included there. |
18:03.24 | Kevin2 | http://msdn2.microsoft.com/en-us/library/ms859657.aspx -- says ce2.0 should have isspace |
18:03.53 | cr2_ | http://jornada820.cvs.sourceforge.net/jornada820/bootimage/haret-j820gnu/src/script.cpp?revision=1.2&view=markup |
18:04.31 | cr2_ | maybe cegcc version is not good enough. |
18:04.50 | cr2_ | int isspace(char c) { return ((((c)>=0 && (c)<=13) || (c)==32)?1:0);}; |
18:05.46 | cr2_ | they were certainly missing from vlc |
18:07.51 | cr2_ | Kevin2: the sa11x0 gpio code is here http://jornada820.cvs.sourceforge.net/jornada820/bootimage/haret-j820gnu/src/gpio.cpp?revision=1.2&view=markup |
18:08.22 | cr2_ | GPIO_MAX is 28 afair. |
18:09.41 | cr2_ | sorry, 27. |
18:09.46 | cr2_ | the file is http://jornada820.cvs.sourceforge.net/jornada820/bootimage/haret-j820gnu/include/SA-1100.h?view=log |
18:14.27 | Kevin2 | Hrmm. isspace turns into _isctype. Which again, msdn claims is available on wince 2.10 |
18:15.06 | cr2_ | i can run 'nm' on the coredll.dll and corelibc.dll |
18:15.25 | cr2_ | it's a HP modified wince, so who knows. |
18:18.15 | cr2_ | Kevin2: you should also pull the latest mach-types from hh.org, so we can add more missing machines. i have athena only in my local version. |
18:19.53 | cr2_ | running 'strings' on the rom does not show anything. |
18:22.28 | cr2_ | <PROTECTED> |
18:23.21 | cr2_ | <PROTECTED> |
18:23.42 | cr2_ | __imp_tolower |
18:23.53 | cr2_ | __imp_strtok |
18:24.13 | cr2_ | __imp_fwrite |
18:25.16 | *** join/#htc-linux dion (n=dion@inhex.net) |
18:25.21 | donn | okay, i need a time out .) good evening my dears :-p |
18:25.22 | donn | cu |
18:25.44 | cr2_ | isspace is not in the .lib |
18:26.41 | cr2_ | #define isspace(_c) ( _isctype(_c,_SPACE) ) |
18:26.41 | cr2_ | in stdlib.h |
18:26.50 | Kevin2 | Yes mingwce32 does the same. |
18:27.53 | cr2_ | but _isctype is not in the coredll.lib |
18:28.12 | cr2_ | but it may be in the .dll |
18:29.12 | cr2_ | strings does not see it in the rom. |
18:29.21 | Kevin2 | The other thing that looks odd is that we're setting a czech code page in the resources. |
18:29.31 | cr2_ | ? |
18:29.56 | cr2_ | it may be some linexec remnant. |
18:31.37 | Kevin2 | Can you try haret-20070609-ce2b.exe ? This just clears the code page from the resources. |
18:31.42 | cr2_ | ok. |
18:32.17 | cr2_ | i guess my code should be put back for ancient devices. because it worked then. |
18:34.00 | cr2_ | Kevin2: the same problem. |
18:34.39 | cr2_ | it seems that the _isctype is not implemented in the rom. |
18:37.21 | Kevin2 | cr2_: Can you try haret-20070609-ce2c.exe -- see if the late_load works for _isctype |
18:40.58 | cr2_ | ok. |
18:43.06 | cr2_ | Trying to load library 'coredll' |
18:43.06 | cr2_ | Unable to find function '_isctype' in library 'coredll' |
18:43.14 | Kevin2 | Bleh |
18:43.21 | cr2_ | corelibc.dll ? |
18:43.35 | cr2_ | but the chances are slim too. |
18:46.17 | Kevin2 | haret-20070609-ce2d.exe -- tries strtoul -- also checks for _isctype in corelibc |
18:47.58 | cr2_ | ok. |
18:49.44 | cr2_ | Trying to load library 'corelibc' |
18:49.44 | cr2_ | Unable to load library 'corelibc' |
18:49.57 | cr2_ | Trying to load library 'coredll' |
18:49.57 | cr2_ | Unable to find function 'strtoul' in library 'coredll' |
18:50.48 | Kevin2 | That sucks. We could fix those pretty easily, but who knows what other documented functions aren't actually there? |
18:51.22 | Kevin2 | For example - strcasecmp |
18:53.12 | cr2_ | Kevin2: the old haret was working with hte functions i've added. |
18:54.31 | cr2_ | isspace isalpha isdigit isalnum isxdigit _stricmp strtoul |
18:54.40 | Kevin2 | How about: haret-20070609-ce2e.exe -- checks two things - strcasecmp and fwrite |
18:54.55 | Kevin2 | I don't use _stricmp any more. |
18:54.57 | cr2_ | fwrite is there. can be seen in .lib |
18:55.20 | Kevin2 | cr2_ Yeah. I want to make sure we can find anything in coredll. :-) |
18:55.39 | cr2_ | ok. |
18:56.57 | *** part/#htc-linux scorpio16v (n=scorpio1@AC9EA2B9.ipt.aol.com) |
18:57.20 | cr2_ | Unable to find function 'strcasecmp' in library 'coredll' |
18:57.20 | cr2_ | Trying to load library 'coredll' |
18:57.20 | cr2_ | Function 'fwrite' in library 'coredll' at 01FCE038 |
18:59.54 | Kevin2 | Oops. strcasecmp is a mingwce32 thing that just wraps around _stricmp. |
19:00.48 | *** join/#htc-linux |dion| (n=dion@inhex.net) |
19:01.55 | cr2_ | lol. it seems i've had good ideas then :) |
19:01.59 | *** join/#htc-linux tsdogs (n=twostupi@62.123.180.130) |
19:05.17 | cr2_ | tsdogs: did the xanadux cvs recover ? |
19:14.47 | Kevin2 | cr2_: haret-20070609-ce2f.exe -- I've included your code for the functions you noted. |
19:15.20 | cr2_ | ok, testing. |
19:16.36 | cr2_ | Unknown keyword "foo" :) |
19:17.09 | cr2_ | help works :) |
19:17.22 | tsdogs | cr2_: yes not it's working :) |
19:17.28 | cr2_ | ps , lsmod work |
19:17.38 | cr2_ | tsdogs: i've checked too :( |
19:17.46 | cr2_ | something is fscked. |
19:18.14 | tsdogs | now seems to be ok. |
19:18.33 | cr2_ | Kevin2: what about gpio ? |
19:18.46 | Kevin2 | cr2_: Okay, I'll clean it up a bit and check in. |
19:18.53 | cr2_ | great. |
19:19.04 | cr2_ | don#t forget the mach-types |
19:19.08 | Kevin2 | cr2_: Figure out the addlist stuff and send me what needs to go in. |
19:19.38 | Kevin2 | I'll be back later |
19:19.41 | cr2_ | ok. |
19:19.57 | cr2_ | playsound works. |
19:20.26 | cr2_ | dump mmu |
19:21.56 | cr2_ | Kevin2: the athena entry. |
19:21.59 | cr2_ | Athena, PXA ,ATHE100, HTCATHENA, \ |
19:21.59 | cr2_ | <PROTECTED> |
19:38.03 | cr2_ | tsdogs: maybe i've broken something, but this is strange. it seems you should contact martin-s |
19:38.58 | cr2_ | Kevin2: do you disable busmaster DAM (MBGNT) on pxa cpus ? it should be done on sa11x0 too. |
19:39.07 | cr2_ | s/DAM/DMA/ |
19:57.15 | *** join/#htc-linux kiozen (n=oeichler@rgnb-d9bde003.pool.mediaWays.net) |
20:05.11 | *** join/#htc-linux rob__w (n=bob@BACac76.bac.pppool.de) |
20:33.05 | tsdogs | cr2_: now cvs is working again. :) |
20:35.58 | cr2_ | strange. |
20:36.54 | cr2_ | tsdogs: i'll have a look at the maps.txt format |
20:37.03 | tsdogs | ok |
20:37.15 | tsdogs | I'm trying to port qpegps to qt4 |
20:38.14 | cr2_ | that's good. |
20:38.42 | cr2_ | have you tried to drive with roadmap_editor ? |
20:39.10 | tsdogs | nope, but route data ain't very good :( |
20:40.02 | tsdogs | I've tested navigation planning, and it makes me take the high way where there is no entry :( |
20:40.20 | cr2_ | the maps are from 2001 |
20:40.43 | cr2_ | and there is no oneway/turn restriction info. |
20:40.53 | tsdogs | still, there is no entry where it says to take the highway. |
20:41.13 | tsdogs | that's not a prob, right now. |
20:41.16 | cr2_ | ok. |
20:41.40 | cr2_ | do you have any openstreetmap data in your area ? |
20:42.23 | tsdogs | checking |
20:44.08 | tsdogs | hmm, does not seem so, maybe only for highways. |
20:45.48 | cr2_ | ok. |
20:50.37 | cr2_ | pulled everything from CVS. trying to compile. |
20:52.06 | tsdogs | there is not much info. only highway and a main road to the lake :( |
20:53.54 | cr2_ | ok, you can change that :) |
20:54.05 | tsdogs | :) thx |
20:57.22 | cr2_ | qt_main.h -o moc_qt_main.cc |
20:57.22 | cr2_ | make[1]: qt_main.h: Command not found |
20:57.22 | cr2_ | make[1]: *** [moc_qt_main.cc] Error 127 |
20:57.37 | cr2_ | LANG=C make DESKTOP=QT4 SHAPEFILES=NO SSD=YES QTDIR=/usr/local/Trolltech/Qt-4.3.0 |
20:57.51 | tsdogs | hmm, where is your moc ? |
20:58.10 | tsdogs | he what's that? |
20:58.24 | cr2_ | MOC=$(QTDIR)/bin/moc |
20:58.57 | cr2_ | ar: creating ../libssd_widgets.a |
20:58.57 | cr2_ | ar: libqtroadmap.a: No such file or directory |
20:58.58 | cr2_ | make[1]: *** [libqtroadmap.a] Error 1 |
20:59.01 | tsdogs | can you try without SSD=YES |
20:59.18 | cr2_ | the SSD is not needed in the qt4/ |
20:59.52 | cr2_ | cannot find -ldgl |
21:00.05 | cr2_ | it's a main makefile issue. |
21:00.05 | tsdogs | :) still have to fix that |
21:01.33 | cr2_ | and find . -type file | xargs chmod 644 |
21:02.00 | cr2_ | ok. it compiled now. |
21:02.34 | tsdogs | try out new qtroadgps :) |
21:03.21 | cr2_ | segfaults on calling the editor. |
21:03.43 | tsdogs | hmm, could it be map related? |
21:04.07 | cr2_ | no, it#s menu-related. i'll run it in gdb. |
21:04.42 | cr2_ | for qtroadgps i need gpsd. |
21:05.00 | tsdogs | ok |
21:05.45 | cr2_ | no, it's the old _log bug |
21:05.51 | cr2_ | #0 0x00002b0b4a0636b0 in strlen () from /lib64/libc.so.6 |
21:05.55 | cr2_ | #1 0x00002b0b4a0358e7 in vfprintf () from /lib64/libc.so.6 |
21:05.59 | cr2_ | #2 0x00002b0b4a036266 in buffered_vfprintf () from /lib64/libc.so.6 |
21:06.03 | cr2_ | #3 0x00002b0b4a031f0c in vfprintf () from /lib64/libc.so.6 |
21:06.07 | cr2_ | #4 0x000000000042d0f3 in roadmap_log_one () |
21:06.07 | cr2_ | #5 0x000000000042d327 in roadmap_log () |
21:06.07 | cr2_ | #6 0x0000000000442aba in roadmap_dialog_set_data () |
21:06.08 | cr2_ | #7 0x000000000040c375 in editor_segments_fill_dialog () |
21:06.44 | cr2_ | compiling with SSD=NO |
21:06.49 | tsdogs | hmm, must be something in the dialog data :( |
21:07.12 | tsdogs | I'll check it out |
21:08.13 | cr2_ | compiles and works with SSD=NO |
21:08.19 | cr2_ | compiling with qt3. |
21:09.17 | tsdogs | it does not segfault for me with SSD=YES and QT4 |
21:10.14 | cr2_ | ok, i'll compile with DEBUG=YES |
21:10.17 | cr2_ | roadgps_screen.c:(.text+0x5ba): undefined reference to `roadmap_canvas_lighter' |
21:10.18 | cr2_ | roadgps_screen.c:(.text+0x671): undefined reference to `roadmap_canvas_lighter' |
21:10.26 | cr2_ | for DESKTOP=QT |
21:10.31 | cr2_ | SSD=NO |
21:10.38 | tsdogs | hmm, ho yes, I added it only to QT4 |
21:10.48 | tsdogs | :) |
21:10.58 | tsdogs | lot's of bugs :/ |
21:11.42 | *** join/#htc-linux tre9 (i=80c3ba1e@gateway/web/cgi-irc/ircatwork.com/x-6494369b3a3261d1) |
21:11.54 | cr2_ | the same for SSD=YES |
21:13.23 | tsdogs | does it do it when loading, or when opening a dialog? |
21:13.29 | cr2_ | hmm. DEBUG=YES does not enable -g |
21:13.43 | cr2_ | when loading. |
21:13.47 | tsdogs | it enables ROADMAP_DEBUG |
21:14.01 | cr2_ | after i click-select in the popup |
21:15.05 | cr2_ | ah. |
21:15.08 | cr2_ | MODE=DEBUG |
21:17.41 | cr2_ | #4 0x0000000000434dd2 in roadmap_log_one (category=0x591730, file=0x2b50d6d49860, saved=32 ' ', source=0x47808a "roadmap_dialog.cc", |
21:17.41 | cr2_ | <PROTECTED> |
21:18.02 | cr2_ | i think it dislikes some empty string |
21:18.03 | tsdogs | can you remove line 135 :) from roadmap_dialog.c |
21:18.15 | cr2_ | calling strlen(NULL) segfault afair. |
21:18.17 | tsdogs | yes, it's debug stuff I left there :( |
21:20.10 | cr2_ | ok. |
21:20.20 | cr2_ | Search address dialog says: |
21:20.23 | cr2_ | QGridLayout: Multi-cell fromRow greater than toRow |
21:21.17 | tsdogs | hmm, not for me :( |
21:21.19 | cr2_ | ASSERT failure in QVector<T>::operator[]: "index out of range", file /usr/local/Trolltech/Qt-4.3.0/include/QtCore/qvector.h, line 292 |
21:21.20 | cr2_ | Program exited with code 01. |
21:21.28 | cr2_ | if i search for the city. |
21:21.55 | tsdogs | you have city listing ? |
21:22.46 | tsdogs | ok I get same error for search. I'll fix this too |
21:23.00 | tsdogs | ok segfault too |
21:23.12 | cr2_ | main CVS compiled. |
21:23.16 | cr2_ | cleanly :) |
21:23.40 | cr2_ | s## roadmap_dbread.c, line 131: illegal offset 1633091695 in database usdir.rdm |
21:23.46 | cr2_ | uuh. |
21:23.58 | tsdogs | U have to rebuild the map :( |
21:23.59 | cr2_ | the binary incompatibility ;) |
21:24.13 | tsdogs | main was much cleaner :) |
21:24.22 | cr2_ | yes. but it 's impossible. |
21:24.41 | cr2_ | there is no postgis data provider in main |
21:24.50 | cr2_ | and no routing. |
21:25.22 | tsdogs | I know. I'll have to fix things in editor, have to test editing too |
21:26.11 | cr2_ | qt3 compiles too. |
21:26.43 | cr2_ | qpegps now. |
21:26.49 | tsdogs | :) |
21:27.07 | tsdogs | you are a good bug hunter :) |
21:27.33 | cr2_ | :) |
21:29.47 | cr2_ | track.h: In constructor ‘Track::Track(Qpegps*, QWidget*, const char*, uint)’: |
21:29.47 | cr2_ | track.h:135: warning: ‘Track::application’ will be initialized after |
21:29.48 | cr2_ | track.h:134: warning: ‘GpsData* Track::gpsData’ |
21:29.48 | cr2_ | track.cpp:373: warning: when initialized here |
21:29.48 | cr2_ | g |
21:30.13 | cr2_ | do i need to run make install for qpegps ? |
21:30.30 | tsdogs | no, but U need to fix paths. |
21:30.37 | cr2_ | make: Nothing to be done for `install'. |
21:30.40 | cr2_ | hmm. |
21:31.10 | cr2_ | we need to keep track of other needed files. |
21:31.36 | tsdogs | yep. |
21:31.37 | cr2_ | <PROTECTED> |
21:31.41 | cr2_ | probably. |
21:31.52 | cr2_ | and similar on qtopia. |
21:32.00 | tsdogs | hmm, not sure about that. |
21:32.44 | tsdogs | it actually only seems to be using the pix, and the configuration file, which is QSettings, enabled |
21:32.52 | cr2_ | Ellipsoid table couldn't be initialized (check existance and path of ellipse.dat) |
21:32.52 | cr2_ | Datum table couldn't be initialized (check existance and path of 3_param.dat and 7_param.dat |
21:33.25 | tsdogs | fix up paths, there is an /home/alex/.qpegps in there :) |
21:33.42 | tsdogs | I still have to find out why original code is not working |
21:34.10 | cr2_ | the original code always was braindead ;) |
21:34.31 | tsdogs | :) |
21:34.38 | cr2_ | the couldn't open ./qpegps/maps/maps.txt i can remember from 2004 |
21:35.32 | tsdogs | there is no button for confirming options and ui design ain't the best. |
21:35.46 | tsdogs | also profiles are not working. |
21:35.47 | cr2_ | yeah, |
21:35.50 | cr2_ | open("/home/alex/.qpegps/ellips.dat", O_RDONLY) = -1 ENOENT (No such file or directory) |
21:35.50 | cr2_ | open("/home/alex/.qpegps/7_param.dat", O_RDONLY) = -1 ENOENT (No such file or directory) |
21:36.16 | cr2_ | does not look for 3_params.dat |
21:36.17 | tsdogs | :) you did this when I uploaded qpegps to cvs. |
21:36.37 | cr2_ | it may be redundant, but then we need libproj4 dependency. |
21:36.41 | tsdogs | cause it exits when it does not find the 7 |
21:36.59 | cr2_ | but qlandkarte needs libproj4 too. |
21:37.07 | tsdogs | yes. |
21:37.25 | cr2_ | libproj4 is the "right" way to do coordinate system transforms :) |
21:37.58 | cr2_ | may do it is an option. when other problems are solved |
21:38.18 | tsdogs | ok |
21:38.23 | cr2_ | btw, why can't we use the gpsd code from roadmap ? |
21:38.38 | cr2_ | and remove the local crappy code. |
21:38.47 | tsdogs | I already though about it. It's clean and works :) |
21:38.51 | cr2_ | btw, one more thing comes to my mind. |
21:39.14 | cr2_ | roadmap has some *_image() function to put pics into the canvas. |
21:39.17 | tsdogs | I think we shold merge functionality |
21:39.36 | tsdogs | yes, the editor is using it for pixmaps for navigation |
21:39.54 | cr2_ | yes, if we can put background tiles into roadmap, then qpegps will be mostly redundant. |
21:40.06 | tsdogs | bbiaf |
21:40.17 | cr2_ | the only problem here is that the tiles _must_ be in the same projection as roadmap's |
21:45.11 | tsdogs | sorry baby crying. Yes and dunno how much it would slow down the drawing |
21:46.42 | cr2_ | ok, just somethng to think about. it depends on the resolution/scale |
21:46.57 | cr2_ | but i don#t have 100% understanding here in this area. |
21:47.02 | cr2_ | btw. |
21:47.06 | cr2_ | open("./qpegps/maps/maps.txt", O_RDWR) = -1 ENOTDIR (Not a directory) |
21:47.10 | cr2_ | open("./qpegps/maps/maps.txt", O_RDWR|O_CREAT|O_TRUNC, 0666) = -1 ENOTDIR (Not a directory) |
21:47.14 | cr2_ | open("./qpegps/tracks/places.txt", O_RDONLY) = -1 ENOTDIR (Not a directory) |
21:47.14 | cr2_ | open("./qpegps/icons/map16x16.xpm", O_RDONLY) = -1 ENOTDIR (Not a directory) |
21:47.14 | cr2_ | open("./qpegps/icons/info16x16.xpm", O_RDONLY) = -1 ENOTDIR (Not a directory) |
21:47.15 | cr2_ | open("./qpegps/icons/config16x16.xpm", O_RDONLY) = -1 ENOTDIR (Not a directory) |
21:47.15 | cr2_ | open("./qpegps/icons/gps16x16.xpm", O_RDONLY) = -1 ENOTDIR (Not a directory) |
21:47.15 | cr2_ | open("./qpegps/icons/track16x16.xpm", O_RDONLY) = -1 ENOTDIR (Not a directory) |
21:47.23 | cr2_ | i think i know what's the problem here. |
21:47.52 | cr2_ | 16x16 is not very friendly for big displays. |
21:47.54 | tsdogs | edit the .qt/gpsrc |
21:48.01 | tsdogs | yes |
21:48.18 | cr2_ | but it misses ~/ and /usr/share |
21:48.27 | tsdogs | yep |
21:48.27 | cr2_ | at the beginiing. |
21:48.39 | cr2_ | it's the original code deficiency. |
21:48.48 | cr2_ | coming from qtopia2. |
21:48.54 | tsdogs | ok |
21:49.00 | tsdogs | I need to fix that |
21:49.26 | cr2_ | ok. |
21:50.02 | cr2_ | i'm forced to run it as qpegps/qpegps |
21:51.03 | cr2_ | the .qt/ tricks are not going to work on qtopia ? |
21:52.44 | tsdogs | but should work with QSettings, btw I changed that code too, and fixed a few things |
21:52.48 | cr2_ | PathName = getenv( "DATUM_DATA" ); |
21:52.53 | cr2_ | lol. |
21:53.14 | cr2_ | you have hardcoded too much. |
21:53.54 | cr2_ | and PathName = getenv( "ELLIPSOID_DATA" ); |
21:54.33 | tsdogs | not my code |
21:54.41 | tsdogs | was already there |
21:55.18 | *** join/#htc-linux pH5 (n=ph5@p5485ed03.dip.t-dialin.net) |
21:59.46 | cr2_ | ok, need to install the default maps. |
22:00.05 | cr2_ | i've remembered what was the ./qpegps problem. |
22:00.29 | cr2_ | the flash on sl5500 was 16MB and full. |
22:00.49 | cr2_ | so there was no chance to put the maps on flash, and you wanted to have them on SD. |
22:01.15 | cr2_ | because the GPS receiver must have been CF |
22:01.31 | cr2_ | and the serial cable was expensive and difficult to find. |
22:01.41 | cr2_ | so CF was the best option. |
22:01.44 | tsdogs | ok, but one should decide where to put them anyway. and have a param in the config. |
22:01.51 | cr2_ | and no BT at that time of course. |
22:02.05 | cr2_ | ok. |
22:02.39 | cr2_ | but you can safely hardcode /usr/share/qpegps and /opt/Qtopia/share/qpegs as default locations. |
22:03.19 | cr2_ | and that was the reason to separate qpegps from the maps, too. |
22:04.07 | tsdogs | ok |
22:07.43 | cr2_ | z7.png |
22:07.53 | cr2_ | is it warezed from google ? |
22:08.56 | cr2_ | if i click on the properties strange things happen. |
22:09.06 | tsdogs | no idea. could be |
22:09.24 | cr2_ | "Select cental point" |
22:09.35 | tsdogs | it seems to be too good looking to be free :) |
22:10.35 | cr2_ | try to import the map. |
22:10.49 | cr2_ | the layout is completely broken. |
22:11.03 | cr2_ | i can see only 2 checkboxes, and that's all. |
22:11.32 | cr2_ | the program is fine-tuned to grabbing maps from google ;) |
22:11.46 | tsdogs | :) |
22:12.56 | cr2_ | because only the 'download' menu really work. |
22:14.05 | cr2_ | and the 'gps' pane has some big initial layout problems. |
22:14.16 | cr2_ | which are corrected only on resize. |
22:14.30 | cr2_ | then i have something like 56pt fontsize :) |
22:14.35 | tsdogs | on the import I have copy image, or delete image |
22:15.05 | cr2_ | yes. |
22:15.23 | tsdogs | hmm, probably something I removed. |
22:15.28 | cr2_ | you can choose any and nothing happens |
22:15.39 | cr2_ | i just remember how it was on zaurus. |
22:15.50 | cr2_ | the program is buggy as hell :) |
22:16.00 | cr2_ | an is a shame for free software :) |
22:17.27 | tsdogs | hmm, code is commented out, now I wonder if it's mine or original, have to check. |
22:17.46 | tsdogs | don't remember commenting out this part. |
22:18.25 | cr2_ | i don't see the tiled map. |
22:18.32 | tsdogs | / not in Qtopia 1.5 :-( |
22:19.10 | cr2_ | when i compare it to ozi, the tears are coming into my eyes ;) |
22:19.18 | tsdogs | :) |
22:20.15 | tsdogs | is it woth, porting it to QT4 ? |
22:20.31 | cr2_ | i begin to doubt it. |
22:20.49 | cr2_ | it may be easier to write a new program. |
22:20.52 | tsdogs | the only interesting thing is the map itself |
22:21.01 | cr2_ | yeah. |
22:21.10 | tsdogs | I think so too, or just implement it into roadmap. |
22:21.15 | cr2_ | it's completely broken by design. |
22:21.42 | cr2_ | there are 2 key things that are needed. |
22:22.08 | cr2_ | tile requesting/finding and plotting |
22:22.25 | cr2_ | and working with the coordinates. |
22:22.32 | cr2_ | and their transforms. |
22:23.01 | tsdogs | once we find the tile we have coords, so they are relative. |
22:23.05 | cr2_ | i can give you a link. |
22:23.13 | tsdogs | obviously depending on the zoom |
22:23.16 | tsdogs | sure. |
22:23.39 | cr2_ | there is a library called libgdal |
22:23.48 | cr2_ | which compiles with oe. |
22:23.51 | tsdogs | heard of it |
22:24.00 | cr2_ | it has very good docs. |
22:24.33 | cr2_ | and there is a GIS program called 'qgis' written with qt4 (with some qt3compat) |
22:25.00 | cr2_ | which can load raster images, and uses libgdal as a backend. |
22:25.30 | cr2_ | it may be an overkill, but there are some very good ideas there. |
22:25.35 | tsdogs | ok, is it from GRASS |
22:25.40 | cr2_ | we don#t nned to reinvent the wheel. |
22:25.44 | cr2_ | no, not really. |
22:25.46 | tsdogs | :) |
22:26.07 | cr2_ | qgis can be used without GRASS. |
22:26.21 | cr2_ | GRASS is for the really hardcore people :) |
22:26.36 | cr2_ | i'm always amazed how much GRASS can, |
22:26.55 | cr2_ | while there is close to zero documentation on it. |
22:27.23 | cr2_ | and the completely BOFH manpages :) |
22:27.33 | tsdogs | :) |
22:28.04 | tsdogs | I found qgis, but not libgdal, is the do in the source ? |
22:28.16 | cr2_ | http://gdal.maptools.org |
22:28.27 | cr2_ | from qgis you mostly need 1 file |
22:28.49 | Kevin2 | cr2_: Can you do a "cvs up" on haret and verify jornada still works? |
22:29.24 | Kevin2 | BTW, I think I've fixed the wince 5 memory detection code. Let me know if Athena detects okay. |
22:29.53 | cr2_ | tsdogs: http://www.gdal.org/gdal_tutorial.html |
22:29.57 | cr2_ | Kevin2: ok. |
22:33.23 | cr2_ | tsdogs: this is in qgis: ./src/core/raster/qgsrasterlayer.cpp |
22:34.42 | tsdogs | cr2_: ok thx, lot's of studing to do ;) |
22:34.42 | cr2_ | a lot of irrelevant stuff, but qt :) maybe libgdal docs are a better source. |
22:34.43 | tsdogs | cr2_: from FAQ: How to convert a raster to a layer of polygons? TBD :( |
22:35.07 | cr2_ | you can't. |
22:35.27 | cr2_ | or don't really want to. |
22:35.41 | cr2_ | the advantage of qgis is that it works. and written in qt. |
22:36.08 | cr2_ | i can tell you what the core problem is. |
22:36.32 | cr2_ | without any irrelevant details. |
22:37.05 | tsdogs | tell me |
22:38.41 | cr2_ | there are 2 kinds of raster maps. |
22:39.06 | cr2_ | one is metric, and another one is latitude/longitude. |
22:39.35 | cr2_ | the best representative of t he metric map is mercator. |
22:39.39 | cr2_ | used by google. |
22:40.09 | cr2_ | there you can just measure the distances between the points without any problems. |
22:40.52 | cr2_ | the disadvantage is that it extends only to +-85°. |
22:41.13 | cr2_ | and the polar regions are very distorted. |
22:41.43 | tsdogs | clear so far |
22:41.47 | cr2_ | ok. |
22:42.07 | cr2_ | so each raster map is a 2dim array of pixels. |
22:42.28 | cr2_ | N rows, M columns |
22:42.36 | cr2_ | NxM |
22:43.09 | cr2_ | the pixels are usually squares. |
22:43.09 | tsdogs | ok |
22:43.25 | tsdogs | yes depending on "detail" |
22:43.35 | cr2_ | can be rectangles, and can be rotated, but let's use the most simple case. |
22:43.43 | cr2_ | mercator is square. |
22:44.10 | cr2_ | so each pixel is described by its size |
22:44.17 | cr2_ | in both directions. |
22:44.33 | cr2_ | K meters /pixel |
22:45.08 | cr2_ | in mercator everything is measured in meters. |
22:45.13 | tsdogs | ok |
22:45.19 | cr2_ | all coordinates are in meters. |
22:45.29 | cr2_ | in lat/long - in degrees. |
22:45.39 | tsdogs | I suppose that latitude/longitude you can't calculate distance very esasyly |
22:45.45 | cr2_ | yes. |
22:46.04 | tsdogs | and we are using the second one |
22:46.05 | cr2_ | there are other complications, but let's finish with the mercator first. |
22:46.10 | tsdogs | ok |
22:46.58 | cr2_ | so if you know the coordinates (x,y) of the raster corner, you can calculate the coordinates of any pixel |
22:47.16 | cr2_ | coordinates are just a pair of numbers 8x,y) |
22:47.20 | cr2_ | (x,y) |
22:47.33 | cr2_ | in lat,long it's obvious. |
22:47.45 | cr2_ | (lon,lat) in degrees. |
22:48.05 | cr2_ | for mercator it's the same |
22:48.17 | cr2_ | (x_merc,y_merc) |
22:48.35 | cr2_ | you can convert between them using libproj4 |
22:48.43 | cr2_ | i don't go into details here. |
22:49.06 | tsdogs | :) please don't would be too much for me |
22:49.11 | cr2_ | just (lon,lat) <-> (merc_x,merc_y) |
22:49.23 | tsdogs | that's libproj4 work. |
22:49.30 | cr2_ | if you are <85° then it's easy. |
22:49.32 | cr2_ | yes. |
22:50.01 | cr2_ | so i can tell you what (10°,45°) will be in mercator. |
22:50.11 | tsdogs | ok |
22:50.24 | cr2_ | there is a 'cs2cs' program included in libproj4, so you can do it on the command line. |
22:50.51 | cr2_ | the command is |
22:50.54 | cr2_ | cs2cs +proj=longlat +ellps=WGS84 +to +proj=merc +ellps=WGS84 +no_defs |
22:51.16 | cr2_ | you type |
22:51.18 | cr2_ | 10 45 |
22:51.20 | cr2_ | and get |
22:51.23 | cr2_ | 1113194.91 5591295.92 0.00 |
22:51.46 | cr2_ | the third number is the altitude, but i don't want to talk about 3D. |
22:51.56 | tsdogs | ok |
22:52.01 | cr2_ | so with an accuracy of 1 meter |
22:52.21 | cr2_ | the (10°,45°) is (1113195,5591296) |
22:52.38 | cr2_ | the "mercator numbers" are in meters. |
22:53.08 | cr2_ | maybe i've mixed them, but it's not an issue now :) |
22:53.24 | cr2_ | hmm. not it's right. |
22:53.38 | tsdogs | :) |
22:53.45 | cr2_ | so imagine, you have a map. |
22:54.09 | cr2_ | it's upper left corner is (10°,45°) which is (1113195,5591296) |
22:54.27 | cr2_ | 'upper left' is just a convention used in this business :) |
22:54.34 | tsdogs | ok |
22:54.37 | cr2_ | because you can easily recalculate it. |
22:54.53 | cr2_ | and you know that each pixel is 5m size |
22:55.08 | cr2_ | google hi-res has 1.2m/pixel |
22:55.32 | tsdogs | ok this depends on the zoom level. |
22:55.34 | cr2_ | landsat is 15m/pix or 30m/pix depending on the channel. |
22:55.52 | cr2_ | no. it's the physical pixel size of the raster image. |
22:55.59 | tsdogs | ho ok |
22:56.00 | cr2_ | the "raw" raster. |
22:56.16 | cr2_ | of course you can scale it |
22:56.16 | tsdogs | ok, that's not about pixels :) |
22:56.41 | cr2_ | so imagine that your image is 1000x2000 pixels. |
22:57.46 | cr2_ | knowing the corner coordinates, image size and pixel size, you can calculate the bounding box, and the coordinates of any pixel. |
22:58.16 | cr2_ | that's actually all you need to know on the GIS side of things. |
22:59.08 | tsdogs | ok |
22:59.10 | cr2_ | now your program like qpegps (or qgis) requests the image |
22:59.31 | cr2_ | with the bounding box (lon0,lat0,lon1,lat1) |
22:59.45 | cr2_ | what are you going to do ? |
22:59.52 | cr2_ | it wants just to plot it. |
22:59.58 | tsdogs | is this a test ? :) |
23:00.18 | tsdogs | convert lon0,lat0 to x,y and lon1,lat1 to x2,y2 |
23:00.19 | cr2_ | you also know the screen size. X*Y screen pixels |
23:00.28 | tsdogs | then return the box |
23:00.42 | cr2_ | not a test, just to discuss the algorithm. |
23:00.44 | cr2_ | ok. |
23:00.44 | tsdogs | or the x,y corner with the diff size |
23:01.47 | tsdogs | is it correct? |
23:01.49 | cr2_ | ok, you see there are many options here. how the bounding boxes relate to each other. |
23:01.51 | cr2_ | yes. |
23:02.20 | tsdogs | yes. |
23:02.22 | cr2_ | let's imagine the requested bbox is inside the raster bbox. saves us the "white" stripes on the sides. |
23:03.12 | cr2_ | then you need to extract only the pixels which are inside this bbox. |
23:03.23 | cr2_ | imagine you have a 50000x50000 image. |
23:03.38 | cr2_ | using QImage.load() like qpegps does is silly. |
23:04.11 | tsdogs | just go to the x,y position of the matrix and load x_size,y_size pixels |
23:04.26 | cr2_ | it's not so easy :) |
23:04.26 | tsdogs | obviously depending on the zoom. |
23:04.44 | cr2_ | the images are usually compressed. |
23:05.08 | cr2_ | jpeg/png/tiff, whatever. |
23:05.11 | tsdogs | that is the palette you talked about before. |
23:05.19 | tsdogs | ? |
23:05.22 | cr2_ | no really. |
23:05.25 | tsdogs | ok |
23:05.34 | cr2_ | the palette is a different thing. |
23:05.46 | cr2_ | it's the tiled format here. |
23:06.25 | tsdogs | ok, so I need to idetify the tile, load it and then do image work ? |
23:06.32 | cr2_ | the image is stored in 'tiles', that as rectangular(square) images of known size. |
23:06.39 | cr2_ | yes. |
23:06.46 | cr2_ | png does not support that |
23:06.52 | cr2_ | and jpeg too. |
23:07.05 | tsdogs | so only tiff is left |
23:07.06 | cr2_ | i#m not even taking about gif |
23:07.11 | tsdogs | :) |
23:07.16 | cr2_ | yes, tiff. |
23:07.42 | cr2_ | of the lightweight version of tiff used by ozi - ozf2 format. |
23:07.48 | cr2_ | s/of/or/ |
23:08.28 | tsdogs | ok |
23:08.34 | cr2_ | in ozf2 each tile has 64x64 pixels |
23:08.49 | cr2_ | giving you 4096 pixels |
23:09.18 | cr2_ | this pixel (0-255) has a colour from a fixed palette. |
23:09.32 | cr2_ | the palette is a table of 255 colors (8bit) |
23:09.42 | tsdogs | ok, like gif |
23:09.43 | psokolovsky_ | ... or just any other adhoc format. c'mon guys, stop talking, code prototype in python quickly. what's important is map calibration format, not image |
23:09.51 | cr2_ | so you have a byte/pixel storage. |
23:10.10 | psokolovsky_ | as long as libgdal is able to handle ozi's .map, all's rocking |
23:10.14 | psokolovsky_ | and it should |
23:10.28 | cr2_ | psokolovsky_: it can't |
23:10.50 | psokolovsky_ | I checked myself - it should be |
23:10.51 | cr2_ | and geotiff is an overkill for such simple problem. |
23:10.56 | cr2_ | ? |
23:10.59 | cr2_ | really ? |
23:11.29 | psokolovsky_ | and that without saying that without being able to do that, it's crap and not a library |
23:11.31 | psokolovsky_ | yep |
23:11.55 | cr2_ | i'll check the CVS. |
23:12.10 | psokolovsky_ | the risk is that it uses other meshing/interpolation algo/formulae, and that's what should be checked asap |
23:13.24 | cr2_ | the overviews are not 2^ based in ozf2, that may be a problem. |
23:13.42 | psokolovsky_ | GCPs |
23:13.42 | psokolovsky_ | A dataset can have a set of control points relating one or more positions on the raster to georeferenced coordinates. |
23:15.31 | cr2_ | ozf2 does not have GCPs included, and GCPs are not very helpful, actually. you still need to calculate the world file (corner+pixel size) |
23:16.19 | psokolovsky_ | GDALGCPsToGeoTransform() Generate Geotransform from GCPs. |
23:16.30 | cr2_ | and account for the possible pixel rotation like on the TM projections. |
23:16.32 | cr2_ | ok. |
23:16.44 | psokolovsky_ | exactly, ozf2 is just random image format, and thus completely uninteresting |
23:17.11 | psokolovsky_ | only .map is useful, and what .map file contains is exactly GCPs |
23:17.25 | cr2_ | it can be read without libgdal dependency. |
23:17.45 | cr2_ | otherwise we should just go the geotiff route. |
23:17.46 | psokolovsky_ | GCPs don't do rotation - they do non-linear spatial fitting |
23:18.20 | psokolovsky_ | will that be rotation or whatever - not important. what's important is that gdal's GCP worked not worse than ozi's ;-) |
23:19.13 | cr2_ | ok. you only need to map from ozi's (datum,projection) pair to proj4. |
23:19.34 | cr2_ | and hope that whatever who entered the GCPs knew what he is doing |
23:19.41 | cr2_ | which is not always the case ;) |
23:19.43 | psokolovsky_ | translating x,y <-> lat,lon using GCPs is non-trivial, that's what gdal's use is for. and yes, that has little to do with geotiff |
23:20.04 | psokolovsky_ | again, it's just an image format (+ metadata format). that's trivial |
23:20.29 | cr2_ | you can use 'gdalwarp' and forget about GCPs |
23:20.43 | cr2_ | that's what i always use in qgis. |
23:21.00 | cr2_ | because qgis does not really care about GCPs |
23:21.01 | psokolovsky_ | well, whoever entered GCPs of course knew what he was doing, due to the nature of GCPs. the same cannot be said about projections at all... |
23:21.38 | cr2_ | if the GCPs are taken from GPS (lat,long) then it#s ok. |
23:21.53 | cr2_ | but the projections are very often completely bogus. |
23:22.27 | psokolovsky_ | I have no idea about qgis and other rocket science. I know that I have gigabytes of maps calibrated in Ozi using GCPs, and they *work*. and noone showed mt the same regarding grass, qgis, and other b/s ;-D |
23:22.52 | psokolovsky_ | exactly. so, projection suck |
23:23.03 | cr2_ | ok. |
23:23.29 | cr2_ | i'll do the rocket science. just provide me with the working canvas. |
23:23.50 | psokolovsky_ | they of course useful for scales 10km+/1cm, but I care about 1km/2km scale maps, and those can be realistically calibrated only with GCPs |
23:24.30 | psokolovsky_ | well, I gave you link to needed libgdal function - http://www.gdal.org/gdal_8h.html#e6bc0eeea40d1645fbd44d7431c8db07 |
23:25.04 | psokolovsky_ | just feed data to it and see if doesn't suck more than ozi ;-) |
23:25.48 | cr2_ | it's the affine least-squares transform. i think ozi does the same. |
23:26.04 | cr2_ | with 'gdalwarp' you can do better. |
23:26.26 | psokolovsky_ | I *hope* it does the same. I actually hope it just silently gdal underneath ;-) |
23:26.33 | cr2_ | you can do second and third order, and thin plate splines. |
23:26.47 | cr2_ | also with grass. |
23:27.18 | psokolovsky_ | I spent a few nights of my life searching all this stuff around (starting from asbtract math of 2d approximation/interpolation/meshing) |
23:27.35 | psokolovsky_ | and gdal was the best thing I found for the application area |
23:27.42 | cr2_ | psokolovsky_: i've 'warped' the 200m maps using gps GCPs, and was impressed with the quality. |
23:27.54 | psokolovsky_ | So, either ozi's author is rocket scientist himself, or he uses gdal ;-) |
23:28.01 | psokolovsky_ | cr2_: cool! |
23:28.04 | cr2_ | he does not use gdal. |
23:28.37 | psokolovsky_ | cr2_: how do you. also, define "does not use" |
23:28.53 | psokolovsky_ | of he doesn't, as his crap is written in pascal ;-E |
23:29.26 | psokolovsky_ | but heck, what it would take to obfuscate-rewrite C code into Pascal ;-E |
23:29.26 | cr2_ | to calculate the affine transform for N GCPs is not rocket science. |
23:29.57 | cr2_ | A^*Ax=A^*b |
23:30.11 | cr2_ | a linear system. |
23:30.26 | psokolovsky_ | heh, possibly. actually, I suspect that using non-linear meshes would be more useful |
23:30.31 | cr2_ | with 6 unknowns. |
23:31.31 | cr2_ | yes, that's why i'm for using properly ortorectified mercator maps. |
23:31.36 | psokolovsky_ | at least that's what I had in mind when I was researching that area. But having found that gdal offers some kind of solution, I just settled that it should be tested furst for real-world viability ;-) |
23:32.15 | cr2_ | ok, that's actually a different problem. |
23:32.19 | psokolovsky_ | cr2_: yeah! just ortorectify maps for the whole world, and you win! ;-D |
23:32.38 | cr2_ | imagine you have grabbed the 256x256 tiles from google with wget. |
23:32.53 | cr2_ | they are properly ortorectified for the whole world. |
23:32.59 | cr2_ | (let's assume) |
23:33.17 | cr2_ | they are mercator. |
23:33.24 | psokolovsky_ | imagine google maps go to /dev/null where they come from ;-) |
23:33.29 | cr2_ | 1.2m in hi-res 17level zoom. |
23:34.06 | cr2_ | hehe. |
23:34.36 | cr2_ | when i overlay some gps tracks, sometimes my tracks need to go to /dev/null |
23:35.05 | cr2_ | but sometimes the hires tiles have 50m offset ;) |
23:35.47 | cr2_ | ok, then let's use libgdal. |
23:35.51 | tsdogs | ok, guys, |
23:35.54 | psokolovsky_ | and that calls for need of custom calibration, and we end up where we started from - need for arbitrary input map data |
23:36.12 | tsdogs | this has gone way behind my knowings. |
23:36.23 | tsdogs | I'll wait for directions :) good night |
23:36.50 | cr2_ | psokolovsky_: i'd prefer to do the calibration in qgis. |
23:36.51 | psokolovsky_ | using google map's data is of course juicy, but relying 100% on it is artificial and limits use highly |
23:37.11 | cr2_ | i've provided it only as an example. |
23:37.35 | psokolovsky_ | cr2_: that's because you know how to use it ;-). and for most people, ozi is top of their capabilities |
23:37.41 | cr2_ | but any map can be converted into such way. |
23:37.47 | cr2_ | tsdogs: ok. |
23:38.47 | cr2_ | psokolovsky_: i'll write ozf2geotiff for such cases. |
23:39.13 | cr2_ | you can't really tell me that qpegps 'import' dialog of any use for somebody. |
23:40.27 | *** join/#htc-linux psokolovsky (n=psokolov@empty-crossing.volia.net) |
23:40.32 | cr2_ | i'll formulate it in this way. we need a canvas for mercator NxN tiles, with X m/pix. |
23:40.40 | cr2_ | that's all. |
23:41.09 | cr2_ | the rest can be resolved with other ready tools right now. |
23:44.49 | cr2_ | psokolovsky_: actually GRASS was the only software where i could produce tiled geotiff with deflate compression. |
23:45.54 | psokolovsky | as I told, I don't see img format as a problem at all. only coordinate conversion is a devil |
23:46.25 | cr2_ | i see the gui canvas as the devil ;) |
23:46.47 | cr2_ | any conversion can be reduced to mercator. |
23:47.01 | *** join/#htc-linux pH5_ (n=ph5@p5485FA26.dip.t-dialin.net) |
23:48.37 | psokolovsky | but need to deduce mercator coeffs out of real-world map images - using GCPs |
23:48.52 | cr2_ | yes. |
23:49.01 | cr2_ | tsdogs: still here ? |
23:49.59 | cr2_ | psokolovsky: any math is not a problem. efficient plotting is the problem. |
23:51.14 | psokolovsky | how that can be problem? ;-D |
23:52.09 | cr2_ | for me it is :) |
23:52.39 | cr2_ | i#ll be happy with qgis, but it's an overkill for such purpose. |
23:53.21 | cr2_ | there is no ozf2 support in gdal. |
23:53.31 | cr2_ | so let's stick to geotiff. |
23:53.51 | psokolovsky | damn! but that's *only* tiled image |
23:54.04 | psokolovsky | you draw it as is, tile by tile, that's all. |
23:54.32 | cr2_ | yes, but there is no working implementation that i know. |
23:55.49 | psokolovsky | ?? you must be kidding ;-) a for loop with few variable does the trick ;-) |
23:56.40 | cr2_ | lol. if the life was so easy. |
23:56.49 | cr2_ | ok, it's late now. good night. |
23:57.15 | psokolovsky | godd night! |
23:57.17 | psokolovsky | good |