06 Aralık 2009

Code::blocks ve hizalama

Eğer Code::Blocks'ta kod yazıyorsanız ve bir yerlerden kopyaladığınız kodlar hizalamayı(indent) bozuyorsa, Plugins > Source code formatter(AStyle) nesnesine tıklayın, aktif olan dosyada hizalama hemen düzelir.

25 Kasım 2009

Twitter sayfam

Twitter sayfamı buradan biraz daha sıkça gündelliyorum.

19 Kasım 2009

Synaptic touchpad ve Linux

Arch Linux ile oynarken touchpad'imin kenarının kaydırma çubuğu olarak çalışmadığını farkettim, biraz canımı sıktı. Birazcık araştırmayla keşfettiğimse bir anda yüzümü güldürdü. Synaptics marka touchpad ve XFree ile yapabilecekleriniz:

iki parmakla tık: farenin orta tuşu
üç parmak tık: sağ tık
iki parmakla kaydırmak: yatay ya da düşey kaydırma

Deneyin bakalım sizde var mı.

24 Ağustos 2009

Kurye maceraları(nasıl katil olunur)

NOT: Bu yazıyı bozuk sinirle yazdım, yazım ve ifade hatalarından dolayı özür dilerim.

Internet üzerinden bir kaç defa siparıs verdim, bakın neler oldu:

Deneme 1(DHL) - Adres olarak ev verilir, evde olunmadığından not bulunur, telefonla depo adresi öğrenilir, bisikletle depoya gidilip paket alınır.

Deneme 2(TNT) - Adres olarak ev verilir, alıcı evde yoktur ama not bırakılmaz. Alıcı telefonla arar, depodan almanın mümkün olmadığını öğrenir. Ertesi gün evde beklemesi mümkün değildir, kurye yine de not bırakmaz. Ertesi gün randevu almak için arar, paketin yine kuryede olduğunu öğrenir. Akşam evde yine not bulmaz, telefon eder. akşam 5.30, çağrı elemanı kuryenin henüz dönmediğini söyler, paketin akibeti belli değildir. Saat 6.30 gibi(normakde mesai 5.00da bitmekte) kurye gelir ve paketi teslim eder.

Deneme 3(UPS) - Adres olarak üniversitede kulüp odası verilir. Acemilikten dolayı, üniversitenin kargo adresi yerine posta adresi verilir(meğer ikisi ayrıymış). Paketi tamamen alakasız bir adreste(2 yan sokakta, varolmayan bir apartman numarası), ve kimsenin tanımadığı bir isimle birisi alır. Adres defterinde yaklaşık 24 tane Van de Graaf vardır fakat paketin akibetinden kimsenin haberi yoktur. 1 ay sonra paket gizemli bir şekilde kulüp odasının içinde peydah olur.

Deneme 4(UPS) - Adres olarak üniversitenin kargo servisi ve çalışılan laboratuvar verilir, paket internetten takip edilir, teslim edildiği öğrenilince kargo servisine telefon edilir, dahili ulaşım beklenmeden paket alınır.

Deneme 5(TNT) - Adres olarak üniversitenin kargo servisi ve çalışılan laboratuvar verilir, paket internetten takip edilir, bu sefer dahili teslimat beklenir. Teslimat gelmez, kargo servisi aranır. Binanın girişindeki görevli paketi reddetmiştir(fakültem olmayan bir binada çalışıyorum), paket geri dönmüştür. Ertesi gün gidilir, üniversitenin kargo ofisinden paket bizzat alınır, adres olarak fakültenin verilmeis gerektiğini öğrenir.

Deneme 6(DHL) - Adres olarak fakülte verilir(tam kargo servisinin dediği gibi), DHL bina numarasıyla post akodunu karıştırır, kurye adresi bulamaz, e-posta atar, üstüne bir de para talep eder. Bakalım yarın ne olacak.
Düzeltme: Kurye üniversiteyi bulmuş, ama 30€ gibi bir para istediği için ikimse teslim almamış. Anlaşılan gümrük vergisi ödemem gerekecek.

21 Ağustos 2009

GPWiki

Oyun programlamayla ilgileniyorsanız gpwiki güzel bir kaynak gibi duruyor.

14 Ağustos 2009

Qi Hardware

Openmoko'dan ayrılan bir grup geliştirici, Qi HArdware dene firmayı kurdu. Temel prensipleri, tamamen açık donanım sunup(gerekirse eski donanım kullanrak) bu donanım üzerinde çalışan "upstream"(her zaman güncel) bir çekirdek sunmak. Bir çok gömülü Linux geliştiricinin düştüğü tuzak, geliştirdikleri yamaları ve modülleri ana çekirdek ağacına yollamamak. Bir süre sonra ellerindeki çekirdek eskiyor ve uyumuz hale geliyor. Örneğin gp2x çekirdeğini derlemek için gcc 2.9 gibi abuk bir sürüm kullanıp her modülü linux 2.4.25 uyumlu olacak şekilde derlemek gerekiyor.

Çalışanların Openmoko'dayken öğrendileri ve (umarım)tekrar etmeyecekleri hata, çekirdek ve donanımı mükemmel hale getirmeden, özel bir dağıŧım("distro"), ve yeni br arayüz oluşturmaya uğraşmak oldu. Ki buna rağmen cemaat daha iyi bir çok dağıtım çıkardı, fakat donanım ve sürücü sorunları yüzünden kullanıcılar zorluk çekti. Doğrusu, sağlam ve bait bir temel sunup, cemaatin bu temele inşa etmesini beklemektir. Qi'nin planı da bu.

Qi hardware'in ilk ürünü nanonote geliştiricilere yönelik çok sade bir cihaz. Daha sonra daha yetenekli cihazlar çıkarmayı da planlıyorlar. Firmanın harika bir vizyonu var ama ne kadar başarılı olacaklarını zaman gösterecek.

21 Temmuz 2009

"Pointer" hatası

Kodda bir hata yapıp yedeğini de sildiğim için yıllardır bir köşede duran "chrono+" kodunu dün düzeltebildim. Kod hala çok çirkin,biraz daha düzenledikten sonra yayınlayacağım. Saptayabilmek için saatlerimi harcadığım hata ise, C++'ya yeni başlayanların sıkça yaptığı, benim de başkalarının kodunda genellikle kolay yakaladığım bir şeydi, şunun gibi.




C++'ya aşina olanlar buradaki hatayı hemen görmüştür. Basitçe açıklayalım:

main() içindeki scr değişkeninde rasgele, anlamsız bir adres var. Bu adresi kullanarak bir fonksiyon çağırdığımızda(init()), bu adres çağırılan fonksiyona kopyalanıyor. init() içindeki new komutuyla scr değişkenine yeni ve anlamlı bir adres atanıyor. Fakat scr ile screen aynı değişken değil, sadece başta aynı değere sahitiler. Bu yüzden init() fonksiyonundan sonra screen'in değeri değişmiyor, aynı anlamsız adresi göstermeye devam ediyor. Buraya geldiğinizde hala kafanız karışıksa şu kodu çalıştırmayı deneyin:




Kendi koduma gelince, dediğim gibi, biraz daha adam ettikten sonra "arıza" adıyla yeniden yayınlayacağım. Şimdiki haliyle, "canavar"'ın yayınladığı halinden pek bir farkı yok, görünüş olarak.

28 Mayıs 2009

İlk çalışan çekirdeğim

Daha önce farklı zamanlarda bilgisayar ve gömülü cihazlar için çekirdek derlemeyi denemiştim. Sonuç ya derleme hatası, ya da "kernel panic" oluyordu. Dün ilk defa ARM9 kullanan bir kart için derlediğim çekirdek çalıştı.

Anlaşılan, sadece çekirdeğin ayarlarını düzgün yapmak yetmiyor, çekirdeği derlemek için kullandığımız derleyiciyi(benim için bu arm-...-gcc) doğru ayarlarla ve hatta doğru derleyiciyle derlememiz gerekiyor.(gcc 4.3 yerine 3.6, ortam olarak da dash degil bash).

19 Şubat 2009

Biraz daha kasaplık

Dünkü dişi USB kasaplığımdan sonra bugün bir tane B tipi erkek fiş elde ettim. İkisini güzelce lehimleyip epoksi işle yapıştırmayı planlıyorum. Bunda silikon kullanılmadığı için ayıklamak kolay oldu.
Image Hosted by ImageShack.us

Kasaplık antrenmanı

Neo Freerunner üstündeki USB prizinin OTG değil de mini-usb şeklinde olması biraz sinir bozucu, çünĸü piyasada bunu dişi USB prizine dönüştüren bir kablo yok. Ben de bu yüzden kasaplık ederek bir USB-PS/2 çeviricinin içinden USB prizini ayıkladım.
Image Hosted by ImageShack.us
Aradaki kablolar sıcak yapıştırıcı(silikon) ile kaplı olduğu için bunu ayıklamak biraz zaman aldı. Falçata kullanarak adım adım kırptım silikonu ama sonuçta çıplak ve seksi bir prizim oldu. Şimdi bu prizin bir de diğer ucunu elde etmek var, yakında onu da yaparım. Diğer yandan tesadüfen(malzeme dükkanında bir yanlış anlama sonucu) elime aşağıdki güzellik geçti.
Image Hosted by ImageShack.us
Bu sayede standart USB kabloları kullanarak abuk fikirlerimi deneyebilirim. Yakın zamanda bir kaç Freerunner projesi yapıp yayınlamayı düşünüyorum.

15 Şubat 2009

Beagleboard ustunde ogre3d

Beagleboard, TI OMAP tabanlı, özgür yazılım kullanan bir "single board computer" projesi. Bu şirin canavar üzerinde 3B oyun motoru Ogre'ı çalıştırmışlar. İşin eğlenceli kısmı, aleti TI'nin mini projektörü DLP ile yansıtıp wiimote ile kumanda etmişler. Vidyo aşağıda:

11 Şubat 2009

GP2X'e Nokia pil takmak

2006'da bu cihazı aldığımdan beri bir şekilde buna Li-iyon pil takmak istiyordum. Bir kaç ay önce GP2X'imin pil kısmı bozulunca 'artık bu işin zamanı geldi' dedim. Nasıl yaptığımızı anlatalım.

Öncelikle uyarımızı yapalım: Buarada yazanlar, kişinin kendi deneyimidir. Okuyucuya faydalı(ya da eğlenceli) olması temennisiyle yazılmıştır. Burada yazanların uygulanmasından doğacak hiç bir hasar, yaralanma veya başka türlü bir zarardan yazar sorumlu değildir.

Evet, nerede kalmıştık? Hah, işte malzemeler:
* Nokia 3310(kapakları ve ekranı sökülmüş)
* "Yan sanayi" ürünü 1300 mA-saat Li-iyon pil
* GP2X kasaya uyan bir 'jack'
* Kırmızı ve siyah teller
* Havya, lehim, ıslak sünger vs.
Free Image Hosting at www.ImageShack.us
GP2X güç kablosunun içi -, dışı +'dır. Dikkat etmemiz gereken en önemli şey bu. Elektrik mühendisliğinde standart olduğu üzere iç kısma siyah, dış kısma kırmızı tel lehimleyip ölçme aletiyle kontrol ediyoruz. Daha sonra siyah teli telefonun - yazan kısmına, kırmızı teli de + yazan kısmına takıyoruz:
Free Image Hosting at www.ImageShack.us
Dikkatlice pilimizi yerleştiriyoruz:
Free Image Hosting at www.ImageShack.us
GP2X'i bağlamadan önce son ölçümü yapıyoruz. Ölçü aletinin siyah kablolu ucunu "jack"ın içine, kırmızı kablolu ucunu dışına değdiriyoruz. 3,7 gibi bir değer görmemiz gerekiyor(DİKKAT: -3,7V olmaması gerek!)
Free Image Hosting at www.ImageShack.us
O da nesi, 4,1V?
Free Image Hosting at www.ImageShack.us
Biraz yüksek bir gerilim ama GP2X içinceki gerilim düzenleyici için bunun sorun olmaması gerekiyor. Deneyelim bakalım.
Free Image Hosting at www.ImageShack.us
Çalıştı! Açıp 5 dakika kadar Ghostpics oynayıp kapattım. Pilin ne kadar gittiğini ve GP2X açıkken nasıl şarj olduğunu henüz denemedim.

Afiyet olsun

Düşünceler:
Yeterli el becerisine sahip biri için oldukça kolay bir işlem. Benim gibi beceriksizleri ise biraz uğraştırıyor. Bu haliyle elde tutması ve yanında taşıması pek rahat olmadı. Eğer bir telefon yerıne daha hafif bir şarj cihazı kullanılırsa daha pratik olur. Ayrıca pil bölmesinin çıkıntısını keserek yerden tasarruf edilebilir ancak ben kasaya şimdilik zarar vermek istemiyorum.

Çıkıntıyı hafıften kserek ya da kesmeden, sadece pili takrak çalıştırmak da bir seçenek, ama o zaman pili doldurmak için sökmeniz gerekir.

Bu "hack"in en zarif hali, GP2Xin içine bir şarj devresi yerleştirip, kendi güç adaptörüyle pilleri doldurmasını sağlamak olacaktır. Bu nisbeten daha zor ve zaman isteyen bir iş olduğundan yakın zamanda yapmayı düşünmüyorum.

Buradan bir arkadaşımın önerisi de, kabloyu uzun tutup pili cebimde taşımamdı. Kullanım ve taşıma için kullanışlı olacağı kesin ama bunu kullanırken insanlar size nasıl bakar bilmiyorum.

29 Ocak 2009

Pandora heyecanı

Kasanın ilk FDM prototipinin hazırlanmasından sonra "EvilDragon" anakart ve ekranı monte ederek ilk tamamlanmış Pandora cihazı çalıştırdı. 2 yıl kadar süren bir tasarım ve tartışma süreci sonunda üretim zamanı artık geldi. Vidyonun bulunduğu forum sayfası şurada:
http://forum.gp2xtr.com/index.php?topic=1167.0