00:24
<
wpwrak >
the page doesn't show a title. and the <TITLE> tag just says "Qi". terribly short if you want to refer to it :)
00:27
<
kristianpaul >
what tittle you want it to show?
00:29
<
kristianpaul >
Qi's mission is to promote and encourage the development of copyleft hardware.
00:29
<
wpwrak >
at least "Qi-Hardware" ;)
00:33
<
kristianpaul >
well,may beall this time we were Qi :-)
00:44
<
kristianpaul >
so Qi..
00:44
<
kristianpaul >
not more
01:00
<
kristianpaul >
donw
01:01
<
kristianpaul >
happy now wpwrak ?
01:02
<
wpwrak >
whee ! thanks a lot ! :)
02:16
<
Phagus >
Wow, this is pretty amazing...
02:17
<
kristianpaul >
what what??? !!
02:17
<
kristianpaul >
hi Phagus :-)
02:17
<
Phagus >
Hi. Hardware hacking!
02:18
<
wolfspraul >
ah yes, welcome to the club
02:18
<
kristianpaul >
ah, sure,  also try ask later about hardware manufacturing ;-D
02:18
<
Phagus >
I've always wondered about it. I have a ton of old computers, circuit boards, parts, etc, always wondered if I could do something impressive with them
02:20
<
kristianpaul >
aw_: you're in writing to the wiki, congrats !!
02:21
<
Phagus >
Is there a good newbie beginner's guide to this?
02:21
<
Phagus >
I'm a newbie engineering student
02:21
<
kristianpaul >
nanonote it self is a guide
02:21
<
aw_ >
kristianpaul, hi, what's up?
02:22
<
kristianpaul >
sorry to distract you :-)
02:22
<
wolfspraul >
Phagus: what's your major?
02:23
<
aw_ >
kristianpaul, oh~yeah. :-)
02:23
<
kristianpaul >
hopes is radio eng
02:25
<
Phagus >
wolspraul: It's just called "Computer Systems", it's a bit of engineering and technician stuff. Hardware, software, networking, programming, web design, administration. But I'm finding myself getting really interested in the engineering parts of stuff.
02:25
<
wpwrak >
kristianpaul: superluminar particle physics (applied) would be more interesting, though
02:27
<
Phagus >
kristianpaul: What's nanonote?
02:27
<
kristianpaul >
a pocket small computer, that was freeded and copylefted as much
02:28
<
kristianpaul >
both software and hardware side
02:31
<
Phagus >
Ethernet over USB? interesting
03:14
<
akiwiguy >
pops his head in
03:34
<
wolfspraul >
kristianpaul: oh cool, you tried toped :-)
14:33
<
wolfspraul >
wpwrak: hardware question for the expert. was is the best temperature to drink a beer at?
14:47
<
Ayla >
3°C for the beer, 24°C outside
14:54
<
kristianpaul >
24 is not a bit cold?
15:40
<
wpwrak >
wolfspraul: puuh.  i never actually waited long enough to measure ;-)
15:41
<
wpwrak >
wolfspraul: a bit above freezing sounds about right, though. particularly if it's hot outside. of course, 24 C isn't hot :)
15:59
<
wolfspraul >
that cold? ok I will try :-)
19:37
<
Ayla >
mth: I think it would be much simpler to render the last frame of gmenu2x twice
20:49
<
mth >
Ayla: an all-SDL solution would be cleaner though
20:49
<
mth >
didn't the patch you made earlier solve it?
20:50
<
Ayla >
no, it does not work
20:51
<
mth >
you removed the "* bytes_per_pixel" part?
20:54
<
mth >
maybe SDL itself already undoes the vertical scroll earlier?
20:56
<
Ayla >
it's restored after (SDL_fbvideo.c:1982)
21:04
<
mth >
could the fact that screen->pixels is not set to NULL cause problems?
21:05
<
mth >
it doesn't look like it's inspected afterwards
21:05
<
mth >
but then why would they have a test around that assignment?
21:06
<
mth >
in what way doesn't the patch work?
21:07
<
Ayla >
one time out of two, the launch of a binary from gmenu2x fails :)
21:33
<
mth >
launch fails as in "gmenu2x keeps running" or "gmenu2x crashes" or "launched binary has no video" or ...?
21:34
<
Ayla >
gmenu2x crashes and respawns
21:40
<
mth >
that sounds like the memcpy writes to the wrong location / out of bounds
21:41
<
Ayla >
yes, I believe
21:42
<
mth >
smem_start is a physical address, user space cannot write there
21:42
<
Ayla >
ah, that makes sense then
21:42
<
mth >
you should use the pointer returned by mmap
21:42
<
mth >
from wherever SDL stored it
21:58
<
mth >
use "this->screen->pixels" in the memcpy ("pixels" part is missing)
21:59
<
mth >
"mapped_mem + mapped_offset" is the address of line 0 in the frame buffer?
21:59
<
mth >
then it looks ok to me if you add "->pixels"
22:12
<
Ayla >
doesn't work
22:13
<
Ayla >
the binaries do launch, but I get garbage on the screen instead of the launcher menu
22:15
<
mth >
garbage until the launched app takes over, I assume?
22:16
<
mth >
always garbage or half of the times?
22:16
<
mth >
ah, "pixels" points to the *in*visible page
22:17
<
Ayla >
half of the times
22:22
<
mth >
anyway, the "pixels" pointer is not what you need; you need the pointer to the visible page
22:22
<
Ayla >
I just have to reverse the memcpy
22:23
<
Ayla >
and removing mapped_offset fixes the garbage
22:23
<
mth >
the destination should always be line 0
22:27
<
Ayla >
the comparison line 15 is incorrect
22:27
<
Ayla >
it should be '=='
22:27
<
Ayla >
as the buffers has been flipped
22:27
<
mth >
check FB_FlipHWSurface
22:27
<
mth >
surface->pixels = flip_address[flip_page];
22:27
<
mth >
looks like flip_page and flip_address is all you need
22:28
<
Ayla >
looks like the solution is simpler then :)
22:28
<
mth >
note that flip_page is only initialized if SDL_DOUBLEBUF is set, so check that before using the value
22:45
<
mth >
I'd prefer "flip_page == 0" over "!flip_page", since it's an index and not a boolean
22:45
<
mth >
but that's a minor thing
22:45
<
Ayla >
it is a boolean
22:46
<
Ayla >
see SDL_fbvideo.c:1439
22:46
<
Ayla >
they explicitely write "flip_page = !flip_page"
22:46
<
mth >
hmm, SDL itself is not consistent
22:46
<
Ayla >
but I can put flip_page == 0, I don't mind :)
22:46
<
mth >
yes, there they use it as a bool, but in "cache_vinfo.yoffset = flip_page*surface->h" it is an index
22:47
<
mth >
either way is both consistent and inconsistent with the existing code ;)
22:47
<
mth >
so commit whetever version you prefer
22:48
<
mth >
personally, I would have used "flip_page ^= 1;" instead of "flip_page = !flip_page;", but let's not change any more code than we have to
22:50
<
Ayla >
it works fine, I commit it
22:51
<
Ayla >
but I'm not sure about SDL_memcpy
22:51
<
Ayla >
lines 1923->1929 are here to prevent a bug in SDL_memcpy, apparently
22:52
<
Ayla >
(of SDL_fbvideo.c)
22:53
<
Ayla >
btw, why don't you commit the config files for uClibc and busybox?
22:53
<
mth >
I was just working on that commit :)
22:53
<
mth >
the rebuild finished, now I've got to check it
23:08
<
mth >
about SDL_memcpy: it is SDL_memset that is worked around there
23:08
<
mth >
you could use ordinary memcpy if you like
23:08
<
mth >
I don't know what the purpose of SDL_memcpy is
23:09
<
mth >
is it for extra performance (only likely if the system memcpy is poor) or is it for systems that have to memcpy?
23:11
<
Ayla >
both, I believe
23:16
<
mth >
in any case, both memcpy and memset should operate on arbitrarily aligned pointers
23:16
<
mth >
they can use special optimized code if pointers are aligned, but should have a (slow) fallback if not aligned
23:17
<
mth >
so I'd suggest to ignore the treat of possible bugs; if there are bugs, they should be fixed in memcpy/memset, not worked around
23:21
<
mth >
I see the SDL patch; is the gmenu2x side also pushed?
23:23
<
Ayla >
the gmenu2x modification was very fast to make
23:23
<
Ayla >
what takes me the most time is the commit message...
23:25
<
Ayla >
mth: the setenv is made only if UNLOCK_VT is defined, is that a problem for you?
23:26
<
Ayla >
I think I'll use another constant
23:26
<
mth >
I do prefer to have separate constants, even if they are in practice set on the same systems
23:27
<
Ayla >
do we even need a constant to enable/disable the setenv?
23:28
<
mth >
I think it can be enabled always
23:28
<
mth >
on some platforms it may have no effect, but that doesn't matter
23:34
<
Ayla >
I added a link to your repo, if somebody need to find the patch
23:37
<
mth >
maybe deep-link?
23:37
<
mth >
someone not familiar with buildroot could have trouble finding it
23:37
<
Ayla >
I don't know its URL :)
23:38
<
mth >
"a SDL patch" -> "an SDL patch"
23:38
<
mth >
phonetically, "SDL" starts with a vowel
23:38
<
Ayla >
but S stands for "simple" :)
23:41
<
mth >
that's the deep link
23:41
<
mth >
it's a bit long though
23:42
<
mth >
the file/directory links on-screen actually use deep link URLs, but if you click some javascript trickery refreshes only the source view on the same page
23:42
<
mth >
if you open the link in a new tab you get the actual URL
23:43
<
Ayla >
maybe we can create a tinyurl then?
23:43
<
Ayla >
I never used that, I just hope it does not timeout after some days
23:44
<
mth >
I don't like shorteners
23:44
<
mth >
just spread it over two lines
23:56
<
mth >
Ayla: it's not working here
23:56
<
mth >
could that be because I reversed one of the commits that suppresses the console?
23:57
<
mth >
I do see the loading dialog, but only a very short time, after that I see the console
23:57
<
Ayla >
that's normal
23:57
<
Ayla >
you reverted one of my commits...
23:58
<
Ayla >
when a console is displayed, type: echo 0 > /sys/devices/virtual/vtconsole/vtcon1/bind
23:59
<
mth >
yep, it works using that