World: r4wp
[#Red] Red language group
older newer | first last |
Kaj 27-Jun-2013 [8852] | Inasfar as it does run, there's no reason Red wouldn't run on it now |
james_nak 27-Jun-2013 [8853] | Doc, what's your timeline on the full support you have in mind? |
DocKimbel 27-Jun-2013 [8854] | I need to have objects and ports implemented first, so don't expect it before September most probably. |
james_nak 27-Jun-2013 [8855] | Thanks. So it's not as if it is next year. Where can I see the red code for your second hello? |
DocKimbel 27-Jun-2013 [8856] | I've renamed it to `eval`, it's in red/bridges/android/samples/eval/. |
Bo 27-Jun-2013 [8857] | Thanks for the help everyone, esp. Kaj. Changing to 'allocate was all I needed for my program to work. Thanks to Doc for the debugging hint (run from MS-DOS console). Don't know why I didn't think of that on my own. |
james_nak 27-Jun-2013 [8858x2] | Doc, I must be in some other world. Where is red/bridges? |
I checked the pastebin link and saw the code. | |
Kaj 27-Jun-2013 [8860x2] | It's in the dyn-lib-emitter branch. I guess you were looking in master? |
https://github.com/dockimbel/Red/tree/dyn-lib-emitter/red/bridges/android/samples/eval | |
james_nak 27-Jun-2013 [8862] | Kaj, thanks. Yes, I was in master! Perfect. |
Kaj 27-Jun-2013 [8863] | Almost the same as another world ;-) |
james_nak 27-Jun-2013 [8864x3] | When you're lost it is exactly the same. The problem with me is that I come in and out of these conversations and so end up not building on top of previous knowledge. Every trip into red-landia is a new one :-) |
While I am at it, I'm on the dyn-lib-emitter page, is there something I click on to download the entire dyn-lib folder? | |
Nevermind. I just created an account and now see the zip button. | |
Kaj 27-Jun-2013 [8867] | I thought it worked without an account. But I haven't been logged out for a long time |
james_nak 27-Jun-2013 [8868] | I don't know if I am using it correctly but I attempted to run the build.r file (w/o any arguments...I think it builds the "eval.red"). I end up with: Signing apk... 'jarsigner' is not recognized as an internal or external command, operable program or batch file. Aligning apk... Unable to open 'builds\eval-signed.apk' as zip archive |
Kaj 27-Jun-2013 [8869x2] | It should have downloaded the jarsigner and other tools |
Do you have a JDK installed? | |
james_nak 27-Jun-2013 [8871] | Interesting, the lines for downloading that are commented out. I will try it again. I do have the JDK installed as I was doing some driod app stuff a while back. |
Kaj 27-Jun-2013 [8872x2] | Seems a mistake |
Wonder how it worked for Petr | |
james_nak 27-Jun-2013 [8874] | Getting closer. I now have jarsigner but the cmd expected to see it in the root dir. So I just placed jarsigner there along with the jli.dll. That may not be a good idea because it seems to do its thing but finally dies with: Signing apk... Error: Could not find or load main class sun.security.tools.JarSigner Aligning apk... Unable to open 'builds\eval-signed.apk' as zip archive |
Kaj 27-Jun-2013 [8875] | Looks like Doc and Petr had jarsigner already installed with their tool suite |
james_nak 27-Jun-2013 [8876] | At this point I am stuck on the sun.security.tools.JarSigner file issue. |
Bo 27-Jun-2013 [8877] | OK. Next enigma about Red/System that I ran into. Consider the two following sets of code and output. Why are they different? Code 1: im1: as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) print-line as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) Output 1: ... 96 99 107 111 105 104 100 99 100 98 Code 2: im1: as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) print-line im1 Output 2: ... 4260192 4260451 4260203 4260207 4259945 4259944 4259940 4260451 4260196 4260194 |
Kaj 27-Jun-2013 [8878] | The example is not complete. How do you get more than one value? |
Bo 27-Jun-2013 [8879x3] | This is a loop that processes raw binary image data. 'r, 'g, and 'b are incremented through an 'until loop until the data is all consumed. |
But what is troubling to me is that print-line im1 is not equal to print-line as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) | |
They should be equivalent. | |
Kaj 27-Jun-2013 [8882x2] | It could be a Red/System bug, or it could be a result of the code you're not showing. Can't tell |
Are you doing this on the Raspberry? Doc recently made fixes to the ARM code emitter. It was less mature than the x86 emitter | |
Bo 27-Jun-2013 [8884x2] | I am running this on Windows currently. XP 32-bit. Here's the complete code: #include #../C-library/ANSI.reds img1: as-binary 0 size1: 0 img1: read-file-binary "img1.bin" :size1 i: 0 r: 0 g: 0 b: 0 im1: 0 until [ r: i + 2 g: i + 3 b: i + 4 im1: as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) print-line im1 ;as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) i: i + 4 i >= size1 ] |
If I change the line print-line im1 ;as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) to print-line as-integer ((img1/r / 3) + (img1/g / 3) + (img1/b / 3)) I get the expected output. | |
PeterWood 27-Jun-2013 [8886x2] | It could be caused by differences in the auto-casting between a simple assignment and a call to print-line. Being conservative I would have written: im1: (((as integer img1/r ) / 3) + (as integer img1/g) / 3) + (as integer img1/b) / 3) |
plus one more ) at the end :-) | |
Bo 27-Jun-2013 [8888x3] | I already tried that and got an error from the compiler saying that there was an unnecessary cast from integer to integer. |
*** Warning: type casting from integer! to integer! is not necessary | |
It would then exit. | |
PeterWood 27-Jun-2013 [8891] | What type is img1/r ? |
Bo 27-Jun-2013 [8892x2] | img1 is binary (or byte!) I suppose. |
img1 is a pointer to an array of those bytes, I should have said. | |
Kaj 27-Jun-2013 [8894] | The addition can't result in more than a byte, so it should be no problem to do it with bytes |
Bo 27-Jun-2013 [8895] | I just can't see how the output I'm seeing is not a bug. I was hoping you could explain it. |
PeterWood 27-Jun-2013 [8896] | But it seems as the compiler thinks that img/r is an integer! |
Kaj 27-Jun-2013 [8897] | Yes, it looks like a bug |
Bo 27-Jun-2013 [8898x3] | Agreed. |
Could it be a problem that I'm type casting im1 to an integer in the line im: 0 ?? | |
Forget it, that can't be the problem. | |
Kaj 27-Jun-2013 [8901] | That's not a cast, just an assignment |
older newer | first last |