Jump to content

Making Images/Roms


Guest VJftw

Recommended Posts

Guest VJftw

I've been meaning to dive into ROM development for a while, so I decided to take a step in today. Hopefully could turn this into a guide and get stickied to help others join in and contribute rather than only having Lens, TechnoLover, Vache and Generix coming up with most of the fixes.

1. Stuck Ubuntu 11.10 x64 on a VirtualBox machine.

2. Installed JDK via the PPA repository:


sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

sudo apt-get install oracle-jdk7-installer

3. I took a look at this, and managed to extract the recovery img for 5.0.2.8 (as i'm trying to find a fix so that when we backup, our sd-ext get backed up) using the supplied unpack-bootimg.pl. 4. Made a change in /etc/recovery.fstab so that it looked like this:


# mount point   fstype      device                    [device2]

/misc       	mtd     	misc

/boot       	mtd     	boot

/system     	yaffs2      system

/data       	yaffs2      userdata

/cache          yaffs2      cache

/recovery   	mtd     	recovery

/sdcard     	vfat        /dev/block/mmcblk0p1      /dev/block/mmcblk0

/sd-ext     	ext4        /dev/block/mmcblk0p2      /dev/block/mmcblk0

5. I'm having trouble repacking the img. I think i need to find the right mkbootimg file or compile it myself? But I have no idea how to. Any pointers from our current devs?

I found a mkbootimg file on mediafire, and that created the img fine, Just I can't get into recovery so i'm guessing that mkbootimg isn't right for our phone.

EDIT:

taking a look into this http://android.modaco.com/topic/343890-rom-development-help/page__p__1764443__hl__mkbootimg__fromsearch__1#entry1764443

Edited by VJftw
Link to comment
Share on other sites

Guest Lens_flare

sorry, mine first reply was dead, when I tried to describe compiling process :P damn internet connexion :/

hope that one won't dead :D

to compile recovery:

sync cm source with that guide

wiki.cyanogenmod.com/wiki/Nexus_One:_Compile_CyanogenMod_(Linux)

do all steps till copying proprietary files.

let's name android/system(or folder whatever you want to be a cm source holder) your source_root.

clone mine recovery source then and put into source_root/device folder.

compile source

cd source_root

. build/envsetup.sh

lunch full_paso-eng

make -j4 recoveryimage

recovery could be found on: source_root/out/target/product/paso/recovery.img

Link to comment
Share on other sites

Guest VJftw

sorry, mine first reply was dead, when I tried to describe compiling process :P damn internet connexion :/

hope that one won't dead :D

to compile recovery:

sync cm source with that guide

wiki.cyanogenmod.com/wiki/Nexus_One:_Compile_CyanogenMod_(Linux)

do all steps till copying proprietary files.

let's name android/system(or folder whatever you want to be a cm source holder) your source_root.

clone mine recovery source then and put into source_root/device folder.

compile source

cd source_root

. build/envsetup.sh

lunch full_paso-eng

make -j4 recoveryimage

recovery could be found on: source_root/out/target/product/paso/recovery.img

thanks, I am trying still. CM is taking a while to sync and it keeps failing. Googled around and the solution is to just keep trying with repo sync -f. So i'm doing that :)

Link to comment
Share on other sites

Guest VJftw

finally finished. erm, recovery image wont output :(



vj@vbox-ubuntu-x64:~/android/system$ make -j4 recoveryimage

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================

Checking build tools versions...

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

make: Nothing to be done for `recoveryimage'.

Edited by VJftw
Link to comment
Share on other sites

Guest Lens_flare

wrong. :P

you forgot:

. build/envsetup.sh

lunch full_paso-eng

before make.

log stands you are building for emulator, of course it doesn't have recovery :P

Edited by Lens_flare
Link to comment
Share on other sites

Guest VJftw

ah sorry, probably should've included everything else :P

i'm guessing it's something to do with my lunch? :(



vj@vbox-ubuntu-x64:~/android/system$ . build/envsetup.sh

including device/acer/liquid_mt/vendorsetup.sh

including device/advent/vega/vendorsetup.sh

including device/bn/encore/vendorsetup.sh

including device/geeksphone/one/vendorsetup.sh

including device/htc/ace/vendorsetup.sh

including device/htc/bravoc/vendorsetup.sh

including device/htc/bravo/vendorsetup.sh

including device/htc/buzz/vendorsetup.sh

including device/htc/click/vendorsetup.sh

including device/htc/desirec/vendorsetup.sh

including device/htc/dream_sapphire/vendorsetup.sh

including device/htc/espresso/vendorsetup.sh

including device/htc/glacier/vendorsetup.sh

including device/htc/heroc/vendorsetup.sh

including device/htc/hero/vendorsetup.sh

including device/htc/inc/vendorsetup.sh

including device/htc/legend/vendorsetup.sh

including device/htc/leo/vendorsetup.sh

including device/htc/liberty/vendorsetup.sh

including device/htc/mecha/vendorsetup.sh

including device/htc/passion/vendorsetup.sh

including device/htc/saga/vendorsetup.sh

including device/htc/speedy/vendorsetup.sh

including device/htc/supersonic/vendorsetup.sh

including device/htc/vision/vendorsetup.sh

including device/htc/vivo/vendorsetup.sh

including device/htc/vivow/vendorsetup.sh

including device/huawei/u8150/vendorsetup.sh

including device/huawei/u8220/vendorsetup.sh

including device/lge/p999/vendorsetup.sh

including device/malata/smb_a1002/vendorsetup.sh

including device/malata/smb_b9701/vendorsetup.sh

including device/motorola/droid2/vendorsetup.sh

including device/motorola/droid2we/vendorsetup.sh

including device/motorola/jordan/vendorsetup.sh

including device/motorola/morrison/vendorsetup.sh

including device/motorola/motus/vendorsetup.sh

including device/motorola/olympus/vendorsetup.sh

including device/motorola/shadow/vendorsetup.sh

including device/motorola/sholes/vendorsetup.sh

including device/motorola/zeppelin/vendorsetup.sh

including device/samsung/captivatemtd/vendorsetup.sh

including device/samsung/cooper/vendorsetup.sh

including device/samsung/crespo4g/vendorsetup.sh

including device/samsung/crespo/vendorsetup.sh

including device/samsung/epicmtd/vendorsetup.sh

including device/samsung/fascinatemtd/vendorsetup.sh

including device/samsung/galaxys2att/vendorsetup.sh

including device/samsung/galaxys2/vendorsetup.sh

including device/samsung/galaxysbmtd/vendorsetup.sh

including device/samsung/galaxysmtd/vendorsetup.sh

including device/samsung/mesmerizemtd/vendorsetup.sh

including device/samsung/showcasemtd/vendorsetup.sh

including device/samsung/sidekick4g/vendorsetup.sh

including device/samsung/tass/vendorsetup.sh

including device/samsung/vibrantmtd/vendorsetup.sh

including device/zte/blade/vendorsetup.sh

including device/zte/v9/vendorsetup.sh

including vendor/cyanogen/vendorsetup.sh

vj@vbox-ubuntu-x64:~/android/system$ lunch full_paso-eng

build/core/config.mk:136: *** No config file found for TARGET_DEVICE paso. Stop.

Device paso not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).

Traceback (most recent call last):

  File "build/tools/roomservice.py", line 16, in <module>

    result = json.loads(urllib2.urlopen("http://github.com/api/v2/json/repos/show/CyanogenMod?page=%d" % page).read())

  File "/usr/lib/python2.7/urllib2.py", line 126, in urlopen

    return _opener.open(url, data, timeout)

  File "/usr/lib/python2.7/urllib2.py", line 394, in open

    response = self._open(req, data)

  File "/usr/lib/python2.7/urllib2.py", line 412, in _open

    '_open', req)

  File "/usr/lib/python2.7/urllib2.py", line 372, in _call_chain

    result = func(*args)

  File "/usr/lib/python2.7/urllib2.py", line 1201, in http_open

    return self.do_open(httplib.HTTPConnection, req)

  File "/usr/lib/python2.7/urllib2.py", line 1174, in do_open

    r = h.getresponse(buffering=True)

  File "/usr/lib/python2.7/httplib.py", line 1027, in getresponse

    response.begin()

  File "/usr/lib/python2.7/httplib.py", line 407, in begin

    version, status, reason = self._read_status()

  File "/usr/lib/python2.7/httplib.py", line 371, in _read_status

    raise BadStatusLine(line)

httplib.BadStatusLine: ''

build/core/config.mk:136: *** No config file found for TARGET_DEVICE paso. Stop.


** Don't have a product spec for: 'full_paso'

** Do you have the right repo manifest?


vj@vbox-ubuntu-x64:~/android/system$ make -j4 recoveryimage

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

make: Nothing to be done for `recoveryimage'.

Link to comment
Share on other sites

Guest Lens_flare
Don't have a product spec for: 'full_paso'

because of this:

including device/acer/liquid_mt/vendorsetup.sh

source stands you should have acer/paso folder in device, why you felt free to rename it??

Link to comment
Share on other sites

Guest VJftw

because of this:

source stands you should have acer/paso folder in device, why you felt free to rename it??

well it didn't work when i put it as ~/android/system/device/android_vendor_acer_paso so i tried putting it in the same device tree as the others :s

what should it be?

Link to comment
Share on other sites

Guest VJftw

))))

should be tree like that: device/acer/paso

btw, isn't there a structure that stands for that?

there wasn't for me. maybe i'll keep running repo sync -j 16...

so close



vj@vbox-ubuntu-x64:~/android/system$ lunch full_paso-eng


============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full_paso

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=false

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a-neon

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================


vj@vbox-ubuntu-x64:~/android/system$ make -j4 recoveryimage

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full_paso

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=false

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a-neon

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘out/target/common/docs/gen’: No such file or directory

find: ‘bootable/recovery/res’: No such file or directory

No private recovery resources for TARGET_DEVICE paso

Header: out/host/linux-x86/obj/include/libexpat/expat.h

Header: out/host/linux-x86/obj/include/libexpat/expat_external.h

Header: out/target/product/paso/obj/include/libexpat/expat.h

Header: out/target/product/paso/obj/include/libexpat/expat_external.h

Header: out/host/linux-x86/obj/include/libpng/png.h

Header: out/host/linux-x86/obj/include/libpng/pngconf.h

Header: out/host/linux-x86/obj/include/libpng/pngusr.h

Header: out/target/product/paso/obj/include/libpng/png.h

Header: out/target/product/paso/obj/include/libpng/pngconf.h

Header: out/target/product/paso/obj/include/libpng/pngusr.h

Header: out/target/product/paso/obj/include/libsonivox/eas.h

Header: out/target/product/paso/obj/include/libsonivox/eas_types.h

Header: out/target/product/paso/obj/include/libsonivox/eas_reverb.h

Header: out/target/product/paso/obj/include/libsonivox/jet.h

Header: out/target/product/paso/obj/include/libsonivox/ARM_synth_constants_gnu.inc

Header: out/target/product/paso/obj/include/libwpa_client/wpa_ctrl.h

Header: out/target/product/paso/obj/include/librpc/rpc/clnt.h

Header: out/target/product/paso/obj/include/librpc/rpc/pmap_clnt.h

Header: out/target/product/paso/obj/include/librpc/rpc/rpc.h

Header: out/target/product/paso/obj/include/librpc/rpc/rpc_router_ioctl.h

Header: out/target/product/paso/obj/include/librpc/rpc/svc.h

Header: out/target/product/paso/obj/include/librpc/rpc/types.h

Header: out/target/product/paso/obj/include/librpc/rpc/xdr.h

Notice file: system/core/libmincrypt/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//lib/libmincrypt.a.txt

Directory: out/target/product/paso/root/sbin

Directory: out/target/product/paso/root/dev

Directory: out/target/product/paso/root/proc

Directory: out/target/product/paso/root/sys

Directory: out/target/product/paso/root/system

Directory: out/target/product/paso/root/data

prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -o out/target/product/paso/obj/lib/crtbegin_static.o -c bionic/libc/arch-arm/bionic/crtbegin_static.S

prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -o out/target/product/paso/obj/lib/crtbegin_so.o -c bionic/libc/arch-arm/bionic/crtbegin_so.S

prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -o out/target/product/paso/obj/lib/crtend_so.o -c bionic/libc/arch-arm/bionic/crtend_so.S

Notice file: external/elfcopy/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//lib/libelfcopy.a.txt

prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -o out/target/product/paso/obj/lib/crtend_android.o -c bionic/libc/arch-arm/bionic/crtend.S

Notice file: system/core/init/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//root/init.txt

Notice file: bionic/libc/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libc.so.txt

Notice file: bionic/libdl/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libdl.so.txt

Notice file: bionic/libc/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libc_common.a.txt

Notice file: bionic/libstdc++/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libstdc++.so.txt

Notice file: bionic/libm/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libm.so.txt

Notice file: system/core/liblog/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/liblog.a.txt

Notice file: system/core/libcutils/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libcutils.a.txt

Notice file: bionic/libc/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//system/lib/libc.a.txt

Notice file: system/core/adb/NOTICE -- out/target/product/paso/obj/NOTICE_FILES/src//root/sbin/adbd.txt

Target buildinfo: out/target/product/paso/root/default.prop

make: *** No rule to make target `out/target/product/paso/obj/EXECUTABLES/recovery_intermediates/recovery', needed by `out/target/product/paso/recovery/root.ts'. Stop.

make: *** Waiting for unfinished jobs....

Link to comment
Share on other sites

Guest Lens_flare
there wasn't for me

for me too :P

it should come from mine git repo...

‘bootable/recovery/res’: No such file or directory

check this out in android/system, seems your repo is incomplete.. other ones seems right

Edited by Lens_flare
Link to comment
Share on other sites

Guest VJftw

thanks again!

gave up with virtualbox, its ended up never being able to sync with github.

Stuck ubuntu on a laptop and that seems to be syncing fine now :)

Link to comment
Share on other sites

Guest hong_anh_gau

Hello verybody i have a similar error when porting cwm for my pantech im-a650s. i've googled, i found nothing...Anyone can help me?


ha@ha-laptop:~/android/system$ sudo make -j4 recoveryImage

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

make: *** No rule to make target `recoveryImage'.  Stop.

Link to comment
Share on other sites

Guest Lens_flare

pantech? what are you doing on acer liquid forum? -__-

ok as you are here:

you should have your device tree and lunch full_device-eng after . build/envsetup.sh

emulator doesn't have recovery target.

Link to comment
Share on other sites

Guest hong_anh_gau

pantech? what are you doing on acer liquid forum? -__-

ok as you are here:

you should have your device tree and lunch full_device-eng after . build/envsetup.sh

emulator doesn't have recovery target.

i'm trying to port cwm recovery to my Pantech im-a650s according: http://www.koushikdu...ery-to-new.html

"make -j4 recoveryimage" after lunch "full_ima650s-eng " i got outline:

ha@ha-laptop:~/android/system$ lunch full_ima650s-eng


============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full_ima650s

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=false

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================


ha@ha-laptop:~/android/system$ sudo make -j4 recoveryimage

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.3.7

TARGET_PRODUCT=full

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=GINGERBREAD

============================================

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

find: `out/target/common/docs/gen': No such file or directory

make: Nothing to be done for `recoveryimage'.

ha@ha-laptop:~/android/system$ 

Sorry for the inconvenience, i asked in many android forum, but nothing changes with me :(

Thank for your reply

Edited by hong_anh_gau
Link to comment
Share on other sites

Guest hong_anh_gau

could I see your device tree?

seems you are missing something. btw, always do a make clean before build :P

i did "make clobber" then type again. i typed:

ha@ha-laptop:~/android/system$ sudo make clobber

repo init -u git://github.com/CyanogenMod/android.git -b gingerbread

repo sync

sudo make -j4 otatools

. build/tools/device/mkvendor.sh pantech ima650s ~/boot.img

. build/envsetup.sh

lunch full_ima650s-eng

make -j4 recoveryimage

There are some errors, please check text file in attachment

http://www.box.com/s...388b0751189ef64

List devices: http://www.box.com/s...00ab95162674c7e

Update:

Successful! i've made CWM recovery image for sky ima650s, but there some graphic errors. Can you help me fix its? They are :

clockwork-recovery-01.png

2nd view:when push volume down key,show more clockworks menu clockwork-recovery-02.png

3rd view:push volume down key again.

clockwork-recovery-03.png

So when push volume down key,upper double menus line goes down. and push again it,lower double menus line goes down. and push again it,upper...Thanks.

Edited by hong_anh_gau
Link to comment
Share on other sites

Guest Lens_flare

great :P

ok, seems you have buffer problems.. see graphics.c in recovery and in sonies smartphones trees, you should overload it and rewrite to match your device. I don't know how, just used sony' one

Link to comment
Share on other sites

Guest hong_anh_gau

great :P

ok, seems you have buffer problems.. see graphics.c in recovery and in sonies smartphones trees, you should overload it and rewrite to match your device. I don't know how, just used sony' one

My phone is Pantech, not sony.

Seems my CWM recovery screen was divided into quarters unsure.gif, can i mod " bootable/recovery/graphic.rc" ?

Link to comment
Share on other sites

Guest Lens_flare
My phone is Pantech, not sony.

what's more, my phone is Acer Liquid Mt, not sony, but I'm using their graphics.c and have no problems with recovery :D

,

can i mod " bootable/recovery/graphic.rc" ?

you HAVE TO do that ;]

Link to comment
Share on other sites

Guest hong_anh_gau

what's more, my phone is Acer Liquid Mt, not sony, but I'm using their graphics.c and have no problems with recovery :D

,

you HAVE TO do that ;]

Hei, i'm very linux noob, Can you help me again. how can i do that ??? Thanks smile.gif

Link to comment
Share on other sites

Guest Lens_flare
how can i do that ?

Let's try sony' graphics.c, it is located at: device/semc/msm7x30-common/recovery/graphics.c

then copy it to your device tree.

to point your build that you are using it instead of original one,

add to your boardconfig that line:

BOARD_CUSTOM_GRAPHICS := [full path from your cm source folder to graphics.c]

if not working - the only way is rewrite it, that you should do by yourself, or with community (you do have that)

Link to comment
Share on other sites

  • 1 month later...
Guest ltpitt

This topic is hot as hell...

I'm really interested into understanding the whole process...

Maybe starting with the simplest thing: (maybe) using acer's ROM and making my "distro".

Is there a nice guide somewhere for noobs? :)

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.