This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Messages - ExtendeD
Pages: 1 ... 39 40 [41] 42 43 ... 55
601
« on: January 02, 2011, 07:26:11 am »
Levak: I'll have a look, but I would prefer to fix the other issues before the port to OS 2.1.
calcforth, calc84maniac: thank you so much, cleaning the cache is the solution! I would like to clean the cache everywhere code is loaded dynamically, including in bootstrapper.S. But GNU AS keeps failing with the following error:
bootstrapper.S:89: Error: selected processor does not support `mrc p15,0,r15,c7,c10,3 bootstrapper.S:89: Error: selected processor does not support `mcr p15,0,r0,c7,c7,0
I have tried different -mcpu and -march options for GCC without success...
602
« on: January 02, 2011, 05:52:19 am »
also, rewriting the whole event system, as the original used function pointers with arguments, which the Nspire doesn't seem to like either], and that's it. You may need special calls when defining arrays of function pointers, but function pointers themselves (with or without arguments) shouldn't be a problem. I would be interested by a test case that fails.
603
« on: January 01, 2011, 06:53:52 pm »
So impressive! For the low contrast, I suppose this will help you.For your frequent crashes at startup, could the GDB feature of Ncubate help you pinpoint the problem? (I can't find much information on who to actually thank... I'd list more names if I knew them, so if you work on Ndless, tell me!) geogeo wrote with me much of Ndless 1.0, and laid the foundations of Ndless 1.7. Unfortunately he could not afford to invest time in it any more and left the team a few months ago. I'm now the only maintainer, but with the help of many testers and contributors from Omnimaga.
604
« on: December 29, 2010, 06:35:27 pm »
I still get the format warning message. (I did "make clean", before the rebuild (revision 351) ) So this isn't fixed yet...
I actually didn't not really find what was the root cause, I just noticed it disappeared on my own calculator after reorganizing the program loader's code. But during my tests on the random crash, it sometimes reappeared... I'll have to consider it still unfixed. But with the interrupts masked, what could interfer? Most probable cause is caches. Read this - does it look like what you are seeing?
Ah yes, caches could be a big issue. In the Ndless program loader, after loading a program try running this: (info taken from the arm926ej-s manual)
Thanks calcforth and calc84maniac, this is a good lead, I'll try. I am confused, does the strikethrough means you had it fixed, but then you discovered it was not and you added the [ s ] tag to your text so people disregard the post? Sorry if this was not clear, I just meant the bug was fixed. Well, it isn't after all.
605
« on: December 28, 2010, 06:11:56 pm »
But with the interrupts masked, what could interfer?
606
« on: December 28, 2010, 06:11:06 pm »
There's some keypad-related work in function 0x10013958 of OS 2.0.1 non-CAS. It seems to detect the transition from a Clickpad/Touchpad keypad to a 84+ keypad (but could probably be adapted). The OS variable 0x10733DA8 is "keypad_type" and contains a value between 1 and 4 (see this description). The functions 0x10276B84 and 0x10091F90 involve the currently undocumented I/O ports 0x900B0018 et 0x900B0020, there's probably something to do with them.
607
« on: December 28, 2010, 05:48:26 pm »
The random crash when running program is really weird. I think I have already seen it during the alpha tests of Ndless v1.7, but it had disappeared. Now it's back.
I'm quite sure that: - It is only reproducable on real hardware - It depends on the program being run - The crash always happens somewhere near ploaderhook.c's ((void (*)(int argc, char *argv[]))(docptr + sizeof(PRGMSIG)))(1, (char*[]){docpath, NULL});, i.e. the program execution - Even a program containing only 'PRG\0'[bx lr] can crash - This has nothing to do with argc/argv passed as parameters - It happens with or without interrupts enabled - The data run is never corrupted - Lionel Debroux reports the issue with Ndless v1.7. I'm personally reproducing it with Ndless v2.0 on a Clickpad non-CAS OS 2.0.
Could there be some execution protection on the heap, but not for all the allocations?
608
« on: December 28, 2010, 03:46:11 pm »
The following issue has been fixed: Installation message replaced by a document format warning on real harware: The program loader is called before it is installed, earlier than on OS 1.7. The issue doesn't appear on nspire_emu.
609
« on: December 28, 2010, 03:27:45 pm »
Thanks, I'll try to include it.
Most of the syscalls are tested automatically with arm/tests/tests.c. These are not advanced tests but should be enough without taking to much time to write. ftell did pass the tests without any problem.
610
« on: December 28, 2010, 01:02:50 pm »
Great, thank you to both of you.
apcalc: I have personally not planned to work on the touchpad I/O ports, I suppose Goplat will document and implement this in nspire_emu as quickly as he used to. But I am not really happy with the current work around, I would prefer true support before the final release.
611
« on: December 28, 2010, 11:55:55 am »
A major update is available. It includes: - Many functions of the standard library, that will hopefully help to port existing programs. The documentation on Hackspire is up-to-date. (freopen, errno, toupper, strtod , strtol, strspn, strerror, strcat, strstr, fflush, remove, ungetc, stdin, stdout, stderr, feof, rewind, strcpsn, fputs, fgets, putc, getc, strtoul, strcoll, ferror) - New functions clrscr() and any_key_pressed() (see libndls) - Touchpad support should now be fixed thanks to critor and Goplat, although I cannot test it on real hardware. The arrows and click are mapped to 1-9 as it has been suggested, as long as we cannot interact with the Touchpad hardware. Programs must be rebuilt to benefit from this update. The particles demo should at least work, I'd like to read your feedback!
612
« on: December 27, 2010, 02:24:39 pm »
Thanks, that's what I have also found thanks to critor's tests.
613
« on: December 27, 2010, 11:48:52 am »
"unsigned" (or unsigned int) means 4 bytes (i.e. a word). word writes must be "aligned", i.e. to an address multiple of 4. Use instead something like: (*(volatile unsigned*)0xA4005200) = 0xFFFFFFFF; (*(volatile unsigned short*)0xA4005204) = 0xFFFFF; (*(volatile unsigned char*)0xA4005206) = 0xFF;
By the way here is a more simple clear screen, which will be included in Ndless 2.0:
void clrscr(void) { memset(SCREEN_BASE_ADDRESS, 0xFF, SCREEN_BYTES_SIZE); }
614
« on: December 27, 2010, 10:56:37 am »
Each byte of the screen buffer contains 2 bits. int (of screen_cords) is 4 bytes long. The screen width is 320 (see SCREEN_WIDTH in Ndless's common.h).
240*180=43200 > SCREEN_BYTES_SIZE (38400), so your code probably fails with a buffer overflow.
615
« on: December 27, 2010, 07:28:47 am »
So to sum up the previous posts: 1) The dynamic remap available on the HEAD of the SVN repository works for nobody, right?. Strangely it works for me on nspire_emu. 2) The Touchpad arrows won't work as long as we don't find how to interact with the hardware. Could anyone try Goplat's keypad swap suggestion? 3) The best workaround would be to map the arrows to 1-9. But this depend on 1). However, after I exit the particle demo, the left ~10 pixels are shifted to the right of the screen for some reason.
Yes, the "shifted screen" is listed in the first post. I have no idea of the cause at the moment. As a suggestion to staff, links to OS 2.0.1 should probably be added to the first post, in case some people miss the other topic outside the Ndless sub-forum. Sure, good idea. It remains 5 days before Ndless birthday, isn't it ?
You have a good memory It was not really Ndless at this time, but a picture of the first lines of code run on real hardware. EDIT: I tried compiling myself on Ubuntu, but I'm getting
utils_light_thumb_os-1.7.o: In function `ut_calc_reboot': utils.c:(.text+0xcc): undefined reference to `__builtin_unreachable' Make sure you are using GCC v4.5.1. Actually, the arrow and click keys cannot be checked the same way as the other keys on the touchpad. That mapping is actually for some sort of touchpad prototype which is supported by the OS (which is what nspire_emu uses, and thus where this faulty key mapping comes from). I personally have no idea how to check the touchpad, but Goplat mentioned some OS routines that can be used.
Could you point me to the post? I don't remember it.
Pages: 1 ... 39 40 [41] 42 43 ... 55
|