On Thu, Jun 06, 2013 at 01:28:10PM +1200, Ralph Versteegen wrote: > On 6 June 2013 02:19, James Paige <[email protected]> wrote: > > On Wed, Jun 05, 2013 at 10:58:28PM +1200, Ralph Versteegen wrote: > >> Wow, thanks for the help, I didn't actually mean to ask you to perform > >> all those tests :) > >> > >> I only saw garbage on startup in an emulator with hardware (host) > >> accelerated OpenGL enabled, but none on my device (which has no GPU) > >> or an emulator without it. So I thought it might be specific to an > >> (emulated) GPU being available rather than whether or not it's running > >> on an emulator. > >> > >> We normally test interactivetest.rpg using the > >> testgame/interactivetest.ohrkeys recorded input file, which is fed in > >> with a commandline argument. Since being able to specify commandline > >> arguments would be quite useful I just added the ability to do so > >> (though I haven't tested it under android). You should be able to > >> place a file called ohrrpgce_arguments.txt in the > >> com.hamsterrepublic.ohrrpgce.game/files/ directory. (Is this directory > >> always on the SD card, or will it be there only if the app is > >> installed on the SD card? And I don't see where the app binary files > >> are... > > > > As far as I understand, yes, this directory will always exist, although > > the exact location might vary. In Android terminology, /sdcard does > > *not* refer to an actual removable SD card, it refers to user-writable > > storage, which may or may not be a removable SD card depending on device > > implementation (usually not, as far as I have seen) > > My own phone has "internal storage", an "internal SD card" > (/data/HWUserData) and a removable SD card (/sdcard). There is no > Android folder for app files in /data/HWUserData however. It hadn't > occurred to me that some devices (tablets?) wouldn't have a removable > SD card. I tried removing my microSD card, and sure enough /sdcard > disappears. I had the OHR installed on internal storage, so I could > launch it, but it crashes. SDL tries to set the working directory to a > nonexistent directory: > I/libSDL ( 428): Changing curdir to > "/mnt/sdcard/Android/data/com.hamsterrepublic.ohrrpgce.game/files" > > As a result, the actual working directory is /, which causes lots of > errors (and death by File Not Found in findfiles :) > > I had forgotten that all the ported SDL programs I tried wouldn't run > until I bought and installed a microSD card. However I think we can > get by without requiring one. Even on my phone there is 75MB of space > available in /cache (the total internal storage seems to be about > 600MB, split into quite a few partitions including the "internal SD > card").
Your Phone is android 2.2, right? I read that starting in android 2.3 they added some APIs to check whether or not the /sdcard is removable. >From what I have read here https://developer.android.com/guide/topics/data/data-storage.html#filesExternal and various places (stackoverflow, mostly) the two options an app has for saving user data are: Internal storage, also called private storage (always internal, never removable, erased when the app is uninstalled) External storage, also called SD Card (sometimes removable, sometimes not. it seems that it is more likely to be removable in older devices, and less likely to be removable in newer devices. Not erased when the app is uninstalled, not secure from access by other apps.) Those two options are probably an oversimplification, but it is the best overview I have gathered so far :) > >> To compile Custom, just specific 'custom' instead of 'game' when > >> invoking scons. This didn't work before, I just fixed that. Tried it > >> out now, compiled and ran fine. But the app will still be called > >> OHRRPGCE Game. I guess we probably don't want to seriously package > >> Custom for android, so that at least saves the hassle of multiple > >> project directories and config files. (But what about packaging > >> individual games?) > > > > Ideally, I would like for people to be able to export their game as an > > android apk from the Distribute Games menu. They would have to install > > the Android SDK, and they would have to create their own signing key on > > google play and specify its location to the distribute game settings. > > > > Then the Distribute menu could download a pre-built unsigned binary of > > the OHRRPGCE Game apk. it would add the game to it, add a user-specified > > icon (I want that for Windows and Mac too, but that is beside the point) > > and then sign it with their key, ready to upload to the play store. > > > > Of course, We also need to be able to change the package name to > > something other than com.hamsterrepublic.ohrrpgce.game so I don't know > > how practical that will be to do with a pre-built binary. > > I think we should also allow exporting non-signed .apks without > requiring the SDK to be installed, so that people can at least try out > their game on their own phone. An .apk is mostly just a .zip, however > it also seems to have an alignment requirement for file chunks, which > would probably require a separate utility. Oh, yeah, if we can get by with just a few utils and not the full SDK, that would be great. Actually, I think even the public key signing just uses a separate utility too. > Actually, if you look at build.sh and sign.sh in sdl-android, it seems > that only two utilities are needed for putting together and signing an > .apk: jarsigner and zipalign. zipalign is part of the Android project, > while jarsigner is a Java utility. Maybe we could distribute jarsigner > too. > > > For people who don't have their own domain name, we can provide a > > namespace like com.hamsterrepublic.ohrrpgce.games.gamename but I would > > also like to allow people to specify their own namespaces, so for your > > own game, tmc, you might choose to use > > com.castleparadox.tmc.foresttemple or maybe Mogri would want to use > > com.slimesalad.phantomtactics or Harlock might use > > org.crithit.spellshard > > Is there any point to allowing customisation of namespace? I think it > just has to be unique, eg a com.hamsterrepublic.ohrrpgce.games. > prefix. > I see that the Android documentation says "To avoid conflicts with > other developers, you should use Internet domain ownership as the > basis for your package names (in reverse)." Well, from a making-things-work perspective, no, there is no point to allowing people to specify their own namespaces, but from the perspective of people signing their own games and uploading them to the google play store, I would like to give people that option, especially for people who are going to sell their games rather than post them as free apps. Someone can still sell their game with a name in the com.hamsterrepublic.ohrrpgce.games.* namespace, but by doing so the are trusting me as the owner of that domain to behave honorably about it :) > >> The Compiling on Android page gives instructions for compiling > >> commandline programs, which is anything aside from Game and Custom. It > >> produces binaries in the wip folder which you need to copy to the > >> device and run manually. When not crosscompiling, "scons test" can be > >> used to run all test programs and games. > >> > >> On 5 June 2013 11:00, Seth Hetu <[email protected]> wrote: > >> > Regarding the other tests, I copied interactivetest.rpg to the games > >> > folder and ran it, but there aren't enough input buttons for me to run > >> > it manually. (I was able to run it through about six tests). I there a > >> > way to run it automatically? > >> > > >> > For vectortest and reloadtest, I was only able to find some binary > >> > files in wip. Is this something I should copy to the device and run? > >> > I'm not really familiar with the OHR's testing framework. > >> > > >> > Finally, regarding Custom, I'm in way over my head; > >> > "MainActivity-debug.apk" seems to only contain Game. Any thoughts on > >> > how to point sdl-android to Custom as the main Activity? > >> > > >> > -->Seth > >> > > >> > > >> > On Mon, Jun 3, 2013 at 10:26 PM, Ralph Versteegen <[email protected]> > >> > wrote: > >> >> Great! Good to hear that I didn't miss anything in the compile > >> >> instructions. > >> >> > >> >> The git clones of the OHR repository on gitorious (both mine and > >> >> Neo's) are far out of date. I only rarely push anything to gitorious. > >> >> > >> >> Do you see garbage on screen when the program starts? > >> >> There's very little that I've actually tested; I expect that there are > >> >> lots of problems to be found. Do save files work? Custom? > >> >> interactivetest?) Do vectortest and reloadtest pass? (Note that they > >> >> put the terminal into a non-echoing state) I haven't been able to > >> >> reproduce the test failure I saw before. > >> >> > >> >> On 4 June 2013 05:45, Seth Hetu <[email protected]> wrote: > >> >>> Ugh, sorry, I'm an idiot. Figured out what I did wrong. I now have > >> >>> successfully compiled the OHR for Android (am playing WH now). :D > >> >>> > >> >>> -->Seth > >> >>> PS: I'm totally willing to help test out random stuff if you need it. > >> >>> I've got a Nexus 4, and (finally) a working toolchain. > >> >>> > >> >>> On Mon, Jun 3, 2013 at 1:07 PM, Seth Hetu <[email protected]> wrote: > >> >>>> I ran into an error in the last phase of compiling the APK; posted it > >> >>>> to the talk page of the wiki. > >> >>>> > >> >>>> That reminds me; is it better to post about these kinds of errors to > >> >>>> the list or just in the talk page? > >> >>>> > >> >>>> -->Seth > >> >>>> > >> >>>> On Mon, Jun 3, 2013 at 10:31 AM, Seth Hetu <[email protected]> > >> >>>> wrote: > >> >>>>> Ah, thanks. I misread "the latest SVN" and picked up the latest git > >> >>>>> source. > >> >>>>> > >> >>>>> -->Seth > >> >>>>> > >> >>>>> On Mon, Jun 3, 2013 at 10:13 AM, James Paige > >> >>>>> <[email protected]> wrote: > >> >>>>>> That is in the ohrrpgce svn repository > >> >>>>>> > >> >>>>>> svn://gilgamesh.hamsterrepublic.com/ohrrpgce > >> >>>>>> > >> >>>>>> On Mon, Jun 03, 2013 at 09:22:11AM -0400, Seth Hetu wrote: > >> >>>>>>> Got a quick question regarding the compiling instructions: "You can > >> >>>>>>> use the script wip/android/compiling-using-toolchain.sh..." > >> >>>>>>> > >> >>>>>>> Where exactly is this? I checked the various repositories I cloned, > >> >>>>>>> but can't seem to find it. I'm sure there's a really obvious > >> >>>>>>> answer... > >> >>>>>>> > >> >>>>>>> -->Seth > >> >>>>>>> > >> >>>>>>> On Sun, Jun 2, 2013 at 1:59 AM, Ralph Versteegen > >> >>>>>>> <[email protected]> wrote: > >> >>>>>>> > I managed to figure out your makefile problem from the error > >> >>>>>>> > messages. > >> >>>>>>> > > >> >>>>>>> > I'm surprised that Bell of Chaos runs that quickly on your > >> >>>>>>> > tablet, > >> >>>>>>> > nearly 5 times faster than my phone. A single core of a high end > >> >>>>>>> > desktop CPU is nowhere 5 times faster than the lowest end one > >> >>>>>>> > (well, > >> >>>>>>> > actually it is if you compare to an Atom instead). I guess that > >> >>>>>>> > on a > >> >>>>>>> > device with an actual GPU a lot of CPU is freed up for the > >> >>>>>>> > application... but if it's running at <4 fps, then there isn't > >> >>>>>>> > much > >> >>>>>>> > GPU emulating to do anyway :) > >> >>>>>>> > > >> >>>>>>> > I should have specified the button mapping: top left is ESC, top > >> >>>>>>> > right > >> >>>>>>> > is Enter, and the other four are arrows. Menu and Search are also > >> >>>>>>> > Enter, and BACK is Esc. > >> >>>>>>> > > >> >>>>>>> > On 2 June 2013 17:30, James Paige <[email protected]> > >> >>>>>>> > wrote: > >> >>>>>>> >> No luck compiling tonight, I will try more tomorrow. I tested > >> >>>>>>> >> the apk > >> >>>>>>> >> and it runs nicely on my Xoom tablet. Sword of Jade ran smooth > >> >>>>>>> >> as butter > >> >>>>>>> >> (well, 18.2 fps butter anyway) and Bell of Chaos averaged > >> >>>>>>> >> around 16.5 > >> >>>>>>> >> fps. I didn't figure out the SDL button remapping, but that can > >> >>>>>>> >> be a > >> >>>>>>> >> task for later too :) > >> >>>>>>> >> > >> >>>>>>> >> Awesome work, TMC! > >> >>>>>>> >> > >> >>>>>>> >> --- > >> >>>>>>> >> James > >> >>>>>>> >> > >> >>>>>>> >> On Sat, Jun 01, 2013 at 09:54:18PM -0700, James Paige wrote: > >> >>>>>>> >>> Yay! I am excited! :) > >> >>>>>>> >>> > >> >>>>>>> >>> I am going to try and compile myself. More comments on the > >> >>>>>>> >>> wiki talk > >> >>>>>>> >>> page :) > >> >>>>>>> >>> > >> >>>>>>> >>> --- > >> >>>>>>> >>> James > >> >>>>>>> >>> > >> >>>>>>> >>> On Sat, Jun 01, 2013 at 11:00:54PM +1200, Ralph Versteegen > >> >>>>>>> >>> wrote: > >> >>>>>>> >>> > http://tmc.castleparadox.com/pics/android-shot2.png > >> >>>>>>> >>> > > >> >>>>>>> >>> > A few more debugging sessions, and I've gotten the port > >> >>>>>>> >>> > working on a > >> >>>>>>> >>> > 2.2 phone and 4.2.2 emulator. So far the only brokenness > >> >>>>>>> >>> > that I've > >> >>>>>>> >>> > seen is in the file browser. autotest.rpg passes, though I > >> >>>>>>> >>> > haven't > >> >>>>>>> >>> > tried comparing the screenshots. Although I actually got > >> >>>>>>> >>> > this far a > >> >>>>>>> >>> > week ago, it took me several days to clean things up, e.g. > >> >>>>>>> >>> > removing > >> >>>>>>> >>> > hardcoded paths, fixing the build systems, and fixing > >> >>>>>>> >>> > various problems > >> >>>>>>> >>> > with bad path variables I didn't run into before. I've > >> >>>>>>> >>> > rewritten the > >> >>>>>>> >>> > compile instructions. Do a git pull on both git repositories > >> >>>>>>> >>> > and > >> >>>>>>> >>> > follow the new instructions. Compiling FB actually became > >> >>>>>>> >>> > more > >> >>>>>>> >>> > complicated when I did things the proper way. > >> >>>>>>> >>> > http://rpg.hamsterrepublic.com/ohrrpgce/Compiling_for_Android > >> >>>>>>> >>> > > >> >>>>>>> >>> > I put lots of info on the wiki: > >> >>>>>>> >>> > http://rpg.hamsterrepublic.com/ohrrpgce/Android_Port > >> >>>>>>> >>> > > >> >>>>>>> >>> > Here's a precompiled .apk to play with if you want, although > >> >>>>>>> >>> > it's too > >> >>>>>>> >>> > early to be asking for testing. > >> >>>>>>> >>> > http://tmc.castleparadox.com/ohr/ohrrpgce-game-2013-06-01.apk > >> >>>>>>> >>> > Some of the most obvious problems (see the wiki page for > >> >>>>>>> >>> > more): > >> >>>>>>> >>> > -controls are awkward. But at least you can use the builtin > >> >>>>>>> >>> > SDL > >> >>>>>>> >>> > configuration menu to adjust key bindings and button sizes > >> >>>>>>> >>> > and > >> >>>>>>> >>> > positions > >> >>>>>>> >>> > -midi doesn't play, simply because I didn't include > >> >>>>>>> >>> > instrument patches > >> >>>>>>> >>> > for timidity. The suggested patches are 18MB. Can we find a > >> >>>>>>> >>> > smaller > >> >>>>>>> >>> > set? > >> >>>>>>> >>> > -directories don't appear in the browser > >> >>>>>>> >>> > -there are long pauses in a couple places > >> >>>>>>> >>> > > >> >>>>>>> >>> > On my low end phone I can seemingly play typical games at > >> >>>>>>> >>> > full speed, > >> >>>>>>> >>> > although only just. Bell of Chaos runs at less than 4 fps > >> >>>>>>> >>> > though. > >> >>>>>>> >>> > > >> >>>>>>> >>> > > >> >>>>>>> >>> > On 17 May 2013 07:50, Seth Hetu <[email protected]> wrote: > >> >>>>>>> >>> > > Seems pretty similar to my config.mk. Good to know I'm on > >> >>>>>>> >>> > > the right track! > >> >>>>>>> >>> > > I'll give it another go if I can drum up some motivation > >> >>>>>>> >>> > > later (the sample > >> >>>>>>> >>> > > sdl-android app is strangely giving me an error). > >> >>>>>>> >>> > > > >> >>>>>>> >>> > > -->Seth > >> >>>>>>> >>> > > > >> >>>>>>> >>> > > > >> >>>>>>> >>> > > On Thu, May 16, 2013 at 3:25 PM, Ralph Versteegen > >> >>>>>>> >>> > > <[email protected]> > >> >>>>>>> >>> > > wrote: > >> >>>>>>> >>> > >> > >> >>>>>>> >>> > >> Ah, yes, setting TARGET_ARCH wasn't sufficient. Here is > >> >>>>>>> >>> > >> my config.mk. > >> >>>>>>> >>> > >> I am using a Slackware64 14.0 multilib system. I haven't > >> >>>>>>> >>> > >> edited > >> >>>>>>> >>> > >> anything else: > >> >>>>>>> >>> > >> > >> >>>>>>> >>> > >> ENABLE_PREFIX=1 > >> >>>>>>> >>> > >> CFLAGS := -Wfatal-errors -O2 > >> >>>>>>> >>> > >> -I/usr/lib/libffi-3.0.11/include/ -g -m32 > >> >>>>>>> >>> > >> TARGET_ARCH=x86 > >> >>>>>>> >>> > >> prefix=/home/ralph/local/fbc-0.90 > >> >>>>>>> >>> > >> V=1 > >> >>>>>>> >>> > >> > >> >>>>>>> >>> > >> Linking with libffi is optional: you can add > >> >>>>>>> >>> > >> -DDISABLE_FFI. > >> >>>>>>> >>> > >> > >> >>>>>>> >>> > >> On 17 May 2013 04:10, Seth Hetu <[email protected]> > >> >>>>>>> >>> > >> wrote: > >> >>>>>>> >>> > >> > While compiling this on a 64-bit system, it seems that > >> >>>>>>> >>> > >> > setting > >> >>>>>>> >>> > >> > TARGET_ARCH > >> >>>>>>> >>> > >> > is not sufficient. In particular: > >> >>>>>>> >>> > >> > * gcc will freak out regarding assembly functions > >> >>>>>>> >>> > >> > and "operand type > >> >>>>>>> >>> > >> > mismatch" errors. > >> >>>>>>> >>> > >> > * gcc won't find libffi (on Ubuntu), as it's in a > >> >>>>>>> >>> > >> > special > >> >>>>>>> >>> > >> > "i686-linux-gnu" directory inside "/usr/include". > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > To get around this, I just hacked the makefile, > >> >>>>>>> >>> > >> > changing: > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > ALLCFLAGS := -Wall -Werror-implicit-function-declaration > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > ..to: > >> >>>>>>> >>> > >> > ALLCFLAGS := -Wall > >> >>>>>>> >>> > >> > -Werror-implicit-function-declaration -m32 > >> >>>>>>> >>> > >> > -I/usr/include/i686-linux-gnu > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > If you got this working on a 64-bit system some other > >> >>>>>>> >>> > >> > way, let me know > >> >>>>>>> >>> > >> > (I'm > >> >>>>>>> >>> > >> > really bad at makefiles). > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > -->Seth > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > On Fri, May 10, 2013 at 5:53 PM, Ralph Versteegen > >> >>>>>>> >>> > >> > <[email protected]> > >> >>>>>>> >>> > >> > wrote: > >> >>>>>>> >>> > >> >> > >> >>>>>>> >>> > >> >> I did some work on the Android port today, and got to > >> >>>>>>> >>> > >> >> the point of > >> >>>>>>> >>> > >> >> being able to compile everything, create an .apk, and > >> >>>>>>> >>> > >> >> install it. It > >> >>>>>>> >>> > >> >> currently crashes almost instantly with only the > >> >>>>>>> >>> > >> >> following error > >> >>>>>>> >>> > >> >> message (an earlier version at least managed to > >> >>>>>>> >>> > >> >> initialise everything > >> >>>>>>> >>> > >> >> except the native code). > >> >>>>>>> >>> > >> >> > >> >>>>>>> >>> > >> >> D/dalvikvm( 9355): Trying to load lib > >> >>>>>>> >>> > >> >> /data/app-lib/com.hamsterrepublic.ohrrpgce.game-1/libapplication.so > >> >>>>>>> >>> > >> >> 0x41f5cdf0 > >> >>>>>>> >>> > >> >> I/ActivityManager( 495): Process > >> >>>>>>> >>> > >> >> com.hamsterrepublic.ohrrpgce.game > >> >>>>>>> >>> > >> >> (pid 9355) has died. > >> >>>>>>> >>> > >> >> > >> >>>>>>> >>> > >> >> Instructions are here: > >> >>>>>>> >>> > >> >> http://rpg.hamsterrepublic.com/ohrrpgce/Compiling_for_Android > >> >>>>>>> >>> > >> >> > >> >>>>>>> >>> > >> >> I've automated all the drudgery. Now the hard work > >> >>>>>>> >>> > >> >> remains: debugging, > >> >>>>>>> >>> > >> >> platform and device differences, Android-specific OHR > >> >>>>>>> >>> > >> >> modifications, > >> >>>>>>> >>> > >> >> touch input, and lots of customisations to all the > >> >>>>>>> >>> > >> >> stuff in the SDL > >> >>>>>>> >>> > >> >> port. For example I'm not very happy with the way that > >> >>>>>>> >>> > >> >> emulated > >> >>>>>>> >>> > >> >> keyboard input works. we will want per-game settings > >> >>>>>>> >>> > >> >> without having to > >> >>>>>>> >>> > >> >> recompile. > >> >>>>>>> >>> > >> >> > >> >>>>>>> >>> > >> >> However I'm taking a break for a while. I have too > >> >>>>>>> >>> > >> >> much else to do. > >> >>>>>>> >>> > >> >> _______________________________________________ > >> >>>>>>> >>> > >> >> Ohrrpgce mailing list > >> >>>>>>> >>> > >> >> [email protected] > >> >>>>>>> >>> > >> >> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> > _______________________________________________ > >> >>>>>>> >>> > >> > Ohrrpgce mailing list > >> >>>>>>> >>> > >> > [email protected] > >> >>>>>>> >>> > >> > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> >>> > >> > > >> >>>>>>> >>> > >> _______________________________________________ > >> >>>>>>> >>> > >> Ohrrpgce mailing list > >> >>>>>>> >>> > >> [email protected] > >> >>>>>>> >>> > >> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> >>> > > > >> >>>>>>> >>> > > > >> >>>>>>> >>> > > > >> >>>>>>> >>> > > _______________________________________________ > >> >>>>>>> >>> > > Ohrrpgce mailing list > >> >>>>>>> >>> > > [email protected] > >> >>>>>>> >>> > > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> >>> > > > >> >>>>>>> >>> > _______________________________________________ > >> >>>>>>> >>> > Ohrrpgce mailing list > >> >>>>>>> >>> > [email protected] > >> >>>>>>> >>> > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> >>> > > >> >>>>>>> >>> _______________________________________________ > >> >>>>>>> >>> Ohrrpgce mailing list > >> >>>>>>> >>> [email protected] > >> >>>>>>> >>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> >>> > >> >>>>>>> >> _______________________________________________ > >> >>>>>>> >> Ohrrpgce mailing list > >> >>>>>>> >> [email protected] > >> >>>>>>> >> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> > _______________________________________________ > >> >>>>>>> > Ohrrpgce mailing list > >> >>>>>>> > [email protected] > >> >>>>>>> > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> _______________________________________________ > >> >>>>>>> Ohrrpgce mailing list > >> >>>>>>> [email protected] > >> >>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>>>>>> > >> >>>>>> _______________________________________________ > >> >>>>>> Ohrrpgce mailing list > >> >>>>>> [email protected] > >> >>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >>> _______________________________________________ > >> >>> Ohrrpgce mailing list > >> >>> [email protected] > >> >>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> >> _______________________________________________ > >> >> Ohrrpgce mailing list > >> >> [email protected] > >> >> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> > _______________________________________________ > >> > Ohrrpgce mailing list > >> > [email protected] > >> > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> _______________________________________________ > >> Ohrrpgce mailing list > >> [email protected] > >> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > >> > > _______________________________________________ > > Ohrrpgce mailing list > > [email protected] > > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > _______________________________________________ > Ohrrpgce mailing list > [email protected] > http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org > _______________________________________________ Ohrrpgce mailing list [email protected] http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
